@angflow/angular 0.0.18 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +108 -15
- package/dist/base.css +8 -0
- package/dist/esm/index.d.ts +0 -1
- package/dist/esm/lib/agent/agent-bridge.service.d.ts +3 -1
- package/dist/esm/lib/agent/agent-bridge.service.js +130 -23
- package/dist/esm/lib/agent/agent-bridge.service.js.map +1 -1
- package/dist/esm/lib/agent/chat/agent-chat.component.d.ts +0 -1
- package/dist/esm/lib/agent/chat/agent-chat.service.d.ts +0 -1
- package/dist/esm/lib/agent/chat/agent-chat.service.js +11 -2
- package/dist/esm/lib/agent/chat/agent-chat.service.js.map +1 -1
- package/dist/esm/lib/agent/chat/default-system-prompt.d.ts +1 -2
- package/dist/esm/lib/agent/chat/default-system-prompt.js +2 -1
- package/dist/esm/lib/agent/chat/default-system-prompt.js.map +1 -1
- package/dist/esm/lib/agent/chat/index.d.ts +0 -1
- package/dist/esm/lib/agent/chat/provide-agent-chat.d.ts +0 -1
- package/dist/esm/lib/agent/chat/types.d.ts +0 -1
- package/dist/esm/lib/agent/history.d.ts +0 -1
- package/dist/esm/lib/agent/index.d.ts +0 -1
- package/dist/esm/lib/agent/provide-agent-bridge.d.ts +0 -1
- package/dist/esm/lib/agent/tool-schemas.d.ts +0 -1
- package/dist/esm/lib/agent/tool-schemas.js +3 -1
- package/dist/esm/lib/agent/tool-schemas.js.map +1 -1
- package/dist/esm/lib/agent/transports/websocket.d.ts +8 -1
- package/dist/esm/lib/agent/transports/websocket.js +14 -2
- package/dist/esm/lib/agent/transports/websocket.js.map +1 -1
- package/dist/esm/lib/agent/transports/window.d.ts +0 -1
- package/dist/esm/lib/agent/transports/window.js +2 -1
- package/dist/esm/lib/agent/transports/window.js.map +1 -1
- package/dist/esm/lib/agent/types.d.ts +0 -1
- package/dist/esm/lib/components/a11y-descriptions/a11y-descriptions.component.d.ts +0 -1
- package/dist/esm/lib/components/attribution/attribution.component.d.ts +0 -1
- package/dist/esm/lib/components/background/background.component.d.ts +0 -1
- package/dist/esm/lib/components/connection-line/connection-line.component.d.ts +0 -1
- package/dist/esm/lib/components/controls/controls.component.d.ts +0 -1
- package/dist/esm/lib/components/controls/controls.component.js +2 -1
- package/dist/esm/lib/components/controls/controls.component.js.map +1 -1
- package/dist/esm/lib/components/edge-label-renderer/edge-label-renderer.component.d.ts +0 -1
- package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.d.ts +7 -2
- package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.js +11 -4
- package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.js.map +1 -1
- package/dist/esm/lib/components/edges/base-edge.component.d.ts +0 -1
- package/dist/esm/lib/components/edges/bezier-edge.component.d.ts +0 -1
- package/dist/esm/lib/components/edges/bezier-edge.component.js +2 -1
- package/dist/esm/lib/components/edges/bezier-edge.component.js.map +1 -1
- package/dist/esm/lib/components/edges/edge-text.component.d.ts +0 -1
- package/dist/esm/lib/components/edges/simple-bezier-edge.component.d.ts +0 -1
- package/dist/esm/lib/components/edges/simple-bezier-edge.component.js +2 -1
- package/dist/esm/lib/components/edges/simple-bezier-edge.component.js.map +1 -1
- package/dist/esm/lib/components/edges/smooth-step-edge.component.d.ts +0 -1
- package/dist/esm/lib/components/edges/smooth-step-edge.component.js +2 -1
- package/dist/esm/lib/components/edges/smooth-step-edge.component.js.map +1 -1
- package/dist/esm/lib/components/edges/step-edge.component.d.ts +0 -1
- package/dist/esm/lib/components/edges/step-edge.component.js +2 -1
- package/dist/esm/lib/components/edges/step-edge.component.js.map +1 -1
- package/dist/esm/lib/components/edges/straight-edge.component.d.ts +0 -1
- package/dist/esm/lib/components/edges/straight-edge.component.js +2 -1
- package/dist/esm/lib/components/edges/straight-edge.component.js.map +1 -1
- package/dist/esm/lib/components/handle/handle.component.d.ts +1 -1
- package/dist/esm/lib/components/handle/handle.component.js +13 -1
- package/dist/esm/lib/components/handle/handle.component.js.map +1 -1
- package/dist/esm/lib/components/handle-group/handle-group.component.d.ts +0 -1
- package/dist/esm/lib/components/handle-group/handle-row.component.d.ts +0 -1
- package/dist/esm/lib/components/minimap/minimap.component.d.ts +36 -25
- package/dist/esm/lib/components/minimap/minimap.component.js +197 -213
- package/dist/esm/lib/components/minimap/minimap.component.js.map +1 -1
- package/dist/esm/lib/components/ng-flow-provider/ng-flow-provider.component.d.ts +13 -5
- package/dist/esm/lib/components/ng-flow-provider/ng-flow-provider.component.js +13 -4
- package/dist/esm/lib/components/ng-flow-provider/ng-flow-provider.component.js.map +1 -1
- package/dist/esm/lib/components/node-resizer/node-resizer.component.d.ts +2 -1
- package/dist/esm/lib/components/node-resizer/node-resizer.component.js +43 -26
- package/dist/esm/lib/components/node-resizer/node-resizer.component.js.map +1 -1
- package/dist/esm/lib/components/node-toolbar/node-toolbar.component.d.ts +0 -1
- package/dist/esm/lib/components/node-toolbar/node-toolbar.component.js +1 -1
- package/dist/esm/lib/components/node-toolbar/node-toolbar.component.js.map +1 -1
- package/dist/esm/lib/components/nodes/default-node.component.d.ts +6 -15
- package/dist/esm/lib/components/nodes/default-node.component.js +13 -22
- package/dist/esm/lib/components/nodes/default-node.component.js.map +1 -1
- package/dist/esm/lib/components/nodes/group-node.component.d.ts +5 -16
- package/dist/esm/lib/components/nodes/group-node.component.js +8 -16
- package/dist/esm/lib/components/nodes/group-node.component.js.map +1 -1
- package/dist/esm/lib/components/nodes/input-node.component.d.ts +6 -15
- package/dist/esm/lib/components/nodes/input-node.component.js +11 -20
- package/dist/esm/lib/components/nodes/input-node.component.js.map +1 -1
- package/dist/esm/lib/components/nodes/output-node.component.d.ts +6 -15
- package/dist/esm/lib/components/nodes/output-node.component.js +11 -20
- package/dist/esm/lib/components/nodes/output-node.component.js.map +1 -1
- package/dist/esm/lib/components/nodes/template-node.component.d.ts +2 -14
- package/dist/esm/lib/components/nodes/template-node.component.js +16 -26
- package/dist/esm/lib/components/nodes/template-node.component.js.map +1 -1
- package/dist/esm/lib/components/panel/panel.component.d.ts +0 -1
- package/dist/esm/lib/components/selection-box/selection-box.component.d.ts +11 -1
- package/dist/esm/lib/components/selection-box/selection-box.component.js +108 -3
- package/dist/esm/lib/components/selection-box/selection-box.component.js.map +1 -1
- package/dist/esm/lib/components/viewport-portal/viewport-portal.component.d.ts +0 -1
- package/dist/esm/lib/container/edge-renderer/edge-renderer.component.d.ts +27 -3
- package/dist/esm/lib/container/edge-renderer/edge-renderer.component.js +151 -61
- package/dist/esm/lib/container/edge-renderer/edge-renderer.component.js.map +1 -1
- package/dist/esm/lib/container/ng-flow/ng-flow.component.d.ts +4 -8
- package/dist/esm/lib/container/ng-flow/ng-flow.component.js +151 -54
- package/dist/esm/lib/container/ng-flow/ng-flow.component.js.map +1 -1
- package/dist/esm/lib/container/node-renderer/node-renderer.component.d.ts +7 -1
- package/dist/esm/lib/container/node-renderer/node-renderer.component.js +70 -14
- package/dist/esm/lib/container/node-renderer/node-renderer.component.js.map +1 -1
- package/dist/esm/lib/container/pane/pane.component.d.ts +0 -1
- package/dist/esm/lib/container/pane/pane.component.js +23 -3
- package/dist/esm/lib/container/pane/pane.component.js.map +1 -1
- package/dist/esm/lib/container/viewport/viewport.component.d.ts +0 -1
- package/dist/esm/lib/directives/drag.directive.d.ts +1 -2
- package/dist/esm/lib/directives/drag.directive.js +1 -1
- package/dist/esm/lib/directives/drag.directive.js.map +1 -1
- package/dist/esm/lib/directives/drop-zone.directive.d.ts +0 -1
- package/dist/esm/lib/directives/key-handler.directive.d.ts +0 -1
- package/dist/esm/lib/directives/key-handler.directive.js +6 -2
- package/dist/esm/lib/directives/key-handler.directive.js.map +1 -1
- package/dist/esm/lib/directives/node-type.directive.d.ts +0 -1
- package/dist/esm/lib/graph/collapse.d.ts +35 -0
- package/dist/esm/lib/graph/collapse.js +102 -0
- package/dist/esm/lib/graph/collapse.js.map +1 -0
- package/dist/esm/lib/graph/group-bounds.d.ts +42 -0
- package/dist/esm/lib/graph/group-bounds.js +34 -0
- package/dist/esm/lib/graph/group-bounds.js.map +1 -0
- package/dist/esm/lib/layout/dagre-layout.d.ts +0 -1
- package/dist/esm/lib/layout/index.d.ts +1 -2
- package/dist/esm/lib/layout/index.js.map +1 -1
- package/dist/esm/lib/layout/layout-nodes.d.ts +39 -5
- package/dist/esm/lib/layout/layout-nodes.js +94 -7
- package/dist/esm/lib/layout/layout-nodes.js.map +1 -1
- package/dist/esm/lib/public-api.d.ts +4 -2
- package/dist/esm/lib/public-api.js +2 -1
- package/dist/esm/lib/public-api.js.map +1 -1
- package/dist/esm/lib/services/flow-store.service.d.ts +25 -2
- package/dist/esm/lib/services/flow-store.service.js +101 -14
- package/dist/esm/lib/services/flow-store.service.js.map +1 -1
- package/dist/esm/lib/services/ng-flow.service.d.ts +82 -7
- package/dist/esm/lib/services/ng-flow.service.js +210 -26
- package/dist/esm/lib/services/ng-flow.service.js.map +1 -1
- package/dist/esm/lib/services/tokens.d.ts +0 -1
- package/dist/esm/lib/types/edges.d.ts +0 -1
- package/dist/esm/lib/types/general.d.ts +0 -1
- package/dist/esm/lib/types/index.d.ts +0 -1
- package/dist/esm/lib/types/node-template.d.ts +2 -1
- package/dist/esm/lib/types/nodes.d.ts +4 -1
- package/dist/esm/lib/types/store.d.ts +0 -1
- package/dist/esm/lib/utils/changes.d.ts +28 -2
- package/dist/esm/lib/utils/changes.js +57 -1
- package/dist/esm/lib/utils/changes.js.map +1 -1
- package/dist/esm/lib/utils/index.d.ts +2 -2
- package/dist/esm/lib/utils/index.js +2 -1
- package/dist/esm/lib/utils/index.js.map +1 -1
- package/dist/esm/lib/utils/inject-flow-store.d.ts +16 -0
- package/dist/esm/lib/utils/inject-flow-store.js +23 -0
- package/dist/esm/lib/utils/inject-flow-store.js.map +1 -0
- package/dist/esm/lib/utils/inject-ng-flow-node.d.ts +0 -1
- package/dist/esm/lib/utils/position-tween.d.ts +0 -1
- package/dist/esm/lib/utils/template-interpolation.d.ts +0 -1
- package/dist/esm/lib/utils/type-guards.d.ts +0 -1
- package/dist/esm/lib/utils/type-guards.js +2 -0
- package/dist/esm/lib/utils/type-guards.js.map +1 -1
- package/dist/esm/test-setup.d.ts +0 -1
- package/dist/style.css +8 -0
- package/package.json +83 -78
- package/dist/esm/index.d.ts.map +0 -1
- package/dist/esm/lib/agent/agent-bridge.service.d.ts.map +0 -1
- package/dist/esm/lib/agent/chat/agent-chat.component.d.ts.map +0 -1
- package/dist/esm/lib/agent/chat/agent-chat.service.d.ts.map +0 -1
- package/dist/esm/lib/agent/chat/default-system-prompt.d.ts.map +0 -1
- package/dist/esm/lib/agent/chat/index.d.ts.map +0 -1
- package/dist/esm/lib/agent/chat/provide-agent-chat.d.ts.map +0 -1
- package/dist/esm/lib/agent/chat/types.d.ts.map +0 -1
- package/dist/esm/lib/agent/history.d.ts.map +0 -1
- package/dist/esm/lib/agent/index.d.ts.map +0 -1
- package/dist/esm/lib/agent/provide-agent-bridge.d.ts.map +0 -1
- package/dist/esm/lib/agent/tool-schemas.d.ts.map +0 -1
- package/dist/esm/lib/agent/transports/websocket.d.ts.map +0 -1
- package/dist/esm/lib/agent/transports/window.d.ts.map +0 -1
- package/dist/esm/lib/agent/types.d.ts.map +0 -1
- package/dist/esm/lib/components/a11y-descriptions/a11y-descriptions.component.d.ts.map +0 -1
- package/dist/esm/lib/components/attribution/attribution.component.d.ts.map +0 -1
- package/dist/esm/lib/components/background/background.component.d.ts.map +0 -1
- package/dist/esm/lib/components/connection-line/connection-line.component.d.ts.map +0 -1
- package/dist/esm/lib/components/controls/controls.component.d.ts.map +0 -1
- package/dist/esm/lib/components/edge-label-renderer/edge-label-renderer.component.d.ts.map +0 -1
- package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.d.ts.map +0 -1
- package/dist/esm/lib/components/edges/base-edge.component.d.ts.map +0 -1
- package/dist/esm/lib/components/edges/bezier-edge.component.d.ts.map +0 -1
- package/dist/esm/lib/components/edges/edge-text.component.d.ts.map +0 -1
- package/dist/esm/lib/components/edges/simple-bezier-edge.component.d.ts.map +0 -1
- package/dist/esm/lib/components/edges/smooth-step-edge.component.d.ts.map +0 -1
- package/dist/esm/lib/components/edges/step-edge.component.d.ts.map +0 -1
- package/dist/esm/lib/components/edges/straight-edge.component.d.ts.map +0 -1
- package/dist/esm/lib/components/handle/handle.component.d.ts.map +0 -1
- package/dist/esm/lib/components/handle-group/handle-group.component.d.ts.map +0 -1
- package/dist/esm/lib/components/handle-group/handle-row.component.d.ts.map +0 -1
- package/dist/esm/lib/components/minimap/minimap.component.d.ts.map +0 -1
- package/dist/esm/lib/components/ng-flow-provider/ng-flow-provider.component.d.ts.map +0 -1
- package/dist/esm/lib/components/node-resizer/node-resizer.component.d.ts.map +0 -1
- package/dist/esm/lib/components/node-toolbar/node-toolbar.component.d.ts.map +0 -1
- package/dist/esm/lib/components/nodes/default-node.component.d.ts.map +0 -1
- package/dist/esm/lib/components/nodes/group-node.component.d.ts.map +0 -1
- package/dist/esm/lib/components/nodes/input-node.component.d.ts.map +0 -1
- package/dist/esm/lib/components/nodes/output-node.component.d.ts.map +0 -1
- package/dist/esm/lib/components/nodes/template-node.component.d.ts.map +0 -1
- package/dist/esm/lib/components/panel/panel.component.d.ts.map +0 -1
- package/dist/esm/lib/components/selection-box/selection-box.component.d.ts.map +0 -1
- package/dist/esm/lib/components/viewport-portal/viewport-portal.component.d.ts.map +0 -1
- package/dist/esm/lib/container/edge-renderer/edge-renderer.component.d.ts.map +0 -1
- package/dist/esm/lib/container/ng-flow/ng-flow.component.d.ts.map +0 -1
- package/dist/esm/lib/container/node-renderer/node-renderer.component.d.ts.map +0 -1
- package/dist/esm/lib/container/pane/pane.component.d.ts.map +0 -1
- package/dist/esm/lib/container/viewport/viewport.component.d.ts.map +0 -1
- package/dist/esm/lib/directives/drag.directive.d.ts.map +0 -1
- package/dist/esm/lib/directives/drop-zone.directive.d.ts.map +0 -1
- package/dist/esm/lib/directives/key-handler.directive.d.ts.map +0 -1
- package/dist/esm/lib/directives/node-type.directive.d.ts.map +0 -1
- package/dist/esm/lib/layout/dagre-layout.d.ts.map +0 -1
- package/dist/esm/lib/layout/index.d.ts.map +0 -1
- package/dist/esm/lib/layout/layout-nodes.d.ts.map +0 -1
- package/dist/esm/lib/public-api.d.ts.map +0 -1
- package/dist/esm/lib/services/flow-store.service.d.ts.map +0 -1
- package/dist/esm/lib/services/ng-flow.service.d.ts.map +0 -1
- package/dist/esm/lib/services/tokens.d.ts.map +0 -1
- package/dist/esm/lib/types/edges.d.ts.map +0 -1
- package/dist/esm/lib/types/general.d.ts.map +0 -1
- package/dist/esm/lib/types/index.d.ts.map +0 -1
- package/dist/esm/lib/types/node-template.d.ts.map +0 -1
- package/dist/esm/lib/types/nodes.d.ts.map +0 -1
- package/dist/esm/lib/types/store.d.ts.map +0 -1
- package/dist/esm/lib/utils/changes.d.ts.map +0 -1
- package/dist/esm/lib/utils/index.d.ts.map +0 -1
- package/dist/esm/lib/utils/inject-ng-flow-node.d.ts.map +0 -1
- package/dist/esm/lib/utils/position-tween.d.ts.map +0 -1
- package/dist/esm/lib/utils/template-interpolation.d.ts.map +0 -1
- package/dist/esm/lib/utils/type-guards.d.ts.map +0 -1
- package/dist/esm/test-setup.d.ts.map +0 -1
|
@@ -10,6 +10,29 @@ import { GroupNodeComponent } from '../../components/nodes/group-node.component'
|
|
|
10
10
|
import { TemplateNodeComponent } from '../../components/nodes/template-node.component';
|
|
11
11
|
import * as i0 from "@angular/core";
|
|
12
12
|
import * as i1 from "@angular/common";
|
|
13
|
+
/**
|
|
14
|
+
* Cache key for a node's NgComponentOutlet inputs object. Enumerates every
|
|
15
|
+
* field `getNodeInputs` feeds into the inputs object (data is compared by
|
|
16
|
+
* reference in the cache entry instead — object identity can't live in a
|
|
17
|
+
* string key). Exported for tests.
|
|
18
|
+
*/
|
|
19
|
+
export function computeNodeInputsKey(node, nodesConnectable, isTemplate) {
|
|
20
|
+
const x = node.internals?.positionAbsolute?.x ?? node.position.x;
|
|
21
|
+
const y = node.internals?.positionAbsolute?.y ?? node.position.y;
|
|
22
|
+
return [
|
|
23
|
+
node.type ?? 'default',
|
|
24
|
+
isTemplate ? 1 : 0,
|
|
25
|
+
node.selected ? 1 : 0,
|
|
26
|
+
node.dragging ? 1 : 0,
|
|
27
|
+
node.internals?.z ?? 0,
|
|
28
|
+
(node.connectable ?? nodesConnectable) ? 1 : 0,
|
|
29
|
+
x,
|
|
30
|
+
y,
|
|
31
|
+
node.sourcePosition ?? '',
|
|
32
|
+
node.targetPosition ?? '',
|
|
33
|
+
node.dragHandle ?? '',
|
|
34
|
+
].join(':');
|
|
35
|
+
}
|
|
13
36
|
// Keep the key set in sync with BUILT_IN_NODE_TYPE_NAMES in services/ng-flow.service.ts.
|
|
14
37
|
const builtInNodeTypes = {
|
|
15
38
|
default: DefaultNodeComponent,
|
|
@@ -17,13 +40,21 @@ const builtInNodeTypes = {
|
|
|
17
40
|
output: OutputNodeComponent,
|
|
18
41
|
group: GroupNodeComponent,
|
|
19
42
|
};
|
|
43
|
+
/**
|
|
44
|
+
* Shared inputs object for components that declare zero @Input()s (every
|
|
45
|
+
* built-in after the injectNgFlowNode migration). Returning one frozen instance
|
|
46
|
+
* keeps ngComponentOutlet's inputs reference stable across recomputes — no
|
|
47
|
+
* per-render object churn, no cache thrash — and provides nothing to set.
|
|
48
|
+
*/
|
|
49
|
+
const EMPTY_INPUTS = Object.freeze({});
|
|
20
50
|
export class NodeRendererComponent {
|
|
21
51
|
constructor() {
|
|
22
52
|
this.store = inject(FlowStore);
|
|
23
53
|
this.parentInjector = inject(Injector);
|
|
24
54
|
this.el = inject((ElementRef));
|
|
25
55
|
this.customNodeTypes = input({}, ...(ngDevMode ? [{ debugName: "customNodeTypes" }] : /* istanbul ignore next */ []));
|
|
26
|
-
|
|
56
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
57
|
+
this.nodeTemplateMap = input(new Map(), ...(ngDevMode ? [{ debugName: "nodeTemplateMap" }] : /* istanbul ignore next */ [])); // heterogeneous node templates
|
|
27
58
|
// Node events that bubble up to NgFlowComponent
|
|
28
59
|
this.nodeClick = output();
|
|
29
60
|
this.nodeDoubleClick = output();
|
|
@@ -190,11 +221,23 @@ export class NodeRendererComponent {
|
|
|
190
221
|
this.store.unselectNodesAndEdges({ nodes: [node] });
|
|
191
222
|
// Move focus to the container to avoid the node staying focused
|
|
192
223
|
event.currentTarget?.blur();
|
|
224
|
+
return;
|
|
193
225
|
}
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
226
|
+
if (event.key !== 'Enter' && event.key !== ' ')
|
|
227
|
+
return;
|
|
228
|
+
if (!this.store.elementsSelectable() || node.selectable === false)
|
|
229
|
+
return;
|
|
230
|
+
// Mirror React's handleNodeClick for the selection keys: select when
|
|
231
|
+
// unselected; toggle off only when already selected AND multi-selection is
|
|
232
|
+
// active. (React: unselect=false for Enter/Space, so a selected node with
|
|
233
|
+
// multiSelectionActive=false is a no-op.)
|
|
234
|
+
this.store.nodesSelectionActive.set(false);
|
|
235
|
+
if (!node.selected) {
|
|
236
|
+
this.store.addSelectedNodes([node.id]);
|
|
237
|
+
}
|
|
238
|
+
else if (this.store.multiSelectionActive()) {
|
|
239
|
+
this.store.unselectNodesAndEdges({ nodes: [node] });
|
|
240
|
+
event.currentTarget?.blur();
|
|
198
241
|
}
|
|
199
242
|
}
|
|
200
243
|
onNodeFocus(node, event) {
|
|
@@ -240,6 +283,7 @@ export class NodeRendererComponent {
|
|
|
240
283
|
}
|
|
241
284
|
this.store.panBy({ x: targetX - currentX, y: targetY - currentY });
|
|
242
285
|
}
|
|
286
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
243
287
|
getNodeTemplate(type) {
|
|
244
288
|
const resolvedType = type || 'default';
|
|
245
289
|
return this.nodeTemplateMap().get(resolvedType) ?? null;
|
|
@@ -307,14 +351,26 @@ export class NodeRendererComponent {
|
|
|
307
351
|
return `Node: ${label}, type: ${type}`;
|
|
308
352
|
}
|
|
309
353
|
getNodeInputs(node) {
|
|
310
|
-
const version = this.store.version();
|
|
311
354
|
const nodesConnectable = this.store.nodesConnectable();
|
|
312
|
-
const isTemplate = this.store.nodeTemplates().has(node.type ?? 'default')
|
|
313
|
-
|
|
355
|
+
const isTemplate = this.store.nodeTemplates().has(node.type ?? 'default');
|
|
356
|
+
// Per-node key: a global version bump (every drag frame) must not
|
|
357
|
+
// invalidate all N nodes' inputs — only fields this node's inputs
|
|
358
|
+
// actually read. The template stays version-reactive via visibleNodes().
|
|
359
|
+
const key = computeNodeInputsKey(node, nodesConnectable, isTemplate);
|
|
314
360
|
const cached = this.nodeInputsCache.get(node.id);
|
|
315
|
-
if (cached && cached.key === key) {
|
|
361
|
+
if (cached && cached.key === key && cached.data === node.data) {
|
|
316
362
|
return cached.inputs;
|
|
317
363
|
}
|
|
364
|
+
// Short-circuit: components that declare no @Input()s (all built-ins use
|
|
365
|
+
// injectNgFlowNode()) get the shared frozen empty object — skip building
|
|
366
|
+
// and filtering allInputs entirely. We still seed the cache entry so the
|
|
367
|
+
// key/data reference-compare fast-path holds; inputs is the shared object,
|
|
368
|
+
// so the returned reference is identity-stable across recomputes (no thrash).
|
|
369
|
+
const declared = this.getDeclaredInputs(this.getNodeComponent(node.type));
|
|
370
|
+
if (declared && declared.size === 0) {
|
|
371
|
+
this.nodeInputsCache.set(node.id, { key, data: node.data, inputs: EMPTY_INPUTS });
|
|
372
|
+
return EMPTY_INPUTS;
|
|
373
|
+
}
|
|
318
374
|
const allInputs = {
|
|
319
375
|
id: node.id,
|
|
320
376
|
data: node.data,
|
|
@@ -330,14 +386,11 @@ export class NodeRendererComponent {
|
|
|
330
386
|
dragHandle: node.dragHandle,
|
|
331
387
|
};
|
|
332
388
|
// Only push keys the target component actually declares as inputs.
|
|
333
|
-
//
|
|
334
|
-
// declarations entirely; pushing unknown keys via ngComponentOutlet would
|
|
335
|
-
// throw NG0303 on every render.
|
|
336
|
-
const declared = this.getDeclaredInputs(this.getNodeComponent(node.type));
|
|
389
|
+
// declared === null means reflection failed (defensive) — pass everything.
|
|
337
390
|
const inputs = declared
|
|
338
391
|
? Object.fromEntries(Object.entries(allInputs).filter(([k]) => declared.has(k)))
|
|
339
392
|
: allInputs;
|
|
340
|
-
this.nodeInputsCache.set(node.id, { key, inputs });
|
|
393
|
+
this.nodeInputsCache.set(node.id, { key, data: node.data, inputs });
|
|
341
394
|
return inputs;
|
|
342
395
|
}
|
|
343
396
|
getDeclaredInputs(Component) {
|
|
@@ -376,6 +429,7 @@ export class NodeRendererComponent {
|
|
|
376
429
|
sourcePosition: computed(() => getNode()?.sourcePosition),
|
|
377
430
|
targetPosition: computed(() => getNode()?.targetPosition),
|
|
378
431
|
dragHandle: computed(() => getNode()?.dragHandle),
|
|
432
|
+
collapsed: computed(() => getNode()?.collapsed ?? false),
|
|
379
433
|
};
|
|
380
434
|
}
|
|
381
435
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: NodeRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
@@ -391,6 +445,7 @@ export class NodeRendererComponent {
|
|
|
391
445
|
[class.selectable]="node.selectable !== false && store.elementsSelectable()"
|
|
392
446
|
[class.connectable]="(node.connectable ?? store.nodesConnectable())"
|
|
393
447
|
[class.connection-target]="store.connectionTargetNodeId() === node.id"
|
|
448
|
+
[class.collapsed]="node.collapsed"
|
|
394
449
|
[ngFlowDrag]="node.id"
|
|
395
450
|
[ngFlowDragDisabled]="node.draggable === false || !store.nodesDraggable()"
|
|
396
451
|
[ngFlowDragSelectable]="node.selectable !== false && store.elementsSelectable()"
|
|
@@ -456,6 +511,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImpo
|
|
|
456
511
|
[class.selectable]="node.selectable !== false && store.elementsSelectable()"
|
|
457
512
|
[class.connectable]="(node.connectable ?? store.nodesConnectable())"
|
|
458
513
|
[class.connection-target]="store.connectionTargetNodeId() === node.id"
|
|
514
|
+
[class.collapsed]="node.collapsed"
|
|
459
515
|
[ngFlowDrag]="node.id"
|
|
460
516
|
[ngFlowDragDisabled]="node.draggable === false || !store.nodesDraggable()"
|
|
461
517
|
[ngFlowDragSelectable]="node.selectable !== false && store.elementsSelectable()"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-renderer.component.js","sourceRoot":"","sources":["../../../../../src/lib/container/node-renderer/node-renderer.component.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"node-renderer.component.js","sourceRoot":"","sources":["../../../../../src/lib/container/node-renderer/node-renderer.component.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,4 +31,3 @@ export declare class PaneComponent implements OnDestroy {
|
|
|
31
31
|
static ɵfac: i0.ɵɵFactoryDeclaration<PaneComponent, never>;
|
|
32
32
|
static ɵcmp: i0.ɵɵComponentDeclaration<PaneComponent, "ng-flow-pane", never, { "panOnDrag": { "alias": "panOnDrag"; "required": false; "isSignal": true; }; "selectionOnDrag": { "alias": "selectionOnDrag"; "required": false; "isSignal": true; }; "selectionKeyCode": { "alias": "selectionKeyCode"; "required": false; "isSignal": true; }; "selectionMode": { "alias": "selectionMode"; "required": false; "isSignal": true; }; }, { "selectionStart": "selectionStart"; "selectionEnd": "selectionEnd"; "paneScroll": "paneScroll"; }, never, ["*"], true, never>;
|
|
33
33
|
}
|
|
34
|
-
//# sourceMappingURL=pane.component.d.ts.map
|
|
@@ -8,7 +8,8 @@ export class PaneComponent {
|
|
|
8
8
|
this.el = inject((ElementRef));
|
|
9
9
|
this.panOnDrag = input(true, ...(ngDevMode ? [{ debugName: "panOnDrag" }] : /* istanbul ignore next */ []));
|
|
10
10
|
this.selectionOnDrag = input(false, ...(ngDevMode ? [{ debugName: "selectionOnDrag" }] : /* istanbul ignore next */ []));
|
|
11
|
-
|
|
11
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
12
|
+
this.selectionKeyCode = input(null, ...(ngDevMode ? [{ debugName: "selectionKeyCode" }] : /* istanbul ignore next */ [])); // KeyCode union accepts string|string[]|null
|
|
12
13
|
this.selectionMode = input(SelectionMode.Full, ...(ngDevMode ? [{ debugName: "selectionMode" }] : /* istanbul ignore next */ []));
|
|
13
14
|
this.selectionStart = output();
|
|
14
15
|
this.selectionEnd = output();
|
|
@@ -38,6 +39,18 @@ export class PaneComponent {
|
|
|
38
39
|
return;
|
|
39
40
|
if (event.button !== 0)
|
|
40
41
|
return;
|
|
42
|
+
// React parity (Pane/index.tsx `onPointerDownCapture`):
|
|
43
|
+
// const eventTargetIsContainer = event.target === container.current;
|
|
44
|
+
// const isSelectionActive = (selectionOnDrag && eventTargetIsContainer) || selectionKeyPressed;
|
|
45
|
+
// if (!isSelectionActive ...) return;
|
|
46
|
+
//
|
|
47
|
+
// When selectionOnDrag is the trigger, the event target MUST be the pane
|
|
48
|
+
// element itself — clicks on children (nodes-selection box, nodes, edges)
|
|
49
|
+
// must not be hijacked. Key-based selection bypasses this requirement.
|
|
50
|
+
const eventTargetIsPane = event.target === this.el.nativeElement;
|
|
51
|
+
if (this.selectionOnDrag() && !eventTargetIsPane && !this.store.selectionKeyActive()) {
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
41
54
|
const target = event.target;
|
|
42
55
|
if (target.closest('.xy-flow__node') || target.closest('.xy-flow__handle') ||
|
|
43
56
|
target.closest('.xy-flow__edge') || target.closest('.xy-flow__controls') ||
|
|
@@ -89,7 +102,8 @@ export class PaneComponent {
|
|
|
89
102
|
this.store.userSelectionRect.set(selectionRect);
|
|
90
103
|
const transform = this.store.transform();
|
|
91
104
|
const partially = this.selectionMode() === SelectionMode.Partial;
|
|
92
|
-
const nodesInside = getNodesInside(this.store.nodeLookup, selectionRect, transform, partially
|
|
105
|
+
const nodesInside = getNodesInside(this.store.nodeLookup, selectionRect, transform, partially, true // excludeNonSelectableNodes: honour node.selectable === false
|
|
106
|
+
);
|
|
93
107
|
// Always dispatch — passing an empty list through addSelectedNodes is how
|
|
94
108
|
// we deselect nodes that fell outside the shrinking box.
|
|
95
109
|
const nodeIds = nodesInside.map(n => n.id);
|
|
@@ -109,7 +123,13 @@ export class PaneComponent {
|
|
|
109
123
|
}
|
|
110
124
|
this.store.userSelectionActive.set(false);
|
|
111
125
|
this.store.userSelectionRect.set(null);
|
|
112
|
-
//
|
|
126
|
+
// Set selectionInProgress unconditionally so the click event synthesised
|
|
127
|
+
// from this same mouseup is absorbed by onPaneClick. React parity:
|
|
128
|
+
// selectionInProgress is set during drag (onPointerMove), so it fires for
|
|
129
|
+
// both empty and non-empty marquees. Here we set it in onMouseUp for both
|
|
130
|
+
// cases (React parity: Pane/index.tsx onPointerUp checks selectionInProgress).
|
|
131
|
+
this.store.selectionInProgress.set(true);
|
|
132
|
+
// Mark nodes selection as active only if nodes were selected.
|
|
113
133
|
if (this.store.selectedNodes().length > 0) {
|
|
114
134
|
this.store.nodesSelectionActive.set(true);
|
|
115
135
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pane.component.js","sourceRoot":"","sources":["../../../../../src/lib/container/pane/pane.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAa,UAAU,EAAE,MAAM,eAAe,CAAC;AACjH,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;;AAgB9D,MAAM,OAAO,aAAa;IAd1B;QAeW,UAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QAC3B,OAAE,GAAG,MAAM,CAAC,CAAA,UAAuB,CAAA,CAAC,CAAC;QAEpC,cAAS,GAAG,KAAK,CAAqB,IAAI,gFAAC,CAAC;QAC5C,oBAAe,GAAG,KAAK,CAAC,KAAK,sFAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"pane.component.js","sourceRoot":"","sources":["../../../../../src/lib/container/pane/pane.component.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,4 +10,3 @@ export declare class ViewportComponent {
|
|
|
10
10
|
static ɵfac: i0.ɵɵFactoryDeclaration<ViewportComponent, never>;
|
|
11
11
|
static ɵcmp: i0.ɵɵComponentDeclaration<ViewportComponent, "ng-flow-viewport", never, { "transform": { "alias": "transform"; "required": true; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
12
12
|
}
|
|
13
|
-
//# sourceMappingURL=viewport.component.d.ts.map
|
|
@@ -28,11 +28,10 @@ export declare class DragDirective implements OnInit, OnChanges, OnDestroy {
|
|
|
28
28
|
readonly nodeClickDistance: import("@angular/core").InputSignal<number>;
|
|
29
29
|
private dragInstance;
|
|
30
30
|
ngOnInit(): void;
|
|
31
|
-
ngOnChanges(
|
|
31
|
+
ngOnChanges(_changes: SimpleChanges): void;
|
|
32
32
|
ngOnDestroy(): void;
|
|
33
33
|
private updateDrag;
|
|
34
34
|
private handleNodeClick;
|
|
35
35
|
static ɵfac: i0.ɵɵFactoryDeclaration<DragDirective, never>;
|
|
36
36
|
static ɵdir: i0.ɵɵDirectiveDeclaration<DragDirective, "[ngFlowDrag]", never, { "nodeId": { "alias": "ngFlowDrag"; "required": true; "isSignal": true; }; "disabled": { "alias": "ngFlowDragDisabled"; "required": false; "isSignal": true; }; "noDragClassName": { "alias": "ngFlowDragNoDragClass"; "required": false; "isSignal": true; }; "handleSelector": { "alias": "ngFlowDragHandleSelector"; "required": false; "isSignal": true; }; "isSelectable": { "alias": "ngFlowDragSelectable"; "required": false; "isSignal": true; }; "nodeClickDistance": { "alias": "ngFlowDragClickDistance"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
37
37
|
}
|
|
38
|
-
//# sourceMappingURL=drag.directive.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drag.directive.js","sourceRoot":"","sources":["../../../../src/lib/directives/drag.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,UAAU,EACV,MAAM,EACN,KAAK,GAKN,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,MAAM,EAAuB,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;;AAE3D;;;;;;;;;;GAUG;AAKH,MAAM,OAAO,aAAa;IAJ1B;QAKU,UAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QAC1B,OAAE,GAAG,MAAM,CAAC,CAAA,UAA0B,CAAA,CAAC,CAAC;QAEhD,qFAAqF;QAC5E,WAAM,GAAG,KAAK,CAAC,QAAQ,6EAAW,KAAK,EAAE,YAAY,GAAG,CAAC;QAClE,iEAAiE;QACxD,aAAQ,GAAG,KAAK,CAAC,KAAK,gFAAI,KAAK,EAAE,oBAAoB,GAAG,CAAC;QAClE,mGAAmG;QAC1F,oBAAe,GAAG,KAAK,CAAS,QAAQ,uFAAI,KAAK,EAAE,uBAAuB,GAAG,CAAC;QACvF,8EAA8E;QACrE,mBAAc,GAAG,KAAK,CAAqB,SAAS,sFAAI,KAAK,EAAE,0BAA0B,GAAG,CAAC;QACtG,oEAAoE;QAC3D,iBAAY,GAAG,KAAK,CAAC,IAAI,oFAAI,KAAK,EAAE,sBAAsB,GAAG,CAAC;QACvE,iFAAiF;QACxE,sBAAiB,GAAG,KAAK,CAAC,CAAC,yFAAI,KAAK,EAAE,yBAAyB,GAAG,CAAC;QAEpE,iBAAY,GAA0B,IAAI,CAAC;KA2DpD;IAzDC,QAAQ;QACN,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC;YACzB,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE;YAC/C,eAAe,EAAE,CAAC,EAAU,EAAE,EAAE;gBAC9B,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;YAC3B,CAAC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"drag.directive.js","sourceRoot":"","sources":["../../../../src/lib/directives/drag.directive.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,4 +27,3 @@ export declare class NgFlowDropZoneDirective implements OnInit, OnDestroy {
|
|
|
27
27
|
static ɵfac: i0.ɵɵFactoryDeclaration<NgFlowDropZoneDirective, never>;
|
|
28
28
|
static ɵdir: i0.ɵɵDirectiveDeclaration<NgFlowDropZoneDirective, "[ngFlowDropZone]", never, {}, { "nodeDrop": "nodeDrop"; }, never, never, true, never>;
|
|
29
29
|
}
|
|
30
|
-
//# sourceMappingURL=drop-zone.directive.d.ts.map
|
|
@@ -39,4 +39,3 @@ export declare class KeyHandlerDirective implements OnInit, OnDestroy {
|
|
|
39
39
|
static ɵfac: i0.ɵɵFactoryDeclaration<KeyHandlerDirective, never>;
|
|
40
40
|
static ɵdir: i0.ɵɵDirectiveDeclaration<KeyHandlerDirective, "[ngFlowKeyHandler]", never, { "deleteKeyCode": { "alias": "deleteKeyCode"; "required": false; "isSignal": true; }; "selectionKeyCode": { "alias": "selectionKeyCode"; "required": false; "isSignal": true; }; "multiSelectionKeyCode": { "alias": "multiSelectionKeyCode"; "required": false; "isSignal": true; }; "disableKeyboardA11y": { "alias": "disableKeyboardA11y"; "required": false; "isSignal": true; }; }, { "nodesDelete": "nodesDelete"; "edgesDelete": "edgesDelete"; "deleteElements": "deleteElements"; }, never, never, true, never>;
|
|
41
41
|
}
|
|
42
|
-
//# sourceMappingURL=key-handler.directive.d.ts.map
|
|
@@ -119,12 +119,16 @@ export class KeyHandlerDirective {
|
|
|
119
119
|
}
|
|
120
120
|
}
|
|
121
121
|
handleSelectAll() {
|
|
122
|
-
const nodeChanges = this.store.nodes()
|
|
122
|
+
const nodeChanges = this.store.nodes()
|
|
123
|
+
.filter((n) => n.selectable !== false)
|
|
124
|
+
.map((n) => ({
|
|
123
125
|
id: n.id,
|
|
124
126
|
type: 'select',
|
|
125
127
|
selected: true,
|
|
126
128
|
}));
|
|
127
|
-
const edgeChanges = this.store.edges()
|
|
129
|
+
const edgeChanges = this.store.edges()
|
|
130
|
+
.filter((e) => e.selectable !== false)
|
|
131
|
+
.map((e) => ({
|
|
128
132
|
id: e.id,
|
|
129
133
|
type: 'select',
|
|
130
134
|
selected: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"key-handler.directive.js","sourceRoot":"","sources":["../../../../src/lib/directives/key-handler.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,MAAM,EACN,KAAK,EACL,MAAM,GAGP,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,cAAc,EAAoC,MAAM,iBAAiB,CAAC;AACnF,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;;AAGzD;;;;;GAKG;AASH,MAAM,OAAO,mBAAmB;IARhC;QASU,UAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QAElC,0EAA0E;QACjE,kBAAa,GAAG,KAAK,CAA2B,CAAC,WAAW,EAAE,QAAQ,CAAC,oFAAC,CAAC;QAClF,uCAAuC;QAC9B,qBAAgB,GAAG,KAAK,CAA2B,OAAO,uFAAC,CAAC;QACrE,gDAAgD;QACvC,0BAAqB,GAAG,KAAK,CAA2B,MAAM,4FAAC,CAAC;QACzE,uCAAuC;QAC9B,wBAAmB,GAAG,KAAK,CAAC,KAAK,0FAAC,CAAC;QAE5C,6DAA6D;QACpD,gBAAW,GAAG,MAAM,EAAU,CAAC;QACxC,6DAA6D;QACpD,gBAAW,GAAG,MAAM,EAAU,CAAC;QACxC,wDAAwD;QAC/C,mBAAc,GAAG,MAAM,EAAoC,CAAC;QAE7D,wBAAmB,GAAG,KAAK,CAAC;QAC5B,6BAAwB,GAAG,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"key-handler.directive.js","sourceRoot":"","sources":["../../../../src/lib/directives/key-handler.directive.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,4 +18,3 @@ export declare class NgFlowNodeTypeDirective {
|
|
|
18
18
|
static ɵfac: i0.ɵɵFactoryDeclaration<NgFlowNodeTypeDirective, never>;
|
|
19
19
|
static ɵdir: i0.ɵɵDirectiveDeclaration<NgFlowNodeTypeDirective, "[ngFlowNodeType]", never, { "type": { "alias": "ngFlowNodeType"; "required": true; }; }, {}, never, never, true, never>;
|
|
20
20
|
}
|
|
21
|
-
//# sourceMappingURL=node-type.directive.d.ts.map
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { Edge } from '../types';
|
|
2
|
+
/** Minimal node shape the collapse helpers read. */
|
|
3
|
+
interface CollapseNode {
|
|
4
|
+
id: string;
|
|
5
|
+
parentId?: string;
|
|
6
|
+
collapsed?: boolean;
|
|
7
|
+
}
|
|
8
|
+
/** A display edge: an `Edge` plus the original ids it represents (length 1 = passthrough). */
|
|
9
|
+
export type DisplayEdge<EdgeType extends Edge = Edge> = EdgeType & {
|
|
10
|
+
collapsedFrom?: string[];
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Ids of nodes hidden because an ancestor (via `parentId` chain) is `collapsed`.
|
|
14
|
+
* The collapsed node itself is NOT included. Nesting-correct; each node's ancestry
|
|
15
|
+
* is walked with a cycle guard so a malformed parentId loop can't hang.
|
|
16
|
+
*/
|
|
17
|
+
export declare function getCollapsedHiddenIds(nodeLookup: ReadonlyMap<string, CollapseNode>): Set<string>;
|
|
18
|
+
/**
|
|
19
|
+
* Rewrite edges for the current collapsed state:
|
|
20
|
+
* - map each hidden endpoint to its outermost collapsed ancestor;
|
|
21
|
+
* - drop edges whose endpoints map to the same node (internal to a collapsed box);
|
|
22
|
+
* - dedupe parallels CREATED BY REWRITING, keyed (source,target,sourceHandle,targetHandle).
|
|
23
|
+
*
|
|
24
|
+
* Edges whose NEITHER endpoint is hidden pass through verbatim (original identity, no
|
|
25
|
+
* `collapsedFrom`), so unrelated parallel edges are never merged. Only edges with at least
|
|
26
|
+
* one rewritten endpoint enter the dedupe map.
|
|
27
|
+
*
|
|
28
|
+
* Rerouted or merged edges carry `collapsedFrom` (the original edge ids); a merged edge also
|
|
29
|
+
* gets a synthetic `__collapsed:src->tgt` id.
|
|
30
|
+
*
|
|
31
|
+
* Accepted trade-off: a pre-existing real `x→g` edge no longer absorbs an `x→a` edge
|
|
32
|
+
* rerouted to `x→g`; they render as parallels.
|
|
33
|
+
*/
|
|
34
|
+
export declare function rewriteEdgesForCollapse<EdgeType extends Edge>(edges: EdgeType[], nodeLookup: ReadonlyMap<string, CollapseNode>, hiddenIds: Set<string>): DisplayEdge<EdgeType>[];
|
|
35
|
+
export {};
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ids of nodes hidden because an ancestor (via `parentId` chain) is `collapsed`.
|
|
3
|
+
* The collapsed node itself is NOT included. Nesting-correct; each node's ancestry
|
|
4
|
+
* is walked with a cycle guard so a malformed parentId loop can't hang.
|
|
5
|
+
*/
|
|
6
|
+
export function getCollapsedHiddenIds(nodeLookup) {
|
|
7
|
+
const hidden = new Set();
|
|
8
|
+
for (const node of nodeLookup.values()) {
|
|
9
|
+
const seen = new Set();
|
|
10
|
+
let parentId = node.parentId;
|
|
11
|
+
while (parentId && !seen.has(parentId)) {
|
|
12
|
+
seen.add(parentId);
|
|
13
|
+
const parent = nodeLookup.get(parentId);
|
|
14
|
+
if (!parent)
|
|
15
|
+
break;
|
|
16
|
+
if (parent.collapsed) {
|
|
17
|
+
hidden.add(node.id);
|
|
18
|
+
break;
|
|
19
|
+
}
|
|
20
|
+
parentId = parent.parentId;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
return hidden;
|
|
24
|
+
}
|
|
25
|
+
/** The outermost (highest) collapsed ancestor of `id`, or `id` itself if none. Cycle-guarded. */
|
|
26
|
+
function outermostCollapsedAncestor(id, nodeLookup) {
|
|
27
|
+
let result = id;
|
|
28
|
+
const seen = new Set();
|
|
29
|
+
let parentId = nodeLookup.get(id)?.parentId;
|
|
30
|
+
while (parentId && !seen.has(parentId)) {
|
|
31
|
+
seen.add(parentId);
|
|
32
|
+
const parent = nodeLookup.get(parentId);
|
|
33
|
+
if (!parent)
|
|
34
|
+
break;
|
|
35
|
+
if (parent.collapsed)
|
|
36
|
+
result = parent.id;
|
|
37
|
+
parentId = parent.parentId;
|
|
38
|
+
}
|
|
39
|
+
return result;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Rewrite edges for the current collapsed state:
|
|
43
|
+
* - map each hidden endpoint to its outermost collapsed ancestor;
|
|
44
|
+
* - drop edges whose endpoints map to the same node (internal to a collapsed box);
|
|
45
|
+
* - dedupe parallels CREATED BY REWRITING, keyed (source,target,sourceHandle,targetHandle).
|
|
46
|
+
*
|
|
47
|
+
* Edges whose NEITHER endpoint is hidden pass through verbatim (original identity, no
|
|
48
|
+
* `collapsedFrom`), so unrelated parallel edges are never merged. Only edges with at least
|
|
49
|
+
* one rewritten endpoint enter the dedupe map.
|
|
50
|
+
*
|
|
51
|
+
* Rerouted or merged edges carry `collapsedFrom` (the original edge ids); a merged edge also
|
|
52
|
+
* gets a synthetic `__collapsed:src->tgt` id.
|
|
53
|
+
*
|
|
54
|
+
* Accepted trade-off: a pre-existing real `x→g` edge no longer absorbs an `x→a` edge
|
|
55
|
+
* rerouted to `x→g`; they render as parallels.
|
|
56
|
+
*/
|
|
57
|
+
export function rewriteEdgesForCollapse(edges, nodeLookup, hiddenIds) {
|
|
58
|
+
if (hiddenIds.size === 0)
|
|
59
|
+
return edges;
|
|
60
|
+
const untouched = [];
|
|
61
|
+
const byKey = new Map();
|
|
62
|
+
for (const edge of edges) {
|
|
63
|
+
const sourceHidden = hiddenIds.has(edge.source);
|
|
64
|
+
const targetHidden = hiddenIds.has(edge.target);
|
|
65
|
+
if (!sourceHidden && !targetHidden) {
|
|
66
|
+
// Neither endpoint is hidden — pass through verbatim, no dedupe
|
|
67
|
+
untouched.push(edge);
|
|
68
|
+
continue;
|
|
69
|
+
}
|
|
70
|
+
const source = sourceHidden ? outermostCollapsedAncestor(edge.source, nodeLookup) : edge.source;
|
|
71
|
+
const target = targetHidden ? outermostCollapsedAncestor(edge.target, nodeLookup) : edge.target;
|
|
72
|
+
if (source === target)
|
|
73
|
+
continue; // internal to one collapsed box
|
|
74
|
+
// The rewritten endpoint's handle belongs to the hidden child — the collapsed box has no such
|
|
75
|
+
// handle; null it so anchoring falls back to the box and the dedupe key isn't split by stale
|
|
76
|
+
// handle ids. The kept endpoint's handle is preserved verbatim.
|
|
77
|
+
const sourceHandle = sourceHidden ? null : edge.sourceHandle ?? null;
|
|
78
|
+
const targetHandle = targetHidden ? null : edge.targetHandle ?? null;
|
|
79
|
+
const key = `${source}\0${target}\0${sourceHandle ?? ''}\0${targetHandle ?? ''}`;
|
|
80
|
+
const existing = byKey.get(key);
|
|
81
|
+
if (existing) {
|
|
82
|
+
existing.from.push(edge.id);
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
byKey.set(key, { edge, source, target, sourceHandle, targetHandle, from: [edge.id] });
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
const rewritten = Array.from(byKey.values(), ({ edge, source, target, sourceHandle, targetHandle, from }) => {
|
|
89
|
+
const merged = from.length > 1;
|
|
90
|
+
return {
|
|
91
|
+
...edge,
|
|
92
|
+
id: merged ? `__collapsed:${source}->${target}` : edge.id,
|
|
93
|
+
source,
|
|
94
|
+
target,
|
|
95
|
+
sourceHandle,
|
|
96
|
+
targetHandle,
|
|
97
|
+
collapsedFrom: from,
|
|
98
|
+
};
|
|
99
|
+
});
|
|
100
|
+
return [...untouched, ...rewritten];
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=collapse.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collapse.js","sourceRoot":"","sources":["../../../../src/lib/graph/collapse.ts"],"names":[],"mappings":"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"}
|