@foblex/flow 18.1.2 → 18.2.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 (1057) hide show
  1. package/README.md +71 -35
  2. package/domain/f-canvas/add-canvas-to-store/add-canvas-to-store-request.d.ts +2 -2
  3. package/domain/f-canvas/add-canvas-to-store/add-canvas-to-store.d.ts +12 -0
  4. package/domain/f-canvas/add-canvas-to-store/index.d.ts +1 -1
  5. package/domain/f-canvas/center-group-or-node/center-group-or-node.d.ts +17 -0
  6. package/domain/f-canvas/center-group-or-node/index.d.ts +1 -1
  7. package/domain/f-canvas/fit-to-flow/fit-to-flow-request.d.ts +2 -2
  8. package/domain/f-canvas/fit-to-flow/fit-to-flow.d.ts +17 -0
  9. package/domain/f-canvas/fit-to-flow/index.d.ts +1 -1
  10. package/domain/f-canvas/index.d.ts +0 -1
  11. package/domain/f-canvas/input-canvas-position/index.d.ts +1 -1
  12. package/domain/f-canvas/input-canvas-position/input-canvas-position-request.d.ts +2 -2
  13. package/domain/f-canvas/input-canvas-position/input-canvas-position.d.ts +13 -0
  14. package/domain/f-canvas/input-canvas-scale/index.d.ts +1 -1
  15. package/domain/f-canvas/input-canvas-scale/input-canvas-scale.d.ts +13 -0
  16. package/domain/f-canvas/providers.d.ts +11 -12
  17. package/domain/f-canvas/redraw-canvas-with-animation/index.d.ts +1 -1
  18. package/domain/f-canvas/redraw-canvas-with-animation/redraw-canvas-with-animation.d.ts +17 -0
  19. package/domain/f-canvas/remove-canvas-from-store/index.d.ts +1 -1
  20. package/domain/f-canvas/remove-canvas-from-store/remove-canvas-from-store.d.ts +12 -0
  21. package/domain/f-canvas/reset-scale/index.d.ts +1 -1
  22. package/domain/f-canvas/reset-scale/reset-scale.d.ts +13 -0
  23. package/domain/f-canvas/reset-scale-and-center/index.d.ts +1 -1
  24. package/domain/f-canvas/reset-scale-and-center/reset-scale-and-center-request.d.ts +1 -1
  25. package/domain/f-canvas/reset-scale-and-center/reset-scale-and-center.d.ts +17 -0
  26. package/domain/f-canvas/update-scale/index.d.ts +1 -1
  27. package/domain/f-canvas/update-scale/update-scale-request.d.ts +2 -2
  28. package/domain/f-canvas/update-scale/update-scale.d.ts +14 -0
  29. package/domain/f-connection/redraw-connections/redraw-connections.d.ts +17 -2
  30. package/domain/f-connectors/add-connector-to-store/add-connector-to-store.d.ts +2 -0
  31. package/domain/f-connectors/find-connectable-connector-using-priority-and-position/find-connectable-connector-using-priority-and-position.d.ts +30 -0
  32. package/domain/f-connectors/find-connectable-connector-using-priority-and-position/index.d.ts +2 -2
  33. package/domain/f-connectors/providers.d.ts +2 -2
  34. package/domain/f-connectors/remove-connector-from-store/remove-connector-from-store.d.ts +2 -0
  35. package/domain/f-draggable/add-dnd-to-store/add-dnd-to-store.d.ts +12 -0
  36. package/domain/f-draggable/add-dnd-to-store/index.d.ts +1 -1
  37. package/domain/f-draggable/initialize-drag-sequence/index.d.ts +1 -1
  38. package/domain/f-draggable/initialize-drag-sequence/initialize-drag-sequence.d.ts +12 -0
  39. package/domain/f-draggable/is-drag-started/is-drag-started.d.ts +1 -1
  40. package/domain/f-draggable/on-pointer-move/index.d.ts +1 -1
  41. package/domain/f-draggable/on-pointer-move/on-pointer-move.d.ts +19 -0
  42. package/domain/f-draggable/prepare-drag-sequence/index.d.ts +1 -1
  43. package/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence.d.ts +14 -0
  44. package/domain/f-draggable/providers.d.ts +6 -6
  45. package/domain/f-draggable/remove-dnd-from-store/index.d.ts +1 -1
  46. package/domain/f-draggable/remove-dnd-from-store/remove-dnd-from-store.d.ts +12 -0
  47. package/domain/f-flow/add-flow-to-store/add-flow-to-store.d.ts +12 -0
  48. package/domain/f-flow/add-flow-to-store/index.d.ts +1 -1
  49. package/domain/f-flow/get-flow/get-flow.d.ts +13 -0
  50. package/domain/f-flow/get-flow/index.d.ts +1 -1
  51. package/domain/f-flow/providers.d.ts +4 -4
  52. package/domain/f-flow/remove-flow-from-store/index.d.ts +1 -1
  53. package/domain/f-flow/remove-flow-from-store/remove-flow-from-store.d.ts +12 -0
  54. package/domain/f-node/add-node-to-store/add-node-to-store.d.ts +1 -0
  55. package/domain/f-node/calculate-nodes-bounding-box/calculate-nodes-bounding-box.d.ts +2 -2
  56. package/domain/f-node/calculate-nodes-bounding-box/index.d.ts +1 -1
  57. package/domain/f-node/calculate-nodes-bounding-box-normalized-position/calculate-nodes-bounding-box-normalized-position.d.ts +3 -1
  58. package/domain/f-node/calculate-nodes-bounding-box-normalized-position/index.d.ts +1 -1
  59. package/domain/f-node/get-child-node-ids/get-child-node-ids.d.ts +1 -1
  60. package/domain/f-node/get-child-node-ids/index.d.ts +1 -1
  61. package/domain/f-node/get-node-padding/get-node-padding.d.ts +8 -3
  62. package/domain/f-node/get-node-padding/index.d.ts +1 -1
  63. package/domain/f-node/get-parent-nodes/get-parent-nodes.d.ts +1 -1
  64. package/domain/f-node/get-parent-nodes/index.d.ts +1 -1
  65. package/domain/f-node/remove-node-from-store/remove-node-from-store.d.ts +1 -0
  66. package/domain/f-selection/calculate-selectable-items/calculate-selectable-items.d.ts +0 -1
  67. package/domain/f-selection/clear-selection/clear-selection.d.ts +12 -0
  68. package/domain/f-selection/clear-selection/index.d.ts +2 -2
  69. package/domain/f-selection/get-current-selection/get-current-selection.d.ts +16 -0
  70. package/domain/f-selection/get-current-selection/index.d.ts +2 -2
  71. package/domain/f-selection/index.d.ts +1 -1
  72. package/domain/f-selection/providers.d.ts +4 -4
  73. package/domain/f-selection/select-items/index.d.ts +2 -0
  74. package/domain/f-selection/select-items/select.d.ts +13 -0
  75. package/domain/f-zoom/set-zoom/set-zoom-request.d.ts +4 -4
  76. package/domain/f-zoom/set-zoom/set-zoom.d.ts +3 -0
  77. package/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups-request.d.ts +5 -0
  78. package/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.d.ts +15 -0
  79. package/domain/get-deep-children-nodes-and-groups/index.d.ts +2 -2
  80. package/domain/get-normalized-connector-rect/get-normalized-connector-rect-request.d.ts +3 -2
  81. package/domain/get-normalized-connector-rect/get-normalized-connector-rect.d.ts +26 -0
  82. package/domain/get-normalized-connector-rect/index.d.ts +1 -1
  83. package/domain/get-normalized-element-rect/get-normalized-element-rect.d.ts +22 -0
  84. package/domain/get-normalized-element-rect/index.d.ts +1 -1
  85. package/domain/get-normalized-point/get-normalized-point-request.d.ts +1 -1
  86. package/domain/get-normalized-point/get-normalized-point.d.ts +15 -0
  87. package/domain/get-normalized-point/index.d.ts +1 -1
  88. package/domain/index.d.ts +1 -2
  89. package/domain/minimap/f-minimap-state.d.ts +7 -0
  90. package/domain/minimap/index.d.ts +5 -0
  91. package/domain/minimap/minimap-calculate-view-rect/index.d.ts +2 -0
  92. package/domain/minimap/minimap-calculate-view-rect/minimap-calculate-view-rect-request.d.ts +3 -0
  93. package/domain/minimap/minimap-calculate-view-rect/minimap-calculate-view-rect.d.ts +10 -0
  94. package/domain/minimap/minimap-calculate-viewport/i-minimap-viewport.d.ts +5 -0
  95. package/domain/minimap/minimap-calculate-viewport/index.d.ts +3 -0
  96. package/domain/minimap/minimap-calculate-viewport/minimap-calculate-viewport-request.d.ts +6 -0
  97. package/domain/minimap/minimap-calculate-viewport/minimap-calculate-viewport.d.ts +17 -0
  98. package/domain/minimap/minimap-draw-nodes/index.d.ts +2 -0
  99. package/domain/minimap/minimap-draw-nodes/minimap-draw-nodes.d.ts +13 -0
  100. package/domain/minimap/providers.d.ts +4 -0
  101. package/domain/providers.d.ts +6 -7
  102. package/domain/sort-item-layers/sort-item-layers.d.ts +1 -1
  103. package/domain/sort-item-layers/sort-items-by-parent/index.d.ts +2 -2
  104. package/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent-request.d.ts +5 -0
  105. package/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.d.ts +20 -0
  106. package/domain/sort-item-layers/sort-node-layers-by-groups/index.d.ts +2 -2
  107. package/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.d.ts +24 -0
  108. package/esm2022/domain/f-canvas/add-canvas-to-store/add-canvas-to-store-request.mjs +4 -4
  109. package/esm2022/domain/f-canvas/add-canvas-to-store/add-canvas-to-store.mjs +25 -0
  110. package/esm2022/domain/f-canvas/add-canvas-to-store/index.mjs +2 -2
  111. package/esm2022/domain/f-canvas/center-group-or-node/center-group-or-node.mjs +46 -0
  112. package/esm2022/domain/f-canvas/center-group-or-node/index.mjs +2 -2
  113. package/esm2022/domain/f-canvas/fit-to-flow/fit-to-flow-request.mjs +1 -1
  114. package/esm2022/domain/f-canvas/fit-to-flow/fit-to-flow.mjs +58 -0
  115. package/esm2022/domain/f-canvas/fit-to-flow/index.mjs +2 -2
  116. package/esm2022/domain/f-canvas/index.mjs +1 -2
  117. package/esm2022/domain/f-canvas/input-canvas-position/index.mjs +2 -2
  118. package/esm2022/domain/f-canvas/input-canvas-position/input-canvas-position-request.mjs +1 -1
  119. package/esm2022/domain/f-canvas/input-canvas-position/input-canvas-position.mjs +36 -0
  120. package/esm2022/domain/f-canvas/input-canvas-scale/index.mjs +2 -2
  121. package/esm2022/domain/f-canvas/input-canvas-scale/input-canvas-scale.mjs +30 -0
  122. package/esm2022/domain/f-canvas/providers.mjs +21 -23
  123. package/esm2022/domain/f-canvas/redraw-canvas-with-animation/index.mjs +2 -2
  124. package/esm2022/domain/f-canvas/redraw-canvas-with-animation/redraw-canvas-with-animation.mjs +40 -0
  125. package/esm2022/domain/f-canvas/remove-canvas-from-store/index.mjs +2 -2
  126. package/esm2022/domain/f-canvas/remove-canvas-from-store/remove-canvas-from-store.mjs +25 -0
  127. package/esm2022/domain/f-canvas/reset-scale/index.mjs +2 -2
  128. package/esm2022/domain/f-canvas/reset-scale/reset-scale.mjs +30 -0
  129. package/esm2022/domain/f-canvas/reset-scale-and-center/index.mjs +2 -2
  130. package/esm2022/domain/f-canvas/reset-scale-and-center/reset-scale-and-center-request.mjs +1 -1
  131. package/esm2022/domain/f-canvas/reset-scale-and-center/reset-scale-and-center.mjs +50 -0
  132. package/esm2022/domain/f-canvas/update-scale/index.mjs +2 -2
  133. package/esm2022/domain/f-canvas/update-scale/update-scale-request.mjs +1 -1
  134. package/esm2022/domain/f-canvas/update-scale/update-scale.mjs +37 -0
  135. package/esm2022/domain/f-connection/add-connection-marker-to-store/add-connection-marker-to-store.mjs +2 -2
  136. package/esm2022/domain/f-connection/add-connection-to-store/add-connection-to-store.mjs +2 -2
  137. package/esm2022/domain/f-connection/redraw-connections/redraw-connections.mjs +173 -17
  138. package/esm2022/domain/f-connection/remove-connection-from-store/remove-connection-from-store.mjs +2 -2
  139. package/esm2022/domain/f-connection/remove-connection-marker-from-store/remove-connection-marker-from-store.mjs +2 -2
  140. package/esm2022/domain/f-connectors/add-connector-to-store/add-connector-to-store.mjs +13 -5
  141. package/esm2022/domain/f-connectors/find-connectable-connector-using-priority-and-position/find-connectable-connector-using-priority-and-position-request.mjs +10 -0
  142. package/esm2022/domain/f-connectors/find-connectable-connector-using-priority-and-position/find-connectable-connector-using-priority-and-position.mjs +98 -0
  143. package/esm2022/domain/f-connectors/find-connectable-connector-using-priority-and-position/index.mjs +3 -3
  144. package/esm2022/domain/f-connectors/get-connector-rect-reference/get-connector-rect-reference.mjs +1 -1
  145. package/esm2022/domain/f-connectors/providers.mjs +3 -3
  146. package/esm2022/domain/f-connectors/remove-connector-from-store/remove-connector-from-store.mjs +13 -5
  147. package/esm2022/domain/f-draggable/add-dnd-to-store/add-dnd-to-store.mjs +25 -0
  148. package/esm2022/domain/f-draggable/add-dnd-to-store/index.mjs +2 -2
  149. package/esm2022/domain/f-draggable/initialize-drag-sequence/index.mjs +2 -2
  150. package/esm2022/domain/f-draggable/initialize-drag-sequence/initialize-drag-sequence.mjs +25 -0
  151. package/esm2022/domain/f-draggable/is-drag-started/is-drag-started.mjs +2 -2
  152. package/esm2022/domain/f-draggable/on-pointer-move/index.mjs +2 -2
  153. package/esm2022/domain/f-draggable/on-pointer-move/on-pointer-move.mjs +46 -0
  154. package/esm2022/domain/f-draggable/prepare-drag-sequence/index.mjs +2 -2
  155. package/esm2022/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence.mjs +30 -0
  156. package/esm2022/domain/f-draggable/providers.mjs +11 -11
  157. package/esm2022/domain/f-draggable/remove-dnd-from-store/index.mjs +2 -2
  158. package/esm2022/domain/f-draggable/remove-dnd-from-store/remove-dnd-from-store.mjs +25 -0
  159. package/esm2022/domain/f-flow/add-flow-to-store/add-flow-to-store.mjs +25 -0
  160. package/esm2022/domain/f-flow/add-flow-to-store/index.mjs +2 -2
  161. package/esm2022/domain/f-flow/get-flow/get-flow.mjs +29 -0
  162. package/esm2022/domain/f-flow/get-flow/index.mjs +2 -2
  163. package/esm2022/domain/f-flow/providers.mjs +7 -7
  164. package/esm2022/domain/f-flow/remove-flow-from-store/index.mjs +2 -2
  165. package/esm2022/domain/f-flow/remove-flow-from-store/remove-flow-from-store.mjs +25 -0
  166. package/esm2022/domain/f-node/add-node-to-store/add-node-to-store.mjs +6 -3
  167. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions.mjs +1 -1
  168. package/esm2022/domain/f-node/calculate-nodes-bounding-box/calculate-nodes-bounding-box-request.mjs +4 -0
  169. package/esm2022/domain/f-node/calculate-nodes-bounding-box/calculate-nodes-bounding-box.mjs +3 -3
  170. package/esm2022/domain/f-node/calculate-nodes-bounding-box/index.mjs +2 -2
  171. package/esm2022/domain/f-node/calculate-nodes-bounding-box-normalized-position/calculate-nodes-bounding-box-normalized-position-request.mjs +8 -0
  172. package/esm2022/domain/f-node/calculate-nodes-bounding-box-normalized-position/calculate-nodes-bounding-box-normalized-position.mjs +17 -8
  173. package/esm2022/domain/f-node/calculate-nodes-bounding-box-normalized-position/index.mjs +2 -2
  174. package/esm2022/domain/f-node/fit-to-child-nodes-and-groups/fit-to-child-nodes-and-groups.mjs +2 -2
  175. package/esm2022/domain/f-node/get-child-node-ids/get-child-node-ids-request.mjs +8 -0
  176. package/esm2022/domain/f-node/get-child-node-ids/get-child-node-ids.mjs +2 -2
  177. package/esm2022/domain/f-node/get-child-node-ids/index.mjs +2 -2
  178. package/esm2022/domain/f-node/get-node-padding/get-node-padding-request.mjs +10 -0
  179. package/esm2022/domain/f-node/get-node-padding/get-node-padding.mjs +6 -4
  180. package/esm2022/domain/f-node/get-node-padding/index.mjs +2 -2
  181. package/esm2022/domain/f-node/get-parent-nodes/get-parent-nodes-request.mjs +8 -0
  182. package/esm2022/domain/f-node/get-parent-nodes/get-parent-nodes.mjs +2 -2
  183. package/esm2022/domain/f-node/get-parent-nodes/index.mjs +2 -2
  184. package/esm2022/domain/f-node/remove-node-from-store/remove-node-from-store.mjs +6 -3
  185. package/esm2022/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed.mjs +7 -6
  186. package/esm2022/domain/f-selection/calculate-selectable-items/calculate-selectable-items.mjs +3 -7
  187. package/esm2022/domain/f-selection/clear-selection/clear-selection-request.mjs +4 -0
  188. package/esm2022/domain/f-selection/clear-selection/clear-selection.mjs +27 -0
  189. package/esm2022/domain/f-selection/clear-selection/index.mjs +3 -3
  190. package/esm2022/domain/f-selection/get-current-selection/get-current-selection-request.mjs +4 -0
  191. package/esm2022/domain/f-selection/get-current-selection/get-current-selection.mjs +45 -0
  192. package/esm2022/domain/f-selection/get-current-selection/index.mjs +3 -3
  193. package/esm2022/domain/f-selection/index.mjs +2 -2
  194. package/esm2022/domain/f-selection/providers.mjs +7 -7
  195. package/esm2022/domain/f-selection/select-items/index.mjs +3 -0
  196. package/esm2022/domain/f-selection/select-items/select-request.mjs +12 -0
  197. package/esm2022/domain/f-selection/select-items/select.mjs +45 -0
  198. package/esm2022/domain/f-zoom/set-zoom/set-zoom-request.mjs +1 -1
  199. package/esm2022/domain/f-zoom/set-zoom/set-zoom.mjs +62 -4
  200. package/esm2022/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups-request.mjs +8 -0
  201. package/esm2022/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.mjs +38 -0
  202. package/esm2022/domain/get-deep-children-nodes-and-groups/index.mjs +3 -3
  203. package/esm2022/domain/get-normalized-connector-rect/get-normalized-connector-rect-request.mjs +4 -2
  204. package/esm2022/domain/get-normalized-connector-rect/get-normalized-connector-rect.mjs +71 -0
  205. package/esm2022/domain/get-normalized-connector-rect/index.mjs +2 -2
  206. package/esm2022/domain/get-normalized-element-rect/get-normalized-element-rect.mjs +60 -0
  207. package/esm2022/domain/get-normalized-element-rect/index.mjs +2 -2
  208. package/esm2022/domain/get-normalized-point/get-normalized-point-request.mjs +1 -1
  209. package/esm2022/domain/get-normalized-point/get-normalized-point.mjs +28 -0
  210. package/esm2022/domain/get-normalized-point/index.mjs +2 -2
  211. package/esm2022/domain/index.mjs +2 -3
  212. package/esm2022/domain/minimap/f-minimap-state.mjs +12 -0
  213. package/esm2022/domain/minimap/index.mjs +6 -0
  214. package/esm2022/domain/minimap/minimap-calculate-view-rect/index.mjs +3 -0
  215. package/esm2022/domain/minimap/minimap-calculate-view-rect/minimap-calculate-view-rect-request.mjs +4 -0
  216. package/esm2022/domain/minimap/minimap-calculate-view-rect/minimap-calculate-view-rect.mjs +32 -0
  217. package/esm2022/domain/minimap/minimap-calculate-viewport/i-minimap-viewport.mjs +2 -0
  218. package/esm2022/domain/minimap/minimap-calculate-viewport/index.mjs +4 -0
  219. package/esm2022/domain/minimap/minimap-calculate-viewport/minimap-calculate-viewport-request.mjs +10 -0
  220. package/esm2022/domain/minimap/minimap-calculate-viewport/minimap-calculate-viewport.mjs +62 -0
  221. package/esm2022/domain/minimap/minimap-draw-nodes/index.mjs +3 -0
  222. package/esm2022/domain/minimap/minimap-draw-nodes/minimap-draw-nodes-request.mjs +4 -0
  223. package/esm2022/domain/minimap/minimap-draw-nodes/minimap-draw-nodes.mjs +52 -0
  224. package/esm2022/domain/minimap/providers.mjs +9 -0
  225. package/esm2022/domain/providers.mjs +16 -14
  226. package/esm2022/domain/sort-item-layers/sort-item-layers.mjs +9 -5
  227. package/esm2022/domain/sort-item-layers/sort-items-by-parent/index.mjs +3 -3
  228. package/esm2022/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent-request.mjs +8 -0
  229. package/esm2022/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.mjs +124 -0
  230. package/esm2022/domain/sort-item-layers/sort-node-layers-by-groups/index.mjs +3 -3
  231. package/esm2022/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers-request.mjs +4 -0
  232. package/esm2022/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.mjs +65 -0
  233. package/esm2022/f-cache/config/f-cache-options.mjs +20 -0
  234. package/esm2022/f-cache/config/index.mjs +2 -0
  235. package/esm2022/f-cache/features/f-cache-connectors/index.mjs +3 -0
  236. package/esm2022/f-cache/features/f-cache-connectors/register-connector/index.mjs +3 -0
  237. package/esm2022/f-cache/features/f-cache-connectors/register-connector/register-connector-request.mjs +14 -0
  238. package/esm2022/f-cache/features/f-cache-connectors/register-connector/register-connector.mjs +51 -0
  239. package/esm2022/f-cache/features/f-cache-connectors/unregister-connector/index.mjs +3 -0
  240. package/esm2022/f-cache/features/f-cache-connectors/unregister-connector/unregister-connector-request.mjs +10 -0
  241. package/esm2022/f-cache/features/f-cache-connectors/unregister-connector/unregister-connector.mjs +49 -0
  242. package/esm2022/f-cache/features/f-cache-nodes/index.mjs +4 -0
  243. package/esm2022/f-cache/features/f-cache-nodes/invalidate-node/index.mjs +3 -0
  244. package/esm2022/f-cache/features/f-cache-nodes/invalidate-node/invalidate-node-request.mjs +10 -0
  245. package/esm2022/f-cache/features/f-cache-nodes/invalidate-node/invalidate-node.mjs +41 -0
  246. package/esm2022/f-cache/features/f-cache-nodes/register-node/index.mjs +3 -0
  247. package/esm2022/f-cache/features/f-cache-nodes/register-node/register-node-request.mjs +12 -0
  248. package/esm2022/f-cache/features/f-cache-nodes/register-node/register-node.mjs +30 -0
  249. package/esm2022/f-cache/features/f-cache-nodes/unregister-node/index.mjs +3 -0
  250. package/esm2022/f-cache/features/f-cache-nodes/unregister-node/unregister-node-request.mjs +8 -0
  251. package/esm2022/f-cache/features/f-cache-nodes/unregister-node/unregister-node.mjs +43 -0
  252. package/esm2022/f-cache/features/f-cache-rects/get-cached-rect/get-cached-rect-request.mjs +8 -0
  253. package/esm2022/f-cache/features/f-cache-rects/get-cached-rect/get-cached-rect.mjs +38 -0
  254. package/esm2022/f-cache/features/f-cache-rects/get-cached-rect/index.mjs +3 -0
  255. package/esm2022/f-cache/features/f-cache-rects/index.mjs +5 -0
  256. package/esm2022/f-cache/features/f-cache-rects/set-connector-rect/index.mjs +3 -0
  257. package/esm2022/f-cache/features/f-cache-rects/set-connector-rect/set-connector-rect-request.mjs +12 -0
  258. package/esm2022/f-cache/features/f-cache-rects/set-connector-rect/set-connector-rect.mjs +33 -0
  259. package/esm2022/f-cache/features/f-cache-rects/set-node-rect/index.mjs +3 -0
  260. package/esm2022/f-cache/features/f-cache-rects/set-node-rect/set-node-rect-request.mjs +10 -0
  261. package/esm2022/f-cache/features/f-cache-rects/set-node-rect/set-node-rect.mjs +64 -0
  262. package/esm2022/f-cache/features/f-cache-rects/update-rect-by-element/index.mjs +3 -0
  263. package/esm2022/f-cache/features/f-cache-rects/update-rect-by-element/update-rect-by-element-request.mjs +10 -0
  264. package/esm2022/f-cache/features/f-cache-rects/update-rect-by-element/update-rect-by-element.mjs +42 -0
  265. package/esm2022/f-cache/features/index.mjs +4 -0
  266. package/esm2022/f-cache/index.mjs +5 -0
  267. package/esm2022/f-cache/model/f-cache-connector-key.mjs +6 -0
  268. package/esm2022/f-cache/model/f-cache-connector.mjs +17 -0
  269. package/esm2022/f-cache/model/f-cache-node.mjs +13 -0
  270. package/esm2022/f-cache/model/f-cache.mjs +15 -0
  271. package/esm2022/f-cache/model/i-f-cache-node-ref.mjs +2 -0
  272. package/esm2022/f-cache/model/index.mjs +6 -0
  273. package/esm2022/f-cache/providers.mjs +15 -0
  274. package/esm2022/f-canvas/f-canvas.component.mjs +9 -7
  275. package/esm2022/f-connection/f-connection/f-connection.component.mjs +3 -3
  276. package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +3 -3
  277. package/esm2022/f-connection/f-snap-connection/f-snap-connection.component.mjs +3 -3
  278. package/esm2022/f-connection-v2/components/connection-content/f-connection-content.mjs +3 -3
  279. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-content-place.mjs +3 -3
  280. package/esm2022/f-connection-v2/components/connection-waypoints/f-connection-waypoints.mjs +3 -3
  281. package/esm2022/f-connection-worker/features/calculate-connection-worker-connector-rect/calculate-connection-worker-connector-rect-request.mjs +10 -0
  282. package/esm2022/f-connection-worker/features/calculate-connection-worker-connector-rect/calculate-connection-worker-connector-rect.mjs +31 -0
  283. package/esm2022/f-connection-worker/features/calculate-connection-worker-connector-rect/index.mjs +3 -0
  284. package/esm2022/f-connection-worker/features/calculate-connection-worker-payload-item/calculate-connection-worker-payload-item-request.mjs +10 -0
  285. package/esm2022/f-connection-worker/features/calculate-connection-worker-payload-item/calculate-connection-worker-payload-item.mjs +45 -0
  286. package/esm2022/f-connection-worker/features/calculate-connection-worker-payload-item/index.mjs +3 -0
  287. package/esm2022/f-connection-worker/features/calculate-connections-using-connection-worker/calculate-connections-using-connection-worker-request.mjs +10 -0
  288. package/esm2022/f-connection-worker/features/calculate-connections-using-connection-worker/calculate-connections-using-connection-worker.mjs +41 -0
  289. package/esm2022/f-connection-worker/features/calculate-connections-using-connection-worker/index.mjs +3 -0
  290. package/esm2022/f-connection-worker/features/connection-worker-run/connection-worker-run-request.mjs +8 -0
  291. package/esm2022/f-connection-worker/features/connection-worker-run/connection-worker-run.mjs +59 -0
  292. package/esm2022/f-connection-worker/features/connection-worker-run/index.mjs +3 -0
  293. package/esm2022/f-connection-worker/features/disable-connection-worker/disable-connection-worker-request.mjs +8 -0
  294. package/esm2022/f-connection-worker/features/disable-connection-worker/disable-connection-worker.mjs +25 -0
  295. package/esm2022/f-connection-worker/features/disable-connection-worker/index.mjs +3 -0
  296. package/esm2022/f-connection-worker/features/ensure-connection-worker/ensure-connection-worker-request.mjs +4 -0
  297. package/esm2022/f-connection-worker/features/ensure-connection-worker/ensure-connection-worker.mjs +61 -0
  298. package/esm2022/f-connection-worker/features/ensure-connection-worker/index.mjs +3 -0
  299. package/esm2022/f-connection-worker/features/handle-connection-worker-message/handle-connection-worker-message-request.mjs +8 -0
  300. package/esm2022/f-connection-worker/features/handle-connection-worker-message/handle-connection-worker-message.mjs +34 -0
  301. package/esm2022/f-connection-worker/features/handle-connection-worker-message/index.mjs +3 -0
  302. package/esm2022/f-connection-worker/features/index.mjs +13 -0
  303. package/esm2022/f-connection-worker/features/is-connection-worker-enabled/index.mjs +3 -0
  304. package/esm2022/f-connection-worker/features/is-connection-worker-enabled/is-connection-worker-enabled-request.mjs +4 -0
  305. package/esm2022/f-connection-worker/features/is-connection-worker-enabled/is-connection-worker-enabled.mjs +34 -0
  306. package/esm2022/f-connection-worker/features/reset-connection-worker-runtime/index.mjs +3 -0
  307. package/esm2022/f-connection-worker/features/reset-connection-worker-runtime/reset-connection-worker-runtime-request.mjs +8 -0
  308. package/esm2022/f-connection-worker/features/reset-connection-worker-runtime/reset-connection-worker-runtime.mjs +22 -0
  309. package/esm2022/f-connection-worker/features/resolve-connection-worker-connectors/index.mjs +3 -0
  310. package/esm2022/f-connection-worker/features/resolve-connection-worker-connectors/resolve-connection-worker-connectors-request.mjs +8 -0
  311. package/esm2022/f-connection-worker/features/resolve-connection-worker-connectors/resolve-connection-worker-connectors.mjs +27 -0
  312. package/esm2022/f-connection-worker/features/resolve-connection-worker-context/index.mjs +3 -0
  313. package/esm2022/f-connection-worker/features/resolve-connection-worker-context/resolve-connection-worker-context-request.mjs +10 -0
  314. package/esm2022/f-connection-worker/features/resolve-connection-worker-context/resolve-connection-worker-context.mjs +36 -0
  315. package/esm2022/f-connection-worker/features/should-use-connection-worker/index.mjs +3 -0
  316. package/esm2022/f-connection-worker/features/should-use-connection-worker/should-use-connection-worker-request.mjs +8 -0
  317. package/esm2022/f-connection-worker/features/should-use-connection-worker/should-use-connection-worker.mjs +22 -0
  318. package/esm2022/f-connection-worker/index.mjs +4 -0
  319. package/esm2022/f-connection-worker/model/f-connection-worker.mjs +23 -0
  320. package/esm2022/f-connection-worker/model/i-f-connection-worker-rect.mjs +2 -0
  321. package/esm2022/f-connection-worker/model/i-f-connection-worker-request-item.mjs +2 -0
  322. package/esm2022/f-connection-worker/model/i-f-connection-worker-response.mjs +2 -0
  323. package/esm2022/f-connection-worker/model/i-f-connection-worker-result-item.mjs +2 -0
  324. package/esm2022/f-connection-worker/model/index.mjs +7 -0
  325. package/esm2022/f-connection-worker/model/t-f-connection-worker-pending-request.mjs +2 -0
  326. package/esm2022/f-connection-worker/providers.mjs +18 -0
  327. package/esm2022/f-draggable/connection/drag-connection-waypoint/drag-connection-waypoint-preparation/drag-connection-waypoint-preparation.mjs +2 -2
  328. package/esm2022/f-draggable/connection/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.mjs +2 -2
  329. package/esm2022/f-draggable/domain/detect-connections-under-drag-node/detect-connections-under-drag-node.mjs +2 -2
  330. package/esm2022/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect-request.mjs +8 -0
  331. package/esm2022/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.mjs +67 -0
  332. package/esm2022/f-draggable/domain/get-normalized-parent-node-rect/index.mjs +3 -3
  333. package/esm2022/f-draggable/domain/is-array-has-parent-node/index.mjs +3 -3
  334. package/esm2022/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node-request.mjs +10 -0
  335. package/esm2022/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.mjs +26 -0
  336. package/esm2022/f-draggable/domain/providers.mjs +5 -5
  337. package/esm2022/f-draggable/drag-external-item/constraints/external-rect-constraint.mjs +46 -0
  338. package/esm2022/f-draggable/drag-external-item/constraints/index.mjs +2 -0
  339. package/esm2022/f-draggable/drag-external-item/drag-external-item-create-placeholder/drag-external-item-create-placeholder-request.mjs +8 -0
  340. package/esm2022/f-draggable/drag-external-item/drag-external-item-create-placeholder/drag-external-item-create-placeholder.mjs +42 -0
  341. package/esm2022/f-draggable/drag-external-item/drag-external-item-create-placeholder/index.mjs +3 -0
  342. package/esm2022/f-draggable/drag-external-item/drag-external-item-create-preview/drag-external-item-create-preview-request.mjs +8 -0
  343. package/esm2022/f-draggable/drag-external-item/drag-external-item-create-preview/drag-external-item-create-preview.mjs +53 -0
  344. package/esm2022/f-draggable/drag-external-item/drag-external-item-create-preview/index.mjs +3 -0
  345. package/esm2022/f-draggable/drag-external-item/drag-external-item-finalize/drag-external-item-finalize-request.mjs +8 -0
  346. package/esm2022/f-draggable/drag-external-item/drag-external-item-finalize/drag-external-item-finalize.mjs +75 -0
  347. package/esm2022/f-draggable/drag-external-item/drag-external-item-finalize/index.mjs +3 -0
  348. package/esm2022/f-draggable/drag-external-item/drag-external-item-handler/drag-external-item-handler.mjs +206 -0
  349. package/esm2022/f-draggable/drag-external-item/drag-external-item-handler/index.mjs +2 -0
  350. package/esm2022/f-draggable/drag-external-item/drag-external-item-preparation/drag-external-item-preparation-request.mjs +10 -0
  351. package/esm2022/f-draggable/drag-external-item/drag-external-item-preparation/drag-external-item-preparation.mjs +55 -0
  352. package/esm2022/f-draggable/drag-external-item/drag-external-item-preparation/index.mjs +3 -0
  353. package/esm2022/f-draggable/drag-external-item/f-create-node-event.mjs +35 -0
  354. package/esm2022/f-draggable/drag-external-item/f-drag-external-item-start-event-data.mjs +7 -0
  355. package/esm2022/f-draggable/drag-external-item/i-drag-external-item-drag-result.mjs +2 -0
  356. package/esm2022/f-draggable/drag-external-item/index.mjs +13 -0
  357. package/esm2022/f-draggable/drag-external-item/is-drag-external-item-handler.mjs +7 -0
  358. package/esm2022/f-draggable/drag-external-item/prevent-default-is-external-item/index.mjs +3 -0
  359. package/esm2022/f-draggable/drag-external-item/prevent-default-is-external-item/prevent-default-is-external-item-request.mjs +8 -0
  360. package/esm2022/f-draggable/drag-external-item/prevent-default-is-external-item/prevent-default-is-external-item.mjs +38 -0
  361. package/esm2022/f-draggable/drag-external-item/providers.mjs +13 -0
  362. package/esm2022/f-draggable/drag-minimap/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point-request.mjs +14 -0
  363. package/esm2022/f-draggable/drag-minimap/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.mjs +39 -0
  364. package/esm2022/f-draggable/drag-minimap/calculate-flow-point-from-minimap-point/index.mjs +3 -0
  365. package/esm2022/f-draggable/drag-minimap/drag-minimap-finalize/drag-minimap-finalize-request.mjs +8 -0
  366. package/esm2022/f-draggable/drag-minimap/drag-minimap-finalize/drag-minimap-finalize.mjs +30 -0
  367. package/esm2022/f-draggable/drag-minimap/drag-minimap-finalize/index.mjs +3 -0
  368. package/esm2022/f-draggable/drag-minimap/drag-minimap-handler/drag-minimap-handler.mjs +52 -0
  369. package/esm2022/f-draggable/drag-minimap/drag-minimap-handler/index.mjs +2 -0
  370. package/esm2022/f-draggable/drag-minimap/drag-minimap-preparation/drag-minimap-preparation-request.mjs +8 -0
  371. package/esm2022/f-draggable/drag-minimap/drag-minimap-preparation/drag-minimap-preparation.mjs +68 -0
  372. package/esm2022/f-draggable/drag-minimap/drag-minimap-preparation/index.mjs +3 -0
  373. package/esm2022/f-draggable/drag-minimap/index.mjs +7 -0
  374. package/esm2022/f-draggable/drag-minimap/is-drag-minimap-handler.mjs +7 -0
  375. package/esm2022/f-draggable/drag-minimap/providers.mjs +9 -0
  376. package/esm2022/f-draggable/drag-node/attach-drag-node-handler-from-selection/attach-drag-node-handler-from-selection.mjs +1 -1
  377. package/esm2022/f-draggable/drag-node/attach-drag-node-handler-from-selection/attach-soft-parent-connection-drag-handlers-to-node/attach-soft-parent-connection-drag-handlers-to-node-request.mjs +18 -0
  378. package/esm2022/f-draggable/drag-node/attach-drag-node-handler-from-selection/attach-soft-parent-connection-drag-handlers-to-node/attach-soft-parent-connection-drag-handlers-to-node.mjs +95 -0
  379. package/esm2022/f-draggable/drag-node/attach-drag-node-handler-from-selection/attach-soft-parent-connection-drag-handlers-to-node/index.mjs +3 -0
  380. package/esm2022/f-draggable/drag-node/attach-drag-node-handler-from-selection/create-drag-node-handler/create-drag-node-handler.mjs +23 -4
  381. package/esm2022/f-draggable/drag-node/attach-drag-node-handler-from-selection/index.mjs +2 -1
  382. package/esm2022/f-draggable/drag-node/attach-drag-node-handler-from-selection/providers.mjs +3 -1
  383. package/esm2022/f-draggable/drag-node/drag-node-dependent-connection-handlers/drag-node-connection-handler-base.mjs +7 -1
  384. package/esm2022/f-draggable/drag-node/drag-node-finalize/drag-node-finalize.mjs +3 -3
  385. package/esm2022/f-draggable/drag-node/drag-node-handler/drag-node-handler.mjs +5 -4
  386. package/esm2022/f-draggable/drag-node/drag-node-handler/drag-node-item-handler.mjs +49 -5
  387. package/esm2022/f-draggable/drag-node/drag-node-handler/i-soft-parent-connection-handlers.mjs +2 -0
  388. package/esm2022/f-draggable/drag-node/drag-node-handler/index.mjs +2 -1
  389. package/esm2022/f-draggable/drag-node/index.mjs +2 -1
  390. package/esm2022/f-draggable/drag-node/is-drag-node-handler.mjs +7 -0
  391. package/esm2022/f-draggable/drop-to-group/drop-to-group-handler/drop-to-group-handler.mjs +11 -9
  392. package/esm2022/f-draggable/drop-to-group/drop-to-group-preparation/drop-to-group-preparation.mjs +4 -15
  393. package/esm2022/f-draggable/f-draggable-base.mjs +1 -1
  394. package/esm2022/f-draggable/f-draggable.directive.mjs +16 -29
  395. package/esm2022/f-draggable/index.mjs +5 -4
  396. package/esm2022/f-draggable/infrastructure/drag-handler-injector.mjs +16 -1
  397. package/esm2022/f-draggable/pinch-to-zoom/index.mjs +3 -3
  398. package/esm2022/f-draggable/pinch-to-zoom/pinch-to-zoom-finalize/index.mjs +3 -0
  399. package/esm2022/f-draggable/pinch-to-zoom/pinch-to-zoom-finalize/pinch-to-zoom-finalize-request.mjs +8 -0
  400. package/esm2022/f-draggable/pinch-to-zoom/pinch-to-zoom-finalize/pinch-to-zoom-finalize.mjs +31 -0
  401. package/esm2022/f-draggable/pinch-to-zoom/pinch-to-zoom-preparation/index.mjs +3 -0
  402. package/esm2022/f-draggable/pinch-to-zoom/pinch-to-zoom-preparation/pinch-to-zoom-preparation-request.mjs +8 -0
  403. package/esm2022/f-draggable/pinch-to-zoom/pinch-to-zoom-preparation/pinch-to-zoom-preparation.mjs +47 -0
  404. package/esm2022/f-draggable/pinch-to-zoom/providers.mjs +3 -3
  405. package/esm2022/f-draggable/providers.mjs +7 -7
  406. package/esm2022/f-draggable/resize-node/apply-child-resize-constraints/apply-child-resize-constraints-request.mjs +10 -0
  407. package/esm2022/f-draggable/resize-node/apply-child-resize-constraints/apply-child-resize-constraints.mjs +57 -0
  408. package/esm2022/f-draggable/resize-node/apply-child-resize-constraints/index.mjs +3 -0
  409. package/esm2022/f-draggable/resize-node/apply-parent-resize-constraints/apply-parent-resize-constraints-request.mjs +10 -0
  410. package/esm2022/f-draggable/resize-node/apply-parent-resize-constraints/apply-parent-resize-constraints.mjs +150 -0
  411. package/esm2022/f-draggable/resize-node/apply-parent-resize-constraints/index.mjs +3 -0
  412. package/esm2022/f-draggable/resize-node/calculate-changed-rect-from-difference/calculate-changed-rect-from-difference-request.mjs +14 -0
  413. package/esm2022/f-draggable/resize-node/calculate-changed-rect-from-difference/calculate-changed-rect-from-difference.mjs +55 -0
  414. package/esm2022/f-draggable/resize-node/calculate-changed-rect-from-difference/index.mjs +3 -0
  415. package/esm2022/f-draggable/resize-node/calculate-direct-children-union-rect/calculate-direct-children-union-rect-request.mjs +10 -0
  416. package/esm2022/f-draggable/resize-node/calculate-direct-children-union-rect/calculate-direct-children-union-rect.mjs +38 -0
  417. package/esm2022/f-draggable/resize-node/calculate-direct-children-union-rect/index.mjs +3 -0
  418. package/esm2022/f-draggable/resize-node/calculate-resize-limits/calculate-resize-limits-request.mjs +10 -0
  419. package/esm2022/f-draggable/resize-node/calculate-resize-limits/calculate-resize-limits.mjs +69 -0
  420. package/esm2022/f-draggable/resize-node/calculate-resize-limits/index.mjs +3 -0
  421. package/esm2022/f-draggable/resize-node/constraint/i-resize-constraint.mjs +2 -0
  422. package/esm2022/f-draggable/resize-node/constraint/i-resize-limit.mjs +2 -0
  423. package/esm2022/f-draggable/resize-node/constraint/i-resize-limits.mjs +2 -0
  424. package/esm2022/f-draggable/resize-node/constraint/i-resize-overflow.mjs +2 -0
  425. package/esm2022/f-draggable/resize-node/constraint/index.mjs +6 -0
  426. package/esm2022/f-draggable/resize-node/constraint/resize-direction.mjs +12 -0
  427. package/esm2022/f-draggable/resize-node/f-resize-node-start-event-data.mjs +7 -0
  428. package/esm2022/f-draggable/resize-node/index.mjs +13 -0
  429. package/esm2022/f-draggable/resize-node/is-resize-node-handler.mjs +7 -0
  430. package/esm2022/f-draggable/resize-node/providers.mjs +19 -0
  431. package/esm2022/f-draggable/resize-node/resize-node-finalize/index.mjs +3 -0
  432. package/esm2022/f-draggable/resize-node/resize-node-finalize/resize-node-finalize-request.mjs +8 -0
  433. package/esm2022/f-draggable/resize-node/resize-node-finalize/resize-node-finalize.mjs +29 -0
  434. package/esm2022/f-draggable/resize-node/resize-node-handler/i-resize-node-connection-handlers.mjs +2 -0
  435. package/esm2022/f-draggable/resize-node/resize-node-handler/index.mjs +4 -0
  436. package/esm2022/f-draggable/resize-node/resize-node-handler/resize-node-dependent-connection-handlers/index.mjs +5 -0
  437. package/esm2022/f-draggable/resize-node/resize-node-handler/resize-node-dependent-connection-handlers/resize-node-connection-both-sides-handler.mjs +31 -0
  438. package/esm2022/f-draggable/resize-node/resize-node-handler/resize-node-dependent-connection-handlers/resize-node-connection-handler-base.mjs +53 -0
  439. package/esm2022/f-draggable/resize-node/resize-node-handler/resize-node-dependent-connection-handlers/resize-node-connection-source-handler.mjs +15 -0
  440. package/esm2022/f-draggable/resize-node/resize-node-handler/resize-node-dependent-connection-handlers/resize-node-connection-target-handler.mjs +15 -0
  441. package/esm2022/f-draggable/resize-node/resize-node-handler/resize-node-handler.mjs +116 -0
  442. package/esm2022/f-draggable/resize-node/resize-preparation/attach-resize-connection-drag-handlers-to-node/attach-resize-connection-drag-handlers-to-node-request.mjs +10 -0
  443. package/esm2022/f-draggable/resize-node/resize-preparation/attach-resize-connection-drag-handlers-to-node/attach-resize-connection-drag-handlers-to-node.mjs +99 -0
  444. package/esm2022/f-draggable/resize-node/resize-preparation/attach-resize-connection-drag-handlers-to-node/index.mjs +3 -0
  445. package/esm2022/f-draggable/resize-node/resize-preparation/index.mjs +4 -0
  446. package/esm2022/f-draggable/resize-node/resize-preparation/resize-node-preparation-request.mjs +10 -0
  447. package/esm2022/f-draggable/resize-node/resize-preparation/resize-node-preparation.mjs +77 -0
  448. package/esm2022/f-draggable/rotate-node/calculate-difference-after-rotation.mjs +19 -0
  449. package/esm2022/f-draggable/rotate-node/f-rotate-node-start-event-data.mjs +7 -0
  450. package/esm2022/f-draggable/rotate-node/index.mjs +8 -0
  451. package/esm2022/f-draggable/rotate-node/is-rotate-node-handler.mjs +7 -0
  452. package/esm2022/f-draggable/rotate-node/providers.mjs +4 -0
  453. package/esm2022/f-draggable/rotate-node/rotate-node-finalize/index.mjs +3 -0
  454. package/esm2022/f-draggable/rotate-node/rotate-node-finalize/rotate-node-finalize-request.mjs +8 -0
  455. package/esm2022/f-draggable/rotate-node/rotate-node-finalize/rotate-node-finalize.mjs +31 -0
  456. package/esm2022/f-draggable/rotate-node/rotate-node-handler/index.mjs +2 -0
  457. package/esm2022/f-draggable/rotate-node/rotate-node-handler/rotate-node-handler.mjs +89 -0
  458. package/esm2022/f-draggable/rotate-node/rotate-node-preparation/index.mjs +3 -0
  459. package/esm2022/f-draggable/rotate-node/rotate-node-preparation/rotate-node-preparation-request.mjs +10 -0
  460. package/esm2022/f-draggable/rotate-node/rotate-node-preparation/rotate-node-preparation.mjs +99 -0
  461. package/esm2022/f-draggable/selection-area/selection-area-handler/selection-area-handler.mjs +2 -2
  462. package/esm2022/f-external-item/f-external-item-base.mjs +5 -2
  463. package/esm2022/f-external-item/f-external-item-placeholder.mjs +26 -0
  464. package/esm2022/f-external-item/f-external-item-preview.mjs +26 -0
  465. package/esm2022/f-external-item/f-external-item.mjs +63 -0
  466. package/esm2022/f-external-item/f-external-item.service.mjs +37 -11
  467. package/esm2022/f-external-item/index.mjs +4 -6
  468. package/esm2022/f-external-item/is-external-item.mjs +6 -3
  469. package/esm2022/f-external-item/providers.mjs +3 -5
  470. package/esm2022/f-flow/f-flow-base.mjs +2 -2
  471. package/esm2022/f-flow/f-flow.component.mjs +47 -27
  472. package/esm2022/f-flow.module.mjs +24 -20
  473. package/esm2022/f-magnetic-lines/f-magnetic-lines.mjs +4 -4
  474. package/esm2022/f-magnetic-rects/f-magnetic-rects.mjs +4 -4
  475. package/esm2022/f-minimap/f-minimap-base.mjs +12 -0
  476. package/esm2022/f-minimap/f-minimap-canvas.directive.mjs +12 -8
  477. package/esm2022/f-minimap/f-minimap-flow.directive.mjs +7 -6
  478. package/esm2022/f-minimap/f-minimap-view.directive.mjs +5 -4
  479. package/esm2022/f-minimap/f-minimap.component.mjs +25 -16
  480. package/esm2022/f-minimap/index.mjs +2 -2
  481. package/esm2022/f-node/f-group.directive.mjs +4 -1
  482. package/esm2022/f-node/f-node.directive.mjs +4 -1
  483. package/esm2022/f-storage/f-components-store.mjs +18 -11
  484. package/esm2022/f-storage/features/emit-connections-changes/emit-connections-changes-request.mjs +4 -0
  485. package/esm2022/f-storage/features/emit-connections-changes/emit-connections-changes.mjs +22 -0
  486. package/esm2022/f-storage/features/emit-connections-changes/index.mjs +3 -0
  487. package/esm2022/f-storage/features/index.mjs +4 -4
  488. package/esm2022/f-storage/features/listen-connections-changes/index.mjs +3 -0
  489. package/esm2022/f-storage/features/listen-connections-changes/listen-connections-changes-request.mjs +8 -0
  490. package/esm2022/f-storage/features/listen-connections-changes/listen-connections-changes.mjs +25 -0
  491. package/esm2022/f-storage/features/listen-nodes-changes/index.mjs +3 -0
  492. package/esm2022/f-storage/features/listen-nodes-changes/listen-nodes-changes-request.mjs +4 -0
  493. package/esm2022/f-storage/features/listen-nodes-changes/listen-nodes-changes.mjs +23 -0
  494. package/esm2022/f-storage/features/listen-transform-changes/listen-transform-changes.mjs +3 -3
  495. package/esm2022/f-storage/providers.mjs +6 -6
  496. package/esm2022/f-virtual/f-virtual-for.mjs +56 -0
  497. package/esm2022/f-virtual/index.mjs +3 -0
  498. package/esm2022/f-virtual/providers.mjs +3 -0
  499. package/esm2022/f-zoom/f-zoom.directive.mjs +17 -9
  500. package/esm2022/public-api.mjs +4 -1
  501. package/esm2022/reactivity/after-next-paint.mjs +27 -0
  502. package/esm2022/reactivity/index.mjs +2 -1
  503. package/esm2022/utils/calculate-pointer-in-flow.mjs +6 -3
  504. package/f-cache/config/f-cache-options.d.ts +6 -0
  505. package/f-cache/config/index.d.ts +1 -0
  506. package/f-cache/features/f-cache-connectors/index.d.ts +2 -0
  507. package/f-cache/features/f-cache-connectors/register-connector/index.d.ts +2 -0
  508. package/f-cache/features/f-cache-connectors/register-connector/register-connector-request.d.ts +8 -0
  509. package/f-cache/features/f-cache-connectors/register-connector/register-connector.d.ts +12 -0
  510. package/f-cache/features/f-cache-connectors/unregister-connector/index.d.ts +2 -0
  511. package/f-cache/features/f-cache-connectors/unregister-connector/unregister-connector-request.d.ts +6 -0
  512. package/f-cache/features/f-cache-connectors/unregister-connector/unregister-connector.d.ts +12 -0
  513. package/f-cache/features/f-cache-nodes/index.d.ts +3 -0
  514. package/f-cache/features/f-cache-nodes/invalidate-node/index.d.ts +2 -0
  515. package/f-cache/features/f-cache-nodes/invalidate-node/invalidate-node-request.d.ts +6 -0
  516. package/f-cache/features/f-cache-nodes/invalidate-node/invalidate-node.d.ts +10 -0
  517. package/f-cache/features/f-cache-nodes/register-node/index.d.ts +2 -0
  518. package/f-cache/features/f-cache-nodes/register-node/register-node-request.d.ts +8 -0
  519. package/f-cache/features/f-cache-nodes/register-node/register-node.d.ts +10 -0
  520. package/f-cache/features/f-cache-nodes/unregister-node/index.d.ts +2 -0
  521. package/f-cache/features/f-cache-nodes/unregister-node/unregister-node-request.d.ts +5 -0
  522. package/f-cache/features/f-cache-nodes/unregister-node/unregister-node.d.ts +11 -0
  523. package/f-cache/features/f-cache-rects/get-cached-rect/get-cached-rect-request.d.ts +5 -0
  524. package/f-cache/features/f-cache-rects/get-cached-rect/get-cached-rect.d.ts +11 -0
  525. package/f-cache/features/f-cache-rects/get-cached-rect/index.d.ts +2 -0
  526. package/f-cache/features/f-cache-rects/index.d.ts +4 -0
  527. package/f-cache/features/f-cache-rects/set-connector-rect/index.d.ts +2 -0
  528. package/f-cache/features/f-cache-rects/set-connector-rect/set-connector-rect-request.d.ts +8 -0
  529. package/f-cache/features/f-cache-rects/set-connector-rect/set-connector-rect.d.ts +10 -0
  530. package/f-cache/features/f-cache-rects/set-node-rect/index.d.ts +2 -0
  531. package/f-cache/features/f-cache-rects/set-node-rect/set-node-rect-request.d.ts +7 -0
  532. package/f-cache/features/f-cache-rects/set-node-rect/set-node-rect.d.ts +11 -0
  533. package/f-cache/features/f-cache-rects/update-rect-by-element/index.d.ts +2 -0
  534. package/f-cache/features/f-cache-rects/update-rect-by-element/update-rect-by-element-request.d.ts +7 -0
  535. package/f-cache/features/f-cache-rects/update-rect-by-element/update-rect-by-element.d.ts +10 -0
  536. package/f-cache/features/index.d.ts +3 -0
  537. package/f-cache/index.d.ts +4 -0
  538. package/f-cache/model/f-cache-connector-key.d.ts +4 -0
  539. package/f-cache/model/f-cache-connector.d.ts +11 -0
  540. package/f-cache/model/f-cache-node.d.ts +9 -0
  541. package/f-cache/model/f-cache.d.ts +12 -0
  542. package/f-cache/model/i-f-cache-node-ref.d.ts +6 -0
  543. package/f-cache/model/index.d.ts +5 -0
  544. package/f-cache/providers.d.ts +3 -0
  545. package/f-connection-worker/features/calculate-connection-worker-connector-rect/calculate-connection-worker-connector-rect-request.d.ts +8 -0
  546. package/f-connection-worker/features/calculate-connection-worker-connector-rect/calculate-connection-worker-connector-rect.d.ts +12 -0
  547. package/f-connection-worker/features/calculate-connection-worker-connector-rect/index.d.ts +2 -0
  548. package/f-connection-worker/features/calculate-connection-worker-payload-item/calculate-connection-worker-payload-item-request.d.ts +8 -0
  549. package/f-connection-worker/features/calculate-connection-worker-payload-item/calculate-connection-worker-payload-item.d.ts +10 -0
  550. package/f-connection-worker/features/calculate-connection-worker-payload-item/index.d.ts +2 -0
  551. package/f-connection-worker/features/calculate-connections-using-connection-worker/calculate-connections-using-connection-worker-request.d.ts +8 -0
  552. package/f-connection-worker/features/calculate-connections-using-connection-worker/calculate-connections-using-connection-worker.d.ts +12 -0
  553. package/f-connection-worker/features/calculate-connections-using-connection-worker/index.d.ts +2 -0
  554. package/f-connection-worker/features/connection-worker-run/connection-worker-run-request.d.ts +6 -0
  555. package/f-connection-worker/features/connection-worker-run/connection-worker-run.d.ts +12 -0
  556. package/f-connection-worker/features/connection-worker-run/index.d.ts +2 -0
  557. package/f-connection-worker/features/disable-connection-worker/disable-connection-worker-request.d.ts +5 -0
  558. package/f-connection-worker/features/disable-connection-worker/disable-connection-worker.d.ts +10 -0
  559. package/f-connection-worker/features/disable-connection-worker/index.d.ts +2 -0
  560. package/f-connection-worker/features/ensure-connection-worker/ensure-connection-worker-request.d.ts +3 -0
  561. package/f-connection-worker/features/ensure-connection-worker/ensure-connection-worker.d.ts +13 -0
  562. package/f-connection-worker/features/ensure-connection-worker/index.d.ts +2 -0
  563. package/f-connection-worker/features/handle-connection-worker-message/handle-connection-worker-message-request.d.ts +6 -0
  564. package/f-connection-worker/features/handle-connection-worker-message/handle-connection-worker-message.d.ts +9 -0
  565. package/f-connection-worker/features/handle-connection-worker-message/index.d.ts +2 -0
  566. package/f-connection-worker/features/index.d.ts +12 -0
  567. package/f-connection-worker/features/is-connection-worker-enabled/index.d.ts +2 -0
  568. package/f-connection-worker/features/is-connection-worker-enabled/is-connection-worker-enabled-request.d.ts +3 -0
  569. package/f-connection-worker/features/is-connection-worker-enabled/is-connection-worker-enabled.d.ts +11 -0
  570. package/f-connection-worker/features/reset-connection-worker-runtime/index.d.ts +2 -0
  571. package/f-connection-worker/features/reset-connection-worker-runtime/reset-connection-worker-runtime-request.d.ts +5 -0
  572. package/f-connection-worker/features/reset-connection-worker-runtime/reset-connection-worker-runtime.d.ts +9 -0
  573. package/f-connection-worker/features/resolve-connection-worker-connectors/index.d.ts +2 -0
  574. package/f-connection-worker/features/resolve-connection-worker-connectors/resolve-connection-worker-connectors-request.d.ts +11 -0
  575. package/f-connection-worker/features/resolve-connection-worker-connectors/resolve-connection-worker-connectors.d.ts +9 -0
  576. package/f-connection-worker/features/resolve-connection-worker-context/index.d.ts +2 -0
  577. package/f-connection-worker/features/resolve-connection-worker-context/resolve-connection-worker-context-request.d.ts +13 -0
  578. package/f-connection-worker/features/resolve-connection-worker-context/resolve-connection-worker-context.d.ts +10 -0
  579. package/f-connection-worker/features/should-use-connection-worker/index.d.ts +2 -0
  580. package/f-connection-worker/features/should-use-connection-worker/should-use-connection-worker-request.d.ts +5 -0
  581. package/f-connection-worker/features/should-use-connection-worker/should-use-connection-worker.d.ts +9 -0
  582. package/f-connection-worker/index.d.ts +3 -0
  583. package/f-connection-worker/model/f-connection-worker.d.ts +12 -0
  584. package/f-connection-worker/model/i-f-connection-worker-rect.d.ts +6 -0
  585. package/f-connection-worker/model/i-f-connection-worker-request-item.d.ts +11 -0
  586. package/f-connection-worker/model/i-f-connection-worker-response.d.ts +6 -0
  587. package/f-connection-worker/model/i-f-connection-worker-result-item.d.ts +8 -0
  588. package/f-connection-worker/model/index.d.ts +6 -0
  589. package/f-connection-worker/model/t-f-connection-worker-pending-request.d.ts +5 -0
  590. package/f-connection-worker/providers.d.ts +3 -0
  591. package/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.d.ts +15 -0
  592. package/f-draggable/domain/get-normalized-parent-node-rect/index.d.ts +2 -2
  593. package/f-draggable/domain/is-array-has-parent-node/index.d.ts +2 -2
  594. package/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.d.ts +10 -0
  595. package/f-draggable/domain/providers.d.ts +3 -3
  596. package/f-draggable/drag-external-item/drag-external-item-create-placeholder/drag-external-item-create-placeholder-request.d.ts +6 -0
  597. package/f-draggable/drag-external-item/drag-external-item-create-placeholder/drag-external-item-create-placeholder.d.ts +13 -0
  598. package/f-draggable/drag-external-item/drag-external-item-create-placeholder/index.d.ts +2 -0
  599. package/f-draggable/drag-external-item/drag-external-item-create-preview/drag-external-item-create-preview-request.d.ts +6 -0
  600. package/f-draggable/drag-external-item/drag-external-item-create-preview/drag-external-item-create-preview.d.ts +14 -0
  601. package/f-draggable/drag-external-item/drag-external-item-create-preview/index.d.ts +2 -0
  602. package/f-draggable/drag-external-item/drag-external-item-finalize/drag-external-item-finalize-request.d.ts +6 -0
  603. package/f-draggable/drag-external-item/drag-external-item-finalize/drag-external-item-finalize.d.ts +21 -0
  604. package/f-draggable/drag-external-item/drag-external-item-finalize/index.d.ts +2 -0
  605. package/f-draggable/drag-external-item/drag-external-item-handler/drag-external-item-handler.d.ts +50 -0
  606. package/f-draggable/drag-external-item/drag-external-item-handler/index.d.ts +1 -0
  607. package/f-draggable/drag-external-item/drag-external-item-preparation/drag-external-item-preparation-request.d.ts +8 -0
  608. package/f-draggable/drag-external-item/drag-external-item-preparation/drag-external-item-preparation.d.ts +15 -0
  609. package/f-draggable/drag-external-item/drag-external-item-preparation/index.d.ts +2 -0
  610. package/f-draggable/drag-external-item/f-create-node-event.d.ts +18 -0
  611. package/f-draggable/drag-external-item/f-drag-external-item-start-event-data.d.ts +4 -0
  612. package/f-draggable/drag-external-item/i-drag-external-item-drag-result.d.ts +5 -0
  613. package/f-draggable/drag-external-item/index.d.ts +12 -0
  614. package/f-draggable/drag-external-item/is-drag-external-item-handler.d.ts +5 -0
  615. package/f-draggable/drag-external-item/prevent-default-is-external-item/index.d.ts +2 -0
  616. package/f-draggable/drag-external-item/prevent-default-is-external-item/prevent-default-is-external-item-request.d.ts +5 -0
  617. package/f-draggable/drag-external-item/prevent-default-is-external-item/prevent-default-is-external-item.d.ts +10 -0
  618. package/f-draggable/drag-external-item/providers.d.ts +6 -0
  619. package/f-draggable/drag-minimap/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point-request.d.ts +10 -0
  620. package/f-draggable/drag-minimap/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.d.ts +16 -0
  621. package/f-draggable/drag-minimap/calculate-flow-point-from-minimap-point/index.d.ts +2 -0
  622. package/f-draggable/drag-minimap/drag-minimap-finalize/drag-minimap-finalize-request.d.ts +6 -0
  623. package/f-draggable/drag-minimap/drag-minimap-finalize/drag-minimap-finalize.d.ts +10 -0
  624. package/f-draggable/drag-minimap/drag-minimap-finalize/index.d.ts +2 -0
  625. package/f-draggable/drag-minimap/drag-minimap-handler/drag-minimap-handler.d.ts +23 -0
  626. package/f-draggable/drag-minimap/drag-minimap-handler/index.d.ts +1 -0
  627. package/f-draggable/drag-minimap/drag-minimap-preparation/drag-minimap-preparation-request.d.ts +6 -0
  628. package/f-draggable/drag-minimap/drag-minimap-preparation/drag-minimap-preparation.d.ts +16 -0
  629. package/f-draggable/drag-minimap/drag-minimap-preparation/index.d.ts +2 -0
  630. package/f-draggable/drag-minimap/index.d.ts +6 -0
  631. package/f-draggable/drag-minimap/is-drag-minimap-handler.d.ts +5 -0
  632. package/f-draggable/drag-minimap/providers.d.ts +4 -0
  633. package/f-draggable/drag-node/attach-drag-node-handler-from-selection/attach-soft-parent-connection-drag-handlers-to-node/attach-soft-parent-connection-drag-handlers-to-node-request.d.ts +19 -0
  634. package/f-draggable/drag-node/attach-drag-node-handler-from-selection/attach-soft-parent-connection-drag-handlers-to-node/attach-soft-parent-connection-drag-handlers-to-node.d.ts +15 -0
  635. package/f-draggable/drag-node/attach-drag-node-handler-from-selection/attach-soft-parent-connection-drag-handlers-to-node/index.d.ts +2 -0
  636. package/f-draggable/drag-node/attach-drag-node-handler-from-selection/create-drag-node-handler/create-drag-node-handler.d.ts +2 -0
  637. package/f-draggable/drag-node/attach-drag-node-handler-from-selection/index.d.ts +1 -0
  638. package/f-draggable/drag-node/attach-drag-node-handler-from-selection/providers.d.ts +2 -1
  639. package/f-draggable/drag-node/drag-node-dependent-connection-handlers/drag-node-connection-handler-base.d.ts +1 -0
  640. package/f-draggable/drag-node/drag-node-handler/drag-node-item-handler.d.ts +6 -0
  641. package/f-draggable/drag-node/drag-node-handler/i-soft-parent-connection-handlers.d.ts +12 -0
  642. package/f-draggable/drag-node/drag-node-handler/index.d.ts +1 -0
  643. package/f-draggable/drag-node/index.d.ts +1 -0
  644. package/f-draggable/drag-node/is-drag-node-handler.d.ts +5 -0
  645. package/f-draggable/drag-node/providers.d.ts +1 -1
  646. package/f-draggable/drop-to-group/drop-to-group-handler/drop-to-group-handler.d.ts +2 -3
  647. package/f-draggable/drop-to-group/drop-to-group-preparation/drop-to-group-preparation.d.ts +0 -3
  648. package/f-draggable/f-draggable-base.d.ts +1 -1
  649. package/f-draggable/f-draggable.directive.d.ts +2 -4
  650. package/f-draggable/index.d.ts +4 -3
  651. package/f-draggable/pinch-to-zoom/index.d.ts +2 -2
  652. package/f-draggable/pinch-to-zoom/providers.d.ts +2 -2
  653. package/f-draggable/providers.d.ts +1 -1
  654. package/f-draggable/resize-node/apply-parent-resize-constraints/apply-parent-resize-constraints-request.d.ts +8 -0
  655. package/f-draggable/resize-node/apply-parent-resize-constraints/apply-parent-resize-constraints.d.ts +37 -0
  656. package/f-draggable/resize-node/calculate-changed-rect-from-difference/calculate-changed-rect-from-difference.d.ts +11 -0
  657. package/f-draggable/resize-node/calculate-resize-limits/calculate-resize-limits-request.d.ts +8 -0
  658. package/f-draggable/resize-node/constraint/i-resize-constraint.d.ts +7 -0
  659. package/f-draggable/resize-node/constraint/i-resize-limit.d.ts +7 -0
  660. package/f-draggable/resize-node/constraint/i-resize-limits.d.ts +5 -0
  661. package/f-draggable/resize-node/constraint/index.d.ts +5 -0
  662. package/f-draggable/resize-node/f-resize-node-start-event-data.d.ts +4 -0
  663. package/f-draggable/resize-node/index.d.ts +12 -0
  664. package/f-draggable/resize-node/is-resize-node-handler.d.ts +5 -0
  665. package/f-draggable/resize-node/providers.d.ts +9 -0
  666. package/f-draggable/resize-node/resize-node-finalize/index.d.ts +2 -0
  667. package/f-draggable/resize-node/resize-node-finalize/resize-node-finalize-request.d.ts +6 -0
  668. package/f-draggable/resize-node/resize-node-finalize/resize-node-finalize.d.ts +10 -0
  669. package/f-draggable/resize-node/resize-node-handler/i-resize-node-connection-handlers.d.ts +10 -0
  670. package/f-draggable/resize-node/resize-node-handler/index.d.ts +3 -0
  671. package/f-draggable/resize-node/resize-node-handler/resize-node-dependent-connection-handlers/index.d.ts +4 -0
  672. package/f-draggable/resize-node/resize-node-handler/resize-node-dependent-connection-handlers/resize-node-connection-both-sides-handler.d.ts +12 -0
  673. package/f-draggable/resize-node/resize-node-handler/resize-node-dependent-connection-handlers/resize-node-connection-handler-base.d.ts +20 -0
  674. package/f-draggable/resize-node/resize-node-handler/resize-node-dependent-connection-handlers/resize-node-connection-source-handler.d.ts +8 -0
  675. package/f-draggable/resize-node/resize-node-handler/resize-node-dependent-connection-handlers/resize-node-connection-target-handler.d.ts +8 -0
  676. package/f-draggable/resize-node/resize-node-handler/resize-node-handler.d.ts +35 -0
  677. package/f-draggable/resize-node/resize-preparation/attach-resize-connection-drag-handlers-to-node/attach-resize-connection-drag-handlers-to-node-request.d.ts +8 -0
  678. package/f-draggable/resize-node/resize-preparation/attach-resize-connection-drag-handlers-to-node/attach-resize-connection-drag-handlers-to-node.d.ts +16 -0
  679. package/f-draggable/resize-node/resize-preparation/attach-resize-connection-drag-handlers-to-node/index.d.ts +2 -0
  680. package/f-draggable/resize-node/resize-preparation/index.d.ts +3 -0
  681. package/f-draggable/resize-node/resize-preparation/resize-node-preparation-request.d.ts +8 -0
  682. package/f-draggable/resize-node/resize-preparation/resize-node-preparation.d.ts +17 -0
  683. package/f-draggable/rotate-node/f-rotate-node-start-event-data.d.ts +4 -0
  684. package/f-draggable/rotate-node/index.d.ts +7 -0
  685. package/f-draggable/rotate-node/is-rotate-node-handler.d.ts +5 -0
  686. package/f-draggable/rotate-node/providers.d.ts +3 -0
  687. package/f-draggable/rotate-node/rotate-node-finalize/index.d.ts +2 -0
  688. package/f-draggable/rotate-node/rotate-node-finalize/rotate-node-finalize-request.d.ts +6 -0
  689. package/f-draggable/rotate-node/rotate-node-finalize/rotate-node-finalize.d.ts +10 -0
  690. package/f-draggable/rotate-node/rotate-node-handler/index.d.ts +1 -0
  691. package/f-draggable/rotate-node/rotate-node-handler/rotate-node-handler.d.ts +43 -0
  692. package/f-draggable/rotate-node/rotate-node-preparation/index.d.ts +2 -0
  693. package/f-draggable/rotate-node/rotate-node-preparation/rotate-node-preparation-request.d.ts +8 -0
  694. package/f-draggable/rotate-node/rotate-node-preparation/rotate-node-preparation.d.ts +18 -0
  695. package/f-external-item/f-external-item-base.d.ts +10 -10
  696. package/f-external-item/f-external-item-placeholder.d.ts +10 -0
  697. package/f-external-item/f-external-item-preview.d.ts +10 -0
  698. package/f-external-item/f-external-item.d.ts +23 -0
  699. package/f-external-item/f-external-item.service.d.ts +10 -3
  700. package/f-external-item/index.d.ts +3 -5
  701. package/f-external-item/is-external-item.d.ts +1 -1
  702. package/f-external-item/providers.d.ts +2 -2
  703. package/f-flow/f-flow-base.d.ts +2 -1
  704. package/f-flow/f-flow.component.d.ts +11 -7
  705. package/f-flow.module.d.ts +21 -20
  706. package/f-minimap/f-minimap-base.d.ts +10 -0
  707. package/f-minimap/f-minimap-canvas.directive.d.ts +3 -2
  708. package/f-minimap/f-minimap-flow.directive.d.ts +3 -3
  709. package/f-minimap/f-minimap-view.directive.d.ts +1 -1
  710. package/f-minimap/f-minimap.component.d.ts +10 -7
  711. package/f-minimap/index.d.ts +1 -1
  712. package/f-storage/f-components-store.d.ts +10 -6
  713. package/f-storage/features/emit-connections-changes/emit-connections-changes-request.d.ts +3 -0
  714. package/f-storage/features/emit-connections-changes/emit-connections-changes.d.ts +9 -0
  715. package/f-storage/features/emit-connections-changes/index.d.ts +2 -0
  716. package/f-storage/features/index.d.ts +3 -3
  717. package/f-storage/features/listen-connections-changes/index.d.ts +2 -0
  718. package/f-storage/features/listen-connections-changes/listen-connections-changes-request.d.ts +5 -0
  719. package/f-storage/features/listen-connections-changes/listen-connections-changes.d.ts +10 -0
  720. package/f-storage/features/listen-nodes-changes/index.d.ts +2 -0
  721. package/f-storage/features/listen-nodes-changes/listen-nodes-changes-request.d.ts +3 -0
  722. package/f-storage/features/listen-nodes-changes/listen-nodes-changes.d.ts +10 -0
  723. package/f-storage/features/listen-transform-changes/listen-transform-changes.d.ts +1 -1
  724. package/f-storage/providers.d.ts +3 -3
  725. package/f-virtual/f-virtual-for.d.ts +15 -0
  726. package/f-virtual/index.d.ts +2 -0
  727. package/f-virtual/providers.d.ts +2 -0
  728. package/f-zoom/f-zoom.directive.d.ts +1 -0
  729. package/fesm2022/foblex-flow.mjs +8506 -6560
  730. package/fesm2022/foblex-flow.mjs.map +1 -1
  731. package/package.json +8 -5
  732. package/public-api.d.ts +3 -0
  733. package/reactivity/after-next-paint.d.ts +2 -0
  734. package/reactivity/index.d.ts +1 -0
  735. package/utils/calculate-pointer-in-flow.d.ts +1 -3
  736. package/domain/drag-rect-cache.d.ts +0 -8
  737. package/domain/f-canvas/add-canvas-to-store/add-canvas-to-store.execution.d.ts +0 -12
  738. package/domain/f-canvas/center-group-or-node/center-group-or-node.execution.d.ts +0 -18
  739. package/domain/f-canvas/fit-to-flow/fit-to-flow.execution.d.ts +0 -17
  740. package/domain/f-canvas/get-canvas/get-canvas-request.d.ts +0 -3
  741. package/domain/f-canvas/get-canvas/get-canvas.execution.d.ts +0 -13
  742. package/domain/f-canvas/get-canvas/index.d.ts +0 -2
  743. package/domain/f-canvas/input-canvas-position/input-canvas-position.execution.d.ts +0 -12
  744. package/domain/f-canvas/input-canvas-scale/input-canvas-scale.execution.d.ts +0 -13
  745. package/domain/f-canvas/redraw-canvas-with-animation/redraw-canvas-with-animation.execution.d.ts +0 -17
  746. package/domain/f-canvas/remove-canvas-from-store/remove-canvas-from-store.execution.d.ts +0 -12
  747. package/domain/f-canvas/reset-scale/reset-scale.execution.d.ts +0 -13
  748. package/domain/f-canvas/reset-scale-and-center/reset-scale-and-center.execution.d.ts +0 -17
  749. package/domain/f-canvas/update-scale/update-scale.execution.d.ts +0 -14
  750. package/domain/f-connectors/find-connectable-connector-using-priority-and-position/find-connectable-connector-using-priority-and-position.execution.d.ts +0 -30
  751. package/domain/f-draggable/add-dnd-to-store/add-dnd-to-store.execution.d.ts +0 -12
  752. package/domain/f-draggable/initialize-drag-sequence/initialize-drag-sequence.execution.d.ts +0 -12
  753. package/domain/f-draggable/on-pointer-move/on-pointer-move.execution.d.ts +0 -19
  754. package/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence.execution.d.ts +0 -14
  755. package/domain/f-draggable/remove-dnd-from-store/remove-dnd-from-store.execution.d.ts +0 -12
  756. package/domain/f-flow/add-flow-to-store/add-flow-to-store.execution.d.ts +0 -12
  757. package/domain/f-flow/get-flow/get-flow.execution.d.ts +0 -13
  758. package/domain/f-flow/remove-flow-from-store/remove-flow-from-store.execution.d.ts +0 -12
  759. package/domain/f-selection/clear-selection/clear-selection.execution.d.ts +0 -12
  760. package/domain/f-selection/get-current-selection/get-current-selection.execution.d.ts +0 -16
  761. package/domain/f-selection/select/index.d.ts +0 -2
  762. package/domain/f-selection/select/select.execution.d.ts +0 -13
  763. package/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.execution.d.ts +0 -15
  764. package/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.request.d.ts +0 -5
  765. package/domain/get-element-rounded-rect/get-element-rounded-rect-request.d.ts +0 -5
  766. package/domain/get-element-rounded-rect/get-element-rounded-rect.execution.d.ts +0 -17
  767. package/domain/get-element-rounded-rect/index.d.ts +0 -2
  768. package/domain/get-normalized-connector-rect/get-normalized-connector-rect.execution.d.ts +0 -22
  769. package/domain/get-normalized-element-rect/get-normalized-element-rect.execution.d.ts +0 -22
  770. package/domain/get-normalized-point/get-normalized-point.execution.d.ts +0 -16
  771. package/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.execution.d.ts +0 -22
  772. package/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.request.d.ts +0 -5
  773. package/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.execution.d.ts +0 -24
  774. package/esm2022/domain/drag-rect-cache.mjs +0 -19
  775. package/esm2022/domain/f-canvas/add-canvas-to-store/add-canvas-to-store.execution.mjs +0 -25
  776. package/esm2022/domain/f-canvas/center-group-or-node/center-group-or-node.execution.mjs +0 -46
  777. package/esm2022/domain/f-canvas/fit-to-flow/fit-to-flow.execution.mjs +0 -58
  778. package/esm2022/domain/f-canvas/get-canvas/get-canvas-request.mjs +0 -4
  779. package/esm2022/domain/f-canvas/get-canvas/get-canvas.execution.mjs +0 -29
  780. package/esm2022/domain/f-canvas/get-canvas/index.mjs +0 -3
  781. package/esm2022/domain/f-canvas/input-canvas-position/input-canvas-position.execution.mjs +0 -35
  782. package/esm2022/domain/f-canvas/input-canvas-scale/input-canvas-scale.execution.mjs +0 -30
  783. package/esm2022/domain/f-canvas/redraw-canvas-with-animation/redraw-canvas-with-animation.execution.mjs +0 -40
  784. package/esm2022/domain/f-canvas/remove-canvas-from-store/remove-canvas-from-store.execution.mjs +0 -25
  785. package/esm2022/domain/f-canvas/reset-scale/reset-scale.execution.mjs +0 -30
  786. package/esm2022/domain/f-canvas/reset-scale-and-center/reset-scale-and-center.execution.mjs +0 -50
  787. package/esm2022/domain/f-canvas/update-scale/update-scale.execution.mjs +0 -36
  788. package/esm2022/domain/f-connectors/find-connectable-connector-using-priority-and-position/find-connectable-connector-using-priority-and-position.execution.mjs +0 -101
  789. package/esm2022/domain/f-connectors/find-connectable-connector-using-priority-and-position/find-connectable-connector-using-priority-and-position.request.mjs +0 -10
  790. package/esm2022/domain/f-draggable/add-dnd-to-store/add-dnd-to-store.execution.mjs +0 -25
  791. package/esm2022/domain/f-draggable/initialize-drag-sequence/initialize-drag-sequence.execution.mjs +0 -25
  792. package/esm2022/domain/f-draggable/on-pointer-move/on-pointer-move.execution.mjs +0 -46
  793. package/esm2022/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence.execution.mjs +0 -30
  794. package/esm2022/domain/f-draggable/remove-dnd-from-store/remove-dnd-from-store.execution.mjs +0 -25
  795. package/esm2022/domain/f-flow/add-flow-to-store/add-flow-to-store.execution.mjs +0 -25
  796. package/esm2022/domain/f-flow/get-flow/get-flow.execution.mjs +0 -29
  797. package/esm2022/domain/f-flow/remove-flow-from-store/remove-flow-from-store.execution.mjs +0 -25
  798. package/esm2022/domain/f-node/calculate-nodes-bounding-box/calculate-nodes-bounding-box.request.mjs +0 -4
  799. package/esm2022/domain/f-node/calculate-nodes-bounding-box-normalized-position/calculate-nodes-bounding-box-normalized-position.request.mjs +0 -8
  800. package/esm2022/domain/f-node/get-child-node-ids/get-child-node-ids.request.mjs +0 -8
  801. package/esm2022/domain/f-node/get-node-padding/get-node-padding.request.mjs +0 -10
  802. package/esm2022/domain/f-node/get-parent-nodes/get-parent-nodes.request.mjs +0 -8
  803. package/esm2022/domain/f-selection/clear-selection/clear-selection.execution.mjs +0 -27
  804. package/esm2022/domain/f-selection/clear-selection/clear-selection.request.mjs +0 -4
  805. package/esm2022/domain/f-selection/get-current-selection/get-current-selection.execution.mjs +0 -44
  806. package/esm2022/domain/f-selection/get-current-selection/get-current-selection.request.mjs +0 -4
  807. package/esm2022/domain/f-selection/select/index.mjs +0 -3
  808. package/esm2022/domain/f-selection/select/select.execution.mjs +0 -45
  809. package/esm2022/domain/f-selection/select/select.request.mjs +0 -12
  810. package/esm2022/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.execution.mjs +0 -36
  811. package/esm2022/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.request.mjs +0 -8
  812. package/esm2022/domain/get-element-rounded-rect/get-element-rounded-rect-request.mjs +0 -8
  813. package/esm2022/domain/get-element-rounded-rect/get-element-rounded-rect.execution.mjs +0 -36
  814. package/esm2022/domain/get-element-rounded-rect/index.mjs +0 -3
  815. package/esm2022/domain/get-normalized-connector-rect/get-normalized-connector-rect.execution.mjs +0 -54
  816. package/esm2022/domain/get-normalized-element-rect/get-normalized-element-rect.execution.mjs +0 -53
  817. package/esm2022/domain/get-normalized-point/get-normalized-point.execution.mjs +0 -56
  818. package/esm2022/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.execution.mjs +0 -61
  819. package/esm2022/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.request.mjs +0 -8
  820. package/esm2022/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.execution.mjs +0 -65
  821. package/esm2022/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.request.mjs +0 -4
  822. package/esm2022/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.execution.mjs +0 -67
  823. package/esm2022/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.request.mjs +0 -8
  824. package/esm2022/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.execution.mjs +0 -26
  825. package/esm2022/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.request.mjs +0 -10
  826. package/esm2022/f-draggable/f-node-resize/apply-child-resize-constraints/apply-child-resize-constraints-request.mjs +0 -10
  827. package/esm2022/f-draggable/f-node-resize/apply-child-resize-constraints/apply-child-resize-constraints.mjs +0 -57
  828. package/esm2022/f-draggable/f-node-resize/apply-child-resize-constraints/index.mjs +0 -3
  829. package/esm2022/f-draggable/f-node-resize/apply-parent-resize-constraints/apply-parent-resize-constraints-request.mjs +0 -10
  830. package/esm2022/f-draggable/f-node-resize/apply-parent-resize-constraints/apply-parent-resize-constraints.mjs +0 -147
  831. package/esm2022/f-draggable/f-node-resize/apply-parent-resize-constraints/index.mjs +0 -3
  832. package/esm2022/f-draggable/f-node-resize/calculate-changed-rect-from-difference/calculate-changed-rect-from-difference-request.mjs +0 -14
  833. package/esm2022/f-draggable/f-node-resize/calculate-changed-rect-from-difference/calculate-changed-rect-from-difference.mjs +0 -55
  834. package/esm2022/f-draggable/f-node-resize/calculate-changed-rect-from-difference/index.mjs +0 -3
  835. package/esm2022/f-draggable/f-node-resize/calculate-direct-children-union-rect/calculate-direct-children-union-rect-request.mjs +0 -10
  836. package/esm2022/f-draggable/f-node-resize/calculate-direct-children-union-rect/calculate-direct-children-union-rect.mjs +0 -38
  837. package/esm2022/f-draggable/f-node-resize/calculate-direct-children-union-rect/index.mjs +0 -3
  838. package/esm2022/f-draggable/f-node-resize/calculate-resize-limits/calculate-resize-limits-request.mjs +0 -10
  839. package/esm2022/f-draggable/f-node-resize/calculate-resize-limits/calculate-resize-limits.mjs +0 -69
  840. package/esm2022/f-draggable/f-node-resize/calculate-resize-limits/index.mjs +0 -3
  841. package/esm2022/f-draggable/f-node-resize/constraint/i-resize-constraint.mjs +0 -2
  842. package/esm2022/f-draggable/f-node-resize/constraint/i-resize-limit.mjs +0 -2
  843. package/esm2022/f-draggable/f-node-resize/constraint/i-resize-limits.mjs +0 -2
  844. package/esm2022/f-draggable/f-node-resize/constraint/i-resize-overflow.mjs +0 -2
  845. package/esm2022/f-draggable/f-node-resize/constraint/index.mjs +0 -5
  846. package/esm2022/f-draggable/f-node-resize/i-node-resize-event-data.mjs +0 -2
  847. package/esm2022/f-draggable/f-node-resize/index.mjs +0 -13
  848. package/esm2022/f-draggable/f-node-resize/node-resize.drag-handler.mjs +0 -66
  849. package/esm2022/f-draggable/f-node-resize/providers.mjs +0 -17
  850. package/esm2022/f-draggable/f-node-resize/resize-direction.mjs +0 -12
  851. package/esm2022/f-draggable/f-node-resize/resize-finalize/index.mjs +0 -3
  852. package/esm2022/f-draggable/f-node-resize/resize-finalize/node-resize-finalize-request.mjs +0 -8
  853. package/esm2022/f-draggable/f-node-resize/resize-finalize/node-resize-finalize.mjs +0 -29
  854. package/esm2022/f-draggable/f-node-resize/resize-preparation/index.mjs +0 -3
  855. package/esm2022/f-draggable/f-node-resize/resize-preparation/node-resize-preparation-request.mjs +0 -10
  856. package/esm2022/f-draggable/f-node-resize/resize-preparation/node-resize-preparation.mjs +0 -69
  857. package/esm2022/f-draggable/f-node-rotate/calculate-difference-after-rotation.mjs +0 -19
  858. package/esm2022/f-draggable/f-node-rotate/f-node-rotate.drag-handler.mjs +0 -75
  859. package/esm2022/f-draggable/f-node-rotate/i-node-rotate-event-data.mjs +0 -2
  860. package/esm2022/f-draggable/f-node-rotate/index.mjs +0 -6
  861. package/esm2022/f-draggable/f-node-rotate/providers.mjs +0 -7
  862. package/esm2022/f-draggable/f-node-rotate/rotate-finalize/f-node-rotate-finalize.execution.mjs +0 -32
  863. package/esm2022/f-draggable/f-node-rotate/rotate-finalize/f-node-rotate-finalize.request.mjs +0 -8
  864. package/esm2022/f-draggable/f-node-rotate/rotate-finalize/index.mjs +0 -3
  865. package/esm2022/f-draggable/f-node-rotate/rotate-preparation/f-node-rotate-preparation.execution.mjs +0 -94
  866. package/esm2022/f-draggable/f-node-rotate/rotate-preparation/f-node-rotate-preparation.request.mjs +0 -10
  867. package/esm2022/f-draggable/f-node-rotate/rotate-preparation/index.mjs +0 -3
  868. package/esm2022/f-draggable/i-f-drag-and-drop-plugin.mjs +0 -4
  869. package/esm2022/f-draggable/pinch-to-zoom/finalize/index.mjs +0 -3
  870. package/esm2022/f-draggable/pinch-to-zoom/finalize/pinch-to-zoom-finalize-request.mjs +0 -8
  871. package/esm2022/f-draggable/pinch-to-zoom/finalize/pinch-to-zoom-finalize.mjs +0 -31
  872. package/esm2022/f-draggable/pinch-to-zoom/preparation/index.mjs +0 -3
  873. package/esm2022/f-draggable/pinch-to-zoom/preparation/pinch-to-zoom-preparation-request.mjs +0 -8
  874. package/esm2022/f-draggable/pinch-to-zoom/preparation/pinch-to-zoom-preparation.mjs +0 -47
  875. package/esm2022/f-external-item/domain/constraint/external-rect-constraint.mjs +0 -44
  876. package/esm2022/f-external-item/domain/constraint/index.mjs +0 -2
  877. package/esm2022/f-external-item/domain/create-placeholder/f-external-item-create-placeholder.execution.mjs +0 -41
  878. package/esm2022/f-external-item/domain/create-placeholder/f-external-item-create-placeholder.request.mjs +0 -8
  879. package/esm2022/f-external-item/domain/create-placeholder/index.mjs +0 -3
  880. package/esm2022/f-external-item/domain/create-preview/f-external-item-create-preview.execution.mjs +0 -52
  881. package/esm2022/f-external-item/domain/create-preview/f-external-item-create-preview.request.mjs +0 -8
  882. package/esm2022/f-external-item/domain/create-preview/index.mjs +0 -3
  883. package/esm2022/f-external-item/domain/f-create-node.event.mjs +0 -13
  884. package/esm2022/f-external-item/domain/f-external-item.drag-handler.mjs +0 -104
  885. package/esm2022/f-external-item/domain/finalize/f-external-item-finalize.execution.mjs +0 -75
  886. package/esm2022/f-external-item/domain/finalize/f-external-item-finalize.request.mjs +0 -8
  887. package/esm2022/f-external-item/domain/finalize/index.mjs +0 -3
  888. package/esm2022/f-external-item/domain/i-f-external-item-drag-result.mjs +0 -2
  889. package/esm2022/f-external-item/domain/index.mjs +0 -11
  890. package/esm2022/f-external-item/domain/preparation/f-external-item-preparation.execution.mjs +0 -56
  891. package/esm2022/f-external-item/domain/preparation/f-external-item-preparation.request.mjs +0 -10
  892. package/esm2022/f-external-item/domain/preparation/index.mjs +0 -3
  893. package/esm2022/f-external-item/domain/prevent-default-is-external-item/index.mjs +0 -3
  894. package/esm2022/f-external-item/domain/prevent-default-is-external-item/prevent-default-is-external-item.execution.mjs +0 -37
  895. package/esm2022/f-external-item/domain/prevent-default-is-external-item/prevent-default-is-external-item.request.mjs +0 -8
  896. package/esm2022/f-external-item/domain/providers.mjs +0 -13
  897. package/esm2022/f-external-item/f-external-item-placeholder.directive.mjs +0 -26
  898. package/esm2022/f-external-item/f-external-item-preview.directive.mjs +0 -26
  899. package/esm2022/f-external-item/f-external-item-token.mjs +0 -3
  900. package/esm2022/f-external-item/f-external-item.directive.mjs +0 -59
  901. package/esm2022/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.execution.mjs +0 -39
  902. package/esm2022/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.request.mjs +0 -14
  903. package/esm2022/f-minimap/domain/calculate-flow-point-from-minimap-point/index.mjs +0 -3
  904. package/esm2022/f-minimap/domain/f-minimap-data.mjs +0 -12
  905. package/esm2022/f-minimap/domain/f-minimap.drag-handler.mjs +0 -45
  906. package/esm2022/f-minimap/domain/index.mjs +0 -10
  907. package/esm2022/f-minimap/domain/minimap-calculate-svg-scale-and-view-box/i-f-minimap-scale-and-view-box.mjs +0 -2
  908. package/esm2022/f-minimap/domain/minimap-calculate-svg-scale-and-view-box/index.mjs +0 -4
  909. package/esm2022/f-minimap/domain/minimap-calculate-svg-scale-and-view-box/minimap-calculate-svg-scale-and-view-box.execution.mjs +0 -73
  910. package/esm2022/f-minimap/domain/minimap-calculate-svg-scale-and-view-box/minimap-calculate-svg-scale-and-view-box.request.mjs +0 -10
  911. package/esm2022/f-minimap/domain/minimap-calculate-view-box/index.mjs +0 -3
  912. package/esm2022/f-minimap/domain/minimap-calculate-view-box/minimap-calculate-view-box.execution.mjs +0 -42
  913. package/esm2022/f-minimap/domain/minimap-calculate-view-box/minimap-calculate-view-box.request.mjs +0 -4
  914. package/esm2022/f-minimap/domain/minimap-drag-finalize/index.mjs +0 -4
  915. package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.mjs +0 -32
  916. package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.request.mjs +0 -8
  917. package/esm2022/f-minimap/domain/minimap-drag-finalize/providers.mjs +0 -5
  918. package/esm2022/f-minimap/domain/minimap-drag-preparation/index.mjs +0 -4
  919. package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.mjs +0 -54
  920. package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.request.mjs +0 -10
  921. package/esm2022/f-minimap/domain/minimap-drag-preparation/providers.mjs +0 -5
  922. package/esm2022/f-minimap/domain/minimap-draw-nodes/index.mjs +0 -3
  923. package/esm2022/f-minimap/domain/minimap-draw-nodes/minimap-draw-nodes.execution.mjs +0 -70
  924. package/esm2022/f-minimap/domain/minimap-draw-nodes/minimap-draw-nodes.request.mjs +0 -4
  925. package/esm2022/f-minimap/domain/providers.mjs +0 -15
  926. package/esm2022/f-storage/features/listen-count-changes/index.mjs +0 -3
  927. package/esm2022/f-storage/features/listen-count-changes/listen-count-changes-request.mjs +0 -4
  928. package/esm2022/f-storage/features/listen-count-changes/listen-count-changes.mjs +0 -23
  929. package/esm2022/f-storage/features/listen-data-changed/index.mjs +0 -3
  930. package/esm2022/f-storage/features/listen-data-changed/listen-data-changes-request.mjs +0 -8
  931. package/esm2022/f-storage/features/listen-data-changed/listen-data-changes.mjs +0 -25
  932. package/esm2022/f-storage/features/notify-data-changed/index.mjs +0 -3
  933. package/esm2022/f-storage/features/notify-data-changed/notify-data-changed-request.mjs +0 -4
  934. package/esm2022/f-storage/features/notify-data-changed/notify-data-changed.mjs +0 -22
  935. package/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.execution.d.ts +0 -15
  936. package/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.execution.d.ts +0 -10
  937. package/f-draggable/f-node-resize/apply-parent-resize-constraints/apply-parent-resize-constraints-request.d.ts +0 -8
  938. package/f-draggable/f-node-resize/apply-parent-resize-constraints/apply-parent-resize-constraints.d.ts +0 -36
  939. package/f-draggable/f-node-resize/calculate-changed-rect-from-difference/calculate-changed-rect-from-difference.d.ts +0 -11
  940. package/f-draggable/f-node-resize/calculate-resize-limits/calculate-resize-limits-request.d.ts +0 -8
  941. package/f-draggable/f-node-resize/constraint/i-resize-constraint.d.ts +0 -7
  942. package/f-draggable/f-node-resize/constraint/i-resize-limit.d.ts +0 -7
  943. package/f-draggable/f-node-resize/constraint/i-resize-limits.d.ts +0 -5
  944. package/f-draggable/f-node-resize/constraint/index.d.ts +0 -4
  945. package/f-draggable/f-node-resize/i-node-resize-event-data.d.ts +0 -3
  946. package/f-draggable/f-node-resize/index.d.ts +0 -12
  947. package/f-draggable/f-node-resize/node-resize.drag-handler.d.ts +0 -29
  948. package/f-draggable/f-node-resize/providers.d.ts +0 -8
  949. package/f-draggable/f-node-resize/resize-finalize/index.d.ts +0 -2
  950. package/f-draggable/f-node-resize/resize-finalize/node-resize-finalize-request.d.ts +0 -6
  951. package/f-draggable/f-node-resize/resize-finalize/node-resize-finalize.d.ts +0 -10
  952. package/f-draggable/f-node-resize/resize-preparation/index.d.ts +0 -2
  953. package/f-draggable/f-node-resize/resize-preparation/node-resize-preparation-request.d.ts +0 -8
  954. package/f-draggable/f-node-resize/resize-preparation/node-resize-preparation.d.ts +0 -21
  955. package/f-draggable/f-node-rotate/f-node-rotate.drag-handler.d.ts +0 -39
  956. package/f-draggable/f-node-rotate/i-node-rotate-event-data.d.ts +0 -3
  957. package/f-draggable/f-node-rotate/index.d.ts +0 -5
  958. package/f-draggable/f-node-rotate/providers.d.ts +0 -3
  959. package/f-draggable/f-node-rotate/rotate-finalize/f-node-rotate-finalize.execution.d.ts +0 -10
  960. package/f-draggable/f-node-rotate/rotate-finalize/f-node-rotate-finalize.request.d.ts +0 -6
  961. package/f-draggable/f-node-rotate/rotate-finalize/index.d.ts +0 -2
  962. package/f-draggable/f-node-rotate/rotate-preparation/f-node-rotate-preparation.execution.d.ts +0 -23
  963. package/f-draggable/f-node-rotate/rotate-preparation/f-node-rotate-preparation.request.d.ts +0 -8
  964. package/f-draggable/f-node-rotate/rotate-preparation/index.d.ts +0 -2
  965. package/f-draggable/i-f-drag-and-drop-plugin.d.ts +0 -10
  966. package/f-external-item/domain/create-placeholder/f-external-item-create-placeholder.execution.d.ts +0 -13
  967. package/f-external-item/domain/create-placeholder/f-external-item-create-placeholder.request.d.ts +0 -6
  968. package/f-external-item/domain/create-placeholder/index.d.ts +0 -2
  969. package/f-external-item/domain/create-preview/f-external-item-create-preview.execution.d.ts +0 -14
  970. package/f-external-item/domain/create-preview/f-external-item-create-preview.request.d.ts +0 -6
  971. package/f-external-item/domain/create-preview/index.d.ts +0 -2
  972. package/f-external-item/domain/f-create-node.event.d.ts +0 -8
  973. package/f-external-item/domain/f-external-item.drag-handler.d.ts +0 -35
  974. package/f-external-item/domain/finalize/f-external-item-finalize.execution.d.ts +0 -22
  975. package/f-external-item/domain/finalize/f-external-item-finalize.request.d.ts +0 -6
  976. package/f-external-item/domain/finalize/index.d.ts +0 -2
  977. package/f-external-item/domain/i-f-external-item-drag-result.d.ts +0 -5
  978. package/f-external-item/domain/index.d.ts +0 -10
  979. package/f-external-item/domain/preparation/f-external-item-preparation.execution.d.ts +0 -18
  980. package/f-external-item/domain/preparation/f-external-item-preparation.request.d.ts +0 -8
  981. package/f-external-item/domain/preparation/index.d.ts +0 -2
  982. package/f-external-item/domain/prevent-default-is-external-item/index.d.ts +0 -2
  983. package/f-external-item/domain/prevent-default-is-external-item/prevent-default-is-external-item.execution.d.ts +0 -10
  984. package/f-external-item/domain/prevent-default-is-external-item/prevent-default-is-external-item.request.d.ts +0 -5
  985. package/f-external-item/domain/providers.d.ts +0 -6
  986. package/f-external-item/f-external-item-placeholder.directive.d.ts +0 -10
  987. package/f-external-item/f-external-item-preview.directive.d.ts +0 -10
  988. package/f-external-item/f-external-item-token.d.ts +0 -3
  989. package/f-external-item/f-external-item.directive.d.ts +0 -20
  990. package/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.execution.d.ts +0 -16
  991. package/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.request.d.ts +0 -10
  992. package/f-minimap/domain/calculate-flow-point-from-minimap-point/index.d.ts +0 -2
  993. package/f-minimap/domain/f-minimap-data.d.ts +0 -7
  994. package/f-minimap/domain/f-minimap.drag-handler.d.ts +0 -22
  995. package/f-minimap/domain/index.d.ts +0 -9
  996. package/f-minimap/domain/minimap-calculate-svg-scale-and-view-box/i-f-minimap-scale-and-view-box.d.ts +0 -5
  997. package/f-minimap/domain/minimap-calculate-svg-scale-and-view-box/index.d.ts +0 -3
  998. package/f-minimap/domain/minimap-calculate-svg-scale-and-view-box/minimap-calculate-svg-scale-and-view-box.execution.d.ts +0 -22
  999. package/f-minimap/domain/minimap-calculate-svg-scale-and-view-box/minimap-calculate-svg-scale-and-view-box.request.d.ts +0 -6
  1000. package/f-minimap/domain/minimap-calculate-view-box/index.d.ts +0 -2
  1001. package/f-minimap/domain/minimap-calculate-view-box/minimap-calculate-view-box.execution.d.ts +0 -14
  1002. package/f-minimap/domain/minimap-calculate-view-box/minimap-calculate-view-box.request.d.ts +0 -3
  1003. package/f-minimap/domain/minimap-drag-finalize/index.d.ts +0 -3
  1004. package/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.d.ts +0 -10
  1005. package/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.request.d.ts +0 -6
  1006. package/f-minimap/domain/minimap-drag-finalize/providers.d.ts +0 -2
  1007. package/f-minimap/domain/minimap-drag-preparation/index.d.ts +0 -3
  1008. package/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.d.ts +0 -15
  1009. package/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.request.d.ts +0 -8
  1010. package/f-minimap/domain/minimap-drag-preparation/providers.d.ts +0 -2
  1011. package/f-minimap/domain/minimap-draw-nodes/index.d.ts +0 -2
  1012. package/f-minimap/domain/minimap-draw-nodes/minimap-draw-nodes.execution.d.ts +0 -19
  1013. package/f-minimap/domain/providers.d.ts +0 -5
  1014. package/f-storage/features/listen-count-changes/index.d.ts +0 -2
  1015. package/f-storage/features/listen-count-changes/listen-count-changes-request.d.ts +0 -3
  1016. package/f-storage/features/listen-count-changes/listen-count-changes.d.ts +0 -10
  1017. package/f-storage/features/listen-data-changed/index.d.ts +0 -2
  1018. package/f-storage/features/listen-data-changed/listen-data-changes-request.d.ts +0 -5
  1019. package/f-storage/features/listen-data-changed/listen-data-changes.d.ts +0 -10
  1020. package/f-storage/features/notify-data-changed/index.d.ts +0 -2
  1021. package/f-storage/features/notify-data-changed/notify-data-changed-request.d.ts +0 -3
  1022. package/f-storage/features/notify-data-changed/notify-data-changed.d.ts +0 -9
  1023. /package/domain/f-connectors/find-connectable-connector-using-priority-and-position/{find-connectable-connector-using-priority-and-position.request.d.ts → find-connectable-connector-using-priority-and-position-request.d.ts} +0 -0
  1024. /package/domain/f-node/calculate-nodes-bounding-box/{calculate-nodes-bounding-box.request.d.ts → calculate-nodes-bounding-box-request.d.ts} +0 -0
  1025. /package/domain/f-node/calculate-nodes-bounding-box-normalized-position/{calculate-nodes-bounding-box-normalized-position.request.d.ts → calculate-nodes-bounding-box-normalized-position-request.d.ts} +0 -0
  1026. /package/domain/f-node/get-child-node-ids/{get-child-node-ids.request.d.ts → get-child-node-ids-request.d.ts} +0 -0
  1027. /package/domain/f-node/get-node-padding/{get-node-padding.request.d.ts → get-node-padding-request.d.ts} +0 -0
  1028. /package/domain/f-node/get-parent-nodes/{get-parent-nodes.request.d.ts → get-parent-nodes-request.d.ts} +0 -0
  1029. /package/domain/f-selection/clear-selection/{clear-selection.request.d.ts → clear-selection-request.d.ts} +0 -0
  1030. /package/domain/f-selection/get-current-selection/{get-current-selection.request.d.ts → get-current-selection-request.d.ts} +0 -0
  1031. /package/domain/f-selection/{select/select.request.d.ts → select-items/select-request.d.ts} +0 -0
  1032. /package/{f-minimap/domain/minimap-draw-nodes/minimap-draw-nodes.request.d.ts → domain/minimap/minimap-draw-nodes/minimap-draw-nodes-request.d.ts} +0 -0
  1033. /package/domain/sort-item-layers/sort-node-layers-by-groups/{sort-node-layers.request.d.ts → sort-node-layers-request.d.ts} +0 -0
  1034. /package/f-draggable/domain/get-normalized-parent-node-rect/{get-normalized-parent-node-rect.request.d.ts → get-normalized-parent-node-rect-request.d.ts} +0 -0
  1035. /package/f-draggable/domain/is-array-has-parent-node/{is-array-has-parent-node.request.d.ts → is-array-has-parent-node-request.d.ts} +0 -0
  1036. /package/{f-external-item/domain/constraint → f-draggable/drag-external-item/constraints}/external-rect-constraint.d.ts +0 -0
  1037. /package/{f-external-item/domain/constraint → f-draggable/drag-external-item/constraints}/index.d.ts +0 -0
  1038. /package/f-draggable/pinch-to-zoom/{finalize → pinch-to-zoom-finalize}/index.d.ts +0 -0
  1039. /package/f-draggable/pinch-to-zoom/{finalize → pinch-to-zoom-finalize}/pinch-to-zoom-finalize-request.d.ts +0 -0
  1040. /package/f-draggable/pinch-to-zoom/{finalize → pinch-to-zoom-finalize}/pinch-to-zoom-finalize.d.ts +0 -0
  1041. /package/f-draggable/pinch-to-zoom/{preparation → pinch-to-zoom-preparation}/index.d.ts +0 -0
  1042. /package/f-draggable/pinch-to-zoom/{preparation → pinch-to-zoom-preparation}/pinch-to-zoom-preparation-request.d.ts +0 -0
  1043. /package/f-draggable/pinch-to-zoom/{preparation → pinch-to-zoom-preparation}/pinch-to-zoom-preparation.d.ts +0 -0
  1044. /package/f-draggable/{f-node-resize → resize-node}/apply-child-resize-constraints/apply-child-resize-constraints-request.d.ts +0 -0
  1045. /package/f-draggable/{f-node-resize → resize-node}/apply-child-resize-constraints/apply-child-resize-constraints.d.ts +0 -0
  1046. /package/f-draggable/{f-node-resize → resize-node}/apply-child-resize-constraints/index.d.ts +0 -0
  1047. /package/f-draggable/{f-node-resize → resize-node}/apply-parent-resize-constraints/index.d.ts +0 -0
  1048. /package/f-draggable/{f-node-resize → resize-node}/calculate-changed-rect-from-difference/calculate-changed-rect-from-difference-request.d.ts +0 -0
  1049. /package/f-draggable/{f-node-resize → resize-node}/calculate-changed-rect-from-difference/index.d.ts +0 -0
  1050. /package/f-draggable/{f-node-resize → resize-node}/calculate-direct-children-union-rect/calculate-direct-children-union-rect-request.d.ts +0 -0
  1051. /package/f-draggable/{f-node-resize → resize-node}/calculate-direct-children-union-rect/calculate-direct-children-union-rect.d.ts +0 -0
  1052. /package/f-draggable/{f-node-resize → resize-node}/calculate-direct-children-union-rect/index.d.ts +0 -0
  1053. /package/f-draggable/{f-node-resize → resize-node}/calculate-resize-limits/calculate-resize-limits.d.ts +0 -0
  1054. /package/f-draggable/{f-node-resize → resize-node}/calculate-resize-limits/index.d.ts +0 -0
  1055. /package/f-draggable/{f-node-resize → resize-node}/constraint/i-resize-overflow.d.ts +0 -0
  1056. /package/f-draggable/{f-node-resize → resize-node/constraint}/resize-direction.d.ts +0 -0
  1057. /package/f-draggable/{f-node-rotate → rotate-node}/calculate-difference-after-rotation.d.ts +0 -0
