@angflow/angular 0.0.19 → 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.
Files changed (234) hide show
  1. package/README.md +108 -15
  2. package/dist/base.css +8 -0
  3. package/dist/esm/index.d.ts +0 -1
  4. package/dist/esm/lib/agent/agent-bridge.service.d.ts +3 -1
  5. package/dist/esm/lib/agent/agent-bridge.service.js +130 -23
  6. package/dist/esm/lib/agent/agent-bridge.service.js.map +1 -1
  7. package/dist/esm/lib/agent/chat/agent-chat.component.d.ts +0 -1
  8. package/dist/esm/lib/agent/chat/agent-chat.service.d.ts +0 -1
  9. package/dist/esm/lib/agent/chat/agent-chat.service.js +11 -2
  10. package/dist/esm/lib/agent/chat/agent-chat.service.js.map +1 -1
  11. package/dist/esm/lib/agent/chat/default-system-prompt.d.ts +1 -2
  12. package/dist/esm/lib/agent/chat/default-system-prompt.js +2 -1
  13. package/dist/esm/lib/agent/chat/default-system-prompt.js.map +1 -1
  14. package/dist/esm/lib/agent/chat/index.d.ts +0 -1
  15. package/dist/esm/lib/agent/chat/provide-agent-chat.d.ts +0 -1
  16. package/dist/esm/lib/agent/chat/types.d.ts +0 -1
  17. package/dist/esm/lib/agent/history.d.ts +0 -1
  18. package/dist/esm/lib/agent/index.d.ts +0 -1
  19. package/dist/esm/lib/agent/provide-agent-bridge.d.ts +0 -1
  20. package/dist/esm/lib/agent/tool-schemas.d.ts +0 -1
  21. package/dist/esm/lib/agent/tool-schemas.js +3 -1
  22. package/dist/esm/lib/agent/tool-schemas.js.map +1 -1
  23. package/dist/esm/lib/agent/transports/websocket.d.ts +8 -1
  24. package/dist/esm/lib/agent/transports/websocket.js +14 -2
  25. package/dist/esm/lib/agent/transports/websocket.js.map +1 -1
  26. package/dist/esm/lib/agent/transports/window.d.ts +0 -1
  27. package/dist/esm/lib/agent/transports/window.js +2 -1
  28. package/dist/esm/lib/agent/transports/window.js.map +1 -1
  29. package/dist/esm/lib/agent/types.d.ts +0 -1
  30. package/dist/esm/lib/components/a11y-descriptions/a11y-descriptions.component.d.ts +0 -1
  31. package/dist/esm/lib/components/attribution/attribution.component.d.ts +0 -1
  32. package/dist/esm/lib/components/background/background.component.d.ts +0 -1
  33. package/dist/esm/lib/components/connection-line/connection-line.component.d.ts +0 -1
  34. package/dist/esm/lib/components/controls/controls.component.d.ts +0 -1
  35. package/dist/esm/lib/components/controls/controls.component.js +2 -1
  36. package/dist/esm/lib/components/controls/controls.component.js.map +1 -1
  37. package/dist/esm/lib/components/edge-label-renderer/edge-label-renderer.component.d.ts +0 -1
  38. package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.d.ts +7 -2
  39. package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.js +11 -4
  40. package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.js.map +1 -1
  41. package/dist/esm/lib/components/edges/base-edge.component.d.ts +0 -1
  42. package/dist/esm/lib/components/edges/bezier-edge.component.d.ts +0 -1
  43. package/dist/esm/lib/components/edges/bezier-edge.component.js +2 -1
  44. package/dist/esm/lib/components/edges/bezier-edge.component.js.map +1 -1
  45. package/dist/esm/lib/components/edges/edge-text.component.d.ts +0 -1
  46. package/dist/esm/lib/components/edges/simple-bezier-edge.component.d.ts +0 -1
  47. package/dist/esm/lib/components/edges/simple-bezier-edge.component.js +2 -1
  48. package/dist/esm/lib/components/edges/simple-bezier-edge.component.js.map +1 -1
  49. package/dist/esm/lib/components/edges/smooth-step-edge.component.d.ts +0 -1
  50. package/dist/esm/lib/components/edges/smooth-step-edge.component.js +2 -1
  51. package/dist/esm/lib/components/edges/smooth-step-edge.component.js.map +1 -1
  52. package/dist/esm/lib/components/edges/step-edge.component.d.ts +0 -1
  53. package/dist/esm/lib/components/edges/step-edge.component.js +2 -1
  54. package/dist/esm/lib/components/edges/step-edge.component.js.map +1 -1
  55. package/dist/esm/lib/components/edges/straight-edge.component.d.ts +0 -1
  56. package/dist/esm/lib/components/edges/straight-edge.component.js +2 -1
  57. package/dist/esm/lib/components/edges/straight-edge.component.js.map +1 -1
  58. package/dist/esm/lib/components/handle/handle.component.d.ts +1 -1
  59. package/dist/esm/lib/components/handle/handle.component.js +13 -1
  60. package/dist/esm/lib/components/handle/handle.component.js.map +1 -1
  61. package/dist/esm/lib/components/handle-group/handle-group.component.d.ts +0 -1
  62. package/dist/esm/lib/components/handle-group/handle-row.component.d.ts +0 -1
  63. package/dist/esm/lib/components/minimap/minimap.component.d.ts +19 -17
  64. package/dist/esm/lib/components/minimap/minimap.component.js +143 -183
  65. package/dist/esm/lib/components/minimap/minimap.component.js.map +1 -1
  66. package/dist/esm/lib/components/ng-flow-provider/ng-flow-provider.component.d.ts +13 -5
  67. package/dist/esm/lib/components/ng-flow-provider/ng-flow-provider.component.js +13 -4
  68. package/dist/esm/lib/components/ng-flow-provider/ng-flow-provider.component.js.map +1 -1
  69. package/dist/esm/lib/components/node-resizer/node-resizer.component.d.ts +2 -1
  70. package/dist/esm/lib/components/node-resizer/node-resizer.component.js +43 -26
  71. package/dist/esm/lib/components/node-resizer/node-resizer.component.js.map +1 -1
  72. package/dist/esm/lib/components/node-toolbar/node-toolbar.component.d.ts +0 -1
  73. package/dist/esm/lib/components/node-toolbar/node-toolbar.component.js +1 -1
  74. package/dist/esm/lib/components/node-toolbar/node-toolbar.component.js.map +1 -1
  75. package/dist/esm/lib/components/nodes/default-node.component.d.ts +6 -15
  76. package/dist/esm/lib/components/nodes/default-node.component.js +13 -22
  77. package/dist/esm/lib/components/nodes/default-node.component.js.map +1 -1
  78. package/dist/esm/lib/components/nodes/group-node.component.d.ts +5 -16
  79. package/dist/esm/lib/components/nodes/group-node.component.js +8 -16
  80. package/dist/esm/lib/components/nodes/group-node.component.js.map +1 -1
  81. package/dist/esm/lib/components/nodes/input-node.component.d.ts +6 -15
  82. package/dist/esm/lib/components/nodes/input-node.component.js +11 -20
  83. package/dist/esm/lib/components/nodes/input-node.component.js.map +1 -1
  84. package/dist/esm/lib/components/nodes/output-node.component.d.ts +6 -15
  85. package/dist/esm/lib/components/nodes/output-node.component.js +11 -20
  86. package/dist/esm/lib/components/nodes/output-node.component.js.map +1 -1
  87. package/dist/esm/lib/components/nodes/template-node.component.d.ts +2 -14
  88. package/dist/esm/lib/components/nodes/template-node.component.js +16 -26
  89. package/dist/esm/lib/components/nodes/template-node.component.js.map +1 -1
  90. package/dist/esm/lib/components/panel/panel.component.d.ts +0 -1
  91. package/dist/esm/lib/components/selection-box/selection-box.component.d.ts +11 -1
  92. package/dist/esm/lib/components/selection-box/selection-box.component.js +108 -3
  93. package/dist/esm/lib/components/selection-box/selection-box.component.js.map +1 -1
  94. package/dist/esm/lib/components/viewport-portal/viewport-portal.component.d.ts +0 -1
  95. package/dist/esm/lib/container/edge-renderer/edge-renderer.component.d.ts +27 -3
  96. package/dist/esm/lib/container/edge-renderer/edge-renderer.component.js +151 -61
  97. package/dist/esm/lib/container/edge-renderer/edge-renderer.component.js.map +1 -1
  98. package/dist/esm/lib/container/ng-flow/ng-flow.component.d.ts +4 -8
  99. package/dist/esm/lib/container/ng-flow/ng-flow.component.js +151 -54
  100. package/dist/esm/lib/container/ng-flow/ng-flow.component.js.map +1 -1
  101. package/dist/esm/lib/container/node-renderer/node-renderer.component.d.ts +7 -1
  102. package/dist/esm/lib/container/node-renderer/node-renderer.component.js +70 -14
  103. package/dist/esm/lib/container/node-renderer/node-renderer.component.js.map +1 -1
  104. package/dist/esm/lib/container/pane/pane.component.d.ts +0 -1
  105. package/dist/esm/lib/container/pane/pane.component.js +23 -3
  106. package/dist/esm/lib/container/pane/pane.component.js.map +1 -1
  107. package/dist/esm/lib/container/viewport/viewport.component.d.ts +0 -1
  108. package/dist/esm/lib/directives/drag.directive.d.ts +1 -2
  109. package/dist/esm/lib/directives/drag.directive.js +1 -1
  110. package/dist/esm/lib/directives/drag.directive.js.map +1 -1
  111. package/dist/esm/lib/directives/drop-zone.directive.d.ts +0 -1
  112. package/dist/esm/lib/directives/key-handler.directive.d.ts +0 -1
  113. package/dist/esm/lib/directives/key-handler.directive.js +6 -2
  114. package/dist/esm/lib/directives/key-handler.directive.js.map +1 -1
  115. package/dist/esm/lib/directives/node-type.directive.d.ts +0 -1
  116. package/dist/esm/lib/graph/collapse.d.ts +35 -0
  117. package/dist/esm/lib/graph/collapse.js +102 -0
  118. package/dist/esm/lib/graph/collapse.js.map +1 -0
  119. package/dist/esm/lib/graph/group-bounds.d.ts +42 -0
  120. package/dist/esm/lib/graph/group-bounds.js +34 -0
  121. package/dist/esm/lib/graph/group-bounds.js.map +1 -0
  122. package/dist/esm/lib/layout/dagre-layout.d.ts +0 -1
  123. package/dist/esm/lib/layout/index.d.ts +1 -2
  124. package/dist/esm/lib/layout/index.js.map +1 -1
  125. package/dist/esm/lib/layout/layout-nodes.d.ts +39 -5
  126. package/dist/esm/lib/layout/layout-nodes.js +94 -7
  127. package/dist/esm/lib/layout/layout-nodes.js.map +1 -1
  128. package/dist/esm/lib/public-api.d.ts +4 -2
  129. package/dist/esm/lib/public-api.js +2 -1
  130. package/dist/esm/lib/public-api.js.map +1 -1
  131. package/dist/esm/lib/services/flow-store.service.d.ts +25 -2
  132. package/dist/esm/lib/services/flow-store.service.js +101 -14
  133. package/dist/esm/lib/services/flow-store.service.js.map +1 -1
  134. package/dist/esm/lib/services/ng-flow.service.d.ts +82 -7
  135. package/dist/esm/lib/services/ng-flow.service.js +210 -26
  136. package/dist/esm/lib/services/ng-flow.service.js.map +1 -1
  137. package/dist/esm/lib/services/tokens.d.ts +0 -1
  138. package/dist/esm/lib/types/edges.d.ts +0 -1
  139. package/dist/esm/lib/types/general.d.ts +0 -1
  140. package/dist/esm/lib/types/index.d.ts +0 -1
  141. package/dist/esm/lib/types/node-template.d.ts +2 -1
  142. package/dist/esm/lib/types/nodes.d.ts +4 -1
  143. package/dist/esm/lib/types/store.d.ts +0 -1
  144. package/dist/esm/lib/utils/changes.d.ts +28 -2
  145. package/dist/esm/lib/utils/changes.js +57 -1
  146. package/dist/esm/lib/utils/changes.js.map +1 -1
  147. package/dist/esm/lib/utils/index.d.ts +2 -2
  148. package/dist/esm/lib/utils/index.js +2 -1
  149. package/dist/esm/lib/utils/index.js.map +1 -1
  150. package/dist/esm/lib/utils/inject-flow-store.d.ts +16 -0
  151. package/dist/esm/lib/utils/inject-flow-store.js +23 -0
  152. package/dist/esm/lib/utils/inject-flow-store.js.map +1 -0
  153. package/dist/esm/lib/utils/inject-ng-flow-node.d.ts +0 -1
  154. package/dist/esm/lib/utils/position-tween.d.ts +0 -1
  155. package/dist/esm/lib/utils/template-interpolation.d.ts +0 -1
  156. package/dist/esm/lib/utils/type-guards.d.ts +0 -1
  157. package/dist/esm/lib/utils/type-guards.js +2 -0
  158. package/dist/esm/lib/utils/type-guards.js.map +1 -1
  159. package/dist/esm/test-setup.d.ts +0 -1
  160. package/dist/style.css +8 -0
  161. package/package.json +83 -78
  162. package/dist/esm/index.d.ts.map +0 -1
  163. package/dist/esm/lib/agent/agent-bridge.service.d.ts.map +0 -1
  164. package/dist/esm/lib/agent/chat/agent-chat.component.d.ts.map +0 -1
  165. package/dist/esm/lib/agent/chat/agent-chat.service.d.ts.map +0 -1
  166. package/dist/esm/lib/agent/chat/default-system-prompt.d.ts.map +0 -1
  167. package/dist/esm/lib/agent/chat/index.d.ts.map +0 -1
  168. package/dist/esm/lib/agent/chat/provide-agent-chat.d.ts.map +0 -1
  169. package/dist/esm/lib/agent/chat/types.d.ts.map +0 -1
  170. package/dist/esm/lib/agent/history.d.ts.map +0 -1
  171. package/dist/esm/lib/agent/index.d.ts.map +0 -1
  172. package/dist/esm/lib/agent/provide-agent-bridge.d.ts.map +0 -1
  173. package/dist/esm/lib/agent/tool-schemas.d.ts.map +0 -1
  174. package/dist/esm/lib/agent/transports/websocket.d.ts.map +0 -1
  175. package/dist/esm/lib/agent/transports/window.d.ts.map +0 -1
  176. package/dist/esm/lib/agent/types.d.ts.map +0 -1
  177. package/dist/esm/lib/components/a11y-descriptions/a11y-descriptions.component.d.ts.map +0 -1
  178. package/dist/esm/lib/components/attribution/attribution.component.d.ts.map +0 -1
  179. package/dist/esm/lib/components/background/background.component.d.ts.map +0 -1
  180. package/dist/esm/lib/components/connection-line/connection-line.component.d.ts.map +0 -1
  181. package/dist/esm/lib/components/controls/controls.component.d.ts.map +0 -1
  182. package/dist/esm/lib/components/edge-label-renderer/edge-label-renderer.component.d.ts.map +0 -1
  183. package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.d.ts.map +0 -1
  184. package/dist/esm/lib/components/edges/base-edge.component.d.ts.map +0 -1
  185. package/dist/esm/lib/components/edges/bezier-edge.component.d.ts.map +0 -1
  186. package/dist/esm/lib/components/edges/edge-text.component.d.ts.map +0 -1
  187. package/dist/esm/lib/components/edges/simple-bezier-edge.component.d.ts.map +0 -1
  188. package/dist/esm/lib/components/edges/smooth-step-edge.component.d.ts.map +0 -1
  189. package/dist/esm/lib/components/edges/step-edge.component.d.ts.map +0 -1
  190. package/dist/esm/lib/components/edges/straight-edge.component.d.ts.map +0 -1
  191. package/dist/esm/lib/components/handle/handle.component.d.ts.map +0 -1
  192. package/dist/esm/lib/components/handle-group/handle-group.component.d.ts.map +0 -1
  193. package/dist/esm/lib/components/handle-group/handle-row.component.d.ts.map +0 -1
  194. package/dist/esm/lib/components/minimap/minimap.component.d.ts.map +0 -1
  195. package/dist/esm/lib/components/ng-flow-provider/ng-flow-provider.component.d.ts.map +0 -1
  196. package/dist/esm/lib/components/node-resizer/node-resizer.component.d.ts.map +0 -1
  197. package/dist/esm/lib/components/node-toolbar/node-toolbar.component.d.ts.map +0 -1
  198. package/dist/esm/lib/components/nodes/default-node.component.d.ts.map +0 -1
  199. package/dist/esm/lib/components/nodes/group-node.component.d.ts.map +0 -1
  200. package/dist/esm/lib/components/nodes/input-node.component.d.ts.map +0 -1
  201. package/dist/esm/lib/components/nodes/output-node.component.d.ts.map +0 -1
  202. package/dist/esm/lib/components/nodes/template-node.component.d.ts.map +0 -1
  203. package/dist/esm/lib/components/panel/panel.component.d.ts.map +0 -1
  204. package/dist/esm/lib/components/selection-box/selection-box.component.d.ts.map +0 -1
  205. package/dist/esm/lib/components/viewport-portal/viewport-portal.component.d.ts.map +0 -1
  206. package/dist/esm/lib/container/edge-renderer/edge-renderer.component.d.ts.map +0 -1
  207. package/dist/esm/lib/container/ng-flow/ng-flow.component.d.ts.map +0 -1
  208. package/dist/esm/lib/container/node-renderer/node-renderer.component.d.ts.map +0 -1
  209. package/dist/esm/lib/container/pane/pane.component.d.ts.map +0 -1
  210. package/dist/esm/lib/container/viewport/viewport.component.d.ts.map +0 -1
  211. package/dist/esm/lib/directives/drag.directive.d.ts.map +0 -1
  212. package/dist/esm/lib/directives/drop-zone.directive.d.ts.map +0 -1
  213. package/dist/esm/lib/directives/key-handler.directive.d.ts.map +0 -1
  214. package/dist/esm/lib/directives/node-type.directive.d.ts.map +0 -1
  215. package/dist/esm/lib/layout/dagre-layout.d.ts.map +0 -1
  216. package/dist/esm/lib/layout/index.d.ts.map +0 -1
  217. package/dist/esm/lib/layout/layout-nodes.d.ts.map +0 -1
  218. package/dist/esm/lib/public-api.d.ts.map +0 -1
  219. package/dist/esm/lib/services/flow-store.service.d.ts.map +0 -1
  220. package/dist/esm/lib/services/ng-flow.service.d.ts.map +0 -1
  221. package/dist/esm/lib/services/tokens.d.ts.map +0 -1
  222. package/dist/esm/lib/types/edges.d.ts.map +0 -1
  223. package/dist/esm/lib/types/general.d.ts.map +0 -1
  224. package/dist/esm/lib/types/index.d.ts.map +0 -1
  225. package/dist/esm/lib/types/node-template.d.ts.map +0 -1
  226. package/dist/esm/lib/types/nodes.d.ts.map +0 -1
  227. package/dist/esm/lib/types/store.d.ts.map +0 -1
  228. package/dist/esm/lib/utils/changes.d.ts.map +0 -1
  229. package/dist/esm/lib/utils/index.d.ts.map +0 -1
  230. package/dist/esm/lib/utils/inject-ng-flow-node.d.ts.map +0 -1
  231. package/dist/esm/lib/utils/position-tween.d.ts.map +0 -1
  232. package/dist/esm/lib/utils/template-interpolation.d.ts.map +0 -1
  233. package/dist/esm/lib/utils/type-guards.d.ts.map +0 -1
  234. package/dist/esm/test-setup.d.ts.map +0 -1
