@foblex/flow 17.9.81 → 18.0.0

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 (742) hide show
  1. package/LICENSE +1 -1
  2. package/domain/css-cls.d.ts +0 -3
  3. package/domain/f-connection/add-connection-for-create-to-store/add-connection-for-create-to-store-request.d.ts +3 -3
  4. package/domain/f-connection/add-connection-for-create-to-store/{add-connection-for-create-to-store.execution.d.ts → add-connection-for-create-to-store.d.ts} +4 -4
  5. package/domain/f-connection/add-connection-for-create-to-store/index.d.ts +1 -1
  6. package/domain/f-connection/add-connection-marker-to-store/add-connection-marker-to-store-request.d.ts +3 -3
  7. package/domain/f-connection/add-connection-marker-to-store/{add-connection-marker-to-store.execution.d.ts → add-connection-marker-to-store.d.ts} +4 -4
  8. package/domain/f-connection/add-connection-marker-to-store/index.d.ts +1 -1
  9. package/domain/f-connection/add-connection-to-store/add-connection-to-store-request.d.ts +3 -3
  10. package/domain/f-connection/add-connection-to-store/{add-connection-to-store.execution.d.ts → add-connection-to-store.d.ts} +4 -4
  11. package/domain/f-connection/add-connection-to-store/index.d.ts +1 -1
  12. package/domain/f-connection/add-snap-connection-to-store/add-snap-connection-to-store-request.d.ts +3 -3
  13. package/domain/f-connection/add-snap-connection-to-store/{add-snap-connection-to-store.execution.d.ts → add-snap-connection-to-store.d.ts} +4 -4
  14. package/domain/f-connection/add-snap-connection-to-store/index.d.ts +1 -1
  15. package/domain/f-connection/create-connection-markers/create-connection-markers-request.d.ts +3 -3
  16. package/domain/f-connection/create-connection-markers/{create-connection-markers.execution.d.ts → create-connection-markers.d.ts} +7 -8
  17. package/domain/f-connection/create-connection-markers/index.d.ts +1 -1
  18. package/domain/f-connection/index.d.ts +1 -1
  19. package/domain/f-connection/providers.d.ts +11 -11
  20. package/domain/f-connection/redraw-connections/redraw-connections.d.ts +6 -4
  21. package/domain/f-connection/remove-connection-for-create-from-store/index.d.ts +1 -1
  22. package/domain/f-connection/remove-connection-for-create-from-store/{remove-connection-for-create-from-store.execution.d.ts → remove-connection-for-create-from-store.d.ts} +4 -4
  23. package/domain/f-connection/remove-connection-from-store/index.d.ts +1 -1
  24. package/domain/f-connection/remove-connection-from-store/remove-connection-from-store-request.d.ts +3 -3
  25. package/domain/f-connection/remove-connection-from-store/{remove-connection-from-store.execution.d.ts → remove-connection-from-store.d.ts} +4 -5
  26. package/domain/f-connection/remove-connection-marker-from-store/index.d.ts +1 -1
  27. package/domain/f-connection/remove-connection-marker-from-store/remove-connection-marker-from-store-request.d.ts +3 -3
  28. package/domain/f-connection/remove-connection-marker-from-store/{remove-connection-marker-from-store.execution.d.ts → remove-connection-marker-from-store.d.ts} +4 -4
  29. package/domain/f-connection/remove-connection-waypoint/index.d.ts +2 -0
  30. package/domain/f-connection/remove-connection-waypoint/remove-connection-waypoint-request.d.ts +6 -0
  31. package/domain/f-connection/remove-connection-waypoint/remove-connection-waypoint.d.ts +11 -0
  32. package/domain/f-connection/remove-snap-connection-from-store/index.d.ts +1 -1
  33. package/domain/f-connection/remove-snap-connection-from-store/{remove-snap-connection-from-store.execution.d.ts → remove-snap-connection-from-store.d.ts} +4 -4
  34. package/domain/f-draggable/on-pointer-move/on-pointer-move.execution.d.ts +1 -1
  35. package/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence.execution.d.ts +1 -1
  36. package/domain/f-flow/calculate-flow-state/calculate-connections-state/calculate-connections-state-request.d.ts +3 -0
  37. package/domain/f-flow/calculate-flow-state/calculate-connections-state/calculate-connections-state.d.ts +14 -0
  38. package/domain/f-flow/calculate-flow-state/calculate-connections-state/index.d.ts +2 -0
  39. package/domain/f-flow/calculate-flow-state/calculate-flow-state-request.d.ts +3 -0
  40. package/domain/f-flow/calculate-flow-state/calculate-flow-state.d.ts +17 -0
  41. package/domain/f-flow/calculate-flow-state/calculate-nodes-state/calculate-nodes-state-request.d.ts +6 -0
  42. package/domain/f-flow/calculate-flow-state/calculate-nodes-state/calculate-nodes-state.d.ts +15 -0
  43. package/domain/f-flow/calculate-flow-state/calculate-nodes-state/index.d.ts +2 -0
  44. package/domain/f-flow/calculate-flow-state/i-f-flow-state-connection.d.ts +13 -0
  45. package/domain/f-flow/{get-flow-state → calculate-flow-state}/i-f-flow-state-connector.d.ts +1 -1
  46. package/domain/f-flow/{get-flow-state → calculate-flow-state}/index.d.ts +4 -4
  47. package/domain/f-flow/calculate-flow-state/providers.d.ts +7 -0
  48. package/domain/f-flow/index.d.ts +1 -1
  49. package/domain/f-flow/providers.d.ts +1 -1
  50. package/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions.d.ts +1 -1
  51. package/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position.d.ts +1 -1
  52. package/domain/f-node/calculate-connectors-connectable-sides/constants/calculatable-sides.d.ts +1 -1
  53. package/domain/f-node/calculate-connectors-connectable-sides/models/t-calculate-mode.d.ts +1 -1
  54. package/domain/f-node/calculate-connectors-connectable-sides/utils/determine-side.d.ts +1 -1
  55. package/domain/f-node/calculate-connectors-connectable-sides/utils/is-calculate-mode.d.ts +1 -1
  56. package/domain/f-node/calculate-input-connections/calculate-input-connections.d.ts +1 -1
  57. package/domain/f-node/calculate-output-connections/calculate-output-connections.d.ts +1 -1
  58. package/domain/f-selection/calculate-selectable-items/calculate-selectable-items-request.d.ts +3 -0
  59. package/domain/f-selection/{get-can-be-selected-items/get-can-be-selected-items.execution.d.ts → calculate-selectable-items/calculate-selectable-items.d.ts} +8 -8
  60. package/domain/f-selection/calculate-selectable-items/index.d.ts +3 -0
  61. package/domain/f-selection/index.d.ts +1 -1
  62. package/domain/f-selection/providers.d.ts +2 -2
  63. package/domain/f-zoom/add-zoom-to-store/add-zoom-to-store-request.d.ts +2 -2
  64. package/domain/f-zoom/add-zoom-to-store/add-zoom-to-store.d.ts +12 -0
  65. package/domain/f-zoom/add-zoom-to-store/index.d.ts +1 -1
  66. package/domain/f-zoom/providers.d.ts +5 -5
  67. package/domain/f-zoom/remove-zoom-from-store/index.d.ts +1 -1
  68. package/domain/f-zoom/remove-zoom-from-store/{remove-zoom-from-store.execution.d.ts → remove-zoom-from-store.d.ts} +3 -3
  69. package/domain/f-zoom/reset-zoom/index.d.ts +1 -1
  70. package/domain/f-zoom/reset-zoom/reset-zoom.d.ts +13 -0
  71. package/domain/f-zoom/set-zoom/index.d.ts +1 -1
  72. package/domain/f-zoom/set-zoom/{set-zoom.execution.d.ts → set-zoom.d.ts} +6 -6
  73. package/domain/index.d.ts +0 -1
  74. package/domain/providers.d.ts +1 -1
  75. package/drag-toolkit/pointer-events/i-pointer-event.d.ts +6 -4
  76. package/esm2022/domain/css-cls.mjs +1 -4
  77. package/esm2022/domain/f-connection/add-connection-for-create-to-store/add-connection-for-create-to-store-request.mjs +4 -4
  78. package/esm2022/domain/f-connection/add-connection-for-create-to-store/add-connection-for-create-to-store.mjs +25 -0
  79. package/esm2022/domain/f-connection/add-connection-for-create-to-store/index.mjs +2 -2
  80. package/esm2022/domain/f-connection/add-connection-marker-to-store/add-connection-marker-to-store-request.mjs +4 -4
  81. package/esm2022/domain/f-connection/add-connection-marker-to-store/add-connection-marker-to-store.mjs +25 -0
  82. package/esm2022/domain/f-connection/add-connection-marker-to-store/index.mjs +2 -2
  83. package/esm2022/domain/f-connection/add-connection-to-store/add-connection-to-store-request.mjs +4 -4
  84. package/esm2022/domain/f-connection/add-connection-to-store/add-connection-to-store.mjs +26 -0
  85. package/esm2022/domain/f-connection/add-connection-to-store/index.mjs +2 -2
  86. package/esm2022/domain/f-connection/add-snap-connection-to-store/add-snap-connection-to-store-request.mjs +4 -4
  87. package/esm2022/domain/f-connection/add-snap-connection-to-store/add-snap-connection-to-store.mjs +25 -0
  88. package/esm2022/domain/f-connection/add-snap-connection-to-store/index.mjs +2 -2
  89. package/esm2022/domain/f-connection/create-connection-markers/create-connection-markers-request.mjs +4 -4
  90. package/esm2022/domain/f-connection/create-connection-markers/create-connection-markers.mjs +64 -0
  91. package/esm2022/domain/f-connection/create-connection-markers/index.mjs +2 -2
  92. package/esm2022/domain/f-connection/index.mjs +2 -2
  93. package/esm2022/domain/f-connection/providers.mjs +21 -21
  94. package/esm2022/domain/f-connection/redraw-connections/redraw-connections.mjs +24 -21
  95. package/esm2022/domain/f-connection/remove-connection-for-create-from-store/index.mjs +2 -2
  96. package/esm2022/domain/f-connection/remove-connection-for-create-from-store/remove-connection-for-create-from-store.mjs +25 -0
  97. package/esm2022/domain/f-connection/remove-connection-from-store/index.mjs +2 -2
  98. package/esm2022/domain/f-connection/remove-connection-from-store/remove-connection-from-store-request.mjs +4 -4
  99. package/esm2022/domain/f-connection/remove-connection-from-store/remove-connection-from-store.mjs +33 -0
  100. package/esm2022/domain/f-connection/remove-connection-marker-from-store/index.mjs +2 -2
  101. package/esm2022/domain/f-connection/remove-connection-marker-from-store/remove-connection-marker-from-store-request.mjs +4 -4
  102. package/esm2022/domain/f-connection/remove-connection-marker-from-store/remove-connection-marker-from-store.mjs +25 -0
  103. package/esm2022/domain/f-connection/remove-connection-waypoint/index.mjs +3 -0
  104. package/esm2022/domain/f-connection/remove-connection-waypoint/remove-connection-waypoint-request.mjs +10 -0
  105. package/esm2022/domain/f-connection/remove-connection-waypoint/remove-connection-waypoint.mjs +40 -0
  106. package/esm2022/domain/f-connection/remove-snap-connection-from-store/index.mjs +2 -2
  107. package/esm2022/domain/f-connection/remove-snap-connection-from-store/remove-snap-connection-from-store.mjs +25 -0
  108. package/esm2022/domain/f-connectors/calculate-source-connectors-to-connect/calculate-source-connectors-to-connect.mjs +1 -1
  109. package/esm2022/domain/f-connectors/calculate-target-connectors-to-connect/calculate-target-connectors-to-connect.mjs +1 -1
  110. package/esm2022/domain/f-draggable/add-dnd-to-store/add-dnd-to-store-request.mjs +1 -1
  111. package/esm2022/domain/f-draggable/on-pointer-move/on-pointer-move.execution.mjs +5 -5
  112. package/esm2022/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence-request.mjs +1 -1
  113. package/esm2022/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence.execution.mjs +3 -5
  114. package/esm2022/domain/f-flow/calculate-flow-state/calculate-connections-state/calculate-connections-state-request.mjs +4 -0
  115. package/esm2022/domain/f-flow/calculate-flow-state/calculate-connections-state/calculate-connections-state.mjs +38 -0
  116. package/esm2022/domain/f-flow/calculate-flow-state/calculate-connections-state/index.mjs +3 -0
  117. package/esm2022/domain/f-flow/calculate-flow-state/calculate-flow-state-request.mjs +4 -0
  118. package/esm2022/domain/f-flow/calculate-flow-state/calculate-flow-state.mjs +45 -0
  119. package/esm2022/domain/f-flow/calculate-flow-state/calculate-nodes-state/calculate-nodes-state-request.mjs +8 -0
  120. package/esm2022/domain/f-flow/calculate-flow-state/calculate-nodes-state/calculate-nodes-state.mjs +58 -0
  121. package/esm2022/domain/f-flow/calculate-flow-state/calculate-nodes-state/index.mjs +3 -0
  122. package/esm2022/domain/f-flow/calculate-flow-state/i-f-flow-state-connection.mjs +2 -0
  123. package/esm2022/domain/f-flow/calculate-flow-state/i-f-flow-state-connector.mjs +2 -0
  124. package/esm2022/domain/f-flow/calculate-flow-state/i-f-flow-state-node.mjs +2 -0
  125. package/esm2022/domain/f-flow/calculate-flow-state/i-f-flow-state.mjs +2 -0
  126. package/esm2022/domain/f-flow/calculate-flow-state/index.mjs +10 -0
  127. package/esm2022/domain/f-flow/calculate-flow-state/providers.mjs +12 -0
  128. package/esm2022/domain/f-flow/index.mjs +2 -2
  129. package/esm2022/domain/f-flow/providers.mjs +2 -2
  130. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions.mjs +1 -1
  131. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position.mjs +2 -2
  132. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectors-connectable-sides.mjs +2 -2
  133. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/constants/calculatable-sides.mjs +2 -2
  134. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/models/t-calculate-mode.mjs +1 -1
  135. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/utils/determine-side.mjs +2 -2
  136. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/utils/is-calculate-mode.mjs +2 -2
  137. package/esm2022/domain/f-node/calculate-input-connections/calculate-input-connections.mjs +1 -1
  138. package/esm2022/domain/f-node/calculate-output-connections/calculate-output-connections.mjs +1 -1
  139. package/esm2022/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed.mjs +2 -2
  140. package/esm2022/domain/f-selection/calculate-selectable-items/calculate-selectable-items-request.mjs +4 -0
  141. package/esm2022/domain/f-selection/calculate-selectable-items/calculate-selectable-items.mjs +70 -0
  142. package/esm2022/domain/f-selection/calculate-selectable-items/i-can-be-selected-element-and-rect.mjs +2 -0
  143. package/esm2022/domain/f-selection/calculate-selectable-items/index.mjs +4 -0
  144. package/esm2022/domain/f-selection/clear-selection/clear-selection.request.mjs +1 -1
  145. package/esm2022/domain/f-selection/index.mjs +2 -2
  146. package/esm2022/domain/f-selection/providers.mjs +3 -3
  147. package/esm2022/domain/f-zoom/add-zoom-to-store/add-zoom-to-store-request.mjs +4 -4
  148. package/esm2022/domain/f-zoom/add-zoom-to-store/add-zoom-to-store.mjs +28 -0
  149. package/esm2022/domain/f-zoom/add-zoom-to-store/index.mjs +2 -2
  150. package/esm2022/domain/f-zoom/providers.mjs +6 -11
  151. package/esm2022/domain/f-zoom/remove-zoom-from-store/index.mjs +2 -2
  152. package/esm2022/domain/f-zoom/remove-zoom-from-store/remove-zoom-from-store.mjs +28 -0
  153. package/esm2022/domain/f-zoom/reset-zoom/index.mjs +2 -2
  154. package/esm2022/domain/f-zoom/reset-zoom/reset-zoom.mjs +30 -0
  155. package/esm2022/domain/f-zoom/set-zoom/index.mjs +2 -2
  156. package/esm2022/domain/f-zoom/set-zoom/set-zoom.mjs +54 -0
  157. package/esm2022/domain/index.mjs +1 -2
  158. package/esm2022/drag-toolkit/pointer-events/i-pointer-event.mjs +15 -10
  159. package/esm2022/f-canvas/domain/{f-canvas-change.event.mjs → f-canvas-change-event.mjs} +1 -1
  160. package/esm2022/f-canvas/domain/index.mjs +2 -2
  161. package/esm2022/f-canvas/f-canvas-base.mjs +7 -5
  162. package/esm2022/f-canvas/f-canvas.component.mjs +26 -36
  163. package/esm2022/f-connection/f-connection/f-connection.component.mjs +10 -24
  164. package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +13 -18
  165. package/esm2022/f-connection/f-snap-connection/f-snap-connection.component.mjs +9 -15
  166. package/esm2022/f-connection/index.mjs +2 -7
  167. package/esm2022/f-connection/providers.mjs +9 -13
  168. package/esm2022/f-connection-v2/components/connection-content/f-connection-content.mjs +76 -0
  169. package/esm2022/f-connection-v2/components/connection-content/index.mjs +4 -0
  170. package/esm2022/f-connection-v2/components/connection-content/models/f-connection-content-base.mjs +10 -0
  171. package/esm2022/f-connection-v2/components/connection-content/models/index.mjs +2 -0
  172. package/esm2022/f-connection-v2/components/connection-content/utils/i-polyline-content.mjs +2 -0
  173. package/esm2022/f-connection-v2/components/connection-content/utils/index.mjs +6 -0
  174. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-content-align.mjs +6 -0
  175. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-content-layout-engine.mjs +25 -0
  176. package/esm2022/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-content-place.mjs +2 -2
  177. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-sampler/i-sampler-result.mjs +2 -0
  178. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-sampler/i-tangent.mjs +2 -0
  179. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-sampler/index.mjs +5 -0
  180. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-sampler/polyline-sampler.mjs +143 -0
  181. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-sampler/polyline.mjs +71 -0
  182. package/esm2022/f-connection-v2/components/connection-drag-handles/f-connection-drag-handle-end.mjs +35 -0
  183. package/esm2022/f-connection-v2/components/connection-drag-handles/f-connection-drag-handle-start.mjs +35 -0
  184. package/esm2022/f-connection-v2/components/connection-drag-handles/index.mjs +4 -0
  185. package/esm2022/f-connection-v2/components/connection-drag-handles/models/f-connection-drag-handle-base.mjs +17 -0
  186. package/esm2022/f-connection-v2/components/connection-drag-handles/models/index.mjs +2 -0
  187. package/esm2022/f-connection-v2/components/connection-gradient/f-connection-gradient.mjs +54 -0
  188. package/esm2022/f-connection-v2/components/connection-gradient/index.mjs +3 -0
  189. package/esm2022/f-connection-v2/components/connection-gradient/models/f-connection-gradient-base.mjs +6 -0
  190. package/esm2022/f-connection-v2/components/connection-gradient/models/index.mjs +2 -0
  191. package/esm2022/f-connection-v2/components/connection-marker/enums/e-f-marker-type.mjs +8 -0
  192. package/esm2022/f-connection-v2/components/connection-marker/enums/index.mjs +2 -0
  193. package/esm2022/f-connection-v2/components/connection-marker/f-connection-marker.mjs +50 -0
  194. package/esm2022/f-connection-v2/components/connection-marker/index.mjs +4 -0
  195. package/esm2022/f-connection-v2/components/connection-marker/models/f-connection-marker-base.mjs +6 -0
  196. package/esm2022/f-connection-v2/components/connection-marker/models/index.mjs +2 -0
  197. package/esm2022/f-connection-v2/components/connection-path/f-connection-path.mjs +66 -0
  198. package/esm2022/f-connection-v2/components/connection-path/index.mjs +3 -0
  199. package/esm2022/f-connection-v2/components/connection-path/models/f-connection-path-base.mjs +6 -0
  200. package/esm2022/f-connection-v2/components/connection-path/models/index.mjs +2 -0
  201. package/esm2022/f-connection-v2/components/connection-selection/f-connection-selection.mjs +34 -0
  202. package/esm2022/f-connection-v2/components/connection-selection/index.mjs +3 -0
  203. package/esm2022/f-connection-v2/components/connection-selection/models/f-connection-selection-base.mjs +6 -0
  204. package/esm2022/f-connection-v2/components/connection-selection/models/index.mjs +2 -0
  205. package/esm2022/f-connection-v2/components/connection-waypoints/f-connection-waypoints.mjs +50 -0
  206. package/esm2022/f-connection-v2/components/connection-waypoints/index.mjs +4 -0
  207. package/esm2022/f-connection-v2/components/connection-waypoints/models/f-connection-waypoints-base.mjs +27 -0
  208. package/esm2022/f-connection-v2/components/connection-waypoints/models/index.mjs +2 -0
  209. package/esm2022/f-connection-v2/components/connection-waypoints/utils/find-existing-waypoint.mjs +7 -0
  210. package/esm2022/f-connection-v2/components/connection-waypoints/utils/find-waypoint-candidate.mjs +7 -0
  211. package/esm2022/f-connection-v2/components/connection-waypoints/utils/index.mjs +5 -0
  212. package/esm2022/f-connection-v2/components/connection-waypoints/utils/is-pointer-inside-point.mjs +4 -0
  213. package/esm2022/f-connection-v2/components/connection-waypoints/utils/pick-waypoint.mjs +16 -0
  214. package/esm2022/f-connection-v2/components/f-connection-base.mjs +112 -0
  215. package/esm2022/f-connection-v2/components/index.mjs +9 -0
  216. package/esm2022/f-connection-v2/enums/e-f-connectable-side.mjs +12 -0
  217. package/esm2022/f-connection-v2/enums/e-f-connection-type.mjs +8 -0
  218. package/esm2022/f-connection-v2/enums/index.mjs +3 -0
  219. package/esm2022/f-connection-v2/index.mjs +5 -0
  220. package/esm2022/f-connection-v2/models/f-connection-components-parent.mjs +5 -0
  221. package/esm2022/f-connection-v2/models/f-connection-waypoints-changed-event.mjs +9 -0
  222. package/esm2022/f-connection-v2/models/index.mjs +3 -0
  223. package/esm2022/f-connection-v2/utils/connection-behaviour/connection-behaviour-builder-request.mjs +15 -0
  224. package/esm2022/f-connection-v2/utils/connection-behaviour/connection-behaviour-builder.mjs +136 -0
  225. package/esm2022/f-connection-v2/utils/connection-behaviour/enums/e-f-connection-behavior.mjs +7 -0
  226. package/esm2022/f-connection-v2/utils/connection-behaviour/enums/e-f-connection-connectable-side.mjs +12 -0
  227. package/esm2022/f-connection-v2/utils/connection-behaviour/enums/index.mjs +3 -0
  228. package/esm2022/f-connection-v2/utils/connection-behaviour/index.mjs +6 -0
  229. package/esm2022/f-connection-v2/utils/connection-behaviour/models/i-calculate-behavior-request.mjs +2 -0
  230. package/esm2022/f-connection-v2/utils/connection-behaviour/models/index.mjs +2 -0
  231. package/esm2022/f-connection-v2/utils/connection-behaviour/utils/fixed-center-behavior.mjs +12 -0
  232. package/esm2022/f-connection-v2/utils/connection-behaviour/utils/fixed-outbound-behavior.mjs +31 -0
  233. package/esm2022/f-connection-v2/utils/connection-behaviour/utils/floating-behavior.mjs +22 -0
  234. package/esm2022/f-connection-v2/utils/connection-behaviour/utils/index.mjs +4 -0
  235. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/adaptive-curve/calculate-adaptive-curve-data.mjs +74 -0
  236. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/adaptive-curve/index.mjs +2 -0
  237. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/bezier-curve/calculate-bezier-curve-data.mjs +49 -0
  238. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/bezier-curve/index.mjs +2 -0
  239. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/index.mjs +6 -0
  240. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/segment-line/build-corner-mid-points-and-apply-offsets.mjs +50 -0
  241. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/segment-line/calculate-segment-line-data.mjs +106 -0
  242. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/segment-line/create-segment-line-path.mjs +46 -0
  243. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/segment-line/index.mjs +4 -0
  244. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/straight-line/calculate-straight-line-data.mjs +28 -0
  245. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/straight-line/index.mjs +2 -0
  246. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/build-connection-anchors.mjs +4 -0
  247. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/calculate-center-between-points.mjs +8 -0
  248. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/calculate-curve-candidates.mjs +7 -0
  249. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/calculate-polyline-candidates.mjs +39 -0
  250. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/index.mjs +9 -0
  251. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/merge-point-chains.mjs +12 -0
  252. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/multi-cubic.mjs +28 -0
  253. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/normalize-polyline.mjs +30 -0
  254. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/sample-cubic-bezier-uniform.mjs +37 -0
  255. package/esm2022/f-connection-v2/utils/connection-line-builder/connection-line-builder-request.mjs +9 -0
  256. package/esm2022/f-connection-v2/utils/connection-line-builder/connection-line-builder.mjs +50 -0
  257. package/esm2022/f-connection-v2/utils/connection-line-builder/index.mjs +6 -0
  258. package/esm2022/f-connection-v2/utils/connection-line-builder/models/i-f-connection-builder-request.mjs +2 -0
  259. package/esm2022/f-connection-v2/utils/connection-line-builder/models/i-f-connection-builder-response.mjs +2 -0
  260. package/esm2022/f-connection-v2/utils/connection-line-builder/models/i-f-connection-builder.mjs +2 -0
  261. package/esm2022/f-connection-v2/utils/connection-line-builder/models/index.mjs +4 -0
  262. package/esm2022/f-connection-v2/utils/connection-line-builder/providers/f-connection-builders.mjs +3 -0
  263. package/esm2022/f-connection-v2/utils/connection-line-builder/providers/index.mjs +2 -0
  264. package/esm2022/f-connection-v2/utils/create-connection-dom-identifier.mjs +5 -0
  265. package/esm2022/f-connection-v2/utils/create-connection-selection-dom-identifier.mjs +5 -0
  266. package/esm2022/f-connection-v2/utils/create-gradient-dom-identifier.mjs +5 -0
  267. package/esm2022/f-connection-v2/utils/create-gradient-dom-url.mjs +5 -0
  268. package/esm2022/f-connection-v2/utils/index.mjs +7 -0
  269. package/esm2022/f-connectors/f-connector-base.mjs +2 -2
  270. package/esm2022/f-connectors/f-node-input/f-node-input.directive.mjs +2 -2
  271. package/esm2022/f-connectors/f-node-outlet/f-node-outlet.directive.mjs +2 -2
  272. package/esm2022/f-connectors/f-node-output/f-node-output.directive.mjs +2 -2
  273. package/esm2022/f-connectors/f-source-connector-base.mjs +8 -1
  274. package/esm2022/f-connectors/index.mjs +1 -2
  275. package/esm2022/f-draggable/domain/is-connection-under-node/is-connection-under-node.execution.mjs +1 -1
  276. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/create-connection-preparation.mjs +1 -8
  277. package/esm2022/f-draggable/f-connection/f-create-connection/f-create-connection.drag-handler.mjs +8 -6
  278. package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-connection.drag-handler.mjs +6 -3
  279. package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-source.drag-handler.mjs +8 -5
  280. package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-target.drag-handler.mjs +8 -5
  281. package/esm2022/f-draggable/f-connection/f-reassign-connection/i-f-reassign-connection-drag-result.mjs +1 -1
  282. package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-preparation/f-reassign-connection-preparation.execution.mjs +22 -27
  283. package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-preparation/is-pointer-inside-start-or-end-drag-handles.mjs +8 -7
  284. package/esm2022/f-draggable/f-connection/index.mjs +2 -1
  285. package/esm2022/f-draggable/f-connection/move-connection-waypoint/index.mjs +4 -0
  286. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-finalize/index.mjs +3 -0
  287. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-finalize/move-connection-waypoint-finalize-request.mjs +8 -0
  288. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-finalize/move-connection-waypoint-finalize.mjs +32 -0
  289. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-handler.mjs +49 -0
  290. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-preparation/index.mjs +3 -0
  291. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-preparation/move-connection-waypoint-preparation-request.mjs +10 -0
  292. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-preparation/move-connection-waypoint-preparation.mjs +65 -0
  293. package/esm2022/f-draggable/f-connection/providers.mjs +5 -2
  294. package/esm2022/f-draggable/f-drag-handler/i-f-drag-handler.mjs +1 -1
  295. package/esm2022/f-draggable/f-draggable-base.mjs +2 -2
  296. package/esm2022/f-draggable/f-draggable.directive.mjs +20 -9
  297. package/esm2022/f-draggable/f-node-move/connection-drag-handlers/base-connection.drag-handler.mjs +6 -3
  298. package/esm2022/f-draggable/f-node-move/connection-drag-handlers/source-connection.drag-handler.mjs +1 -1
  299. package/esm2022/f-draggable/f-node-move/connection-drag-handlers/source-target-connection.drag-handler.mjs +1 -1
  300. package/esm2022/f-draggable/f-node-move/connection-drag-handlers/target-connection.drag-handler.mjs +1 -1
  301. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-input-connection-handler-and-set-to-node-handler/create-input-connection-handler-and-set-to-node-handler.mjs +1 -1
  302. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-output-connection-handler-and-set-to-node-handler/create-output-connection-handler-and-set-to-node-handler.mjs +1 -1
  303. package/esm2022/f-draggable/f-node-move/create-snap-lines/create-snap-lines-request.mjs +1 -1
  304. package/esm2022/f-draggable/f-node-move/move-drag-handler.mjs +7 -5
  305. package/esm2022/f-draggable/f-node-move/move-finalize/f-node-move-finalize.execution.mjs +19 -14
  306. package/esm2022/f-draggable/f-node-move/move-preparation/index.mjs +3 -3
  307. package/esm2022/f-draggable/f-node-move/move-preparation/move-node-preparation-request.mjs +10 -0
  308. package/esm2022/f-draggable/f-node-move/move-preparation/move-node-preparation.mjs +81 -0
  309. package/esm2022/f-draggable/f-node-move/move-summary-drag-handler.mjs +1 -1
  310. package/esm2022/f-draggable/f-node-move/providers.mjs +3 -3
  311. package/esm2022/f-draggable/f-node-rotate/rotate-preparation/f-node-rotate-preparation.execution.mjs +1 -1
  312. package/esm2022/f-draggable/index.mjs +3 -2
  313. package/esm2022/f-draggable/pinch-to-zoom/constants/constants.mjs +6 -0
  314. package/esm2022/f-draggable/pinch-to-zoom/constants/index.mjs +2 -0
  315. package/esm2022/f-draggable/pinch-to-zoom/finalize/index.mjs +3 -0
  316. package/esm2022/f-draggable/pinch-to-zoom/finalize/pinch-to-zoom-finalize-request.mjs +8 -0
  317. package/esm2022/f-draggable/pinch-to-zoom/finalize/pinch-to-zoom-finalize.mjs +31 -0
  318. package/esm2022/f-draggable/pinch-to-zoom/index.mjs +7 -0
  319. package/esm2022/f-draggable/pinch-to-zoom/pinch-to-zoom-handler.mjs +68 -0
  320. package/esm2022/f-draggable/pinch-to-zoom/preparation/index.mjs +3 -0
  321. package/esm2022/f-draggable/pinch-to-zoom/preparation/pinch-to-zoom-preparation-request.mjs +8 -0
  322. package/esm2022/f-draggable/pinch-to-zoom/preparation/pinch-to-zoom-preparation.mjs +42 -0
  323. package/esm2022/f-draggable/pinch-to-zoom/providers.mjs +4 -0
  324. package/esm2022/f-draggable/pinch-to-zoom/utils/calculate-touch-center.mjs +10 -0
  325. package/esm2022/f-draggable/pinch-to-zoom/utils/calculate-touch-distance.mjs +9 -0
  326. package/esm2022/f-draggable/pinch-to-zoom/utils/index.mjs +3 -0
  327. package/esm2022/f-draggable/providers.mjs +4 -2
  328. package/esm2022/f-draggable/single-select/index.mjs +4 -0
  329. package/esm2022/f-draggable/single-select/providers.mjs +3 -0
  330. package/esm2022/f-draggable/single-select/single-select-request.mjs +10 -0
  331. package/esm2022/f-draggable/single-select/single-select.mjs +139 -0
  332. package/esm2022/f-flow/f-flow.component.mjs +39 -26
  333. package/esm2022/f-flow.module.mjs +38 -37
  334. package/esm2022/f-line-alignment/f-line-alignment-base.mjs +1 -1
  335. package/esm2022/f-line-alignment/f-line-alignment.component.mjs +10 -17
  336. package/esm2022/f-minimap/f-minimap.component.mjs +8 -9
  337. package/esm2022/f-selection-area/domain/selection-area.drag-handle.mjs +21 -19
  338. package/esm2022/f-storage/f-components-store.mjs +1 -1
  339. package/esm2022/f-storage/features/listen-components-data-changed/index.mjs +2 -2
  340. package/esm2022/f-storage/features/listen-components-data-changed/listen-data-changes-request.mjs +1 -1
  341. package/esm2022/f-storage/features/listen-components-data-changed/listen-data-changes.mjs +23 -0
  342. package/esm2022/f-storage/features/listen-count-changes/index.mjs +2 -2
  343. package/esm2022/f-storage/features/listen-count-changes/listen-count-changes-request.mjs +1 -1
  344. package/esm2022/f-storage/features/listen-count-changes/listen-count-changes.mjs +23 -0
  345. package/esm2022/f-storage/features/listen-transform-changes/index.mjs +3 -3
  346. package/esm2022/f-storage/features/listen-transform-changes/{listen-transform-changes.request.mjs → listen-transform-changes-request.mjs} +1 -1
  347. package/esm2022/f-storage/features/listen-transform-changes/listen-transform-changes.mjs +23 -0
  348. package/esm2022/f-storage/features/notify-data-changed/index.mjs +2 -2
  349. package/esm2022/f-storage/features/notify-data-changed/notify-data-changed-request.mjs +1 -1
  350. package/esm2022/f-storage/features/notify-data-changed/notify-data-changed.mjs +22 -0
  351. package/esm2022/f-storage/features/notify-transform-changed/index.mjs +3 -3
  352. package/esm2022/f-storage/features/notify-transform-changed/{notify-transform-changed.request.mjs → notify-transform-changed-request.mjs} +1 -1
  353. package/esm2022/f-storage/features/notify-transform-changed/notify-transform-changed.mjs +22 -0
  354. package/esm2022/f-storage/index.mjs +1 -2
  355. package/esm2022/f-storage/providers.mjs +11 -11
  356. package/esm2022/f-zoom/f-zoom.directive.mjs +3 -13
  357. package/esm2022/public-api.mjs +2 -1
  358. package/esm2022/reactivity/debounce-time.mjs +16 -5
  359. package/esm2022/reactivity/f-channel-hub.mjs +33 -9
  360. package/esm2022/reactivity/index.mjs +2 -1
  361. package/esm2022/reactivity/notify-on-start.mjs +12 -4
  362. package/esm2022/reactivity/take-one.mjs +17 -0
  363. package/esm2022/reactivity/types.mjs +1 -1
  364. package/esm2022/utils/calculate-pointer-in-flow.mjs +9 -0
  365. package/esm2022/utils/index.mjs +2 -1
  366. package/f-canvas/domain/index.d.ts +1 -1
  367. package/f-canvas/f-canvas-base.d.ts +2 -2
  368. package/f-canvas/f-canvas.component.d.ts +2 -9
  369. package/f-connection/f-connection/f-connection.component.d.ts +2 -7
  370. package/f-connection/f-connection-for-create/f-connection-for-create.component.d.ts +2 -6
  371. package/f-connection/f-snap-connection/f-snap-connection.component.d.ts +2 -6
  372. package/f-connection/index.d.ts +1 -6
  373. package/f-connection/providers.d.ts +3 -4
  374. package/{f-connection/f-connection-content → f-connection-v2/components/connection-content}/f-connection-content.d.ts +3 -30
  375. package/f-connection-v2/components/connection-content/index.d.ts +3 -0
  376. package/f-connection-v2/components/connection-content/models/f-connection-content-base.d.ts +36 -0
  377. package/f-connection-v2/components/connection-content/models/index.d.ts +1 -0
  378. package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-content-layout-engine.d.ts +1 -9
  379. package/f-connection-v2/components/connection-drag-handles/f-connection-drag-handle-end.d.ts +8 -0
  380. package/f-connection-v2/components/connection-drag-handles/f-connection-drag-handle-start.d.ts +8 -0
  381. package/f-connection-v2/components/connection-drag-handles/index.d.ts +3 -0
  382. package/f-connection-v2/components/connection-drag-handles/models/f-connection-drag-handle-base.d.ts +11 -0
  383. package/f-connection-v2/components/connection-drag-handles/models/index.d.ts +1 -0
  384. package/{f-connection/common/f-gradient/f-connection-gradient.component.d.ts → f-connection-v2/components/connection-gradient/f-connection-gradient.d.ts} +5 -6
  385. package/f-connection-v2/components/connection-gradient/index.d.ts +2 -0
  386. package/f-connection-v2/components/connection-gradient/models/f-connection-gradient-base.d.ts +8 -0
  387. package/f-connection-v2/components/connection-gradient/models/index.d.ts +1 -0
  388. package/f-connection-v2/components/connection-marker/enums/index.d.ts +1 -0
  389. package/f-connection-v2/components/connection-marker/f-connection-marker.d.ts +17 -0
  390. package/f-connection-v2/components/connection-marker/index.d.ts +3 -0
  391. package/{f-connection/f-marker/f-marker-base.d.ts → f-connection-v2/components/connection-marker/models/f-connection-marker-base.d.ts} +3 -4
  392. package/f-connection-v2/components/connection-marker/models/index.d.ts +1 -0
  393. package/f-connection-v2/components/connection-path/f-connection-path.d.ts +14 -0
  394. package/f-connection-v2/components/connection-path/index.d.ts +2 -0
  395. package/f-connection-v2/components/connection-path/models/f-connection-path-base.d.ts +9 -0
  396. package/f-connection-v2/components/connection-path/models/index.d.ts +1 -0
  397. package/f-connection-v2/components/connection-selection/f-connection-selection.d.ts +9 -0
  398. package/f-connection-v2/components/connection-selection/index.d.ts +2 -0
  399. package/f-connection-v2/components/connection-selection/models/f-connection-selection-base.d.ts +6 -0
  400. package/f-connection-v2/components/connection-selection/models/index.d.ts +1 -0
  401. package/f-connection-v2/components/connection-waypoints/f-connection-waypoints.d.ts +19 -0
  402. package/f-connection-v2/components/connection-waypoints/index.d.ts +3 -0
  403. package/f-connection-v2/components/connection-waypoints/models/f-connection-waypoints-base.d.ts +16 -0
  404. package/f-connection-v2/components/connection-waypoints/models/index.d.ts +1 -0
  405. package/f-connection-v2/components/connection-waypoints/utils/find-existing-waypoint.d.ts +6 -0
  406. package/f-connection-v2/components/connection-waypoints/utils/find-waypoint-candidate.d.ts +6 -0
  407. package/f-connection-v2/components/connection-waypoints/utils/index.d.ts +4 -0
  408. package/f-connection-v2/components/connection-waypoints/utils/is-pointer-inside-point.d.ts +2 -0
  409. package/f-connection-v2/components/connection-waypoints/utils/pick-waypoint.d.ts +17 -0
  410. package/{f-connection/common → f-connection-v2/components}/f-connection-base.d.ts +14 -31
  411. package/f-connection-v2/components/index.d.ts +8 -0
  412. package/f-connection-v2/enums/index.d.ts +2 -0
  413. package/f-connection-v2/index.d.ts +4 -0
  414. package/f-connection-v2/models/f-connection-components-parent.d.ts +15 -0
  415. package/f-connection-v2/models/f-connection-waypoints-changed-event.d.ts +6 -0
  416. package/f-connection-v2/models/index.d.ts +2 -0
  417. package/f-connection-v2/utils/connection-behaviour/connection-behaviour-builder-request.d.ts +11 -0
  418. package/{domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior.d.ts → f-connection-v2/utils/connection-behaviour/connection-behaviour-builder.d.ts} +5 -6
  419. package/f-connection-v2/utils/connection-behaviour/enums/index.d.ts +2 -0
  420. package/f-connection-v2/utils/connection-behaviour/index.d.ts +5 -0
  421. package/{domain/f-connection/calculate-connection-line-by-behavior/models/calculate-behavior-request.d.ts → f-connection-v2/utils/connection-behaviour/models/i-calculate-behavior-request.d.ts} +2 -2
  422. package/f-connection-v2/utils/connection-behaviour/models/index.d.ts +1 -0
  423. package/{domain/f-connection/calculate-connection-line-by-behavior → f-connection-v2/utils/connection-behaviour}/utils/fixed-center-behavior.d.ts +2 -2
  424. package/{domain/f-connection/calculate-connection-line-by-behavior → f-connection-v2/utils/connection-behaviour}/utils/fixed-outbound-behavior.d.ts +2 -2
  425. package/{domain/f-connection/calculate-connection-line-by-behavior → f-connection-v2/utils/connection-behaviour}/utils/floating-behavior.d.ts +2 -2
  426. package/f-connection-v2/utils/connection-behaviour/utils/index.d.ts +3 -0
  427. package/f-connection-v2/utils/connection-line-builder/builders/adaptive-curve/calculate-adaptive-curve-data.d.ts +8 -0
  428. package/f-connection-v2/utils/connection-line-builder/builders/adaptive-curve/index.d.ts +1 -0
  429. package/f-connection-v2/utils/connection-line-builder/builders/bezier-curve/calculate-bezier-curve-data.d.ts +4 -0
  430. package/f-connection-v2/utils/connection-line-builder/builders/bezier-curve/index.d.ts +1 -0
  431. package/f-connection-v2/utils/connection-line-builder/builders/index.d.ts +5 -0
  432. package/f-connection-v2/utils/connection-line-builder/builders/segment-line/build-corner-mid-points-and-apply-offsets.d.ts +17 -0
  433. package/f-connection-v2/utils/connection-line-builder/builders/segment-line/calculate-segment-line-data.d.ts +6 -0
  434. package/f-connection-v2/utils/connection-line-builder/builders/segment-line/create-segment-line-path.d.ts +2 -0
  435. package/f-connection-v2/utils/connection-line-builder/builders/segment-line/index.d.ts +3 -0
  436. package/{f-connection/common/domain/f-straight.path-builder.d.ts → f-connection-v2/utils/connection-line-builder/builders/straight-line/calculate-straight-line-data.d.ts} +2 -2
  437. package/f-connection-v2/utils/connection-line-builder/builders/straight-line/index.d.ts +1 -0
  438. package/f-connection-v2/utils/connection-line-builder/builders/utils/build-connection-anchors.d.ts +2 -0
  439. package/f-connection-v2/utils/connection-line-builder/builders/utils/calculate-center-between-points.d.ts +2 -0
  440. package/f-connection-v2/utils/connection-line-builder/builders/utils/calculate-curve-candidates.d.ts +3 -0
  441. package/f-connection-v2/utils/connection-line-builder/builders/utils/calculate-polyline-candidates.d.ts +2 -0
  442. package/f-connection-v2/utils/connection-line-builder/builders/utils/index.d.ts +8 -0
  443. package/f-connection-v2/utils/connection-line-builder/builders/utils/merge-point-chains.d.ts +2 -0
  444. package/f-connection-v2/utils/connection-line-builder/builders/utils/multi-cubic.d.ts +10 -0
  445. package/f-connection-v2/utils/connection-line-builder/builders/utils/normalize-polyline.d.ts +2 -0
  446. package/f-connection-v2/utils/connection-line-builder/builders/utils/sample-cubic-bezier-uniform.d.ts +24 -0
  447. package/f-connection-v2/utils/connection-line-builder/connection-line-builder-request.d.ts +7 -0
  448. package/f-connection-v2/utils/connection-line-builder/connection-line-builder.d.ts +13 -0
  449. package/f-connection-v2/utils/connection-line-builder/index.d.ts +5 -0
  450. package/{f-connection/f-connection-builder → f-connection-v2/utils/connection-line-builder/models}/i-f-connection-builder-request.d.ts +2 -1
  451. package/{f-connection/f-connection-builder → f-connection-v2/utils/connection-line-builder/models}/i-f-connection-builder-response.d.ts +2 -2
  452. package/{f-connection/f-connection-builder → f-connection-v2/utils/connection-line-builder/models}/i-f-connection-builder.d.ts +1 -2
  453. package/{f-connection/f-connection-builder → f-connection-v2/utils/connection-line-builder/models}/index.d.ts +1 -4
  454. package/f-connection-v2/utils/connection-line-builder/providers/f-connection-builders.d.ts +4 -0
  455. package/f-connection-v2/utils/connection-line-builder/providers/index.d.ts +1 -0
  456. package/f-connection-v2/utils/create-connection-dom-identifier.d.ts +1 -0
  457. package/f-connection-v2/utils/create-connection-selection-dom-identifier.d.ts +1 -0
  458. package/f-connection-v2/utils/create-gradient-dom-identifier.d.ts +1 -0
  459. package/f-connection-v2/utils/create-gradient-dom-url.d.ts +1 -0
  460. package/f-connection-v2/utils/index.d.ts +6 -0
  461. package/f-connectors/f-connector-base.d.ts +1 -1
  462. package/f-connectors/f-node-input/f-node-input.directive.d.ts +1 -1
  463. package/f-connectors/f-node-outlet/f-node-outlet.directive.d.ts +1 -1
  464. package/f-connectors/f-node-output/f-node-output.directive.d.ts +1 -1
  465. package/f-connectors/f-source-connector-base.d.ts +3 -0
  466. package/f-connectors/index.d.ts +0 -1
  467. package/f-draggable/f-connection/f-create-connection/f-create-connection.drag-handler.d.ts +1 -0
  468. package/f-draggable/f-connection/f-reassign-connection/f-reassign-connection.drag-handler.d.ts +2 -1
  469. package/f-draggable/f-connection/f-reassign-connection/f-reassign-source.drag-handler.d.ts +4 -2
  470. package/f-draggable/f-connection/f-reassign-connection/f-reassign-target.drag-handler.d.ts +4 -2
  471. package/f-draggable/f-connection/f-reassign-connection/i-f-reassign-connection-drag-result.d.ts +1 -1
  472. package/f-draggable/f-connection/f-reassign-connection/reassign-preparation/f-reassign-connection-preparation.execution.d.ts +6 -7
  473. package/f-draggable/f-connection/f-reassign-connection/reassign-preparation/is-pointer-inside-start-or-end-drag-handles.d.ts +2 -2
  474. package/f-draggable/f-connection/index.d.ts +1 -0
  475. package/f-draggable/f-connection/move-connection-waypoint/index.d.ts +3 -0
  476. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-finalize/index.d.ts +2 -0
  477. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-finalize/move-connection-waypoint-finalize-request.d.ts +6 -0
  478. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-finalize/move-connection-waypoint-finalize.d.ts +11 -0
  479. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-handler.d.ts +20 -0
  480. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-preparation/index.d.ts +2 -0
  481. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-preparation/move-connection-waypoint-preparation-request.d.ts +8 -0
  482. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-preparation/move-connection-waypoint-preparation.d.ts +19 -0
  483. package/f-draggable/f-connection/providers.d.ts +3 -2
  484. package/f-draggable/f-drag-handler/i-f-drag-handler.d.ts +2 -1
  485. package/f-draggable/f-draggable-base.d.ts +3 -1
  486. package/f-draggable/f-draggable.directive.d.ts +5 -1
  487. package/f-draggable/f-node-move/connection-drag-handlers/base-connection.drag-handler.d.ts +2 -1
  488. package/f-draggable/f-node-move/connection-drag-handlers/source-connection.drag-handler.d.ts +1 -1
  489. package/f-draggable/f-node-move/connection-drag-handlers/source-target-connection.drag-handler.d.ts +1 -1
  490. package/f-draggable/f-node-move/connection-drag-handlers/target-connection.drag-handler.d.ts +1 -1
  491. package/f-draggable/f-node-move/create-drag-model-from-selection/create-output-connection-handler-and-set-to-node-handler/create-output-connection-handler-and-set-to-node-handler.d.ts +1 -1
  492. package/f-draggable/f-node-move/create-snap-lines/create-snap-lines-request.d.ts +1 -1
  493. package/f-draggable/f-node-move/move-drag-handler.d.ts +2 -2
  494. package/f-draggable/f-node-move/move-finalize/f-node-move-finalize.execution.d.ts +1 -1
  495. package/f-draggable/f-node-move/move-preparation/index.d.ts +2 -2
  496. package/f-draggable/f-node-move/move-preparation/{f-node-move-preparation.request.d.ts → move-node-preparation-request.d.ts} +3 -3
  497. package/f-draggable/f-node-move/move-preparation/move-node-preparation.d.ts +17 -0
  498. package/f-draggable/f-node-move/move-summary-drag-handler.d.ts +3 -3
  499. package/f-draggable/f-node-move/providers.d.ts +2 -2
  500. package/f-draggable/index.d.ts +2 -1
  501. package/f-draggable/pinch-to-zoom/constants/constants.d.ts +5 -0
  502. package/f-draggable/pinch-to-zoom/constants/index.d.ts +1 -0
  503. package/f-draggable/pinch-to-zoom/finalize/index.d.ts +2 -0
  504. package/f-draggable/pinch-to-zoom/finalize/pinch-to-zoom-finalize-request.d.ts +6 -0
  505. package/f-draggable/pinch-to-zoom/finalize/pinch-to-zoom-finalize.d.ts +11 -0
  506. package/f-draggable/pinch-to-zoom/index.d.ts +6 -0
  507. package/f-draggable/pinch-to-zoom/pinch-to-zoom-handler.d.ts +21 -0
  508. package/f-draggable/pinch-to-zoom/preparation/index.d.ts +2 -0
  509. package/f-draggable/pinch-to-zoom/preparation/pinch-to-zoom-preparation-request.d.ts +6 -0
  510. package/f-draggable/pinch-to-zoom/preparation/pinch-to-zoom-preparation.d.ts +13 -0
  511. package/f-draggable/pinch-to-zoom/providers.d.ts +3 -0
  512. package/f-draggable/pinch-to-zoom/utils/calculate-touch-center.d.ts +2 -0
  513. package/f-draggable/pinch-to-zoom/utils/calculate-touch-distance.d.ts +1 -0
  514. package/f-draggable/pinch-to-zoom/utils/index.d.ts +2 -0
  515. package/f-draggable/providers.d.ts +1 -1
  516. package/f-draggable/single-select/index.d.ts +3 -0
  517. package/f-draggable/single-select/providers.d.ts +2 -0
  518. package/f-draggable/single-select/single-select-request.d.ts +8 -0
  519. package/f-draggable/{f-single-select/f-single-select.execution.d.ts → single-select/single-select.d.ts} +7 -6
  520. package/f-flow/f-flow.component.d.ts +1 -1
  521. package/f-flow.module.d.ts +36 -37
  522. package/f-line-alignment/f-line-alignment-base.d.ts +3 -4
  523. package/f-line-alignment/f-line-alignment.component.d.ts +3 -4
  524. package/f-minimap/f-minimap.component.d.ts +2 -2
  525. package/f-selection-area/domain/selection-area.drag-handle.d.ts +6 -5
  526. package/f-storage/f-components-store.d.ts +3 -4
  527. package/f-storage/features/listen-components-data-changed/index.d.ts +1 -1
  528. package/f-storage/features/listen-components-data-changed/{listen-data-changes.execution.d.ts → listen-data-changes.d.ts} +3 -3
  529. package/f-storage/features/listen-count-changes/index.d.ts +1 -1
  530. package/f-storage/features/listen-count-changes/{listen-count-changes.execution.d.ts → listen-count-changes.d.ts} +3 -3
  531. package/f-storage/features/listen-transform-changes/index.d.ts +2 -2
  532. package/f-storage/features/listen-transform-changes/{listen-transform-changes.execution.d.ts → listen-transform-changes.d.ts} +4 -4
  533. package/f-storage/features/notify-data-changed/index.d.ts +1 -1
  534. package/f-storage/features/notify-data-changed/{notify-data-changed.execution.d.ts → notify-data-changed.d.ts} +3 -3
  535. package/f-storage/features/notify-transform-changed/index.d.ts +2 -2
  536. package/f-storage/features/notify-transform-changed/{notify-transform-changed.execution.d.ts → notify-transform-changed.d.ts} +4 -4
  537. package/f-storage/index.d.ts +0 -1
  538. package/f-storage/providers.d.ts +6 -6
  539. package/f-zoom/f-zoom.directive.d.ts +0 -4
  540. package/fesm2022/foblex-flow.mjs +4296 -3863
  541. package/fesm2022/foblex-flow.mjs.map +1 -1
  542. package/package.json +1 -1
  543. package/public-api.d.ts +1 -0
  544. package/reactivity/index.d.ts +1 -0
  545. package/reactivity/take-one.d.ts +2 -0
  546. package/reactivity/types.d.ts +6 -1
  547. package/utils/calculate-pointer-in-flow.d.ts +4 -0
  548. package/utils/index.d.ts +1 -0
  549. package/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior-request.d.ts +0 -12
  550. package/domain/f-connection/calculate-connection-line-by-behavior/index.d.ts +0 -6
  551. package/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections-request.d.ts +0 -3
  552. package/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.d.ts +0 -14
  553. package/domain/f-flow/get-flow-state/get-flow-state-connections/index.d.ts +0 -2
  554. package/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes-request.d.ts +0 -6
  555. package/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.d.ts +0 -15
  556. package/domain/f-flow/get-flow-state/get-flow-state-nodes/index.d.ts +0 -2
  557. package/domain/f-flow/get-flow-state/get-flow-state.execution.d.ts +0 -15
  558. package/domain/f-flow/get-flow-state/get-flow-state.request.d.ts +0 -3
  559. package/domain/f-flow/get-flow-state/i-f-flow-state-connection.d.ts +0 -9
  560. package/domain/f-flow/get-flow-state/providers.d.ts +0 -7
  561. package/domain/f-selection/get-can-be-selected-items/get-can-be-selected-items-request.d.ts +0 -3
  562. package/domain/f-selection/get-can-be-selected-items/index.d.ts +0 -3
  563. package/domain/f-zoom/add-zoom-to-store/add-zoom-to-store.execution.d.ts +0 -12
  564. package/domain/f-zoom/reset-zoom/reset-zoom.execution.d.ts +0 -13
  565. package/domain/i-map.d.ts +0 -1
  566. package/esm2022/domain/f-connection/add-connection-for-create-to-store/add-connection-for-create-to-store.execution.mjs +0 -25
  567. package/esm2022/domain/f-connection/add-connection-marker-to-store/add-connection-marker-to-store.execution.mjs +0 -25
  568. package/esm2022/domain/f-connection/add-connection-to-store/add-connection-to-store.execution.mjs +0 -26
  569. package/esm2022/domain/f-connection/add-snap-connection-to-store/add-snap-connection-to-store.execution.mjs +0 -25
  570. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior-request.mjs +0 -16
  571. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior.mjs +0 -145
  572. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/index.mjs +0 -7
  573. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/models/calculate-behavior-request.mjs +0 -2
  574. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/utils/fixed-center-behavior.mjs +0 -12
  575. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/utils/fixed-outbound-behavior.mjs +0 -31
  576. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/utils/floating-behavior.mjs +0 -22
  577. package/esm2022/domain/f-connection/create-connection-markers/create-connection-markers.execution.mjs +0 -65
  578. package/esm2022/domain/f-connection/remove-connection-for-create-from-store/remove-connection-for-create-from-store.execution.mjs +0 -25
  579. package/esm2022/domain/f-connection/remove-connection-from-store/remove-connection-from-store.execution.mjs +0 -33
  580. package/esm2022/domain/f-connection/remove-connection-marker-from-store/remove-connection-marker-from-store.execution.mjs +0 -25
  581. package/esm2022/domain/f-connection/remove-snap-connection-from-store/remove-snap-connection-from-store.execution.mjs +0 -25
  582. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections-request.mjs +0 -4
  583. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.mjs +0 -35
  584. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-connections/index.mjs +0 -3
  585. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes-request.mjs +0 -8
  586. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.mjs +0 -58
  587. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-nodes/index.mjs +0 -3
  588. package/esm2022/domain/f-flow/get-flow-state/get-flow-state.execution.mjs +0 -39
  589. package/esm2022/domain/f-flow/get-flow-state/get-flow-state.request.mjs +0 -4
  590. package/esm2022/domain/f-flow/get-flow-state/i-f-flow-state-connection.mjs +0 -2
  591. package/esm2022/domain/f-flow/get-flow-state/i-f-flow-state-connector.mjs +0 -2
  592. package/esm2022/domain/f-flow/get-flow-state/i-f-flow-state-node.mjs +0 -2
  593. package/esm2022/domain/f-flow/get-flow-state/i-f-flow-state.mjs +0 -2
  594. package/esm2022/domain/f-flow/get-flow-state/index.mjs +0 -10
  595. package/esm2022/domain/f-flow/get-flow-state/providers.mjs +0 -12
  596. package/esm2022/domain/f-selection/get-can-be-selected-items/get-can-be-selected-items-request.mjs +0 -4
  597. package/esm2022/domain/f-selection/get-can-be-selected-items/get-can-be-selected-items.execution.mjs +0 -66
  598. package/esm2022/domain/f-selection/get-can-be-selected-items/i-can-be-selected-element-and-rect.mjs +0 -2
  599. package/esm2022/domain/f-selection/get-can-be-selected-items/index.mjs +0 -4
  600. package/esm2022/domain/f-zoom/add-zoom-to-store/add-zoom-to-store.execution.mjs +0 -28
  601. package/esm2022/domain/f-zoom/remove-zoom-from-store/remove-zoom-from-store.execution.mjs +0 -28
  602. package/esm2022/domain/f-zoom/reset-zoom/reset-zoom.execution.mjs +0 -30
  603. package/esm2022/domain/f-zoom/set-zoom/set-zoom.execution.mjs +0 -54
  604. package/esm2022/domain/i-map.mjs +0 -2
  605. package/esm2022/f-connection/common/domain/adaptive-curve-builder.mjs +0 -201
  606. package/esm2022/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points-request.mjs +0 -10
  607. package/esm2022/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points.handler.mjs +0 -12
  608. package/esm2022/f-connection/common/domain/calculate-center-between-points/index.mjs +0 -3
  609. package/esm2022/f-connection/common/domain/calculate-connection-center/calculate-connection-center-request.mjs +0 -8
  610. package/esm2022/f-connection/common/domain/calculate-connection-center/calculate-connection-center.handler.mjs +0 -35
  611. package/esm2022/f-connection/common/domain/calculate-connection-center/index.mjs +0 -3
  612. package/esm2022/f-connection/common/domain/f-bezier.path-builder.mjs +0 -58
  613. package/esm2022/f-connection/common/domain/f-segment.path-builder.mjs +0 -161
  614. package/esm2022/f-connection/common/domain/f-straight.path-builder.mjs +0 -16
  615. package/esm2022/f-connection/common/domain/index.mjs +0 -7
  616. package/esm2022/f-connection/common/e-f-connection-behavior.mjs +0 -7
  617. package/esm2022/f-connection/common/e-f-connection-connectable-side.mjs +0 -12
  618. package/esm2022/f-connection/common/e-f-connection-type.mjs +0 -8
  619. package/esm2022/f-connection/common/f-connection-base.mjs +0 -121
  620. package/esm2022/f-connection/common/f-connection-identifiers.mjs +0 -22
  621. package/esm2022/f-connection/common/f-connection-text/f-connection-text-path.directive.mjs +0 -65
  622. package/esm2022/f-connection/common/f-connection-text/f-connection-text.component.mjs +0 -57
  623. package/esm2022/f-connection/common/f-connection-text/i-connection-text.mjs +0 -3
  624. package/esm2022/f-connection/common/f-connection-text/index.mjs +0 -4
  625. package/esm2022/f-connection/common/f-connection.injection-token.mjs +0 -3
  626. package/esm2022/f-connection/common/f-drag-handle/f-connection-drag-handle-end.component.mjs +0 -37
  627. package/esm2022/f-connection/common/f-drag-handle/f-connection-drag-handle-start.component.mjs +0 -37
  628. package/esm2022/f-connection/common/f-drag-handle/index.mjs +0 -3
  629. package/esm2022/f-connection/common/f-gradient/f-connection-gradient.component.mjs +0 -55
  630. package/esm2022/f-connection/common/f-gradient/i-connection-gradient.mjs +0 -3
  631. package/esm2022/f-connection/common/f-gradient/index.mjs +0 -3
  632. package/esm2022/f-connection/common/f-path/f-connection-path.component.mjs +0 -45
  633. package/esm2022/f-connection/common/f-path/get-path-marker-id.mjs +0 -14
  634. package/esm2022/f-connection/common/f-path/i-connection-path.mjs +0 -3
  635. package/esm2022/f-connection/common/f-path/index.mjs +0 -4
  636. package/esm2022/f-connection/common/f-selection/f-connection-selection.component.mjs +0 -24
  637. package/esm2022/f-connection/common/f-selection/index.mjs +0 -2
  638. package/esm2022/f-connection/common/i-has-connection-color.mjs +0 -2
  639. package/esm2022/f-connection/common/i-has-connection-from-to.mjs +0 -2
  640. package/esm2022/f-connection/common/i-has-connection-text.mjs +0 -2
  641. package/esm2022/f-connection/common/index.mjs +0 -15
  642. package/esm2022/f-connection/f-connection-builder/f-connection-builders.mjs +0 -3
  643. package/esm2022/f-connection/f-connection-builder/f-connection-factory.mjs +0 -26
  644. package/esm2022/f-connection/f-connection-builder/i-f-connection-builder-request.mjs +0 -2
  645. package/esm2022/f-connection/f-connection-builder/i-f-connection-builder-response.mjs +0 -2
  646. package/esm2022/f-connection/f-connection-builder/i-f-connection-builder.mjs +0 -2
  647. package/esm2022/f-connection/f-connection-builder/i-f-connection-factory-request.mjs +0 -2
  648. package/esm2022/f-connection/f-connection-builder/index.mjs +0 -7
  649. package/esm2022/f-connection/f-connection-center/f-connection-center.directive.mjs +0 -30
  650. package/esm2022/f-connection/f-connection-center/index.mjs +0 -2
  651. package/esm2022/f-connection/f-connection-content/f-connection-content.mjs +0 -102
  652. package/esm2022/f-connection/f-connection-content/index.mjs +0 -3
  653. package/esm2022/f-connection/f-connection-content/polyline-content-engine/i-polyline-content.mjs +0 -2
  654. package/esm2022/f-connection/f-connection-content/polyline-content-engine/index.mjs +0 -6
  655. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-content-align.mjs +0 -6
  656. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-content-layout-engine.mjs +0 -28
  657. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/i-sampler-result.mjs +0 -2
  658. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/i-tangent.mjs +0 -2
  659. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/index.mjs +0 -5
  660. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/polyline-sampler.mjs +0 -143
  661. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/polyline.mjs +0 -68
  662. package/esm2022/f-connection/f-marker/e-f-marker-type.mjs +0 -8
  663. package/esm2022/f-connection/f-marker/f-marker-base.mjs +0 -5
  664. package/esm2022/f-connection/f-marker/f-marker.directive.mjs +0 -51
  665. package/esm2022/f-connection/f-marker/index.mjs +0 -4
  666. package/esm2022/f-connectors/e-f-connectable-side.mjs +0 -12
  667. package/esm2022/f-draggable/f-node-move/move-preparation/f-node-move-preparation.execution.mjs +0 -82
  668. package/esm2022/f-draggable/f-node-move/move-preparation/f-node-move-preparation.request.mjs +0 -10
  669. package/esm2022/f-draggable/f-single-select/f-single-select.execution.mjs +0 -138
  670. package/esm2022/f-draggable/f-single-select/f-single-select.request.mjs +0 -10
  671. package/esm2022/f-draggable/f-single-select/index.mjs +0 -4
  672. package/esm2022/f-draggable/f-single-select/providers.mjs +0 -5
  673. package/esm2022/f-storage/f-connectors-store.mjs +0 -11
  674. package/esm2022/f-storage/features/listen-components-data-changed/listen-data-changes.execution.mjs +0 -23
  675. package/esm2022/f-storage/features/listen-count-changes/listen-count-changes.execution.mjs +0 -23
  676. package/esm2022/f-storage/features/listen-transform-changes/listen-transform-changes.execution.mjs +0 -23
  677. package/esm2022/f-storage/features/notify-data-changed/notify-data-changed.execution.mjs +0 -22
  678. package/esm2022/f-storage/features/notify-transform-changed/notify-transform-changed.execution.mjs +0 -22
  679. package/f-connection/common/domain/adaptive-curve-builder.d.ts +0 -102
  680. package/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points-request.d.ts +0 -7
  681. package/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points.handler.d.ts +0 -6
  682. package/f-connection/common/domain/calculate-center-between-points/index.d.ts +0 -2
  683. package/f-connection/common/domain/calculate-connection-center/calculate-connection-center-request.d.ts +0 -6
  684. package/f-connection/common/domain/calculate-connection-center/calculate-connection-center.handler.d.ts +0 -8
  685. package/f-connection/common/domain/calculate-connection-center/index.d.ts +0 -2
  686. package/f-connection/common/domain/f-bezier.path-builder.d.ts +0 -6
  687. package/f-connection/common/domain/f-segment.path-builder.d.ts +0 -11
  688. package/f-connection/common/domain/index.d.ts +0 -6
  689. package/f-connection/common/f-connection-identifiers.d.ts +0 -8
  690. package/f-connection/common/f-connection-text/f-connection-text-path.directive.d.ts +0 -18
  691. package/f-connection/common/f-connection-text/f-connection-text.component.d.ts +0 -16
  692. package/f-connection/common/f-connection-text/i-connection-text.d.ts +0 -7
  693. package/f-connection/common/f-connection-text/index.d.ts +0 -3
  694. package/f-connection/common/f-connection.injection-token.d.ts +0 -2
  695. package/f-connection/common/f-drag-handle/f-connection-drag-handle-end.component.d.ts +0 -13
  696. package/f-connection/common/f-drag-handle/f-connection-drag-handle-start.component.d.ts +0 -13
  697. package/f-connection/common/f-drag-handle/index.d.ts +0 -2
  698. package/f-connection/common/f-gradient/i-connection-gradient.d.ts +0 -8
  699. package/f-connection/common/f-gradient/index.d.ts +0 -2
  700. package/f-connection/common/f-path/f-connection-path.component.d.ts +0 -15
  701. package/f-connection/common/f-path/get-path-marker-id.d.ts +0 -4
  702. package/f-connection/common/f-path/i-connection-path.d.ts +0 -9
  703. package/f-connection/common/f-path/index.d.ts +0 -3
  704. package/f-connection/common/f-selection/f-connection-selection.component.d.ts +0 -10
  705. package/f-connection/common/f-selection/index.d.ts +0 -1
  706. package/f-connection/common/i-has-connection-color.d.ts +0 -5
  707. package/f-connection/common/i-has-connection-from-to.d.ts +0 -6
  708. package/f-connection/common/i-has-connection-text.d.ts +0 -4
  709. package/f-connection/common/index.d.ts +0 -14
  710. package/f-connection/f-connection-builder/f-connection-builders.d.ts +0 -4
  711. package/f-connection/f-connection-builder/f-connection-factory.d.ts +0 -9
  712. package/f-connection/f-connection-builder/i-f-connection-factory-request.d.ts +0 -6
  713. package/f-connection/f-connection-center/f-connection-center.directive.d.ts +0 -10
  714. package/f-connection/f-connection-center/index.d.ts +0 -1
  715. package/f-connection/f-connection-content/index.d.ts +0 -2
  716. package/f-connection/f-marker/f-marker.directive.d.ts +0 -18
  717. package/f-connection/f-marker/index.d.ts +0 -3
  718. package/f-draggable/f-node-move/move-preparation/f-node-move-preparation.execution.d.ts +0 -20
  719. package/f-draggable/f-single-select/f-single-select.request.d.ts +0 -8
  720. package/f-draggable/f-single-select/index.d.ts +0 -3
  721. package/f-draggable/f-single-select/providers.d.ts +0 -2
  722. package/f-storage/f-connectors-store.d.ts +0 -6
  723. /package/domain/f-flow/{get-flow-state → calculate-flow-state}/i-f-flow-state-node.d.ts +0 -0
  724. /package/domain/f-flow/{get-flow-state → calculate-flow-state}/i-f-flow-state.d.ts +0 -0
  725. /package/domain/f-selection/{get-can-be-selected-items → calculate-selectable-items}/i-can-be-selected-element-and-rect.d.ts +0 -0
  726. /package/f-canvas/domain/{f-canvas-change.event.d.ts → f-canvas-change-event.d.ts} +0 -0
  727. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/i-polyline-content.d.ts +0 -0
  728. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/index.d.ts +0 -0
  729. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-content-align.d.ts +0 -0
  730. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-content-place.d.ts +0 -0
  731. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-sampler/i-sampler-result.d.ts +0 -0
  732. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-sampler/i-tangent.d.ts +0 -0
  733. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-sampler/index.d.ts +0 -0
  734. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-sampler/polyline-sampler.d.ts +0 -0
  735. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-sampler/polyline.d.ts +0 -0
  736. /package/{f-connection/f-marker → f-connection-v2/components/connection-marker/enums}/e-f-marker-type.d.ts +0 -0
  737. /package/{f-connectors → f-connection-v2/enums}/e-f-connectable-side.d.ts +0 -0
  738. /package/{f-connection/common → f-connection-v2/enums}/e-f-connection-type.d.ts +0 -0
  739. /package/{f-connection/common → f-connection-v2/utils/connection-behaviour/enums}/e-f-connection-behavior.d.ts +0 -0
  740. /package/{f-connection/common → f-connection-v2/utils/connection-behaviour/enums}/e-f-connection-connectable-side.d.ts +0 -0
  741. /package/f-storage/features/listen-transform-changes/{listen-transform-changes.request.d.ts → listen-transform-changes-request.d.ts} +0 -0
  742. /package/f-storage/features/notify-transform-changed/{notify-transform-changed.request.d.ts → notify-transform-changed-request.d.ts} +0 -0