@@ -4,10 +4,12 @@ import { RedrawConnectionsRequest } from './redraw-connections-request';
4
4
  import { FComponentsStore } from '../../../f-storage';
5
5
  import { FExecutionRegister, FMediator } from '@foblex/mediator';
6
6
  import { CreateConnectionMarkersRequest } from '../create-connection-markers';
7
- import { GetNormalizedConnectorRectRequest } from '../../get-normalized-connector-rect';
8
- import { DragRectCache } from '../../drag-rect-cache';
9
7
  import { ConnectionBehaviourBuilder, ConnectionBehaviourBuilderRequest, } from '../../../f-connection-v2';
8
+ import { BrowserService } from '@foblex/platform';
9
+ import { CalculateConnectionsUsingConnectionWorkerRequest, ResolveConnectionWorkerConnectorsRequest, ResolveConnectionWorkerContextRequest, ShouldUseConnectionWorkerRequest, } from '../../../f-connection-worker';
10
10
  import * as i0 from "@angular/core";
11
+ const CONNECTIONS_PER_SLICE_LIMIT = 500;
12
+ const SLICE_BUDGET_MS = 6;
11
13
  /**
12
14
  * Execution that redraws connections in the FComponentsStore.
13
15
  * It resets connectors, sets markers for temporary and snap connections,
@@ -17,8 +19,13 @@ let RedrawConnections = class RedrawConnections {
17
19
  _mediator = inject(FMediator);
18
20
  _store = inject(FComponentsStore);
19
21
  _connectionBehaviour = inject(ConnectionBehaviourBuilder);
22
+ _browser = inject(BrowserService);
23
+ _renderTicket = 0;
24
+ _connectedInPreviousRender = new Set();
20
25
  handle(_request) {
21
- this._resetConnectors();
26
+ const renderTicket = ++this._renderTicket;
27
+ const nodesRevision = this._store.nodesRevision;
28
+ this._resetConnectedConnectors();
22
29
  const instanceForCreate = this._store.connections.getForCreate();
23
30
  if (instanceForCreate) {
24
31
  this._createMarkers(instanceForCreate);
@@ -27,32 +34,181 @@ let RedrawConnections = class RedrawConnections {
27
34
  if (instanceForSnap) {
28
35
  this._createMarkers(instanceForSnap);
29
36
  }
30
- this._store.connections.getAll().forEach((connection) => {
31
- this._setupConnection(this._store.outputs.require(connection.fOutputId()), this._store.inputs.require(connection.fInputId()), connection);
32
- });
33
- DragRectCache.invalidateAll();
37
+ const connections = [...this._store.connections.getAll()];
38
+ const connectorRectCache = new Map();
39
+ if (this._shouldUseWorker(connections.length)) {
40
+ this._setupConnectionsUsingWorker(connections, connectorRectCache, renderTicket, nodesRevision);
41
+ return;
42
+ }
43
+ this._setupConnectionsChunked(connections, connectorRectCache, 0, renderTicket, nodesRevision);
34
44
  }
35
- _resetConnectors() {
36
- this._store.outputs.getAll().forEach((x) => x.resetConnected());
37
- this._store.inputs.getAll().forEach((x) => x.resetConnected());
45
+ _resetConnectedConnectors() {
46
+ if (!this._connectedInPreviousRender.size) {
47
+ return;
48
+ }
49
+ for (const connector of this._connectedInPreviousRender) {
50
+ connector.resetConnected();
51
+ }
52
+ this._connectedInPreviousRender.clear();
38
53
  }
39
- _setupConnection(source, target, connection) {
54
+ _setupConnection(connection, cache) {
55
+ const context = this._resolveConnectionContext(connection, cache);
56
+ if (!context) {
57
+ return;
58
+ }
59
+ const line = this._calculateConnectionLine(connection, context);
60
+ this._setupConnectionWithLine(connection, context.source, context.target, line);
61
+ }
62
+ _setupConnectionWithLine(connection, source, target, line) {
40
63
  source.setConnected(target);
41
64
  target.setConnected(source);
65
+ this._connectedInPreviousRender.add(source);
66
+ this._connectedInPreviousRender.add(target);
42
67
  this._createMarkers(connection);
43
- connection.setLine(this._calculateConnectionLine(source, target, connection));
68
+ connection.setLine(line);
44
69
  connection.initialize();
45
70
  connection.isSelected() ? connection.markAsSelected() : null;
46
71
  }
47
- _calculateConnectionLine(source, target, connection) {
48
- return this._connectionBehaviour.handle(new ConnectionBehaviourBuilderRequest(this._calculateConnectorRect(source), this._calculateConnectorRect(target), connection, source.fConnectableSide, target.fConnectableSide));
72
+ _calculateConnectionLine(connection, context) {
73
+ return this._connectionBehaviour.handle(new ConnectionBehaviourBuilderRequest(context.sourceRect, context.targetRect, connection, context.source.fConnectableSide, context.target.fConnectableSide));
74
+ }
75
+ _resolveConnectionConnectors(connection) {
76
+ return this._mediator.execute(new ResolveConnectionWorkerConnectorsRequest(connection));
49
77
  }
50
- _calculateConnectorRect(connector) {
51
- return this._mediator.execute(new GetNormalizedConnectorRectRequest(connector.hostElement));
78
+ _resolveConnectionContext(connection, cache) {
79
+ return this._mediator.execute(new ResolveConnectionWorkerContextRequest(connection, cache));
52
80
  }
53
81
  _createMarkers(connection) {
54
82
  this._mediator.execute(new CreateConnectionMarkersRequest(connection));
55
83
  }
84
+ _setupConnectionsUsingWorker(connections, connectorRectCache, renderTicket, nodesRevision) {
85
+ this._mediator
86
+ .execute(new CalculateConnectionsUsingConnectionWorkerRequest(connections, connectorRectCache))
87
+ .then((results) => {
88
+ if (!this._isCurrentRenderContext(renderTicket, nodesRevision)) {
89
+ return;
90
+ }
91
+ if (!results) {
92
+ this._setupConnectionsChunked(connections, connectorRectCache, 0, renderTicket, nodesRevision);
93
+ return;
94
+ }
95
+ const workerResults = this._alignWorkerResultsToConnectionIndexes(results, connections.length);
96
+ this._applyWorkerResultsChunked(connections, workerResults, connectorRectCache, 0, renderTicket, nodesRevision);
97
+ })
98
+ .catch(() => {
99
+ if (!this._isCurrentRenderContext(renderTicket, nodesRevision)) {
100
+ return;
101
+ }
102
+ this._setupConnectionsChunked(connections, connectorRectCache, 0, renderTicket, nodesRevision);
103
+ });
104
+ }
105
+ _applyWorkerResultsChunked(connections, workerResults, connectorRectCache, startIndex, renderTicket, nodesRevision) {
106
+ if (!this._isCurrentRenderContext(renderTicket, nodesRevision)) {
107
+ return;
108
+ }
109
+ const sliceStart = this._now();
110
+ let endIndex = startIndex;
111
+ let processed = 0;
112
+ while (endIndex < connections.length &&
113
+ processed < CONNECTIONS_PER_SLICE_LIMIT &&
114
+ this._isWithinSliceBudget(sliceStart)) {
115
+ const connection = connections[endIndex];
116
+ const result = workerResults[endIndex];
117
+ if (this._isWorkerResultSupported(result)) {
118
+ const connectors = this._resolveConnectionConnectors(connection);
119
+ if (!connectors) {
120
+ endIndex++;
121
+ processed++;
122
+ if (!this._isCurrentRenderContext(renderTicket, nodesRevision)) {
123
+ return;
124
+ }
125
+ continue;
126
+ }
127
+ try {
128
+ connection._applyResolvedSidesToConnection(result.sourceSide, result.targetSide);
129
+ this._setupConnectionWithLine(connection, connectors.source, connectors.target, result.line);
130
+ }
131
+ catch {
132
+ this._setupConnection(connection, connectorRectCache);
133
+ }
134
+ }
135
+ else {
136
+ this._setupConnection(connection, connectorRectCache);
137
+ }
138
+ endIndex++;
139
+ processed++;
140
+ if (!this._isCurrentRenderContext(renderTicket, nodesRevision)) {
141
+ return;
142
+ }
143
+ }
144
+ if (endIndex >= connections.length) {
145
+ return;
146
+ }
147
+ this._requestAnimationFrame(() => this._applyWorkerResultsChunked(connections, workerResults, connectorRectCache, endIndex, renderTicket, nodesRevision));
148
+ }
149
+ _alignWorkerResultsToConnectionIndexes(results, connectionCount) {
150
+ const aligned = new Array(connectionCount);
151
+ for (const result of results) {
152
+ const index = result.originalIndex;
153
+ if (typeof index !== 'number') {
154
+ continue;
155
+ }
156
+ if (index < 0 || index >= connectionCount) {
157
+ continue;
158
+ }
159
+ aligned[index] = result;
160
+ }
161
+ return aligned;
162
+ }
163
+ _isWorkerResultSupported(result) {
164
+ return !!(result?.supported && result.sourceSide && result.targetSide && result.line);
165
+ }
166
+ _setupConnectionsChunked(connections, connectorRectCache, startIndex, renderTicket, nodesRevision) {
167
+ if (!this._isCurrentRenderContext(renderTicket, nodesRevision)) {
168
+ return;
169
+ }
170
+ const sliceStart = this._now();
171
+ let endIndex = startIndex;
172
+ let processed = 0;
173
+ while (endIndex < connections.length &&
174
+ processed < CONNECTIONS_PER_SLICE_LIMIT &&
175
+ this._isWithinSliceBudget(sliceStart)) {
176
+ this._setupConnection(connections[endIndex], connectorRectCache);
177
+ endIndex++;
178
+ processed++;
179
+ if (!this._isCurrentRenderContext(renderTicket, nodesRevision)) {
180
+ return;
181
+ }
182
+ }
183
+ if (endIndex >= connections.length) {
184
+ return;
185
+ }
186
+ this._requestAnimationFrame(() => this._setupConnectionsChunked(connections, connectorRectCache, endIndex, renderTicket, nodesRevision));
187
+ }
188
+ _shouldUseWorker(connectionCount) {
189
+ return this._mediator.execute(new ShouldUseConnectionWorkerRequest(connectionCount));
190
+ }
191
+ _isCurrentRenderContext(renderTicket, nodesRevision) {
192
+ return renderTicket === this._renderTicket && nodesRevision === this._store.nodesRevision;
193
+ }
194
+ _requestAnimationFrame(callback) {
195
+ const windowRef = this._browser.document.defaultView;
196
+ if (!windowRef) {
197
+ callback();
198
+ return;
199
+ }
200
+ windowRef.requestAnimationFrame(callback);
201
+ }
202
+ _now() {
203
+ const performanceRef = this._browser.document.defaultView?.performance;
204
+ return performanceRef ? performanceRef.now() : Date.now();
205
+ }
206
+ _isWithinSliceBudget(sliceStart) {
207
+ if (!this._browser.isBrowser()) {
208
+ return true;
209
+ }
210
+ return this._now() - sliceStart < SLICE_BUDGET_MS;
211
+ }
56
212
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RedrawConnections, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
57
213
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RedrawConnections });
58
214
  };
@@ -63,4 +219,4 @@ export { RedrawConnections };
63
219
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RedrawConnections, decorators: [{
64
220
  type: Injectable
65
221
  }] });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkcmF3LWNvbm5lY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1jb25uZWN0aW9uL3JlZHJhdy1jb25uZWN0aW9ucy9yZWRyYXctY29ubmVjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXRELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxTQUFTLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM5RSxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN4RixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUNMLDBCQUEwQixFQUMxQixpQ0FBaUMsR0FFbEMsTUFBTSwwQkFBMEIsQ0FBQzs7QUFFbEM7Ozs7R0FJRztBQUdJLElBQU0saUJBQWlCLEdBQXZCLE1BQU0saUJBQWlCO0lBQ1gsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM5QixNQUFNLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDbEMsb0JBQW9CLEdBQUcsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUM7SUFFcEUsTUFBTSxDQUFDLFFBQWtDO1FBQzlDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBRXhCLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDakUsSUFBSSxpQkFB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dGVudCI6WyJpbXBvcnQgeyBJTGluZSwgSVJvdW5kZWRSZWN0IH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJlZHJhd0Nvbm5lY3Rpb25zUmVxdWVzdCB9IGZyb20gJy4vcmVkcmF3LWNvbm5lY3Rpb25zLXJlcXVlc3QnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGQ29ubmVjdG9yQmFzZSB9IGZyb20gJy4uLy4uLy4uL2YtY29ubmVjdG9ycyc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgQ3JlYXRlQ29ubmVjdGlvbk1hcmtlcnNSZXF1ZXN0IH0gZnJvbSAnLi4vY3JlYXRlLWNvbm5lY3Rpb24tbWFya2Vycyc7XG5pbXBvcnQgeyBHZXROb3JtYWxpemVkQ29ubmVjdG9yUmVjdFJlcXVlc3QgfSBmcm9tICcuLi8uLi9nZXQtbm9ybWFsaXplZC1jb25uZWN0b3ItcmVjdCc7XG5pbXBvcnQgeyBEcmFnUmVjdENhY2hlIH0gZnJvbSAnLi4vLi4vZHJhZy1yZWN0LWNhY2hlJztcbmltcG9ydCB7XG4gIENvbm5lY3Rpb25CZWhhdmlvdXJCdWlsZGVyLFxuICBDb25uZWN0aW9uQmVoYXZpb3VyQnVpbGRlclJlcXVlc3QsXG4gIEZDb25uZWN0aW9uQmFzZSxcbn0gZnJvbSAnLi4vLi4vLi4vZi1jb25uZWN0aW9uLXYyJztcblxuLyoqXG4gKiBFeGVjdXRpb24gdGhhdCByZWRyYXdzIGNvbm5lY3Rpb25zIGluIHRoZSBGQ29tcG9uZW50c1N0b3JlLlxuICogSXQgcmVzZXRzIGNvbm5lY3RvcnMsIHNldHMgbWFya2VycyBmb3IgdGVtcG9yYXJ5IGFuZCBzbmFwIGNvbm5lY3Rpb25zLFxuICogYW5kIHNldHMgdXAgY29ubmVjdGlvbnMgYmFzZWQgb24gdGhlIHN0b3JlZCBvdXRwdXRzIGFuZCBpbnB1dHMuXG4gKi9cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoUmVkcmF3Q29ubmVjdGlvbnNSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIFJlZHJhd0Nvbm5lY3Rpb25zIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxSZWRyYXdDb25uZWN0aW9uc1JlcXVlc3QsIHZvaWQ+IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfbWVkaWF0b3IgPSBpbmplY3QoRk1lZGlhdG9yKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfc3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Nvbm5lY3Rpb25CZWhhdmlvdXIgPSBpbmplY3QoQ29ubmVjdGlvbkJlaGF2aW91ckJ1aWxkZXIpO1xuXG4gIHB1YmxpYyBoYW5kbGUoX3JlcXVlc3Q6IFJlZHJhd0Nvbm5lY3Rpb25zUmVxdWVzdCk6IHZvaWQge1xuICAgIHRoaXMuX3Jlc2V0Q29ubmVjdG9ycygpO1xuXG4gICAgY29uc3QgaW5zdGFuY2VGb3JDcmVhdGUgPSB0aGlzLl9zdG9yZS5jb25uZWN0aW9ucy5nZXRGb3JDcmVhdGUoKTtcbiAgICBpZiAoaW5zdGFuY2VGb3JDcmVhdGUpIHtcbiAgICAgIHRoaXMuX2NyZWF0ZU1hcmtlcnMoaW5zdGFuY2VGb3JDcmVhdGUpO1xuICAgIH1cblxuICAgIGNvbnN0IGluc3RhbmNlRm9yU25hcCA9IHRoaXMuX3N0b3JlLmNvbm5lY3Rpb25zLmdldEZvclNuYXAoKTtcbiAgICBpZiAoaW5zdGFuY2VGb3JTbmFwKSB7XG4gICAgICB0aGlzLl9jcmVhdGVNYXJrZXJzKGluc3RhbmNlRm9yU25hcCk7XG4gICAgfVxuXG4gICAgdGhpcy5fc3RvcmUuY29ubmVjdGlvbnMuZ2V0QWxsKCkuZm9yRWFjaCgoY29ubmVjdGlvbikgPT4ge1xuICAgICAgdGhpcy5fc2V0dXBDb25uZWN0aW9uKFxuICAgICAgICB0aGlzLl9zdG9yZS5vdXRwdXRzLnJlcXVpcmUoY29ubmVjdGlvbi5mT3V0cHV0SWQoKSksXG4gICAgICAgIHRoaXMuX3N0b3JlLmlucHV0cy5yZXF1aXJlKGNvbm5lY3Rpb24uZklucHV0SWQoKSksXG4gICAgICAgIGNvbm5lY3Rpb24sXG4gICAgICApO1xuICAgIH0pO1xuICAgIERyYWdSZWN0Q2FjaGUuaW52YWxpZGF0ZUFsbCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVzZXRDb25uZWN0b3JzKCk6IHZvaWQge1xuICAgIHRoaXMuX3N0b3JlLm91dHB1dHMuZ2V0QWxsKCkuZm9yRWFjaCgoeCkgPT4geC5yZXNldENvbm5lY3RlZCgpKTtcbiAgICB0aGlzLl9zdG9yZS5pbnB1dHMuZ2V0QWxsKCkuZm9yRWFjaCgoeCkgPT4geC5yZXNldENvbm5lY3RlZCgpKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NldHVwQ29ubmVjdGlvbihcbiAgICBzb3VyY2U6IEZDb25uZWN0b3JCYXNlLFxuICAgIHRhcmdldDogRkNvbm5lY3RvckJhc2UsXG4gICAgY29ubmVjdGlvbjogRkNvbm5lY3Rpb25CYXNlLFxuICApOiB2b2lkIHtcbiAgICBzb3VyY2Uuc2V0Q29ubmVjdGVkKHRhcmdldCk7XG4gICAgdGFyZ2V0LnNldENvbm5lY3RlZChzb3VyY2UpO1xuXG4gICAgdGhpcy5fY3JlYXRlTWFya2Vycyhjb25uZWN0aW9uKTtcblxuICAgIGNvbm5lY3Rpb24uc2V0TGluZSh0aGlzLl9jYWxjdWxhdGVDb25uZWN0aW9uTGluZShzb3VyY2UsIHRhcmdldCwgY29ubmVjdGlvbikpO1xuXG4gICAgY29ubmVjdGlvbi5pbml0aWFsaXplKCk7XG4gICAgY29ubmVjdGlvbi5pc1NlbGVjdGVkKCkgPyBjb25uZWN0aW9uLm1hcmtBc1NlbGVjdGVkKCkgOiBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlQ29ubmVjdGlvbkxpbmUoXG4gICAgc291cmNlOiBGQ29ubmVjdG9yQmFzZSxcbiAgICB0YXJnZXQ6IEZDb25uZWN0b3JCYXNlLFxuICAgIGNvbm5lY3Rpb246IEZDb25uZWN0aW9uQmFzZSxcbiAgKTogSUxpbmUge1xuICAgIHJldHVybiB0aGlzLl9jb25uZWN0aW9uQmVoYXZpb3VyLmhhbmRsZShcbiAgICAgIG5ldyBDb25uZWN0aW9uQmVoYXZpb3VyQnVpbGRlclJlcXVlc3QoXG4gICAgICAgIHRoaXMuX2NhbGN1bGF0ZUNvbm5lY3RvclJlY3Qoc291cmNlKSxcbiAgICAgICAgdGhpcy5fY2FsY3VsYXRlQ29ubmVjdG9yUmVjdCh0YXJnZXQpLFxuICAgICAgICBjb25uZWN0aW9uLFxuICAgICAgICBzb3VyY2UuZkNvbm5lY3RhYmxlU2lkZSxcbiAgICAgICAgdGFyZ2V0LmZDb25uZWN0YWJsZVNpZGUsXG4gICAgICApLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9jYWxjdWxhdGVDb25uZWN0b3JSZWN0KGNvbm5lY3RvcjogRkNvbm5lY3RvckJhc2UpOiBJUm91bmRlZFJlY3Qge1xuICAgIHJldHVybiB0aGlzLl9tZWRpYXRvci5leGVjdXRlPElSb3VuZGVkUmVjdD4oXG4gICAgICBuZXcgR2V0Tm9ybWFsaXplZENvbm5lY3RvclJlY3RSZXF1ZXN0KGNvbm5lY3Rvci5ob3N0RWxlbWVudCksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NyZWF0ZU1hcmtlcnMoY29ubmVjdGlvbjogRkNvbm5lY3Rpb25CYXNlKTogdm9pZCB7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgQ3JlYXRlQ29ubmVjdGlvbk1hcmtlcnNSZXF1ZXN0KGNvbm5lY3Rpb24pKTtcbiAgfVxufVxuIl19
222
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkcmF3LWNvbm5lY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1jb25uZWN0aW9uL3JlZHJhdy1jb25uZWN0aW9ucy9yZWRyYXctY29ubmVjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXRELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxTQUFTLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM5RSxPQUFPLEVBQ0wsMEJBQTBCLEVBQzFCLGlDQUFpQyxHQUdsQyxNQUFNLDBCQUEwQixDQUFDO0FBQ2xDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQ0wsZ0RBQWdELEVBSWhELHdDQUF3QyxFQUN4QyxxQ0FBcUMsRUFDckMsZ0NBQWdDLEdBQ2pDLE1BQU0sOEJBQThCLENBQUM7O0FBRXRDLE1BQU0sMkJBQTJCLEdBQUcsR0FBRyxDQUFDO0FBQ3hDLE1BQU0sZUFBZSxHQUFHLENBQUMsQ0FBQztBQUUxQjs7OztHQUlHO0FBR0ksSUFBTSxpQkFBaUIsR0FBdkIsTUFBTSxpQkFBaUI7SUFDWCxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlCLE1BQU0sR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNsQyxvQkFBb0IsR0FBRyxNQUFNLENBQUMsMEJBQTBCLENBQUMsQ0FBQztJQUMxRCxRQUFRLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBRTNDLGFBQWEsR0FBRyxDQUFDLENBQUM7SUFDVCwwQkFBMEIsR0FBRyxJQUFJLEdBQUcsRUFBa0IsQ0FBQztJQUVqRSxNQUFNLENBQUMsUUFBa0M7UUFDOUMsTUFBTSxZQUFZLEdBQUcsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQzFDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDO1FBQ2hELElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO1FBRWpDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDakUsSUFBSSxpQkFBaUIsRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxjQUFjLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUN6QyxDQUFDO1FBRUQsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDN0QsSUFBSSxlQUFlLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7UUFFRCxNQUFNLFdBQVcsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUMxRCxNQUFNLGtCQUFrQixHQUFHLElBQUksR0FBRyxFQUF3QixDQUFDO1FBRTNELElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQzlDLElBQUksQ0FBQyw0QkFBNEIsQ0FDL0IsV0FBVyxFQUNYLGtCQUFrQixFQUNsQixZQUFZLEVBQ1osYUFBYSxDQUNkLENBQUM7WUFFRixPQUFPO1FBQ1QsQ0FBQztRQUNELElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxXQUFXLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQyxFQUFFLFlBQVksRUFBRSxhQUFhLENBQUMsQ0FBQztJQUNqRyxDQUFDO0lBRU8seUJBQXlCO1FBQy9CLElBQUksQ0FBQyxJQUFJLENBQUMsMEJBQTBCLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDMUMsT0FBTztRQUNULENBQUM7UUFFRCxLQUFLLE1BQU0sU0FBUyxJQUFJLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1lBQ3hELFNBQVMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUM3QixDQUFDO1FBRUQsSUFBSSxDQUFDLDBCQUEwQixDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzFDLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxVQUEyQixFQUFFLEtBQWdDO1FBQ3BGLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDbEUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2IsT0FBTztRQUNULENBQUM7UUFFRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsd0JBQXdCLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRWhFLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFFTyx3QkFBd0IsQ0FDOUIsVUFBMkIsRUFDM0IsTUFBc0IsRUFDdEIsTUFBc0IsRUFDdEIsSUFBVztRQUVYLE1BQU0sQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDNUIsTUFBTSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsMEJBQTBCLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVDLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFNUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNoQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pCLFVBQVUsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUN4QixVQUFVLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQy9ELENBQUM7SUFFTyx3QkFBd0IsQ0FDOUIsVUFBMkIsRUFDM0IsT0FBa0M7UUFFbEMsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUNyQyxJQUFJLGlDQUFpQyxDQUNuQyxPQUFPLENBQUMsVUFBVSxFQUNsQixPQUFPLENBQUMsVUFBVSxFQUNsQixVQUFVLEVBQ1YsT0FBTyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsRUFDL0IsT0FBTyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FDaEMsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVPLDRCQUE0QixDQUNsQyxVQUEyQjtRQUUzQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUMzQixJQUFJLHdDQUF3QyxDQUFDLFVBQVUsQ0FBQyxDQUN6RCxDQUFDO0lBQ0osQ0FBQztJQUVPLHlCQUF5QixDQUMvQixVQUEyQixFQUMzQixLQUFnQztRQUVoQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUMzQixJQUFJLHFDQUFxQyxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FDN0QsQ0FBQztJQUNKLENBQUM7SUFFTyxjQUFjLENBQUMsVUFBMkI7UUFDaEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSw4QkFBOEIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFTyw0QkFBNEIsQ0FDbEMsV0FBdUMsRUFDdkMsa0JBQTZDLEVBQzdDLFlBQW9CLEVBQ3BCLGFBQXFCO1FBRXJCLElBQUksQ0FBQyxTQUFTO2FBQ1gsT0FBTyxDQUNOLElBQUksZ0RBQWdELENBQUMsV0FBVyxFQUFFLGtCQUFrQixDQUFDLENBQ3RGO2FBQ0EsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDLEVBQUUsQ0FBQztnQkFDL0QsT0FBTztZQUNULENBQUM7WUFFRCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ2IsSUFBSSxDQUFDLHdCQUF3QixDQUMzQixXQUFXLEVBQ1gsa0JBQWtCLEVBQ2xCLENBQUMsRUFDRCxZQUFZLEVBQ1osYUFBYSxDQUNkLENBQUM7Z0JBRUYsT0FBTztZQUNULENBQUM7WUFFRCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsc0NBQXNDLENBQy9ELE9BQU8sRUFDUCxXQUFXLENBQUMsTUFBTSxDQUNuQixDQUFDO1lBRUYsSUFBSSxDQUFDLDBCQUEwQixDQUM3QixXQUFXLEVBQ1gsYUFBYSxFQUNiLGtCQUFrQixFQUNsQixDQUFDLEVBQ0QsWUFBWSxFQUNaLGFBQWEsQ0FDZCxDQUFDO1FBQ0osQ0FBQyxDQUFDO2FBQ0QsS0FBSyxDQUFDLEdBQUcsRUFBRTtZQUNWLElBQUksQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxFQUFFLENBQUM7Z0JBQy9ELE9BQU87WUFDVCxDQUFDO1lBRUQsSUFBSSxDQUFDLHdCQUF3QixDQUMzQixXQUFXLEVBQ1gsa0JBQWtCLEVBQ2xCLENBQUMsRUFDRCxZQUFZLEVBQ1osYUFBYSxDQUNkLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTywwQkFBMEIsQ0FDaEMsV0FBdUMsRUFDdkMsYUFBb0UsRUFDcEUsa0JBQTZDLEVBQzdDLFVBQWtCLEVBQ2xCLFlBQW9CLEVBQ3BCLGFBQXFCO1FBRXJCLElBQUksQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxFQUFFLENBQUM7WUFDL0QsT0FBTztRQUNULENBQUM7UUFFRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDL0IsSUFBSSxRQUFRLEdBQUcsVUFBVSxDQUFDO1FBQzFCLElBQUksU0FBUyxHQUFHLENBQUMsQ0FBQztRQUVsQixPQUNFLFFBQVEsR0FBRyxXQUFXLENBQUMsTUFBTTtZQUM3QixTQUFTLEdBQUcsMkJBQTJCO1lBQ3ZDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLENBQUMsRUFDckMsQ0FBQztZQUNELE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN6QyxNQUFNLE1BQU0sR0FBRyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7WUFFdkMsSUFBSSxJQUFJLENBQUMsd0JBQXdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztnQkFDMUMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLDRCQUE0QixDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUNqRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7b0JBQ2hCLFFBQVEsRUFBRSxDQUFDO29CQUNYLFNBQVMsRUFBRSxDQUFDO29CQUVaLElBQUksQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxFQUFFLENBQUM7d0JBQy9ELE9BQU87b0JBQ1QsQ0FBQztvQkFDRCxTQUFTO2dCQUNYLENBQUM7Z0JBRUQsSUFBSSxDQUFDO29CQUNILFVBQVUsQ0FBQywrQkFBK0IsQ0FDeEMsTUFBTSxDQUFDLFVBQStCLEVBQ3RDLE1BQU0sQ0FBQyxVQUErQixDQUN2QyxDQUFDO29CQUNGLElBQUksQ0FBQyx3QkFBd0IsQ0FDM0IsVUFBVSxFQUNWLFVBQVUsQ0FBQyxNQUFNLEVBQ2pCLFVBQVUsQ0FBQyxNQUFNLEVBQ2pCLE1BQU0sQ0FBQyxJQUFJLENBQ1osQ0FBQztnQkFDSixDQUFDO2dCQUFDLE1BQU0sQ0FBQztvQkFDUCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLGtCQUFrQixDQUFDLENBQUM7Z0JBQ3hELENBQUM7WUFDSCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO1lBQ3hELENBQUM7WUFFRCxRQUFRLEVBQUUsQ0FBQztZQUNYLFNBQVMsRUFBRSxDQUFDO1lBRVosSUFBSSxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDLEVBQUUsQ0FBQztnQkFDL0QsT0FBTztZQUNULENBQUM7UUFDSCxDQUFDO1FBRUQsSUFBSSxRQUFRLElBQUksV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ25DLE9BQU87UUFDVCxDQUFDO1FBRUQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsRUFBRSxDQUMvQixJQUFJLENBQUMsMEJBQTBCLENBQzdCLFdBQVcsRUFDWCxhQUFhLEVBQ2Isa0JBQWtCLEVBQ2xCLFFBQVEsRUFDUixZQUFZLEVBQ1osYUFBYSxDQUNkLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTyxzQ0FBc0MsQ0FDNUMsT0FBZ0QsRUFDaEQsZUFBdUI7UUFFdkIsTUFBTSxPQUFPLEdBQWlELElBQUksS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBRXpGLEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFLENBQUM7WUFDN0IsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQztZQUNuQyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO2dCQUM5QixTQUFTO1lBQ1gsQ0FBQztZQUVELElBQUksS0FBSyxHQUFHLENBQUMsSUFBSSxLQUFLLElBQUksZUFBZSxFQUFFLENBQUM7Z0JBQzFDLFNBQVM7WUFDWCxDQUFDO1lBRUQsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLE1BQU0sQ0FBQztRQUMxQixDQUFDO1FBRUQsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVPLHdCQUF3QixDQUM5QixNQUFnRDtRQU1oRCxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxTQUFTLElBQUksTUFBTSxDQUFDLFVBQVUsSUFBSSxNQUFNLENBQUMsVUFBVSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4RixDQUFDO0lBRU8sd0JBQXdCLENBQzlCLFdBQXVDLEVBQ3ZDLGtCQUE2QyxFQUM3QyxVQUFrQixFQUNsQixZQUFvQixFQUNwQixhQUFxQjtRQUVyQixJQUFJLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLFlBQVksRUFBRSxhQUFhLENBQUMsRUFBRSxDQUFDO1lBQy9ELE9BQU87UUFDVCxDQUFDO1FBRUQsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQy9CLElBQUksUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUMxQixJQUFJLFNBQVMsR0FBRyxDQUFDLENBQUM7UUFFbEIsT0FDRSxRQUFRLEdBQUcsV0FBVyxDQUFDLE1BQU07WUFDN0IsU0FBUyxHQUFHLDJCQUEyQjtZQUN2QyxJQUFJLENBQUMsb0JBQW9CLENBQUMsVUFBVSxDQUFDLEVBQ3JDLENBQUM7WUFDRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxFQUFFLGtCQUFrQixDQUFDLENBQUM7WUFDakUsUUFBUSxFQUFFLENBQUM7WUFDWCxTQUFTLEVBQUUsQ0FBQztZQUVaLElBQUksQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxFQUFFLENBQUM7Z0JBQy9ELE9BQU87WUFDVCxDQUFDO1FBQ0gsQ0FBQztRQUVELElBQUksUUFBUSxJQUFJLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNuQyxPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLEVBQUUsQ0FDL0IsSUFBSSxDQUFDLHdCQUF3QixDQUMzQixXQUFXLEVBQ1gsa0JBQWtCLEVBQ2xCLFFBQVEsRUFDUixZQUFZLEVBQ1osYUFBYSxDQUNkLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxlQUF1QjtRQUM5QyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFVLElBQUksZ0NBQWdDLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQztJQUNoRyxDQUFDO0lBRU8sdUJBQXVCLENBQUMsWUFBb0IsRUFBRSxhQUFxQjtRQUN6RSxPQUFPLFlBQVksS0FBSyxJQUFJLENBQUMsYUFBYSxJQUFJLGFBQWEsS0FBSyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQztJQUM1RixDQUFDO0lBRU8sc0JBQXNCLENBQUMsUUFBb0I7UUFDakQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDO1FBQ3JELElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNmLFFBQVEsRUFBRSxDQUFDO1lBRVgsT0FBTztRQUNULENBQUM7UUFFRCxTQUFTLENBQUMscUJBQXFCLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVPLElBQUk7UUFDVixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsV0FBVyxDQUFDO1FBRXZFLE9BQU8sY0FBYyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUM1RCxDQUFDO0lBRU8sb0JBQW9CLENBQUMsVUFBa0I7UUFDN0MsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQztZQUMvQixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQyxJQUFJLEVBQUUsR0FBRyxVQUFVLEdBQUcsZUFBZSxDQUFDO0lBQ3BELENBQUM7d0dBcldVLGlCQUFpQjs0R0FBakIsaUJBQWlCOztBQUFqQixpQkFBaUI7SUFEN0Isa0JBQWtCLENBQUMsd0JBQXdCLENBQUM7R0FDaEMsaUJBQWlCLENBc1c3Qjs7NEZBdFdZLGlCQUFpQjtrQkFGN0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElMaW5lLCBJUm91bmRlZFJlY3QgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmVkcmF3Q29ubmVjdGlvbnNSZXF1ZXN0IH0gZnJvbSAnLi9yZWRyYXctY29ubmVjdGlvbnMtcmVxdWVzdCc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZDb25uZWN0b3JCYXNlIH0gZnJvbSAnLi4vLi4vLi4vZi1jb25uZWN0b3JzJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBDcmVhdGVDb25uZWN0aW9uTWFya2Vyc1JlcXVlc3QgfSBmcm9tICcuLi9jcmVhdGUtY29ubmVjdGlvbi1tYXJrZXJzJztcbmltcG9ydCB7XG4gIENvbm5lY3Rpb25CZWhhdmlvdXJCdWlsZGVyLFxuICBDb25uZWN0aW9uQmVoYXZpb3VyQnVpbGRlclJlcXVlc3QsXG4gIEVGQ29ubmVjdGFibGVTaWRlLFxuICBGQ29ubmVjdGlvbkJhc2UsXG59IGZyb20gJy4uLy4uLy4uL2YtY29ubmVjdGlvbi12Mic7XG5pbXBvcnQgeyBCcm93c2VyU2VydmljZSB9IGZyb20gJ0Bmb2JsZXgvcGxhdGZvcm0nO1xuaW1wb3J0IHtcbiAgQ2FsY3VsYXRlQ29ubmVjdGlvbnNVc2luZ0Nvbm5lY3Rpb25Xb3JrZXJSZXF1ZXN0LFxuICBJRkNvbm5lY3Rpb25Xb3JrZXJDb25uZWN0b3JzLFxuICBJRkNvbm5lY3Rpb25Xb3JrZXJDb250ZXh0LFxuICBJRkNvbm5lY3Rpb25Xb3JrZXJSZXN1bHRJdGVtLFxuICBSZXNvbHZlQ29ubmVjdGlvbldvcmtlckNvbm5lY3RvcnNSZXF1ZXN0LFxuICBSZXNvbHZlQ29ubmVjdGlvbldvcmtlckNvbnRleHRSZXF1ZXN0LFxuICBTaG91bGRVc2VDb25uZWN0aW9uV29ya2VyUmVxdWVzdCxcbn0gZnJvbSAnLi4vLi4vLi4vZi1jb25uZWN0aW9uLXdvcmtlcic7XG5cbmNvbnN0IENPTk5FQ1RJT05TX1BFUl9TTElDRV9MSU1JVCA9IDUwMDtcbmNvbnN0IFNMSUNFX0JVREdFVF9NUyA9IDY7XG5cbi8qKlxuICogRXhlY3V0aW9uIHRoYXQgcmVkcmF3cyBjb25uZWN0aW9ucyBpbiB0aGUgRkNvbXBvbmVudHNTdG9yZS5cbiAqIEl0IHJlc2V0cyBjb25uZWN0b3JzLCBzZXRzIG1hcmtlcnMgZm9yIHRlbXBvcmFyeSBhbmQgc25hcCBjb25uZWN0aW9ucyxcbiAqIGFuZCBzZXRzIHVwIGNvbm5lY3Rpb25zIGJhc2VkIG9uIHRoZSBzdG9yZWQgb3V0cHV0cyBhbmQgaW5wdXRzLlxuICovXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKFJlZHJhd0Nvbm5lY3Rpb25zUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBSZWRyYXdDb25uZWN0aW9ucyBpbXBsZW1lbnRzIElFeGVjdXRpb248UmVkcmF3Q29ubmVjdGlvbnNSZXF1ZXN0LCB2b2lkPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX21lZGlhdG9yID0gaW5qZWN0KEZNZWRpYXRvcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3N0b3JlID0gaW5qZWN0KEZDb21wb25lbnRzU3RvcmUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb25uZWN0aW9uQmVoYXZpb3VyID0gaW5qZWN0KENvbm5lY3Rpb25CZWhhdmlvdXJCdWlsZGVyKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfYnJvd3NlciA9IGluamVjdChCcm93c2VyU2VydmljZSk7XG5cbiAgcHJpdmF0ZSBfcmVuZGVyVGlja2V0ID0gMDtcbiAgcHJpdmF0ZSByZWFkb25seSBfY29ubmVjdGVkSW5QcmV2aW91c1JlbmRlciA9IG5ldyBTZXQ8RkNvbm5lY3RvckJhc2U+KCk7XG5cbiAgcHVibGljIGhhbmRsZShfcmVxdWVzdDogUmVkcmF3Q29ubmVjdGlvbnNSZXF1ZXN0KTogdm9pZCB7XG4gICAgY29uc3QgcmVuZGVyVGlja2V0ID0gKyt0aGlzLl9yZW5kZXJUaWNrZXQ7XG4gICAgY29uc3Qgbm9kZXNSZXZpc2lvbiA9IHRoaXMuX3N0b3JlLm5vZGVzUmV2aXNpb247XG4gICAgdGhpcy5fcmVzZXRDb25uZWN0ZWRDb25uZWN0b3JzKCk7XG5cbiAgICBjb25zdCBpbnN0YW5jZUZvckNyZWF0ZSA9IHRoaXMuX3N0b3JlLmNvbm5lY3Rpb25zLmdldEZvckNyZWF0ZSgpO1xuICAgIGlmIChpbnN0YW5jZUZvckNyZWF0ZSkge1xuICAgICAgdGhpcy5fY3JlYXRlTWFya2VycyhpbnN0YW5jZUZvckNyZWF0ZSk7XG4gICAgfVxuXG4gICAgY29uc3QgaW5zdGFuY2VGb3JTbmFwID0gdGhpcy5fc3RvcmUuY29ubmVjdGlvbnMuZ2V0Rm9yU25hcCgpO1xuICAgIGlmIChpbnN0YW5jZUZvclNuYXApIHtcbiAgICAgIHRoaXMuX2NyZWF0ZU1hcmtlcnMoaW5zdGFuY2VGb3JTbmFwKTtcbiAgICB9XG5cbiAgICBjb25zdCBjb25uZWN0aW9ucyA9IFsuLi50aGlzLl9zdG9yZS5jb25uZWN0aW9ucy5nZXRBbGwoKV07XG4gICAgY29uc3QgY29ubmVjdG9yUmVjdENhY2hlID0gbmV3IE1hcDxzdHJpbmcsIElSb3VuZGVkUmVjdD4oKTtcblxuICAgIGlmICh0aGlzLl9zaG91bGRVc2VXb3JrZXIoY29ubmVjdGlvbnMubGVuZ3RoKSkge1xuICAgICAgdGhpcy5fc2V0dXBDb25uZWN0aW9uc1VzaW5nV29ya2VyKFxuICAgICAgICBjb25uZWN0aW9ucyxcbiAgICAgICAgY29ubmVjdG9yUmVjdENhY2hlLFxuICAgICAgICByZW5kZXJUaWNrZXQsXG4gICAgICAgIG5vZGVzUmV2aXNpb24sXG4gICAgICApO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX3NldHVwQ29ubmVjdGlvbnNDaHVua2VkKGNvbm5lY3Rpb25zLCBjb25uZWN0b3JSZWN0Q2FjaGUsIDAsIHJlbmRlclRpY2tldCwgbm9kZXNSZXZpc2lvbik7XG4gIH1cblxuICBwcml2YXRlIF9yZXNldENvbm5lY3RlZENvbm5lY3RvcnMoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9jb25uZWN0ZWRJblByZXZpb3VzUmVuZGVyLnNpemUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGNvbm5lY3RvciBvZiB0aGlzLl9jb25uZWN0ZWRJblByZXZpb3VzUmVuZGVyKSB7XG4gICAgICBjb25uZWN0b3IucmVzZXRDb25uZWN0ZWQoKTtcbiAgICB9XG5cbiAgICB0aGlzLl9jb25uZWN0ZWRJblByZXZpb3VzUmVuZGVyLmNsZWFyKCk7XG4gIH1cblxuICBwcml2YXRlIF9zZXR1cENvbm5lY3Rpb24oY29ubmVjdGlvbjogRkNvbm5lY3Rpb25CYXNlLCBjYWNoZTogTWFwPHN0cmluZywgSVJvdW5kZWRSZWN0Pik6IHZvaWQge1xuICAgIGNvbnN0IGNvbnRleHQgPSB0aGlzLl9yZXNvbHZlQ29ubmVjdGlvbkNvbnRleHQoY29ubmVjdGlvbiwgY2FjaGUpO1xuICAgIGlmICghY29udGV4dCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGxpbmUgPSB0aGlzLl9jYWxjdWxhdGVDb25uZWN0aW9uTGluZShjb25uZWN0aW9uLCBjb250ZXh0KTtcblxuICAgIHRoaXMuX3NldHVwQ29ubmVjdGlvbldpdGhMaW5lKGNvbm5lY3Rpb24sIGNvbnRleHQuc291cmNlLCBjb250ZXh0LnRhcmdldCwgbGluZSk7XG4gIH1cblxuICBwcml2YXRlIF9zZXR1cENvbm5lY3Rpb25XaXRoTGluZShcbiAgICBjb25uZWN0aW9uOiBGQ29ubmVjdGlvbkJhc2UsXG4gICAgc291cmNlOiBGQ29ubmVjdG9yQmFzZSxcbiAgICB0YXJnZXQ6IEZDb25uZWN0b3JCYXNlLFxuICAgIGxpbmU6IElMaW5lLFxuICApOiB2b2lkIHtcbiAgICBzb3VyY2Uuc2V0Q29ubmVjdGVkKHRhcmdldCk7XG4gICAgdGFyZ2V0LnNldENvbm5lY3RlZChzb3VyY2UpO1xuICAgIHRoaXMuX2Nvbm5lY3RlZEluUHJldmlvdXNSZW5kZXIuYWRkKHNvdXJjZSk7XG4gICAgdGhpcy5fY29ubmVjdGVkSW5QcmV2aW91c1JlbmRlci5hZGQodGFyZ2V0KTtcblxuICAgIHRoaXMuX2NyZWF0ZU1hcmtlcnMoY29ubmVjdGlvbik7XG4gICAgY29ubmVjdGlvbi5zZXRMaW5lKGxpbmUpO1xuICAgIGNvbm5lY3Rpb24uaW5pdGlhbGl6ZSgpO1xuICAgIGNvbm5lY3Rpb24uaXNTZWxlY3RlZCgpID8gY29ubmVjdGlvbi5tYXJrQXNTZWxlY3RlZCgpIDogbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgX2NhbGN1bGF0ZUNvbm5lY3Rpb25MaW5lKFxuICAgIGNvbm5lY3Rpb246IEZDb25uZWN0aW9uQmFzZSxcbiAgICBjb250ZXh0OiBJRkNvbm5lY3Rpb25Xb3JrZXJDb250ZXh0LFxuICApOiBJTGluZSB7XG4gICAgcmV0dXJuIHRoaXMuX2Nvbm5lY3Rpb25CZWhhdmlvdXIuaGFuZGxlKFxuICAgICAgbmV3IENvbm5lY3Rpb25CZWhhdmlvdXJCdWlsZGVyUmVxdWVzdChcbiAgICAgICAgY29udGV4dC5zb3VyY2VSZWN0LFxuICAgICAgICBjb250ZXh0LnRhcmdldFJlY3QsXG4gICAgICAgIGNvbm5lY3Rpb24sXG4gICAgICAgIGNvbnRleHQuc291cmNlLmZDb25uZWN0YWJsZVNpZGUsXG4gICAgICAgIGNvbnRleHQudGFyZ2V0LmZDb25uZWN0YWJsZVNpZGUsXG4gICAgICApLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9yZXNvbHZlQ29ubmVjdGlvbkNvbm5lY3RvcnMoXG4gICAgY29ubmVjdGlvbjogRkNvbm5lY3Rpb25CYXNlLFxuICApOiBJRkNvbm5lY3Rpb25Xb3JrZXJDb25uZWN0b3JzIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8SUZDb25uZWN0aW9uV29ya2VyQ29ubmVjdG9ycyB8IG51bGw+KFxuICAgICAgbmV3IFJlc29sdmVDb25uZWN0aW9uV29ya2VyQ29ubmVjdG9yc1JlcXVlc3QoY29ubmVjdGlvbiksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX3Jlc29sdmVDb25uZWN0aW9uQ29udGV4dChcbiAgICBjb25uZWN0aW9uOiBGQ29ubmVjdGlvbkJhc2UsXG4gICAgY2FjaGU6IE1hcDxzdHJpbmcsIElSb3VuZGVkUmVjdD4sXG4gICk6IElGQ29ubmVjdGlvbldvcmtlckNvbnRleHQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTxJRkNvbm5lY3Rpb25Xb3JrZXJDb250ZXh0IHwgbnVsbD4oXG4gICAgICBuZXcgUmVzb2x2ZUNvbm5lY3Rpb25Xb3JrZXJDb250ZXh0UmVxdWVzdChjb25uZWN0aW9uLCBjYWNoZSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NyZWF0ZU1hcmtlcnMoY29ubmVjdGlvbjogRkNvbm5lY3Rpb25CYXNlKTogdm9pZCB7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgQ3JlYXRlQ29ubmVjdGlvbk1hcmtlcnNSZXF1ZXN0KGNvbm5lY3Rpb24pKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NldHVwQ29ubmVjdGlvbnNVc2luZ1dvcmtlcihcbiAgICBjb25uZWN0aW9uczogcmVhZG9ubHkgRkNvbm5lY3Rpb25CYXNlW10sXG4gICAgY29ubmVjdG9yUmVjdENhY2hlOiBNYXA8c3RyaW5nLCBJUm91bmRlZFJlY3Q+LFxuICAgIHJlbmRlclRpY2tldDogbnVtYmVyLFxuICAgIG5vZGVzUmV2aXNpb246IG51bWJlcixcbiAgKTogdm9pZCB7XG4gICAgdGhpcy5fbWVkaWF0b3JcbiAgICAgIC5leGVjdXRlPFByb21pc2U8cmVhZG9ubHkgSUZDb25uZWN0aW9uV29ya2VyUmVzdWx0SXRlbVtdIHwgbnVsbD4+KFxuICAgICAgICBuZXcgQ2FsY3VsYXRlQ29ubmVjdGlvbnNVc2luZ0Nvbm5lY3Rpb25Xb3JrZXJSZXF1ZXN0KGNvbm5lY3Rpb25zLCBjb25uZWN0b3JSZWN0Q2FjaGUpLFxuICAgICAgKVxuICAgICAgLnRoZW4oKHJlc3VsdHMpID0+IHtcbiAgICAgICAgaWYgKCF0aGlzLl9pc0N1cnJlbnRSZW5kZXJDb250ZXh0KHJlbmRlclRpY2tldCwgbm9kZXNSZXZpc2lvbikpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXJlc3VsdHMpIHtcbiAgICAgICAgICB0aGlzLl9zZXR1cENvbm5lY3Rpb25zQ2h1bmtlZChcbiAgICAgICAgICAgIGNvbm5lY3Rpb25zLFxuICAgICAgICAgICAgY29ubmVjdG9yUmVjdENhY2hlLFxuICAgICAgICAgICAgMCxcbiAgICAgICAgICAgIHJlbmRlclRpY2tldCxcbiAgICAgICAgICAgIG5vZGVzUmV2aXNpb24sXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHdvcmtlclJlc3VsdHMgPSB0aGlzLl9hbGlnbldvcmtlclJlc3VsdHNUb0Nvbm5lY3Rpb25JbmRleGVzKFxuICAgICAgICAgIHJlc3VsdHMsXG4gICAgICAgICAgY29ubmVjdGlvbnMubGVuZ3RoLFxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMuX2FwcGx5V29ya2VyUmVzdWx0c0NodW5rZWQoXG4gICAgICAgICAgY29ubmVjdGlvbnMsXG4gICAgICAgICAgd29ya2VyUmVzdWx0cyxcbiAgICAgICAgICBjb25uZWN0b3JSZWN0Q2FjaGUsXG4gICAgICAgICAgMCxcbiAgICAgICAgICByZW5kZXJUaWNrZXQsXG4gICAgICAgICAgbm9kZXNSZXZpc2lvbixcbiAgICAgICAgKTtcbiAgICAgIH0pXG4gICAgICAuY2F0Y2goKCkgPT4ge1xuICAgICAgICBpZiAoIXRoaXMuX2lzQ3VycmVudFJlbmRlckNvbnRleHQocmVuZGVyVGlja2V0LCBub2Rlc1JldmlzaW9uKSkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3NldHVwQ29ubmVjdGlvbnNDaHVua2VkKFxuICAgICAgICAgIGNvbm5lY3Rpb25zLFxuICAgICAgICAgIGNvbm5lY3RvclJlY3RDYWNoZSxcbiAgICAgICAgICAwLFxuICAgICAgICAgIHJlbmRlclRpY2tldCxcbiAgICAgICAgICBub2Rlc1JldmlzaW9uLFxuICAgICAgICApO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9hcHBseVdvcmtlclJlc3VsdHNDaHVua2VkKFxuICAgIGNvbm5lY3Rpb25zOiByZWFkb25seSBGQ29ubmVjdGlvbkJhc2VbXSxcbiAgICB3b3JrZXJSZXN1bHRzOiByZWFkb25seSAoSUZDb25uZWN0aW9uV29ya2VyUmVzdWx0SXRlbSB8IHVuZGVmaW5lZClbXSxcbiAgICBjb25uZWN0b3JSZWN0Q2FjaGU6IE1hcDxzdHJpbmcsIElSb3VuZGVkUmVjdD4sXG4gICAgc3RhcnRJbmRleDogbnVtYmVyLFxuICAgIHJlbmRlclRpY2tldDogbnVtYmVyLFxuICAgIG5vZGVzUmV2aXNpb246IG51bWJlcixcbiAgKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9pc0N1cnJlbnRSZW5kZXJDb250ZXh0KHJlbmRlclRpY2tldCwgbm9kZXNSZXZpc2lvbikpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBzbGljZVN0YXJ0ID0gdGhpcy5fbm93KCk7XG4gICAgbGV0IGVuZEluZGV4ID0gc3RhcnRJbmRleDtcbiAgICBsZXQgcHJvY2Vzc2VkID0gMDtcblxuICAgIHdoaWxlIChcbiAgICAgIGVuZEluZGV4IDwgY29ubmVjdGlvbnMubGVuZ3RoICYmXG4gICAgICBwcm9jZXNzZWQgPCBDT05ORUNUSU9OU19QRVJfU0xJQ0VfTElNSVQgJiZcbiAgICAgIHRoaXMuX2lzV2l0aGluU2xpY2VCdWRnZXQoc2xpY2VTdGFydClcbiAgICApIHtcbiAgICAgIGNvbnN0IGNvbm5lY3Rpb24gPSBjb25uZWN0aW9uc1tlbmRJbmRleF07XG4gICAgICBjb25zdCByZXN1bHQgPSB3b3JrZXJSZXN1bHRzW2VuZEluZGV4XTtcblxuICAgICAgaWYgKHRoaXMuX2lzV29ya2VyUmVzdWx0U3VwcG9ydGVkKHJlc3VsdCkpIHtcbiAgICAgICAgY29uc3QgY29ubmVjdG9ycyA9IHRoaXMuX3Jlc29sdmVDb25uZWN0aW9uQ29ubmVjdG9ycyhjb25uZWN0aW9uKTtcbiAgICAgICAgaWYgKCFjb25uZWN0b3JzKSB7XG4gICAgICAgICAgZW5kSW5kZXgrKztcbiAgICAgICAgICBwcm9jZXNzZWQrKztcblxuICAgICAgICAgIGlmICghdGhpcy5faXNDdXJyZW50UmVuZGVyQ29udGV4dChyZW5kZXJUaWNrZXQsIG5vZGVzUmV2aXNpb24pKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjb25uZWN0aW9uLl9hcHBseVJlc29sdmVkU2lkZXNUb0Nvbm5lY3Rpb24oXG4gICAgICAgICAgICByZXN1bHQuc291cmNlU2lkZSBhcyBFRkNvbm5lY3RhYmxlU2lkZSxcbiAgICAgICAgICAgIHJlc3VsdC50YXJnZXRTaWRlIGFzIEVGQ29ubmVjdGFibGVTaWRlLFxuICAgICAgICAgICk7XG4gICAgICAgICAgdGhpcy5fc2V0dXBDb25uZWN0aW9uV2l0aExpbmUoXG4gICAgICAgICAgICBjb25uZWN0aW9uLFxuICAgICAgICAgICAgY29ubmVjdG9ycy5zb3VyY2UsXG4gICAgICAgICAgICBjb25uZWN0b3JzLnRhcmdldCxcbiAgICAgICAgICAgIHJlc3VsdC5saW5lLFxuICAgICAgICAgICk7XG4gICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgIHRoaXMuX3NldHVwQ29ubmVjdGlvbihjb25uZWN0aW9uLCBjb25uZWN0b3JSZWN0Q2FjaGUpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl9zZXR1cENvbm5lY3Rpb24oY29ubmVjdGlvbiwgY29ubmVjdG9yUmVjdENhY2hlKTtcbiAgICAgIH1cblxuICAgICAgZW5kSW5kZXgrKztcbiAgICAgIHByb2Nlc3NlZCsrO1xuXG4gICAgICBpZiAoIXRoaXMuX2lzQ3VycmVudFJlbmRlckNvbnRleHQocmVuZGVyVGlja2V0LCBub2Rlc1JldmlzaW9uKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGVuZEluZGV4ID49IGNvbm5lY3Rpb25zLmxlbmd0aCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX3JlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PlxuICAgICAgdGhpcy5fYXBwbHlXb3JrZXJSZXN1bHRzQ2h1bmtlZChcbiAgICAgICAgY29ubmVjdGlvbnMsXG4gICAgICAgIHdvcmtlclJlc3VsdHMsXG4gICAgICAgIGNvbm5lY3RvclJlY3RDYWNoZSxcbiAgICAgICAgZW5kSW5kZXgsXG4gICAgICAgIHJlbmRlclRpY2tldCxcbiAgICAgICAgbm9kZXNSZXZpc2lvbixcbiAgICAgICksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2FsaWduV29ya2VyUmVzdWx0c1RvQ29ubmVjdGlvbkluZGV4ZXMoXG4gICAgcmVzdWx0czogcmVhZG9ubHkgSUZDb25uZWN0aW9uV29ya2VyUmVzdWx0SXRlbVtdLFxuICAgIGNvbm5lY3Rpb25Db3VudDogbnVtYmVyLFxuICApOiAoSUZDb25uZWN0aW9uV29ya2VyUmVzdWx0SXRlbSB8IHVuZGVmaW5lZClbXSB7XG4gICAgY29uc3QgYWxpZ25lZDogKElGQ29ubmVjdGlvbldvcmtlclJlc3VsdEl0ZW0gfCB1bmRlZmluZWQpW10gPSBuZXcgQXJyYXkoY29ubmVjdGlvbkNvdW50KTtcblxuICAgIGZvciAoY29uc3QgcmVzdWx0IG9mIHJlc3VsdHMpIHtcbiAgICAgIGNvbnN0IGluZGV4ID0gcmVzdWx0Lm9yaWdpbmFsSW5kZXg7XG4gICAgICBpZiAodHlwZW9mIGluZGV4ICE9PSAnbnVtYmVyJykge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKGluZGV4IDwgMCB8fCBpbmRleCA+PSBjb25uZWN0aW9uQ291bnQpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGFsaWduZWRbaW5kZXhdID0gcmVzdWx0O1xuICAgIH1cblxuICAgIHJldHVybiBhbGlnbmVkO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNXb3JrZXJSZXN1bHRTdXBwb3J0ZWQoXG4gICAgcmVzdWx0OiBJRkNvbm5lY3Rpb25Xb3JrZXJSZXN1bHRJdGVtIHwgdW5kZWZpbmVkLFxuICApOiByZXN1bHQgaXMgSUZDb25uZWN0aW9uV29ya2VyUmVzdWx0SXRlbSAmIHtcbiAgICBzb3VyY2VTaWRlOiBzdHJpbmc7XG4gICAgdGFyZ2V0U2lkZTogc3RyaW5nO1xuICAgIGxpbmU6IElMaW5lO1xuICB9IHtcbiAgICByZXR1cm4gISEocmVzdWx0Py5zdXBwb3J0ZWQgJiYgcmVzdWx0LnNvdXJjZVNpZGUgJiYgcmVzdWx0LnRhcmdldFNpZGUgJiYgcmVzdWx0LmxpbmUpO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2V0dXBDb25uZWN0aW9uc0NodW5rZWQoXG4gICAgY29ubmVjdGlvbnM6IHJlYWRvbmx5IEZDb25uZWN0aW9uQmFzZVtdLFxuICAgIGNvbm5lY3RvclJlY3RDYWNoZTogTWFwPHN0cmluZywgSVJvdW5kZWRSZWN0PixcbiAgICBzdGFydEluZGV4OiBudW1iZXIsXG4gICAgcmVuZGVyVGlja2V0OiBudW1iZXIsXG4gICAgbm9kZXNSZXZpc2lvbjogbnVtYmVyLFxuICApOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2lzQ3VycmVudFJlbmRlckNvbnRleHQocmVuZGVyVGlja2V0LCBub2Rlc1JldmlzaW9uKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHNsaWNlU3RhcnQgPSB0aGlzLl9ub3coKTtcbiAgICBsZXQgZW5kSW5kZXggPSBzdGFydEluZGV4O1xuICAgIGxldCBwcm9jZXNzZWQgPSAwO1xuXG4gICAgd2hpbGUgKFxuICAgICAgZW5kSW5kZXggPCBjb25uZWN0aW9ucy5sZW5ndGggJiZcbiAgICAgIHByb2Nlc3NlZCA8IENPTk5FQ1RJT05TX1BFUl9TTElDRV9MSU1JVCAmJlxuICAgICAgdGhpcy5faXNXaXRoaW5TbGljZUJ1ZGdldChzbGljZVN0YXJ0KVxuICAgICkge1xuICAgICAgdGhpcy5fc2V0dXBDb25uZWN0aW9uKGNvbm5lY3Rpb25zW2VuZEluZGV4XSwgY29ubmVjdG9yUmVjdENhY2hlKTtcbiAgICAgIGVuZEluZGV4Kys7XG4gICAgICBwcm9jZXNzZWQrKztcblxuICAgICAgaWYgKCF0aGlzLl9pc0N1cnJlbnRSZW5kZXJDb250ZXh0KHJlbmRlclRpY2tldCwgbm9kZXNSZXZpc2lvbikpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChlbmRJbmRleCA+PSBjb25uZWN0aW9ucy5sZW5ndGgpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT5cbiAgICAgIHRoaXMuX3NldHVwQ29ubmVjdGlvbnNDaHVua2VkKFxuICAgICAgICBjb25uZWN0aW9ucyxcbiAgICAgICAgY29ubmVjdG9yUmVjdENhY2hlLFxuICAgICAgICBlbmRJbmRleCxcbiAgICAgICAgcmVuZGVyVGlja2V0LFxuICAgICAgICBub2Rlc1JldmlzaW9uLFxuICAgICAgKSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2hvdWxkVXNlV29ya2VyKGNvbm5lY3Rpb25Db3VudDogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8Ym9vbGVhbj4obmV3IFNob3VsZFVzZUNvbm5lY3Rpb25Xb3JrZXJSZXF1ZXN0KGNvbm5lY3Rpb25Db3VudCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNDdXJyZW50UmVuZGVyQ29udGV4dChyZW5kZXJUaWNrZXQ6IG51bWJlciwgbm9kZXNSZXZpc2lvbjogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHJlbmRlclRpY2tldCA9PT0gdGhpcy5fcmVuZGVyVGlja2V0ICYmIG5vZGVzUmV2aXNpb24gPT09IHRoaXMuX3N0b3JlLm5vZGVzUmV2aXNpb247XG4gIH1cblxuICBwcml2YXRlIF9yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoY2FsbGJhY2s6ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICBjb25zdCB3aW5kb3dSZWYgPSB0aGlzLl9icm93c2VyLmRvY3VtZW50LmRlZmF1bHRWaWV3O1xuICAgIGlmICghd2luZG93UmVmKSB7XG4gICAgICBjYWxsYmFjaygpO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgd2luZG93UmVmLnJlcXVlc3RBbmltYXRpb25GcmFtZShjYWxsYmFjayk7XG4gIH1cblxuICBwcml2YXRlIF9ub3coKTogbnVtYmVyIHtcbiAgICBjb25zdCBwZXJmb3JtYW5jZVJlZiA9IHRoaXMuX2Jyb3dzZXIuZG9jdW1lbnQuZGVmYXVsdFZpZXc/LnBlcmZvcm1hbmNlO1xuXG4gICAgcmV0dXJuIHBlcmZvcm1hbmNlUmVmID8gcGVyZm9ybWFuY2VSZWYubm93KCkgOiBEYXRlLm5vdygpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNXaXRoaW5TbGljZUJ1ZGdldChzbGljZVN0YXJ0OiBudW1iZXIpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMuX2Jyb3dzZXIuaXNCcm93c2VyKCkpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9ub3coKSAtIHNsaWNlU3RhcnQgPCBTTElDRV9CVURHRVRfTVM7XG4gIH1cbn1cbiJdfQ==
@@ -8,7 +8,7 @@ let RemoveConnectionFromStore = class RemoveConnectionFromStore {
8
8
  _store = inject(FComponentsStore);
9
9
  handle({ connection }) {
10
10
  this._store.connections.remove(connection);
11
- this._store.dataChanged();
11
+ this._store.emitConnectionChanges();
12
12
  }
13
13
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RemoveConnectionFromStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
14
14
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RemoveConnectionFromStore });
@@ -20,4 +20,4 @@ export { RemoveConnectionFromStore };
20
20
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RemoveConnectionFromStore, decorators: [{
21
21
  type: Injectable
22
22
  }] });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLWNvbm5lY3Rpb24tZnJvbS1zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2YtY29ubmVjdGlvbi9yZW1vdmUtY29ubmVjdGlvbi1mcm9tLXN0b3JlL3JlbW92ZS1jb25uZWN0aW9uLWZyb20tc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzFGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQUkvQyxJQUFNLHlCQUF5QixHQUEvQixNQUFNLHlCQUF5QjtJQUduQixNQUFNLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFFNUMsTUFBTSxDQUFDLEVBQUUsVUFBVSxFQUFvQztRQUM1RCxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDM0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUM1QixDQUFDO3dHQVJVLHlCQUF5Qjs0R0FBekIseUJBQXlCOztBQUF6Qix5QkFBeUI7SUFEckMsa0JBQWtCLENBQUMsZ0NBQWdDLENBQUM7R0FDeEMseUJBQXlCLENBU3JDOzs0RkFUWSx5QkFBeUI7a0JBRnJDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgUmVtb3ZlQ29ubmVjdGlvbkZyb21TdG9yZVJlcXVlc3QgfSBmcm9tICcuL3JlbW92ZS1jb25uZWN0aW9uLWZyb20tc3RvcmUtcmVxdWVzdCc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihSZW1vdmVDb25uZWN0aW9uRnJvbVN0b3JlUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBSZW1vdmVDb25uZWN0aW9uRnJvbVN0b3JlXG4gIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxSZW1vdmVDb25uZWN0aW9uRnJvbVN0b3JlUmVxdWVzdCwgdm9pZD5cbntcbiAgcHJpdmF0ZSByZWFkb25seSBfc3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSk7XG5cbiAgcHVibGljIGhhbmRsZSh7IGNvbm5lY3Rpb24gfTogUmVtb3ZlQ29ubmVjdGlvbkZyb21TdG9yZVJlcXVlc3QpOiB2b2lkIHtcbiAgICB0aGlzLl9zdG9yZS5jb25uZWN0aW9ucy5yZW1vdmUoY29ubmVjdGlvbik7XG4gICAgdGhpcy5fc3RvcmUuZGF0YUNoYW5nZWQoKTtcbiAgfVxufVxuIl19
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLWNvbm5lY3Rpb24tZnJvbS1zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2YtY29ubmVjdGlvbi9yZW1vdmUtY29ubmVjdGlvbi1mcm9tLXN0b3JlL3JlbW92ZS1jb25uZWN0aW9uLWZyb20tc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzFGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQUkvQyxJQUFNLHlCQUF5QixHQUEvQixNQUFNLHlCQUF5QjtJQUluQixNQUFNLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFFNUMsTUFBTSxDQUFDLEVBQUUsVUFBVSxFQUFvQztRQUM1RCxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDM0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBQ3RDLENBQUM7d0dBVFUseUJBQXlCOzRHQUF6Qix5QkFBeUI7O0FBQXpCLHlCQUF5QjtJQURyQyxrQkFBa0IsQ0FBQyxnQ0FBZ0MsQ0FBQztHQUN4Qyx5QkFBeUIsQ0FVckM7OzRGQVZZLHlCQUF5QjtrQkFGckMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBSZW1vdmVDb25uZWN0aW9uRnJvbVN0b3JlUmVxdWVzdCB9IGZyb20gJy4vcmVtb3ZlLWNvbm5lY3Rpb24tZnJvbS1zdG9yZS1yZXF1ZXN0JztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKFJlbW92ZUNvbm5lY3Rpb25Gcm9tU3RvcmVSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIFJlbW92ZUNvbm5lY3Rpb25Gcm9tU3RvcmUgaW1wbGVtZW50cyBJRXhlY3V0aW9uPFxuICBSZW1vdmVDb25uZWN0aW9uRnJvbVN0b3JlUmVxdWVzdCxcbiAgdm9pZFxuPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3N0b3JlID0gaW5qZWN0KEZDb21wb25lbnRzU3RvcmUpO1xuXG4gIHB1YmxpYyBoYW5kbGUoeyBjb25uZWN0aW9uIH06IFJlbW92ZUNvbm5lY3Rpb25Gcm9tU3RvcmVSZXF1ZXN0KTogdm9pZCB7XG4gICAgdGhpcy5fc3RvcmUuY29ubmVjdGlvbnMucmVtb3ZlKGNvbm5lY3Rpb24pO1xuICAgIHRoaXMuX3N0b3JlLmVtaXRDb25uZWN0aW9uQ2hhbmdlcygpO1xuICB9XG59XG4iXX0=
@@ -11,7 +11,7 @@ let RemoveConnectionMarkerFromStore = class RemoveConnectionMarkerFromStore {
11
11
  _store = inject(FComponentsStore);
12
12
  handle({ instance }) {
13
13
  this._store.connectionMarkers.remove(instance);
14
- this._store.countChanged();
14
+ this._store.emitNodeChanges();
15
15
  }
16
16
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RemoveConnectionMarkerFromStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
17
17
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RemoveConnectionMarkerFromStore });
@@ -23,4 +23,4 @@ export { RemoveConnectionMarkerFromStore };
23
23
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RemoveConnectionMarkerFromStore, decorators: [{
24
24
  type: Injectable
25
25
  }] });
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLWNvbm5lY3Rpb24tbWFya2VyLWZyb20tc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLWNvbm5lY3Rpb24vcmVtb3ZlLWNvbm5lY3Rpb24tbWFya2VyLWZyb20tc3RvcmUvcmVtb3ZlLWNvbm5lY3Rpb24tbWFya2VyLWZyb20tc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxzQ0FBc0MsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQUV0RDs7R0FFRztBQUdJLElBQU0sK0JBQStCLEdBQXJDLE1BQU0sK0JBQStCO0lBR3pCLE1BQU0sR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUU1QyxNQUFNLENBQUMsRUFBRSxRQUFRLEVBQTBDO1FBQ2hFLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDN0IsQ0FBQzt3R0FSVSwrQkFBK0I7NEdBQS9CLCtCQUErQjs7QUFBL0IsK0JBQStCO0lBRDNDLGtCQUFrQixDQUFDLHNDQUFzQyxDQUFDO0dBQzlDLCtCQUErQixDQVMzQzs7NEZBVFksK0JBQStCO2tCQUYzQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IFJlbW92ZUNvbm5lY3Rpb25NYXJrZXJGcm9tU3RvcmVSZXF1ZXN0IH0gZnJvbSAnLi9yZW1vdmUtY29ubmVjdGlvbi1tYXJrZXItZnJvbS1zdG9yZS1yZXF1ZXN0JztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuXG4vKipcbiAqIEV4ZWN1dGlvbiB0aGF0IHJlbW92ZXMgYSBjb25uZWN0aW9uIG1hcmtlciBmcm9tIHRoZSBGQ29tcG9uZW50c1N0b3JlLlxuICovXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKFJlbW92ZUNvbm5lY3Rpb25NYXJrZXJGcm9tU3RvcmVSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIFJlbW92ZUNvbm5lY3Rpb25NYXJrZXJGcm9tU3RvcmVcbiAgaW1wbGVtZW50cyBJRXhlY3V0aW9uPFJlbW92ZUNvbm5lY3Rpb25NYXJrZXJGcm9tU3RvcmVSZXF1ZXN0LCB2b2lkPlxue1xuICBwcml2YXRlIHJlYWRvbmx5IF9zdG9yZSA9IGluamVjdChGQ29tcG9uZW50c1N0b3JlKTtcblxuICBwdWJsaWMgaGFuZGxlKHsgaW5zdGFuY2UgfTogUmVtb3ZlQ29ubmVjdGlvbk1hcmtlckZyb21TdG9yZVJlcXVlc3QpOiB2b2lkIHtcbiAgICB0aGlzLl9zdG9yZS5jb25uZWN0aW9uTWFya2Vycy5yZW1vdmUoaW5zdGFuY2UpO1xuICAgIHRoaXMuX3N0b3JlLmNvdW50Q2hhbmdlZCgpO1xuICB9XG59XG4iXX0=
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLWNvbm5lY3Rpb24tbWFya2VyLWZyb20tc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLWNvbm5lY3Rpb24vcmVtb3ZlLWNvbm5lY3Rpb24tbWFya2VyLWZyb20tc3RvcmUvcmVtb3ZlLWNvbm5lY3Rpb24tbWFya2VyLWZyb20tc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxzQ0FBc0MsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQUV0RDs7R0FFRztBQUdJLElBQU0sK0JBQStCLEdBQXJDLE1BQU0sK0JBQStCO0lBSXpCLE1BQU0sR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUU1QyxNQUFNLENBQUMsRUFBRSxRQUFRLEVBQTBDO1FBQ2hFLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDaEMsQ0FBQzt3R0FUVSwrQkFBK0I7NEdBQS9CLCtCQUErQjs7QUFBL0IsK0JBQStCO0lBRDNDLGtCQUFrQixDQUFDLHNDQUFzQyxDQUFDO0dBQzlDLCtCQUErQixDQVUzQzs7NEZBVlksK0JBQStCO2tCQUYzQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IFJlbW92ZUNvbm5lY3Rpb25NYXJrZXJGcm9tU3RvcmVSZXF1ZXN0IH0gZnJvbSAnLi9yZW1vdmUtY29ubmVjdGlvbi1tYXJrZXItZnJvbS1zdG9yZS1yZXF1ZXN0JztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuXG4vKipcbiAqIEV4ZWN1dGlvbiB0aGF0IHJlbW92ZXMgYSBjb25uZWN0aW9uIG1hcmtlciBmcm9tIHRoZSBGQ29tcG9uZW50c1N0b3JlLlxuICovXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKFJlbW92ZUNvbm5lY3Rpb25NYXJrZXJGcm9tU3RvcmVSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIFJlbW92ZUNvbm5lY3Rpb25NYXJrZXJGcm9tU3RvcmUgaW1wbGVtZW50cyBJRXhlY3V0aW9uPFxuICBSZW1vdmVDb25uZWN0aW9uTWFya2VyRnJvbVN0b3JlUmVxdWVzdCxcbiAgdm9pZFxuPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3N0b3JlID0gaW5qZWN0KEZDb21wb25lbnRzU3RvcmUpO1xuXG4gIHB1YmxpYyBoYW5kbGUoeyBpbnN0YW5jZSB9OiBSZW1vdmVDb25uZWN0aW9uTWFya2VyRnJvbVN0b3JlUmVxdWVzdCk6IHZvaWQge1xuICAgIHRoaXMuX3N0b3JlLmNvbm5lY3Rpb25NYXJrZXJzLnJlbW92ZShpbnN0YW5jZSk7XG4gICAgdGhpcy5fc3RvcmUuZW1pdE5vZGVDaGFuZ2VzKCk7XG4gIH1cbn1cbiJdfQ==
@@ -1,14 +1,16 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { inject, Injectable } from '@angular/core';
3
- import { FExecutionRegister } from '@foblex/mediator';
3
+ import { FExecutionRegister, FMediator } from '@foblex/mediator';
4
4
  import { AddConnectorToStoreRequest } from './add-connector-to-store-request';
5
5
  import { FComponentsStore } from '../../../f-storage';
6
+ import { RegisterFCacheConnectorRequest } from '../../../f-cache';
6
7
  import * as i0 from "@angular/core";
7
8
  /**
8
9
  * Execution that adds an InputConnector to the FComponentsStore.
9
10
  */
