@angflow/angular 0.0.13 → 0.0.15

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 (191) hide show
  1. package/README.md +14 -4
  2. package/dist/base.css +416 -411
  3. package/dist/esm/lib/agent/agent-bridge.service.d.ts +70 -0
  4. package/dist/esm/lib/agent/agent-bridge.service.d.ts.map +1 -0
  5. package/dist/esm/lib/agent/agent-bridge.service.js +331 -0
  6. package/dist/esm/lib/agent/agent-bridge.service.js.map +1 -0
  7. package/dist/esm/lib/agent/index.d.ts +7 -0
  8. package/dist/esm/lib/agent/index.d.ts.map +1 -0
  9. package/dist/esm/lib/agent/index.js +6 -0
  10. package/dist/esm/lib/agent/index.js.map +1 -0
  11. package/dist/esm/lib/agent/provide-agent-bridge.d.ts +27 -0
  12. package/dist/esm/lib/agent/provide-agent-bridge.d.ts.map +1 -0
  13. package/dist/esm/lib/agent/provide-agent-bridge.js +27 -0
  14. package/dist/esm/lib/agent/provide-agent-bridge.js.map +1 -0
  15. package/dist/esm/lib/agent/tool-schemas.d.ts +10 -0
  16. package/dist/esm/lib/agent/tool-schemas.d.ts.map +1 -0
  17. package/dist/esm/lib/agent/tool-schemas.js +234 -0
  18. package/dist/esm/lib/agent/tool-schemas.js.map +1 -0
  19. package/dist/esm/lib/agent/transports/websocket.d.ts +39 -0
  20. package/dist/esm/lib/agent/transports/websocket.d.ts.map +1 -0
  21. package/dist/esm/lib/agent/transports/websocket.js +95 -0
  22. package/dist/esm/lib/agent/transports/websocket.js.map +1 -0
  23. package/dist/esm/lib/agent/transports/window.d.ts +29 -0
  24. package/dist/esm/lib/agent/transports/window.d.ts.map +1 -0
  25. package/dist/esm/lib/agent/transports/window.js +65 -0
  26. package/dist/esm/lib/agent/transports/window.js.map +1 -0
  27. package/dist/esm/lib/agent/types.d.ts +66 -0
  28. package/dist/esm/lib/agent/types.d.ts.map +1 -0
  29. package/dist/esm/lib/agent/types.js +9 -0
  30. package/dist/esm/lib/agent/types.js.map +1 -0
  31. package/dist/esm/lib/components/a11y-descriptions/a11y-descriptions.component.d.ts +4 -0
  32. package/dist/esm/lib/components/a11y-descriptions/a11y-descriptions.component.d.ts.map +1 -1
  33. package/dist/esm/lib/components/a11y-descriptions/a11y-descriptions.component.js +24 -20
  34. package/dist/esm/lib/components/a11y-descriptions/a11y-descriptions.component.js.map +1 -1
  35. package/dist/esm/lib/components/attribution/attribution.component.d.ts +4 -0
  36. package/dist/esm/lib/components/attribution/attribution.component.d.ts.map +1 -1
  37. package/dist/esm/lib/components/attribution/attribution.component.js +22 -18
  38. package/dist/esm/lib/components/attribution/attribution.component.js.map +1 -1
  39. package/dist/esm/lib/components/background/background.component.d.ts +20 -0
  40. package/dist/esm/lib/components/background/background.component.d.ts.map +1 -1
  41. package/dist/esm/lib/components/background/background.component.js +159 -140
  42. package/dist/esm/lib/components/background/background.component.js.map +1 -1
  43. package/dist/esm/lib/components/connection-line/connection-line.component.d.ts +7 -0
  44. package/dist/esm/lib/components/connection-line/connection-line.component.d.ts.map +1 -1
  45. package/dist/esm/lib/components/connection-line/connection-line.component.js +7 -0
  46. package/dist/esm/lib/components/connection-line/connection-line.component.js.map +1 -1
  47. package/dist/esm/lib/components/controls/controls.component.d.ts +21 -0
  48. package/dist/esm/lib/components/controls/controls.component.d.ts.map +1 -1
  49. package/dist/esm/lib/components/controls/controls.component.js +21 -1
  50. package/dist/esm/lib/components/controls/controls.component.js.map +1 -1
  51. package/dist/esm/lib/components/edge-label-renderer/edge-label-renderer.component.d.ts +4 -0
  52. package/dist/esm/lib/components/edge-label-renderer/edge-label-renderer.component.d.ts.map +1 -1
  53. package/dist/esm/lib/components/edge-label-renderer/edge-label-renderer.component.js +4 -0
  54. package/dist/esm/lib/components/edge-label-renderer/edge-label-renderer.component.js.map +1 -1
  55. package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.d.ts +14 -2
  56. package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.d.ts.map +1 -1
  57. package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.js +12 -0
  58. package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.js.map +1 -1
  59. package/dist/esm/lib/components/edges/base-edge.component.d.ts +23 -0
  60. package/dist/esm/lib/components/edges/base-edge.component.d.ts.map +1 -1
  61. package/dist/esm/lib/components/edges/base-edge.component.js +63 -40
  62. package/dist/esm/lib/components/edges/base-edge.component.js.map +1 -1
  63. package/dist/esm/lib/components/edges/bezier-edge.component.d.ts +4 -0
  64. package/dist/esm/lib/components/edges/bezier-edge.component.d.ts.map +1 -1
  65. package/dist/esm/lib/components/edges/bezier-edge.component.js +4 -0
  66. package/dist/esm/lib/components/edges/bezier-edge.component.js.map +1 -1
  67. package/dist/esm/lib/components/edges/edge-text.component.d.ts +4 -0
  68. package/dist/esm/lib/components/edges/edge-text.component.d.ts.map +1 -1
  69. package/dist/esm/lib/components/edges/edge-text.component.js +30 -26
  70. package/dist/esm/lib/components/edges/edge-text.component.js.map +1 -1
  71. package/dist/esm/lib/components/edges/simple-bezier-edge.component.d.ts +4 -0
  72. package/dist/esm/lib/components/edges/simple-bezier-edge.component.d.ts.map +1 -1
  73. package/dist/esm/lib/components/edges/simple-bezier-edge.component.js +4 -0
  74. package/dist/esm/lib/components/edges/simple-bezier-edge.component.js.map +1 -1
  75. package/dist/esm/lib/components/edges/smooth-step-edge.component.d.ts +1 -0
  76. package/dist/esm/lib/components/edges/smooth-step-edge.component.d.ts.map +1 -1
  77. package/dist/esm/lib/components/edges/smooth-step-edge.component.js +1 -0
  78. package/dist/esm/lib/components/edges/smooth-step-edge.component.js.map +1 -1
  79. package/dist/esm/lib/components/edges/step-edge.component.d.ts +1 -0
  80. package/dist/esm/lib/components/edges/step-edge.component.d.ts.map +1 -1
  81. package/dist/esm/lib/components/edges/step-edge.component.js +1 -0
  82. package/dist/esm/lib/components/edges/step-edge.component.js.map +1 -1
  83. package/dist/esm/lib/components/edges/straight-edge.component.d.ts +1 -0
  84. package/dist/esm/lib/components/edges/straight-edge.component.d.ts.map +1 -1
  85. package/dist/esm/lib/components/edges/straight-edge.component.js +1 -0
  86. package/dist/esm/lib/components/edges/straight-edge.component.js.map +1 -1
  87. package/dist/esm/lib/components/handle/handle.component.d.ts +20 -1
  88. package/dist/esm/lib/components/handle/handle.component.d.ts.map +1 -1
  89. package/dist/esm/lib/components/handle/handle.component.js +25 -2
  90. package/dist/esm/lib/components/handle/handle.component.js.map +1 -1
  91. package/dist/esm/lib/components/minimap/minimap.component.d.ts +34 -0
  92. package/dist/esm/lib/components/minimap/minimap.component.d.ts.map +1 -1
  93. package/dist/esm/lib/components/minimap/minimap.component.js +30 -4
  94. package/dist/esm/lib/components/minimap/minimap.component.js.map +1 -1
  95. package/dist/esm/lib/components/ng-flow-provider/ng-flow-provider.component.d.ts +14 -0
  96. package/dist/esm/lib/components/ng-flow-provider/ng-flow-provider.component.d.ts.map +1 -1
  97. package/dist/esm/lib/components/ng-flow-provider/ng-flow-provider.component.js +14 -0
  98. package/dist/esm/lib/components/ng-flow-provider/ng-flow-provider.component.js.map +1 -1
  99. package/dist/esm/lib/components/node-resizer/node-resizer.component.d.ts +29 -0
  100. package/dist/esm/lib/components/node-resizer/node-resizer.component.d.ts.map +1 -1
  101. package/dist/esm/lib/components/node-resizer/node-resizer.component.js +153 -124
  102. package/dist/esm/lib/components/node-resizer/node-resizer.component.js.map +1 -1
  103. package/dist/esm/lib/components/node-toolbar/node-toolbar.component.d.ts +21 -1
  104. package/dist/esm/lib/components/node-toolbar/node-toolbar.component.d.ts.map +1 -1
  105. package/dist/esm/lib/components/node-toolbar/node-toolbar.component.js +21 -1
  106. package/dist/esm/lib/components/node-toolbar/node-toolbar.component.js.map +1 -1
  107. package/dist/esm/lib/components/nodes/default-node.component.d.ts +4 -0
  108. package/dist/esm/lib/components/nodes/default-node.component.d.ts.map +1 -1
  109. package/dist/esm/lib/components/nodes/default-node.component.js +13 -9
  110. package/dist/esm/lib/components/nodes/default-node.component.js.map +1 -1
  111. package/dist/esm/lib/components/nodes/group-node.component.d.ts +5 -0
  112. package/dist/esm/lib/components/nodes/group-node.component.d.ts.map +1 -1
  113. package/dist/esm/lib/components/nodes/group-node.component.js +5 -0
  114. package/dist/esm/lib/components/nodes/group-node.component.js.map +1 -1
  115. package/dist/esm/lib/components/nodes/input-node.component.d.ts +4 -0
  116. package/dist/esm/lib/components/nodes/input-node.component.d.ts.map +1 -1
  117. package/dist/esm/lib/components/nodes/input-node.component.js +11 -7
  118. package/dist/esm/lib/components/nodes/input-node.component.js.map +1 -1
  119. package/dist/esm/lib/components/nodes/output-node.component.d.ts +4 -0
  120. package/dist/esm/lib/components/nodes/output-node.component.d.ts.map +1 -1
  121. package/dist/esm/lib/components/nodes/output-node.component.js +11 -7
  122. package/dist/esm/lib/components/nodes/output-node.component.js.map +1 -1
  123. package/dist/esm/lib/components/panel/panel.component.d.ts +12 -0
  124. package/dist/esm/lib/components/panel/panel.component.d.ts.map +1 -1
  125. package/dist/esm/lib/components/panel/panel.component.js +12 -0
  126. package/dist/esm/lib/components/panel/panel.component.js.map +1 -1
  127. package/dist/esm/lib/components/viewport-portal/viewport-portal.component.d.ts +5 -0
  128. package/dist/esm/lib/components/viewport-portal/viewport-portal.component.d.ts.map +1 -1
  129. package/dist/esm/lib/components/viewport-portal/viewport-portal.component.js +5 -0
  130. package/dist/esm/lib/components/viewport-portal/viewport-portal.component.js.map +1 -1
  131. package/dist/esm/lib/container/edge-renderer/edge-renderer.component.d.ts.map +1 -1
  132. package/dist/esm/lib/container/edge-renderer/edge-renderer.component.js +35 -3
  133. package/dist/esm/lib/container/edge-renderer/edge-renderer.component.js.map +1 -1
  134. package/dist/esm/lib/container/ng-flow/ng-flow.component.d.ts +158 -5
  135. package/dist/esm/lib/container/ng-flow/ng-flow.component.d.ts.map +1 -1
  136. package/dist/esm/lib/container/ng-flow/ng-flow.component.js +167 -28
  137. package/dist/esm/lib/container/ng-flow/ng-flow.component.js.map +1 -1
  138. package/dist/esm/lib/container/node-renderer/node-renderer.component.d.ts +2 -0
  139. package/dist/esm/lib/container/node-renderer/node-renderer.component.d.ts.map +1 -1
  140. package/dist/esm/lib/container/node-renderer/node-renderer.component.js +40 -2
  141. package/dist/esm/lib/container/node-renderer/node-renderer.component.js.map +1 -1
  142. package/dist/esm/lib/container/pane/pane.component.d.ts +0 -1
  143. package/dist/esm/lib/container/pane/pane.component.d.ts.map +1 -1
  144. package/dist/esm/lib/container/pane/pane.component.js +18 -25
  145. package/dist/esm/lib/container/pane/pane.component.js.map +1 -1
  146. package/dist/esm/lib/container/viewport/viewport.component.d.ts +4 -0
  147. package/dist/esm/lib/container/viewport/viewport.component.d.ts.map +1 -1
  148. package/dist/esm/lib/container/viewport/viewport.component.js +4 -0
  149. package/dist/esm/lib/container/viewport/viewport.component.js.map +1 -1
  150. package/dist/esm/lib/directives/drag.directive.d.ts +17 -0
  151. package/dist/esm/lib/directives/drag.directive.d.ts.map +1 -1
  152. package/dist/esm/lib/directives/drag.directive.js +17 -0
  153. package/dist/esm/lib/directives/drag.directive.js.map +1 -1
  154. package/dist/esm/lib/directives/key-handler.directive.d.ts +13 -0
  155. package/dist/esm/lib/directives/key-handler.directive.d.ts.map +1 -1
  156. package/dist/esm/lib/directives/key-handler.directive.js +13 -0
  157. package/dist/esm/lib/directives/key-handler.directive.js.map +1 -1
  158. package/dist/esm/lib/public-api.d.ts +2 -0
  159. package/dist/esm/lib/public-api.d.ts.map +1 -1
  160. package/dist/esm/lib/public-api.js +4 -0
  161. package/dist/esm/lib/public-api.js.map +1 -1
  162. package/dist/esm/lib/services/flow-store.service.d.ts +3 -0
  163. package/dist/esm/lib/services/flow-store.service.d.ts.map +1 -1
  164. package/dist/esm/lib/services/flow-store.service.js +3 -0
  165. package/dist/esm/lib/services/flow-store.service.js.map +1 -1
  166. package/dist/esm/lib/services/ng-flow.service.d.ts +82 -0
  167. package/dist/esm/lib/services/ng-flow.service.d.ts.map +1 -1
  168. package/dist/esm/lib/services/ng-flow.service.js +114 -30
  169. package/dist/esm/lib/services/ng-flow.service.js.map +1 -1
  170. package/dist/esm/lib/services/tokens.d.ts +23 -0
  171. package/dist/esm/lib/services/tokens.d.ts.map +1 -1
  172. package/dist/esm/lib/services/tokens.js +22 -0
  173. package/dist/esm/lib/services/tokens.js.map +1 -1
  174. package/dist/esm/lib/types/edges.d.ts +6 -5
  175. package/dist/esm/lib/types/edges.d.ts.map +1 -1
  176. package/dist/esm/lib/types/nodes.d.ts +46 -3
  177. package/dist/esm/lib/types/nodes.d.ts.map +1 -1
  178. package/dist/esm/lib/utils/changes.d.ts +20 -0
  179. package/dist/esm/lib/utils/changes.d.ts.map +1 -1
  180. package/dist/esm/lib/utils/changes.js +20 -0
  181. package/dist/esm/lib/utils/changes.js.map +1 -1
  182. package/dist/esm/lib/utils/index.d.ts +1 -0
  183. package/dist/esm/lib/utils/index.d.ts.map +1 -1
  184. package/dist/esm/lib/utils/index.js +1 -0
  185. package/dist/esm/lib/utils/index.js.map +1 -1
  186. package/dist/esm/lib/utils/inject-ng-flow-node.d.ts +20 -0
  187. package/dist/esm/lib/utils/inject-ng-flow-node.d.ts.map +1 -0
  188. package/dist/esm/lib/utils/inject-ng-flow-node.js +28 -0
  189. package/dist/esm/lib/utils/inject-ng-flow-node.js.map +1 -0
  190. package/dist/style.css +416 -411
  191. package/package.json +6 -6