@@ -0,0 +1,50 @@
1
+ import { booleanAttribute, ChangeDetectionStrategy, Component, effect, inject, Injector, input, model, numberAttribute, untracked, } from '@angular/core';
2
+ import { F_CONNECTION_WAYPOINTS, FConnectionWaypointsBase } from './models';
3
+ import { NotifyDataChangedRequest } from '../../../f-storage';
4
+ import { FMediator } from '@foblex/mediator';
5
+ import { F_CONNECTION_COMPONENTS_PARENT } from '../../models';
6
+ import { RemoveConnectionWaypointRequest } from '../../../domain';
7
+ import * as i0 from "@angular/core";
8
+ export class FConnectionWaypoints extends FConnectionWaypointsBase {
9
+ _mediator = inject(FMediator);
10
+ _injector = inject(Injector);
11
+ _connection = inject(F_CONNECTION_COMPONENTS_PARENT);
12
+ radius = input(4, {
13
+ transform: numberAttribute,
14
+ });
15
+ waypoints = model([]);
16
+ visibility = input(true, {
17
+ transform: booleanAttribute,
18
+ });
19
+ ngOnInit() {
20
+ this._listenChanges();
21
+ }
22
+ _listenChanges() {
23
+ effect(() => {
24
+ this.radius();
25
+ this.waypoints();
26
+ this.visibility();
27
+ untracked(() => this._notifyDataChanged());
28
+ }, { injector: this._injector });
29
+ }
30
+ _notifyDataChanged() {
31
+ this._mediator.execute(new NotifyDataChangedRequest());
32
+ }
33
+ remove(index, event) {
34
+ this._mediator.execute(new RemoveConnectionWaypointRequest(index, this._connection.fId()));
35
+ event.stopPropagation();
36
+ event.preventDefault();
37
+ }
38
+ ngOnDestroy() {
39
+ this._notifyDataChanged();
40
+ }
41
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionWaypoints, deps: null, target: i0.ɵɵFactoryTarget.Component });
42
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FConnectionWaypoints, isStandalone: true, selector: "f-connection-waypoints", inputs: { radius: { classPropertyName: "radius", publicName: "radius", isSignal: true, isRequired: false, transformFunction: null }, waypoints: { classPropertyName: "waypoints", publicName: "waypoints", isSignal: true, isRequired: false, transformFunction: null }, visibility: { classPropertyName: "visibility", publicName: "visibility", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { waypoints: "waypointsChange" }, host: { classAttribute: "f-component f-connection-waypoints" }, providers: [{ provide: F_CONNECTION_WAYPOINTS, useExisting: FConnectionWaypoints }], usesInheritance: true, ngImport: i0, template: "@if (visibility()) {\n <svg xmlns=\"http://www.w3.org/2000/svg\">\n <g>\n @for (candidate of candidates(); track $index) {\n <circle\n [attr.r]=\"radius()\"\n class=\"f-candidate\"\n [attr.cx]=\"candidate.x\"\n [attr.cy]=\"candidate.y\"\n ></circle>\n }\n @for (point of waypoints(); track $index) {\n <circle\n [attr.r]=\"radius()\"\n (contextmenu)=\"remove($index, $event)\"\n class=\"f-waypoint\"\n [attr.cx]=\"point.x\"\n [attr.cy]=\"point.y\"\n ></circle>\n }\n </g>\n </svg>\n}\n\n", styles: [":host{pointer-events:none;position:absolute}svg{display:block;vertical-align:middle;position:absolute;overflow:visible}circle{pointer-events:visible}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
43
+ }
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionWaypoints, decorators: [{
45
+ type: Component,
46
+ args: [{ selector: 'f-connection-waypoints', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, host: {
47
+ class: 'f-component f-connection-waypoints',
48
+ }, providers: [{ provide: F_CONNECTION_WAYPOINTS, useExisting: FConnectionWaypoints }], template: "@if (visibility()) {\n <svg xmlns=\"http://www.w3.org/2000/svg\">\n <g>\n @for (candidate of candidates(); track $index) {\n <circle\n [attr.r]=\"radius()\"\n class=\"f-candidate\"\n [attr.cx]=\"candidate.x\"\n [attr.cy]=\"candidate.y\"\n ></circle>\n }\n @for (point of waypoints(); track $index) {\n <circle\n [attr.r]=\"radius()\"\n (contextmenu)=\"remove($index, $event)\"\n class=\"f-waypoint\"\n [attr.cx]=\"point.x\"\n [attr.cy]=\"point.y\"\n ></circle>\n }\n </g>\n </svg>\n}\n\n", styles: [":host{pointer-events:none;position:absolute}svg{display:block;vertical-align:middle;position:absolute;overflow:visible}circle{pointer-events:visible}\n"] }]
49
+ }] });
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLXdheXBvaW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uLXYyL2NvbXBvbmVudHMvY29ubmVjdGlvbi13YXlwb2ludHMvZi1jb25uZWN0aW9uLXdheXBvaW50cy50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uLXYyL2NvbXBvbmVudHMvY29ubmVjdGlvbi13YXlwb2ludHMvZi1jb25uZWN0aW9uLXdheXBvaW50cy5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxNQUFNLEVBQ04sTUFBTSxFQUNOLFFBQVEsRUFDUixLQUFLLEVBQ0wsS0FBSyxFQUNMLGVBQWUsRUFHZixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLHdCQUF3QixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRTVFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzlELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDOUQsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBYWxFLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSx3QkFBd0I7SUFDL0MsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM5QixTQUFTLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzdCLFdBQVcsR0FBRyxNQUFNLENBQUMsOEJBQThCLENBQUMsQ0FBQztJQUU3QyxNQUFNLEdBQUcsS0FBSyxDQUFDLENBQUMsRUFBRTtRQUN6QyxTQUFTLEVBQUUsZUFBZTtLQUMzQixDQUFDLENBQUM7SUFDc0IsU0FBUyxHQUFHLEtBQUssQ0FBVyxFQUFFLENBQUMsQ0FBQztJQUVoQyxVQUFVLEdBQUcsS0FBSyxDQUFDLElBQUksRUFBRTtRQUNoRCxTQUFTLEVBQUUsZ0JBQWdCO0tBQzVCLENBQUMsQ0FBQztJQUVJLFFBQVE7UUFDYixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVPLGNBQWM7UUFDcEIsTUFBTSxDQUNKLEdBQUcsRUFBRTtZQUNILElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDbEIsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUM7UUFDN0MsQ0FBQyxFQUNELEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FDN0IsQ0FBQztJQUNKLENBQUM7SUFFTyxrQkFBa0I7UUFDeEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSx3QkFBd0IsRUFBRSxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVTLE1BQU0sQ0FBQyxLQUFhLEVBQUUsS0FBaUI7UUFDL0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSwrQkFBK0IsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDM0YsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM1QixDQUFDO3dHQTFDVSxvQkFBb0I7NEZBQXBCLG9CQUFvQixra0JBRnBCLENBQUMsRUFBRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsV0FBVyxFQUFFLG9CQUFvQixFQUFFLENBQUMsaURDOUJyRixrbkJBd0JBOzs0RkRRYSxvQkFBb0I7a0JBWGhDLFNBQVM7K0JBQ0Usd0JBQXdCLGNBR3RCLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSixLQUFLLEVBQUUsb0NBQW9DO3FCQUM1QyxhQUNVLENBQUMsRUFBRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsV0FBVyxzQkFBc0IsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgZWZmZWN0LFxuICBpbmplY3QsXG4gIEluamVjdG9yLFxuICBpbnB1dCxcbiAgbW9kZWwsXG4gIG51bWJlckF0dHJpYnV0ZSxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIHVudHJhY2tlZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGX0NPTk5FQ1RJT05fV0FZUE9JTlRTLCBGQ29ubmVjdGlvbldheXBvaW50c0Jhc2UgfSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IE5vdGlmeURhdGFDaGFuZ2VkUmVxdWVzdCB9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGTWVkaWF0b3IgfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IEZfQ09OTkVDVElPTl9DT01QT05FTlRTX1BBUkVOVCB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBSZW1vdmVDb25uZWN0aW9uV2F5cG9pbnRSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZi1jb25uZWN0aW9uLXdheXBvaW50cycsXG4gIHRlbXBsYXRlVXJsOiAnLi9mLWNvbm5lY3Rpb24td2F5cG9pbnRzLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9mLWNvbm5lY3Rpb24td2F5cG9pbnRzLnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2YtY29tcG9uZW50IGYtY29ubmVjdGlvbi13YXlwb2ludHMnLFxuICB9LFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IEZfQ09OTkVDVElPTl9XQVlQT0lOVFMsIHVzZUV4aXN0aW5nOiBGQ29ubmVjdGlvbldheXBvaW50cyB9XSxcbn0pXG5leHBvcnQgY2xhc3MgRkNvbm5lY3Rpb25XYXlwb2ludHMgZXh0ZW5kcyBGQ29ubmVjdGlvbldheXBvaW50c0Jhc2UgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX21lZGlhdG9yID0gaW5qZWN0KEZNZWRpYXRvcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2luamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY29ubmVjdGlvbiA9IGluamVjdChGX0NPTk5FQ1RJT05fQ09NUE9ORU5UU19QQVJFTlQpO1xuXG4gIHB1YmxpYyBvdmVycmlkZSByZWFkb25seSByYWRpdXMgPSBpbnB1dCg0LCB7XG4gICAgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUsXG4gIH0pO1xuICBwdWJsaWMgb3ZlcnJpZGUgcmVhZG9ubHkgd2F5cG9pbnRzID0gbW9kZWw8SVBvaW50W10+KFtdKTtcblxuICBwdWJsaWMgb3ZlcnJpZGUgcmVhZG9ubHkgdmlzaWJpbGl0eSA9IGlucHV0KHRydWUsIHtcbiAgICB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUsXG4gIH0pO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9saXN0ZW5DaGFuZ2VzKCk7XG4gIH1cblxuICBwcml2YXRlIF9saXN0ZW5DaGFuZ2VzKCk6IHZvaWQge1xuICAgIGVmZmVjdChcbiAgICAgICgpID0+IHtcbiAgICAgICAgdGhpcy5yYWRpdXMoKTtcbiAgICAgICAgdGhpcy53YXlwb2ludHMoKTtcbiAgICAgICAgdGhpcy52aXNpYmlsaXR5KCk7XG4gICAgICAgIHVudHJhY2tlZCgoKSA9PiB0aGlzLl9ub3RpZnlEYXRhQ2hhbmdlZCgpKTtcbiAgICAgIH0sXG4gICAgICB7IGluamVjdG9yOiB0aGlzLl9pbmplY3RvciB9LFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9ub3RpZnlEYXRhQ2hhbmdlZCgpOiB2b2lkIHtcbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBOb3RpZnlEYXRhQ2hhbmdlZFJlcXVlc3QoKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVtb3ZlKGluZGV4OiBudW1iZXIsIGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgUmVtb3ZlQ29ubmVjdGlvbldheXBvaW50UmVxdWVzdChpbmRleCwgdGhpcy5fY29ubmVjdGlvbi5mSWQoKSkpO1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fbm90aWZ5RGF0YUNoYW5nZWQoKTtcbiAgfVxufVxuIiwiQGlmICh2aXNpYmlsaXR5KCkpIHtcbiAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgPGc+XG4gICAgICBAZm9yIChjYW5kaWRhdGUgb2YgY2FuZGlkYXRlcygpOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgPGNpcmNsZVxuICAgICAgICAgIFthdHRyLnJdPVwicmFkaXVzKClcIlxuICAgICAgICAgIGNsYXNzPVwiZi1jYW5kaWRhdGVcIlxuICAgICAgICAgIFthdHRyLmN4XT1cImNhbmRpZGF0ZS54XCJcbiAgICAgICAgICBbYXR0ci5jeV09XCJjYW5kaWRhdGUueVwiXG4gICAgICAgID48L2NpcmNsZT5cbiAgICAgIH1cbiAgICAgIEBmb3IgKHBvaW50IG9mIHdheXBvaW50cygpOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgPGNpcmNsZVxuICAgICAgICAgIFthdHRyLnJdPVwicmFkaXVzKClcIlxuICAgICAgICAgIChjb250ZXh0bWVudSk9XCJyZW1vdmUoJGluZGV4LCAkZXZlbnQpXCJcbiAgICAgICAgICBjbGFzcz1cImYtd2F5cG9pbnRcIlxuICAgICAgICAgIFthdHRyLmN4XT1cInBvaW50LnhcIlxuICAgICAgICAgIFthdHRyLmN5XT1cInBvaW50LnlcIlxuICAgICAgICA+PC9jaXJjbGU+XG4gICAgICB9XG4gICAgPC9nPlxuICA8L3N2Zz5cbn1cblxuIl19
@@ -0,0 +1,4 @@
1
+ export * from './models';
2
+ export * from './utils';
3
+ export * from './f-connection-waypoints';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi12Mi9jb21wb25lbnRzL2Nvbm5lY3Rpb24td2F5cG9pbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsMEJBQTBCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL3V0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vZi1jb25uZWN0aW9uLXdheXBvaW50cyc7XG4iXX0=
@@ -0,0 +1,27 @@
1
+ import { ElementRef, inject, InjectionToken, signal } from '@angular/core';
2
+ import { PointExtensions } from '@foblex/2d';
3
+ export const F_CONNECTION_WAYPOINTS = new InjectionToken('F_CONNECTION_WAYPOINTS');
4
+ export class FConnectionWaypointsBase {
5
+ hostElement = inject((ElementRef)).nativeElement;
6
+ candidates = signal([]);
7
+ _activeIndex = 0;
8
+ _waypoints = [];
9
+ insert(candidate) {
10
+ const current = this.waypoints().slice();
11
+ this._activeIndex = Math.max(0, Math.min(this.candidates().indexOf(candidate), current.length));
12
+ current.splice(this._activeIndex, 0, { ...candidate });
13
+ this.waypoints.set(current);
14
+ this._waypoints = current;
15
+ }
16
+ select(waypoint) {
17
+ this._activeIndex = this.waypoints().findIndex((x) => PointExtensions.isEqual(waypoint, x));
18
+ this._waypoints = this.waypoints();
19
+ }
20
+ move(point) {
21
+ this._waypoints[this._activeIndex] = { ...point };
22
+ }
23
+ update() {
24
+ this.waypoints.set([...this._waypoints]);
25
+ }
26
+ }
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLXdheXBvaW50cy1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24tdjIvY29tcG9uZW50cy9jb25uZWN0aW9uLXdheXBvaW50cy9tb2RlbHMvZi1jb25uZWN0aW9uLXdheXBvaW50cy1iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBZSxNQUFNLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDaEcsT0FBTyxFQUFVLGVBQWUsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUVyRCxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxJQUFJLGNBQWMsQ0FDdEQsd0JBQXdCLENBQ3pCLENBQUM7QUFFRixNQUFNLE9BQWdCLHdCQUF3QjtJQUM1QixXQUFXLEdBQUcsTUFBTSxDQUFDLENBQUEsVUFBc0IsQ0FBQSxDQUFDLENBQUMsYUFBYSxDQUFDO0lBRTNELFVBQVUsR0FBRyxNQUFNLENBQVcsRUFBRSxDQUFDLENBQUM7SUFNMUMsWUFBWSxHQUFHLENBQUMsQ0FBQztJQUNqQixVQUFVLEdBQWEsRUFBRSxDQUFDO0lBRTNCLE1BQU0sQ0FBQyxTQUFpQjtRQUM3QixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFekMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFFaEcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsRUFBRSxFQUFFLEdBQUcsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUN2RCxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQztJQUM1QixDQUFDO0lBRU0sTUFBTSxDQUFDLFFBQWdCO1FBQzVCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM1RixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRU0sSUFBSSxDQUFDLEtBQWE7UUFDdkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxHQUFHLEtBQUssRUFBRSxDQUFDO0lBQ3BELENBQUM7SUFFTSxNQUFNO1FBQ1gsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQzNDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVsZW1lbnRSZWYsIGluamVjdCwgSW5qZWN0aW9uVG9rZW4sIE1vZGVsU2lnbmFsLCBzaWduYWwsIFNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSVBvaW50LCBQb2ludEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcblxuZXhwb3J0IGNvbnN0IEZfQ09OTkVDVElPTl9XQVlQT0lOVFMgPSBuZXcgSW5qZWN0aW9uVG9rZW48RkNvbm5lY3Rpb25XYXlwb2ludHNCYXNlPihcbiAgJ0ZfQ09OTkVDVElPTl9XQVlQT0lOVFMnLFxuKTtcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEZDb25uZWN0aW9uV2F5cG9pbnRzQmFzZSB7XG4gIHB1YmxpYyByZWFkb25seSBob3N0RWxlbWVudCA9IGluamVjdChFbGVtZW50UmVmPFNWR0VsZW1lbnQ+KS5uYXRpdmVFbGVtZW50O1xuXG4gIHB1YmxpYyByZWFkb25seSBjYW5kaWRhdGVzID0gc2lnbmFsPElQb2ludFtdPihbXSk7XG5cbiAgcHVibGljIGFic3RyYWN0IHdheXBvaW50czogTW9kZWxTaWduYWw8SVBvaW50W10+O1xuICBwdWJsaWMgYWJzdHJhY3QgcmFkaXVzOiBTaWduYWw8bnVtYmVyPjtcbiAgcHVibGljIGFic3RyYWN0IHZpc2liaWxpdHk6IFNpZ25hbDxib29sZWFuPjtcblxuICBwcml2YXRlIF9hY3RpdmVJbmRleCA9IDA7XG4gIHByaXZhdGUgX3dheXBvaW50czogSVBvaW50W10gPSBbXTtcblxuICBwdWJsaWMgaW5zZXJ0KGNhbmRpZGF0ZTogSVBvaW50KTogdm9pZCB7XG4gICAgY29uc3QgY3VycmVudCA9IHRoaXMud2F5cG9pbnRzKCkuc2xpY2UoKTtcblxuICAgIHRoaXMuX2FjdGl2ZUluZGV4ID0gTWF0aC5tYXgoMCwgTWF0aC5taW4odGhpcy5jYW5kaWRhdGVzKCkuaW5kZXhPZihjYW5kaWRhdGUpLCBjdXJyZW50Lmxlbmd0aCkpO1xuXG4gICAgY3VycmVudC5zcGxpY2UodGhpcy5fYWN0aXZlSW5kZXgsIDAsIHsgLi4uY2FuZGlkYXRlIH0pO1xuICAgIHRoaXMud2F5cG9pbnRzLnNldChjdXJyZW50KTtcbiAgICB0aGlzLl93YXlwb2ludHMgPSBjdXJyZW50O1xuICB9XG5cbiAgcHVibGljIHNlbGVjdCh3YXlwb2ludDogSVBvaW50KTogdm9pZCB7XG4gICAgdGhpcy5fYWN0aXZlSW5kZXggPSB0aGlzLndheXBvaW50cygpLmZpbmRJbmRleCgoeCkgPT4gUG9pbnRFeHRlbnNpb25zLmlzRXF1YWwod2F5cG9pbnQsIHgpKTtcbiAgICB0aGlzLl93YXlwb2ludHMgPSB0aGlzLndheXBvaW50cygpO1xuICB9XG5cbiAgcHVibGljIG1vdmUocG9pbnQ6IElQb2ludCk6IHZvaWQge1xuICAgIHRoaXMuX3dheXBvaW50c1t0aGlzLl9hY3RpdmVJbmRleF0gPSB7IC4uLnBvaW50IH07XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlKCk6IHZvaWQge1xuICAgIHRoaXMud2F5cG9pbnRzLnNldChbLi4udGhpcy5fd2F5cG9pbnRzXSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './f-connection-waypoints-base';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi12Mi9jb21wb25lbnRzL2Nvbm5lY3Rpb24td2F5cG9pbnRzL21vZGVscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mLWNvbm5lY3Rpb24td2F5cG9pbnRzLWJhc2UnO1xuIl19
@@ -0,0 +1,7 @@
1
+ import { isPointerInsidePoint } from './is-pointer-inside-point';
2
+ export function findExistingWaypoint(connection, position) {
3
+ const component = connection.fWaypoints();
4
+ const radius = component?.radius() || 8;
5
+ return component?.waypoints().find((x) => isPointerInsidePoint(position, x, radius));
6
+ }
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZC1leGlzdGluZy13YXlwb2ludC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uLXYyL2NvbXBvbmVudHMvY29ubmVjdGlvbi13YXlwb2ludHMvdXRpbHMvZmluZC1leGlzdGluZy13YXlwb2ludC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUVqRSxNQUFNLFVBQVUsb0JBQW9CLENBQ2xDLFVBQXdFLEVBQ3hFLFFBQWdCO0lBRWhCLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUMxQyxNQUFNLE1BQU0sR0FBRyxTQUFTLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBRXhDLE9BQU8sU0FBUyxFQUFFLFNBQVMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsb0JBQW9CLENBQUMsUUFBUSxFQUFFLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO0FBQ3ZGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZDb25uZWN0aW9uV2F5cG9pbnRzQmFzZSB9IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQgeyBTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGlzUG9pbnRlckluc2lkZVBvaW50IH0gZnJvbSAnLi9pcy1wb2ludGVyLWluc2lkZS1wb2ludCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBmaW5kRXhpc3RpbmdXYXlwb2ludChcbiAgY29ubmVjdGlvbjogeyBmV2F5cG9pbnRzOiBTaWduYWw8RkNvbm5lY3Rpb25XYXlwb2ludHNCYXNlIHwgdW5kZWZpbmVkPiB9LFxuICBwb3NpdGlvbjogSVBvaW50LFxuKTogSVBvaW50IHwgdW5kZWZpbmVkIHtcbiAgY29uc3QgY29tcG9uZW50ID0gY29ubmVjdGlvbi5mV2F5cG9pbnRzKCk7XG4gIGNvbnN0IHJhZGl1cyA9IGNvbXBvbmVudD8ucmFkaXVzKCkgfHwgODtcblxuICByZXR1cm4gY29tcG9uZW50Py53YXlwb2ludHMoKS5maW5kKCh4KSA9PiBpc1BvaW50ZXJJbnNpZGVQb2ludChwb3NpdGlvbiwgeCwgcmFkaXVzKSk7XG59XG4iXX0=
@@ -0,0 +1,7 @@
1
+ import { isPointerInsidePoint } from './is-pointer-inside-point';
2
+ export function findWaypointCandidate(connection, position) {
3
+ const component = connection.fWaypoints();
4
+ const radius = component?.radius() || 8;
5
+ return component?.candidates().find((x) => isPointerInsidePoint(position, x, radius));
6
+ }
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZC13YXlwb2ludC1jYW5kaWRhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi12Mi9jb21wb25lbnRzL2Nvbm5lY3Rpb24td2F5cG9pbnRzL3V0aWxzL2ZpbmQtd2F5cG9pbnQtY2FuZGlkYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBR2pFLE1BQU0sVUFBVSxxQkFBcUIsQ0FDbkMsVUFBd0UsRUFDeEUsUUFBZ0I7SUFFaEIsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQzFDLE1BQU0sTUFBTSxHQUFHLFNBQVMsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFFeEMsT0FBTyxTQUFTLEVBQUUsVUFBVSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7QUFDeEYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBpc1BvaW50ZXJJbnNpZGVQb2ludCB9IGZyb20gJy4vaXMtcG9pbnRlci1pbnNpZGUtcG9pbnQnO1xuaW1wb3J0IHsgRkNvbm5lY3Rpb25XYXlwb2ludHNCYXNlIH0gZnJvbSAnLi4vbW9kZWxzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGZpbmRXYXlwb2ludENhbmRpZGF0ZShcbiAgY29ubmVjdGlvbjogeyBmV2F5cG9pbnRzOiBTaWduYWw8RkNvbm5lY3Rpb25XYXlwb2ludHNCYXNlIHwgdW5kZWZpbmVkPiB9LFxuICBwb3NpdGlvbjogSVBvaW50LFxuKTogSVBvaW50IHwgdW5kZWZpbmVkIHtcbiAgY29uc3QgY29tcG9uZW50ID0gY29ubmVjdGlvbi5mV2F5cG9pbnRzKCk7XG4gIGNvbnN0IHJhZGl1cyA9IGNvbXBvbmVudD8ucmFkaXVzKCkgfHwgODtcblxuICByZXR1cm4gY29tcG9uZW50Py5jYW5kaWRhdGVzKCkuZmluZCgoeCkgPT4gaXNQb2ludGVySW5zaWRlUG9pbnQocG9zaXRpb24sIHgsIHJhZGl1cykpO1xufVxuIl19
@@ -0,0 +1,5 @@
1
+ export * from './find-waypoint-candidate';
2
+ export * from './pick-waypoint';
3
+ export * from './find-existing-waypoint';
4
+ export * from './is-pointer-inside-point';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi12Mi9jb21wb25lbnRzL2Nvbm5lY3Rpb24td2F5cG9pbnRzL3V0aWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2ZpbmQtd2F5cG9pbnQtY2FuZGlkYXRlJztcbmV4cG9ydCAqIGZyb20gJy4vcGljay13YXlwb2ludCc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbmQtZXhpc3Rpbmctd2F5cG9pbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9pcy1wb2ludGVyLWluc2lkZS1wb2ludCc7XG4iXX0=
@@ -0,0 +1,4 @@
1
+ export function isPointerInsidePoint(point, circleCenter, radius) {
2
+ return (point.x - circleCenter.x) ** 2 + (point.y - circleCenter.y) ** 2 <= radius ** 2;
3
+ }
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtcG9pbnRlci1pbnNpZGUtcG9pbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi12Mi9jb21wb25lbnRzL2Nvbm5lY3Rpb24td2F5cG9pbnRzL3V0aWxzL2lzLXBvaW50ZXItaW5zaWRlLXBvaW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxLQUFhLEVBQUUsWUFBb0IsRUFBRSxNQUFjO0lBQ3RGLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksTUFBTSxJQUFJLENBQUMsQ0FBQztBQUMxRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnQGZvYmxleC8yZCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1BvaW50ZXJJbnNpZGVQb2ludChwb2ludDogSVBvaW50LCBjaXJjbGVDZW50ZXI6IElQb2ludCwgcmFkaXVzOiBudW1iZXIpOiBib29sZWFuIHtcbiAgcmV0dXJuIChwb2ludC54IC0gY2lyY2xlQ2VudGVyLngpICoqIDIgKyAocG9pbnQueSAtIGNpcmNsZUNlbnRlci55KSAqKiAyIDw9IHJhZGl1cyAqKiAyO1xufVxuIl19
@@ -0,0 +1,16 @@
1
+ import { findWaypointCandidate } from './find-waypoint-candidate';
2
+ import { findExistingWaypoint } from './find-existing-waypoint';
3
+ export function pickWaypoint(connections, position) {
4
+ for (const connection of connections) {
5
+ const waypoint = findExistingWaypoint(connection, position);
6
+ if (waypoint && connection.fWaypoints()?.visibility()) {
7
+ return { connection, waypoint };
8
+ }
9
+ const candidate = findWaypointCandidate(connection, position);
10
+ if (candidate && connection.fWaypoints()?.visibility()) {
11
+ return { connection, candidate };
12
+ }
13
+ }
14
+ return undefined;
15
+ }
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGljay13YXlwb2ludC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uLXYyL2NvbXBvbmVudHMvY29ubmVjdGlvbi13YXlwb2ludHMvdXRpbHMvcGljay13YXlwb2ludC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQVVoRSxNQUFNLFVBQVUsWUFBWSxDQUMxQixXQUF5QixFQUN6QixRQUFnQjtJQUVoQixLQUFLLE1BQU0sVUFBVSxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQ3JDLE1BQU0sUUFBUSxHQUFHLG9CQUFvQixDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUM1RCxJQUFJLFFBQVEsSUFBSSxVQUFVLENBQUMsVUFBVSxFQUFFLEVBQUUsVUFBVSxFQUFFLEVBQUUsQ0FBQztZQUN0RCxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxDQUFDO1FBQ2xDLENBQUM7UUFFRCxNQUFNLFNBQVMsR0FBRyxxQkFBcUIsQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDOUQsSUFBSSxTQUFTLElBQUksVUFBVSxDQUFDLFVBQVUsRUFBRSxFQUFFLFVBQVUsRUFBRSxFQUFFLENBQUM7WUFDdkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsQ0FBQztRQUNuQyxDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IFNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBGQ29ubmVjdGlvbldheXBvaW50c0Jhc2UgfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHsgZmluZFdheXBvaW50Q2FuZGlkYXRlIH0gZnJvbSAnLi9maW5kLXdheXBvaW50LWNhbmRpZGF0ZSc7XG5pbXBvcnQgeyBmaW5kRXhpc3RpbmdXYXlwb2ludCB9IGZyb20gJy4vZmluZC1leGlzdGluZy13YXlwb2ludCc7XG5cbmV4cG9ydCB0eXBlIFdheXBvaW50UGljazxUPiA9XG4gIHwgeyBjb25uZWN0aW9uOiBUOyB3YXlwb2ludDogSVBvaW50OyBjYW5kaWRhdGU/OiBuZXZlciB9XG4gIHwgeyBjb25uZWN0aW9uOiBUOyBjYW5kaWRhdGU6IElQb2ludDsgd2F5cG9pbnQ/OiBuZXZlciB9O1xuXG50eXBlIEhhc1dheXBvaW50cyA9IHtcbiAgZldheXBvaW50czogU2lnbmFsPEZDb25uZWN0aW9uV2F5cG9pbnRzQmFzZSB8IHVuZGVmaW5lZD47XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gcGlja1dheXBvaW50PFQgZXh0ZW5kcyBIYXNXYXlwb2ludHM+KFxuICBjb25uZWN0aW9uczogcmVhZG9ubHkgVFtdLFxuICBwb3NpdGlvbjogSVBvaW50LFxuKTogV2F5cG9pbnRQaWNrPFQ+IHwgdW5kZWZpbmVkIHtcbiAgZm9yIChjb25zdCBjb25uZWN0aW9uIG9mIGNvbm5lY3Rpb25zKSB7XG4gICAgY29uc3Qgd2F5cG9pbnQgPSBmaW5kRXhpc3RpbmdXYXlwb2ludChjb25uZWN0aW9uLCBwb3NpdGlvbik7XG4gICAgaWYgKHdheXBvaW50ICYmIGNvbm5lY3Rpb24uZldheXBvaW50cygpPy52aXNpYmlsaXR5KCkpIHtcbiAgICAgIHJldHVybiB7IGNvbm5lY3Rpb24sIHdheXBvaW50IH07XG4gICAgfVxuXG4gICAgY29uc3QgY2FuZGlkYXRlID0gZmluZFdheXBvaW50Q2FuZGlkYXRlKGNvbm5lY3Rpb24sIHBvc2l0aW9uKTtcbiAgICBpZiAoY2FuZGlkYXRlICYmIGNvbm5lY3Rpb24uZldheXBvaW50cygpPy52aXNpYmlsaXR5KCkpIHtcbiAgICAgIHJldHVybiB7IGNvbm5lY3Rpb24sIGNhbmRpZGF0ZSB9O1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB1bmRlZmluZWQ7XG59XG4iXX0=
@@ -0,0 +1,112 @@
1
+ import { contentChild, contentChildren, Directive, ElementRef, inject, input, signal, viewChild, } from '@angular/core';
2
+ import { LineExtensions, PointExtensions } from '@foblex/2d';
3
+ import { mixinChangeSelection, mixinChangeVisibility, } from '../../mixins';
4
+ import { ConnectionLineBuilder, EFConnectionConnectableSide } from '../utils';
5
+ import { EFConnectableSide } from '../enums';
6
+ import { F_CONNECTION_PATH } from './connection-path';
7
+ import { F_CONNECTION_GRADIENT } from './connection-gradient';
8
+ import { F_CONNECTION_DRAG_HANDLE_END, F_CONNECTION_DRAG_HANDLE_START, } from './connection-drag-handles';
9
+ import { F_CONNECTION_SELECTION } from './connection-selection';
10
+ import { ConnectionContentLayoutEngine, F_CONNECTION_CONTENT, } from './connection-content';
11
+ import { F_CONNECTION_WAYPOINTS } from './connection-waypoints';
12
+ import * as i0 from "@angular/core";
13
+ const MIXIN_BASE = mixinChangeSelection(mixinChangeVisibility(class {
14
+ hostElement;
15
+ constructor(hostElement) {
16
+ this.hostElement = hostElement;
17
+ }
18
+ }));
19
+ export class FConnectionBase extends MIXIN_BASE {
20
+ _fConnectionBuilder = inject(ConnectionLineBuilder);
21
+ fStartColor = input('black');
22
+ fEndColor = input('black');
23
+ path = '';
24
+ line = LineExtensions.initialize();
25
+ fReassignableStart = signal(false);
26
+ fDraggingDisabled = signal(false);
27
+ fSelectionDisabled = signal(false);
28
+ fDefs = viewChild.required('defs');
29
+ fPath = viewChild.required(F_CONNECTION_PATH);
30
+ fGradient = viewChild.required(F_CONNECTION_GRADIENT);
31
+ fDragHandleStart = viewChild(F_CONNECTION_DRAG_HANDLE_START);
32
+ fDragHandleEnd = viewChild.required(F_CONNECTION_DRAG_HANDLE_END);
33
+ fSelection = viewChild.required(F_CONNECTION_SELECTION);
34
+ fContents = contentChildren(F_CONNECTION_CONTENT, {
35
+ descendants: true,
36
+ });
37
+ fWaypoints = contentChild(F_CONNECTION_WAYPOINTS);
38
+ fInputSide = signal(EFConnectionConnectableSide.DEFAULT);
39
+ _sourceSide = EFConnectableSide.AUTO;
40
+ fOutputSide = signal(EFConnectionConnectableSide.DEFAULT);
41
+ _targetSide = EFConnectableSide.AUTO;
42
+ _penultimatePoint = PointExtensions.initialize();
43
+ _secondPoint = PointExtensions.initialize();
44
+ constructor() {
45
+ super(inject((ElementRef)).nativeElement);
46
+ }
47
+ initialize() {
48
+ this.fPath().initialize();
49
+ this.fGradient().initialize();
50
+ this.redraw();
51
+ }
52
+ isContains(element) {
53
+ return ((this.hostElement.firstChild?.lastChild).contains(element) ||
54
+ Array.from(this.fContents()?.values() ?? []).some((x) => x.hostElement?.contains(element)) ||
55
+ this.fWaypoints()?.hostElement?.contains(element));
56
+ }
57
+ setLine({ point1, point2 }) {
58
+ this.line = LineExtensions.initialize(point1, point2);
59
+ const { path, points, penultimatePoint, secondPoint, candidates } = this._getPathResult(point1, point2);
60
+ this.path = path;
61
+ this._penultimatePoint = penultimatePoint || point1;
62
+ this._secondPoint = secondPoint || point2;
63
+ this.fWaypoints()?.candidates.set(candidates || []);
64
+ new ConnectionContentLayoutEngine().layout(points || [], this._contents());
65
+ }
66
+ _contents() {
67
+ return Array.from(this.fContents()?.values() ?? []);
68
+ }
69
+ _getPathResult(source, target) {
70
+ return this._fConnectionBuilder.handle({
71
+ type: this.fType,
72
+ payload: {
73
+ source,
74
+ sourceSide: this._sourceSide,
75
+ target,
76
+ targetSide: this._targetSide,
77
+ radius: this.fRadius,
78
+ offset: this.fOffset,
79
+ waypoints: this.fWaypoints()?.waypoints() || [],
80
+ },
81
+ });
82
+ }
83
+ markChildrenAsSelected() {
84
+ this.fPath().select();
85
+ }
86
+ unmarkChildrenAsSelected() {
87
+ this.fPath().deselect();
88
+ }
89
+ redraw() {
90
+ this.fPath().setPath(this.path);
91
+ this.fSelection().setPath(this.path);
92
+ this.fGradient().redraw(this.line);
93
+ this.fDragHandleEnd().redraw(this._penultimatePoint, this.line.point2);
94
+ this.fDragHandleStart()?.redraw(this._secondPoint, this.line.point1);
95
+ }
96
+ /**
97
+ * Applies the resolved sides to the connection. Don't call this method directly; it's used internally.
98
+ *
99
+ * @param sourceSide The resolved side for the source element.
100
+ * @param targetSide The resolved side for the target element.
101
+ */
102
+ _applyResolvedSidesToConnection(sourceSide, targetSide) {
103
+ this._sourceSide = sourceSide;
104
+ this._targetSide = targetSide;
105
+ }
106
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionBase, deps: [], target: i0.ɵɵFactoryTarget.Directive });
107
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "18.2.13", type: FConnectionBase, inputs: { fStartColor: { classPropertyName: "fStartColor", publicName: "fStartColor", isSignal: true, isRequired: false, transformFunction: null }, fEndColor: { classPropertyName: "fEndColor", publicName: "fEndColor", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "fContents", predicate: F_CONNECTION_CONTENT, descendants: true, isSignal: true }, { propertyName: "fWaypoints", first: true, predicate: F_CONNECTION_WAYPOINTS, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "fDefs", first: true, predicate: ["defs"], descendants: true, isSignal: true }, { propertyName: "fPath", first: true, predicate: F_CONNECTION_PATH, descendants: true, isSignal: true }, { propertyName: "fGradient", first: true, predicate: F_CONNECTION_GRADIENT, descendants: true, isSignal: true }, { propertyName: "fDragHandleStart", first: true, predicate: F_CONNECTION_DRAG_HANDLE_START, descendants: true, isSignal: true }, { propertyName: "fDragHandleEnd", first: true, predicate: F_CONNECTION_DRAG_HANDLE_END, descendants: true, isSignal: true }, { propertyName: "fSelection", first: true, predicate: F_CONNECTION_SELECTION, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0 });
108
+ }
109
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionBase, decorators: [{
110
+ type: Directive
111
+ }], ctorParameters: () => [] });
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi12Mi9jb21wb25lbnRzL2YtY29ubmVjdGlvbi1iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxZQUFZLEVBQ1osZUFBZSxFQUNmLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBRU4sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBaUIsY0FBYyxFQUFFLGVBQWUsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUM1RSxPQUFPLEVBR0wsb0JBQW9CLEVBQ3BCLHFCQUFxQixHQUN0QixNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQUUscUJBQXFCLEVBQXdCLDJCQUEyQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxpQkFBaUIsRUFBb0IsTUFBTSxVQUFVLENBQUM7QUFDL0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUNMLDRCQUE0QixFQUM1Qiw4QkFBOEIsR0FDL0IsTUFBTSwyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNoRSxPQUFPLEVBQ0wsNkJBQTZCLEVBQzdCLG9CQUFvQixHQUVyQixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQUVoRSxNQUFNLFVBQVUsR0FBRyxvQkFBb0IsQ0FDckMscUJBQXFCLENBQ25CO0lBQ3FCO0lBQW5CLFlBQW1CLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO0lBQUcs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QUMsTUFBTSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVlLHdCQUF3QjtRQUN0QyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVNLE1BQU07UUFDWCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNyQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksK0JBQStCLENBQ3BDLFVBQTZCLEVBQzdCLFVBQTZCO1FBRTdCLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO1FBQzlCLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO0lBQ2hDLENBQUM7d0dBdEptQixlQUFlOzRGQUFmLGVBQWUsOFVBZ0RTLG9CQUFvQiw2RkFJdEIsc0JBQXNCLHVNQWRyQixpQkFBaUIsNEZBRWIscUJBQXFCLG1HQUV2Qiw4QkFBOEIsaUdBRXZCLDRCQUE0Qiw2RkFFaEMsc0JBQXNCOzs0RkE5Q2xELGVBQWU7a0JBRHBDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBjb250ZW50Q2hpbGQsXG4gIGNvbnRlbnRDaGlsZHJlbixcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBpbmplY3QsXG4gIGlucHV0LFxuICBzaWduYWwsXG4gIFNpZ25hbCxcbiAgdmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElMaW5lLCBJUG9pbnQsIExpbmVFeHRlbnNpb25zLCBQb2ludEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7XG4gIElDYW5DaGFuZ2VWaXNpYmlsaXR5LFxuICBJU2VsZWN0YWJsZSxcbiAgbWl4aW5DaGFuZ2VTZWxlY3Rpb24sXG4gIG1peGluQ2hhbmdlVmlzaWJpbGl0eSxcbn0gZnJvbSAnLi4vLi4vbWl4aW5zJztcbmltcG9ydCB7IENvbm5lY3Rpb25MaW5lQnVpbGRlciwgRUZDb25uZWN0aW9uQmVoYXZpb3IsIEVGQ29ubmVjdGlvbkNvbm5lY3RhYmxlU2lkZSB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IEVGQ29ubmVjdGFibGVTaWRlLCBFRkNvbm5lY3Rpb25UeXBlIH0gZnJvbSAnLi4vZW51bXMnO1xuaW1wb3J0IHsgRl9DT05ORUNUSU9OX1BBVEggfSBmcm9tICcuL2Nvbm5lY3Rpb24tcGF0aCc7XG5pbXBvcnQgeyBGX0NPTk5FQ1RJT05fR1JBRElFTlQgfSBmcm9tICcuL2Nvbm5lY3Rpb24tZ3JhZGllbnQnO1xuaW1wb3J0IHtcbiAgRl9DT05ORUNUSU9OX0RSQUdfSEFORExFX0VORCxcbiAgRl9DT05ORUNUSU9OX0RSQUdfSEFORExFX1NUQVJULFxufSBmcm9tICcuL2Nvbm5lY3Rpb24tZHJhZy1oYW5kbGVzJztcbmltcG9ydCB7IEZfQ09OTkVDVElPTl9TRUxFQ1RJT04gfSBmcm9tICcuL2Nvbm5lY3Rpb24tc2VsZWN0aW9uJztcbmltcG9ydCB7XG4gIENvbm5lY3Rpb25Db250ZW50TGF5b3V0RW5naW5lLFxuICBGX0NPTk5FQ1RJT05fQ09OVEVOVCxcbiAgRkNvbm5lY3Rpb25Db250ZW50QmFzZSxcbn0gZnJvbSAnLi9jb25uZWN0aW9uLWNvbnRlbnQnO1xuaW1wb3J0IHsgRl9DT05ORUNUSU9OX1dBWVBPSU5UUyB9IGZyb20gJy4vY29ubmVjdGlvbi13YXlwb2ludHMnO1xuXG5jb25zdCBNSVhJTl9CQVNFID0gbWl4aW5DaGFuZ2VTZWxlY3Rpb24oXG4gIG1peGluQ2hhbmdlVmlzaWJpbGl0eShcbiAgICBjbGFzcyB7XG4gICAgICBjb25zdHJ1Y3RvcihwdWJsaWMgaG9zdEVsZW1lbnQ6IEhUTUxFbGVtZW50KSB7fVxuICAgIH0sXG4gICksXG4pO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGQ29ubmVjdGlvbkJhc2VcbiAgZXh0ZW5kcyBNSVhJTl9CQVNFXG4gIGltcGxlbWVudHMgSVNlbGVjdGFibGUsIElDYW5DaGFuZ2VWaXNpYmlsaXR5XG57XG4gIHByaXZhdGUgcmVhZG9ubHkgX2ZDb25uZWN0aW9uQnVpbGRlciA9IGluamVjdChDb25uZWN0aW9uTGluZUJ1aWxkZXIpO1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBvdmVycmlkZSBmSWQ6IFNpZ25hbDxzdHJpbmc+O1xuXG4gIHB1YmxpYyByZWFkb25seSBmU3RhcnRDb2xvciA9IGlucHV0PHN0cmluZz4oJ2JsYWNrJyk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGZFbmRDb2xvciA9IGlucHV0PHN0cmluZz4oJ2JsYWNrJyk7XG5cbiAgcHVibGljIGFic3RyYWN0IGZPdXRwdXRJZDogU2lnbmFsPHN0cmluZz47XG5cbiAgcHVibGljIGFic3RyYWN0IGZJbnB1dElkOiBTaWduYWw8c3RyaW5nPjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZlJhZGl1czogbnVtYmVyO1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmT2Zmc2V0OiBudW1iZXI7XG5cbiAgcHJvdGVjdGVkIHBhdGg6IHN0cmluZyA9ICcnO1xuXG4gIHB1YmxpYyBsaW5lID0gTGluZUV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpO1xuXG4gIHB1YmxpYyByZWFkb25seSBmUmVhc3NpZ25hYmxlU3RhcnQ6IFNpZ25hbDxib29sZWFuPiA9IHNpZ25hbChmYWxzZSk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGZEcmFnZ2luZ0Rpc2FibGVkOiBTaWduYWw8Ym9vbGVhbj4gPSBzaWduYWwoZmFsc2UpO1xuXG4gIHB1YmxpYyBvdmVycmlkZSByZWFkb25seSBmU2VsZWN0aW9uRGlzYWJsZWQ6IFNpZ25hbDxib29sZWFuPiA9IHNpZ25hbChmYWxzZSk7XG5cbiAgcHVibGljIGFic3RyYWN0IGJvdW5kaW5nRWxlbWVudDogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmQmVoYXZpb3I6IEVGQ29ubmVjdGlvbkJlaGF2aW9yO1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmVHlwZTogRUZDb25uZWN0aW9uVHlwZSB8IHN0cmluZztcblxuICBwdWJsaWMgcmVhZG9ubHkgZkRlZnMgPSB2aWV3Q2hpbGQucmVxdWlyZWQ8RWxlbWVudFJlZjxTVkdEZWZzRWxlbWVudD4+KCdkZWZzJyk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGZQYXRoID0gdmlld0NoaWxkLnJlcXVpcmVkKEZfQ09OTkVDVElPTl9QQVRIKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgZkdyYWRpZW50ID0gdmlld0NoaWxkLnJlcXVpcmVkKEZfQ09OTkVDVElPTl9HUkFESUVOVCk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGZEcmFnSGFuZGxlU3RhcnQgPSB2aWV3Q2hpbGQoRl9DT05ORUNUSU9OX0RSQUdfSEFORExFX1NUQVJUKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgZkRyYWdIYW5kbGVFbmQgPSB2aWV3Q2hpbGQucmVxdWlyZWQoRl9DT05ORUNUSU9OX0RSQUdfSEFORExFX0VORCk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGZTZWxlY3Rpb24gPSB2aWV3Q2hpbGQucmVxdWlyZWQoRl9DT05ORUNUSU9OX1NFTEVDVElPTik7XG5cbiAgcHVibGljIHJlYWRvbmx5IGZDb250ZW50cyA9IGNvbnRlbnRDaGlsZHJlbihGX0NPTk5FQ1RJT05fQ09OVEVOVCwge1xuICAgIGRlc2NlbmRhbnRzOiB0cnVlLFxuICB9KTtcblxuICBwdWJsaWMgcmVhZG9ubHkgZldheXBvaW50cyA9IGNvbnRlbnRDaGlsZChGX0NPTk5FQ1RJT05fV0FZUE9JTlRTKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgZklucHV0U2lkZTogU2lnbmFsPEVGQ29ubmVjdGlvbkNvbm5lY3RhYmxlU2lkZT4gPSBzaWduYWwoXG4gICAgRUZDb25uZWN0aW9uQ29ubmVjdGFibGVTaWRlLkRFRkFVTFQsXG4gICk7XG5cbiAgcHJpdmF0ZSBfc291cmNlU2lkZSA9IEVGQ29ubmVjdGFibGVTaWRlLkFVVE87XG5cbiAgcHVibGljIHJlYWRvbmx5IGZPdXRwdXRTaWRlOiBTaWduYWw8RUZDb25uZWN0aW9uQ29ubmVjdGFibGVTaWRlPiA9IHNpZ25hbChcbiAgICBFRkNvbm5lY3Rpb25Db25uZWN0YWJsZVNpZGUuREVGQVVMVCxcbiAgKTtcblxuICBwcml2YXRlIF90YXJnZXRTaWRlID0gRUZDb25uZWN0YWJsZVNpZGUuQVVUTztcblxuICBwcml2YXRlIF9wZW51bHRpbWF0ZVBvaW50ID0gUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoKTtcbiAgcHJpdmF0ZSBfc2Vjb25kUG9pbnQgPSBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpO1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcihpbmplY3QoRWxlbWVudFJlZjxIVE1MRWxlbWVudD4pLm5hdGl2ZUVsZW1lbnQpO1xuICB9XG5cbiAgcHVibGljIGluaXRpYWxpemUoKTogdm9pZCB7XG4gICAgdGhpcy5mUGF0aCgpLmluaXRpYWxpemUoKTtcbiAgICB0aGlzLmZHcmFkaWVudCgpLmluaXRpYWxpemUoKTtcbiAgICB0aGlzLnJlZHJhdygpO1xuICB9XG5cbiAgcHVibGljIGlzQ29udGFpbnMoZWxlbWVudDogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgICh0aGlzLmhvc3RFbGVtZW50LmZpcnN0Q2hpbGQ/Lmxhc3RDaGlsZCBhcyBIVE1MRWxlbWVudCkuY29udGFpbnMoZWxlbWVudCkgfHxcbiAgICAgIEFycmF5LmZyb20odGhpcy5mQ29udGVudHMoKT8udmFsdWVzKCkgPz8gW10pLnNvbWUoKHgpID0+IHguaG9zdEVsZW1lbnQ/LmNvbnRhaW5zKGVsZW1lbnQpKSB8fFxuICAgICAgdGhpcy5mV2F5cG9pbnRzKCk/Lmhvc3RFbGVtZW50Py5jb250YWlucyhlbGVtZW50KVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgc2V0TGluZSh7IHBvaW50MSwgcG9pbnQyIH06IElMaW5lKTogdm9pZCB7XG4gICAgdGhpcy5saW5lID0gTGluZUV4dGVuc2lvbnMuaW5pdGlhbGl6ZShwb2ludDEsIHBvaW50Mik7XG5cbiAgICBjb25zdCB7IHBhdGgsIHBvaW50cywgcGVudWx0aW1hdGVQb2ludCwgc2Vjb25kUG9pbnQsIGNhbmRpZGF0ZXMgfSA9IHRoaXMuX2dldFBhdGhSZXN1bHQoXG4gICAgICBwb2ludDEsXG4gICAgICBwb2ludDIsXG4gICAgKTtcblxuICAgIHRoaXMucGF0aCA9IHBhdGg7XG4gICAgdGhpcy5fcGVudWx0aW1hdGVQb2ludCA9IHBlbnVsdGltYXRlUG9pbnQgfHwgcG9pbnQxO1xuICAgIHRoaXMuX3NlY29uZFBvaW50ID0gc2Vjb25kUG9pbnQgfHwgcG9pbnQyO1xuICAgIHRoaXMuZldheXBvaW50cygpPy5jYW5kaWRhdGVzLnNldChjYW5kaWRhdGVzIHx8IFtdKTtcblxuICAgIG5ldyBDb25uZWN0aW9uQ29udGVudExheW91dEVuZ2luZSgpLmxheW91dChwb2ludHMgfHwgW10sIHRoaXMuX2NvbnRlbnRzKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY29udGVudHMoKTogRkNvbm5lY3Rpb25Db250ZW50QmFzZVtdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLmZDb250ZW50cygpPy52YWx1ZXMoKSA/PyBbXSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRQYXRoUmVzdWx0KHNvdXJjZTogSVBvaW50LCB0YXJnZXQ6IElQb2ludCkge1xuICAgIHJldHVybiB0aGlzLl9mQ29ubmVjdGlvbkJ1aWxkZXIuaGFuZGxlKHtcbiAgICAgIHR5cGU6IHRoaXMuZlR5cGUsXG4gICAgICBwYXlsb2FkOiB7XG4gICAgICAgIHNvdXJjZSxcbiAgICAgICAgc291cmNlU2lkZTogdGhpcy5fc291cmNlU2lkZSxcbiAgICAgICAgdGFyZ2V0LFxuICAgICAgICB0YXJnZXRTaWRlOiB0aGlzLl90YXJnZXRTaWRlLFxuICAgICAgICByYWRpdXM6IHRoaXMuZlJhZGl1cyxcbiAgICAgICAgb2Zmc2V0OiB0aGlzLmZPZmZzZXQsXG4gICAgICAgIHdheXBvaW50czogdGhpcy5mV2F5cG9pbnRzKCk/LndheXBvaW50cygpIHx8IFtdLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBtYXJrQ2hpbGRyZW5Bc1NlbGVjdGVkKCk6IHZvaWQge1xuICAgIHRoaXMuZlBhdGgoKS5zZWxlY3QoKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSB1bm1hcmtDaGlsZHJlbkFzU2VsZWN0ZWQoKTogdm9pZCB7XG4gICAgdGhpcy5mUGF0aCgpLmRlc2VsZWN0KCk7XG4gIH1cblxuICBwdWJsaWMgcmVkcmF3KCk6IHZvaWQge1xuICAgIHRoaXMuZlBhdGgoKS5zZXRQYXRoKHRoaXMucGF0aCk7XG4gICAgdGhpcy5mU2VsZWN0aW9uKCkuc2V0UGF0aCh0aGlzLnBhdGgpO1xuICAgIHRoaXMuZkdyYWRpZW50KCkucmVkcmF3KHRoaXMubGluZSk7XG4gICAgdGhpcy5mRHJhZ0hhbmRsZUVuZCgpLnJlZHJhdyh0aGlzLl9wZW51bHRpbWF0ZVBvaW50LCB0aGlzLmxpbmUucG9pbnQyKTtcbiAgICB0aGlzLmZEcmFnSGFuZGxlU3RhcnQoKT8ucmVkcmF3KHRoaXMuX3NlY29uZFBvaW50LCB0aGlzLmxpbmUucG9pbnQxKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBcHBsaWVzIHRoZSByZXNvbHZlZCBzaWRlcyB0byB0aGUgY29ubmVjdGlvbi4gRG9uJ3QgY2FsbCB0aGlzIG1ldGhvZCBkaXJlY3RseTsgaXQncyB1c2VkIGludGVybmFsbHkuXG4gICAqXG4gICAqIEBwYXJhbSBzb3VyY2VTaWRlIFRoZSByZXNvbHZlZCBzaWRlIGZvciB0aGUgc291cmNlIGVsZW1lbnQuXG4gICAqIEBwYXJhbSB0YXJnZXRTaWRlIFRoZSByZXNvbHZlZCBzaWRlIGZvciB0aGUgdGFyZ2V0IGVsZW1lbnQuXG4gICAqL1xuICBwdWJsaWMgX2FwcGx5UmVzb2x2ZWRTaWRlc1RvQ29ubmVjdGlvbihcbiAgICBzb3VyY2VTaWRlOiBFRkNvbm5lY3RhYmxlU2lkZSxcbiAgICB0YXJnZXRTaWRlOiBFRkNvbm5lY3RhYmxlU2lkZSxcbiAgKTogdm9pZCB7XG4gICAgdGhpcy5fc291cmNlU2lkZSA9IHNvdXJjZVNpZGU7XG4gICAgdGhpcy5fdGFyZ2V0U2lkZSA9IHRhcmdldFNpZGU7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,9 @@
1
+ export * from './connection-content';
2
+ export * from './connection-waypoints';
3
+ export * from './connection-marker';
4
+ export * from './connection-gradient';
5
+ export * from './connection-path';
6
+ export * from './connection-selection';
7
+ export * from './connection-drag-handles';
8
+ export * from './f-connection-base';
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi12Mi9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29ubmVjdGlvbi1jb250ZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY29ubmVjdGlvbi13YXlwb2ludHMnO1xuZXhwb3J0ICogZnJvbSAnLi9jb25uZWN0aW9uLW1hcmtlcic7XG5leHBvcnQgKiBmcm9tICcuL2Nvbm5lY3Rpb24tZ3JhZGllbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb25uZWN0aW9uLXBhdGgnO1xuZXhwb3J0ICogZnJvbSAnLi9jb25uZWN0aW9uLXNlbGVjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2Nvbm5lY3Rpb24tZHJhZy1oYW5kbGVzJztcbmV4cG9ydCAqIGZyb20gJy4vZi1jb25uZWN0aW9uLWJhc2UnO1xuIl19
@@ -0,0 +1,12 @@
1
+ export var EFConnectableSide;
2
+ (function (EFConnectableSide) {
3
+ EFConnectableSide["LEFT"] = "left";
4
+ EFConnectableSide["TOP"] = "top";
5
+ EFConnectableSide["RIGHT"] = "right";
6
+ EFConnectableSide["BOTTOM"] = "bottom";
7
+ EFConnectableSide["CALCULATE"] = "calculate";
8
+ EFConnectableSide["CALCULATE_HORIZONTAL"] = "calculate_horizontal";
9
+ EFConnectableSide["CALCULATE_VERTICAL"] = "calculate_vertical";
10
+ EFConnectableSide["AUTO"] = "auto";
11
+ })(EFConnectableSide || (EFConnectableSide = {}));
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZS1mLWNvbm5lY3RhYmxlLXNpZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi12Mi9lbnVtcy9lLWYtY29ubmVjdGFibGUtc2lkZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxpQkFnQlg7QUFoQkQsV0FBWSxpQkFBaUI7SUFDM0Isa0NBQWEsQ0FBQTtJQUViLGdDQUFXLENBQUE7SUFFWCxvQ0FBZSxDQUFBO0lBRWYsc0NBQWlCLENBQUE7SUFFakIsNENBQXVCLENBQUE7SUFFdkIsa0VBQTZDLENBQUE7SUFFN0MsOERBQXlDLENBQUE7SUFFekMsa0NBQWEsQ0FBQTtBQUNmLENBQUMsRUFoQlcsaUJBQWlCLEtBQWpCLGlCQUFpQixRQWdCNUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBFRkNvbm5lY3RhYmxlU2lkZSB7XG4gIExFRlQgPSAnbGVmdCcsXG5cbiAgVE9QID0gJ3RvcCcsXG5cbiAgUklHSFQgPSAncmlnaHQnLFxuXG4gIEJPVFRPTSA9ICdib3R0b20nLFxuXG4gIENBTENVTEFURSA9ICdjYWxjdWxhdGUnLFxuXG4gIENBTENVTEFURV9IT1JJWk9OVEFMID0gJ2NhbGN1bGF0ZV9ob3Jpem9udGFsJyxcblxuICBDQUxDVUxBVEVfVkVSVElDQUwgPSAnY2FsY3VsYXRlX3ZlcnRpY2FsJyxcblxuICBBVVRPID0gJ2F1dG8nLFxufVxuIl19
@@ -0,0 +1,8 @@
1
+ export var EFConnectionType;
2
+ (function (EFConnectionType) {
3
+ EFConnectionType["SEGMENT"] = "segment";
4
+ EFConnectionType["STRAIGHT"] = "straight";
5
+ EFConnectionType["BEZIER"] = "bezier";
6
+ EFConnectionType["ADAPTIVE_CURVE"] = "adaptive-curve";
7
+ })(EFConnectionType || (EFConnectionType = {}));
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZS1mLWNvbm5lY3Rpb24tdHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uLXYyL2VudW1zL2UtZi1jb25uZWN0aW9uLXR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksZ0JBUVg7QUFSRCxXQUFZLGdCQUFnQjtJQUMxQix1Q0FBbUIsQ0FBQTtJQUVuQix5Q0FBcUIsQ0FBQTtJQUVyQixxQ0FBaUIsQ0FBQTtJQUVqQixxREFBaUMsQ0FBQTtBQUNuQyxDQUFDLEVBUlcsZ0JBQWdCLEtBQWhCLGdCQUFnQixRQVEzQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEVGQ29ubmVjdGlvblR5cGUge1xuICBTRUdNRU5UID0gJ3NlZ21lbnQnLFxuXG4gIFNUUkFJR0hUID0gJ3N0cmFpZ2h0JyxcblxuICBCRVpJRVIgPSAnYmV6aWVyJyxcblxuICBBREFQVElWRV9DVVJWRSA9ICdhZGFwdGl2ZS1jdXJ2ZScsXG59XG4iXX0=
@@ -0,0 +1,3 @@
1
+ export * from './e-f-connectable-side';
2
+ export * from './e-f-connection-type';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi12Mi9lbnVtcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDO0FBRXZDLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2UtZi1jb25uZWN0YWJsZS1zaWRlJztcblxuZXhwb3J0ICogZnJvbSAnLi9lLWYtY29ubmVjdGlvbi10eXBlJztcbiJdfQ==
@@ -0,0 +1,5 @@
1
+ export * from './components';
2
+ export * from './enums';
3
+ export * from './models';
4
+ export * from './utils';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi12Mi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2VudW1zJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMnO1xuIl19
@@ -0,0 +1,5 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ export const F_CONNECTION_COMPONENTS_PARENT = new InjectionToken('F_CONNECTION_COMPONENTS_PARENT');
3
+ export class FConnectionComponentsParent {
4
+ }
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLWNvbXBvbmVudHMtcGFyZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24tdjIvbW9kZWxzL2YtY29ubmVjdGlvbi1jb21wb25lbnRzLXBhcmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBSXZELE1BQU0sQ0FBQyxNQUFNLDhCQUE4QixHQUFHLElBQUksY0FBYyxDQUM5RCxnQ0FBZ0MsQ0FDakMsQ0FBQztBQUVGLE1BQU0sT0FBZ0IsMkJBQTJCO0NBcUJoRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuLCBTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVGQ29ubmVjdGFibGVTaWRlIH0gZnJvbSAnLi4vZW51bXMnO1xuaW1wb3J0IHsgRUZDb25uZWN0aW9uQmVoYXZpb3IsIEVGQ29ubmVjdGlvbkNvbm5lY3RhYmxlU2lkZSB9IGZyb20gJy4uL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IEZfQ09OTkVDVElPTl9DT01QT05FTlRTX1BBUkVOVCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxGQ29ubmVjdGlvbkNvbXBvbmVudHNQYXJlbnQ+KFxuICAnRl9DT05ORUNUSU9OX0NPTVBPTkVOVFNfUEFSRU5UJyxcbik7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGQ29ubmVjdGlvbkNvbXBvbmVudHNQYXJlbnQge1xuICBwdWJsaWMgYWJzdHJhY3QgZklkOiBTaWduYWw8c3RyaW5nPjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZk91dHB1dElkOiBTaWduYWw8c3RyaW5nPjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZklucHV0SWQ6IFNpZ25hbDxzdHJpbmc+O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmU3RhcnRDb2xvcjogU2lnbmFsPHN0cmluZz47XG5cbiAgcHVibGljIGFic3RyYWN0IGZFbmRDb2xvcjogU2lnbmFsPHN0cmluZz47XG5cbiAgcHVibGljIGFic3RyYWN0IGZCZWhhdmlvcjogRUZDb25uZWN0aW9uQmVoYXZpb3I7XG5cbiAgcHVibGljIGFic3RyYWN0IF9hcHBseVJlc29sdmVkU2lkZXNUb0Nvbm5lY3Rpb24oXG4gICAgc291cmNlU2lkZTogRUZDb25uZWN0YWJsZVNpZGUsXG4gICAgdGFyZ2V0U2lkZTogRUZDb25uZWN0YWJsZVNpZGUsXG4gICk6IHZvaWQ7XG5cbiAgcHVibGljIGFic3RyYWN0IGZJbnB1dFNpZGU6IFNpZ25hbDxFRkNvbm5lY3Rpb25Db25uZWN0YWJsZVNpZGU+O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmT3V0cHV0U2lkZTogU2lnbmFsPEVGQ29ubmVjdGlvbkNvbm5lY3RhYmxlU2lkZT47XG59XG4iXX0=
@@ -0,0 +1,9 @@
1
+ export class FConnectionWaypointsChangedEvent {
2
+ connectionId;
3
+ waypoints;
4
+ constructor(connectionId, waypoints) {
5
+ this.connectionId = connectionId;
6
+ this.waypoints = waypoints;
7
+ }
8
+ }
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLXdheXBvaW50cy1jaGFuZ2VkLWV2ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24tdjIvbW9kZWxzL2YtY29ubmVjdGlvbi13YXlwb2ludHMtY2hhbmdlZC1ldmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sZ0NBQWdDO0lBRXpCO0lBQ0E7SUFGbEIsWUFDa0IsWUFBb0IsRUFDcEIsU0FBbUI7UUFEbkIsaUJBQVksR0FBWixZQUFZLENBQVE7UUFDcEIsY0FBUyxHQUFULFNBQVMsQ0FBVTtJQUNsQyxDQUFDO0NBQ0wiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdAZm9ibGV4LzJkJztcblxuZXhwb3J0IGNsYXNzIEZDb25uZWN0aW9uV2F5cG9pbnRzQ2hhbmdlZEV2ZW50IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IGNvbm5lY3Rpb25JZDogc3RyaW5nLFxuICAgIHB1YmxpYyByZWFkb25seSB3YXlwb2ludHM6IElQb2ludFtdLFxuICApIHt9XG59XG4iXX0=
@@ -0,0 +1,3 @@
1
+ export * from './f-connection-components-parent';
2
+ export * from './f-connection-waypoints-changed-event';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi12Mi9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLHdDQUF3QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mLWNvbm5lY3Rpb24tY29tcG9uZW50cy1wYXJlbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9mLWNvbm5lY3Rpb24td2F5cG9pbnRzLWNoYW5nZWQtZXZlbnQnO1xuIl19
@@ -0,0 +1,15 @@
1
+ export class ConnectionBehaviourBuilderRequest {
2
+ sourceRect;
3
+ targetRect;
4
+ connection;
5
+ sourceConnectableSide;
6
+ targetConnectableSide;
7
+ constructor(sourceRect, targetRect, connection, sourceConnectableSide, targetConnectableSide) {
8
+ this.sourceRect = sourceRect;
9
+ this.targetRect = targetRect;
10
+ this.connection = connection;
11
+ this.sourceConnectableSide = sourceConnectableSide;
12
+ this.targetConnectableSide = targetConnectableSide;
13
+ }
14
+ }
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdGlvbi1iZWhhdmlvdXItYnVpbGRlci1yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24tdjIvdXRpbHMvY29ubmVjdGlvbi1iZWhhdmlvdXIvY29ubmVjdGlvbi1iZWhhdmlvdXItYnVpbGRlci1yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sT0FBTyxpQ0FBaUM7SUFFMUI7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUxsQixZQUNrQixVQUF3QixFQUN4QixVQUF3QixFQUN4QixVQUF1QyxFQUN2QyxxQkFBd0MsRUFDeEMscUJBQXdDO1FBSnhDLGVBQVUsR0FBVixVQUFVLENBQWM7UUFDeEIsZUFBVSxHQUFWLFVBQVUsQ0FBYztRQUN4QixlQUFVLEdBQVYsVUFBVSxDQUE2QjtRQUN2QywwQkFBcUIsR0FBckIscUJBQXFCLENBQW1CO1FBQ3hDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBbUI7SUFDdkQsQ0FBQztDQUNMIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVJvdW5kZWRSZWN0IH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBFRkNvbm5lY3RhYmxlU2lkZSB9IGZyb20gJy4uLy4uL2VudW1zJztcbmltcG9ydCB7IEZDb25uZWN0aW9uQ29tcG9uZW50c1BhcmVudCB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5cbmV4cG9ydCBjbGFzcyBDb25uZWN0aW9uQmVoYXZpb3VyQnVpbGRlclJlcXVlc3Qge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgc291cmNlUmVjdDogSVJvdW5kZWRSZWN0LFxuICAgIHB1YmxpYyByZWFkb25seSB0YXJnZXRSZWN0OiBJUm91bmRlZFJlY3QsXG4gICAgcHVibGljIHJlYWRvbmx5IGNvbm5lY3Rpb246IEZDb25uZWN0aW9uQ29tcG9uZW50c1BhcmVudCxcbiAgICBwdWJsaWMgcmVhZG9ubHkgc291cmNlQ29ubmVjdGFibGVTaWRlOiBFRkNvbm5lY3RhYmxlU2lkZSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgdGFyZ2V0Q29ubmVjdGFibGVTaWRlOiBFRkNvbm5lY3RhYmxlU2lkZSxcbiAgKSB7fVxufVxuIl19
@@ -0,0 +1,136 @@
1
+ import { fixedCenterBehavior, fixedOutboundBehavior, floatingBehavior } from './utils';
2
+ import { EFConnectionBehavior, EFConnectionConnectableSide } from './enums';
3
+ import { EFConnectableSide } from '../../enums';
4
+ import { Injectable } from '@angular/core';
5
+ import * as i0 from "@angular/core";
6
+ /**
7
+ * Small epsilon to treat near-zero differences as negligible.
8
+ */
9
+ const EPSILON = 0.5;
10
+ /**
11
+ * Registry of all connection behavior handlers.
12
+ */
13
+ const BEHAVIOR_HANDLERS = {
14
+ [EFConnectionBehavior.FLOATING]: floatingBehavior,
15
+ [EFConnectionBehavior.FIXED_CENTER]: fixedCenterBehavior,
16
+ [EFConnectionBehavior.FIXED]: fixedOutboundBehavior,
17
+ };
18
+ /**
19
+ * Calculates connection lines based on behavior rules.
20
+ * It determines which sides of the source and target should connect,
21
+ * then delegates to a registered behavior handler.
22
+ */
23
+ export class ConnectionBehaviourBuilder {
24
+ /**
25
+ * Main execution entry point.
26
+ *
27
+ * @param request The request containing source, target, and connection details.
28
+ * @returns A calculated connection line (ILine).
29
+ */
30
+ handle(request) {
31
+ const vectors = this._calculateDirectionalVectors(request.sourceRect.gravityCenter.x, request.sourceRect.gravityCenter.y, request.targetRect.gravityCenter.x, request.targetRect.gravityCenter.y);
32
+ const sourceSide = this._determineSourceSide(request, vectors);
33
+ const targetSide = this._determineTargetSide(request, vectors);
34
+ request.connection._applyResolvedSidesToConnection(sourceSide, targetSide);
35
+ const handler = this._getBehaviorHandler(request.connection.fBehavior);
36
+ return handler({
37
+ sourceRect: request.sourceRect,
38
+ targetRect: request.targetRect,
39
+ sourceConnectableSide: sourceSide,
40
+ targetConnectableSide: targetSide,
41
+ });
42
+ }
43
+ /**
44
+ * Computes the directional deltas between two rectangles.
45
+ */
46
+ _calculateDirectionalVectors(sourceX, sourceY, targetX, targetY) {
47
+ const sourceToTargetX = targetX - sourceX;
48
+ const sourceToTargetY = targetY - sourceY;
49
+ return {
50
+ sourceToTargetX,
51
+ sourceToTargetY,
52
+ targetToSourceX: -sourceToTargetX,
53
+ targetToSourceY: -sourceToTargetY,
54
+ };
55
+ }
56
+ /**
57
+ * Determines the side for the source element.
58
+ */
59
+ _determineSourceSide(request, vectors) {
60
+ return this._resolveConnectableSide(request.connection.fOutputSide(), vectors.sourceToTargetX, vectors.sourceToTargetY, request.sourceConnectableSide);
61
+ }
62
+ /**
63
+ * Determines the side for the target element.
64
+ */
65
+ _determineTargetSide(request, vectors) {
66
+ return this._resolveConnectableSide(request.connection.fInputSide(), vectors.targetToSourceX, vectors.targetToSourceY, request.targetConnectableSide);
67
+ }
68
+ /**
69
+ * Resolves which side of a shape to connect to based on direction, fallback, and connection mode.
70
+ *
71
+ * @param requestedSide The side mode (e.g. CALCULATE, CALCULATE_HORIZONTAL, FIXED, etc.).
72
+ * @param deltaX Difference in X between source and target.
73
+ * @param deltaY Difference in Y between source and target.
74
+ * @param fallbackSide The default fallback side if calculation is ambiguous.
75
+ */
76
+ _resolveConnectableSide(requestedSide, deltaX, deltaY, fallbackSide) {
77
+ if (requestedSide === EFConnectionConnectableSide.DEFAULT) {
78
+ return fallbackSide;
79
+ }
80
+ const absoluteX = Math.abs(deltaX);
81
+ const absoluteY = Math.abs(deltaY);
82
+ const isNearZero = absoluteX < EPSILON && absoluteY < EPSILON;
83
+ if (isNearZero) {
84
+ return fallbackSide;
85
+ }
86
+ const isHorizontalDominant = absoluteX >= absoluteY;
87
+ switch (requestedSide) {
88
+ case EFConnectionConnectableSide.CALCULATE:
89
+ return isHorizontalDominant
90
+ ? deltaX >= 0
91
+ ? EFConnectableSide.RIGHT
92
+ : EFConnectableSide.LEFT
93
+ : deltaY >= 0
94
+ ? EFConnectableSide.BOTTOM
95
+ : EFConnectableSide.TOP;
96
+ case EFConnectionConnectableSide.CALCULATE_HORIZONTAL:
97
+ if (absoluteX < EPSILON) {
98
+ return fallbackSide;
99
+ }
100
+ return deltaX >= 0 ? EFConnectableSide.RIGHT : EFConnectableSide.LEFT;
101
+ case EFConnectionConnectableSide.CALCULATE_VERTICAL:
102
+ if (absoluteY < EPSILON) {
103
+ return fallbackSide;
104
+ }
105
+ return deltaY >= 0 ? EFConnectableSide.BOTTOM : EFConnectableSide.TOP;
106
+ case EFConnectionConnectableSide.TOP:
107
+ return EFConnectableSide.TOP;
108
+ case EFConnectionConnectableSide.BOTTOM:
109
+ return EFConnectableSide.BOTTOM;
110
+ case EFConnectionConnectableSide.LEFT:
111
+ return EFConnectableSide.LEFT;
112
+ case EFConnectionConnectableSide.RIGHT:
113
+ return EFConnectableSide.RIGHT;
114
+ default:
115
+ return fallbackSide;
116
+ }
117
+ }
118
+ /**
119
+ * Returns the appropriate handler for the given connection behavior.
120
+ *
121
+ * @throws Error if no handler is registered for the behavior.
122
+ */
123
+ _getBehaviorHandler(behavior) {
124
+ const handler = BEHAVIOR_HANDLERS[behavior];
125
+ if (!handler) {
126
+ throw new Error(`[Behavior] No handler for behavior: ${behavior}`);
127
+ }
128
+ return handler;
129
+ }
130
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ConnectionBehaviourBuilder, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
131
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ConnectionBehaviourBuilder });
132
+ }
133
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ConnectionBehaviourBuilder, decorators: [{
134
+ type: Injectable
135
+ }] });
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdGlvbi1iZWhhdmlvdXItYnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uLXYyL3V0aWxzL2Nvbm5lY3Rpb24tYmVoYXZpb3VyL2Nvbm5lY3Rpb24tYmVoYXZpb3VyLWJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLHFCQUFxQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSwyQkFBMkIsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFaEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFM0M7O0dBRUc7QUFDSCxNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUM7QUFPcEI7O0dBRUc7QUFDSCxNQUFNLGlCQUFpQixHQUFvQztJQUN6RCxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxFQUFFLGdCQUFnQjtJQUNqRCxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBQyxFQUFFLG1CQUFtQjtJQUN4RCxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxFQUFFLHFCQUFxQjtDQUNwRCxDQUFDO0FBWUY7Ozs7R0FJRztBQUVILE1BQU0sT0FBTywwQkFBMEI7SUFDckM7Ozs7O09BS0c7SUFDSSxNQUFNLENBQUMsT0FBMEM7UUFDdEQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLDRCQUE0QixDQUMvQyxPQUFPLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDLEVBQ2xDLE9BQU8sQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUMsRUFDbEMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxFQUNsQyxPQUFPLENBQUMsVUFB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O3dHQTlKVSwwQkFBMEI7NEdBQTFCLDBCQUEwQjs7NEZBQTFCLDBCQUEwQjtrQkFEdEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbm5lY3Rpb25CZWhhdmlvdXJCdWlsZGVyUmVxdWVzdCB9IGZyb20gJy4vY29ubmVjdGlvbi1iZWhhdmlvdXItYnVpbGRlci1yZXF1ZXN0JztcbmltcG9ydCB7IElMaW5lIH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBmaXhlZENlbnRlckJlaGF2aW9yLCBmaXhlZE91dGJvdW5kQmVoYXZpb3IsIGZsb2F0aW5nQmVoYXZpb3IgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IEVGQ29ubmVjdGlvbkJlaGF2aW9yLCBFRkNvbm5lY3Rpb25Db25uZWN0YWJsZVNpZGUgfSBmcm9tICcuL2VudW1zJztcbmltcG9ydCB7IEVGQ29ubmVjdGFibGVTaWRlIH0gZnJvbSAnLi4vLi4vZW51bXMnO1xuaW1wb3J0IHsgSUNhbGN1bGF0ZUJlaGF2aW9yUmVxdWVzdCB9IGZyb20gJy4vbW9kZWxzJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBTbWFsbCBlcHNpbG9uIHRvIHRyZWF0IG5lYXItemVybyBkaWZmZXJlbmNlcyBhcyBuZWdsaWdpYmxlLlxuICovXG5jb25zdCBFUFNJTE9OID0gMC41O1xuXG4vKipcbiAqIEZ1bmN0aW9uIHNpZ25hdHVyZSBmb3IgYmVoYXZpb3Itc3BlY2lmaWMgY29ubmVjdGlvbiBsaW5lIGhhbmRsZXJzLlxuICovXG50eXBlIEJlaGF2aW9ySGFuZGxlciA9IChhcmdzOiBJQ2FsY3VsYXRlQmVoYXZpb3JSZXF1ZXN0KSA9PiBJTGluZTtcblxuLyoqXG4gKiBSZWdpc3RyeSBvZiBhbGwgY29ubmVjdGlvbiBiZWhhdmlvciBoYW5kbGVycy5cbiAqL1xuY29uc3QgQkVIQVZJT1JfSEFORExFUlM6IFJlY29yZDxzdHJpbmcsIEJlaGF2aW9ySGFuZGxlcj4gPSB7XG4gIFtFRkNvbm5lY3Rpb25CZWhhdmlvci5GTE9BVElOR106IGZsb2F0aW5nQmVoYXZpb3IsXG4gIFtFRkNvbm5lY3Rpb25CZWhhdmlvci5GSVhFRF9DRU5URVJdOiBmaXhlZENlbnRlckJlaGF2aW9yLFxuICBbRUZDb25uZWN0aW9uQmVoYXZpb3IuRklYRURdOiBmaXhlZE91dGJvdW5kQmVoYXZpb3IsXG59O1xuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIGRpcmVjdGlvbmFsIGRlbHRhcyBiZXR3ZWVuIHR3byByZWN0YW5nbGVzLlxuICovXG5pbnRlcmZhY2UgSURpcmVjdGlvbmFsVmVjdG9ycyB7XG4gIHNvdXJjZVRvVGFyZ2V0WDogbnVtYmVyO1xuICBzb3VyY2VUb1RhcmdldFk6IG51bWJlcjtcbiAgdGFyZ2V0VG9Tb3VyY2VYOiBudW1iZXI7XG4gIHRhcmdldFRvU291cmNlWTogbnVtYmVyO1xufVxuXG4vKipcbiAqIENhbGN1bGF0ZXMgY29ubmVjdGlvbiBsaW5lcyBiYXNlZCBvbiBiZWhhdmlvciBydWxlcy5cbiAqIEl0IGRldGVybWluZXMgd2hpY2ggc2lkZXMgb2YgdGhlIHNvdXJjZSBhbmQgdGFyZ2V0IHNob3VsZCBjb25uZWN0LFxuICogdGhlbiBkZWxlZ2F0ZXMgdG8gYSByZWdpc3RlcmVkIGJlaGF2aW9yIGhhbmRsZXIuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDb25uZWN0aW9uQmVoYXZpb3VyQnVpbGRlciB7XG4gIC8qKlxuICAgKiBNYWluIGV4ZWN1dGlvbiBlbnRyeSBwb2ludC5cbiAgICpcbiAgICogQHBhcmFtIHJlcXVlc3QgVGhlIHJlcXVlc3QgY29udGFpbmluZyBzb3VyY2UsIHRhcmdldCwgYW5kIGNvbm5lY3Rpb24gZGV0YWlscy5cbiAgICogQHJldHVybnMgQSBjYWxjdWxhdGVkIGNvbm5lY3Rpb24gbGluZSAoSUxpbmUpLlxuICAgKi9cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBDb25uZWN0aW9uQmVoYXZpb3VyQnVpbGRlclJlcXVlc3QpOiBJTGluZSB7XG4gICAgY29uc3QgdmVjdG9ycyA9IHRoaXMuX2NhbGN1bGF0ZURpcmVjdGlvbmFsVmVjdG9ycyhcbiAgICAgIHJlcXVlc3Quc291cmNlUmVjdC5ncmF2aXR5Q2VudGVyLngsXG4gICAgICByZXF1ZXN0LnNvdXJjZVJlY3QuZ3Jhdml0eUNlbnRlci55LFxuICAgICAgcmVxdWVzdC50YXJnZXRSZWN0LmdyYXZpdHlDZW50ZXIueCxcbiAgICAgIHJlcXVlc3QudGFyZ2V0UmVjdC5ncmF2aXR5Q2VudGVyLnksXG4gICAgKTtcblxuICAgIGNvbnN0IHNvdXJjZVNpZGUgPSB0aGlzLl9kZXRlcm1pbmVTb3VyY2VTaWRlKHJlcXVlc3QsIHZlY3RvcnMpO1xuICAgIGNvbnN0IHRhcmdldFNpZGUgPSB0aGlzLl9kZXRlcm1pbmVUYXJnZXRTaWRlKHJlcXVlc3QsIHZlY3RvcnMpO1xuXG4gICAgcmVxdWVzdC5jb25uZWN0aW9uLl9hcHBseVJlc29sdmVkU2lkZXNUb0Nvbm5lY3Rpb24oc291cmNlU2lkZSwgdGFyZ2V0U2lkZSk7XG5cbiAgICBjb25zdCBoYW5kbGVyID0gdGhpcy5fZ2V0QmVoYXZpb3JIYW5kbGVyKHJlcXVlc3QuY29ubmVjdGlvbi5mQmVoYXZpb3IpO1xuXG4gICAgcmV0dXJuIGhhbmRsZXIoe1xuICAgICAgc291cmNlUmVjdDogcmVxdWVzdC5zb3VyY2VSZWN0LFxuICAgICAgdGFyZ2V0UmVjdDogcmVxdWVzdC50YXJnZXRSZWN0LFxuICAgICAgc291cmNlQ29ubmVjdGFibGVTaWRlOiBzb3VyY2VTaWRlLFxuICAgICAgdGFyZ2V0Q29ubmVjdGFibGVTaWRlOiB0YXJnZXRTaWRlLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbXB1dGVzIHRoZSBkaXJlY3Rpb25hbCBkZWx0YXMgYmV0d2VlbiB0d28gcmVjdGFuZ2xlcy5cbiAgICovXG4gIHByaXZhdGUgX2NhbGN1bGF0ZURpcmVjdGlvbmFsVmVjdG9ycyhcbiAgICBzb3VyY2VYOiBudW1iZXIsXG4gICAgc291cmNlWTogbnVtYmVyLFxuICAgIHRhcmdldFg6IG51bWJlcixcbiAgICB0YXJnZXRZOiBudW1iZXIsXG4gICk6IElEaXJlY3Rpb25hbFZlY3RvcnMge1xuICAgIGNvbnN0IHNvdXJjZVRvVGFyZ2V0WCA9IHRhcmdldFggLSBzb3VyY2VYO1xuICAgIGNvbnN0IHNvdXJjZVRvVGFyZ2V0WSA9IHRhcmdldFkgLSBzb3VyY2VZO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHNvdXJjZVRvVGFyZ2V0WCxcbiAgICAgIHNvdXJjZVRvVGFyZ2V0WSxcbiAgICAgIHRhcmdldFRvU291cmNlWDogLXNvdXJjZVRvVGFyZ2V0WCxcbiAgICAgIHRhcmdldFRvU291cmNlWTogLXNvdXJjZVRvVGFyZ2V0WSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgdGhlIHNpZGUgZm9yIHRoZSBzb3VyY2UgZWxlbWVudC5cbiAgICovXG4gIHByaXZhdGUgX2RldGVybWluZVNvdXJjZVNpZGUoXG4gICAgcmVxdWVzdDogQ29ubmVjdGlvbkJlaGF2aW91ckJ1aWxkZXJSZXF1ZXN0LFxuICAgIHZlY3RvcnM6IElEaXJlY3Rpb25hbFZlY3RvcnMsXG4gICk6IEVGQ29ubmVjdGFibGVTaWRlIHtcbiAgICByZXR1cm4gdGhpcy5fcmVzb2x2ZUNvbm5lY3RhYmxlU2lkZShcbiAgICAgIHJlcXVlc3QuY29ubmVjdGlvbi5mT3V0cHV0U2lkZSgpLFxuICAgICAgdmVjdG9ycy5zb3VyY2VUb1RhcmdldFgsXG4gICAgICB2ZWN0b3JzLnNvdXJjZVRvVGFyZ2V0WSxcbiAgICAgIHJlcXVlc3Quc291cmNlQ29ubmVjdGFibGVTaWRlLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB0aGUgc2lkZSBmb3IgdGhlIHRhcmdldCBlbGVtZW50LlxuICAgKi9cbiAgcHJpdmF0ZSBfZGV0ZXJtaW5lVGFyZ2V0U2lkZShcbiAgICByZXF1ZXN0OiBDb25uZWN0aW9uQmVoYXZpb3VyQnVpbGRlclJlcXVlc3QsXG4gICAgdmVjdG9yczogSURpcmVjdGlvbmFsVmVjdG9ycyxcbiAgKTogRUZDb25uZWN0YWJsZVNpZGUge1xuICAgIHJldHVybiB0aGlzLl9yZXNvbHZlQ29ubmVjdGFibGVTaWRlKFxuICAgICAgcmVxdWVzdC5jb25uZWN0aW9uLmZJbnB1dFNpZGUoKSxcbiAgICAgIHZlY3RvcnMudGFyZ2V0VG9Tb3VyY2VYLFxuICAgICAgdmVjdG9ycy50YXJnZXRUb1NvdXJjZVksXG4gICAgICByZXF1ZXN0LnRhcmdldENvbm5lY3RhYmxlU2lkZSxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc29sdmVzIHdoaWNoIHNpZGUgb2YgYSBzaGFwZSB0byBjb25uZWN0IHRvIGJhc2VkIG9uIGRpcmVjdGlvbiwgZmFsbGJhY2ssIGFuZCBjb25uZWN0aW9uIG1vZGUuXG4gICAqXG4gICAqIEBwYXJhbSByZXF1ZXN0ZWRTaWRlIFRoZSBzaWRlIG1vZGUgKGUuZy4gQ0FMQ1VMQVRFLCBDQUxDVUxBVEVfSE9SSVpPTlRBTCwgRklYRUQsIGV0Yy4pLlxuICAgKiBAcGFyYW0gZGVsdGFYIERpZmZlcmVuY2UgaW4gWCBiZXR3ZWVuIHNvdXJjZSBhbmQgdGFyZ2V0LlxuICAgKiBAcGFyYW0gZGVsdGFZIERpZmZlcmVuY2UgaW4gWSBiZXR3ZWVuIHNvdXJjZSBhbmQgdGFyZ2V0LlxuICAgKiBAcGFyYW0gZmFsbGJhY2tTaWRlIFRoZSBkZWZhdWx0IGZhbGxiYWNrIHNpZGUgaWYgY2FsY3VsYXRpb24gaXMgYW1iaWd1b3VzLlxuICAgKi9cbiAgcHJpdmF0ZSBfcmVzb2x2ZUNvbm5lY3RhYmxlU2lkZShcbiAgICByZXF1ZXN0ZWRTaWRlOiBFRkNvbm5lY3Rpb25Db25uZWN0YWJsZVNpZGUsXG4gICAgZGVsdGFYOiBudW1iZXIsXG4gICAgZGVsdGFZOiBudW1iZXIsXG4gICAgZmFsbGJhY2tTaWRlOiBFRkNvbm5lY3RhYmxlU2lkZSxcbiAgKTogRUZDb25uZWN0YWJsZVNpZGUge1xuICAgIGlmIChyZXF1ZXN0ZWRTaWRlID09PSBFRkNvbm5lY3Rpb25Db25uZWN0YWJsZVNpZGUuREVGQVVMVCkge1xuICAgICAgcmV0dXJuIGZhbGxiYWNrU2lkZTtcbiAgICB9XG5cbiAgICBjb25zdCBhYnNvbHV0ZVggPSBNYXRoLmFicyhkZWx0YVgpO1xuICAgIGNvbnN0IGFic29sdXRlWSA9IE1hdGguYWJzKGRlbHRhWSk7XG4gICAgY29uc3QgaXNOZWFyWmVybyA9IGFic29sdXRlWCA8IEVQU0lMT04gJiYgYWJzb2x1dGVZIDwgRVBTSUxPTjtcblxuICAgIGlmIChpc05lYXJaZXJvKSB7XG4gICAgICByZXR1cm4gZmFsbGJhY2tTaWRlO1xuICAgIH1cblxuICAgIGNvbnN0IGlzSG9yaXpvbnRhbERvbWluYW50ID0gYWJzb2x1dGVYID49IGFic29sdXRlWTtcblxuICAgIHN3aXRjaCAocmVxdWVzdGVkU2lkZSkge1xuICAgICAgY2FzZSBFRkNvbm5lY3Rpb25Db25uZWN0YWJsZVNpZGUuQ0FMQ1VMQVRFOlxuICAgICAgICByZXR1cm4gaXNIb3Jpem9udGFsRG9taW5hbnRcbiAgICAgICAgICA/IGRlbHRhWCA+PSAwXG4gICAgICAgICAgICA/IEVGQ29ubmVjdGFibGVTaWRlLlJJR0hUXG4gICAgICAgICAgICA6IEVGQ29ubmVjdGFibGVTaWRlLkxFRlRcbiAgICAgICAgICA6IGRlbHRhWSA+PSAwXG4gICAgICAgICAgICA/IEVGQ29ubmVjdGFibGVTaWRlLkJPVFRPTVxuICAgICAgICAgICAgOiBFRkNvbm5lY3RhYmxlU2lkZS5UT1A7XG5cbiAgICAgIGNhc2UgRUZDb25uZWN0aW9uQ29ubmVjdGFibGVTaWRlLkNBTENVTEFURV9IT1JJWk9OVEFMOlxuICAgICAgICBpZiAoYWJzb2x1dGVYIDwgRVBTSUxPTikge1xuICAgICAgICAgIHJldHVybiBmYWxsYmFja1NpZGU7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZGVsdGFYID49IDAgPyBFRkNvbm5lY3RhYmxlU2lkZS5SSUdIVCA6IEVGQ29ubmVjdGFibGVTaWRlLkxFRlQ7XG5cbiAgICAgIGNhc2UgRUZDb25uZWN0aW9uQ29ubmVjdGFibGVTaWRlLkNBTENVTEFURV9WRVJUSUNBTDpcbiAgICAgICAgaWYgKGFic29sdXRlWSA8IEVQU0lMT04pIHtcbiAgICAgICAgICByZXR1cm4gZmFsbGJhY2tTaWRlO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGRlbHRhWSA+PSAwID8gRUZDb25uZWN0YWJsZVNpZGUuQk9UVE9NIDogRUZDb25uZWN0YWJsZVNpZGUuVE9QO1xuXG4gICAgICBjYXNlIEVGQ29ubmVjdGlvbkNvbm5lY3RhYmxlU2lkZS5UT1A6XG4gICAgICAgIHJldHVybiBFRkNvbm5lY3RhYmxlU2lkZS5UT1A7XG4gICAgICBjYXNlIEVGQ29ubmVjdGlvbkNvbm5lY3RhYmxlU2lkZS5CT1RUT006XG4gICAgICAgIHJldHVybiBFRkNvbm5lY3RhYmxlU2lkZS5CT1RUT007XG4gICAgICBjYXNlIEVGQ29ubmVjdGlvbkNvbm5lY3RhYmxlU2lkZS5MRUZUOlxuICAgICAgICByZXR1cm4gRUZDb25uZWN0YWJsZVNpZGUuTEVGVDtcbiAgICAgIGNhc2UgRUZDb25uZWN0aW9uQ29ubmVjdGFibGVTaWRlLlJJR0hUOlxuICAgICAgICByZXR1cm4gRUZDb25uZWN0YWJsZVNpZGUuUklHSFQ7XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBmYWxsYmFja1NpZGU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGFwcHJvcHJpYXRlIGhhbmRsZXIgZm9yIHRoZSBnaXZlbiBjb25uZWN0aW9uIGJlaGF2aW9yLlxuICAgKlxuICAgKiBAdGhyb3dzIEVycm9yIGlmIG5vIGhhbmRsZXIgaXMgcmVnaXN0ZXJlZCBmb3IgdGhlIGJlaGF2aW9yLlxuICAgKi9cbiAgcHJpdmF0ZSBfZ2V0QmVoYXZpb3JIYW5kbGVyKGJlaGF2aW9yOiBFRkNvbm5lY3Rpb25CZWhhdmlvcik6IEJlaGF2aW9ySGFuZGxlciB7XG4gICAgY29uc3QgaGFuZGxlciA9IEJFSEFWSU9SX0hBTkRMRVJTW2JlaGF2aW9yXTtcbiAgICBpZiAoIWhhbmRsZXIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgW0JlaGF2aW9yXSBObyBoYW5kbGVyIGZvciBiZWhhdmlvcjogJHtiZWhhdmlvcn1gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gaGFuZGxlcjtcbiAgfVxufVxuIl19
@@ -0,0 +1,7 @@
1
+ export var EFConnectionBehavior;
2
+ (function (EFConnectionBehavior) {
3
+ EFConnectionBehavior["FIXED"] = "fixed";
4
+ EFConnectionBehavior["FIXED_CENTER"] = "fixed_center";
5
+ EFConnectionBehavior["FLOATING"] = "floating";
6
+ })(EFConnectionBehavior || (EFConnectionBehavior = {}));
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZS1mLWNvbm5lY3Rpb24tYmVoYXZpb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi12Mi91dGlscy9jb25uZWN0aW9uLWJlaGF2aW91ci9lbnVtcy9lLWYtY29ubmVjdGlvbi1iZWhhdmlvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxvQkFNWDtBQU5ELFdBQVksb0JBQW9CO0lBQzlCLHVDQUFlLENBQUE7SUFFZixxREFBNkIsQ0FBQTtJQUU3Qiw2Q0FBcUIsQ0FBQTtBQUN2QixDQUFDLEVBTlcsb0JBQW9CLEtBQXBCLG9CQUFvQixRQU0vQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEVGQ29ubmVjdGlvbkJlaGF2aW9yIHtcbiAgRklYRUQgPSAnZml4ZWQnLFxuXG4gIEZJWEVEX0NFTlRFUiA9ICdmaXhlZF9jZW50ZXInLFxuXG4gIEZMT0FUSU5HID0gJ2Zsb2F0aW5nJyxcbn1cbiJdfQ==
@@ -0,0 +1,12 @@
1
+ export var EFConnectionConnectableSide;
2
+ (function (EFConnectionConnectableSide) {
3
+ EFConnectionConnectableSide["DEFAULT"] = "default";
4
+ EFConnectionConnectableSide["TOP"] = "top";
5
+ EFConnectionConnectableSide["BOTTOM"] = "bottom";
6
+ EFConnectionConnectableSide["LEFT"] = "left";
7
+ EFConnectionConnectableSide["RIGHT"] = "right";
8
+ EFConnectionConnectableSide["CALCULATE"] = "calculate";
9
+ EFConnectionConnectableSide["CALCULATE_HORIZONTAL"] = "calculate_horizontal";
10
+ EFConnectionConnectableSide["CALCULATE_VERTICAL"] = "calculate_vertical";
11
+ })(EFConnectionConnectableSide || (EFConnectionConnectableSide = {}));
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZS1mLWNvbm5lY3Rpb24tY29ubmVjdGFibGUtc2lkZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uLXYyL3V0aWxzL2Nvbm5lY3Rpb24tYmVoYXZpb3VyL2VudW1zL2UtZi1jb25uZWN0aW9uLWNvbm5lY3RhYmxlLXNpZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksMkJBZ0JYO0FBaEJELFdBQVksMkJBQTJCO0lBQ3JDLGtEQUFtQixDQUFBO0lBRW5CLDBDQUFXLENBQUE7SUFFWCxnREFBaUIsQ0FBQTtJQUVqQiw0Q0FBYSxDQUFBO0lBRWIsOENBQWUsQ0FBQTtJQUVmLHNEQUF1QixDQUFBO0lBRXZCLDRFQUE2QyxDQUFBO0lBRTdDLHdFQUF5QyxDQUFBO0FBQzNDLENBQUMsRUFoQlcsMkJBQTJCLEtBQTNCLDJCQUEyQixRQWdCdEMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBFRkNvbm5lY3Rpb25Db25uZWN0YWJsZVNpZGUge1xuICBERUZBVUxUID0gJ2RlZmF1bHQnLFxuXG4gIFRPUCA9ICd0b3AnLFxuXG4gIEJPVFRPTSA9ICdib3R0b20nLFxuXG4gIExFRlQgPSAnbGVmdCcsXG5cbiAgUklHSFQgPSAncmlnaHQnLFxuXG4gIENBTENVTEFURSA9ICdjYWxjdWxhdGUnLFxuXG4gIENBTENVTEFURV9IT1JJWk9OVEFMID0gJ2NhbGN1bGF0ZV9ob3Jpem9udGFsJyxcblxuICBDQUxDVUxBVEVfVkVSVElDQUwgPSAnY2FsY3VsYXRlX3ZlcnRpY2FsJyxcbn1cbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './e-f-connection-behavior';
2
+ export * from './e-f-connection-connectable-side';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi12Mi91dGlscy9jb25uZWN0aW9uLWJlaGF2aW91ci9lbnVtcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsbUNBQW1DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2UtZi1jb25uZWN0aW9uLWJlaGF2aW9yJztcbmV4cG9ydCAqIGZyb20gJy4vZS1mLWNvbm5lY3Rpb24tY29ubmVjdGFibGUtc2lkZSc7XG4iXX0=