10
11
  let AddConnectorToStore = class AddConnectorToStore {
11
12
  _store = inject(FComponentsStore);
13
+ _mediator = inject(FMediator);
12
14
  handle({ instance }) {
13
15
  switch (instance.kind) {
14
16
  case 'input':
@@ -26,15 +28,21 @@ let AddConnectorToStore = class AddConnectorToStore {
26
28
  }
27
29
  _addInput(component) {
28
30
  this._store.inputs.add(component);
29
- this._store.countChanged();
31
+ this._store.emitNodeChanges();
32
+ this._geometryRegister(component);
30
33
  }
31
34
  _addOutput(component) {
32
35
  this._store.outputs.add(component);
33
- this._store.countChanged();
36
+ this._store.emitNodeChanges();
37
+ this._geometryRegister(component);
34
38
  }
35
39
  _addOutlet(component) {
36
40
  this._store.outlets.add(component);
37
- this._store.countChanged();
41
+ this._store.emitNodeChanges();
42
+ this._geometryRegister(component);
43
+ }
44
+ _geometryRegister(component) {
45
+ this._mediator.execute(new RegisterFCacheConnectorRequest(component.fId(), component.fNodeId, component.kind, component.hostElement));
38
46
  }
39
47
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AddConnectorToStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
40
48
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AddConnectorToStore });
@@ -46,4 +54,4 @@ export { AddConnectorToStore };
46
54
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AddConnectorToStore, decorators: [{
47
55
  type: Injectable
48
56
  }] });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWNvbm5lY3Rvci10by1zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2YtY29ubmVjdG9ycy9hZGQtY29ubmVjdG9yLXRvLXN0b3JlL2FkZC1jb25uZWN0b3ItdG8tc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQVF0RDs7R0FFRztBQUdJLElBQU0sbUJBQW1CLEdBQXpCLE1BQU0sbUJBQW1CO0lBQ2IsTUFBTSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBRTVDLE1BQU0sQ0FBQyxFQUFFLFFBQVEsRUFBOEI7UUFDcEQsUUFBUSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDdEIsS0FBSyxPQUFPO2dCQUNWLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ3pCLE1BQU07WUFDUixLQUFLLFFBQVE7Z0JBQ1gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDMUIsTUFBTTtZQUNSLEtBQUssUUFBUTtnQkFDWCxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUMxQixNQUFNO1lBQ1I7Z0JBQ0UsTUFBTSxJQUFJLEtBQUssQ0FBQywyQkFBMkIsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFDaEUsQ0FBQztJQUNILENBQUM7SUFFTyxTQUFTLENBQUMsU0FBeUI7UUFDekMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFNBQTJCLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFTyxVQUFVLENBQUMsU0FBeUI7UUFDMUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQTRCLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFTyxVQUFVLENBQUMsU0FBeUI7UUFDMUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQTRCLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzdCLENBQUM7d0dBaENVLG1CQUFtQjs0R0FBbkIsbUJBQW1COztBQUFuQixtQkFBbUI7SUFEL0Isa0JBQWtCLENBQUMsMEJBQTBCLENBQUM7R0FDbEMsbUJBQW1CLENBaUMvQjs7NEZBakNZLG1CQUFtQjtrQkFGL0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBBZGRDb25uZWN0b3JUb1N0b3JlUmVxdWVzdCB9IGZyb20gJy4vYWRkLWNvbm5lY3Rvci10by1zdG9yZS1yZXF1ZXN0JztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHtcbiAgRkNvbm5lY3RvckJhc2UsXG4gIEZOb2RlSW5wdXRCYXNlLFxuICBGTm9kZU91dGxldEJhc2UsXG4gIEZOb2RlT3V0cHV0QmFzZSxcbn0gZnJvbSAnLi4vLi4vLi4vZi1jb25uZWN0b3JzJztcblxuLyoqXG4gKiBFeGVjdXRpb24gdGhhdCBhZGRzIGFuIElucHV0Q29ubmVjdG9yIHRvIHRoZSBGQ29tcG9uZW50c1N0b3JlLlxuICovXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKEFkZENvbm5lY3RvclRvU3RvcmVSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIEFkZENvbm5lY3RvclRvU3RvcmUgaW1wbGVtZW50cyBJRXhlY3V0aW9uPEFkZENvbm5lY3RvclRvU3RvcmVSZXF1ZXN0LCB2b2lkPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3N0b3JlID0gaW5qZWN0KEZDb21wb25lbnRzU3RvcmUpO1xuXG4gIHB1YmxpYyBoYW5kbGUoeyBpbnN0YW5jZSB9OiBBZGRDb25uZWN0b3JUb1N0b3JlUmVxdWVzdCk6IHZvaWQge1xuICAgIHN3aXRjaCAoaW5zdGFuY2Uua2luZCkge1xuICAgICAgY2FzZSAnaW5wdXQnOlxuICAgICAgICB0aGlzLl9hZGRJbnB1dChpbnN0YW5jZSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnb3V0cHV0JzpcbiAgICAgICAgdGhpcy5fYWRkT3V0cHV0KGluc3RhbmNlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdvdXRsZXQnOlxuICAgICAgICB0aGlzLl9hZGRPdXRsZXQoaW5zdGFuY2UpO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBjb25uZWN0b3Iga2luZDogJHtpbnN0YW5jZS5raW5kfWApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2FkZElucHV0KGNvbXBvbmVudDogRkNvbm5lY3RvckJhc2UpOiB2b2lkIHtcbiAgICB0aGlzLl9zdG9yZS5pbnB1dHMuYWRkKGNvbXBvbmVudCBhcyBGTm9kZUlucHV0QmFzZSk7XG4gICAgdGhpcy5fc3RvcmUuY291bnRDaGFuZ2VkKCk7XG4gIH1cblxuICBwcml2YXRlIF9hZGRPdXRwdXQoY29tcG9uZW50OiBGQ29ubmVjdG9yQmFzZSk6IHZvaWQge1xuICAgIHRoaXMuX3N0b3JlLm91dHB1dHMuYWRkKGNvbXBvbmVudCBhcyBGTm9kZU91dHB1dEJhc2UpO1xuICAgIHRoaXMuX3N0b3JlLmNvdW50Q2hhbmdlZCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfYWRkT3V0bGV0KGNvbXBvbmVudDogRkNvbm5lY3RvckJhc2UpOiB2b2lkIHtcbiAgICB0aGlzLl9zdG9yZS5vdXRsZXRzLmFkZChjb21wb25lbnQgYXMgRk5vZGVPdXRsZXRCYXNlKTtcbiAgICB0aGlzLl9zdG9yZS5jb3VudENoYW5nZWQoKTtcbiAgfVxufVxuIl19
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWNvbm5lY3Rvci10by1zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2YtY29ubmVjdG9ycy9hZGQtY29ubmVjdG9yLXRvLXN0b3JlL2FkZC1jb25uZWN0b3ItdG8tc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxTQUFTLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQU90RCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFFbEU7O0dBRUc7QUFHSSxJQUFNLG1CQUFtQixHQUF6QixNQUFNLG1CQUFtQjtJQUNiLE1BQU0sR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNsQyxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRXhDLE1BQU0sQ0FBQyxFQUFFLFFBQVEsRUFBOEI7UUFDcEQsUUFBUSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDdEIsS0FBSyxPQUFPO2dCQUNWLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ3pCLE1BQU07WUFDUixLQUFLLFFBQVE7Z0JBQ1gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDMUIsTUFBTTtZQUNSLEtBQUssUUFBUTtnQkFDWCxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUMxQixNQUFNO1lBQ1I7Z0JBQ0UsTUFBTSxJQUFJLEtBQUssQ0FBQywyQkFBMkIsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFDaEUsQ0FBQztJQUNILENBQUM7SUFFTyxTQUFTLENBQUMsU0FBeUI7UUFDekMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFNBQTJCLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRTlCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRU8sVUFBVSxDQUFDLFNBQXlCO1FBQzFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUE0QixDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUU5QixJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVPLFVBQVUsQ0FBQyxTQUF5QjtRQUMxQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBNEIsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxFQUFFLENBQUM7UUFFOUIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxTQUF5QjtRQUNqRCxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FDcEIsSUFBSSw4QkFBOEIsQ0FDaEMsU0FBUyxDQUFDLEdBQUcsRUFBRSxFQUNmLFNBQVMsQ0FBQyxPQUFPLEVBQ2pCLFNBQVMsQ0FBQyxJQUFJLEVBQ2QsU0FBUyxDQUFDLFdBQVcsQ0FDdEIsQ0FDRixDQUFDO0lBQ0osQ0FBQzt3R0FsRFUsbUJBQW1COzRHQUFuQixtQkFBbUI7O0FBQW5CLG1CQUFtQjtJQUQvQixrQkFBa0IsQ0FBQywwQkFBMEIsQ0FBQztHQUNsQyxtQkFBbUIsQ0FtRC9COzs0RkFuRFksbUJBQW1CO2tCQUYvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgQWRkQ29ubmVjdG9yVG9TdG9yZVJlcXVlc3QgfSBmcm9tICcuL2FkZC1jb25uZWN0b3ItdG8tc3RvcmUtcmVxdWVzdCc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7XG4gIEZDb25uZWN0b3JCYXNlLFxuICBGTm9kZUlucHV0QmFzZSxcbiAgRk5vZGVPdXRsZXRCYXNlLFxuICBGTm9kZU91dHB1dEJhc2UsXG59IGZyb20gJy4uLy4uLy4uL2YtY29ubmVjdG9ycyc7XG5pbXBvcnQgeyBSZWdpc3RlckZDYWNoZUNvbm5lY3RvclJlcXVlc3QgfSBmcm9tICcuLi8uLi8uLi9mLWNhY2hlJztcblxuLyoqXG4gKiBFeGVjdXRpb24gdGhhdCBhZGRzIGFuIElucHV0Q29ubmVjdG9yIHRvIHRoZSBGQ29tcG9uZW50c1N0b3JlLlxuICovXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKEFkZENvbm5lY3RvclRvU3RvcmVSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIEFkZENvbm5lY3RvclRvU3RvcmUgaW1wbGVtZW50cyBJRXhlY3V0aW9uPEFkZENvbm5lY3RvclRvU3RvcmVSZXF1ZXN0LCB2b2lkPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3N0b3JlID0gaW5qZWN0KEZDb21wb25lbnRzU3RvcmUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuXG4gIHB1YmxpYyBoYW5kbGUoeyBpbnN0YW5jZSB9OiBBZGRDb25uZWN0b3JUb1N0b3JlUmVxdWVzdCk6IHZvaWQge1xuICAgIHN3aXRjaCAoaW5zdGFuY2Uua2luZCkge1xuICAgICAgY2FzZSAnaW5wdXQnOlxuICAgICAgICB0aGlzLl9hZGRJbnB1dChpbnN0YW5jZSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnb3V0cHV0JzpcbiAgICAgICAgdGhpcy5fYWRkT3V0cHV0KGluc3RhbmNlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdvdXRsZXQnOlxuICAgICAgICB0aGlzLl9hZGRPdXRsZXQoaW5zdGFuY2UpO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBjb25uZWN0b3Iga2luZDogJHtpbnN0YW5jZS5raW5kfWApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2FkZElucHV0KGNvbXBvbmVudDogRkNvbm5lY3RvckJhc2UpOiB2b2lkIHtcbiAgICB0aGlzLl9zdG9yZS5pbnB1dHMuYWRkKGNvbXBvbmVudCBhcyBGTm9kZUlucHV0QmFzZSk7XG4gICAgdGhpcy5fc3RvcmUuZW1pdE5vZGVDaGFuZ2VzKCk7XG5cbiAgICB0aGlzLl9nZW9tZXRyeVJlZ2lzdGVyKGNvbXBvbmVudCk7XG4gIH1cblxuICBwcml2YXRlIF9hZGRPdXRwdXQoY29tcG9uZW50OiBGQ29ubmVjdG9yQmFzZSk6IHZvaWQge1xuICAgIHRoaXMuX3N0b3JlLm91dHB1dHMuYWRkKGNvbXBvbmVudCBhcyBGTm9kZU91dHB1dEJhc2UpO1xuICAgIHRoaXMuX3N0b3JlLmVtaXROb2RlQ2hhbmdlcygpO1xuXG4gICAgdGhpcy5fZ2VvbWV0cnlSZWdpc3Rlcihjb21wb25lbnQpO1xuICB9XG5cbiAgcHJpdmF0ZSBfYWRkT3V0bGV0KGNvbXBvbmVudDogRkNvbm5lY3RvckJhc2UpOiB2b2lkIHtcbiAgICB0aGlzLl9zdG9yZS5vdXRsZXRzLmFkZChjb21wb25lbnQgYXMgRk5vZGVPdXRsZXRCYXNlKTtcbiAgICB0aGlzLl9zdG9yZS5lbWl0Tm9kZUNoYW5nZXMoKTtcblxuICAgIHRoaXMuX2dlb21ldHJ5UmVnaXN0ZXIoY29tcG9uZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgX2dlb21ldHJ5UmVnaXN0ZXIoY29tcG9uZW50OiBGQ29ubmVjdG9yQmFzZSk6IHZvaWQge1xuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUoXG4gICAgICBuZXcgUmVnaXN0ZXJGQ2FjaGVDb25uZWN0b3JSZXF1ZXN0KFxuICAgICAgICBjb21wb25lbnQuZklkKCksXG4gICAgICAgIGNvbXBvbmVudC5mTm9kZUlkLFxuICAgICAgICBjb21wb25lbnQua2luZCxcbiAgICAgICAgY29tcG9uZW50Lmhvc3RFbGVtZW50LFxuICAgICAgKSxcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,10 @@
1
+ export class FindConnectableConnectorUsingPriorityAndPositionRequest {
2
+ pointerPosition;
3
+ connectableConnectors;
4
+ static fToken = Symbol('FindConnectableConnectorUsingPriorityAndPositionRequest');
5
+ constructor(pointerPosition, connectableConnectors) {
6
+ this.pointerPosition = pointerPosition;
7
+ this.connectableConnectors = connectableConnectors;
8
+ }
9
+ }
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZC1jb25uZWN0YWJsZS1jb25uZWN0b3ItdXNpbmctcHJpb3JpdHktYW5kLXBvc2l0aW9uLXJlcXVlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLWNvbm5lY3RvcnMvZmluZC1jb25uZWN0YWJsZS1jb25uZWN0b3ItdXNpbmctcHJpb3JpdHktYW5kLXBvc2l0aW9uL2ZpbmQtY29ubmVjdGFibGUtY29ubmVjdG9yLXVzaW5nLXByaW9yaXR5LWFuZC1wb3NpdGlvbi1yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sT0FBTyx1REFBdUQ7SUFHekQ7SUFDQTtJQUhULE1BQU0sQ0FBVSxNQUFNLEdBQUcsTUFBTSxDQUFDLHlEQUF5RCxDQUFDLENBQUM7SUFDM0YsWUFDUyxlQUF1QixFQUN2QixxQkFBMEM7UUFEMUMsb0JBQWUsR0FBZixlQUFlLENBQVE7UUFDdkIsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUFxQjtJQUNoRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBJQ29ubmVjdG9yUmVjdFJlZiB9IGZyb20gJy4uL2ktY29ubmVjdG9yLXJlY3QtcmVmJztcblxuZXhwb3J0IGNsYXNzIEZpbmRDb25uZWN0YWJsZUNvbm5lY3RvclVzaW5nUHJpb3JpdHlBbmRQb3NpdGlvblJlcXVlc3Qge1xuICBzdGF0aWMgcmVhZG9ubHkgZlRva2VuID0gU3ltYm9sKCdGaW5kQ29ubmVjdGFibGVDb25uZWN0b3JVc2luZ1ByaW9yaXR5QW5kUG9zaXRpb25SZXF1ZXN0Jyk7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBwb2ludGVyUG9zaXRpb246IElQb2ludCxcbiAgICBwdWJsaWMgY29ubmVjdGFibGVDb25uZWN0b3JzOiBJQ29ubmVjdG9yUmVjdFJlZltdLFxuICApIHt9XG59XG4iXX0=
@@ -0,0 +1,98 @@
1
+ import { __decorate } from "tslib";
2
+ import { RectExtensions } from '@foblex/2d';
3
+ import { FindConnectableConnectorUsingPriorityAndPositionRequest } from './find-connectable-connector-using-priority-and-position-request';
4
+ import { inject, Injectable } from '@angular/core';
5
+ import { BrowserService } from '@foblex/platform';
6
+ import { FExecutionRegister, FMediator } from '@foblex/mediator';
7
+ import { FComponentsStore } from '../../../f-storage';
8
+ import { CalculateClosestConnectorRequest } from '../calculate-closest-connector';
9
+ import { calculatePointerInFlow } from '../../../utils';
10
+ import * as i0 from "@angular/core";
11
+ /**
12
+ * Execution that finds a connectable connector at a given position with priority.
13
+ * It checks for connectors at the position, the closest connector if snap connection is enabled,
14
+ * and the first connectable connector of the node at that position.
15
+ */
16
+ let FindConnectableConnectorUsingPriorityAndPosition = class FindConnectableConnectorUsingPriorityAndPosition {
17
+ _mediator = inject(FMediator);
18
+ _store = inject(FComponentsStore);
19
+ _browser = inject(BrowserService);
20
+ get _transform() {
21
+ return this._store.transform;
22
+ }
23
+ get _flowHost() {
24
+ return this._store.flowHost;
25
+ }
26
+ get _fNodes() {
27
+ return this._store.nodes.getAll();
28
+ }
29
+ get _snapConnection() {
30
+ return this._store.connections.getForSnap();
31
+ }
32
+ handle(payload) {
33
+ const connectors = this._findConnectorAtPosition(payload);
34
+ return connectors.length > 0 ? connectors[0] : undefined;
35
+ }
36
+ _findConnectorAtPosition(request) {
37
+ const result = [];
38
+ result.push(...this._filterConnectorsThatLocatedAtPosition(request));
39
+ // Closest connector is only added if snap connection is enabled and there is a closest connector found
40
+ // Closest connector has more priority than the first connectable input of the node at position
41
+ const closestConnector = this._isSnapConnectionEnabledAndHasClosestConnector(request);
42
+ if (closestConnector) {
43
+ result.unshift(closestConnector.connector);
44
+ }
45
+ const fInput = this._getFirstConnectableConnectorOfNodeAtPosition(request);
46
+ if (fInput) {
47
+ result.push(fInput);
48
+ }
49
+ return result;
50
+ }
51
+ _filterConnectorsThatLocatedAtPosition(request) {
52
+ return request.connectableConnectors
53
+ .filter((x) => {
54
+ return RectExtensions.isIncludePoint(x.rect, this._calculatePointerInFlow(request.pointerPosition));
55
+ })
56
+ .map((x) => x.connector);
57
+ }
58
+ _calculatePointerInFlow(position) {
59
+ return calculatePointerInFlow(position, this._flowHost, this._transform);
60
+ }
61
+ _isSnapConnectionEnabledAndHasClosestConnector(request) {
62
+ if (!this._snapConnection) {
63
+ return undefined;
64
+ }
65
+ const closestConnector = this._mediator.execute(new CalculateClosestConnectorRequest(this._calculatePointerInFlow(request.pointerPosition), request.connectableConnectors));
66
+ return this._isValidClosestInput(closestConnector) ? closestConnector : undefined;
67
+ }
68
+ _isValidClosestInput(closestConnector) {
69
+ return !!closestConnector && closestConnector.distance < this._snapConnection.fSnapThreshold;
70
+ }
71
+ //if node placed in position and fConnectOnNode is true, return the first connectable connector of the node
72
+ _getFirstConnectableConnectorOfNodeAtPosition(request) {
73
+ return this._getElementsFromPoint(request.pointerPosition)
74
+ .map((x) => this._findConnectableNode(x))
75
+ .filter((x) => !!x)
76
+ .map((x) => this._findFirstConnectableConnectorOfNode(request.connectableConnectors, x))
77
+ .find((x) => !!x);
78
+ }
79
+ _getElementsFromPoint(position) {
80
+ return this._browser.document.elementsFromPoint(position.x, position.y);
81
+ }
82
+ _findConnectableNode(element) {
83
+ return this._fNodes.find((x) => x.isContains(element) && x.fConnectOnNode());
84
+ }
85
+ _findFirstConnectableConnectorOfNode(connectableInputs, fNode) {
86
+ return connectableInputs.find((x) => x.connector.fNodeId === fNode.fId())?.connector;
87
+ }
88
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FindConnectableConnectorUsingPriorityAndPosition, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
89
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FindConnectableConnectorUsingPriorityAndPosition });
90
+ };
91
+ FindConnectableConnectorUsingPriorityAndPosition = __decorate([
92
+ FExecutionRegister(FindConnectableConnectorUsingPriorityAndPositionRequest)
93
+ ], FindConnectableConnectorUsingPriorityAndPosition);
94
+ export { FindConnectableConnectorUsingPriorityAndPosition };
95
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FindConnectableConnectorUsingPriorityAndPosition, decorators: [{
96
+ type: Injectable
97
+ }] });
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZC1jb25uZWN0YWJsZS1jb25uZWN0b3ItdXNpbmctcHJpb3JpdHktYW5kLXBvc2l0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1jb25uZWN0b3JzL2ZpbmQtY29ubmVjdGFibGUtY29ubmVjdG9yLXVzaW5nLXByaW9yaXR5LWFuZC1wb3NpdGlvbi9maW5kLWNvbm5lY3RhYmxlLWNvbm5lY3Rvci11c2luZy1wcmlvcml0eS1hbmQtcG9zaXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBMkIsY0FBYyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSx1REFBdUQsRUFBRSxNQUFNLGtFQUFrRSxDQUFDO0FBQzNJLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFHN0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFdEQsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFHbEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBRXhEOzs7O0dBSUc7QUFHSSxJQUFNLGdEQUFnRCxHQUF0RCxNQUFNLGdEQUFnRDtJQUkxQyxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlCLE1BQU0sR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNsQyxRQUFRLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBRW5ELElBQVksVUFBVTtRQUNwQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsU0FB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RCxrQkFBa0IsQ0FBQyx1REFBdUQsQ0FBQztHQUMvRCxnREFBZ0QsQ0FxSDVEOzs0RkFySFksZ0RBQWdEO2tCQUY1RCxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVBvaW50LCBJVHJhbnNmb3JtTW9kZWwsIFJlY3RFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBGaW5kQ29ubmVjdGFibGVDb25uZWN0b3JVc2luZ1ByaW9yaXR5QW5kUG9zaXRpb25SZXF1ZXN0IH0gZnJvbSAnLi9maW5kLWNvbm5lY3RhYmxlLWNvbm5lY3Rvci11c2luZy1wcmlvcml0eS1hbmQtcG9zaXRpb24tcmVxdWVzdCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJyb3dzZXJTZXJ2aWNlIH0gZnJvbSAnQGZvYmxleC9wbGF0Zm9ybSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgRkNvbm5lY3RvckJhc2UgfSBmcm9tICcuLi8uLi8uLi9mLWNvbm5lY3RvcnMnO1xuaW1wb3J0IHsgRk5vZGVCYXNlIH0gZnJvbSAnLi4vLi4vLi4vZi1ub2RlJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgSUNsb3Nlc3RDb25uZWN0b3JSZWYgfSBmcm9tICcuLi9pLWNsb3Nlc3QtY29ubmVjdG9yLXJlZic7XG5pbXBvcnQgeyBDYWxjdWxhdGVDbG9zZXN0Q29ubmVjdG9yUmVxdWVzdCB9IGZyb20gJy4uL2NhbGN1bGF0ZS1jbG9zZXN0LWNvbm5lY3Rvcic7XG5pbXBvcnQgeyBGU25hcENvbm5lY3Rpb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9mLWNvbm5lY3Rpb24nO1xuaW1wb3J0IHsgSUNvbm5lY3RvclJlY3RSZWYgfSBmcm9tICcuLi9pLWNvbm5lY3Rvci1yZWN0LXJlZic7XG5pbXBvcnQgeyBjYWxjdWxhdGVQb2ludGVySW5GbG93IH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xuXG4vKipcbiAqIEV4ZWN1dGlvbiB0aGF0IGZpbmRzIGEgY29ubmVjdGFibGUgY29ubmVjdG9yIGF0IGEgZ2l2ZW4gcG9zaXRpb24gd2l0aCBwcmlvcml0eS5cbiAqIEl0IGNoZWNrcyBmb3IgY29ubmVjdG9ycyBhdCB0aGUgcG9zaXRpb24sIHRoZSBjbG9zZXN0IGNvbm5lY3RvciBpZiBzbmFwIGNvbm5lY3Rpb24gaXMgZW5hYmxlZCxcbiAqIGFuZCB0aGUgZmlyc3QgY29ubmVjdGFibGUgY29ubmVjdG9yIG9mIHRoZSBub2RlIGF0IHRoYXQgcG9zaXRpb24uXG4gKi9cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoRmluZENvbm5lY3RhYmxlQ29ubmVjdG9yVXNpbmdQcmlvcml0eUFuZFBvc2l0aW9uUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBGaW5kQ29ubmVjdGFibGVDb25uZWN0b3JVc2luZ1ByaW9yaXR5QW5kUG9zaXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPFxuICBGaW5kQ29ubmVjdGFibGVDb25uZWN0b3JVc2luZ1ByaW9yaXR5QW5kUG9zaXRpb25SZXF1ZXN0LFxuICBGQ29ubmVjdG9yQmFzZSB8IHVuZGVmaW5lZFxuPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX21lZGlhdG9yID0gaW5qZWN0KEZNZWRpYXRvcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3N0b3JlID0gaW5qZWN0KEZDb21wb25lbnRzU3RvcmUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9icm93c2VyID0gaW5qZWN0KEJyb3dzZXJTZXJ2aWNlKTtcblxuICBwcml2YXRlIGdldCBfdHJhbnNmb3JtKCk6IElUcmFuc2Zvcm1Nb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuX3N0b3JlLnRyYW5zZm9ybTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF9mbG93SG9zdCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuX3N0b3JlLmZsb3dIb3N0O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgX2ZOb2RlcygpOiBGTm9kZUJhc2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuX3N0b3JlLm5vZGVzLmdldEFsbCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgX3NuYXBDb25uZWN0aW9uKCk6IEZTbmFwQ29ubmVjdGlvbkNvbXBvbmVudCB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX3N0b3JlLmNvbm5lY3Rpb25zLmdldEZvclNuYXAoKTtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUoXG4gICAgcGF5bG9hZDogRmluZENvbm5lY3RhYmxlQ29ubmVjdG9yVXNpbmdQcmlvcml0eUFuZFBvc2l0aW9uUmVxdWVzdCxcbiAgKTogRkNvbm5lY3RvckJhc2UgfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IGNvbm5lY3RvcnMgPSB0aGlzLl9maW5kQ29ubmVjdG9yQXRQb3NpdGlvbihwYXlsb2FkKTtcblxuICAgIHJldHVybiBjb25uZWN0b3JzLmxlbmd0aCA+IDAgPyBjb25uZWN0b3JzWzBdIDogdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJpdmF0ZSBfZmluZENvbm5lY3RvckF0UG9zaXRpb24oXG4gICAgcmVxdWVzdDogRmluZENvbm5lY3RhYmxlQ29ubmVjdG9yVXNpbmdQcmlvcml0eUFuZFBvc2l0aW9uUmVxdWVzdCxcbiAgKTogRkNvbm5lY3RvckJhc2VbXSB7XG4gICAgY29uc3QgcmVzdWx0OiBGQ29ubmVjdG9yQmFzZVtdID0gW107XG5cbiAgICByZXN1bHQucHVzaCguLi50aGlzLl9maWx0ZXJDb25uZWN0b3JzVGhhdExvY2F0ZWRBdFBvc2l0aW9uKHJlcXVlc3QpKTtcblxuICAgIC8vIENsb3Nlc3QgY29ubmVjdG9yIGlzIG9ubHkgYWRkZWQgaWYgc25hcCBjb25uZWN0aW9uIGlzIGVuYWJsZWQgYW5kIHRoZXJlIGlzIGEgY2xvc2VzdCBjb25uZWN0b3IgZm91bmRcbiAgICAvLyBDbG9zZXN0IGNvbm5lY3RvciBoYXMgbW9yZSBwcmlvcml0eSB0aGFuIHRoZSBmaXJzdCBjb25uZWN0YWJsZSBpbnB1dCBvZiB0aGUgbm9kZSBhdCBwb3NpdGlvblxuICAgIGNvbnN0IGNsb3Nlc3RDb25uZWN0b3IgPSB0aGlzLl9pc1NuYXBDb25uZWN0aW9uRW5hYmxlZEFuZEhhc0Nsb3Nlc3RDb25uZWN0b3IocmVxdWVzdCk7XG4gICAgaWYgKGNsb3Nlc3RDb25uZWN0b3IpIHtcbiAgICAgIHJlc3VsdC51bnNoaWZ0KGNsb3Nlc3RDb25uZWN0b3IuY29ubmVjdG9yKTtcbiAgICB9XG5cbiAgICBjb25zdCBmSW5wdXQgPSB0aGlzLl9nZXRGaXJzdENvbm5lY3RhYmxlQ29ubmVjdG9yT2ZOb2RlQXRQb3NpdGlvbihyZXF1ZXN0KTtcbiAgICBpZiAoZklucHV0KSB7XG4gICAgICByZXN1bHQucHVzaChmSW5wdXQpO1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBwcml2YXRlIF9maWx0ZXJDb25uZWN0b3JzVGhhdExvY2F0ZWRBdFBvc2l0aW9uKFxuICAgIHJlcXVlc3Q6IEZpbmRDb25uZWN0YWJsZUNvbm5lY3RvclVzaW5nUHJpb3JpdHlBbmRQb3NpdGlvblJlcXVlc3QsXG4gICk6IEZDb25uZWN0b3JCYXNlW10ge1xuICAgIHJldHVybiByZXF1ZXN0LmNvbm5lY3RhYmxlQ29ubmVjdG9yc1xuICAgICAgLmZpbHRlcigoeCkgPT4ge1xuICAgICAgICByZXR1cm4gUmVjdEV4dGVuc2lvbnMuaXNJbmNsdWRlUG9pbnQoXG4gICAgICAgICAgeC5yZWN0LFxuICAgICAgICAgIHRoaXMuX2NhbGN1bGF0ZVBvaW50ZXJJbkZsb3cocmVxdWVzdC5wb2ludGVyUG9zaXRpb24pLFxuICAgICAgICApO1xuICAgICAgfSlcbiAgICAgIC5tYXAoKHgpID0+IHguY29ubmVjdG9yKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NhbGN1bGF0ZVBvaW50ZXJJbkZsb3cocG9zaXRpb246IElQb2ludCk6IElQb2ludCB7XG4gICAgcmV0dXJuIGNhbGN1bGF0ZVBvaW50ZXJJbkZsb3cocG9zaXRpb24sIHRoaXMuX2Zsb3dIb3N0LCB0aGlzLl90cmFuc2Zvcm0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNTbmFwQ29ubmVjdGlvbkVuYWJsZWRBbmRIYXNDbG9zZXN0Q29ubmVjdG9yKFxuICAgIHJlcXVlc3Q6IEZpbmRDb25uZWN0YWJsZUNvbm5lY3RvclVzaW5nUHJpb3JpdHlBbmRQb3NpdGlvblJlcXVlc3QsXG4gICk6IElDbG9zZXN0Q29ubmVjdG9yUmVmIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoIXRoaXMuX3NuYXBDb25uZWN0aW9uKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGNvbnN0IGNsb3Nlc3RDb25uZWN0b3IgPSB0aGlzLl9tZWRpYXRvci5leGVjdXRlPElDbG9zZXN0Q29ubmVjdG9yUmVmIHwgdW5kZWZpbmVkPihcbiAgICAgIG5ldyBDYWxjdWxhdGVDbG9zZXN0Q29ubmVjdG9yUmVxdWVzdChcbiAgICAgICAgdGhpcy5fY2FsY3VsYXRlUG9pbnRlckluRmxvdyhyZXF1ZXN0LnBvaW50ZXJQb3NpdGlvbiksXG4gICAgICAgIHJlcXVlc3QuY29ubmVjdGFibGVDb25uZWN0b3JzLFxuICAgICAgKSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHRoaXMuX2lzVmFsaWRDbG9zZXN0SW5wdXQoY2xvc2VzdENvbm5lY3RvcikgPyBjbG9zZXN0Q29ubmVjdG9yIDogdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNWYWxpZENsb3Nlc3RJbnB1dChjbG9zZXN0Q29ubmVjdG9yOiBJQ2xvc2VzdENvbm5lY3RvclJlZiB8IHVuZGVmaW5lZCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIWNsb3Nlc3RDb25uZWN0b3IgJiYgY2xvc2VzdENvbm5lY3Rvci5kaXN0YW5jZSA8IHRoaXMuX3NuYXBDb25uZWN0aW9uIS5mU25hcFRocmVzaG9sZDtcbiAgfVxuXG4gIC8vaWYgbm9kZSBwbGFjZWQgaW4gcG9zaXRpb24gYW5kIGZDb25uZWN0T25Ob2RlIGlzIHRydWUsIHJldHVybiB0aGUgZmlyc3QgY29ubmVjdGFibGUgY29ubmVjdG9yIG9mIHRoZSBub2RlXG4gIHByaXZhdGUgX2dldEZpcnN0Q29ubmVjdGFibGVDb25uZWN0b3JPZk5vZGVBdFBvc2l0aW9uKFxuICAgIHJlcXVlc3Q6IEZpbmRDb25uZWN0YWJsZUNvbm5lY3RvclVzaW5nUHJpb3JpdHlBbmRQb3NpdGlvblJlcXVlc3QsXG4gICk6IEZDb25uZWN0b3JCYXNlIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fZ2V0RWxlbWVudHNGcm9tUG9pbnQocmVxdWVzdC5wb2ludGVyUG9zaXRpb24pXG4gICAgICAubWFwKCh4KSA9PiB0aGlzLl9maW5kQ29ubmVjdGFibGVOb2RlKHgpKVxuICAgICAgLmZpbHRlcigoeCkgPT4gISF4KVxuICAgICAgLm1hcCgoeCkgPT4gdGhpcy5fZmluZEZpcnN0Q29ubmVjdGFibGVDb25uZWN0b3JPZk5vZGUocmVxdWVzdC5jb25uZWN0YWJsZUNvbm5lY3RvcnMsIHgpKVxuICAgICAgLmZpbmQoKHgpID0+ICEheCk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRFbGVtZW50c0Zyb21Qb2ludChwb3NpdGlvbjogSVBvaW50KTogSFRNTEVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2Jyb3dzZXIuZG9jdW1lbnQuZWxlbWVudHNGcm9tUG9pbnQocG9zaXRpb24ueCwgcG9zaXRpb24ueSkgYXMgSFRNTEVsZW1lbnRbXTtcbiAgfVxuXG4gIHByaXZhdGUgX2ZpbmRDb25uZWN0YWJsZU5vZGUoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBGTm9kZUJhc2UgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9mTm9kZXMuZmluZCgoeCkgPT4geC5pc0NvbnRhaW5zKGVsZW1lbnQpICYmIHguZkNvbm5lY3RPbk5vZGUoKSk7XG4gIH1cblxuICBwcml2YXRlIF9maW5kRmlyc3RDb25uZWN0YWJsZUNvbm5lY3Rvck9mTm9kZShcbiAgICBjb25uZWN0YWJsZUlucHV0czogSUNvbm5lY3RvclJlY3RSZWZbXSxcbiAgICBmTm9kZTogRk5vZGVCYXNlLFxuICApOiBGQ29ubmVjdG9yQmFzZSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIGNvbm5lY3RhYmxlSW5wdXRzLmZpbmQoKHgpID0+IHguY29ubmVjdG9yLmZOb2RlSWQgPT09IGZOb2RlLmZJZCgpKT8uY29ubmVjdG9yO1xuICB9XG59XG4iXX0=
@@ -1,3 +1,3 @@
1
- export * from './find-connectable-connector-using-priority-and-position.request';
2
- export * from './find-connectable-connector-using-priority-and-position.execution';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLWNvbm5lY3RvcnMvZmluZC1jb25uZWN0YWJsZS1jb25uZWN0b3ItdXNpbmctcHJpb3JpdHktYW5kLXBvc2l0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0VBQWtFLENBQUM7QUFFakYsY0FBYyxvRUFBb0UsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZmluZC1jb25uZWN0YWJsZS1jb25uZWN0b3ItdXNpbmctcHJpb3JpdHktYW5kLXBvc2l0aW9uLnJlcXVlc3QnO1xuXG5leHBvcnQgKiBmcm9tICcuL2ZpbmQtY29ubmVjdGFibGUtY29ubmVjdG9yLXVzaW5nLXByaW9yaXR5LWFuZC1wb3NpdGlvbi5leGVjdXRpb24nO1xuIl19
1
+ export * from './find-connectable-connector-using-priority-and-position-request';
2
+ export * from './find-connectable-connector-using-priority-and-position';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLWNvbm5lY3RvcnMvZmluZC1jb25uZWN0YWJsZS1jb25uZWN0b3ItdXNpbmctcHJpb3JpdHktYW5kLXBvc2l0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0VBQWtFLENBQUM7QUFFakYsY0FBYywwREFBMEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZmluZC1jb25uZWN0YWJsZS1jb25uZWN0b3ItdXNpbmctcHJpb3JpdHktYW5kLXBvc2l0aW9uLXJlcXVlc3QnO1xuXG5leHBvcnQgKiBmcm9tICcuL2ZpbmQtY29ubmVjdGFibGUtY29ubmVjdG9yLXVzaW5nLXByaW9yaXR5LWFuZC1wb3NpdGlvbic7XG4iXX0=
@@ -28,4 +28,4 @@ export { GetConnectorRectReference };
28
28
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GetConnectorRectReference, decorators: [{
29
29
  type: Injectable
30
30
  }] });
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWNvbm5lY3Rvci1yZWN0LXJlZmVyZW5jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2YtY29ubmVjdG9ycy9nZXQtY29ubmVjdG9yLXJlY3QtcmVmZXJlbmNlL2dldC1jb25uZWN0b3ItcmVjdC1yZWZlcmVuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxTQUFTLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUkxRixPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7QUFFeEY7O0dBRUc7QUFHSSxJQUFNLHlCQUF5QixHQUEvQixNQUFNLHlCQUF5QjtJQUduQixTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRXhDLE1BQU0sQ0FBQyxFQUFFLFNBQVMsRUFBb0M7UUFDM0QsT0FBTztZQUNMLFNBQVM7WUFDVCxJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUM7U0FDL0IsQ0FBQztJQUNKLENBQUM7SUFFTyxRQUFRLENBQUMsQ0FBaUI7UUFDaEMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FDM0IsSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQ3JELENBQUM7SUFDSixDQUFDO3dHQWhCVSx5QkFBeUI7NEdBQXpCLHlCQUF5Qjs7QUFBekIseUJBQXlCO0lBRHJDLGtCQUFrQixDQUFDLGdDQUFnQyxDQUFDO0dBQ3hDLHlCQUF5QixDQWlCckM7OzRGQWpCWSx5QkFBeUI7a0JBRnJDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBHZXRDb25uZWN0b3JSZWN0UmVmZXJlbmNlUmVxdWVzdCB9IGZyb20gJy4vZ2V0LWNvbm5lY3Rvci1yZWN0LXJlZmVyZW5jZS1yZXF1ZXN0JztcbmltcG9ydCB7IElSb3VuZGVkUmVjdCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgSUNvbm5lY3RvclJlY3RSZWYgfSBmcm9tICcuLi9pLWNvbm5lY3Rvci1yZWN0LXJlZic7XG5pbXBvcnQgeyBGQ29ubmVjdG9yQmFzZSB9IGZyb20gJy4uLy4uLy4uL2YtY29ubmVjdG9ycyc7XG5pbXBvcnQgeyBHZXROb3JtYWxpemVkQ29ubmVjdG9yUmVjdFJlcXVlc3QgfSBmcm9tICcuLi8uLi9nZXQtbm9ybWFsaXplZC1jb25uZWN0b3ItcmVjdCc7XG5cbi8qKlxuICogUmV0dXJucyBhIGNvbm5lY3RvciArIGl0cyBub3JtYWxpemVkIHJvdW5kZWQgcmVjdC5cbiAqL1xuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihHZXRDb25uZWN0b3JSZWN0UmVmZXJlbmNlUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBHZXRDb25uZWN0b3JSZWN0UmVmZXJlbmNlXG4gIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxHZXRDb25uZWN0b3JSZWN0UmVmZXJlbmNlUmVxdWVzdCwgSUNvbm5lY3RvclJlY3RSZWY+XG57XG4gIHByaXZhdGUgcmVhZG9ubHkgX21lZGlhdG9yID0gaW5qZWN0KEZNZWRpYXRvcik7XG5cbiAgcHVibGljIGhhbmRsZSh7IGNvbm5lY3RvciB9OiBHZXRDb25uZWN0b3JSZWN0UmVmZXJlbmNlUmVxdWVzdCk6IElDb25uZWN0b3JSZWN0UmVmIHtcbiAgICByZXR1cm4ge1xuICAgICAgY29ubmVjdG9yLFxuICAgICAgcmVjdDogdGhpcy5fZ2V0UmVjdChjb25uZWN0b3IpLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIF9nZXRSZWN0KHg6IEZDb25uZWN0b3JCYXNlKTogSVJvdW5kZWRSZWN0IHtcbiAgICByZXR1cm4gdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTxJUm91bmRlZFJlY3Q+KFxuICAgICAgbmV3IEdldE5vcm1hbGl6ZWRDb25uZWN0b3JSZWN0UmVxdWVzdCh4Lmhvc3RFbGVtZW50KSxcbiAgICApO1xuICB9XG59XG4iXX0=
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWNvbm5lY3Rvci1yZWN0LXJlZmVyZW5jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2YtY29ubmVjdG9ycy9nZXQtY29ubmVjdG9yLXJlY3QtcmVmZXJlbmNlL2dldC1jb25uZWN0b3ItcmVjdC1yZWZlcmVuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxTQUFTLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUkxRixPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7QUFFeEY7O0dBRUc7QUFHSSxJQUFNLHlCQUF5QixHQUEvQixNQUFNLHlCQUF5QjtJQUluQixTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRXhDLE1BQU0sQ0FBQyxFQUFFLFNBQVMsRUFBb0M7UUFDM0QsT0FBTztZQUNMLFNBQVM7WUFDVCxJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUM7U0FDL0IsQ0FBQztJQUNKLENBQUM7SUFFTyxRQUFRLENBQUMsQ0FBaUI7UUFDaEMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FDM0IsSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQ3JELENBQUM7SUFDSixDQUFDO3dHQWpCVSx5QkFBeUI7NEdBQXpCLHlCQUF5Qjs7QUFBekIseUJBQXlCO0lBRHJDLGtCQUFrQixDQUFDLGdDQUFnQyxDQUFDO0dBQ3hDLHlCQUF5QixDQWtCckM7OzRGQWxCWSx5QkFBeUI7a0JBRnJDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBHZXRDb25uZWN0b3JSZWN0UmVmZXJlbmNlUmVxdWVzdCB9IGZyb20gJy4vZ2V0LWNvbm5lY3Rvci1yZWN0LXJlZmVyZW5jZS1yZXF1ZXN0JztcbmltcG9ydCB7IElSb3VuZGVkUmVjdCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgSUNvbm5lY3RvclJlY3RSZWYgfSBmcm9tICcuLi9pLWNvbm5lY3Rvci1yZWN0LXJlZic7XG5pbXBvcnQgeyBGQ29ubmVjdG9yQmFzZSB9IGZyb20gJy4uLy4uLy4uL2YtY29ubmVjdG9ycyc7XG5pbXBvcnQgeyBHZXROb3JtYWxpemVkQ29ubmVjdG9yUmVjdFJlcXVlc3QgfSBmcm9tICcuLi8uLi9nZXQtbm9ybWFsaXplZC1jb25uZWN0b3ItcmVjdCc7XG5cbi8qKlxuICogUmV0dXJucyBhIGNvbm5lY3RvciArIGl0cyBub3JtYWxpemVkIHJvdW5kZWQgcmVjdC5cbiAqL1xuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihHZXRDb25uZWN0b3JSZWN0UmVmZXJlbmNlUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBHZXRDb25uZWN0b3JSZWN0UmVmZXJlbmNlIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxcbiAgR2V0Q29ubmVjdG9yUmVjdFJlZmVyZW5jZVJlcXVlc3QsXG4gIElDb25uZWN0b3JSZWN0UmVmXG4+IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfbWVkaWF0b3IgPSBpbmplY3QoRk1lZGlhdG9yKTtcblxuICBwdWJsaWMgaGFuZGxlKHsgY29ubmVjdG9yIH06IEdldENvbm5lY3RvclJlY3RSZWZlcmVuY2VSZXF1ZXN0KTogSUNvbm5lY3RvclJlY3RSZWYge1xuICAgIHJldHVybiB7XG4gICAgICBjb25uZWN0b3IsXG4gICAgICByZWN0OiB0aGlzLl9nZXRSZWN0KGNvbm5lY3RvciksXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldFJlY3QoeDogRkNvbm5lY3RvckJhc2UpOiBJUm91bmRlZFJlY3Qge1xuICAgIHJldHVybiB0aGlzLl9tZWRpYXRvci5leGVjdXRlPElSb3VuZGVkUmVjdD4oXG4gICAgICBuZXcgR2V0Tm9ybWFsaXplZENvbm5lY3RvclJlY3RSZXF1ZXN0KHguaG9zdEVsZW1lbnQpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -4,7 +4,7 @@ import { CalculateTargetConnectorsToConnect } from './calculate-target-connector
4
4
  import { GetConnectorRectReference } from './get-connector-rect-reference';