@@ -1,7 +1,9 @@
1
- import { Injectable, inject, computed, signal, DestroyRef } from '@angular/core';
1
+ import { Injectable, inject, computed, signal, DestroyRef, DOCUMENT } from '@angular/core';
2
2
  import { pointToRendererPoint, rendererPointToPoint, getNodesBounds as getNodesBoundsSystem, getConnectedEdges as getConnectedEdgesSystem, getOutgoers as getOutgoersSystem, getIncomers as getIncomersSystem, getViewportForBounds, } from '@angflow/system';
3
- import { FlowStore } from './flow-store.service';
3
+ import { elementToRemoveChange } from '../utils/changes';
4
+ import { injectFlowStore } from '../utils/inject-flow-store';
4
5
  import { prefersReducedMotion } from '../utils/position-tween';
6
+ import { getGroupBounds } from '../graph/group-bounds';
5
7
  import * as i0 from "@angular/core";
6
8
  /** Keep in sync with `builtInNodeTypes` in container/node-renderer/node-renderer.component.ts. */
7
9
  const BUILT_IN_NODE_TYPE_NAMES = ['default', 'input', 'output', 'group'];
@@ -23,8 +25,9 @@ const BUILT_IN_EDGE_TYPE_NAMES = ['default', 'bezier', 'straight', 'step', 'smoo
23
25
  */
24
26
  export class NgFlowService {
25
27
  constructor() {
26
- this.store = inject(FlowStore);
28
+ this.store = injectFlowStore();
27
29
  this.destroyRef = inject(DestroyRef);
30
+ this.doc = inject(DOCUMENT, { optional: true });
28
31
  // ── Reactive signal properties ────────────────────────────────────────
29
32
  // Read-only signals for reactive state access in templates and computed signals.
30
33
  // These are the Angular equivalent of React's useNodes(), useEdges(), etc.
@@ -46,6 +49,7 @@ export class NgFlowService {
46
49
  this.visibleNodes = computed(() => this.store.visibleNodes(), ...(ngDevMode ? [{ debugName: "visibleNodes" }] : /* istanbul ignore next */ []));
47
50
  /** Reactive access to IDs of currently visible edges (respects onlyRenderVisibleElements). */
48
51
  this.visibleEdgeIds = computed(() => this.store.visibleEdgeIds(), ...(ngDevMode ? [{ debugName: "visibleEdgeIds" }] : /* istanbul ignore next */ []));
52
+ this.keyPressedSignals = new Map();
49
53
  // ── Node templates (agent bridge) ─────────────────────────────────────
50
54
  /** Reactive view of the data-driven node templates registered on this flow. */
51
55
  this.nodeTemplates = computed(() => this.store.nodeTemplates(), ...(ngDevMode ? [{ debugName: "nodeTemplates" }] : /* istanbul ignore next */ []));
@@ -182,6 +186,63 @@ export class NgFlowService {
182
186
  const next = { ...current, data: { ...current.data, ...update } };
183
187
  this.store.triggerNodeChanges([{ id, type: 'replace', item: next }]);
184
188
  }
189
+ /**
190
+ * Size and position a group node to wrap its direct children (nodes with
191
+ * `parentId === groupId`), keeping the children visually fixed. Sets the
192
+ * group's `width`/`height` and moves its top-left to the wrapping box (with
193
+ * `opts.padding`/`headerHeight`/`minWidth`/`minHeight`). No-op if the group has
194
+ * no children. Immediate (not animated).
195
+ *
196
+ * Resolves the box-origin ↔ child-coordinate feedback loop by capturing the
197
+ * children's absolute positions, then applying one combined absolute map (the
198
+ * group's new position + those child absolutes) — `setNodePositions` resolves
199
+ * each child against the group's NEW position from the same map, so the
200
+ * children's parent-relative positions shift to keep them visually pinned.
201
+ */
202
+ async sizeGroupToChildren(groupId, opts) {
203
+ const children = this.getNodes()
204
+ .filter((n) => n.parentId === groupId)
205
+ .map((n) => this.getInternalNode(n.id))
206
+ .filter((n) => n != null);
207
+ if (children.length === 0)
208
+ return;
209
+ const members = children.map((c) => ({
210
+ position: c.internals.positionAbsolute,
211
+ measured: c.measured,
212
+ width: c.width,
213
+ height: c.height,
214
+ }));
215
+ const childAbsolute = {};
216
+ for (const c of children) {
217
+ childAbsolute[c.id] = { x: c.internals.positionAbsolute.x, y: c.internals.positionAbsolute.y };
218
+ }
219
+ const bounds = getGroupBounds(members, opts);
220
+ this.updateNode(groupId, { width: bounds.width, height: bounds.height });
221
+ // animate:false — this is a synchronous pin; tweening would drift the children mid-flight.
222
+ // One combined absolute map: the group's new position + the children's
223
+ // (unchanged) absolutes. toRelativePositions resolves each child against the
224
+ // group's NEW position from this same map, keeping them visually pinned.
225
+ await this.setNodePositions({ [groupId]: bounds.position, ...childAbsolute }, { coordinateSpace: 'absolute', animate: false });
226
+ }
227
+ /**
228
+ * Set a (group/parent) node's `collapsed` state. Emits a `replace` node change
229
+ * so controlled apps can journal it. angflow derives descendant hiding and
230
+ * crossing-edge rerouting from this flag.
231
+ */
232
+ setNodeCollapsed(id, collapsed) {
233
+ const current = this.store.nodes().find((n) => n.id === id);
234
+ if (!current)
235
+ return;
236
+ const next = { ...current, collapsed };
237
+ this.store.triggerNodeChanges([{ id, type: 'replace', item: next }]);
238
+ }
239
+ /** Flip a node's `collapsed` state. No-op for unknown ids. */
240
+ toggleNodeCollapsed(id) {
241
+ const current = this.store.nodes().find((n) => n.id === id);
242
+ if (!current)
243
+ return;
244
+ this.setNodeCollapsed(id, !current.collapsed);
245
+ }
185
246
  /**
186
247
  * Move many nodes at once from a position map (e.g. the result of
187
248
  * `layoutNodes`). Unknown ids are skipped. Animation defaults to the flow's
@@ -190,10 +251,15 @@ export class NgFlowService {
190
251
  * animating, immediately otherwise.
191
252
  *
192
253
  * Positions are in `node.position` space (parent-relative for child nodes).
254
+ *
255
+ * Pass `opts.coordinateSpace: 'absolute'` to provide flow-absolute coordinates
256
+ * instead; parented nodes are translated to their parent-relative space
257
+ * internally (top-level nodes are unaffected). Default is `'relative'`.
193
258
  */
194
259
  setNodePositions(positions, opts) {
260
+ const resolved = opts?.coordinateSpace === 'absolute' ? this.toRelativePositions(positions) : positions;
195
261
  const valid = {};
196
- for (const [id, pos] of Object.entries(positions)) {
262
+ for (const [id, pos] of Object.entries(resolved)) {
197
263
  if (this.store.nodeLookup.has(id))
198
264
  valid[id] = pos;
199
265
  }
@@ -215,6 +281,44 @@ export class NgFlowService {
215
281
  this.store.triggerNodeChanges(changes);
216
282
  return Promise.resolve();
217
283
  }
284
+ /**
285
+ * Convert a flow-absolute position map into the store's `node.position` space
286
+ * (parent-relative for parented nodes). Inverts the store's child transform
287
+ * (`updateChildNode` → `calculateChildXYZ` → `getNodePositionWithOrigin`):
288
+ * `relative = absolute − parentAbs + dims·origin`, using the child's origin
289
+ * (`node.origin ?? store.nodeOrigin`) and resolved dimensions.
290
+ *
291
+ * `parentAbs` is the parent's NEW absolute position when the SAME map also
292
+ * moves the parent (`positions[parentId]`) — exactly what compound
293
+ * `layoutNodes` returns, which moves a group and its members together. Because
294
+ * the incoming map is already in absolute space, the parent's own entry IS its
295
+ * new absolute, so no recursion is needed. When the map does not move the
296
+ * parent, we fall back to the parent's current `internals.positionAbsolute`.
297
+ * This avoids resolving the child against the parent's *pre-move* absolute,
298
+ * which would offset children by the parent's movement delta (compounding for
299
+ * nested groups).
300
+ *
301
+ * Top-level nodes, unknown ids, and nodes whose parent is missing pass through
302
+ * unchanged. The store re-applies extent clamping on write, so we don't clamp.
303
+ */
304
+ toRelativePositions(positions) {
305
+ const out = {};
306
+ const storeOrigin = this.store.nodeOrigin();
307
+ for (const [id, abs] of Object.entries(positions)) {
308
+ const node = this.store.nodeLookup.get(id);
309
+ const parent = node?.parentId ? this.store.nodeLookup.get(node.parentId) : undefined;
310
+ if (!node || !parent) {
311
+ out[id] = abs;
312
+ continue;
313
+ }
314
+ const origin = node.origin ?? storeOrigin;
315
+ const w = node.measured?.width ?? node.width ?? node.initialWidth ?? 0;
316
+ const h = node.measured?.height ?? node.height ?? node.initialHeight ?? 0;
317
+ const pAbs = positions[node.parentId] ?? parent.internals.positionAbsolute;
318
+ out[id] = { x: abs.x - pAbs.x + w * origin[0], y: abs.y - pAbs.y + h * origin[1] };
319
+ }
320
+ return out;
321
+ }
218
322
  /**
219
323
  * One-call auto-layout: reads the current nodes/edges, runs `layoutFn`
220
324
  * (e.g. `layoutNodes` from `@angflow/angular/layout` — passed in, not
@@ -232,17 +336,84 @@ export class NgFlowService {
232
336
  *
233
337
  * Positions are in `node.position` space (parent-relative for child nodes).
234
338
  *
235
- * Note: flat layout functions like `layoutNodes` emit positions in one
236
- * global space; nodes with a `parentId` would be mis-placed because
237
- * positions are written parent-relative. Sub-flow layout is not supported —
238
- * lay out top-level nodes only, or supply a layout fn that emits
239
- * parent-relative coordinates.
339
+ * Sub-flow note: `layoutNodes` and other flat layout fns emit positions in one
340
+ * global (absolute) space. To place parented nodes from such a fn, pass
341
+ * `opts.coordinateSpace: 'absolute'` angflow then translates each parented
342
+ * node into its parent-relative space on apply. (Group-aware *layout* itself
343
+ * clustering children within a box — is separate.)
240
344
  */
241
345
  async applyLayout(layoutFn, opts) {
242
- const { animate, ...layoutOpts } = opts ?? {};
243
- const nodes = this.getNodes().map((n) => this.getInternalNode(n.id) ?? n);
244
- const positions = await layoutFn(nodes, this.getEdges(), layoutOpts);
245
- await this.setNodePositions(positions, animate === undefined ? undefined : { animate });
346
+ const { animate, coordinateSpace, ...layoutOpts } = opts ?? {};
347
+ const nodes = this.withLiveMeasurements(
348
+ // Fallback for not-yet-measured nodes: a user NodeType lacks `internals`/`measured`,
349
+ // so it cannot be proven an InternalNode<NodeType>; layout reads only position/id.
350
+ this.getNodes().map((n) => this.getInternalNode(n.id) ?? n));
351
+ const edges = this.withLiveEdgeLabels(this.getEdges());
352
+ // Omit<O & {animate,coordinateSpace}, 'animate'|'coordinateSpace'> is structurally O but
353
+ // TS can't prove it; the stripped keys are exactly the two we destructured out.
354
+ const positions = await layoutFn(nodes, edges, layoutOpts);
355
+ // Passing undefined animate/coordinateSpace is safe: setNodePositions does
356
+ // `opts?.animate ?? store.animate()` and `coordinateSpace === 'absolute'`, so
357
+ // undefined values fall back to the same defaults as omitting opts entirely.
358
+ await this.setNodePositions(positions, { animate, coordinateSpace });
359
+ }
360
+ /**
361
+ * Override each node's `measured` from its live rendered element
362
+ * (`.xy-flow__node[data-id]`) when present. `offsetWidth/Height` are intrinsic
363
+ * layout dims, unaffected by the pane's CSS scale — no zoom math. Reads only;
364
+ * returns shallow clones so store objects are never mutated. Nodes with no
365
+ * element (hidden / SSR / not-yet-rendered) or zero size pass through unchanged
366
+ * so `layoutNodes`' measured→width→initial→default fallback still applies.
367
+ */
368
+ withLiveMeasurements(nodes) {
369
+ const container = this.store.domNode();
370
+ if (!container)
371
+ return nodes;
372
+ return nodes.map((n) => {
373
+ const escaped = NgFlowService.cssEscapeId(n.id);
374
+ const el = container.querySelector(`.xy-flow__node[data-id="${escaped}"]`);
375
+ if (!el)
376
+ return n;
377
+ const width = el.offsetWidth;
378
+ const height = el.offsetHeight;
379
+ if (!width || !height)
380
+ return n;
381
+ return { ...n, measured: { width, height } };
382
+ });
383
+ }
384
+ /**
385
+ * Fill each edge's `labelWidth`/`labelHeight` from its live label element
386
+ * (`.xy-flow__edge-label[data-id]`) when present, so `layoutNodes` can reserve
387
+ * dagre space for the label. Reads only; returns shallow clones. Edges with no
388
+ * rendered label pass through unchanged.
389
+ */
390
+ withLiveEdgeLabels(edges) {
391
+ const container = this.store.domNode();
392
+ if (!container)
393
+ return edges;
394
+ return edges.map((e) => {
395
+ const escaped = NgFlowService.cssEscapeId(e.id);
396
+ const el = container.querySelector(`.xy-flow__edge-label[data-id="${escaped}"]`);
397
+ if (!el)
398
+ return e;
399
+ const labelWidth = el.offsetWidth;
400
+ const labelHeight = el.offsetHeight;
401
+ if (!labelWidth || !labelHeight)
402
+ return e;
403
+ return { ...e, labelWidth, labelHeight };
404
+ });
405
+ }
406
+ /**
407
+ * Escape a string for use in a CSS attribute selector value.
408
+ * Uses the native `CSS.escape` when available (browser), and falls back to a
409
+ * minimal implementation for SSR / jsdom environments.
410
+ */
411
+ static cssEscapeId(id) {
412
+ if (typeof CSS !== 'undefined' && typeof CSS.escape === 'function') {
413
+ return CSS.escape(id);
414
+ }
415
+ // Minimal fallback: escape characters that are special inside CSS strings/selectors
416
+ return id.replace(/["\\]/g, '\\$&');
246
417
  }
247
418
  // ── Edge Operations ───────────────────────────────────────────────────
248
419
  /** Look up an edge by id. */
@@ -357,11 +528,11 @@ export class NgFlowService {
357
528
  return { deletedNodes: [], deletedEdges: [] };
358
529
  }
359
530
  }
360
- if (nodeIdsToDelete.size > 0) {
361
- this.store.setNodes(this.store.nodes().filter((n) => !nodeIdsToDelete.has(n.id)));
531
+ if (edgesToDelete.length > 0) {
532
+ this.store.triggerEdgeChanges(edgesToDelete.map((e) => elementToRemoveChange(e)));
362
533
  }
363
- if (edgeIdsToDelete.size > 0) {
364
- this.store.setEdges(this.store.edges().filter((e) => !edgeIdsToDelete.has(e.id)));
534
+ if (nodesToDelete.length > 0) {
535
+ this.store.triggerNodeChanges(nodesToDelete.map((n) => elementToRemoveChange(n)));
365
536
  }
366
537
  return { deletedNodes: nodesToDelete, deletedEdges: edgesToDelete };
367
538
  }
@@ -439,7 +610,7 @@ export class NgFlowService {
439
610
  /** Return all edges that are incident to any of the given node ids (either end). */
440
611
  getConnectedEdges(nodeIds) {
441
612
  const ids = Array.isArray(nodeIds) ? nodeIds : [nodeIds];
442
- // getConnectedEdges expects node objects, but we pass IDs and edges
613
+ // getConnectedEdges only reads `.id`; pass id-only stubs as NodeBase.
443
614
  const nodeObjects = ids.map(id => ({ id }));
444
615
  return getConnectedEdgesSystem(nodeObjects, this.store.edges());
445
616
  }
@@ -551,7 +722,7 @@ export class NgFlowService {
551
722
  return;
552
723
  const updates = new Map();
553
724
  for (const id of ids) {
554
- const nodeEl = domNode.querySelector(`[data-id="${id}"]`);
725
+ const nodeEl = domNode.querySelector(`[data-id="${NgFlowService.cssEscapeId(id)}"]`);
555
726
  if (nodeEl) {
556
727
  updates.set(id, { id, nodeElement: nodeEl, force: true });
557
728
  }
@@ -579,12 +750,23 @@ export class NgFlowService {
579
750
  }
580
751
  /**
581
752
  * Returns a signal that tracks whether a specific key (or any key in an array) is currently pressed.
582
- * Equivalent to React's `useKeyPress()`.
753
+ * Equivalent to React's `useKeyPress()`. Signals are cached per key set, so
754
+ * repeated calls don't stack document listeners. SSR-safe: returns an inert
755
+ * `false` signal when `document` is unavailable.
583
756
  * Automatically cleaned up when the service is destroyed.
584
757
  */
585
758
  selectKeyPressed(keyCode) {
586
- const pressed = signal(false, ...(ngDevMode ? [{ debugName: "pressed" }] : /* istanbul ignore next */ []));
587
759
  const keys = Array.isArray(keyCode) ? keyCode : [keyCode];
760
+ const cacheKey = keys.join('\0');
761
+ const cached = this.keyPressedSignals.get(cacheKey);
762
+ if (cached)
763
+ return cached;
764
+ if (!this.doc) {
765
+ const inert = signal(false).asReadonly();
766
+ this.keyPressedSignals.set(cacheKey, inert);
767
+ return inert;
768
+ }
769
+ const pressed = signal(false, ...(ngDevMode ? [{ debugName: "pressed" }] : /* istanbul ignore next */ []));
588
770
  const onKeyDown = (e) => {
589
771
  if (keys.includes(e.key))
590
772
  pressed.set(true);
@@ -593,13 +775,15 @@ export class NgFlowService {
593
775
  if (keys.includes(e.key))
594
776
  pressed.set(false);
595
777
  };
596
- document.addEventListener('keydown', onKeyDown);
597
- document.addEventListener('keyup', onKeyUp);
778
+ this.doc.addEventListener('keydown', onKeyDown);
779
+ this.doc.addEventListener('keyup', onKeyUp);
598
780
  this.destroyRef.onDestroy(() => {
599
- document.removeEventListener('keydown', onKeyDown);
600
- document.removeEventListener('keyup', onKeyUp);
781
+ this.doc.removeEventListener('keydown', onKeyDown);
782
+ this.doc.removeEventListener('keyup', onKeyUp);
601
783
  });
602
- return pressed.asReadonly();
784
+ const readonlySignal = pressed.asReadonly();
785
+ this.keyPressedSignals.set(cacheKey, readonlySignal);
786
+ return readonlySignal;
603
787
  }
604
788
  // ── State queries ─────────────────────────────────────────────────────
605
789
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ng-flow.service.js","sourceRoot":"","sources":["../../../../src/lib/services/ng-flow.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAe,MAAM,eAAe,CAAC;AAC9F,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,cAAc,IAAI,oBAAoB,EACtC,iBAAiB,IAAI,uBAAuB,EAC5C,WAAW,IAAI,iBAAiB,EAChC,WAAW,IAAI,iBAAiB,EAChC,oBAAoB,GAcrB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAGjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;;AAE/D,kGAAkG;AAClG,MAAM,wBAAwB,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAU,CAAC;AAClF,kGAAkG;AAClG,MAAM,wBAAwB,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,CAAU,CAAC;AAElH;;;;;;;;;;;;;GAaG;AAEH,MAAM,OAAO,aAAa;IAD1B;QAEU,UAAK,GAAG,MAAM,CAAC,SAAS,CAA6C,CAAC;QACtE,eAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;QAExC,yEAAyE;QACzE,iFAAiF;QACjF,2EAA2E;QAE3E,oCAAoC;QAC3B,UAAK,GAAuB,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,4EAAC,CAAC;QAExE,oCAAoC;QAC3B,UAAK,GAAuB,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,4EAAC,CAAC;QAExE,4DAA4D;QACnD,aAAQ,GAAqB,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,+EAAC,CAAC;QAE5E,mDAAmD;QAC1C,kBAAa,GAAuB,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,oFAAC,CAAC;QAExF,mDAAmD;QAC1C,kBAAa,GAAuB,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,oFAAC,CAAC;QAExF,2FAA2F;QAClF,eAAU,GAA4B,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,iFAAC,CAAC;QAEvF,sFAAsF;QAC7E,qBAAgB,GAAoB,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,uFAAC,CAAC;QAE3F,uFAAuF;QAC9E,iBAAY,GAAmE,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,mFAAC,CAAC;QAElI,8FAA8F;QACrF,mBAAc,GAAwB,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,qFAAC,CAAC;QA8uB3F,yEAAyE;QAEzE,+EAA+E;QACtE,kBAAa,GAAkD,QAAQ,CAAC,GAAG,EAAE,CACpF,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,oFAC3B,CAAC;KAsDH;IAvyBC,yEAAyE;IAEzE,+EAA+E;IAC/E,MAAM,CAAC,OAA+B;QACpC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAED,gFAAgF;IAChF,OAAO,CAAC,OAA+B;QACrC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAED,mFAAmF;IACnF,MAAM,CAAC,SAAiB,EAAE,OAA+B;QACvD,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;IAED;;;OAGG;IACH,OAAO,CAAC,OAAsC;QAC5C,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAED,wDAAwD;IACxD,WAAW,CAAC,QAAkB,EAAE,OAA+B;QAC7D,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;IAED,2GAA2G;IAC3G,WAAW;QACT,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC/B,CAAC;IAED,gDAAgD;IAChD,OAAO;QACL,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;IACnC,CAAC;IAED,sDAAsD;IACtD,SAAS,CAAC,CAAS,EAAE,CAAS,EAAE,OAA8C;QAC5E,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,qHAAqH;IACrH,KAAK,CAAC,SAAS,CAAC,MAAY,EAAE,OAAiD;QAC7E,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAChC,IAAI,CAAC,EAAE;YAAE,OAAO,KAAK,CAAC;QAEtB,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,4BAA4B,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,IAAI,GAAG,CAAC,CAAC;QAC1F,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;QACtE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,yEAAyE;IAEzE;;;;OAIG;IACH,oBAAoB,CAAC,cAA0B,EAAE,OAAuD;QACtG,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO;YAAE,OAAO,cAAc,CAAC;QAEpC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;QAC7D,MAAM,iBAAiB,GAAG;YACxB,CAAC,EAAE,cAAc,CAAC,CAAC,GAAG,IAAI;YAC1B,CAAC,EAAE,cAAc,CAAC,CAAC,GAAG,IAAI;SAC3B,CAAC;QAEF,OAAO,oBAAoB,CACzB,iBAAiB,EACjB,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,EACtB,OAAO,EAAE,UAAU,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,EAC9C,OAAO,EAAE,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAC3C,CAAC;IACJ,CAAC;IAED,0GAA0G;IAC1G,oBAAoB,CAAC,YAAwB;QAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO;YAAE,OAAO,YAAY,CAAC;QAElC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;QAC7D,MAAM,QAAQ,GAAG,oBAAoB,CAAC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;QAE5E,OAAO;YACL,CAAC,EAAE,QAAQ,CAAC,CAAC,GAAG,IAAI;YACpB,CAAC,EAAE,QAAQ,CAAC,CAAC,GAAG,IAAI;SACrB,CAAC;IACJ,CAAC;IAED,yEAAyE;IAEzE,4FAA4F;IAC5F,OAAO,CAAC,EAAU;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,QAAgC,CAAC;IACpF,CAAC;IAED,gFAAgF;IAChF,QAAQ,CAAC,GAAc;QACrB,IAAI,GAAG,EAAE,CAAC;YACR,OAAO,GAAG;iBACP,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;iBAC7B,MAAM,CAAC,CAAC,CAAC,EAAiB,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED;;;;OAIG;IACH,eAAe,CAAC,EAAU;QACxB,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAuC,CAAC;IAC7E,CAAC;IAED,kFAAkF;IAClF,QAAQ,CAAC,KAAiB;QACxB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IAED,qDAAqD;IACrD,QAAQ,CAAC,KAA4B;QACnC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACrD,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO;QAC1B,MAAM,OAAO,GAA2B,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACrF,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IAED;;;OAGG;IACH,UAAU,CAAC,EAAU,EAAE,UAAuE;QAC5F,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,MAAM,MAAM,GAAG,OAAO,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;QACnF,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,GAAG,MAAM,EAAc,CAAC;QACnD,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,EAAU,EAAE,UAA2F;QACpH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,MAAM,MAAM,GAAG,OAAO,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;QACxF,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE,GAAG,MAAM,EAAE,EAAc,CAAC;QAC9E,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;IAED;;;;;;;;OAQG;IACH,gBAAgB,CACd,SAAmD,EACnD,IAAoD;QAEpD,MAAM,KAAK,GAA6C,EAAE,CAAC;QAC3D,KAAK,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAClD,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAAE,KAAK,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;QACrD,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAE9D,MAAM,OAAO,GAAG,IAAI,EAAE,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACtD,MAAM,QAAQ,GAAG,CAAC,OAAO,KAAK,IAAI,IAAI,CAAC,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACpH,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,QAAQ,GACZ,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,IAAK,OAAiC,CAAC,QAAQ,IAAI,IAAI;gBACpG,CAAC,CAAE,OAAiC,CAAC,QAAS;gBAC9C,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACxD,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;YAC7D,EAAE;YACF,IAAI,EAAE,UAAmB;YACzB,QAAQ;SACT,CAAC,CAAC,CAAC;QACJ,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,OAAiC,CAAC,CAAC;QACjE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,KAAK,CAAC,WAAW,CACf,QAIiG,EACjG,IAAwD;QAExD,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,EAAE,GAAG,IAAI,IAAK,EAAwD,CAAC;QACrG,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,CAC/B,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,IAAK,CAAuC,CAC9E,CAAC;QACF,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,UAA0B,CAAC,CAAC;QACrF,MAAM,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IAC1F,CAAC;IAED,yEAAyE;IAEzE,6BAA6B;IAC7B,OAAO,CAAC,EAAU;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAyB,CAAC;IAC/D,CAAC;IAED,sCAAsC;IACtC,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED,sCAAsC;IACtC,QAAQ,CAAC,KAAiB;QACxB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IAED,qDAAqD;IACrD,QAAQ,CAAC,KAA4B;QACnC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACrD,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO;QAC1B,MAAM,OAAO,GAA2B,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACrF,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IAED,oEAAoE;IACpE,UAAU,CAAC,EAAU,EAAE,UAAuE;QAC5F,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,MAAM,MAAM,GAAG,OAAO,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;QACnF,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,GAAG,MAAM,EAAc,CAAC;QACnD,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,6DAA6D;IAC7D,cAAc,CAAC,EAAU,EAAE,UAA2F;QACpH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,MAAM,MAAM,GAAG,OAAO,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;QACxF,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE,GAAG,MAAM,EAAE,EAAc,CAAC;QAC9E,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,YAAY,CAAC,MAAsE;QACjF,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,KAAK,CAAC;QAC1C,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC/B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAE/B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE;YACpB,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,IAAI,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC;YACrC,CAAC;YAED,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACvF,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,OAAiC,CAAC,CAAC;YACnE,CAAC;YAED,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACvF,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,OAAiC,CAAC,CAAC;YACnE,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,yEAAyE;IAEzE;;;OAGG;IACH,KAAK,CAAC,EAAc;QAClB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACvB,CAAC;IAED,yEAAyE;IAEzE;;;;OAIG;IACH,qBAAqB;QACnB,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,KAAK,IAAI,CAAC;IAC5C,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,cAAc,CAAC,MAA6B;QAChD,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACvE,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEvE,+CAA+C;QAC/C,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;YACtC,IAAI,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzE,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAClF,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAElF,gCAAgC;QAChC,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;YACxF,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;YACrG,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC;QACH,CAAC;QAED,IAAI,eAAe,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACpF,CAAC;QACD,IAAI,eAAe,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACpF,CAAC;QAED,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC;IACtE,CAAC;IAED,yEAAyE;IAEzE;;;;;OAKG;IACH,oBAAoB,CAAC,IAAc,EAAE,SAAS,GAAG,IAAI;QACnD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxD,IAAI,CAAC,YAAY;YAAE,OAAO,EAAE,CAAC;QAE7B,MAAM,QAAQ,GAAG;YACf,CAAC,EAAE,YAAY,CAAC,SAAS,EAAE,gBAAgB,EAAE,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjE,CAAC,EAAE,YAAY,CAAC,SAAS,EAAE,gBAAgB,EAAE,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjE,KAAK,EAAE,YAAY,CAAC,QAAQ,EAAE,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC;YACtD,MAAM,EAAE,YAAY,CAAC,QAAQ,EAAE,MAAM,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC;SAC1D,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YACrC,IAAI,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE;gBAAE,OAAO,KAAK,CAAC;YACnC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAClD,IAAI,CAAC,SAAS;gBAAE,OAAO,KAAK,CAAC;YAE7B,MAAM,SAAS,GAAG;gBAChB,CAAC,EAAE,SAAS,CAAC,SAAS,EAAE,gBAAgB,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;gBAC3D,CAAC,EAAE,SAAS,CAAC,SAAS,EAAE,gBAAgB,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;gBAC3D,KAAK,EAAE,SAAS,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC;gBAChD,MAAM,EAAE,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC;aACpD,CAAC;YAEF,IAAI,SAAS,EAAE,CAAC;gBACd,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC;oBACzC,SAAS,CAAC,CAAC,GAAG,SAAS,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC;oBAC1C,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;oBAC1C,SAAS,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YACxD,CAAC;YACD,OAAO,QAAQ,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC;gBACzB,QAAQ,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC;gBACzB,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK,IAAI,SAAS,CAAC,CAAC,GAAG,SAAS,CAAC,KAAK;gBAC5D,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC;QACxE,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,kBAAkB,CAAC,IAAc,EAAE,IAAU,EAAE,SAAS,GAAG,IAAI;QAC7D,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxD,IAAI,CAAC,YAAY;YAAE,OAAO,KAAK,CAAC;QAEhC,MAAM,QAAQ,GAAG;YACf,CAAC,EAAE,YAAY,CAAC,SAAS,EAAE,gBAAgB,EAAE,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjE,CAAC,EAAE,YAAY,CAAC,SAAS,EAAE,gBAAgB,EAAE,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjE,KAAK,EAAE,YAAY,CAAC,QAAQ,EAAE,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC;YACtD,MAAM,EAAE,YAAY,CAAC,QAAQ,EAAE,MAAM,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC;SAC1D,CAAC;QAEF,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;gBACpC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC;gBAChC,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;gBACrC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC9C,CAAC;QACD,OAAO,IAAI,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC;YACpB,IAAI,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC;YACpB,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK;YAClD,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC;IAC9D,CAAC;IAED,8EAA8E;IAC9E,cAAc,CAAC,KAAiB;QAC9B,OAAO,oBAAoB,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAC9E,CAAC;IAED,yEAAyE;IAEzE,oFAAoF;IACpF,iBAAiB,CAAC,OAA0B;QAC1C,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACzD,oEAAoE;QACpE,MAAM,WAAW,GAAG,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAe,CAAC;QAC1D,OAAO,uBAAuB,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAgB,CAA0B,CAAC;IACzG,CAAC;IAED,8EAA8E;IAC9E,oBAAoB,CAAC,MAAkE;QACrF,6FAA6F;QAC7F,MAAM,SAAS,GAAG,MAAM,CAAC,EAAE;YACzB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,EAAE;YAChD,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QACtC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC/D,IAAI,CAAC,WAAW;YAAE,OAAO,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,iEAAiE;IACjE,kBAAkB,CAAC,MAAc;QAC/B,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChE,IAAI,CAAC,eAAe;YAAE,OAAO,EAAE,CAAC;QAChC,OAAO,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,yEAAyE;IAEzE;;;;OAIG;IACH,QAAQ;QACN,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;YACzB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;YACzB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;SAChC,CAAC;IACJ,CAAC;IAED,sEAAsE;IAEtE;;;OAGG;IACH,eAAe,CAAC,OAA0B;QACxC,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACzD,OAAO,QAAQ,CAAC,GAAG,EAAE;YACnB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACrB,OAAO,GAAG;iBACP,GAAG,CAAC,EAAE,CAAC,EAAE;gBACR,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC3C,MAAM,QAAQ,GAAG,IAAI,EAAE,SAAS,EAAE,QAAgC,CAAC;gBACnE,IAAI,CAAC,QAAQ;oBAAE,OAAO,IAAI,CAAC;gBAC3B,OAAO,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAA+B,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;YAClG,CAAC,CAAC;iBACD,MAAM,CAAC,CAAC,CAAC,EAA8B,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,qBAAqB,CAAC,MAAc;QAClC,OAAO,QAAQ,CAAC,GAAG,EAAE;YACnB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAChE,IAAI,CAAC,eAAe;gBAAE,OAAO,EAAE,CAAC;YAChC,OAAO,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,uBAAuB,CAAC,MAAkE;QACxF,OAAO,QAAQ,CAAC,GAAG,EAAE;YACnB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,SAAS,GAAG,MAAM,CAAC,EAAE;gBACzB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,EAAE;gBAChD,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YACtC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC/D,IAAI,CAAC,WAAW;gBAAE,OAAO,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,kBAAkB,CAAC,MAAc;QAC/B,OAAO,QAAQ,CAAC,GAAG,EAAE;YACnB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAuC,CAAC;QACjF,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,sBAAsB;QACpB,OAAO,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC;IACrC,CAAC;IAED;;;OAGG;IACH,mBAAmB,CAAC,OAA0B;QAC5C,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO;YAAE,OAAO;QAErB,MAAM,OAAO,GAAG,IAAI,GAAG,EAA8B,CAAC;QACtD,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACrB,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,aAAa,EAAE,IAAI,CAA0B,CAAC;YACnF,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC7B,CAAC;IAED;;;OAGG;IACH,sBAAsB;QACpB,OAAO,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;YACrB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,EAAgB;YAC/C,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,EAAgB;SAChD,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;;;OAIG;IACH,gBAAgB,CAAC,OAA0B;QACzC,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,8EAAC,CAAC;QAC9B,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAE1D,MAAM,SAAS,GAAG,CAAC,CAAgB,EAAE,EAAE;YACrC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC,CAAC;QACF,MAAM,OAAO,GAAG,CAAC,CAAgB,EAAE,EAAE;YACnC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC/C,CAAC,CAAC;QAEF,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAChD,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAE5C,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE;YAC7B,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YACnD,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC,UAAU,EAAE,CAAC;IAC9B,CAAC;IAED,yEAAyE;IAEzE;;OAEG;IACH,IAAI,mBAAmB;QACrB,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,IAAI,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,OAA0B;QACxC,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACzD,OAAO,QAAQ,CAAC,GAAG,EAAE;YACnB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACrB,OAAO,GAAG;iBACP,GAAG,CAAC,EAAE,CAAC,EAAE;gBACR,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;gBACvD,IAAI,CAAC,IAAI;oBAAE,OAAO,IAAI,CAAC;gBACvB,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAA+B,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;YACtF,CAAC,CAAC;iBACD,MAAM,CAAC,CAAC,CAAC,EAA8B,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;IACL,CAAC;IAED,sEAAsE;IAEtE;;OAEG;IACH,cAAc,CAAC,MAAc;QAC3B,OAAO,QAAQ,CAAC,GAAG,EAAE;YACnB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;YAC9C,IAAI,CAAC,IAAI;gBAAE,OAAO,EAAE,CAAC;YACrB,OAAO,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,KAAmB,CAA0B,CAAC;QACtF,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,MAAc;QAC3B,OAAO,QAAQ,CAAC,GAAG,EAAE;YACnB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;YAC9C,IAAI,CAAC,IAAI;gBAAE,OAAO,EAAE,CAAC;YACrB,OAAO,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,KAAmB,CAA0B,CAAC;QACtF,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,oBAAoB,CAAC,MAAc;QACjC,OAAO,QAAQ,CAAC,GAAG,EAAE;YACnB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACrB,OAAO,uBAAuB,CAC5B,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,CAAe,EAC9B,IAAI,CAAC,KAAK,CAAC,KAAK,EAAgB,CACR,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,sEAAsE;IAEtE;;;OAGG;IACH,uBAAuB,CAAC,EAAU,EAAE,EAAmH;QACrJ,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAC7C,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC;IAED;;;OAGG;IACH,uBAAuB,CAAC,EAAU,EAAE,EAAmH;QACrJ,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAC7C,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,yEAAyE;IAEzE;;;;;;;;;;OAUG;IACH,aAAa,CAAC,MAAc,EAAE,QAAuB,EAAE,IAAgB;QACrE,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC1D,CAAC;IAED,yEAAyE;IAEjE,4BAA4B,CAAC,MAAY,EAAE,OAAe;QAChE,OAAO,oBAAoB,CACzB,MAAM,EACN,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,EAClB,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EACnB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EACpB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EACpB,OAAO,CACR,CAAC;IACJ,CAAC;IASD,qFAAqF;IACrF,oBAAoB,CAAC,IAAY,EAAE,IAAsB;QACvD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC;QACjD,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACrB,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,gEAAgE;IAChE,sBAAsB,CAAC,IAAY;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;QAC3C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO,KAAK,CAAC;QACrC,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClB,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,uDAAuD;IACvD,gBAAgB;QACd,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YAC7E,IAAI;YACJ,IAAI;SACL,CAAC,CAAC,CAAC;IACN,CAAC;IAED,0EAA0E;IAE1E;;;;;;;;OAQG;IACH,gBAAgB;QACd,MAAM,MAAM,GAAG,IAAI,GAAG,EAA2C,CAAC;QAClE,KAAK,MAAM,IAAI,IAAI,wBAAwB;YAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACzE,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE;YAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC5E,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,wBAAwB,EAAE;YAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACnF,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE;YAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QACnF,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IAClF,CAAC;IAED,4EAA4E;IAC5E,gBAAgB;QACd,MAAM,MAAM,GAAG,IAAI,GAAG,EAA2C,CAAC;QAClE,KAAK,MAAM,IAAI,IAAI,wBAAwB;YAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACzE,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE;YAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC5E,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IAClF,CAAC;+GAz0BU,aAAa;mHAAb,aAAa;;4FAAb,aAAa;kBADzB,UAAU"}
1
+ {"version":3,"file":"ng-flow.service.js","sourceRoot":"","sources":["../../../../src/lib/services/ng-flow.service.ts"],"names":[],"mappings":"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"}
@@ -24,4 +24,3 @@ export declare const EDGE_ID: InjectionToken<string>;
24
24
  * directly.
25
25
  */
26
26
  export declare const NG_FLOW_NODE_CONTEXT: InjectionToken<NgFlowNodeContext<unknown>>;
27
- //# sourceMappingURL=tokens.d.ts.map
@@ -93,4 +93,3 @@ export type ConnectionLineComponentProps<NodeType extends Node = Node> = {
93
93
  pointer: XYPosition;
94
94
  };
95
95
  export {};
96
- //# sourceMappingURL=edges.d.ts.map
@@ -135,4 +135,3 @@ export type NgFlowInstance<NodeType extends Node = Node, EdgeType extends Edge =
135
135
  toObject: () => NgFlowJsonObject<NodeType, EdgeType>;
136
136
  viewportInitialized: boolean;
137
137
  };
138
- //# sourceMappingURL=general.d.ts.map
@@ -3,4 +3,3 @@ export * from './edges';
3
3
  export * from './general';
4
4
  export * from './store';
5
5
  export * from './node-template';
6
- //# sourceMappingURL=index.d.ts.map
@@ -64,6 +64,8 @@ export type AgentLayoutFn = (nodes: Array<{
64
64
  x: number;
65
65
  y: number;
66
66
  };
67
+ /** Present when the node is grouped AND its parent is in the layout set. */
68
+ parentId?: string;
67
69
  }>, edges: Array<{
68
70
  source: string;
69
71
  target: string;
@@ -74,4 +76,3 @@ export type AgentLayoutFn = (nodes: Array<{
74
76
  x: number;
75
77
  y: number;
76
78
  }>>;
77
- //# sourceMappingURL=node-template.d.ts.map
@@ -11,6 +11,8 @@ export type Node<NodeData extends Record<string, unknown> = Record<string, unkno
11
11
  focusable?: boolean;
12
12
  ariaRole?: string;
13
13
  domAttributes?: Record<string, string>;
14
+ /** When true on a group/parent node, angflow hides its descendants and reroutes crossing edges to the box. */
15
+ collapsed?: boolean;
14
16
  };
15
17
  /**
16
18
  * The InternalNode type extends Node with additional internal properties.
@@ -84,5 +86,6 @@ export interface NgFlowNodeContext<TData = unknown> {
84
86
  readonly targetPosition: Signal<Position | undefined>;
85
87
  /** CSS selector for the drag-handle sub-element, if any. */
86
88
  readonly dragHandle: Signal<string | undefined>;
89
+ /** True when this node is collapsed (a group folded to its box). */
90
+ readonly collapsed: Signal<boolean>;
87
91
  }
88
- //# sourceMappingURL=nodes.d.ts.map
@@ -68,4 +68,3 @@ export interface FlowStoreState<NodeType extends Node = Node, EdgeType extends E
68
68
  ariaLiveMessage: string;
69
69
  defaultEdgeOptions: DefaultEdgeOptions | undefined;
70
70
  }
71
- //# sourceMappingURL=store.d.ts.map
@@ -22,11 +22,37 @@ export declare function applyNodeChanges<NodeType extends Node = Node>(changes:
22
22
  * wire to `(edgesChange)`.
23
23
  */
24
24
  export declare function applyEdgeChanges<EdgeType extends Edge = Edge>(changes: EdgeChange<EdgeType>[], edges: EdgeType[]): EdgeType[];
25
+ /**
26
+ * Apply only `dimensions`-type changes from a `(nodesChange)` batch, writing
27
+ * `{ width, height }` into each affected node's `measured`. All other change
28
+ * types are ignored. Returns a **new** array when at least one dimension change
29
+ * applied, otherwise the **original `nodes` reference** (so it is a no-op for
30
+ * change detection when there is nothing to update).
31
+ *
32
+ * For controlled-mode apps that keep authority over `position`/`data` themselves
33
+ * (e.g. a journal) but still want `measured` to flow back so that layout
34
+ * (`applyLayout`), floating edges, and `fitView` stay correct.
35
+ *
36
+ * The `setAttributes` and `resizing` fields of a dimensions change are
37
+ * intentionally NOT applied (unlike `applyNodeChanges`) — this helper only
38
+ * syncs `measured`; use `applyNodeChanges` if you need the width/height
39
+ * write-back. If multiple dimension changes target the same node, the last
40
+ * one wins.
41
+ *
42
+ * @example
43
+ * ```typescript
44
+ * onNodesChange(changes: NodeChange[]) {
45
+ * this.nodes.update((ns) => applyDimensionChanges(changes, ns));
46
+ * // ...your own position/data handling on top...
47
+ * }
48
+ * ```
49
+ */
50
+ export declare function applyDimensionChanges<NodeType extends Node = Node>(changes: NodeChange<NodeType>[], nodes: NodeType[]): NodeType[];
25
51
  export declare function createSelectionChange(id: string, selected: boolean): NodeSelectionChange | EdgeSelectionChange;
26
- export declare function getSelectionChanges(items: Map<string, any>, selectedIds?: Set<string>, mutateItem?: boolean): NodeSelectionChange[] | EdgeSelectionChange[];
52
+ export declare function getSelectionChanges(items: Map<string, any>, // change-applier mirrors xyflow's untyped element diffing
53
+ selectedIds?: Set<string>, mutateItem?: boolean): NodeSelectionChange[] | EdgeSelectionChange[];
27
54
  export declare function getElementsDiffChanges({ items, lookup }: {
28
55
  items: any[] | undefined;
29
56
  lookup: Map<string, any>;
30
57
  }): any[];
31
58
  export declare function elementToRemoveChange<T extends Node | Edge>(item: T): NodeRemoveChange | EdgeRemoveChange;
32
- //# sourceMappingURL=changes.d.ts.map