@@ -1,19 +1,40 @@
1
1
  import type { PanelPosition, FitViewOptionsBase } from '@angflow/system';
2
2
  import * as i0 from "@angular/core";
3
+ /**
4
+ * Floating panel with zoom-in, zoom-out, fit-view, and lock-interactivity
5
+ * buttons. Project additional `<button>`s as children to extend the toolbar.
6
+ *
7
+ * @example
8
+ * ```html
9
+ * <ng-flow-controls position="bottom-left" />
10
+ * ```
11
+ */
3
12
  export declare class ControlsComponent {
4
13
  private store;
5
14
  private ngFlowService;
15
+ /** Where the panel is anchored. */
6
16
  readonly position: import("@angular/core").InputSignal<PanelPosition>;
17
+ /** Render the zoom-in and zoom-out buttons. */
7
18
  readonly showZoom: import("@angular/core").InputSignal<boolean>;
19
+ /** Render the fit-view button. */
8
20
  readonly showFitView: import("@angular/core").InputSignal<boolean>;
21
+ /** Render the lock-interactivity button. */
9
22
  readonly showInteractive: import("@angular/core").InputSignal<boolean>;
23
+ /** Options passed to `fitView` when the button is pressed. */
10
24
  readonly fitViewOptions: import("@angular/core").InputSignal<FitViewOptionsBase<any> | undefined>;
25
+ /** Custom handler invoked instead of `fitView` when the fit button is pressed. */
11
26
  readonly fitViewFn: import("@angular/core").InputSignal<(() => void) | undefined>;
27
+ /** Lay buttons out horizontally or vertically. */
12
28
  readonly orientation: import("@angular/core").InputSignal<"horizontal" | "vertical">;
29
+ /** ARIA label for the toolbar container. */
13
30
  readonly ariaLabel: import("@angular/core").InputSignal<string>;
31
+ /** Fires when the zoom-in button is clicked. */
14
32
  readonly zoomInClick: import("@angular/core").OutputEmitterRef<void>;
33
+ /** Fires when the zoom-out button is clicked. */
15
34
  readonly zoomOutClick: import("@angular/core").OutputEmitterRef<void>;
35
+ /** Fires when the fit-view button is clicked. */
16
36
  readonly fitViewClick: import("@angular/core").OutputEmitterRef<void>;
37
+ /** Fires with the new interactive state after the lock button is toggled. */
17
38
  readonly interactiveChange: import("@angular/core").OutputEmitterRef<boolean>;
18
39
  readonly isInteractive: import("@angular/core").Signal<boolean>;
19
40
  readonly isLocked: import("@angular/core").Signal<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"controls.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/controls/controls.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;;AAKzE,qBAkEa,iBAAiB;IAC5B,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,aAAa,CAAyB;IAE9C,QAAQ,CAAC,QAAQ,qDAAuC;IACxD,QAAQ,CAAC,QAAQ,+CAAe;IAChC,QAAQ,CAAC,WAAW,+CAAe;IACnC,QAAQ,CAAC,eAAe,+CAAe;IACvC,QAAQ,CAAC,cAAc,2EAAoC;IAC3D,QAAQ,CAAC,SAAS,6CAAgB,IAAI,eAA0B;IAChE,QAAQ,CAAC,WAAW,iEAAgD;IACpE,QAAQ,CAAC,SAAS,8CAA0C;IAG5D,QAAQ,CAAC,WAAW,iDAAkB;IACtC,QAAQ,CAAC,YAAY,iDAAkB;IACvC,QAAQ,CAAC,YAAY,iDAAkB;IACvC,QAAQ,CAAC,iBAAiB,oDAAqB;IAK/C,QAAQ,CAAC,aAAa,0CAKpB;IACF,QAAQ,CAAC,QAAQ,0CAAyC;IAG1D,QAAQ,CAAC,cAAc,0CAAqE;IAC5F,QAAQ,CAAC,cAAc,0CAAqE;IAE5F,QAAQ;IAKR,SAAS;IAKT,SAAS;IAUT,YAAY;yCAtDD,iBAAiB;2CAAjB,iBAAiB;CA6D7B"}
1
+ {"version":3,"file":"controls.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/controls/controls.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;;AAKzE;;;;;;;;GAQG;AACH,qBAkEa,iBAAiB;IAC5B,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,aAAa,CAAyB;IAE9C,mCAAmC;IACnC,QAAQ,CAAC,QAAQ,qDAAuC;IACxD,+CAA+C;IAC/C,QAAQ,CAAC,QAAQ,+CAAe;IAChC,kCAAkC;IAClC,QAAQ,CAAC,WAAW,+CAAe;IACnC,4CAA4C;IAC5C,QAAQ,CAAC,eAAe,+CAAe;IACvC,8DAA8D;IAC9D,QAAQ,CAAC,cAAc,2EAAoC;IAC3D,kFAAkF;IAClF,QAAQ,CAAC,SAAS,6CAAgB,IAAI,eAA0B;IAChE,kDAAkD;IAClD,QAAQ,CAAC,WAAW,iEAAgD;IACpE,4CAA4C;IAC5C,QAAQ,CAAC,SAAS,8CAA0C;IAE5D,gDAAgD;IAChD,QAAQ,CAAC,WAAW,iDAAkB;IACtC,iDAAiD;IACjD,QAAQ,CAAC,YAAY,iDAAkB;IACvC,iDAAiD;IACjD,QAAQ,CAAC,YAAY,iDAAkB;IACvC,6EAA6E;IAC7E,QAAQ,CAAC,iBAAiB,oDAAqB;IAK/C,QAAQ,CAAC,aAAa,0CAKpB;IACF,QAAQ,CAAC,QAAQ,0CAAyC;IAG1D,QAAQ,CAAC,cAAc,0CAAqE;IAC5F,QAAQ,CAAC,cAAc,0CAAqE;IAE5F,QAAQ;IAKR,SAAS;IAKT,SAAS;IAUT,YAAY;yCAjED,iBAAiB;2CAAjB,iBAAiB;CAwE7B"}
@@ -3,22 +3,42 @@ import { FlowStore } from '../../services/flow-store.service';
3
3
  import { NgFlowService } from '../../services/ng-flow.service';
