@angflow/angular 0.0.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 (196) hide show
  1. package/README.md +187 -0
  2. package/dist/base.css +1204 -0
  3. package/dist/esm/index.d.ts +2 -0
  4. package/dist/esm/index.d.ts.map +1 -0
  5. package/dist/esm/index.js +2 -0
  6. package/dist/esm/index.js.map +1 -0
  7. package/dist/esm/lib/components/a11y-descriptions/a11y-descriptions.component.d.ts +25 -0
  8. package/dist/esm/lib/components/a11y-descriptions/a11y-descriptions.component.d.ts.map +1 -0
  9. package/dist/esm/lib/components/a11y-descriptions/a11y-descriptions.component.js +58 -0
  10. package/dist/esm/lib/components/a11y-descriptions/a11y-descriptions.component.js.map +1 -0
  11. package/dist/esm/lib/components/attribution/attribution.component.d.ts +6 -0
  12. package/dist/esm/lib/components/attribution/attribution.component.d.ts.map +1 -0
  13. package/dist/esm/lib/components/attribution/attribution.component.js +32 -0
  14. package/dist/esm/lib/components/attribution/attribution.component.js.map +1 -0
  15. package/dist/esm/lib/components/background/background.component.d.ts +31 -0
  16. package/dist/esm/lib/components/background/background.component.d.ts.map +1 -0
  17. package/dist/esm/lib/components/background/background.component.js +209 -0
  18. package/dist/esm/lib/components/background/background.component.js.map +1 -0
  19. package/dist/esm/lib/components/connection-line/connection-line.component.d.ts +36 -0
  20. package/dist/esm/lib/components/connection-line/connection-line.component.d.ts.map +1 -0
  21. package/dist/esm/lib/components/connection-line/connection-line.component.js +146 -0
  22. package/dist/esm/lib/components/connection-line/connection-line.component.js.map +1 -0
  23. package/dist/esm/lib/components/controls/controls.component.d.ts +25 -0
  24. package/dist/esm/lib/components/controls/controls.component.d.ts.map +1 -0
  25. package/dist/esm/lib/components/controls/controls.component.js +174 -0
  26. package/dist/esm/lib/components/controls/controls.component.js.map +1 -0
  27. package/dist/esm/lib/components/edge-label-renderer/edge-label-renderer.component.d.ts +6 -0
  28. package/dist/esm/lib/components/edge-label-renderer/edge-label-renderer.component.d.ts.map +1 -0
  29. package/dist/esm/lib/components/edge-label-renderer/edge-label-renderer.component.js +24 -0
  30. package/dist/esm/lib/components/edge-label-renderer/edge-label-renderer.component.js.map +1 -0
  31. package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.d.ts +22 -0
  32. package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.d.ts.map +1 -0
  33. package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.js +64 -0
  34. package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.js.map +1 -0
  35. package/dist/esm/lib/components/edges/base-edge.component.d.ts +11 -0
  36. package/dist/esm/lib/components/edges/base-edge.component.d.ts.map +1 -0
  37. package/dist/esm/lib/components/edges/base-edge.component.js +56 -0
  38. package/dist/esm/lib/components/edges/base-edge.component.js.map +1 -0
  39. package/dist/esm/lib/components/edges/bezier-edge.component.d.ts +30 -0
  40. package/dist/esm/lib/components/edges/bezier-edge.component.d.ts.map +1 -0
  41. package/dist/esm/lib/components/edges/bezier-edge.component.js +68 -0
  42. package/dist/esm/lib/components/edges/bezier-edge.component.js.map +1 -0
  43. package/dist/esm/lib/components/edges/edge-text.component.d.ts +11 -0
  44. package/dist/esm/lib/components/edges/edge-text.component.d.ts.map +1 -0
  45. package/dist/esm/lib/components/edges/edge-text.component.js +48 -0
  46. package/dist/esm/lib/components/edges/edge-text.component.js.map +1 -0
  47. package/dist/esm/lib/components/edges/simple-bezier-edge.component.d.ts +21 -0
  48. package/dist/esm/lib/components/edges/simple-bezier-edge.component.d.ts.map +1 -0
  49. package/dist/esm/lib/components/edges/simple-bezier-edge.component.js +57 -0
  50. package/dist/esm/lib/components/edges/simple-bezier-edge.component.js.map +1 -0
  51. package/dist/esm/lib/components/edges/smooth-step-edge.component.d.ts +22 -0
  52. package/dist/esm/lib/components/edges/smooth-step-edge.component.d.ts.map +1 -0
  53. package/dist/esm/lib/components/edges/smooth-step-edge.component.js +59 -0
  54. package/dist/esm/lib/components/edges/smooth-step-edge.component.js.map +1 -0
  55. package/dist/esm/lib/components/edges/step-edge.component.d.ts +22 -0
  56. package/dist/esm/lib/components/edges/step-edge.component.d.ts.map +1 -0
  57. package/dist/esm/lib/components/edges/step-edge.component.js +60 -0
  58. package/dist/esm/lib/components/edges/step-edge.component.js.map +1 -0
  59. package/dist/esm/lib/components/edges/straight-edge.component.d.ts +18 -0
  60. package/dist/esm/lib/components/edges/straight-edge.component.d.ts.map +1 -0
  61. package/dist/esm/lib/components/edges/straight-edge.component.js +53 -0
  62. package/dist/esm/lib/components/edges/straight-edge.component.js.map +1 -0
  63. package/dist/esm/lib/components/handle/handle.component.d.ts +28 -0
  64. package/dist/esm/lib/components/handle/handle.component.d.ts.map +1 -0
  65. package/dist/esm/lib/components/handle/handle.component.js +162 -0
  66. package/dist/esm/lib/components/handle/handle.component.js.map +1 -0
  67. package/dist/esm/lib/components/minimap/minimap.component.d.ts +75 -0
  68. package/dist/esm/lib/components/minimap/minimap.component.d.ts.map +1 -0
  69. package/dist/esm/lib/components/minimap/minimap.component.js +319 -0
  70. package/dist/esm/lib/components/minimap/minimap.component.js.map +1 -0
  71. package/dist/esm/lib/components/ng-flow-provider/ng-flow-provider.component.d.ts +6 -0
  72. package/dist/esm/lib/components/ng-flow-provider/ng-flow-provider.component.d.ts.map +1 -0
  73. package/dist/esm/lib/components/ng-flow-provider/ng-flow-provider.component.js +24 -0
  74. package/dist/esm/lib/components/ng-flow-provider/ng-flow-provider.component.js.map +1 -0
  75. package/dist/esm/lib/components/node-resizer/node-resizer.component.d.ts +44 -0
  76. package/dist/esm/lib/components/node-resizer/node-resizer.component.d.ts.map +1 -0
  77. package/dist/esm/lib/components/node-resizer/node-resizer.component.js +198 -0
  78. package/dist/esm/lib/components/node-resizer/node-resizer.component.js.map +1 -0
  79. package/dist/esm/lib/components/node-toolbar/node-toolbar.component.d.ts +19 -0
  80. package/dist/esm/lib/components/node-toolbar/node-toolbar.component.d.ts.map +1 -0
  81. package/dist/esm/lib/components/node-toolbar/node-toolbar.component.js +101 -0
  82. package/dist/esm/lib/components/node-toolbar/node-toolbar.component.js.map +1 -0
  83. package/dist/esm/lib/components/nodes/default-node.component.d.ts +20 -0
  84. package/dist/esm/lib/components/nodes/default-node.component.d.ts.map +1 -0
  85. package/dist/esm/lib/components/nodes/default-node.component.js +52 -0
  86. package/dist/esm/lib/components/nodes/default-node.component.js.map +1 -0
  87. package/dist/esm/lib/components/nodes/group-node.component.d.ts +19 -0
  88. package/dist/esm/lib/components/nodes/group-node.component.d.ts.map +1 -0
  89. package/dist/esm/lib/components/nodes/group-node.component.js +34 -0
  90. package/dist/esm/lib/components/nodes/group-node.component.js.map +1 -0
  91. package/dist/esm/lib/components/nodes/input-node.component.d.ts +20 -0
  92. package/dist/esm/lib/components/nodes/input-node.component.d.ts.map +1 -0
  93. package/dist/esm/lib/components/nodes/input-node.component.js +49 -0
  94. package/dist/esm/lib/components/nodes/input-node.component.js.map +1 -0
  95. package/dist/esm/lib/components/nodes/output-node.component.d.ts +20 -0
  96. package/dist/esm/lib/components/nodes/output-node.component.d.ts.map +1 -0
  97. package/dist/esm/lib/components/nodes/output-node.component.js +48 -0
  98. package/dist/esm/lib/components/nodes/output-node.component.js.map +1 -0
  99. package/dist/esm/lib/components/panel/panel.component.d.ts +13 -0
  100. package/dist/esm/lib/components/panel/panel.component.d.ts.map +1 -0
  101. package/dist/esm/lib/components/panel/panel.component.js +39 -0
  102. package/dist/esm/lib/components/panel/panel.component.js.map +1 -0
  103. package/dist/esm/lib/components/selection-box/selection-box.component.d.ts +12 -0
  104. package/dist/esm/lib/components/selection-box/selection-box.component.d.ts.map +1 -0
  105. package/dist/esm/lib/components/selection-box/selection-box.component.js +56 -0
  106. package/dist/esm/lib/components/selection-box/selection-box.component.js.map +1 -0
  107. package/dist/esm/lib/components/viewport-portal/viewport-portal.component.d.ts +8 -0
  108. package/dist/esm/lib/components/viewport-portal/viewport-portal.component.d.ts.map +1 -0
  109. package/dist/esm/lib/components/viewport-portal/viewport-portal.component.js +35 -0
  110. package/dist/esm/lib/components/viewport-portal/viewport-portal.component.js.map +1 -0
  111. package/dist/esm/lib/container/edge-renderer/edge-renderer.component.d.ts +70 -0
  112. package/dist/esm/lib/container/edge-renderer/edge-renderer.component.d.ts.map +1 -0
  113. package/dist/esm/lib/container/edge-renderer/edge-renderer.component.js +503 -0
  114. package/dist/esm/lib/container/edge-renderer/edge-renderer.component.js.map +1 -0
  115. package/dist/esm/lib/container/ng-flow/ng-flow.component.d.ts +281 -0
  116. package/dist/esm/lib/container/ng-flow/ng-flow.component.d.ts.map +1 -0
  117. package/dist/esm/lib/container/ng-flow/ng-flow.component.js +644 -0
  118. package/dist/esm/lib/container/ng-flow/ng-flow.component.js.map +1 -0
  119. package/dist/esm/lib/container/node-renderer/node-renderer.component.d.ts +56 -0
  120. package/dist/esm/lib/container/node-renderer/node-renderer.component.d.ts.map +1 -0
  121. package/dist/esm/lib/container/node-renderer/node-renderer.component.js +312 -0
  122. package/dist/esm/lib/container/node-renderer/node-renderer.component.js.map +1 -0
  123. package/dist/esm/lib/container/pane/pane.component.d.ts +35 -0
  124. package/dist/esm/lib/container/pane/pane.component.d.ts.map +1 -0
  125. package/dist/esm/lib/container/pane/pane.component.js +161 -0
  126. package/dist/esm/lib/container/pane/pane.component.js.map +1 -0
  127. package/dist/esm/lib/container/viewport/viewport.component.d.ts +9 -0
  128. package/dist/esm/lib/container/viewport/viewport.component.d.ts.map +1 -0
  129. package/dist/esm/lib/container/viewport/viewport.component.js +35 -0
  130. package/dist/esm/lib/container/viewport/viewport.component.js.map +1 -0
  131. package/dist/esm/lib/directives/drag.directive.d.ts +21 -0
  132. package/dist/esm/lib/directives/drag.directive.d.ts.map +1 -0
  133. package/dist/esm/lib/directives/drag.directive.js +69 -0
  134. package/dist/esm/lib/directives/drag.directive.js.map +1 -0
  135. package/dist/esm/lib/directives/drop-zone.directive.d.ts +30 -0
  136. package/dist/esm/lib/directives/drop-zone.directive.d.ts.map +1 -0
  137. package/dist/esm/lib/directives/drop-zone.directive.js +58 -0
  138. package/dist/esm/lib/directives/drop-zone.directive.js.map +1 -0
  139. package/dist/esm/lib/directives/key-handler.directive.d.ts +29 -0
  140. package/dist/esm/lib/directives/key-handler.directive.d.ts.map +1 -0
  141. package/dist/esm/lib/directives/key-handler.directive.js +176 -0
  142. package/dist/esm/lib/directives/key-handler.directive.js.map +1 -0
  143. package/dist/esm/lib/directives/node-type.directive.d.ts +21 -0
  144. package/dist/esm/lib/directives/node-type.directive.d.ts.map +1 -0
  145. package/dist/esm/lib/directives/node-type.directive.js +32 -0
  146. package/dist/esm/lib/directives/node-type.directive.js.map +1 -0
  147. package/dist/esm/lib/public-api.d.ts +40 -0
  148. package/dist/esm/lib/public-api.d.ts.map +1 -0
  149. package/dist/esm/lib/public-api.js +67 -0
  150. package/dist/esm/lib/public-api.js.map +1 -0
  151. package/dist/esm/lib/services/flow-store.service.d.ts +227 -0
  152. package/dist/esm/lib/services/flow-store.service.d.ts.map +1 -0
  153. package/dist/esm/lib/services/flow-store.service.js +542 -0
  154. package/dist/esm/lib/services/flow-store.service.js.map +1 -0
  155. package/dist/esm/lib/services/ng-flow.service.d.ts +186 -0
  156. package/dist/esm/lib/services/ng-flow.service.d.ts.map +1 -0
  157. package/dist/esm/lib/services/ng-flow.service.js +501 -0
  158. package/dist/esm/lib/services/ng-flow.service.js.map +1 -0
  159. package/dist/esm/lib/services/tokens.d.ts +4 -0
  160. package/dist/esm/lib/services/tokens.d.ts.map +1 -0
  161. package/dist/esm/lib/services/tokens.js +4 -0
  162. package/dist/esm/lib/services/tokens.js.map +1 -0
  163. package/dist/esm/lib/types/edges.d.ts +83 -0
  164. package/dist/esm/lib/types/edges.d.ts.map +1 -0
  165. package/dist/esm/lib/types/edges.js +2 -0
  166. package/dist/esm/lib/types/edges.js.map +1 -0
  167. package/dist/esm/lib/types/general.d.ts +128 -0
  168. package/dist/esm/lib/types/general.d.ts.map +1 -0
  169. package/dist/esm/lib/types/general.js +2 -0
  170. package/dist/esm/lib/types/general.js.map +1 -0
  171. package/dist/esm/lib/types/index.d.ts +5 -0
  172. package/dist/esm/lib/types/index.d.ts.map +1 -0
  173. package/dist/esm/lib/types/index.js +5 -0
  174. package/dist/esm/lib/types/index.js.map +1 -0
  175. package/dist/esm/lib/types/nodes.d.ts +53 -0
  176. package/dist/esm/lib/types/nodes.d.ts.map +1 -0
  177. package/dist/esm/lib/types/nodes.js +2 -0
  178. package/dist/esm/lib/types/nodes.js.map +1 -0
  179. package/dist/esm/lib/types/store.d.ts +71 -0
  180. package/dist/esm/lib/types/store.d.ts.map +1 -0
  181. package/dist/esm/lib/types/store.js +2 -0
  182. package/dist/esm/lib/types/store.js.map +1 -0
  183. package/dist/esm/lib/utils/changes.d.ts +12 -0
  184. package/dist/esm/lib/utils/changes.d.ts.map +1 -0
  185. package/dist/esm/lib/utils/changes.js +134 -0
  186. package/dist/esm/lib/utils/changes.js.map +1 -0
  187. package/dist/esm/lib/utils/index.d.ts +2 -0
  188. package/dist/esm/lib/utils/index.d.ts.map +1 -0
  189. package/dist/esm/lib/utils/index.js +2 -0
  190. package/dist/esm/lib/utils/index.js.map +1 -0
  191. package/dist/esm/lib/utils/type-guards.d.ts +12 -0
  192. package/dist/esm/lib/utils/type-guards.d.ts.map +1 -0
  193. package/dist/esm/lib/utils/type-guards.js +16 -0
  194. package/dist/esm/lib/utils/type-guards.js.map +1 -0
  195. package/dist/style.css +1392 -0
  196. package/package.json +60 -0
