Skip to content

Commit b1cb02a

Browse files
committed
groups now handled by ama
1 parent 8ada9dd commit b1cb02a

File tree

2 files changed

+39
-3
lines changed
  • mxgraph_component/mxgraph_component/frontend/public
  • src/flowco/page

2 files changed

+39
-3
lines changed

mxgraph_component/mxgraph_component/frontend/public/index.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -261,8 +261,8 @@
261261
</head>
262262
<body>
263263
<div id="toolbar" style="margin-top: 100px;">
264-
<button id="groupBtn">Group</button>
265-
<button id="ungroupBtn">Ungroup</button>
264+
<button id="groupBtn" style="display: none;">Group</button>
265+
<button id="ungroupBtn" style="display: none;">Ungroup</button>
266266
</div>
267267

268268
<div id="graph-container" style="width: 2000px; height: 1600px; overflow: hidden;">

src/flowco/page/ama.py

Lines changed: 37 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
from flowco.page.page import Page
1717
from flowco.pythonshell.shells import PythonShells
1818
from flowco.session.session import session
19+
from flowco.ui.mx_diagram import DiagramGroup
1920
from flowco.util.config import config
2021
from flowco.util.output import error, log, logger
2122
from pydantic import BaseModel
@@ -297,7 +298,20 @@ def add_node(
297298
dfg = update_dataflow_graph(
298299
dfg,
299300
mxDiagramUpdate(
300-
version=dfg.version, nodes=node_updates, edges=edge_updates
301+
version=dfg.version,
302+
nodes=node_updates,
303+
edges=edge_updates,
304+
groups=[
305+
DiagramGroup(
306+
id=x.id,
307+
label=x.label,
308+
is_collapsed=x.is_collapsed,
309+
collapsed_geometry=x.collapsed_geometry,
310+
parent_group=x.parent_group,
311+
nodes=x.nodes,
312+
)
313+
for x in dfg.groups
314+
],
301315
),
302316
)
303317

@@ -389,6 +403,17 @@ def remove_node(
389403
for x in dfg.edges
390404
if not (x.src == id or x.dst == id)
391405
},
406+
groups=[
407+
DiagramGroup(
408+
id=x.id,
409+
label=x.label,
410+
is_collapsed=x.is_collapsed,
411+
collapsed_geometry=x.collapsed_geometry,
412+
parent_group=x.parent_group,
413+
nodes=[y for y in x.nodes if y != id],
414+
)
415+
for x in dfg.groups
416+
],
392417
)
393418

394419
dfg = update_dataflow_graph(dfg, dfg_update)
@@ -432,6 +457,17 @@ def remove_edge(
432457
for x in dfg.edges
433458
if x.id != id
434459
},
460+
groups=[
461+
DiagramGroup(
462+
id=x.id,
463+
label=x.label,
464+
is_collapsed=x.is_collapsed,
465+
collapsed_geometry=x.collapsed_geometry,
466+
parent_group=x.parent_group,
467+
nodes=x.nodes,
468+
)
469+
for x in dfg.groups
470+
],
435471
)
436472

437473
src_pill = dfg[edge_to_remove.src].pill

0 commit comments

Comments
 (0)