4
4
  import { PanelComponent } from '../panel/panel.component';
5
5
  import * as i0 from "@angular/core";
6
+ /**
7
+ * Floating panel with zoom-in, zoom-out, fit-view, and lock-interactivity
8
+ * buttons. Project additional `<button>`s as children to extend the toolbar.
9
+ *
10
+ * @example
11
+ * ```html
12
+ * <ng-flow-controls position="bottom-left" />
13
+ * ```
14
+ */
6
15
  export class ControlsComponent {
7
16
  constructor() {
8
17
  this.store = inject(FlowStore);
9
18
  this.ngFlowService = inject(NgFlowService);
19
+ /** Where the panel is anchored. */
10
20
  this.position = input('bottom-left', ...(ngDevMode ? [{ debugName: "position" }] : /* istanbul ignore next */ []));
21
+ /** Render the zoom-in and zoom-out buttons. */
11
22
  this.showZoom = input(true, ...(ngDevMode ? [{ debugName: "showZoom" }] : /* istanbul ignore next */ []));
23
+ /** Render the fit-view button. */
12
24
  this.showFitView = input(true, ...(ngDevMode ? [{ debugName: "showFitView" }] : /* istanbul ignore next */ []));
25
+ /** Render the lock-interactivity button. */
13
26
  this.showInteractive = input(true, ...(ngDevMode ? [{ debugName: "showInteractive" }] : /* istanbul ignore next */ []));
27
+ /** Options passed to `fitView` when the button is pressed. */
14
28
  this.fitViewOptions = input(...(ngDevMode ? [undefined, { debugName: "fitViewOptions" }] : /* istanbul ignore next */ []));
29
+ /** Custom handler invoked instead of `fitView` when the fit button is pressed. */
15
30
  this.fitViewFn = input(undefined, ...(ngDevMode ? [{ debugName: "fitViewFn" }] : /* istanbul ignore next */ []));
31
+ /** Lay buttons out horizontally or vertically. */
16
32
  this.orientation = input('vertical', ...(ngDevMode ? [{ debugName: "orientation" }] : /* istanbul ignore next */ []));
33
+ /** ARIA label for the toolbar container. */
17
34
  this.ariaLabel = input('Angular Flow controls', ...(ngDevMode ? [{ debugName: "ariaLabel" }] : /* istanbul ignore next */ []));
18
- // Callback outputs
35
+ /** Fires when the zoom-in button is clicked. */
19
36
  this.zoomInClick = output();
37
+ /** Fires when the zoom-out button is clicked. */
20
38
  this.zoomOutClick = output();
39
+ /** Fires when the fit-view button is clicked. */
21
40
  this.fitViewClick = output();
41
+ /** Fires with the new interactive state after the lock button is toggled. */
22
42
  this.interactiveChange = output();
23
43
  // Derive interactive/locked state directly from the store so external
24
44
  // mutations of nodesDraggable/nodesConnectable/elementsSelectable stay
@@ -1 +1 @@
1
- {"version":3,"file":"controls.component.js","sourceRoot":"","sources":["../../../../../src/lib/components/controls/controls.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEpG,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;;AAoE1D,MAAM,OAAO,iBAAiB;IAlE9B;QAmEU,UAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QAC1B,kBAAa,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;QAErC,aAAQ,GAAG,KAAK,CAAgB,aAAa,+EAAC,CAAC;QAC/C,aAAQ,GAAG,KAAK,CAAC,IAAI,+EAAC,CAAC;QACvB,gBAAW,GAAG,KAAK,CAAC,IAAI,kFAAC,CAAC;QAC1B,oBAAe,GAAG,KAAK,CAAC,IAAI,sFAAC,CAAC;QAC9B,mBAAc,GAAG,KAAK,+FAA2B,CAAC;QAClD,cAAS,GAAG,KAAK,CAA2B,SAAS,gFAAC,CAAC;QACvD,gBAAW,GAAG,KAAK,CAA4B,UAAU,kFAAC,CAAC;QAC3D,cAAS,GAAG,KAAK,CAAS,uBAAuB,gFAAC,CAAC;QAE5D,mBAAmB;QACV,gBAAW,GAAG,MAAM,EAAQ,CAAC;QAC7B,iBAAY,GAAG,MAAM,EAAQ,CAAC;QAC9B,iBAAY,GAAG,MAAM,EAAQ,CAAC;QAC9B,sBAAiB,GAAG,MAAM,EAAW,CAAC;QAE/C,sEAAsE;QACtE,uEAAuE;QACvE,sEAAsE;QAC7D,kBAAa,GAAG,QAAQ,CAC/B,GAAG,EAAE,CACH,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE;YAC3B,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE;YAC7B,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE,oFAClC,CAAC;QACO,aAAQ,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,+EAAC,CAAC;QAE1D,2EAA2E;QAClE,mBAAc,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,qFAAC,CAAC;QACnF,mBAAc,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,qFAAC,CAAC;KA6B7F;IA3BC,QAAQ;QACN,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;QAC5B,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;IAC1B,CAAC;IAED,SAAS;QACP,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,SAAS;QACP,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAC5B,IAAI,EAAE,EAAE,CAAC;YACP,EAAE,EAAE,CAAC;QACP,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,YAAY;QACV,MAAM,eAAe,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACjD,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACnD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC/C,CAAC;8GA5DU,iBAAiB;kGAAjB,iBAAiB,4yCA7DlB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DT,4DA7DS,cAAc;;2FA+Db,iBAAiB;kBAlE7B,SAAS;mBAAC;oBACT,QAAQ,EAAE,kBAAkB;oBAC5B,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,cAAc,CAAC;oBACzB,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DT;iBACF"}
1
+ {"version":3,"file":"controls.component.js","sourceRoot":"","sources":["../../../../../src/lib/components/controls/controls.component.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,8 @@
1
1
  import * as i0 from "@angular/core";
2
+ /**
3
+ * Host layer for HTML edge labels. Placing label HTML here instead of inside
4
+ * the SVG lets you use any DOM element (inputs, buttons, etc.) as a label.
5
+ */
2
6
  export declare class EdgeLabelRendererComponent {
3
7
  static ɵfac: i0.ɵɵFactoryDeclaration<EdgeLabelRendererComponent, never>;
4
8
  static ɵcmp: i0.ɵɵComponentDeclaration<EdgeLabelRendererComponent, "ng-flow-edge-label-renderer", never, {}, {}, never, ["*"], true, never>;
@@ -1 +1 @@
1
- {"version":3,"file":"edge-label-renderer.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/edge-label-renderer/edge-label-renderer.component.ts"],"names":[],"mappings":";AAEA,qBASa,0BAA0B;yCAA1B,0BAA0B;2CAA1B,0BAA0B;CAAG"}
1
+ {"version":3,"file":"edge-label-renderer.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/edge-label-renderer/edge-label-renderer.component.ts"],"names":[],"mappings":";AAEA;;;GAGG;AACH,qBASa,0BAA0B;yCAA1B,0BAA0B;2CAA1B,0BAA0B;CAAG"}
@@ -1,5 +1,9 @@
1
1
  import { Component, ChangeDetectionStrategy } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ /**
4
+ * Host layer for HTML edge labels. Placing label HTML here instead of inside
5
+ * the SVG lets you use any DOM element (inputs, buttons, etc.) as a label.
6
+ */
3
7
  export class EdgeLabelRendererComponent {
4
8
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: EdgeLabelRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
9
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.6", type: EdgeLabelRendererComponent, isStandalone: true, selector: "ng-flow-edge-label-renderer", host: { classAttribute: "ng-flow__edgelabel-renderer xy-flow__edgelabel-renderer" }, ngImport: i0, template: `<ng-content />`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
@@ -1 +1 @@
1
- {"version":3,"file":"edge-label-renderer.component.js","sourceRoot":"","sources":["../../../../../src/lib/components/edge-label-renderer/edge-label-renderer.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;;AAWnE,MAAM,OAAO,0BAA0B;8GAA1B,0BAA0B;kGAA1B,0BAA0B,4KAF3B,gBAAgB;;2FAEf,0BAA0B;kBATtC,SAAS;mBAAC;oBACT,QAAQ,EAAE,6BAA6B;oBACvC,UAAU,EAAE,IAAI;oBAChB,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,IAAI,EAAE;wBACJ,OAAO,EAAE,yDAAyD;qBACnE;oBACD,QAAQ,EAAE,gBAAgB;iBAC3B"}
1
+ {"version":3,"file":"edge-label-renderer.component.js","sourceRoot":"","sources":["../../../../../src/lib/components/edge-label-renderer/edge-label-renderer.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;;AAEnE;;;GAGG;AAUH,MAAM,OAAO,0BAA0B;8GAA1B,0BAA0B;kGAA1B,0BAA0B,4KAF3B,gBAAgB;;2FAEf,0BAA0B;kBATtC,SAAS;mBAAC;oBACT,QAAQ,EAAE,6BAA6B;oBACvC,UAAU,EAAE,IAAI;oBAChB,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,IAAI,EAAE;wBACJ,OAAO,EAAE,yDAAyD;qBACnE;oBACD,QAAQ,EAAE,gBAAgB;iBAC3B"}
@@ -1,4 +1,16 @@
1
1
  import * as i0 from "@angular/core";
2
+ /**
3
+ * Floating toolbar anchored to a fixed `(x, y)` in flow coordinates — typically
4
+ * placed near an edge's midpoint. By default it shows only while the owning
5
+ * edge is selected.
6
+ *
7
+ * @example
8
+ * ```html
9
+ * <ng-flow-edge-toolbar [edgeId]="edge.id" [x]="labelX" [y]="labelY">
10
+ * <button (click)="remove(edge.id)">Delete</button>
11
+ * </ng-flow-edge-toolbar>
12
+ * ```
13
+ */
2
14
  export declare class EdgeToolbarComponent {
3
15
  private readonly store;
4
16
  /** The ID of the edge this toolbar belongs to. */
@@ -8,9 +20,9 @@ export declare class EdgeToolbarComponent {
8
20
  /** Vertical position in flow coordinates. */
9
21
  readonly y: import("@angular/core").InputSignal<number>;
10
22
  /** Horizontal alignment relative to (x, y). */
11
- readonly alignX: import("@angular/core").InputSignal<"center" | "left" | "right">;
23
+ readonly alignX: import("@angular/core").InputSignal<"left" | "right" | "center">;
12
24
  /** Vertical alignment relative to (x, y). */
13
- readonly alignY: import("@angular/core").InputSignal<"center" | "bottom" | "top">;
25
+ readonly alignY: import("@angular/core").InputSignal<"bottom" | "top" | "center">;
14
26
  /** Override visibility. Defaults to showing when the edge is selected. */
15
27
  readonly isVisible: import("@angular/core").InputSignal<boolean | undefined>;
16
28
  readonly shouldShow: import("@angular/core").Signal<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"edge-toolbar.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/edge-toolbar/edge-toolbar.component.ts"],"names":[],"mappings":";AAIA,qBAea,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAqB;IAE3C,kDAAkD;IAClD,QAAQ,CAAC,MAAM,8CAA4B;IAE3C,+CAA+C;IAC/C,QAAQ,CAAC,CAAC,8CAA4B;IAEtC,6CAA6C;IAC7C,QAAQ,CAAC,CAAC,8CAA4B;IAEtC,+CAA+C;IAC/C,QAAQ,CAAC,MAAM,mEAAgD;IAE/D,6CAA6C;IAC7C,QAAQ,CAAC,MAAM,mEAAgD;IAE/D,0EAA0E;IAC1E,QAAQ,CAAC,SAAS,2DAAyC;IAE3D,QAAQ,CAAC,UAAU,0CAKhB;IAEH,QAAQ,CAAC,MAAM,sCAGZ;IAEH,QAAQ,CAAC,gBAAgB,yCAMtB;yCAvCQ,oBAAoB;2CAApB,oBAAoB;CAwChC"}
1
+ {"version":3,"file":"edge-toolbar.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/edge-toolbar/edge-toolbar.component.ts"],"names":[],"mappings":";AAIA;;;;;;;;;;;GAWG;AACH,qBAea,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAqB;IAE3C,kDAAkD;IAClD,QAAQ,CAAC,MAAM,8CAA4B;IAE3C,+CAA+C;IAC/C,QAAQ,CAAC,CAAC,8CAA4B;IAEtC,6CAA6C;IAC7C,QAAQ,CAAC,CAAC,8CAA4B;IAEtC,+CAA+C;IAC/C,QAAQ,CAAC,MAAM,mEAAgD;IAE/D,6CAA6C;IAC7C,QAAQ,CAAC,MAAM,mEAAgD;IAE/D,0EAA0E;IAC1E,QAAQ,CAAC,SAAS,2DAAyC;IAE3D,QAAQ,CAAC,UAAU,0CAKhB;IAEH,QAAQ,CAAC,MAAM,sCAGZ;IAEH,QAAQ,CAAC,gBAAgB,yCAMtB;yCAvCQ,oBAAoB;2CAApB,oBAAoB;CAwChC"}
@@ -2,6 +2,18 @@ import { Component, ChangeDetectionStrategy, input, inject, computed } from '@an
2
2
  import { getEdgeToolbarTransform } from '@angflow/system';
3
3
  import { FlowStore } from '../../services/flow-store.service';
4
4
  import * as i0 from "@angular/core";
5
+ /**
6
+ * Floating toolbar anchored to a fixed `(x, y)` in flow coordinates — typically
7
+ * placed near an edge's midpoint. By default it shows only while the owning
8
+ * edge is selected.
9
+ *
10
+ * @example
11
+ * ```html
12
+ * <ng-flow-edge-toolbar [edgeId]="edge.id" [x]="labelX" [y]="labelY">
13
+ * <button (click)="remove(edge.id)">Delete</button>
14
+ * </ng-flow-edge-toolbar>
15
+ * ```
16
+ */
5
17
  export class EdgeToolbarComponent {
6
18
  constructor() {
7
19
  this.store = inject(FlowStore);
@@ -1 +1 @@
1
- {"version":3,"file":"edge-toolbar.component.js","sourceRoot":"","sources":["../../../../../src/lib/components/edge-toolbar/edge-toolbar.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC5F,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;;AAiB9D,MAAM,OAAO,oBAAoB;IAfjC;QAgBmB,UAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QAE3C,kDAAkD;QACzC,WAAM,GAAG,KAAK,CAAC,QAAQ,4EAAU,CAAC;QAE3C,+CAA+C;QACtC,MAAC,GAAG,KAAK,CAAC,QAAQ,uEAAU,CAAC;QAEtC,6CAA6C;QACpC,MAAC,GAAG,KAAK,CAAC,QAAQ,uEAAU,CAAC;QAEtC,+CAA+C;QACtC,WAAM,GAAG,KAAK,CAA8B,QAAQ,6EAAC,CAAC;QAE/D,6CAA6C;QACpC,WAAM,GAAG,KAAK,CAA8B,QAAQ,6EAAC,CAAC;QAE/D,0EAA0E;QACjE,cAAS,GAAG,KAAK,CAAsB,SAAS,gFAAC,CAAC;QAElD,eAAU,GAAG,QAAQ,CAAC,GAAG,EAAE;YAClC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;YAC7B,IAAI,GAAG,KAAK,SAAS;gBAAE,OAAO,GAAG,CAAC;YAClC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YAClE,OAAO,IAAI,EAAE,QAAQ,IAAI,KAAK,CAAC;QACjC,CAAC,iFAAC,CAAC;QAEM,WAAM,GAAG,QAAQ,CAAC,GAAG,EAAE;YAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YAClE,OAAO,CAAE,IAAY,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAC1C,CAAC,6EAAC,CAAC;QAEM,qBAAgB,GAAG,QAAQ,CAAC,GAAG,EAAE;YACxC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YAC9C,qEAAqE;YACrE,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,GAAG,IAAI,GAAG,EAAE,CAAC;YAChC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,GAAG,IAAI,GAAG,EAAE,CAAC;YAChC,OAAO,uBAAuB,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC7E,CAAC,uFAAC,CAAC;KACJ;8GAxCY,oBAAoB;kGAApB,oBAAoB,umCAFrB,gBAAgB;;2FAEf,oBAAoB;kBAfhC,SAAS;mBAAC;oBACT,QAAQ,EAAE,sBAAsB;oBAChC,UAAU,EAAE,IAAI;oBAChB,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,IAAI,EAAE;wBACJ,OAAO,EAAE,6CAA6C;wBACtD,iBAAiB,EAAE,iCAAiC;wBACpD,kBAAkB,EAAE,YAAY;wBAChC,mBAAmB,EAAE,oBAAoB;wBACzC,0BAA0B,EAAE,OAAO;wBACnC,iBAAiB,EAAE,UAAU;wBAC7B,wBAAwB,EAAE,OAAO;qBAClC;oBACD,QAAQ,EAAE,gBAAgB;iBAC3B"}
1
+ {"version":3,"file":"edge-toolbar.component.js","sourceRoot":"","sources":["../../../../../src/lib/components/edge-toolbar/edge-toolbar.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC5F,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;;AAE9D;;;;;;;;;;;GAWG;AAgBH,MAAM,OAAO,oBAAoB;IAfjC;QAgBmB,UAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QAE3C,kDAAkD;QACzC,WAAM,GAAG,KAAK,CAAC,QAAQ,4EAAU,CAAC;QAE3C,+CAA+C;QACtC,MAAC,GAAG,KAAK,CAAC,QAAQ,uEAAU,CAAC;QAEtC,6CAA6C;QACpC,MAAC,GAAG,KAAK,CAAC,QAAQ,uEAAU,CAAC;QAEtC,+CAA+C;QACtC,WAAM,GAAG,KAAK,CAA8B,QAAQ,6EAAC,CAAC;QAE/D,6CAA6C;QACpC,WAAM,GAAG,KAAK,CAA8B,QAAQ,6EAAC,CAAC;QAE/D,0EAA0E;QACjE,cAAS,GAAG,KAAK,CAAsB,SAAS,gFAAC,CAAC;QAElD,eAAU,GAAG,QAAQ,CAAC,GAAG,EAAE;YAClC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;YAC7B,IAAI,GAAG,KAAK,SAAS;gBAAE,OAAO,GAAG,CAAC;YAClC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YAClE,OAAO,IAAI,EAAE,QAAQ,IAAI,KAAK,CAAC;QACjC,CAAC,iFAAC,CAAC;QAEM,WAAM,GAAG,QAAQ,CAAC,GAAG,EAAE;YAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YAClE,OAAO,CAAE,IAAY,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAC1C,CAAC,6EAAC,CAAC;QAEM,qBAAgB,GAAG,QAAQ,CAAC,GAAG,EAAE;YACxC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YAC9C,qEAAqE;YACrE,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,GAAG,IAAI,GAAG,EAAE,CAAC;YAChC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,GAAG,IAAI,GAAG,EAAE,CAAC;YAChC,OAAO,uBAAuB,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC7E,CAAC,uFAAC,CAAC;KACJ;8GAxCY,oBAAoB;kGAApB,oBAAoB,umCAFrB,gBAAgB;;2FAEf,oBAAoB;kBAfhC,SAAS;mBAAC;oBACT,QAAQ,EAAE,sBAAsB;oBAChC,UAAU,EAAE,IAAI;oBAChB,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,IAAI,EAAE;wBACJ,OAAO,EAAE,6CAA6C;wBACtD,iBAAiB,EAAE,iCAAiC;wBACpD,kBAAkB,EAAE,YAAY;wBAChC,mBAAmB,EAAE,oBAAoB;wBACzC,0BAA0B,EAAE,OAAO;wBACnC,iBAAiB,EAAE,UAAU;wBAC7B,wBAAwB,EAAE,OAAO;qBAClC;oBACD,QAAQ,EAAE,gBAAgB;iBAC3B"}
@@ -1,9 +1,32 @@
1
1
  import * as i0 from "@angular/core";
2
+ /**
3
+ * Low-level edge renderer. Draws the SVG path and an invisible wider
4
+ * "interaction" path (for easier pointer targeting). Use this as the building
5
+ * block for custom edge components — feed it a precomputed `path` string.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * @Component({
10
+ * selector: 'my-edge',
11
+ * imports: [BaseEdgeComponent],
12
+ * template: `<ng-flow-base-edge [path]="path()" [markerEnd]="markerEnd()" />`,
13
+ * })
14
+ * export class MyEdge {
15
+ * readonly sourceX = input(0); // ...etc
16
+ * readonly path = computed(() => getBezierPath({ ... })[0]);
17
+ * }
18
+ * ```
19
+ */
2
20
  export declare class BaseEdgeComponent {
21
+ /** SVG path data (`d` attribute) to render. */
3
22
  readonly path: import("@angular/core").InputSignal<string>;
23
+ /** SVG `url(#…)` reference for a marker drawn at the path start. */
4
24
  readonly markerStart: import("@angular/core").InputSignal<string | undefined>;
25
+ /** SVG `url(#…)` reference for a marker drawn at the path end. */
5
26
  readonly markerEnd: import("@angular/core").InputSignal<string | undefined>;
27
+ /** Inline CSS applied to the visible path (stroke, color, dash, etc.). */
6
28
  readonly style: import("@angular/core").InputSignal<string | undefined>;
29
+ /** Width of the invisible interaction path used for pointer targeting. Set to `0` to disable. */
7
30
  readonly interactionWidth: import("@angular/core").InputSignal<number>;
8
31
  static ɵfac: i0.ɵɵFactoryDeclaration<BaseEdgeComponent, never>;
9
32
  static ɵcmp: i0.ɵɵComponentDeclaration<BaseEdgeComponent, "ng-flow-base-edge", never, { "path": { "alias": "path"; "required": true; "isSignal": true; }; "markerStart": { "alias": "markerStart"; "required": false; "isSignal": true; }; "markerEnd": { "alias": "markerEnd"; "required": false; "isSignal": true; }; "style": { "alias": "style"; "required": false; "isSignal": true; }; "interactionWidth": { "alias": "interactionWidth"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
@@ -1 +1 @@
1
- {"version":3,"file":"base-edge.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/edges/base-edge.component.ts"],"names":[],"mappings":";AAEA,qBAiCa,iBAAiB;IAC5B,QAAQ,CAAC,IAAI,8CAA4B;IACzC,QAAQ,CAAC,WAAW,0DAAmB;IACvC,QAAQ,CAAC,SAAS,0DAAmB;IACrC,QAAQ,CAAC,KAAK,0DAAmB;IACjC,QAAQ,CAAC,gBAAgB,8CAAqB;yCALnC,iBAAiB;2CAAjB,iBAAiB;CAM7B"}
1
+ {"version":3,"file":"base-edge.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/edges/base-edge.component.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAiCa,iBAAiB;IAC5B,+CAA+C;IAC/C,QAAQ,CAAC,IAAI,8CAA4B;IACzC,oEAAoE;IACpE,QAAQ,CAAC,WAAW,0DAAmB;IACvC,kEAAkE;IAClE,QAAQ,CAAC,SAAS,0DAAmB;IACrC,0EAA0E;IAC1E,QAAQ,CAAC,KAAK,0DAAmB;IACjC,iGAAiG;IACjG,QAAQ,CAAC,gBAAgB,8CAAqB;yCAVnC,iBAAiB;2CAAjB,iBAAiB;CAW7B"}
@@ -1,34 +1,57 @@
1
1
  import { Component, ChangeDetectionStrategy, input, NO_ERRORS_SCHEMA } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ /**
4
+ * Low-level edge renderer. Draws the SVG path and an invisible wider
5
+ * "interaction" path (for easier pointer targeting). Use this as the building
6
+ * block for custom edge components — feed it a precomputed `path` string.
7
+ *
8
+ * @example
9
+ * ```typescript
10
+ * @Component({
11
+ * selector: 'my-edge',
12
+ * imports: [BaseEdgeComponent],
13
+ * template: `<ng-flow-base-edge [path]="path()" [markerEnd]="markerEnd()" />`,
14
+ * })
15
+ * export class MyEdge {
16
+ * readonly sourceX = input(0); // ...etc
17
+ * readonly path = computed(() => getBezierPath({ ... })[0]);
18
+ * }
19
+ * ```
20
+ */
3
21
  export class BaseEdgeComponent {
4
22
  constructor() {
23
+ /** SVG path data (`d` attribute) to render. */
5
24
  this.path = input.required(...(ngDevMode ? [{ debugName: "path" }] : /* istanbul ignore next */ []));
25
+ /** SVG `url(#…)` reference for a marker drawn at the path start. */
6
26
  this.markerStart = input(...(ngDevMode ? [undefined, { debugName: "markerStart" }] : /* istanbul ignore next */ []));
27
+ /** SVG `url(#…)` reference for a marker drawn at the path end. */
7
28
  this.markerEnd = input(...(ngDevMode ? [undefined, { debugName: "markerEnd" }] : /* istanbul ignore next */ []));
29
+ /** Inline CSS applied to the visible path (stroke, color, dash, etc.). */
8
30
  this.style = input(...(ngDevMode ? [undefined, { debugName: "style" }] : /* istanbul ignore next */ []));
31
+ /** Width of the invisible interaction path used for pointer targeting. Set to `0` to disable. */
9
32
  this.interactionWidth = input(20, ...(ngDevMode ? [{ debugName: "interactionWidth" }] : /* istanbul ignore next */ []));
10
33
  }
11
34
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: BaseEdgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.6", type: BaseEdgeComponent, isStandalone: true, selector: "ng-flow-base-edge", inputs: { path: { classPropertyName: "path", publicName: "path", isSignal: true, isRequired: true, transformFunction: null }, markerStart: { classPropertyName: "markerStart", publicName: "markerStart", isSignal: true, isRequired: false, transformFunction: null }, markerEnd: { classPropertyName: "markerEnd", publicName: "markerEnd", isSignal: true, isRequired: false, transformFunction: null }, style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, interactionWidth: { classPropertyName: "interactionWidth", publicName: "interactionWidth", isSignal: true, isRequired: false, transformFunction: null } }, host: { styleAttribute: "display: contents;" }, ngImport: i0, template: `
13
- <svg xmlns="http://www.w3.org/2000/svg" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none;">
14
- @if (interactionWidth()) {
15
- <path
16
- class="xy-flow__edge-interaction"
17
- [attr.d]="path()"
18
- fill="none"
19
- stroke="transparent"
20
- [attr.stroke-width]="interactionWidth()"
21
- style="pointer-events: stroke;"
22
- />
23
- }
24
- <path
25
- class="xy-flow__edge-path"
26
- [attr.d]="path()"
27
- [attr.marker-start]="markerStart()"
28
- [attr.marker-end]="markerEnd()"
29
- [attr.style]="style()"
30
- />
31
- </svg>
35
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.6", type: BaseEdgeComponent, isStandalone: true, selector: "ng-flow-base-edge", inputs: { path: { classPropertyName: "path", publicName: "path", isSignal: true, isRequired: true, transformFunction: null }, markerStart: { classPropertyName: "markerStart", publicName: "markerStart", isSignal: true, isRequired: false, transformFunction: null }, markerEnd: { classPropertyName: "markerEnd", publicName: "markerEnd", isSignal: true, isRequired: false, transformFunction: null }, style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, interactionWidth: { classPropertyName: "interactionWidth", publicName: "interactionWidth", isSignal: true, isRequired: false, transformFunction: null } }, host: { styleAttribute: "display: contents;" }, ngImport: i0, template: `
36
+ <svg xmlns="http://www.w3.org/2000/svg" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none;">
37
+ @if (interactionWidth()) {
38
+ <path
39
+ class="xy-flow__edge-interaction"
40
+ [attr.d]="path()"
41
+ fill="none"
42
+ stroke="transparent"
43
+ [attr.stroke-width]="interactionWidth()"
44
+ style="pointer-events: stroke;"
45
+ />
46
+ }
47
+ <path
48
+ class="xy-flow__edge-path"
49
+ [attr.d]="path()"
50
+ [attr.marker-start]="markerStart()"
51
+ [attr.marker-end]="markerEnd()"
52
+ [attr.style]="style()"
53
+ />
54
+ </svg>
32
55
  `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
33
56
  }
34
57
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: BaseEdgeComponent, decorators: [{
@@ -44,26 +67,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImpor
44
67
  // (Angular creates the dynamic component's host in the XHTML namespace even
45
68
  // when it sits inside an <svg>, so raw <path> children would render as unknown
46
69
  // HTML elements without this wrapper).
47
- template: `
48
- <svg xmlns="http://www.w3.org/2000/svg" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none;">
49
- @if (interactionWidth()) {
50
- <path
51
- class="xy-flow__edge-interaction"
52
- [attr.d]="path()"
53
- fill="none"
54
- stroke="transparent"
55
- [attr.stroke-width]="interactionWidth()"
56
- style="pointer-events: stroke;"
57
- />
58
- }
59
- <path
60
- class="xy-flow__edge-path"
61
- [attr.d]="path()"
62
- [attr.marker-start]="markerStart()"
63
- [attr.marker-end]="markerEnd()"
64
- [attr.style]="style()"
65
- />
66
- </svg>
70
+ template: `
71
+ <svg xmlns="http://www.w3.org/2000/svg" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none;">
72
+ @if (interactionWidth()) {
73
+ <path
74
+ class="xy-flow__edge-interaction"
75
+ [attr.d]="path()"
76
+ fill="none"
77
+ stroke="transparent"
78
+ [attr.stroke-width]="interactionWidth()"
79
+ style="pointer-events: stroke;"
80
+ />
81
+ }
82
+ <path
83
+ class="xy-flow__edge-path"
84
+ [attr.d]="path()"
85
+ [attr.marker-start]="markerStart()"
86
+ [attr.marker-end]="markerEnd()"
87
+ [attr.style]="style()"
88
+ />
89
+ </svg>
67
90
  `,
68
91
  }]
69
92
  }], propDecorators: { path: [{ type: i0.Input, args: [{ isSignal: true, alias: "path", required: true }] }], markerStart: [{ type: i0.Input, args: [{ isSignal: true, alias: "markerStart", required: false }] }], markerEnd: [{ type: i0.Input, args: [{ isSignal: true, alias: "markerEnd", required: false }] }], style: [{ type: i0.Input, args: [{ isSignal: true, alias: "style", required: false }] }], interactionWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "interactionWidth", required: false }] }] } });
@@ -1 +1 @@
1
- {"version":3,"file":"base-edge.component.js","sourceRoot":"","sources":["../../../../../src/lib/components/edges/base-edge.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;;AAmC5F,MAAM,OAAO,iBAAiB;IAjC9B;QAkCW,SAAI,GAAG,KAAK,CAAC,QAAQ,0EAAU,CAAC;QAChC,gBAAW,GAAG,KAAK,4FAAU,CAAC;QAC9B,cAAS,GAAG,KAAK,0FAAU,CAAC;QAC5B,UAAK,GAAG,KAAK,sFAAU,CAAC;QACxB,qBAAgB,GAAG,KAAK,CAAS,EAAE,uFAAC,CAAC;KAC/C;8GANY,iBAAiB;kGAAjB,iBAAiB,4xBAtBlB;;;;;;;;;;;;;;;;;;;;GAoBT;;2FAEU,iBAAiB;kBAjC7B,SAAS;mBAAC;oBACT,QAAQ,EAAE,mBAAmB;oBAC7B,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,gBAAgB,CAAC;oBAC3B,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,IAAI,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACvC,8EAA8E;oBAC9E,+EAA+E;oBAC/E,4EAA4E;oBAC5E,+EAA+E;oBAC/E,uCAAuC;oBACvC,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;GAoBT;iBACF"}
1
+ {"version":3,"file":"base-edge.component.js","sourceRoot":"","sources":["../../../../../src/lib/components/edges/base-edge.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;;AAE5F;;;;;;;;;;;;;;;;;GAiBG;AAkCH,MAAM,OAAO,iBAAiB;IAjC9B;QAkCE,+CAA+C;QACtC,SAAI,GAAG,KAAK,CAAC,QAAQ,0EAAU,CAAC;QACzC,oEAAoE;QAC3D,gBAAW,GAAG,KAAK,4FAAU,CAAC;QACvC,kEAAkE;QACzD,cAAS,GAAG,KAAK,0FAAU,CAAC;QACrC,0EAA0E;QACjE,UAAK,GAAG,KAAK,sFAAU,CAAC;QACjC,iGAAiG;QACxF,qBAAgB,GAAG,KAAK,CAAS,EAAE,uFAAC,CAAC;KAC/C;8GAXY,iBAAiB;kGAAjB,iBAAiB,4xBAtBlB;;;;;;;;;;;;;;;;;;;;GAoBT;;2FAEU,iBAAiB;kBAjC7B,SAAS;mBAAC;oBACT,QAAQ,EAAE,mBAAmB;oBAC7B,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,gBAAgB,CAAC;oBAC3B,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,IAAI,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACvC,8EAA8E;oBAC9E,+EAA+E;oBAC/E,4EAA4E;oBAC5E,+EAA+E;oBAC/E,uCAAuC;oBACvC,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;GAoBT;iBACF"}
@@ -1,5 +1,9 @@
1
1
  import { Position, type BezierPathOptions, type Handle } from '@angflow/system';
2
2
  import * as i0 from "@angular/core";
3
+ /**
4
+ * Default cubic-bezier edge. Registered as the `'default'` edge type in
5
+ * `<ng-flow>`; pass a `pathOptions` input to tweak the curvature.
6
+ */
3
7
  export declare class BezierEdgeComponent {
4
8
  readonly id: import("@angular/core").InputSignal<string | undefined>;
5
9
  readonly source: import("@angular/core").InputSignal<string | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"bezier-edge.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/edges/bezier-edge.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,QAAQ,EAAE,KAAK,iBAAiB,EAAE,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;;AAG/F,qBAea,mBAAmB;IAC9B,QAAQ,CAAC,EAAE,0DAAmB;IAC9B,QAAQ,CAAC,MAAM,0DAAmB;IAClC,QAAQ,CAAC,MAAM,0DAAmB;IAClC,QAAQ,CAAC,IAAI,0DAAmB;IAChC,QAAQ,CAAC,QAAQ,+CAAgB;IACjC,QAAQ,CAAC,QAAQ,+CAAgB;IACjC,QAAQ,CAAC,IAAI,2CAAgB;IAC7B,QAAQ,CAAC,KAAK,0DAAmB;IACjC,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,cAAc,gDAAoC;IAC3D,QAAQ,CAAC,cAAc,gDAAiC;IACxD,QAAQ,CAAC,WAAW,0DAAmB;IACvC,QAAQ,CAAC,SAAS,0DAAmB;IACrC,QAAQ,CAAC,gBAAgB,0DAAmB;IAC5C,QAAQ,CAAC,WAAW,qEAA8B;IAClD,QAAQ,CAAC,cAAc,iEAA0B;IACjD,QAAQ,CAAC,cAAc,iEAA0B;IACjD,QAAQ,CAAC,UAAU,2DAAoB;IACvC,QAAQ,CAAC,SAAS,2DAAoB;IACtC,QAAQ,CAAC,YAAY,qDAA8B;IACnD,QAAQ,CAAC,YAAY,qDAA8B;IAEnD,QAAQ,CAAC,QAAQ,yCAWd;yCArCQ,mBAAmB;2CAAnB,mBAAmB;CAsC/B"}
1
+ {"version":3,"file":"bezier-edge.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/edges/bezier-edge.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,QAAQ,EAAE,KAAK,iBAAiB,EAAE,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;;AAG/F;;;GAGG;AACH,qBAea,mBAAmB;IAC9B,QAAQ,CAAC,EAAE,0DAAmB;IAC9B,QAAQ,CAAC,MAAM,0DAAmB;IAClC,QAAQ,CAAC,MAAM,0DAAmB;IAClC,QAAQ,CAAC,IAAI,0DAAmB;IAChC,QAAQ,CAAC,QAAQ,+CAAgB;IACjC,QAAQ,CAAC,QAAQ,+CAAgB;IACjC,QAAQ,CAAC,IAAI,2CAAgB;IAC7B,QAAQ,CAAC,KAAK,0DAAmB;IACjC,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,cAAc,gDAAoC;IAC3D,QAAQ,CAAC,cAAc,gDAAiC;IACxD,QAAQ,CAAC,WAAW,0DAAmB;IACvC,QAAQ,CAAC,SAAS,0DAAmB;IACrC,QAAQ,CAAC,gBAAgB,0DAAmB;IAC5C,QAAQ,CAAC,WAAW,qEAA8B;IAClD,QAAQ,CAAC,cAAc,iEAA0B;IACjD,QAAQ,CAAC,cAAc,iEAA0B;IACjD,QAAQ,CAAC,UAAU,2DAAoB;IACvC,QAAQ,CAAC,SAAS,2DAAoB;IACtC,QAAQ,CAAC,YAAY,qDAA8B;IACnD,QAAQ,CAAC,YAAY,qDAA8B;IAEnD,QAAQ,CAAC,QAAQ,yCAWd;yCArCQ,mBAAmB;2CAAnB,mBAAmB;CAsC/B"}
@@ -2,6 +2,10 @@ import { Component, ChangeDetectionStrategy, input, computed } from '@angular/co
2
2
  import { getBezierPath, Position } from '@angflow/system';
3
3
  import { BaseEdgeComponent } from './base-edge.component';
4
4
  import * as i0 from "@angular/core";
5
+ /**
6
+ * Default cubic-bezier edge. Registered as the `'default'` edge type in
7
+ * `<ng-flow>`; pass a `pathOptions` input to tweak the curvature.
8
+ */
5
9
  export class BezierEdgeComponent {
6
10
  constructor() {
7
11
  this.id = input(...(ngDevMode ? [undefined, { debugName: "id" }] : /* istanbul ignore next */ []));
@@ -1 +1 @@
1
- {"version":3,"file":"bezier-edge.component.js","sourceRoot":"","sources":["../../../../../src/lib/components/edges/bezier-edge.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAuC,MAAM,iBAAiB,CAAC;AAC/F,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;;AAiB1D,MAAM,OAAO,mBAAmB;IAfhC;QAgBW,OAAE,GAAG,KAAK,mFAAU,CAAC;QACrB,WAAM,GAAG,KAAK,uFAAU,CAAC;QACzB,WAAM,GAAG,KAAK,uFAAU,CAAC;QACzB,SAAI,GAAG,KAAK,qFAAU,CAAC;QACvB,aAAQ,GAAG,KAAK,CAAC,KAAK,+EAAC,CAAC;QACxB,aAAQ,GAAG,KAAK,CAAC,KAAK,+EAAC,CAAC;QACxB,SAAI,GAAG,KAAK,qFAAO,CAAC;QACpB,UAAK,GAAG,KAAK,sFAAU,CAAC;QACxB,YAAO,GAAG,KAAK,CAAC,CAAC,8EAAC,CAAC;QACnB,YAAO,GAAG,KAAK,CAAC,CAAC,8EAAC,CAAC;QACnB,YAAO,GAAG,KAAK,CAAC,CAAC,8EAAC,CAAC;QACnB,YAAO,GAAG,KAAK,CAAC,CAAC,8EAAC,CAAC;QACnB,mBAAc,GAAG,KAAK,CAAW,QAAQ,CAAC,MAAM,qFAAC,CAAC;QAClD,mBAAc,GAAG,KAAK,CAAW,QAAQ,CAAC,GAAG,qFAAC,CAAC;QAC/C,gBAAW,GAAG,KAAK,4FAAU,CAAC;QAC9B,cAAS,GAAG,KAAK,0FAAU,CAAC;QAC5B,qBAAgB,GAAG,KAAK,iGAAU,CAAC;QACnC,gBAAW,GAAG,KAAK,4FAAqB,CAAC;QACzC,mBAAc,GAAG,KAAK,+FAAiB,CAAC;QACxC,mBAAc,GAAG,KAAK,+FAAiB,CAAC;QACxC,eAAU,GAAG,KAAK,2FAAW,CAAC;QAC9B,cAAS,GAAG,KAAK,0FAAW,CAAC;QAC7B,iBAAY,GAAG,KAAK,CAAgB,IAAI,mFAAC,CAAC;QAC1C,iBAAY,GAAG,KAAK,CAAgB,IAAI,mFAAC,CAAC;QAE1C,aAAQ,GAAG,QAAQ,CAAC,GAAG,EAAE;YAChC,MAAM,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC;gBAC3B,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;gBACvB,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE;gBACrC,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE;gBACrC,GAAG,IAAI,CAAC,WAAW,EAAE;aACtB,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QACd,CAAC,+EAAC,CAAC;KACJ;8GAtCY,mBAAmB;kGAAnB,mBAAmB,8uGATpB;;;;;;;GAOT,4DAVS,iBAAiB;;2FAYhB,mBAAmB;kBAf/B,SAAS;mBAAC;oBACT,QAAQ,EAAE,qBAAqB;oBAC/B,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,iBAAiB,CAAC;oBAC5B,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,IAAI,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACvC,QAAQ,EAAE;;;;;;;GAOT;iBACF"}
1
+ {"version":3,"file":"bezier-edge.component.js","sourceRoot":"","sources":["../../../../../src/lib/components/edges/bezier-edge.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAuC,MAAM,iBAAiB,CAAC;AAC/F,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;;AAE1D;;;GAGG;AAgBH,MAAM,OAAO,mBAAmB;IAfhC;QAgBW,OAAE,GAAG,KAAK,mFAAU,CAAC;QACrB,WAAM,GAAG,KAAK,uFAAU,CAAC;QACzB,WAAM,GAAG,KAAK,uFAAU,CAAC;QACzB,SAAI,GAAG,KAAK,qFAAU,CAAC;QACvB,aAAQ,GAAG,KAAK,CAAC,KAAK,+EAAC,CAAC;QACxB,aAAQ,GAAG,KAAK,CAAC,KAAK,+EAAC,CAAC;QACxB,SAAI,GAAG,KAAK,qFAAO,CAAC;QACpB,UAAK,GAAG,KAAK,sFAAU,CAAC;QACxB,YAAO,GAAG,KAAK,CAAC,CAAC,8EAAC,CAAC;QACnB,YAAO,GAAG,KAAK,CAAC,CAAC,8EAAC,CAAC;QACnB,YAAO,GAAG,KAAK,CAAC,CAAC,8EAAC,CAAC;QACnB,YAAO,GAAG,KAAK,CAAC,CAAC,8EAAC,CAAC;QACnB,mBAAc,GAAG,KAAK,CAAW,QAAQ,CAAC,MAAM,qFAAC,CAAC;QAClD,mBAAc,GAAG,KAAK,CAAW,QAAQ,CAAC,GAAG,qFAAC,CAAC;QAC/C,gBAAW,GAAG,KAAK,4FAAU,CAAC;QAC9B,cAAS,GAAG,KAAK,0FAAU,CAAC;QAC5B,qBAAgB,GAAG,KAAK,iGAAU,CAAC;QACnC,gBAAW,GAAG,KAAK,4FAAqB,CAAC;QACzC,mBAAc,GAAG,KAAK,+FAAiB,CAAC;QACxC,mBAAc,GAAG,KAAK,+FAAiB,CAAC;QACxC,eAAU,GAAG,KAAK,2FAAW,CAAC;QAC9B,cAAS,GAAG,KAAK,0FAAW,CAAC;QAC7B,iBAAY,GAAG,KAAK,CAAgB,IAAI,mFAAC,CAAC;QAC1C,iBAAY,GAAG,KAAK,CAAgB,IAAI,mFAAC,CAAC;QAE1C,aAAQ,GAAG,QAAQ,CAAC,GAAG,EAAE;YAChC,MAAM,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC;gBAC3B,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;gBACvB,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE;gBACrC,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE;gBACrC,GAAG,IAAI,CAAC,WAAW,EAAE;aACtB,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QACd,CAAC,+EAAC,CAAC;KACJ;8GAtCY,mBAAmB;kGAAnB,mBAAmB,8uGATpB;;;;;;;GAOT,4DAVS,iBAAiB;;2FAYhB,mBAAmB;kBAf/B,SAAS;mBAAC;oBACT,QAAQ,EAAE,qBAAqB;oBAC/B,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,iBAAiB,CAAC;oBAC5B,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,IAAI,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACvC,QAAQ,EAAE;;;;;;;GAOT;iBACF"}
@@ -1,4 +1,8 @@
1
1
  import * as i0 from "@angular/core";
2
+ /**
3
+ * Helper that renders a text label centered at `(x, y)` in flow coordinates,
4
+ * with a small background for readability. Place inside an SVG edge template.
5
+ */
2
6
  export declare class EdgeTextComponent {
3
7
  readonly x: import("@angular/core").InputSignal<number>;
4
8
  readonly y: import("@angular/core").InputSignal<number>;
@@ -1 +1 @@
1
- {"version":3,"file":"edge-text.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/edges/edge-text.component.ts"],"names":[],"mappings":";AAEA,qBAmBa,iBAAiB;IAC5B,QAAQ,CAAC,CAAC,8CAAY;IACtB,QAAQ,CAAC,CAAC,8CAAY;IACtB,QAAQ,CAAC,KAAK,0DAAmB;IACjC,QAAQ,CAAC,KAAK,8CAAa;IAC3B,QAAQ,CAAC,MAAM,8CAAa;yCALjB,iBAAiB;2CAAjB,iBAAiB;CAM7B"}
1
+ {"version":3,"file":"edge-text.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/edges/edge-text.component.ts"],"names":[],"mappings":";AAEA;;;GAGG;AACH,qBAmBa,iBAAiB;IAC5B,QAAQ,CAAC,CAAC,8CAAY;IACtB,QAAQ,CAAC,CAAC,8CAAY;IACtB,QAAQ,CAAC,KAAK,0DAAmB;IACjC,QAAQ,CAAC,KAAK,8CAAa;IAC3B,QAAQ,CAAC,MAAM,8CAAa;yCALjB,iBAAiB;2CAAjB,iBAAiB;CAM7B"}
@@ -1,5 +1,9 @@
1
1
  import { Component, ChangeDetectionStrategy, input } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ /**
4
+ * Helper that renders a text label centered at `(x, y)` in flow coordinates,
5
+ * with a small background for readability. Place inside an SVG edge template.
6
+ */
3
7
  export class EdgeTextComponent {
4
8
  constructor() {
5
9
  this.x = input(0, ...(ngDevMode ? [{ debugName: "x" }] : /* istanbul ignore next */ []));
@@ -9,19 +13,19 @@ export class EdgeTextComponent {
9
13
  this.height = input(20, ...(ngDevMode ? [{ debugName: "height" }] : /* istanbul ignore next */ []));
10
14
  }
11
15
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: EdgeTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.6", type: EdgeTextComponent, isStandalone: true, selector: "ng-flow-edge-text", inputs: { x: { classPropertyName: "x", publicName: "x", isSignal: true, isRequired: false, transformFunction: null }, y: { classPropertyName: "y", publicName: "y", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
13
- <foreignObject
14
- [attr.width]="width()"
15
- [attr.height]="height()"
16
- [attr.x]="x() - width() / 2"
17
- [attr.y]="y() - height() / 2"
18
- class="xy-flow__edge-textwrapper"
19
- requiredExtensions="http://www.w3.org/1999/xhtml"
20
- >
21
- <div class="xy-flow__edge-textbg" xmlns="http://www.w3.org/1999/xhtml">
22
- <span class="xy-flow__edge-text">{{ label() }}</span>
23
- </div>
24
- </foreignObject>
16
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.6", type: EdgeTextComponent, isStandalone: true, selector: "ng-flow-edge-text", inputs: { x: { classPropertyName: "x", publicName: "x", isSignal: true, isRequired: false, transformFunction: null }, y: { classPropertyName: "y", publicName: "y", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
17
+ <foreignObject
18
+ [attr.width]="width()"
19
+ [attr.height]="height()"
20
+ [attr.x]="x() - width() / 2"
21
+ [attr.y]="y() - height() / 2"
22
+ class="xy-flow__edge-textwrapper"
23
+ requiredExtensions="http://www.w3.org/1999/xhtml"
24
+ >
25
+ <div class="xy-flow__edge-textbg" xmlns="http://www.w3.org/1999/xhtml">
26
+ <span class="xy-flow__edge-text">{{ label() }}</span>
27
+ </div>
28
+ </foreignObject>
25
29
  `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
26
30
  }
27
31
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: EdgeTextComponent, decorators: [{
@@ -30,19 +34,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImpor
30
34
  selector: 'ng-flow-edge-text',
31
35
  standalone: true,
32
36
  changeDetection: ChangeDetectionStrategy.OnPush,
33
- template: `
34
- <foreignObject
35
- [attr.width]="width()"
36
- [attr.height]="height()"
37
- [attr.x]="x() - width() / 2"
38
- [attr.y]="y() - height() / 2"
39
- class="xy-flow__edge-textwrapper"
40
- requiredExtensions="http://www.w3.org/1999/xhtml"
41
- >
42
- <div class="xy-flow__edge-textbg" xmlns="http://www.w3.org/1999/xhtml">
43
- <span class="xy-flow__edge-text">{{ label() }}</span>
44
- </div>
45
- </foreignObject>
37
+ template: `
38
+ <foreignObject
39
+ [attr.width]="width()"
40
+ [attr.height]="height()"
41
+ [attr.x]="x() - width() / 2"
42
+ [attr.y]="y() - height() / 2"
43
+ class="xy-flow__edge-textwrapper"
44
+ requiredExtensions="http://www.w3.org/1999/xhtml"
45
+ >
46
+ <div class="xy-flow__edge-textbg" xmlns="http://www.w3.org/1999/xhtml">
47
+ <span class="xy-flow__edge-text">{{ label() }}</span>
48
+ </div>
49
+ </foreignObject>
46
50
  `,
47
51
  }]
48
52
  }], propDecorators: { x: [{ type: i0.Input, args: [{ isSignal: true, alias: "x", required: false }] }], y: [{ type: i0.Input, args: [{ isSignal: true, alias: "y", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], width: [{ type: i0.Input, args: [{ isSignal: true, alias: "width", required: false }] }], height: [{ type: i0.Input, args: [{ isSignal: true, alias: "height", required: false }] }] } });
@@ -1 +1 @@
1
- {"version":3,"file":"edge-text.component.js","sourceRoot":"","sources":["../../../../../src/lib/components/edges/edge-text.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;;AAqB1E,MAAM,OAAO,iBAAiB;IAnB9B;QAoBW,MAAC,GAAG,KAAK,CAAC,CAAC,wEAAC,CAAC;QACb,MAAC,GAAG,KAAK,CAAC,CAAC,wEAAC,CAAC;QACb,UAAK,GAAG,KAAK,sFAAU,CAAC;QACxB,UAAK,GAAG,KAAK,CAAC,EAAE,4EAAC,CAAC;QAClB,WAAM,GAAG,KAAK,CAAC,EAAE,6EAAC,CAAC;KAC7B;8GANY,iBAAiB;kGAAjB,iBAAiB,4pBAflB;;;;;;;;;;;;;GAaT;;2FAEU,iBAAiB;kBAnB7B,SAAS;mBAAC;oBACT,QAAQ,EAAE,mBAAmB;oBAC7B,UAAU,EAAE,IAAI;oBAChB,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,QAAQ,EAAE;;;;;;;;;;;;;GAaT;iBACF"}
1
+ {"version":3,"file":"edge-text.component.js","sourceRoot":"","sources":["../../../../../src/lib/components/edges/edge-text.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;;AAE1E;;;GAGG;AAoBH,MAAM,OAAO,iBAAiB;IAnB9B;QAoBW,MAAC,GAAG,KAAK,CAAC,CAAC,wEAAC,CAAC;QACb,MAAC,GAAG,KAAK,CAAC,CAAC,wEAAC,CAAC;QACb,UAAK,GAAG,KAAK,sFAAU,CAAC;QACxB,UAAK,GAAG,KAAK,CAAC,EAAE,4EAAC,CAAC;QAClB,WAAM,GAAG,KAAK,CAAC,EAAE,6EAAC,CAAC;KAC7B;8GANY,iBAAiB;kGAAjB,iBAAiB,4pBAflB;;;;;;;;;;;;;GAaT;;2FAEU,iBAAiB;kBAnB7B,SAAS;mBAAC;oBACT,QAAQ,EAAE,mBAAmB;oBAC7B,UAAU,EAAE,IAAI;oBAChB,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,QAAQ,EAAE;;;;;;;;;;;;;GAaT;iBACF"}
@@ -1,5 +1,9 @@
1
1
  import { Position, type Handle } from '@angflow/system';
2
2
  import * as i0 from "@angular/core";
3
+ /**
4
+ * Cubic-bezier edge with a simpler curve approximation than `BezierEdgeComponent`.
5
+ * Cheaper to compute; useful when rendering many edges.
6
+ */
3
7
  export declare class SimpleBezierEdgeComponent {
4
8
  readonly id: import("@angular/core").InputSignal<string | undefined>;
5
9
  readonly sourceX: import("@angular/core").InputSignal<number>;
@@ -1 +1 @@
1
- {"version":3,"file":"simple-bezier-edge.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/edges/simple-bezier-edge.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,QAAQ,EAAE,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;;AAGvE,qBAca,yBAAyB;IACpC,QAAQ,CAAC,EAAE,0DAAmB;IAC9B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,cAAc,gDAAoC;IAC3D,QAAQ,CAAC,cAAc,gDAAiC;IACxD,QAAQ,CAAC,IAAI,2CAAgB;IAC7B,QAAQ,CAAC,QAAQ,+CAAgB;IACjC,QAAQ,CAAC,WAAW,0DAAmB;IACvC,QAAQ,CAAC,SAAS,0DAAmB;IACrC,QAAQ,CAAC,gBAAgB,0DAAmB;IAC5C,QAAQ,CAAC,KAAK,0DAAmB;IACjC,QAAQ,CAAC,YAAY,qDAA8B;IACnD,QAAQ,CAAC,YAAY,qDAA8B;IAEnD,QAAQ,CAAC,QAAQ,yCAUd;yCA3BQ,yBAAyB;2CAAzB,yBAAyB;CA4BrC"}
1
+ {"version":3,"file":"simple-bezier-edge.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/edges/simple-bezier-edge.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,QAAQ,EAAE,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;;AAGvE;;;GAGG;AACH,qBAca,yBAAyB;IACpC,QAAQ,CAAC,EAAE,0DAAmB;IAC9B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,cAAc,gDAAoC;IAC3D,QAAQ,CAAC,cAAc,gDAAiC;IACxD,QAAQ,CAAC,IAAI,2CAAgB;IAC7B,QAAQ,CAAC,QAAQ,+CAAgB;IACjC,QAAQ,CAAC,WAAW,0DAAmB;IACvC,QAAQ,CAAC,SAAS,0DAAmB;IACrC,QAAQ,CAAC,gBAAgB,0DAAmB;IAC5C,QAAQ,CAAC,KAAK,0DAAmB;IACjC,QAAQ,CAAC,YAAY,qDAA8B;IACnD,QAAQ,CAAC,YAAY,qDAA8B;IAEnD,QAAQ,CAAC,QAAQ,yCAUd;yCA3BQ,yBAAyB;2CAAzB,yBAAyB;CA4BrC"}
@@ -2,6 +2,10 @@ import { Component, ChangeDetectionStrategy, input, computed } from '@angular/co
2
2
  import { getBezierPath, Position } from '@angflow/system';
3
3
  import { BaseEdgeComponent } from './base-edge.component';
4
4
  import * as i0 from "@angular/core";
5
+ /**
6
+ * Cubic-bezier edge with a simpler curve approximation than `BezierEdgeComponent`.
7
+ * Cheaper to compute; useful when rendering many edges.
8
+ */
5
9
  export class SimpleBezierEdgeComponent {
6
10
  constructor() {
7
11
  this.id = input(...(ngDevMode ? [undefined, { debugName: "id" }] : /* istanbul ignore next */ []));
@@ -1 +1 @@
1
- {"version":3,"file":"simple-bezier-edge.component.js","sourceRoot":"","sources":["../../../../../src/lib/components/edges/simple-bezier-edge.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAe,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;;AAgB1D,MAAM,OAAO,yBAAyB;IAdtC;QAeW,OAAE,GAAG,KAAK,mFAAU,CAAC;QACrB,YAAO,GAAG,KAAK,CAAC,CAAC,8EAAC,CAAC;QACnB,YAAO,GAAG,KAAK,CAAC,CAAC,8EAAC,CAAC;QACnB,YAAO,GAAG,KAAK,CAAC,CAAC,8EAAC,CAAC;QACnB,YAAO,GAAG,KAAK,CAAC,CAAC,8EAAC,CAAC;QACnB,mBAAc,GAAG,KAAK,CAAW,QAAQ,CAAC,MAAM,qFAAC,CAAC;QAClD,mBAAc,GAAG,KAAK,CAAW,QAAQ,CAAC,GAAG,qFAAC,CAAC;QAC/C,SAAI,GAAG,KAAK,qFAAO,CAAC;QACpB,aAAQ,GAAG,KAAK,CAAC,KAAK,+EAAC,CAAC;QACxB,gBAAW,GAAG,KAAK,4FAAU,CAAC;QAC9B,cAAS,GAAG,KAAK,0FAAU,CAAC;QAC5B,qBAAgB,GAAG,KAAK,iGAAU,CAAC;QACnC,UAAK,GAAG,KAAK,sFAAU,CAAC;QACxB,iBAAY,GAAG,KAAK,CAAgB,IAAI,mFAAC,CAAC;QAC1C,iBAAY,GAAG,KAAK,CAAgB,IAAI,mFAAC,CAAC;QAE1C,aAAQ,GAAG,QAAQ,CAAC,GAAG,EAAE;YAChC,MAAM,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC;gBAC3B,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;gBACvB,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE;gBACrC,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE;aACtC,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QACd,CAAC,+EAAC,CAAC;KACJ;8GA5BY,yBAAyB;kGAAzB,yBAAyB,8hEAT1B;;;;;;;GAOT,4DATS,iBAAiB;;2FAWhB,yBAAyB;kBAdrC,SAAS;mBAAC;oBACT,QAAQ,EAAE,4BAA4B;oBACtC,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,iBAAiB,CAAC;oBAC5B,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,QAAQ,EAAE;;;;;;;GAOT;iBACF"}
1
+ {"version":3,"file":"simple-bezier-edge.component.js","sourceRoot":"","sources":["../../../../../src/lib/components/edges/simple-bezier-edge.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAe,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;;AAE1D;;;GAGG;AAeH,MAAM,OAAO,yBAAyB;IAdtC;QAeW,OAAE,GAAG,KAAK,mFAAU,CAAC;QACrB,YAAO,GAAG,KAAK,CAAC,CAAC,8EAAC,CAAC;QACnB,YAAO,GAAG,KAAK,CAAC,CAAC,8EAAC,CAAC;QACnB,YAAO,GAAG,KAAK,CAAC,CAAC,8EAAC,CAAC;QACnB,YAAO,GAAG,KAAK,CAAC,CAAC,8EAAC,CAAC;QACnB,mBAAc,GAAG,KAAK,CAAW,QAAQ,CAAC,MAAM,qFAAC,CAAC;QAClD,mBAAc,GAAG,KAAK,CAAW,QAAQ,CAAC,GAAG,qFAAC,CAAC;QAC/C,SAAI,GAAG,KAAK,qFAAO,CAAC;QACpB,aAAQ,GAAG,KAAK,CAAC,KAAK,+EAAC,CAAC;QACxB,gBAAW,GAAG,KAAK,4FAAU,CAAC;QAC9B,cAAS,GAAG,KAAK,0FAAU,CAAC;QAC5B,qBAAgB,GAAG,KAAK,iGAAU,CAAC;QACnC,UAAK,GAAG,KAAK,sFAAU,CAAC;QACxB,iBAAY,GAAG,KAAK,CAAgB,IAAI,mFAAC,CAAC;QAC1C,iBAAY,GAAG,KAAK,CAAgB,IAAI,mFAAC,CAAC;QAE1C,aAAQ,GAAG,QAAQ,CAAC,GAAG,EAAE;YAChC,MAAM,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC;gBAC3B,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;gBACvB,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE;gBACrC,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE;aACtC,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QACd,CAAC,+EAAC,CAAC;KACJ;8GA5BY,yBAAyB;kGAAzB,yBAAyB,8hEAT1B;;;;;;;GAOT,4DATS,iBAAiB;;2FAWhB,yBAAyB;kBAdrC,SAAS;mBAAC;oBACT,QAAQ,EAAE,4BAA4B;oBACtC,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,iBAAiB,CAAC;oBAC5B,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,QAAQ,EAAE;;;;;;;GAOT;iBACF"}
@@ -1,5 +1,6 @@
1
1
  import { Position, type SmoothStepPathOptions, type Handle } from '@angflow/system';
2
2
  import * as i0 from "@angular/core";
3
+ /** Edge rendered as orthogonal step segments with rounded corners. */
3
4
  export declare class SmoothStepEdgeComponent {
4
5
  readonly id: import("@angular/core").InputSignal<string | undefined>;
5
6
  readonly sourceX: import("@angular/core").InputSignal<number>;
@@ -1 +1 @@
1
- {"version":3,"file":"smooth-step-edge.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/edges/smooth-step-edge.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,QAAQ,EAAE,KAAK,qBAAqB,EAAE,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;;AAGvG,qBAca,uBAAuB;IAClC,QAAQ,CAAC,EAAE,0DAAmB;IAC9B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,cAAc,gDAAoC;IAC3D,QAAQ,CAAC,cAAc,gDAAiC;IACxD,QAAQ,CAAC,IAAI,2CAAgB;IAC7B,QAAQ,CAAC,QAAQ,+CAAgB;IACjC,QAAQ,CAAC,WAAW,0DAAmB;IACvC,QAAQ,CAAC,SAAS,0DAAmB;IACrC,QAAQ,CAAC,gBAAgB,0DAAmB;IAC5C,QAAQ,CAAC,WAAW,yEAAkC;IACtD,QAAQ,CAAC,KAAK,0DAAmB;IACjC,QAAQ,CAAC,YAAY,qDAA8B;IACnD,QAAQ,CAAC,YAAY,qDAA8B;IAEnD,QAAQ,CAAC,QAAQ,yCAWd;yCA7BQ,uBAAuB;2CAAvB,uBAAuB;CA8BnC"}
1
+ {"version":3,"file":"smooth-step-edge.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/components/edges/smooth-step-edge.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,QAAQ,EAAE,KAAK,qBAAqB,EAAE,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;;AAGvG,sEAAsE;AACtE,qBAca,uBAAuB;IAClC,QAAQ,CAAC,EAAE,0DAAmB;IAC9B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,OAAO,8CAAY;IAC5B,QAAQ,CAAC,cAAc,gDAAoC;IAC3D,QAAQ,CAAC,cAAc,gDAAiC;IACxD,QAAQ,CAAC,IAAI,2CAAgB;IAC7B,QAAQ,CAAC,QAAQ,+CAAgB;IACjC,QAAQ,CAAC,WAAW,0DAAmB;IACvC,QAAQ,CAAC,SAAS,0DAAmB;IACrC,QAAQ,CAAC,gBAAgB,0DAAmB;IAC5C,QAAQ,CAAC,WAAW,yEAAkC;IACtD,QAAQ,CAAC,KAAK,0DAAmB;IACjC,QAAQ,CAAC,YAAY,qDAA8B;IACnD,QAAQ,CAAC,YAAY,qDAA8B;IAEnD,QAAQ,CAAC,QAAQ,yCAWd;yCA7BQ,uBAAuB;2CAAvB,uBAAuB;CA8BnC"}
@@ -2,6 +2,7 @@ import { Component, ChangeDetectionStrategy, input, computed } from '@angular/co
2
2
  import { getSmoothStepPath, Position } from '@angflow/system';
3
3
  import { BaseEdgeComponent } from './base-edge.component';
4
4
  import * as i0 from "@angular/core";
5
+ /** Edge rendered as orthogonal step segments with rounded corners. */
5
6
  export class SmoothStepEdgeComponent {
6
7
  constructor() {
7
8
  this.id = input(...(ngDevMode ? [undefined, { debugName: "id" }] : /* istanbul ignore next */ []));