5
5
  import { CalculateClosestConnector } from './calculate-closest-connector';
6
6
  import { CalculateSourceConnectorsToConnect } from './calculate-source-connectors-to-connect';
7
- import { FindConnectableConnectorUsingPriorityAndPositionExecution } from './find-connectable-connector-using-priority-and-position';
7
+ import { FindConnectableConnectorUsingPriorityAndPosition } from './find-connectable-connector-using-priority-and-position';
8
8
  import { AddConnectorToStore } from './add-connector-to-store';
9
9
  import { RemoveConnectorFromStore } from './remove-connector-from-store';
10
10
  /*
@@ -14,11 +14,11 @@ export const F_CONNECTORS_FEATURES = [
14
14
  AddConnectorToStore,
15
15
  RemoveConnectorFromStore,
16
16
  CalculateClosestConnector,
17
- FindConnectableConnectorUsingPriorityAndPositionExecution,
17
+ FindConnectableConnectorUsingPriorityAndPosition,
18
18
  CalculateSourceConnectorsToConnect,
19
19
  CalculateTargetConnectorsToConnect,
20
20
  GetConnectorRectReference,
21
21
  MarkConnectableConnectors,
22
22
  UnmarkConnectableConnectors,
23
23
  ];
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1jb25uZWN0b3JzL3Byb3ZpZGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM5RixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM5RixPQUFPLEVBQUUseURBQXlELEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUNySSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RTs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHO0lBQ25DLG1CQUFtQjtJQUVuQix3QkFBd0I7SUFFeEIseUJBQXlCO0lBRXpCLHlEQUF5RDtJQUV6RCxrQ0FBa0M7SUFFbEMsa0NBQWtDO0lBRWxDLHlCQUF5QjtJQUV6Qix5QkFBeUI7SUFFekIsMkJBQTJCO0NBQzVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNYXJrQ29ubmVjdGFibGVDb25uZWN0b3JzIH0gZnJvbSAnLi9tYXJrLWNvbm5lY3RhYmxlLWNvbm5lY3RvcnMnO1xuaW1wb3J0IHsgVW5tYXJrQ29ubmVjdGFibGVDb25uZWN0b3JzIH0gZnJvbSAnLi91bm1hcmstY29ubmVjdGFibGUtY29ubmVjdG9ycyc7XG5pbXBvcnQgeyBDYWxjdWxhdGVUYXJnZXRDb25uZWN0b3JzVG9Db25uZWN0IH0gZnJvbSAnLi9jYWxjdWxhdGUtdGFyZ2V0LWNvbm5lY3RvcnMtdG8tY29ubmVjdCc7XG5pbXBvcnQgeyBHZXRDb25uZWN0b3JSZWN0UmVmZXJlbmNlIH0gZnJvbSAnLi9nZXQtY29ubmVjdG9yLXJlY3QtcmVmZXJlbmNlJztcbmltcG9ydCB7IENhbGN1bGF0ZUNsb3Nlc3RDb25uZWN0b3IgfSBmcm9tICcuL2NhbGN1bGF0ZS1jbG9zZXN0LWNvbm5lY3Rvcic7XG5pbXBvcnQgeyBDYWxjdWxhdGVTb3VyY2VDb25uZWN0b3JzVG9Db25uZWN0IH0gZnJvbSAnLi9jYWxjdWxhdGUtc291cmNlLWNvbm5lY3RvcnMtdG8tY29ubmVjdCc7XG5pbXBvcnQgeyBGaW5kQ29ubmVjdGFibGVDb25uZWN0b3JVc2luZ1ByaW9yaXR5QW5kUG9zaXRpb25FeGVjdXRpb24gfSBmcm9tICcuL2ZpbmQtY29ubmVjdGFibGUtY29ubmVjdG9yLXVzaW5nLXByaW9yaXR5LWFuZC1wb3NpdGlvbic7XG5pbXBvcnQgeyBBZGRDb25uZWN0b3JUb1N0b3JlIH0gZnJvbSAnLi9hZGQtY29ubmVjdG9yLXRvLXN0b3JlJztcbmltcG9ydCB7IFJlbW92ZUNvbm5lY3RvckZyb21TdG9yZSB9IGZyb20gJy4vcmVtb3ZlLWNvbm5lY3Rvci1mcm9tLXN0b3JlJztcbi8qXG4gKiBUaGlzIGZpbGUgZXhwb3J0cyBhbGwgdGhlIGNvbm5lY3Rvci1yZWxhdGVkIGV4ZWN1dGlvbnMgdGhhdCBjYW4gYmUgdXNlZCBpbiB0aGUgRkZsb3cgZG9tYWluLlxuICovXG5leHBvcnQgY29uc3QgRl9DT05ORUNUT1JTX0ZFQVRVUkVTID0gW1xuICBBZGRDb25uZWN0b3JUb1N0b3JlLFxuXG4gIFJlbW92ZUNvbm5lY3RvckZyb21TdG9yZSxcblxuICBDYWxjdWxhdGVDbG9zZXN0Q29ubmVjdG9yLFxuXG4gIEZpbmRDb25uZWN0YWJsZUNvbm5lY3RvclVzaW5nUHJpb3JpdHlBbmRQb3NpdGlvbkV4ZWN1dGlvbixcblxuICBDYWxjdWxhdGVTb3VyY2VDb25uZWN0b3JzVG9Db25uZWN0LFxuXG4gIENhbGN1bGF0ZVRhcmdldENvbm5lY3RvcnNUb0Nvbm5lY3QsXG5cbiAgR2V0Q29ubmVjdG9yUmVjdFJlZmVyZW5jZSxcblxuICBNYXJrQ29ubmVjdGFibGVDb25uZWN0b3JzLFxuXG4gIFVubWFya0Nvbm5lY3RhYmxlQ29ubmVjdG9ycyxcbl07XG4iXX0=
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1jb25uZWN0b3JzL3Byb3ZpZGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM5RixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM5RixPQUFPLEVBQUUsZ0RBQWdELEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUM1SCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RTs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHO0lBQ25DLG1CQUFtQjtJQUVuQix3QkFBd0I7SUFFeEIseUJBQXlCO0lBRXpCLGdEQUFnRDtJQUVoRCxrQ0FBa0M7SUFFbEMsa0NBQWtDO0lBRWxDLHlCQUF5QjtJQUV6Qix5QkFBeUI7SUFFekIsMkJBQTJCO0NBQzVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNYXJrQ29ubmVjdGFibGVDb25uZWN0b3JzIH0gZnJvbSAnLi9tYXJrLWNvbm5lY3RhYmxlLWNvbm5lY3RvcnMnO1xuaW1wb3J0IHsgVW5tYXJrQ29ubmVjdGFibGVDb25uZWN0b3JzIH0gZnJvbSAnLi91bm1hcmstY29ubmVjdGFibGUtY29ubmVjdG9ycyc7XG5pbXBvcnQgeyBDYWxjdWxhdGVUYXJnZXRDb25uZWN0b3JzVG9Db25uZWN0IH0gZnJvbSAnLi9jYWxjdWxhdGUtdGFyZ2V0LWNvbm5lY3RvcnMtdG8tY29ubmVjdCc7XG5pbXBvcnQgeyBHZXRDb25uZWN0b3JSZWN0UmVmZXJlbmNlIH0gZnJvbSAnLi9nZXQtY29ubmVjdG9yLXJlY3QtcmVmZXJlbmNlJztcbmltcG9ydCB7IENhbGN1bGF0ZUNsb3Nlc3RDb25uZWN0b3IgfSBmcm9tICcuL2NhbGN1bGF0ZS1jbG9zZXN0LWNvbm5lY3Rvcic7XG5pbXBvcnQgeyBDYWxjdWxhdGVTb3VyY2VDb25uZWN0b3JzVG9Db25uZWN0IH0gZnJvbSAnLi9jYWxjdWxhdGUtc291cmNlLWNvbm5lY3RvcnMtdG8tY29ubmVjdCc7XG5pbXBvcnQgeyBGaW5kQ29ubmVjdGFibGVDb25uZWN0b3JVc2luZ1ByaW9yaXR5QW5kUG9zaXRpb24gfSBmcm9tICcuL2ZpbmQtY29ubmVjdGFibGUtY29ubmVjdG9yLXVzaW5nLXByaW9yaXR5LWFuZC1wb3NpdGlvbic7XG5pbXBvcnQgeyBBZGRDb25uZWN0b3JUb1N0b3JlIH0gZnJvbSAnLi9hZGQtY29ubmVjdG9yLXRvLXN0b3JlJztcbmltcG9ydCB7IFJlbW92ZUNvbm5lY3RvckZyb21TdG9yZSB9IGZyb20gJy4vcmVtb3ZlLWNvbm5lY3Rvci1mcm9tLXN0b3JlJztcbi8qXG4gKiBUaGlzIGZpbGUgZXhwb3J0cyBhbGwgdGhlIGNvbm5lY3Rvci1yZWxhdGVkIGV4ZWN1dGlvbnMgdGhhdCBjYW4gYmUgdXNlZCBpbiB0aGUgRkZsb3cgZG9tYWluLlxuICovXG5leHBvcnQgY29uc3QgRl9DT05ORUNUT1JTX0ZFQVRVUkVTID0gW1xuICBBZGRDb25uZWN0b3JUb1N0b3JlLFxuXG4gIFJlbW92ZUNvbm5lY3RvckZyb21TdG9yZSxcblxuICBDYWxjdWxhdGVDbG9zZXN0Q29ubmVjdG9yLFxuXG4gIEZpbmRDb25uZWN0YWJsZUNvbm5lY3RvclVzaW5nUHJpb3JpdHlBbmRQb3NpdGlvbixcblxuICBDYWxjdWxhdGVTb3VyY2VDb25uZWN0b3JzVG9Db25uZWN0LFxuXG4gIENhbGN1bGF0ZVRhcmdldENvbm5lY3RvcnNUb0Nvbm5lY3QsXG5cbiAgR2V0Q29ubmVjdG9yUmVjdFJlZmVyZW5jZSxcblxuICBNYXJrQ29ubmVjdGFibGVDb25uZWN0b3JzLFxuXG4gIFVubWFya0Nvbm5lY3RhYmxlQ29ubmVjdG9ycyxcbl07XG4iXX0=