@@ -0,0 +1,503 @@
1
+ import { Component, ChangeDetectionStrategy, inject, computed, output, input, NO_ERRORS_SCHEMA, } from '@angular/core';
2
+ import { CommonModule, NgComponentOutlet } from '@angular/common';
3
+ import { getMarkerId, Position, XYHandle, getBezierPath, getSmoothStepPath, getStraightPath, } from '@angflow/system';
4
+ import { FlowStore } from '../../services/flow-store.service';
5
+ import { BezierEdgeComponent } from '../../components/edges/bezier-edge.component';
6
+ import { StraightEdgeComponent } from '../../components/edges/straight-edge.component';
7
+ import { StepEdgeComponent } from '../../components/edges/step-edge.component';
8
+ import { SmoothStepEdgeComponent } from '../../components/edges/smooth-step-edge.component';
9
+ import { SimpleBezierEdgeComponent } from '../../components/edges/simple-bezier-edge.component';
10
+ import * as i0 from "@angular/core";
11
+ import * as i1 from "@angular/common";
12
+ const _forTrack0 = ($index, $item) => $item.id;
13
+ function EdgeRendererComponent_For_3_Template(rf, ctx) { if (rf & 1) {
14
+ i0.ɵɵnamespaceSVG();
15
+ i0.ɵɵelementStart(0, "marker", 1);
16
+ i0.ɵɵelement(1, "polyline", 4);
17
+ i0.ɵɵelementEnd();
18
+ } if (rf & 2) {
19
+ const marker_r1 = ctx.$implicit;
20
+ i0.ɵɵproperty("id", marker_r1.id);
21
+ i0.ɵɵattribute("markerWidth", marker_r1.width ?? 12.5)("markerHeight", marker_r1.height ?? 12.5);
22
+ i0.ɵɵadvance();
23
+ i0.ɵɵclassProp("arrowclosed", marker_r1.type === "arrowclosed");
24
+ i0.ɵɵattribute("stroke", marker_r1.color || "currentColor")("fill", marker_r1.type === "arrowclosed" ? marker_r1.color || "currentColor" : "none");
25
+ } }
26
+ function EdgeRendererComponent_For_5_Conditional_3__svg_ng_container_0_Template(rf, ctx) { if (rf & 1) {
27
+ i0.ɵɵnamespaceSVG();
28
+ i0.ɵɵelementContainer(0);
29
+ } }
30
+ function EdgeRendererComponent_For_5_Conditional_3_Template(rf, ctx) { if (rf & 1) {
31
+ i0.ɵɵtemplate(0, EdgeRendererComponent_For_5_Conditional_3__svg_ng_container_0_Template, 1, 0, "ng-container", 7);
32
+ } if (rf & 2) {
33
+ const edge_r3 = i0.ɵɵnextContext().$implicit;
34
+ const ei_r5 = i0.ɵɵreadContextLet(0);
35
+ const ctx_r3 = i0.ɵɵnextContext();
36
+ i0.ɵɵproperty("ngComponentOutlet", ctx_r3.getEdgeComponent(edge_r3.type))("ngComponentOutletInputs", ei_r5);
37
+ } }
38
+ function EdgeRendererComponent_For_5_Conditional_4_Template(rf, ctx) { if (rf & 1) {
39
+ i0.ɵɵnamespaceSVG();
40
+ i0.ɵɵelement(0, "path", 8)(1, "path", 9);
41
+ } if (rf & 2) {
42
+ i0.ɵɵnextContext();
43
+ const ei_r5 = i0.ɵɵreadContextLet(0);
44
+ const ctx_r3 = i0.ɵɵnextContext();
45
+ i0.ɵɵattribute("d", ctx_r3.getEdgePath(ei_r5));
46
+ i0.ɵɵadvance();
47
+ i0.ɵɵattribute("d", ctx_r3.getEdgePath(ei_r5))("marker-start", ei_r5["markerStart"])("marker-end", ei_r5["markerEnd"]);
48
+ } }
49
+ function EdgeRendererComponent_For_5_Conditional_5_Template(rf, ctx) { if (rf & 1) {
50
+ const _r6 = i0.ɵɵgetCurrentView();
51
+ i0.ɵɵnamespaceSVG();
52
+ i0.ɵɵelementStart(0, "circle", 10);
53
+ i0.ɵɵlistener("mousedown", function EdgeRendererComponent_For_5_Conditional_5_Template_circle_mousedown_0_listener($event) { i0.ɵɵrestoreView(_r6); const edge_r3 = i0.ɵɵnextContext().$implicit; const ctx_r3 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r3.onReconnectSourceMouseDown($event, edge_r3)); });
54
+ i0.ɵɵelementEnd();
55
+ i0.ɵɵelementStart(1, "circle", 11);
56
+ i0.ɵɵlistener("mousedown", function EdgeRendererComponent_For_5_Conditional_5_Template_circle_mousedown_1_listener($event) { i0.ɵɵrestoreView(_r6); const edge_r3 = i0.ɵɵnextContext().$implicit; const ctx_r3 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r3.onReconnectTargetMouseDown($event, edge_r3)); });
57
+ i0.ɵɵelementEnd();
58
+ } if (rf & 2) {
59
+ i0.ɵɵnextContext();
60
+ const ei_r5 = i0.ɵɵreadContextLet(0);
61
+ const ctx_r3 = i0.ɵɵnextContext();
62
+ i0.ɵɵattribute("cx", ctx_r3.shiftX(ei_r5["sourceX"], ctx_r3.reconnectRadius(), ei_r5["sourcePosition"]))("cy", ctx_r3.shiftY(ei_r5["sourceY"], ctx_r3.reconnectRadius(), ei_r5["sourcePosition"]))("r", ctx_r3.reconnectRadius());
63
+ i0.ɵɵadvance();
64
+ i0.ɵɵattribute("cx", ctx_r3.shiftX(ei_r5["targetX"], ctx_r3.reconnectRadius(), ei_r5["targetPosition"]))("cy", ctx_r3.shiftY(ei_r5["targetY"], ctx_r3.reconnectRadius(), ei_r5["targetPosition"]))("r", ctx_r3.reconnectRadius());
65
+ } }
66
+ function EdgeRendererComponent_For_5_Template(rf, ctx) { if (rf & 1) {
67
+ const _r2 = i0.ɵɵgetCurrentView();
68
+ i0.ɵɵdeclareLet(0);
69
+ i0.ɵɵnamespaceSVG();
70
+ i0.ɵɵelementStart(1, "svg", 5)(2, "g", 6);
71
+ i0.ɵɵlistener("click", function EdgeRendererComponent_For_5_Template_g_click_2_listener($event) { const edge_r3 = i0.ɵɵrestoreView(_r2).$implicit; const ctx_r3 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r3.onEdgeEvent($event, edge_r3, "click")); })("dblclick", function EdgeRendererComponent_For_5_Template_g_dblclick_2_listener($event) { const edge_r3 = i0.ɵɵrestoreView(_r2).$implicit; const ctx_r3 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r3.onEdgeEvent($event, edge_r3, "dblclick")); })("contextmenu", function EdgeRendererComponent_For_5_Template_g_contextmenu_2_listener($event) { const edge_r3 = i0.ɵɵrestoreView(_r2).$implicit; const ctx_r3 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r3.onEdgeEvent($event, edge_r3, "contextmenu")); })("mouseenter", function EdgeRendererComponent_For_5_Template_g_mouseenter_2_listener($event) { const edge_r3 = i0.ɵɵrestoreView(_r2).$implicit; const ctx_r3 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r3.onEdgeEvent($event, edge_r3, "mouseenter")); })("mousemove", function EdgeRendererComponent_For_5_Template_g_mousemove_2_listener($event) { const edge_r3 = i0.ɵɵrestoreView(_r2).$implicit; const ctx_r3 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r3.onEdgeEvent($event, edge_r3, "mousemove")); })("mouseleave", function EdgeRendererComponent_For_5_Template_g_mouseleave_2_listener($event) { const edge_r3 = i0.ɵɵrestoreView(_r2).$implicit; const ctx_r3 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r3.onEdgeEvent($event, edge_r3, "mouseleave")); });
72
+ i0.ɵɵconditionalCreate(3, EdgeRendererComponent_For_5_Conditional_3_Template, 1, 2, ":svg:ng-container")(4, EdgeRendererComponent_For_5_Conditional_4_Template, 2, 4);
73
+ i0.ɵɵconditionalCreate(5, EdgeRendererComponent_For_5_Conditional_5_Template, 2, 6);
74
+ i0.ɵɵelementEnd()();
75
+ } if (rf & 2) {
76
+ const edge_r3 = ctx.$implicit;
77
+ const ctx_r3 = i0.ɵɵnextContext();
78
+ i0.ɵɵstoreLet(ctx_r3.getEdgeInputs(edge_r3));
79
+ i0.ɵɵadvance();
80
+ i0.ɵɵclassMap("xy-flow__edge-" + (edge_r3.type || "default"));
81
+ i0.ɵɵstyleProp("z-index", edge_r3.zIndex ?? 0);
82
+ i0.ɵɵclassProp("selected", edge_r3.selected)("animated", edge_r3.animated)("selectable", edge_r3.selectable !== false);
83
+ i0.ɵɵattribute("aria-label", ctx_r3.getEdgeAriaLabel(edge_r3));
84
+ i0.ɵɵadvance();
85
+ i0.ɵɵattribute("data-id", edge_r3.id);
86
+ i0.ɵɵadvance();
87
+ i0.ɵɵconditional(ctx_r3.isCustomEdge(edge_r3.type) ? 3 : 4);
88
+ i0.ɵɵadvance(2);
89
+ i0.ɵɵconditional(ctx_r3.isEdgeReconnectable(edge_r3) ? 5 : -1);
90
+ } }
91
+ function EdgeRendererComponent_For_8_Conditional_0_Template(rf, ctx) { if (rf & 1) {
92
+ i0.ɵɵelementStart(0, "div", 13);
93
+ i0.ɵɵtext(1);
94
+ i0.ɵɵelementEnd();
95
+ } if (rf & 2) {
96
+ const edge_r7 = i0.ɵɵnextContext().$implicit;
97
+ const ctx_r3 = i0.ɵɵnextContext();
98
+ const ei_r8 = ctx_r3.getEdgeInputs(edge_r7);
99
+ i0.ɵɵstyleProp("position", "absolute")("transform", "translate(-50%, -50%) translate(" + ctx_r3.getEdgeCenterX(ei_r8) + "px, " + ctx_r3.getEdgeCenterY(ei_r8) + "px)")("pointer-events", "all");
100
+ i0.ɵɵadvance();
101
+ i0.ɵɵtextInterpolate1(" ", edge_r7.label, " ");
102
+ } }
103
+ function EdgeRendererComponent_For_8_Template(rf, ctx) { if (rf & 1) {
104
+ i0.ɵɵconditionalCreate(0, EdgeRendererComponent_For_8_Conditional_0_Template, 2, 7, "div", 12);
105
+ } if (rf & 2) {
106
+ const edge_r7 = ctx.$implicit;
107
+ i0.ɵɵconditional(edge_r7.label ? 0 : -1);
108
+ } }
109
+ const builtInEdgeTypeNames = new Set(['default', 'bezier', 'straight', 'step', 'smoothstep', 'simplebezier']);
110
+ const builtInEdgeTypes = {
111
+ default: BezierEdgeComponent,
112
+ bezier: BezierEdgeComponent,
113
+ straight: StraightEdgeComponent,
114
+ step: StepEdgeComponent,
115
+ smoothstep: SmoothStepEdgeComponent,
116
+ simplebezier: SimpleBezierEdgeComponent,
117
+ };
118
+ export class EdgeRendererComponent {
119
+ constructor() {
120
+ this.store = inject(FlowStore);
121
+ this.reconnectRadius = input(10, ...(ngDevMode ? [{ debugName: "reconnectRadius" }] : /* istanbul ignore next */ []));
122
+ this.edgeClick = output();
123
+ this.edgeDoubleClick = output();
124
+ this.edgeContextMenu = output();
125
+ this.edgeMouseEnter = output();
126
+ this.edgeMouseMove = output();
127
+ this.edgeMouseLeave = output();
128
+ this.customEdgeTypes = input({}, ...(ngDevMode ? [{ debugName: "customEdgeTypes" }] : /* istanbul ignore next */ []));
129
+ this.reconnect = output();
130
+ this.reconnectStart = output();
131
+ this.reconnectEnd = output();
132
+ this.visibleEdges = computed(() => {
133
+ const visibleIds = this.store.visibleEdgeIds();
134
+ return this.store.edges().filter((e) => visibleIds.has(e.id));
135
+ }, ...(ngDevMode ? [{ debugName: "visibleEdges" }] : /* istanbul ignore next */ []));
136
+ this.markers = computed(() => {
137
+ const edges = this.store.edges();
138
+ const markerMap = new Map();
139
+ for (const edge of edges) {
140
+ this.addMarker(markerMap, edge.markerStart);
141
+ this.addMarker(markerMap, edge.markerEnd);
142
+ }
143
+ return Array.from(markerMap.values());
144
+ }, ...(ngDevMode ? [{ debugName: "markers" }] : /* istanbul ignore next */ []));
145
+ }
146
+ isCustomEdge(type) {
147
+ const resolvedType = type || 'default';
148
+ // It's custom if the user registered a type AND it's not a built-in name,
149
+ // OR the user explicitly overrode a built-in name with their own component
150
+ const customTypes = this.customEdgeTypes();
151
+ return resolvedType in customTypes;
152
+ }
153
+ getEdgePath(ei) {
154
+ const type = ei['type'] || 'default';
155
+ const params = {
156
+ sourceX: ei['sourceX'],
157
+ sourceY: ei['sourceY'],
158
+ targetX: ei['targetX'],
159
+ targetY: ei['targetY'],
160
+ sourcePosition: (ei['sourcePosition'] ?? Position.Bottom),
161
+ targetPosition: (ei['targetPosition'] ?? Position.Top),
162
+ };
163
+ switch (type) {
164
+ case 'straight':
165
+ return getStraightPath(params)[0];
166
+ case 'step':
167
+ return getSmoothStepPath({ ...params, borderRadius: 0 })[0];
168
+ case 'smoothstep':
169
+ return getSmoothStepPath(params)[0];
170
+ case 'default':
171
+ case 'bezier':
172
+ default:
173
+ return getBezierPath(params)[0];
174
+ }
175
+ }
176
+ getEdgeComponent(type) {
177
+ const resolvedType = type || 'default';
178
+ return this.customEdgeTypes()[resolvedType] ?? builtInEdgeTypes[resolvedType] ?? BezierEdgeComponent;
179
+ }
180
+ getEdgeInputs(edge) {
181
+ const sourceNode = this.store.nodeLookup.get(edge.source);
182
+ const targetNode = this.store.nodeLookup.get(edge.target);
183
+ const sourceHandle = sourceNode?.internals?.handleBounds?.source?.find((h) => h.id === edge.sourceHandle || (!edge.sourceHandle && h.id === null)) ?? sourceNode?.internals?.handleBounds?.source?.[0];
184
+ const targetHandle = targetNode?.internals?.handleBounds?.target?.find((h) => h.id === edge.targetHandle || (!edge.targetHandle && h.id === null)) ?? targetNode?.internals?.handleBounds?.target?.[0];
185
+ const sourcePos = sourceNode?.internals?.positionAbsolute ?? sourceNode?.position ?? { x: 0, y: 0 };
186
+ const targetPos = targetNode?.internals?.positionAbsolute ?? targetNode?.position ?? { x: 0, y: 0 };
187
+ const sourceW = sourceNode?.measured?.width ?? sourceNode?.width ?? 150;
188
+ const sourceH = sourceNode?.measured?.height ?? sourceNode?.height ?? 40;
189
+ const targetW = targetNode?.measured?.width ?? targetNode?.width ?? 150;
190
+ const targetH = targetNode?.measured?.height ?? targetNode?.height ?? 40;
191
+ let sourceX, sourceY, targetX, targetY;
192
+ let srcPos = sourceHandle?.position ?? edge.sourcePosition ?? Position.Bottom;
193
+ let tgtPos = targetHandle?.position ?? edge.targetPosition ?? Position.Top;
194
+ if (sourceHandle) {
195
+ sourceX = sourcePos.x + sourceHandle.x + (sourceHandle.width ?? 0) / 2;
196
+ sourceY = sourcePos.y + sourceHandle.y + (sourceHandle.height ?? 0) / 2;
197
+ }
198
+ else {
199
+ sourceX = sourcePos.x + sourceW / 2;
200
+ sourceY = sourcePos.y + sourceH;
201
+ }
202
+ if (targetHandle) {
203
+ targetX = targetPos.x + targetHandle.x + (targetHandle.width ?? 0) / 2;
204
+ targetY = targetPos.y + targetHandle.y + (targetHandle.height ?? 0) / 2;
205
+ }
206
+ else {
207
+ targetX = targetPos.x + targetW / 2;
208
+ targetY = targetPos.y;
209
+ }
210
+ return {
211
+ id: edge.id,
212
+ source: edge.source,
213
+ target: edge.target,
214
+ type: edge.type,
215
+ data: edge.data,
216
+ selected: edge.selected ?? false,
217
+ animated: edge.animated ?? false,
218
+ label: edge.label,
219
+ selectable: edge.selectable,
220
+ deletable: edge.deletable,
221
+ sourceX,
222
+ sourceY,
223
+ targetX,
224
+ targetY,
225
+ sourcePosition: srcPos,
226
+ targetPosition: tgtPos,
227
+ markerStart: this.getMarkerUrl(edge.markerStart),
228
+ markerEnd: this.getMarkerUrl(edge.markerEnd),
229
+ interactionWidth: edge.interactionWidth,
230
+ pathOptions: edge.pathOptions,
231
+ sourceHandleId: edge.sourceHandle,
232
+ targetHandleId: edge.targetHandle,
233
+ };
234
+ }
235
+ onEdgeEvent(event, edge, eventType) {
236
+ switch (eventType) {
237
+ case 'click':
238
+ if (this.store.elementsSelectable()) {
239
+ this.store.addSelectedEdges([edge.id]);
240
+ }
241
+ this.edgeClick.emit({ event, edge });
242
+ break;
243
+ case 'dblclick':
244
+ this.edgeDoubleClick.emit({ event, edge });
245
+ break;
246
+ case 'contextmenu':
247
+ this.edgeContextMenu.emit({ event, edge });
248
+ break;
249
+ case 'mouseenter':
250
+ this.edgeMouseEnter.emit({ event, edge });
251
+ break;
252
+ case 'mousemove':
253
+ this.edgeMouseMove.emit({ event, edge });
254
+ break;
255
+ case 'mouseleave':
256
+ this.edgeMouseLeave.emit({ event, edge });
257
+ break;
258
+ }
259
+ }
260
+ getEdgeCenterX(ei) {
261
+ return (ei['sourceX'] + ei['targetX']) / 2;
262
+ }
263
+ getEdgeCenterY(ei) {
264
+ return (ei['sourceY'] + ei['targetY']) / 2;
265
+ }
266
+ getEdgeAriaLabel(edge) {
267
+ if (edge.ariaLabel)
268
+ return edge.ariaLabel;
269
+ return `Edge from ${edge.source} to ${edge.target}`;
270
+ }
271
+ isEdgeReconnectable(edge) {
272
+ if (edge.reconnectable !== undefined)
273
+ return !!edge.reconnectable;
274
+ return this.store.edgesReconnectable();
275
+ }
276
+ shiftX(x, shift, position) {
277
+ if (position === Position.Left)
278
+ return x - shift;
279
+ if (position === Position.Right)
280
+ return x + shift;
281
+ return x;
282
+ }
283
+ shiftY(y, shift, position) {
284
+ if (position === Position.Top)
285
+ return y - shift;
286
+ if (position === Position.Bottom)
287
+ return y + shift;
288
+ return y;
289
+ }
290
+ onReconnectSourceMouseDown(event, edge) {
291
+ if (event.button !== 0)
292
+ return;
293
+ this.handleEdgeReconnect(event, edge, {
294
+ nodeId: edge.target,
295
+ id: edge.targetHandle ?? null,
296
+ type: 'target',
297
+ });
298
+ }
299
+ onReconnectTargetMouseDown(event, edge) {
300
+ if (event.button !== 0)
301
+ return;
302
+ this.handleEdgeReconnect(event, edge, {
303
+ nodeId: edge.source,
304
+ id: edge.sourceHandle ?? null,
305
+ type: 'source',
306
+ });
307
+ }
308
+ handleEdgeReconnect(event, edge, oppositeHandle) {
309
+ const store = this.store;
310
+ const isTarget = oppositeHandle.type === 'target';
311
+ this.reconnectStart.emit({ event, edge, handleType: oppositeHandle.type });
312
+ XYHandle.onPointerDown(event, {
313
+ autoPanOnConnect: store.autoPanOnConnect(),
314
+ connectionMode: store.connectionMode(),
315
+ connectionRadius: store.connectionRadius(),
316
+ domNode: store.domNode(),
317
+ handleId: oppositeHandle.id,
318
+ nodeId: oppositeHandle.nodeId,
319
+ nodeLookup: store.nodeLookup,
320
+ isTarget,
321
+ edgeUpdaterType: oppositeHandle.type,
322
+ lib: 'ng',
323
+ flowId: store.rfId(),
324
+ cancelConnection: () => store.cancelConnection(),
325
+ panBy: (delta) => store.panBy(delta),
326
+ updateConnection: (conn) => store.updateConnection(conn),
327
+ getTransform: () => store.transform(),
328
+ getFromHandle: () => {
329
+ const conn = store.connection();
330
+ return conn.inProgress ? conn.fromHandle : null;
331
+ },
332
+ autoPanSpeed: store.autoPanSpeed(),
333
+ dragThreshold: store.connectionDragThreshold(),
334
+ handleDomNode: event.currentTarget,
335
+ isValidConnection: store.isValidConnection(),
336
+ onConnect: (connection) => {
337
+ this.reconnect.emit({ edge, connection });
338
+ },
339
+ onReconnectEnd: (evt, connectionState) => {
340
+ this.reconnectEnd.emit({ event: evt, edge, handleType: oppositeHandle.type, connectionState });
341
+ },
342
+ });
343
+ }
344
+ addMarker(map, marker) {
345
+ if (!marker || typeof marker === 'string')
346
+ return;
347
+ const id = getMarkerId(marker, undefined);
348
+ if (!map.has(id)) {
349
+ map.set(id, { ...marker, id });
350
+ }
351
+ }
352
+ getMarkerUrl(marker) {
353
+ if (!marker)
354
+ return undefined;
355
+ if (typeof marker === 'string')
356
+ return marker;
357
+ return `url(#${getMarkerId(marker, undefined)})`;
358
+ }
359
+ static { this.ɵfac = function EdgeRendererComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || EdgeRendererComponent)(); }; }
360
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: EdgeRendererComponent, selectors: [["ng-flow-edge-renderer"]], hostAttrs: [1, "ng-flow__edges", "xy-flow__edges", 2, "position", "absolute", "width", "100%", "height", "100%", "top", "0", "left", "0", "pointer-events", "none"], inputs: { reconnectRadius: [1, "reconnectRadius"], customEdgeTypes: [1, "customEdgeTypes"] }, outputs: { edgeClick: "edgeClick", edgeDoubleClick: "edgeDoubleClick", edgeContextMenu: "edgeContextMenu", edgeMouseEnter: "edgeMouseEnter", edgeMouseMove: "edgeMouseMove", edgeMouseLeave: "edgeMouseLeave", reconnect: "reconnect", reconnectStart: "reconnectStart", reconnectEnd: "reconnectEnd" }, decls: 9, vars: 0, consts: [[2, "position", "absolute", "width", "100%", "height", "100%", "overflow", "visible", "pointer-events", "none"], ["viewBox", "-10 -10 20 20", "markerUnits", "strokeWidth", "orient", "auto-start-reverse", "refX", "0", "refY", "0", 3, "id"], ["role", "img", 1, "ng-flow__edge", "xy-flow__edge", 2, "overflow", "visible", "position", "absolute", "width", "100%", "height", "100%", "pointer-events", "none", 3, "class", "selected", "animated", "selectable", "z-index"], [1, "xy-flow__edgelabel-renderer", 2, "position", "absolute", "width", "100%", "height", "100%", "pointer-events", "none", "top", "0", "left", "0"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "1", "points", "-5,-4 0,0 -5,4", 1, "xy-flow__arrowhead"], ["role", "img", 1, "ng-flow__edge", "xy-flow__edge", 2, "overflow", "visible", "position", "absolute", "width", "100%", "height", "100%", "pointer-events", "none"], [2, "pointer-events", "visibleStroke", 3, "click", "dblclick", "contextmenu", "mouseenter", "mousemove", "mouseleave"], [4, "ngComponentOutlet", "ngComponentOutletInputs"], ["fill", "none", "stroke", "transparent", "stroke-width", "20", 1, "xy-flow__edge-interaction"], [1, "xy-flow__edge-path"], ["stroke", "transparent", "fill", "transparent", 1, "xy-flow__edgeupdater", "xy-flow__edgeupdater-source", 3, "mousedown"], ["stroke", "transparent", "fill", "transparent", 1, "xy-flow__edgeupdater", "xy-flow__edgeupdater-target", 3, "mousedown"], [1, "xy-flow__edge-label", 3, "position", "transform", "pointer-events"], [1, "xy-flow__edge-label"]], template: function EdgeRendererComponent_Template(rf, ctx) { if (rf & 1) {
361
+ i0.ɵɵnamespaceSVG();
362
+ i0.ɵɵelementStart(0, "svg", 0)(1, "defs");
363
+ i0.ɵɵrepeaterCreate(2, EdgeRendererComponent_For_3_Template, 2, 7, ":svg:marker", 1, _forTrack0);
364
+ i0.ɵɵelementEnd()();
365
+ i0.ɵɵrepeaterCreate(4, EdgeRendererComponent_For_5_Template, 6, 15, ":svg:svg", 2, _forTrack0);
366
+ i0.ɵɵnamespaceHTML();
367
+ i0.ɵɵelementStart(6, "div", 3);
368
+ i0.ɵɵrepeaterCreate(7, EdgeRendererComponent_For_8_Template, 1, 1, null, null, _forTrack0);
369
+ i0.ɵɵelementEnd();
370
+ } if (rf & 2) {
371
+ i0.ɵɵadvance(2);
372
+ i0.ɵɵrepeater(ctx.markers());
373
+ i0.ɵɵadvance(2);
374
+ i0.ɵɵrepeater(ctx.visibleEdges());
375
+ i0.ɵɵadvance(3);
376
+ i0.ɵɵrepeater(ctx.visibleEdges());
377
+ } }, dependencies: [CommonModule, i1.NgComponentOutlet], encapsulation: 2, changeDetection: 0 }); }
378
+ }
379
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EdgeRendererComponent, [{
380
+ type: Component,
381
+ args: [{
382
+ selector: 'ng-flow-edge-renderer',
383
+ standalone: true,
384
+ imports: [CommonModule, NgComponentOutlet],
385
+ schemas: [NO_ERRORS_SCHEMA],
386
+ changeDetection: ChangeDetectionStrategy.OnPush,
387
+ host: {
388
+ 'class': 'ng-flow__edges xy-flow__edges',
389
+ 'style': 'position: absolute; width: 100%; height: 100%; top: 0; left: 0; pointer-events: none;',
390
+ },
391
+ template: `
392
+ <svg style="position: absolute; width: 100%; height: 100%; overflow: visible; pointer-events: none;">
393
+ <defs>
394
+ @for (marker of markers(); track marker.id) {
395
+ <marker
396
+ [id]="marker.id"
397
+ [attr.markerWidth]="marker.width ?? 12.5"
398
+ [attr.markerHeight]="marker.height ?? 12.5"
399
+ viewBox="-10 -10 20 20"
400
+ markerUnits="strokeWidth"
401
+ orient="auto-start-reverse"
402
+ refX="0"
403
+ refY="0"
404
+ >
405
+ <polyline
406
+ class="xy-flow__arrowhead"
407
+ [class.arrowclosed]="marker.type === 'arrowclosed'"
408
+ [attr.stroke]="marker.color || 'currentColor'"
409
+ [attr.fill]="marker.type === 'arrowclosed' ? (marker.color || 'currentColor') : 'none'"
410
+ stroke-linecap="round"
411
+ stroke-linejoin="round"
412
+ stroke-width="1"
413
+ points="-5,-4 0,0 -5,4"
414
+ />
415
+ </marker>
416
+ }
417
+ </defs>
418
+ </svg>
419
+ @for (edge of visibleEdges(); track edge.id) {
420
+ @let ei = getEdgeInputs(edge);
421
+ <svg
422
+ class="ng-flow__edge xy-flow__edge"
423
+ [class]="'xy-flow__edge-' + (edge.type || 'default')"
424
+ [class.selected]="edge.selected"
425
+ [class.animated]="edge.animated"
426
+ [class.selectable]="edge.selectable !== false"
427
+ [style.z-index]="edge.zIndex ?? 0"
428
+ [attr.aria-label]="getEdgeAriaLabel(edge)"
429
+ role="img"
430
+ style="overflow: visible; position: absolute; width: 100%; height: 100%; pointer-events: none;"
431
+ >
432
+ <g
433
+ [attr.data-id]="edge.id"
434
+ style="pointer-events: visibleStroke;"
435
+ (click)="onEdgeEvent($event, edge, 'click')"
436
+ (dblclick)="onEdgeEvent($event, edge, 'dblclick')"
437
+ (contextmenu)="onEdgeEvent($event, edge, 'contextmenu')"
438
+ (mouseenter)="onEdgeEvent($event, edge, 'mouseenter')"
439
+ (mousemove)="onEdgeEvent($event, edge, 'mousemove')"
440
+ (mouseleave)="onEdgeEvent($event, edge, 'mouseleave')"
441
+ >
442
+ @if (isCustomEdge(edge.type)) {
443
+ <ng-container
444
+ *ngComponentOutlet="getEdgeComponent(edge.type); inputs: ei"
445
+ />
446
+ } @else {
447
+ <path
448
+ class="xy-flow__edge-interaction"
449
+ [attr.d]="getEdgePath(ei)"
450
+ fill="none"
451
+ stroke="transparent"
452
+ stroke-width="20"
453
+ />
454
+ <path
455
+ class="xy-flow__edge-path"
456
+ [attr.d]="getEdgePath(ei)"
457
+ [attr.marker-start]="ei['markerStart']"
458
+ [attr.marker-end]="ei['markerEnd']"
459
+ />
460
+ }
461
+ @if (isEdgeReconnectable(edge)) {
462
+ <circle
463
+ class="xy-flow__edgeupdater xy-flow__edgeupdater-source"
464
+ [attr.cx]="shiftX(ei['sourceX'], reconnectRadius(), ei['sourcePosition'])"
465
+ [attr.cy]="shiftY(ei['sourceY'], reconnectRadius(), ei['sourcePosition'])"
466
+ [attr.r]="reconnectRadius()"
467
+ stroke="transparent"
468
+ fill="transparent"
469
+ (mousedown)="onReconnectSourceMouseDown($event, edge)"
470
+ />
471
+ <circle
472
+ class="xy-flow__edgeupdater xy-flow__edgeupdater-target"
473
+ [attr.cx]="shiftX(ei['targetX'], reconnectRadius(), ei['targetPosition'])"
474
+ [attr.cy]="shiftY(ei['targetY'], reconnectRadius(), ei['targetPosition'])"
475
+ [attr.r]="reconnectRadius()"
476
+ stroke="transparent"
477
+ fill="transparent"
478
+ (mousedown)="onReconnectTargetMouseDown($event, edge)"
479
+ />
480
+ }
481
+ </g>
482
+ </svg>
483
+ }
484
+ <div class="xy-flow__edgelabel-renderer" style="position: absolute; width: 100%; height: 100%; pointer-events: none; top: 0; left: 0;">
485
+ @for (edge of visibleEdges(); track edge.id) {
486
+ @if (edge.label) {
487
+ @let ei = getEdgeInputs(edge);
488
+ <div
489
+ class="xy-flow__edge-label"
490
+ [style.position]="'absolute'"
491
+ [style.transform]="'translate(-50%, -50%) translate(' + getEdgeCenterX(ei) + 'px, ' + getEdgeCenterY(ei) + 'px)'"
492
+ [style.pointer-events]="'all'"
493
+ >
494
+ {{ edge.label }}
495
+ </div>
496
+ }
497
+ }
498
+ </div>
499
+ `,
500
+ }]
501
+ }], null, { reconnectRadius: [{ type: i0.Input, args: [{ isSignal: true, alias: "reconnectRadius", required: false }] }], edgeClick: [{ type: i0.Output, args: ["edgeClick"] }], edgeDoubleClick: [{ type: i0.Output, args: ["edgeDoubleClick"] }], edgeContextMenu: [{ type: i0.Output, args: ["edgeContextMenu"] }], edgeMouseEnter: [{ type: i0.Output, args: ["edgeMouseEnter"] }], edgeMouseMove: [{ type: i0.Output, args: ["edgeMouseMove"] }], edgeMouseLeave: [{ type: i0.Output, args: ["edgeMouseLeave"] }], customEdgeTypes: [{ type: i0.Input, args: [{ isSignal: true, alias: "customEdgeTypes", required: false }] }], reconnect: [{ type: i0.Output, args: ["reconnect"] }], reconnectStart: [{ type: i0.Output, args: ["reconnectStart"] }], reconnectEnd: [{ type: i0.Output, args: ["reconnectEnd"] }] }); })();
502
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(EdgeRendererComponent, { className: "EdgeRendererComponent", filePath: "lib/container/edge-renderer/edge-renderer.component.ts", lineNumber: 165 }); })();
503
+ //# sourceMappingURL=edge-renderer.component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"edge-renderer.component.js","sourceRoot":"","sources":["../../../../../src/lib/container/edge-renderer/edge-renderer.component.ts"],"names":[],"mappings":"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"}