@foblex/flow 17.7.0 → 17.8.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 (725) hide show
  1. package/domain/css-cls.d.ts +4 -0
  2. package/domain/f-background/add-pattern-to-background/add-pattern-to-background.execution.d.ts +2 -2
  3. package/domain/f-background/remove-background-from-store/remove-background-from-store.execution.d.ts +1 -1
  4. package/domain/f-connectors/add-outlet-to-store/add-outlet-to-store.execution.d.ts +1 -1
  5. package/domain/f-connectors/add-output-to-store/add-output-to-store.execution.d.ts +1 -1
  6. package/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.execution.d.ts +1 -1
  7. package/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/get-all-can-be-connected-source-connectors-and-rects.execution.d.ts +1 -1
  8. package/domain/f-draggable/emit-selection-change-event/emit-selection-change-event.execution.d.ts +1 -1
  9. package/domain/f-draggable/end-drag-sequence/end-drag-sequence.execution.d.ts +1 -1
  10. package/domain/f-draggable/initialize-drag-sequence/initialize-drag-sequence.execution.d.ts +1 -1
  11. package/domain/f-draggable/is-drag-started/index.d.ts +1 -1
  12. package/domain/f-draggable/is-drag-started/{is-drag-started.execution.d.ts → is-drag-started.d.ts} +3 -3
  13. package/domain/f-draggable/on-pointer-move/on-pointer-move.execution.d.ts +1 -1
  14. package/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence.execution.d.ts +1 -1
  15. package/domain/f-draggable/providers.d.ts +2 -2
  16. package/domain/f-draggable/start-drag-sequence/start-drag-sequence.execution.d.ts +2 -2
  17. package/domain/f-flow/get-flow-state/i-f-flow-state-node.d.ts +2 -1
  18. package/domain/f-node/add-node-to-store/{add-node-to-store.execution.d.ts → add-node-to-store.d.ts} +3 -3
  19. package/domain/f-node/add-node-to-store/index.d.ts +1 -1
  20. package/domain/f-node/calculate-input-connections/{calculate-input-connections.execution.d.ts → calculate-input-connections.d.ts} +3 -3
  21. package/domain/f-node/calculate-input-connections/index.d.ts +1 -1
  22. package/domain/f-node/calculate-nodes-bounding-box/{calculate-nodes-bounding-box.execution.d.ts → calculate-nodes-bounding-box.d.ts} +3 -3
  23. package/domain/f-node/calculate-nodes-bounding-box/index.d.ts +1 -1
  24. package/domain/f-node/calculate-nodes-bounding-box-normalized-position/{calculate-nodes-bounding-box-normalized-position.execution.d.ts → calculate-nodes-bounding-box-normalized-position.d.ts} +3 -3
  25. package/domain/f-node/calculate-nodes-bounding-box-normalized-position/index.d.ts +1 -1
  26. package/domain/f-node/calculate-output-connections/{calculate-output-connections.execution.d.ts → calculate-output-connections.d.ts} +3 -3
  27. package/domain/f-node/calculate-output-connections/index.d.ts +1 -1
  28. package/domain/f-node/fit-to-child-nodes-and-groups/fit-to-child-nodes-and-groups-request.d.ts +6 -0
  29. package/domain/f-node/fit-to-child-nodes-and-groups/fit-to-child-nodes-and-groups.d.ts +16 -0
  30. package/domain/f-node/fit-to-child-nodes-and-groups/index.d.ts +2 -0
  31. package/domain/f-node/get-child-node-ids/get-child-node-ids.d.ts +14 -0
  32. package/domain/f-node/get-child-node-ids/get-child-node-ids.request.d.ts +5 -0
  33. package/domain/f-node/get-child-node-ids/index.d.ts +2 -0
  34. package/domain/f-node/get-node-padding/{get-node-padding.execution.d.ts → get-node-padding.d.ts} +3 -3
  35. package/domain/f-node/get-node-padding/index.d.ts +1 -1
  36. package/domain/f-node/get-nodes/{get-nodes.execution.d.ts → get-nodes.d.ts} +3 -3
  37. package/domain/f-node/get-nodes/index.d.ts +1 -1
  38. package/domain/f-node/get-parent-nodes/{get-parent-nodes.execution.d.ts → get-parent-nodes.d.ts} +3 -3
  39. package/domain/f-node/get-parent-nodes/index.d.ts +1 -1
  40. package/domain/f-node/index.d.ts +2 -0
  41. package/domain/f-node/providers.d.ts +13 -11
  42. package/domain/f-node/remove-node-from-store/index.d.ts +1 -1
  43. package/domain/f-node/remove-node-from-store/{remove-node-from-store.execution.d.ts → remove-node-from-store.d.ts} +3 -3
  44. package/domain/f-node/update-node-when-state-or-size-changed/index.d.ts +1 -1
  45. package/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed-request.d.ts +2 -2
  46. package/domain/f-node/update-node-when-state-or-size-changed/{update-node-when-state-or-size-changed.execution.d.ts → update-node-when-state-or-size-changed.d.ts} +6 -4
  47. package/domain/f-selection/clear-selection/clear-selection.execution.d.ts +1 -1
  48. package/domain/f-selection/get-can-be-selected-items/get-can-be-selected-items.execution.d.ts +1 -1
  49. package/domain/f-selection/get-current-selection/get-current-selection.execution.d.ts +1 -1
  50. package/domain/f-selection/select/select.execution.d.ts +1 -1
  51. package/domain/f-selection/select-all/select-all.execution.d.ts +1 -1
  52. package/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.execution.d.ts +1 -1
  53. package/domain/f-zoom/remove-zoom-from-store/remove-zoom-from-store.execution.d.ts +1 -1
  54. package/domain/i-map.d.ts +1 -3
  55. package/domain/providers.d.ts +1 -1
  56. package/esm2022/domain/css-cls.mjs +6 -2
  57. package/esm2022/domain/f-background/add-background-to-store/add-background-to-store-request.mjs +1 -1
  58. package/esm2022/domain/f-background/add-pattern-to-background/add-pattern-to-background.execution.mjs +8 -8
  59. package/esm2022/domain/f-background/add-pattern-to-background/add-pattern-to-background.request.mjs +1 -1
  60. package/esm2022/domain/f-background/providers.mjs +2 -2
  61. package/esm2022/domain/f-background/remove-background-from-store/remove-background-from-store-request.mjs +1 -1
  62. package/esm2022/domain/f-background/remove-background-from-store/remove-background-from-store.execution.mjs +2 -2
  63. package/esm2022/domain/f-background/set-background-transform/set-background-transform-request.mjs +1 -1
  64. package/esm2022/domain/f-canvas/add-canvas-to-store/add-canvas-to-store-request.mjs +1 -1
  65. package/esm2022/domain/f-canvas/center-group-or-node/center-group-or-node-request.mjs +1 -1
  66. package/esm2022/domain/f-canvas/center-group-or-node/center-group-or-node.execution.mjs +2 -2
  67. package/esm2022/domain/f-canvas/fit-to-flow/fit-to-flow-request.mjs +1 -1
  68. package/esm2022/domain/f-canvas/fit-to-flow/fit-to-flow.execution.mjs +2 -2
  69. package/esm2022/domain/f-canvas/get-canvas/get-canvas.execution.mjs +1 -1
  70. package/esm2022/domain/f-canvas/input-canvas-position/input-canvas-position-request.mjs +1 -1
  71. package/esm2022/domain/f-canvas/input-canvas-position/input-canvas-position.execution.mjs +1 -1
  72. package/esm2022/domain/f-canvas/input-canvas-scale/input-canvas-scale-request.mjs +1 -1
  73. package/esm2022/domain/f-canvas/providers.mjs +2 -2
  74. package/esm2022/domain/f-canvas/redraw-canvas-with-animation/redraw-canvas-with-animation-request.mjs +1 -1
  75. package/esm2022/domain/f-canvas/reset-scale-and-center/reset-scale-and-center-request.mjs +1 -1
  76. package/esm2022/domain/f-canvas/reset-scale-and-center/reset-scale-and-center.execution.mjs +2 -2
  77. package/esm2022/domain/f-canvas/update-scale/update-scale-request.mjs +1 -1
  78. package/esm2022/domain/f-connection/add-connection-for-create-to-store/add-connection-for-create-to-store-request.mjs +1 -1
  79. package/esm2022/domain/f-connection/add-connection-marker-to-store/add-connection-marker-to-store-request.mjs +1 -1
  80. package/esm2022/domain/f-connection/add-connection-to-store/add-connection-to-store-request.mjs +1 -1
  81. package/esm2022/domain/f-connection/add-snap-connection-to-store/add-snap-connection-to-store-request.mjs +1 -1
  82. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/fixed-center-behavior.mjs +2 -2
  83. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/fixed-outbound-behavior.mjs +2 -2
  84. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/floating-behavior.mjs +2 -2
  85. package/esm2022/domain/f-connection/create-connection-markers/create-connection-markers.execution.mjs +1 -1
  86. package/esm2022/domain/f-connection/providers.mjs +2 -2
  87. package/esm2022/domain/f-connection/redraw-connections/redraw-connections.execution.mjs +1 -1
  88. package/esm2022/domain/f-connection/remove-connection-from-store/remove-connection-from-store-request.mjs +1 -1
  89. package/esm2022/domain/f-connection/remove-connection-from-store/remove-connection-from-store.execution.mjs +1 -1
  90. package/esm2022/domain/f-connection/remove-connection-marker-from-store/remove-connection-marker-from-store-request.mjs +1 -1
  91. package/esm2022/domain/f-connectors/add-input-to-store/add-input-to-store-request.mjs +1 -1
  92. package/esm2022/domain/f-connectors/add-outlet-to-store/add-outlet-to-store-request.mjs +1 -1
  93. package/esm2022/domain/f-connectors/add-outlet-to-store/add-outlet-to-store.execution.mjs +3 -3
  94. package/esm2022/domain/f-connectors/add-output-to-store/add-output-to-store-request.mjs +1 -1
  95. package/esm2022/domain/f-connectors/add-output-to-store/add-output-to-store.execution.mjs +3 -3
  96. package/esm2022/domain/f-connectors/find-closest-connector/find-closest-connector.request.mjs +1 -1
  97. package/esm2022/domain/f-connectors/find-connectable-connector-using-priority-and-position/find-connectable-connector-using-priority-and-position.execution.mjs +2 -2
  98. package/esm2022/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.execution.mjs +3 -3
  99. package/esm2022/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/get-all-can-be-connected-source-connectors-and-rects.execution.mjs +4 -4
  100. package/esm2022/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/get-all-can-be-connected-source-connectors-and-rects.request.mjs +1 -1
  101. package/esm2022/domain/f-connectors/get-connector-and-rect/get-connector-and-rect-request.mjs +1 -1
  102. package/esm2022/domain/f-connectors/get-connector-and-rect/get-connector-and-rect.execution.mjs +2 -2
  103. package/esm2022/domain/f-connectors/mark-connectable-connectors/mark-connectable-connectors.request.mjs +1 -1
  104. package/esm2022/domain/f-connectors/providers.mjs +4 -4
  105. package/esm2022/domain/f-connectors/remove-input-from-store/remove-input-from-store-request.mjs +1 -1
  106. package/esm2022/domain/f-connectors/remove-outlet-from-store/remove-outlet-from-store-request.mjs +1 -1
  107. package/esm2022/domain/f-connectors/remove-output-from-store/remove-output-from-store-request.mjs +1 -1
  108. package/esm2022/domain/f-connectors/unmark-connectable-connectors/unmark-connectable-connectors.request.mjs +1 -1
  109. package/esm2022/domain/f-draggable/add-dnd-to-store/add-dnd-to-store-request.mjs +1 -1
  110. package/esm2022/domain/f-draggable/emit-selection-change-event/emit-selection-change-event.execution.mjs +4 -4
  111. package/esm2022/domain/f-draggable/end-drag-sequence/end-drag-sequence.execution.mjs +3 -3
  112. package/esm2022/domain/f-draggable/initialize-drag-sequence/initialize-drag-sequence.execution.mjs +3 -3
  113. package/esm2022/domain/f-draggable/is-drag-started/index.mjs +2 -2
  114. package/esm2022/domain/f-draggable/is-drag-started/is-drag-started-request.mjs +1 -1
  115. package/esm2022/domain/f-draggable/is-drag-started/is-drag-started.mjs +25 -0
  116. package/esm2022/domain/f-draggable/on-pointer-move/on-pointer-move-request.mjs +1 -1
  117. package/esm2022/domain/f-draggable/on-pointer-move/on-pointer-move.execution.mjs +5 -5
  118. package/esm2022/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence.execution.mjs +3 -3
  119. package/esm2022/domain/f-draggable/providers.mjs +4 -4
  120. package/esm2022/domain/f-draggable/start-drag-sequence/start-drag-sequence.execution.mjs +6 -6
  121. package/esm2022/domain/f-flow/add-flow-to-store/add-flow-to-store-request.mjs +1 -1
  122. package/esm2022/domain/f-flow/get-flow/get-flow.execution.mjs +1 -1
  123. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.mjs +2 -2
  124. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes-request.mjs +1 -1
  125. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.mjs +8 -7
  126. package/esm2022/domain/f-flow/get-flow-state/get-flow-state.execution.mjs +2 -2
  127. package/esm2022/domain/f-flow/get-flow-state/i-f-flow-state-node.mjs +1 -1
  128. package/esm2022/domain/f-flow/get-flow-state/providers.mjs +2 -2
  129. package/esm2022/domain/f-flow/providers.mjs +2 -2
  130. package/esm2022/domain/f-line-alignment/add-line-alignment-to-store/add-line-alignment-to-store-request.mjs +1 -1
  131. package/esm2022/domain/f-line-alignment/providers.mjs +2 -2
  132. package/esm2022/domain/f-node/add-node-to-store/add-node-to-store-request.mjs +1 -1
  133. package/esm2022/domain/f-node/add-node-to-store/add-node-to-store.mjs +25 -0
  134. package/esm2022/domain/f-node/add-node-to-store/index.mjs +2 -2
  135. package/esm2022/domain/f-node/calculate-input-connections/calculate-input-connections-request.mjs +1 -1
  136. package/esm2022/domain/f-node/calculate-input-connections/calculate-input-connections.mjs +34 -0
  137. package/esm2022/domain/f-node/calculate-input-connections/index.mjs +2 -2
  138. package/esm2022/domain/f-node/calculate-nodes-bounding-box/calculate-nodes-bounding-box.mjs +33 -0
  139. package/esm2022/domain/f-node/calculate-nodes-bounding-box/index.mjs +2 -2
  140. package/esm2022/domain/f-node/calculate-nodes-bounding-box-normalized-position/calculate-nodes-bounding-box-normalized-position.mjs +36 -0
  141. package/esm2022/domain/f-node/calculate-nodes-bounding-box-normalized-position/index.mjs +2 -2
  142. package/esm2022/domain/f-node/calculate-output-connections/calculate-output-connections-request.mjs +1 -1
  143. package/esm2022/domain/f-node/calculate-output-connections/calculate-output-connections.mjs +34 -0
  144. package/esm2022/domain/f-node/calculate-output-connections/index.mjs +2 -2
  145. package/esm2022/domain/f-node/fit-to-child-nodes-and-groups/fit-to-child-nodes-and-groups-request.mjs +8 -0
  146. package/esm2022/domain/f-node/fit-to-child-nodes-and-groups/fit-to-child-nodes-and-groups.mjs +64 -0
  147. package/esm2022/domain/f-node/fit-to-child-nodes-and-groups/index.mjs +3 -0
  148. package/esm2022/domain/f-node/get-child-node-ids/get-child-node-ids.mjs +45 -0
  149. package/esm2022/domain/f-node/get-child-node-ids/get-child-node-ids.request.mjs +8 -0
  150. package/esm2022/domain/f-node/get-child-node-ids/index.mjs +3 -0
  151. package/esm2022/domain/f-node/get-node-padding/get-node-padding.mjs +35 -0
  152. package/esm2022/domain/f-node/get-node-padding/get-node-padding.request.mjs +1 -1
  153. package/esm2022/domain/f-node/get-node-padding/index.mjs +2 -2
  154. package/esm2022/domain/f-node/get-nodes/get-nodes.mjs +25 -0
  155. package/esm2022/domain/f-node/get-nodes/index.mjs +2 -2
  156. package/esm2022/domain/f-node/get-parent-nodes/get-parent-nodes.mjs +37 -0
  157. package/esm2022/domain/f-node/get-parent-nodes/get-parent-nodes.request.mjs +1 -1
  158. package/esm2022/domain/f-node/get-parent-nodes/index.mjs +2 -2
  159. package/esm2022/domain/f-node/index.mjs +3 -1
  160. package/esm2022/domain/f-node/providers.mjs +25 -21
  161. package/esm2022/domain/f-node/remove-node-from-store/index.mjs +2 -2
  162. package/esm2022/domain/f-node/remove-node-from-store/remove-node-from-store-request.mjs +1 -1
  163. package/esm2022/domain/f-node/remove-node-from-store/remove-node-from-store.mjs +25 -0
  164. package/esm2022/domain/f-node/update-node-when-state-or-size-changed/index.mjs +2 -2
  165. package/esm2022/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed-request.mjs +4 -4
  166. package/esm2022/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed.mjs +104 -0
  167. package/esm2022/domain/f-selection/clear-selection/clear-selection.execution.mjs +5 -5
  168. package/esm2022/domain/f-selection/get-can-be-selected-items/get-can-be-selected-items.execution.mjs +7 -7
  169. package/esm2022/domain/f-selection/get-current-selection/get-current-selection.execution.mjs +6 -6
  170. package/esm2022/domain/f-selection/providers.mjs +2 -2
  171. package/esm2022/domain/f-selection/select/select.execution.mjs +7 -7
  172. package/esm2022/domain/f-selection/select-all/select-all.execution.mjs +7 -7
  173. package/esm2022/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.execution.mjs +5 -5
  174. package/esm2022/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.request.mjs +1 -1
  175. package/esm2022/domain/f-zoom/add-zoom-to-store/add-zoom-to-store-request.mjs +1 -1
  176. package/esm2022/domain/f-zoom/add-zoom-to-store/add-zoom-to-store.execution.mjs +2 -2
  177. package/esm2022/domain/f-zoom/providers.mjs +2 -2
  178. package/esm2022/domain/f-zoom/remove-zoom-from-store/remove-zoom-from-store.execution.mjs +3 -3
  179. package/esm2022/domain/f-zoom/set-zoom/set-zoom-request.mjs +1 -1
  180. package/esm2022/domain/f-zoom/set-zoom/set-zoom.execution.mjs +1 -1
  181. package/esm2022/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.execution.mjs +2 -2
  182. package/esm2022/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.request.mjs +1 -1
  183. package/esm2022/domain/get-element-rounded-rect/get-element-rounded-rect.execution.mjs +1 -1
  184. package/esm2022/domain/get-normalized-connector-rect/get-normalized-connector-rect.execution.mjs +1 -1
  185. package/esm2022/domain/get-normalized-element-rect/get-normalized-element-rect-request.mjs +1 -1
  186. package/esm2022/domain/get-normalized-element-rect/get-normalized-element-rect.execution.mjs +2 -2
  187. package/esm2022/domain/get-normalized-point/get-normalized-point-request.mjs +1 -1
  188. package/esm2022/domain/get-normalized-point/get-normalized-point.execution.mjs +1 -1
  189. package/esm2022/domain/i-map.mjs +1 -1
  190. package/esm2022/domain/log-deprecated.mjs +1 -1
  191. package/esm2022/domain/log-execution-time.mjs +1 -1
  192. package/esm2022/domain/providers.mjs +2 -2
  193. package/esm2022/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.execution.mjs +2 -2
  194. package/esm2022/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.request.mjs +2 -3
  195. package/esm2022/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.execution.mjs +1 -1
  196. package/esm2022/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element.request.mjs +1 -1
  197. package/esm2022/domain/update-item-and-children-layers/update-item-and-children-layers.execution.mjs +1 -1
  198. package/esm2022/drag-toolkit/drag-and-drop-base.mjs +3 -3
  199. package/esm2022/drag-toolkit/event.extensions.mjs +1 -1
  200. package/esm2022/drag-toolkit/pointer-events/i-pointer-up-event.mjs +1 -1
  201. package/esm2022/drag-toolkit/pointer-events/i-touch-down-event.mjs +1 -1
  202. package/esm2022/drag-toolkit/pointer-events/i-touch-move-event.mjs +1 -1
  203. package/esm2022/f-backgroud/f-background.component.mjs +4 -4
  204. package/esm2022/f-backgroud/f-circle-pattern/f-circle-pattern.component.mjs +7 -7
  205. package/esm2022/f-backgroud/f-rect-pattern/f-rect-pattern.component.mjs +7 -7
  206. package/esm2022/f-backgroud/index.mjs +1 -1
  207. package/esm2022/f-backgroud/providers.mjs +2 -2
  208. package/esm2022/f-canvas/f-canvas-base.mjs +1 -1
  209. package/esm2022/f-canvas/f-canvas.component.mjs +3 -3
  210. package/esm2022/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points-request.mjs +1 -1
  211. package/esm2022/f-connection/common/domain/calculate-connection-center/calculate-connection-center-request.mjs +1 -1
  212. package/esm2022/f-connection/common/domain/calculate-connection-center/calculate-connection-center.handler.mjs +2 -2
  213. package/esm2022/f-connection/common/domain/f-bezier.path-builder.mjs +2 -2
  214. package/esm2022/f-connection/common/domain/f-segment.path-builder.mjs +3 -3
  215. package/esm2022/f-connection/common/domain/f-straight.path-builder.mjs +1 -1
  216. package/esm2022/f-connection/common/f-connection-base.mjs +24 -5
  217. package/esm2022/f-connection/common/f-connection-identifiers.mjs +2 -2
  218. package/esm2022/f-connection/common/f-connection-text/f-connection-text-path.directive.mjs +4 -4
  219. package/esm2022/f-connection/common/f-connection-text/f-connection-text.component.mjs +2 -2
  220. package/esm2022/f-connection/common/f-drag-handle/f-connection-drag-handle-end.component.mjs +4 -4
  221. package/esm2022/f-connection/common/f-drag-handle/f-connection-drag-handle-start.component.mjs +4 -4
  222. package/esm2022/f-connection/common/f-gradient/f-connection-gradient.component.mjs +2 -2
  223. package/esm2022/f-connection/common/f-path/f-connection-path.component.mjs +1 -1
  224. package/esm2022/f-connection/common/f-selection/f-connection-selection.component.mjs +2 -2
  225. package/esm2022/f-connection/common/i-has-connection-color.mjs +1 -1
  226. package/esm2022/f-connection/common/i-has-connection-from-to.mjs +1 -1
  227. package/esm2022/f-connection/f-connection/f-connection.component.mjs +16 -31
  228. package/esm2022/f-connection/f-connection-builder/f-connection-builders.mjs +1 -1
  229. package/esm2022/f-connection/f-connection-builder/f-connection-factory.mjs +1 -1
  230. package/esm2022/f-connection/f-connection-center/f-connection-center.directive.mjs +3 -3
  231. package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +8 -23
  232. package/esm2022/f-connection/f-marker/f-marker.directive.mjs +3 -3
  233. package/esm2022/f-connection/f-snap-connection/f-snap-connection.component.mjs +8 -23
  234. package/esm2022/f-connection/index.mjs +1 -1
  235. package/esm2022/f-connection/providers.mjs +3 -3
  236. package/esm2022/f-connectors/f-node-input/f-node-input.directive.mjs +4 -4
  237. package/esm2022/f-connectors/f-node-outlet/f-node-outlet.directive.mjs +2 -2
  238. package/esm2022/f-connectors/f-node-output/f-node-output.directive.mjs +3 -3
  239. package/esm2022/f-connectors/providers.mjs +2 -2
  240. package/esm2022/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.execution.mjs +13 -13
  241. package/esm2022/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.request.mjs +4 -4
  242. package/esm2022/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.request.mjs +1 -1
  243. package/esm2022/f-draggable/domain/is-connection-under-node/is-connection-under-node.execution.mjs +8 -8
  244. package/esm2022/f-draggable/domain/is-connection-under-node/is-connection-under-node.request.mjs +1 -1
  245. package/esm2022/f-draggable/f-canvas/f-canvas.drag-handler.mjs +7 -7
  246. package/esm2022/f-draggable/f-canvas/move-finalize/f-canvas-move-finalize.execution.mjs +4 -4
  247. package/esm2022/f-draggable/f-canvas/move-finalize/f-canvas-move-finalize.request.mjs +1 -1
  248. package/esm2022/f-draggable/f-canvas/move-preparation/f-canvas-move-preparation.execution.mjs +11 -11
  249. package/esm2022/f-draggable/f-canvas/move-preparation/f-canvas-move-preparation.request.mjs +1 -1
  250. package/esm2022/f-draggable/f-connection/f-create-connection/create-finalize/f-create-connection-finalize.execution.mjs +8 -8
  251. package/esm2022/f-draggable/f-connection/f-create-connection/create-finalize/f-create-connection-finalize.request.mjs +1 -1
  252. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/drag-handler-preparation/f-create-connection-drag-handler-preparation.execution.mjs +9 -9
  253. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/drag-handler-preparation/f-create-connection-drag-handler-preparation.request.mjs +1 -1
  254. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/f-create-connection-preparation.execution.mjs +5 -5
  255. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/f-create-connection-preparation.request.mjs +1 -1
  256. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-outlet-preparation/f-create-connection-from-outlet-preparation.execution.mjs +4 -4
  257. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-outlet-preparation/f-create-connection-from-outlet-preparation.request.mjs +1 -1
  258. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/f-create-connection-from-output-preparation.execution.mjs +4 -4
  259. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/f-create-connection-from-output-preparation.request.mjs +1 -1
  260. package/esm2022/f-draggable/f-connection/f-create-connection/f-create-connection.drag-handler.mjs +6 -6
  261. package/esm2022/f-draggable/f-connection/f-create-connection/get-first-connectable-output/get-first-connectable-output.execution.mjs +1 -1
  262. package/esm2022/f-draggable/f-connection/f-create-connection/get-first-connectable-output/get-first-connectable-output.request.mjs +1 -1
  263. package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-connection.drag-handler.mjs +3 -3
  264. package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-connection.event.mjs +1 -1
  265. package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-source.drag-handler.mjs +2 -2
  266. package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-target.drag-handler.mjs +2 -2
  267. package/esm2022/f-draggable/f-connection/f-reassign-connection/i-f-reassign-handler.mjs +1 -1
  268. package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-finalize/f-reassign-connection-finalize.execution.mjs +1 -1
  269. package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-finalize/f-reassign-connection-finalize.request.mjs +1 -1
  270. package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-preparation/f-reassign-connection-preparation.execution.mjs +13 -13
  271. package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-preparation/f-reassign-connection-preparation.request.mjs +1 -1
  272. package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-preparation/is-pointer-inside-start-or-end-drag-handles.mjs +3 -3
  273. package/esm2022/f-draggable/f-drag-blocker.directive.mjs +2 -2
  274. package/esm2022/f-draggable/f-drag-handler/i-f-drag-handler.mjs +1 -1
  275. package/esm2022/f-draggable/f-draggable-base.mjs +2 -9
  276. package/esm2022/f-draggable/f-draggable-data-context.mjs +2 -1
  277. package/esm2022/f-draggable/f-draggable.directive.mjs +73 -61
  278. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-finalize/drop-to-group-finalize-request.mjs +8 -0
  279. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-finalize/drop-to-group-finalize.mjs +69 -0
  280. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-finalize/index.mjs +3 -3
  281. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-preparation/drop-to-group-preparation-request.mjs +8 -0
  282. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-preparation/drop-to-group-preparation.mjs +101 -0
  283. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-preparation/index.mjs +3 -3
  284. package/esm2022/f-draggable/f-drop-to-group/f-node-drop-to-group.drag-handler.mjs +22 -22
  285. package/esm2022/f-draggable/f-drop-to-group/index.mjs +2 -1
  286. package/esm2022/f-draggable/f-drop-to-group/providers.mjs +7 -5
  287. package/esm2022/f-draggable/f-drop-to-group/sort-containers-for-drop-by-layer/index.mjs +3 -0
  288. package/esm2022/f-draggable/f-drop-to-group/sort-containers-for-drop-by-layer/sort-containers-for-drop-by-layer-request.mjs +8 -0
  289. package/esm2022/f-draggable/f-drop-to-group/sort-containers-for-drop-by-layer/sort-containers-for-drop-by-layer.mjs +54 -0
  290. package/esm2022/f-draggable/f-node-move/connection-drag-handlers/base-connection.drag-handler.mjs +11 -11
  291. package/esm2022/f-draggable/f-node-move/constraint/drag-constraint-pipeline.mjs +29 -0
  292. package/esm2022/f-draggable/f-node-move/constraint/expand-rect-from-baseline.mjs +20 -0
  293. package/esm2022/f-draggable/f-node-move/constraint/index.mjs +5 -0
  294. package/esm2022/f-draggable/f-node-move/constraint/rect-constraint.mjs +37 -0
  295. package/esm2022/f-draggable/f-node-move/constraint/snap-to-grid.mjs +36 -0
  296. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/build-drag-hierarchy/build-drag-hierarchy-request.mjs +8 -0
  297. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/build-drag-hierarchy/build-drag-hierarchy-response.mjs +9 -0
  298. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/build-drag-hierarchy/build-drag-hierarchy.mjs +47 -0
  299. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/build-drag-hierarchy/index.mjs +4 -0
  300. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/calculate-drag-limits-request.mjs +8 -0
  301. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/calculate-drag-limits.mjs +72 -0
  302. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/i-drag-limits.mjs +2 -0
  303. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/i-soft-limit.mjs +2 -0
  304. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/index.mjs +5 -0
  305. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-drag-model-from-selection-request.mjs +8 -0
  306. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-drag-model-from-selection.mjs +88 -0
  307. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-input-connection-handler-and-set-to-node-handler/create-input-connection-handler-and-set-to-node-handler-request.mjs +12 -0
  308. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-input-connection-handler-and-set-to-node-handler/create-input-connection-handler-and-set-to-node-handler.mjs +59 -0
  309. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-input-connection-handler-and-set-to-node-handler/index.mjs +3 -0
  310. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-output-connection-handler-and-set-to-node-handler/create-output-connection-handler-and-set-to-node-handler-request.mjs +12 -0
  311. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-output-connection-handler-and-set-to-node-handler/create-output-connection-handler-and-set-to-node-handler.mjs +59 -0
  312. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-output-connection-handler-and-set-to-node-handler/index.mjs +3 -0
  313. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-summary-drag-handler/create-summary-drag-handler-request.mjs +10 -0
  314. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-summary-drag-handler/create-summary-drag-handler.mjs +33 -0
  315. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-summary-drag-handler/index.mjs +3 -0
  316. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/get-node-bounding-include-paddings/get-node-bounding-include-paddings-request.mjs +10 -0
  317. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/get-node-bounding-include-paddings/get-node-bounding-include-paddings-response.mjs +13 -0
  318. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/get-node-bounding-include-paddings/get-node-bounding-include-paddings.mjs +39 -0
  319. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/get-node-bounding-include-paddings/index.mjs +4 -0
  320. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/i-node-move-limits-and-position.mjs +2 -0
  321. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/i-node-move-limits.mjs +2 -0
  322. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/index.mjs +12 -0
  323. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/providers.mjs +17 -0
  324. package/esm2022/f-draggable/f-node-move/create-snap-lines/create-snap-lines-request.mjs +8 -0
  325. package/esm2022/f-draggable/f-node-move/create-snap-lines/create-snap-lines.mjs +52 -0
  326. package/esm2022/f-draggable/f-node-move/create-snap-lines/index.mjs +3 -0
  327. package/esm2022/f-draggable/f-node-move/create-snap-lines/snap-lines.drag-handler.mjs +51 -0
  328. package/esm2022/f-draggable/f-node-move/f-move-nodes.event.mjs +8 -2
  329. package/esm2022/f-draggable/f-node-move/index.mjs +8 -7
  330. package/esm2022/f-draggable/f-node-move/move-drag-handler.mjs +95 -0
  331. package/esm2022/f-draggable/f-node-move/move-finalize/f-node-move-finalize.execution.mjs +39 -50
  332. package/esm2022/f-draggable/f-node-move/move-finalize/f-node-move-finalize.request.mjs +1 -1
  333. package/esm2022/f-draggable/f-node-move/move-preparation/f-node-move-preparation.execution.mjs +26 -26
  334. package/esm2022/f-draggable/f-node-move/move-preparation/f-node-move-preparation.request.mjs +1 -1
  335. package/esm2022/f-draggable/f-node-move/move-summary-drag-handler.mjs +44 -0
  336. package/esm2022/f-draggable/f-node-move/providers.mjs +4 -4
  337. package/esm2022/f-draggable/f-node-resize/apply-child-resize-constraints/apply-child-resize-constraints-request.mjs +10 -0
  338. package/esm2022/f-draggable/f-node-resize/apply-child-resize-constraints/apply-child-resize-constraints.mjs +57 -0
  339. package/esm2022/f-draggable/f-node-resize/apply-child-resize-constraints/index.mjs +3 -0
  340. package/esm2022/f-draggable/f-node-resize/apply-parent-resize-constraints/apply-parent-resize-constraints-request.mjs +10 -0
  341. package/esm2022/f-draggable/f-node-resize/apply-parent-resize-constraints/apply-parent-resize-constraints.mjs +147 -0
  342. package/esm2022/f-draggable/f-node-resize/apply-parent-resize-constraints/index.mjs +3 -0
  343. package/esm2022/f-draggable/f-node-resize/calculate-changed-rect-from-difference/calculate-changed-rect-from-difference-request.mjs +14 -0
  344. package/esm2022/f-draggable/f-node-resize/calculate-changed-rect-from-difference/calculate-changed-rect-from-difference.mjs +55 -0
  345. package/esm2022/f-draggable/f-node-resize/calculate-changed-rect-from-difference/index.mjs +3 -0
  346. package/esm2022/f-draggable/f-node-resize/calculate-direct-children-union-rect/calculate-direct-children-union-rect-request.mjs +10 -0
  347. package/esm2022/f-draggable/f-node-resize/calculate-direct-children-union-rect/calculate-direct-children-union-rect.mjs +39 -0
  348. package/esm2022/f-draggable/f-node-resize/calculate-direct-children-union-rect/index.mjs +3 -0
  349. package/esm2022/f-draggable/f-node-resize/calculate-resize-limits/calculate-resize-limits-request.mjs +10 -0
  350. package/esm2022/f-draggable/f-node-resize/calculate-resize-limits/calculate-resize-limits.mjs +69 -0
  351. package/esm2022/f-draggable/f-node-resize/calculate-resize-limits/index.mjs +3 -0
  352. package/esm2022/f-draggable/f-node-resize/constraint/i-resize-constraint.mjs +2 -0
  353. package/esm2022/f-draggable/f-node-resize/constraint/i-resize-limit.mjs +2 -0
  354. package/esm2022/f-draggable/f-node-resize/constraint/i-resize-limits.mjs +2 -0
  355. package/esm2022/f-draggable/f-node-resize/constraint/i-resize-overflow.mjs +2 -0
  356. package/esm2022/f-draggable/f-node-resize/constraint/index.mjs +5 -0
  357. package/esm2022/f-draggable/f-node-resize/index.mjs +8 -8
  358. package/esm2022/f-draggable/f-node-resize/node-resize.drag-handler.mjs +64 -0
  359. package/esm2022/f-draggable/f-node-resize/providers.mjs +15 -17
  360. package/esm2022/f-draggable/f-node-resize/resize-finalize/index.mjs +3 -3
  361. package/esm2022/f-draggable/f-node-resize/resize-finalize/node-resize-finalize-request.mjs +8 -0
  362. package/esm2022/f-draggable/f-node-resize/resize-finalize/node-resize-finalize.mjs +29 -0
  363. package/esm2022/f-draggable/f-node-resize/resize-preparation/index.mjs +3 -3
  364. package/esm2022/f-draggable/f-node-resize/resize-preparation/node-resize-preparation-request.mjs +10 -0
  365. package/esm2022/f-draggable/f-node-resize/resize-preparation/node-resize-preparation.mjs +71 -0
  366. package/esm2022/f-draggable/f-node-rotate/calculate-difference-after-rotation.mjs +1 -1
  367. package/esm2022/f-draggable/f-node-rotate/f-node-rotate.drag-handler.mjs +12 -12
  368. package/esm2022/f-draggable/f-node-rotate/rotate-finalize/f-node-rotate-finalize.execution.mjs +5 -4
  369. package/esm2022/f-draggable/f-node-rotate/rotate-finalize/f-node-rotate-finalize.request.mjs +1 -1
  370. package/esm2022/f-draggable/f-node-rotate/rotate-preparation/f-node-rotate-preparation.execution.mjs +16 -16
  371. package/esm2022/f-draggable/f-node-rotate/rotate-preparation/f-node-rotate-preparation.request.mjs +1 -1
  372. package/esm2022/f-draggable/f-single-select/f-single-select.execution.mjs +18 -18
  373. package/esm2022/f-draggable/f-single-select/f-single-select.request.mjs +1 -1
  374. package/esm2022/f-draggable/i-f-drag-and-drop-plugin.mjs +1 -1
  375. package/esm2022/f-draggable/index.mjs +1 -1
  376. package/esm2022/f-draggable/providers.mjs +2 -2
  377. package/esm2022/f-external-item/domain/constraint/external-rect-constraint.mjs +44 -0
  378. package/esm2022/f-external-item/domain/constraint/index.mjs +2 -0
  379. package/esm2022/f-external-item/domain/create-placeholder/f-external-item-create-placeholder.execution.mjs +1 -1
  380. package/esm2022/f-external-item/domain/create-preview/f-external-item-create-preview.execution.mjs +2 -2
  381. package/esm2022/f-external-item/domain/f-create-node.event.mjs +1 -1
  382. package/esm2022/f-external-item/domain/f-external-item.drag-handler.mjs +27 -22
  383. package/esm2022/f-external-item/domain/finalize/f-external-item-finalize.execution.mjs +16 -17
  384. package/esm2022/f-external-item/domain/finalize/f-external-item-finalize.request.mjs +1 -1
  385. package/esm2022/f-external-item/domain/index.mjs +2 -1
  386. package/esm2022/f-external-item/domain/preparation/f-external-item-preparation.execution.mjs +9 -9
  387. package/esm2022/f-external-item/domain/preparation/f-external-item-preparation.request.mjs +1 -1
  388. package/esm2022/f-external-item/domain/prevent-default-is-external-item/prevent-default-is-external-item.execution.mjs +5 -5
  389. package/esm2022/f-external-item/domain/prevent-default-is-external-item/prevent-default-is-external-item.request.mjs +1 -1
  390. package/esm2022/f-external-item/f-external-item-base.mjs +1 -1
  391. package/esm2022/f-external-item/f-external-item-placeholder.directive.mjs +5 -5
  392. package/esm2022/f-external-item/f-external-item-preview.directive.mjs +4 -4
  393. package/esm2022/f-external-item/f-external-item.directive.mjs +13 -20
  394. package/esm2022/f-external-item/f-external-item.service.mjs +3 -3
  395. package/esm2022/f-external-item/providers.mjs +2 -2
  396. package/esm2022/f-flow/f-flow.component.mjs +5 -5
  397. package/esm2022/f-flow/providers.mjs +2 -2
  398. package/esm2022/f-flow.module.mjs +3 -3
  399. package/esm2022/f-line-alignment/domain/i-snap-coordinate.mjs +2 -0
  400. package/esm2022/f-line-alignment/domain/i-snap-result.mjs +2 -0
  401. package/esm2022/f-line-alignment/domain/index.mjs +5 -5
  402. package/esm2022/f-line-alignment/domain/snap-line-element.mjs +28 -0
  403. package/esm2022/f-line-alignment/domain/snap-line-service.mjs +36 -0
  404. package/esm2022/f-line-alignment/f-line-alignment.component.mjs +4 -4
  405. package/esm2022/f-line-alignment/providers.mjs +2 -2
  406. package/esm2022/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.execution.mjs +14 -18
  407. package/esm2022/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.request.mjs +1 -1
  408. package/esm2022/f-minimap/domain/f-minimap-data.mjs +1 -1
  409. package/esm2022/f-minimap/domain/f-minimap.drag-handler.mjs +25 -25
  410. package/esm2022/f-minimap/domain/minimap-calculate-svg-scale-and-view-box/minimap-calculate-svg-scale-and-view-box.execution.mjs +2 -2
  411. package/esm2022/f-minimap/domain/minimap-calculate-view-box/minimap-calculate-view-box.execution.mjs +9 -8
  412. package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.mjs +9 -11
  413. package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.request.mjs +1 -1
  414. package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.mjs +26 -32
  415. package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.request.mjs +1 -1
  416. package/esm2022/f-minimap/domain/minimap-draw-nodes/minimap-draw-nodes.execution.mjs +12 -10
  417. package/esm2022/f-minimap/f-minimap-canvas.directive.mjs +2 -2
  418. package/esm2022/f-minimap/f-minimap-flow.directive.mjs +3 -3
  419. package/esm2022/f-minimap/f-minimap-view.directive.mjs +2 -2
  420. package/esm2022/f-minimap/f-minimap.component.mjs +1 -1
  421. package/esm2022/f-node/f-drag-handle.directive.mjs +3 -3
  422. package/esm2022/f-node/f-group.directive.mjs +60 -96
  423. package/esm2022/f-node/f-node-base.mjs +61 -7
  424. package/esm2022/f-node/f-node.directive.mjs +63 -104
  425. package/esm2022/f-node/f-resize-handle/f-resize-handle.directive.mjs +5 -5
  426. package/esm2022/f-selection-area/domain/providers.mjs +2 -2
  427. package/esm2022/f-selection-area/domain/selection-area-finalize/selection-area-finalize.execution.mjs +5 -5
  428. package/esm2022/f-selection-area/domain/selection-area-finalize/selection-area-finalize.request.mjs +1 -1
  429. package/esm2022/f-selection-area/domain/selection-area-preparation/selection-area-preparation.execution.mjs +9 -9
  430. package/esm2022/f-selection-area/domain/selection-area-preparation/selection-area-preparation.request.mjs +1 -1
  431. package/esm2022/f-selection-area/domain/selection-area.drag-handle.mjs +13 -13
  432. package/esm2022/f-selection-area/f-selection-area.component.mjs +2 -2
  433. package/esm2022/f-selection-area/providers.mjs +2 -2
  434. package/esm2022/f-storage/f-components-store.mjs +1 -1
  435. package/esm2022/f-storage/features/listen-components-data-changed/listen-data-changes.execution.mjs +4 -5
  436. package/esm2022/f-storage/features/listen-count-changes/listen-count-changes.execution.mjs +4 -5
  437. package/esm2022/f-storage/features/listen-transform-changes/listen-transform-changes.execution.mjs +4 -4
  438. package/esm2022/f-storage/features/notify-data-changed/notify-data-changed.execution.mjs +4 -4
  439. package/esm2022/f-storage/features/notify-transform-changed/notify-transform-changed.execution.mjs +4 -4
  440. package/esm2022/f-zoom/f-zoom.directive.mjs +4 -4
  441. package/esm2022/f-zoom/providers.mjs +2 -2
  442. package/esm2022/mixins/change-selection/change-selection.mjs +2 -2
  443. package/esm2022/mixins/change-selection/i-selectable.mjs +1 -1
  444. package/esm2022/reactivity/debounce-time.mjs +2 -2
  445. package/esm2022/reactivity/f-channel-hub.mjs +1 -1
  446. package/esm2022/reactivity/f-channel.mjs +1 -1
  447. package/esm2022/reactivity/f-resize-channel.mjs +1 -1
  448. package/esm2022/reactivity/index.mjs +1 -2
  449. package/esm2022/reactivity/notify-on-start.mjs +1 -1
  450. package/esm2022/utils/infinity-min-max.mjs +2 -2
  451. package/f-connection/common/f-connection-base.d.ts +17 -15
  452. package/f-connection/common/i-has-connection-color.d.ts +3 -3
  453. package/f-connection/f-connection/f-connection.component.d.ts +6 -20
  454. package/f-connection/f-connection-builder/f-connection-builders.d.ts +1 -3
  455. package/f-connection/f-connection-for-create/f-connection-for-create.component.d.ts +2 -17
  456. package/f-connection/f-snap-connection/f-snap-connection.component.d.ts +2 -17
  457. package/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.execution.d.ts +3 -3
  458. package/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.request.d.ts +2 -2
  459. package/f-draggable/domain/is-connection-under-node/is-connection-under-node.execution.d.ts +1 -1
  460. package/f-draggable/f-canvas/f-canvas.drag-handler.d.ts +1 -1
  461. package/f-draggable/f-canvas/move-finalize/f-canvas-move-finalize.execution.d.ts +1 -1
  462. package/f-draggable/f-canvas/move-preparation/f-canvas-move-preparation.execution.d.ts +2 -2
  463. package/f-draggable/f-connection/f-create-connection/create-finalize/f-create-connection-finalize.execution.d.ts +2 -2
  464. package/f-draggable/f-connection/f-create-connection/create-preparation/drag-handler-preparation/f-create-connection-drag-handler-preparation.execution.d.ts +2 -2
  465. package/f-draggable/f-connection/f-create-connection/create-preparation/f-create-connection-preparation.execution.d.ts +2 -2
  466. package/f-draggable/f-connection/f-create-connection/create-preparation/from-outlet-preparation/f-create-connection-from-outlet-preparation.execution.d.ts +1 -1
  467. package/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/f-create-connection-from-output-preparation.execution.d.ts +1 -1
  468. package/f-draggable/f-connection/f-create-connection/f-create-connection.drag-handler.d.ts +1 -1
  469. package/f-draggable/f-connection/f-reassign-connection/reassign-preparation/f-reassign-connection-preparation.execution.d.ts +2 -2
  470. package/f-draggable/f-draggable-base.d.ts +6 -9
  471. package/f-draggable/f-draggable-data-context.d.ts +1 -0
  472. package/f-draggable/f-draggable.directive.d.ts +28 -17
  473. package/f-draggable/{f-node-resize/resize-finalize/f-node-resize-finalize.request.d.ts → f-drop-to-group/drop-to-group-finalize/drop-to-group-finalize-request.d.ts} +1 -1
  474. package/f-draggable/f-drop-to-group/drop-to-group-finalize/drop-to-group-finalize.d.ts +16 -0
  475. package/f-draggable/f-drop-to-group/drop-to-group-finalize/index.d.ts +2 -2
  476. package/f-draggable/f-drop-to-group/{drop-to-group-finalize/f-node-drop-to-group-finalize.request.d.ts → drop-to-group-preparation/drop-to-group-preparation-request.d.ts} +1 -1
  477. package/f-draggable/f-drop-to-group/drop-to-group-preparation/drop-to-group-preparation.d.ts +29 -0
  478. package/f-draggable/f-drop-to-group/drop-to-group-preparation/index.d.ts +2 -2
  479. package/f-draggable/f-drop-to-group/f-node-drop-to-group.drag-handler.d.ts +4 -8
  480. package/f-draggable/f-drop-to-group/index.d.ts +1 -0
  481. package/f-draggable/f-drop-to-group/providers.d.ts +4 -3
  482. package/f-draggable/f-drop-to-group/sort-containers-for-drop-by-layer/index.d.ts +2 -0
  483. package/f-draggable/f-drop-to-group/sort-containers-for-drop-by-layer/sort-containers-for-drop-by-layer-request.d.ts +6 -0
  484. package/f-draggable/f-drop-to-group/sort-containers-for-drop-by-layer/sort-containers-for-drop-by-layer.d.ts +10 -0
  485. package/f-draggable/f-node-move/connection-drag-handlers/base-connection.drag-handler.d.ts +2 -2
  486. package/f-draggable/f-node-move/constraint/drag-constraint-pipeline.d.ts +17 -0
  487. package/f-draggable/f-node-move/constraint/expand-rect-from-baseline.d.ts +3 -0
  488. package/f-draggable/f-node-move/constraint/index.d.ts +4 -0
  489. package/f-draggable/f-node-move/constraint/rect-constraint.d.ts +19 -0
  490. package/f-draggable/f-node-move/constraint/snap-to-grid.d.ts +15 -0
  491. package/f-draggable/f-node-move/create-drag-model-from-selection/build-drag-hierarchy/build-drag-hierarchy-request.d.ts +6 -0
  492. package/f-draggable/f-node-move/create-drag-model-from-selection/build-drag-hierarchy/build-drag-hierarchy-response.d.ts +6 -0
  493. package/f-draggable/f-node-move/create-drag-model-from-selection/build-drag-hierarchy/build-drag-hierarchy.d.ts +13 -0
  494. package/f-draggable/f-node-move/create-drag-model-from-selection/build-drag-hierarchy/index.d.ts +3 -0
  495. package/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/calculate-drag-limits-request.d.ts +6 -0
  496. package/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/calculate-drag-limits.d.ts +19 -0
  497. package/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/i-drag-limits.d.ts +6 -0
  498. package/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/i-soft-limit.d.ts +8 -0
  499. package/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/index.d.ts +4 -0
  500. package/f-draggable/f-node-move/{create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.request.d.ts → create-drag-model-from-selection/create-drag-model-from-selection-request.d.ts} +1 -1
  501. package/f-draggable/f-node-move/create-drag-model-from-selection/create-drag-model-from-selection.d.ts +24 -0
  502. package/f-draggable/f-node-move/create-drag-model-from-selection/create-input-connection-handler-and-set-to-node-handler/create-input-connection-handler-and-set-to-node-handler-request.d.ts +9 -0
  503. package/f-draggable/f-node-move/create-drag-model-from-selection/create-input-connection-handler-and-set-to-node-handler/create-input-connection-handler-and-set-to-node-handler.d.ts +16 -0
  504. package/f-draggable/f-node-move/create-drag-model-from-selection/create-input-connection-handler-and-set-to-node-handler/index.d.ts +2 -0
  505. package/f-draggable/f-node-move/create-drag-model-from-selection/create-output-connection-handler-and-set-to-node-handler/create-output-connection-handler-and-set-to-node-handler-request.d.ts +9 -0
  506. package/f-draggable/f-node-move/create-drag-model-from-selection/create-output-connection-handler-and-set-to-node-handler/create-output-connection-handler-and-set-to-node-handler.d.ts +18 -0
  507. package/f-draggable/f-node-move/create-drag-model-from-selection/create-output-connection-handler-and-set-to-node-handler/index.d.ts +2 -0
  508. package/f-draggable/f-node-move/create-drag-model-from-selection/create-summary-drag-handler/create-summary-drag-handler-request.d.ts +7 -0
  509. package/f-draggable/f-node-move/create-drag-model-from-selection/create-summary-drag-handler/create-summary-drag-handler.d.ts +13 -0
  510. package/f-draggable/f-node-move/create-drag-model-from-selection/create-summary-drag-handler/index.d.ts +2 -0
  511. package/f-draggable/f-node-move/create-drag-model-from-selection/get-node-bounding-include-paddings/get-node-bounding-include-paddings-request.d.ts +7 -0
  512. package/f-draggable/f-node-move/create-drag-model-from-selection/get-node-bounding-include-paddings/get-node-bounding-include-paddings-response.d.ts +9 -0
  513. package/f-draggable/f-node-move/create-drag-model-from-selection/get-node-bounding-include-paddings/get-node-bounding-include-paddings.d.ts +13 -0
  514. package/f-draggable/f-node-move/create-drag-model-from-selection/get-node-bounding-include-paddings/index.d.ts +3 -0
  515. package/f-draggable/f-node-move/create-drag-model-from-selection/index.d.ts +11 -0
  516. package/f-draggable/f-node-move/create-drag-model-from-selection/providers.d.ts +8 -0
  517. package/f-draggable/f-node-move/create-snap-lines/create-snap-lines-request.d.ts +6 -0
  518. package/f-draggable/f-node-move/create-snap-lines/create-snap-lines.d.ts +19 -0
  519. package/f-draggable/f-node-move/create-snap-lines/index.d.ts +2 -0
  520. package/f-draggable/f-node-move/create-snap-lines/snap-lines.drag-handler.d.ts +16 -0
  521. package/f-draggable/f-node-move/f-move-nodes.event.d.ts +4 -0
  522. package/f-draggable/f-node-move/index.d.ts +7 -6
  523. package/f-draggable/f-node-move/move-drag-handler.d.ts +33 -0
  524. package/f-draggable/f-node-move/move-finalize/f-node-move-finalize.execution.d.ts +10 -10
  525. package/f-draggable/f-node-move/move-preparation/f-node-move-preparation.execution.d.ts +4 -4
  526. package/f-draggable/f-node-move/move-summary-drag-handler.d.ts +22 -0
  527. package/f-draggable/f-node-move/providers.d.ts +2 -2
  528. package/f-draggable/f-node-resize/apply-child-resize-constraints/apply-child-resize-constraints-request.d.ts +7 -0
  529. package/f-draggable/f-node-resize/apply-child-resize-constraints/apply-child-resize-constraints.d.ts +13 -0
  530. package/f-draggable/f-node-resize/apply-child-resize-constraints/index.d.ts +2 -0
  531. package/f-draggable/f-node-resize/apply-parent-resize-constraints/apply-parent-resize-constraints-request.d.ts +8 -0
  532. package/f-draggable/f-node-resize/apply-parent-resize-constraints/apply-parent-resize-constraints.d.ts +36 -0
  533. package/f-draggable/f-node-resize/apply-parent-resize-constraints/index.d.ts +2 -0
  534. package/f-draggable/f-node-resize/calculate-changed-rect-from-difference/calculate-changed-rect-from-difference-request.d.ts +10 -0
  535. package/f-draggable/f-node-resize/calculate-changed-rect-from-difference/calculate-changed-rect-from-difference.d.ts +11 -0
  536. package/f-draggable/f-node-resize/calculate-changed-rect-from-difference/index.d.ts +2 -0
  537. package/f-draggable/f-node-resize/calculate-direct-children-union-rect/calculate-direct-children-union-rect-request.d.ts +7 -0
  538. package/f-draggable/f-node-resize/calculate-direct-children-union-rect/calculate-direct-children-union-rect.d.ts +15 -0
  539. package/f-draggable/f-node-resize/calculate-direct-children-union-rect/index.d.ts +2 -0
  540. package/f-draggable/f-node-resize/{get-node-resize-restrictions/get-node-resize-restrictions.request.d.ts → calculate-resize-limits/calculate-resize-limits-request.d.ts} +3 -3
  541. package/f-draggable/f-node-resize/calculate-resize-limits/calculate-resize-limits.d.ts +17 -0
  542. package/f-draggable/f-node-resize/calculate-resize-limits/index.d.ts +2 -0
  543. package/f-draggable/f-node-resize/constraint/i-resize-constraint.d.ts +7 -0
  544. package/f-draggable/f-node-resize/constraint/i-resize-limit.d.ts +7 -0
  545. package/f-draggable/f-node-resize/constraint/i-resize-limits.d.ts +5 -0
  546. package/f-draggable/f-node-resize/constraint/i-resize-overflow.d.ts +6 -0
  547. package/f-draggable/f-node-resize/constraint/index.d.ts +4 -0
  548. package/f-draggable/f-node-resize/index.d.ts +7 -7
  549. package/f-draggable/f-node-resize/node-resize.drag-handler.d.ts +25 -0
  550. package/f-draggable/f-node-resize/providers.d.ts +8 -9
  551. package/f-draggable/f-node-resize/resize-finalize/index.d.ts +2 -2
  552. package/f-draggable/{f-drop-to-group/drop-to-group-preparation/f-node-drop-to-group-preparation.request.d.ts → f-node-resize/resize-finalize/node-resize-finalize-request.d.ts} +2 -2
  553. package/f-draggable/f-node-resize/resize-finalize/node-resize-finalize.d.ts +10 -0
  554. package/f-draggable/f-node-resize/resize-preparation/index.d.ts +2 -2
  555. package/f-draggable/f-node-resize/resize-preparation/{f-node-resize-preparation.request.d.ts → node-resize-preparation-request.d.ts} +1 -1
  556. package/f-draggable/f-node-resize/resize-preparation/node-resize-preparation.d.ts +22 -0
  557. package/f-draggable/f-node-rotate/f-node-rotate.drag-handler.d.ts +3 -3
  558. package/f-draggable/f-node-rotate/rotate-finalize/f-node-rotate-finalize.execution.d.ts +1 -1
  559. package/f-draggable/f-node-rotate/rotate-preparation/f-node-rotate-preparation.execution.d.ts +2 -2
  560. package/f-draggable/f-single-select/f-single-select.execution.d.ts +2 -2
  561. package/f-draggable/providers.d.ts +1 -1
  562. package/{f-draggable/f-node-move/point-bounds-limiter.d.ts → f-external-item/domain/constraint/external-rect-constraint.d.ts} +4 -4
  563. package/f-external-item/domain/constraint/index.d.ts +1 -0
  564. package/f-external-item/domain/f-external-item.drag-handler.d.ts +6 -5
  565. package/f-external-item/domain/finalize/f-external-item-finalize.execution.d.ts +3 -3
  566. package/f-external-item/domain/index.d.ts +1 -0
  567. package/f-external-item/domain/preparation/f-external-item-preparation.execution.d.ts +2 -2
  568. package/f-external-item/f-external-item-base.d.ts +3 -3
  569. package/f-external-item/f-external-item-placeholder.directive.d.ts +1 -1
  570. package/f-external-item/f-external-item-preview.directive.d.ts +1 -1
  571. package/f-external-item/f-external-item-token.d.ts +1 -1
  572. package/f-external-item/f-external-item.directive.d.ts +5 -6
  573. package/f-external-item/f-external-item.service.d.ts +1 -1
  574. package/f-line-alignment/domain/{i-nearest-coordinate-result.d.ts → i-snap-coordinate.d.ts} +1 -1
  575. package/f-line-alignment/domain/i-snap-result.d.ts +5 -0
  576. package/f-line-alignment/domain/index.d.ts +4 -4
  577. package/f-line-alignment/domain/{line-element.d.ts → snap-line-element.d.ts} +3 -4
  578. package/f-line-alignment/domain/{line-service.d.ts → snap-line-service.d.ts} +4 -5
  579. package/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.execution.d.ts +5 -7
  580. package/f-minimap/domain/f-minimap.drag-handler.d.ts +10 -10
  581. package/f-minimap/domain/minimap-calculate-view-box/minimap-calculate-view-box.execution.d.ts +3 -3
  582. package/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.d.ts +1 -3
  583. package/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.d.ts +7 -10
  584. package/f-minimap/domain/minimap-draw-nodes/minimap-draw-nodes.execution.d.ts +2 -2
  585. package/f-node/f-group.directive.d.ts +19 -28
  586. package/f-node/f-node-base.d.ts +26 -17
  587. package/f-node/f-node.directive.d.ts +19 -28
  588. package/f-selection-area/domain/selection-area-finalize/selection-area-finalize.execution.d.ts +2 -2
  589. package/f-selection-area/domain/selection-area-preparation/selection-area-preparation.execution.d.ts +2 -2
  590. package/f-selection-area/domain/selection-area.drag-handle.d.ts +3 -3
  591. package/f-storage/f-components-store.d.ts +1 -1
  592. package/f-storage/features/listen-components-data-changed/listen-data-changes.execution.d.ts +2 -2
  593. package/f-storage/features/listen-count-changes/listen-count-changes.execution.d.ts +2 -2
  594. package/f-storage/features/listen-transform-changes/listen-transform-changes.execution.d.ts +2 -2
  595. package/f-storage/features/notify-data-changed/notify-data-changed.execution.d.ts +2 -2
  596. package/f-storage/features/notify-transform-changed/notify-transform-changed.execution.d.ts +2 -2
  597. package/fesm2022/foblex-flow.mjs +2276 -1768
  598. package/fesm2022/foblex-flow.mjs.map +1 -1
  599. package/mixins/change-selection/i-selectable.d.ts +1 -1
  600. package/package.json +1 -1
  601. package/reactivity/f-resize-channel.d.ts +2 -2
  602. package/reactivity/index.d.ts +0 -1
  603. package/schematics/ng-add/index.js +1 -1
  604. package/schematics/ng-add/index.js.map +1 -1
  605. package/schematics/ng-update/index.js +1 -1
  606. package/schematics/ng-update/index.js.map +1 -1
  607. package/schematics/shared/foblex-dependencies.js +1 -1
  608. package/utils/infinity-min-max.d.ts +1 -1
  609. package/esm2022/domain/f-draggable/is-drag-started/is-drag-started.execution.mjs +0 -25
  610. package/esm2022/domain/f-node/add-node-to-store/add-node-to-store.execution.mjs +0 -25
  611. package/esm2022/domain/f-node/calculate-input-connections/calculate-input-connections.execution.mjs +0 -34
  612. package/esm2022/domain/f-node/calculate-nodes-bounding-box/calculate-nodes-bounding-box.execution.mjs +0 -35
  613. package/esm2022/domain/f-node/calculate-nodes-bounding-box-normalized-position/calculate-nodes-bounding-box-normalized-position.execution.mjs +0 -36
  614. package/esm2022/domain/f-node/calculate-output-connections/calculate-output-connections.execution.mjs +0 -34
  615. package/esm2022/domain/f-node/get-node-padding/get-node-padding.execution.mjs +0 -35
  616. package/esm2022/domain/f-node/get-nodes/get-nodes.execution.mjs +0 -25
  617. package/esm2022/domain/f-node/get-parent-nodes/get-parent-nodes.execution.mjs +0 -37
  618. package/esm2022/domain/f-node/remove-node-from-store/remove-node-from-store.execution.mjs +0 -25
  619. package/esm2022/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed.execution.mjs +0 -95
  620. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-finalize/f-node-drop-to-group-finalize.execution.mjs +0 -57
  621. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-finalize/f-node-drop-to-group-finalize.request.mjs +0 -8
  622. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-preparation/f-node-drop-to-group-preparation.execution.mjs +0 -83
  623. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-preparation/f-node-drop-to-group-preparation.request.mjs +0 -8
  624. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.mjs +0 -110
  625. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.request.mjs +0 -8
  626. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/calculate-common-node-move-limits.execution.mjs +0 -69
  627. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/calculate-common-node-move-limits.request.mjs +0 -8
  628. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/index.mjs +0 -3
  629. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/calculate-node-move-limits.execution.mjs +0 -46
  630. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/calculate-node-move-limits.request.mjs +0 -10
  631. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/index.mjs +0 -3
  632. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/index.mjs +0 -3
  633. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.execution.mjs +0 -60
  634. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.request.mjs +0 -12
  635. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/index.mjs +0 -3
  636. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.execution.mjs +0 -60
  637. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.request.mjs +0 -12
  638. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/i-node-move-limits-and-position.mjs +0 -2
  639. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/i-node-move-limits.mjs +0 -2
  640. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/index.mjs +0 -10
  641. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/providers.mjs +0 -13
  642. package/esm2022/f-draggable/f-node-move/f-line-alignment.drag-handler.mjs +0 -63
  643. package/esm2022/f-draggable/f-node-move/f-node-move.drag-handler.mjs +0 -30
  644. package/esm2022/f-draggable/f-node-move/f-summary-node-move.drag-handler.mjs +0 -33
  645. package/esm2022/f-draggable/f-node-move/line-alignment-preparation/index.mjs +0 -3
  646. package/esm2022/f-draggable/f-node-move/line-alignment-preparation/line-alignment-preparation.execution.mjs +0 -57
  647. package/esm2022/f-draggable/f-node-move/line-alignment-preparation/line-alignment-preparation.request.mjs +0 -10
  648. package/esm2022/f-draggable/f-node-move/point-bounds-limiter.mjs +0 -43
  649. package/esm2022/f-draggable/f-node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.execution.mjs +0 -53
  650. package/esm2022/f-draggable/f-node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.request.mjs +0 -10
  651. package/esm2022/f-draggable/f-node-resize/apply-child-resize-restrictions/index.mjs +0 -3
  652. package/esm2022/f-draggable/f-node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.execution.mjs +0 -49
  653. package/esm2022/f-draggable/f-node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.request.mjs +0 -10
  654. package/esm2022/f-draggable/f-node-resize/apply-parent-resize-restrictions/index.mjs +0 -3
  655. package/esm2022/f-draggable/f-node-resize/calculate-changed-position/calculate-changed-position.execution.mjs +0 -25
  656. package/esm2022/f-draggable/f-node-resize/calculate-changed-position/calculate-changed-position.request.mjs +0 -14
  657. package/esm2022/f-draggable/f-node-resize/calculate-changed-position/index.mjs +0 -3
  658. package/esm2022/f-draggable/f-node-resize/calculate-changed-size/calculate-changed-size.execution.mjs +0 -34
  659. package/esm2022/f-draggable/f-node-resize/calculate-changed-size/calculate-changed-size.request.mjs +0 -12
  660. package/esm2022/f-draggable/f-node-resize/calculate-changed-size/index.mjs +0 -3
  661. package/esm2022/f-draggable/f-node-resize/f-node-resize.drag-handler.mjs +0 -73
  662. package/esm2022/f-draggable/f-node-resize/get-node-resize-restrictions/get-node-resize-restrictions.execution.mjs +0 -39
  663. package/esm2022/f-draggable/f-node-resize/get-node-resize-restrictions/get-node-resize-restrictions.request.mjs +0 -10
  664. package/esm2022/f-draggable/f-node-resize/get-node-resize-restrictions/i-node-resize-restrictions.mjs +0 -2
  665. package/esm2022/f-draggable/f-node-resize/get-node-resize-restrictions/index.mjs +0 -4
  666. package/esm2022/f-draggable/f-node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.execution.mjs +0 -38
  667. package/esm2022/f-draggable/f-node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.request.mjs +0 -10
  668. package/esm2022/f-draggable/f-node-resize/get-normalized-children-nodes-rect/index.mjs +0 -3
  669. package/esm2022/f-draggable/f-node-resize/resize-finalize/f-node-resize-finalize.execution.mjs +0 -31
  670. package/esm2022/f-draggable/f-node-resize/resize-finalize/f-node-resize-finalize.request.mjs +0 -8
  671. package/esm2022/f-draggable/f-node-resize/resize-preparation/f-node-resize-preparation.execution.mjs +0 -73
  672. package/esm2022/f-draggable/f-node-resize/resize-preparation/f-node-resize-preparation.request.mjs +0 -10
  673. package/esm2022/f-line-alignment/domain/i-line-alignment-result.mjs +0 -2
  674. package/esm2022/f-line-alignment/domain/i-nearest-coordinate-result.mjs +0 -2
  675. package/esm2022/f-line-alignment/domain/line-element.mjs +0 -24
  676. package/esm2022/f-line-alignment/domain/line-service.mjs +0 -38
  677. package/esm2022/reactivity/mediator-effect.mjs +0 -14
  678. package/f-draggable/f-drop-to-group/drop-to-group-finalize/f-node-drop-to-group-finalize.execution.d.ts +0 -15
  679. package/f-draggable/f-drop-to-group/drop-to-group-preparation/f-node-drop-to-group-preparation.execution.d.ts +0 -22
  680. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.d.ts +0 -29
  681. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/calculate-common-node-move-limits.execution.d.ts +0 -19
  682. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/calculate-common-node-move-limits.request.d.ts +0 -6
  683. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/index.d.ts +0 -2
  684. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/calculate-node-move-limits.execution.d.ts +0 -15
  685. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/calculate-node-move-limits.request.d.ts +0 -7
  686. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/index.d.ts +0 -2
  687. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/index.d.ts +0 -2
  688. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.execution.d.ts +0 -16
  689. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.request.d.ts +0 -9
  690. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/index.d.ts +0 -2
  691. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.execution.d.ts +0 -18
  692. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.request.d.ts +0 -9
  693. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/index.d.ts +0 -9
  694. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/providers.d.ts +0 -6
  695. package/f-draggable/f-node-move/f-line-alignment.drag-handler.d.ts +0 -21
  696. package/f-draggable/f-node-move/f-node-move.drag-handler.d.ts +0 -16
  697. package/f-draggable/f-node-move/f-summary-node-move.drag-handler.d.ts +0 -17
  698. package/f-draggable/f-node-move/line-alignment-preparation/index.d.ts +0 -2
  699. package/f-draggable/f-node-move/line-alignment-preparation/line-alignment-preparation.execution.d.ts +0 -20
  700. package/f-draggable/f-node-move/line-alignment-preparation/line-alignment-preparation.request.d.ts +0 -8
  701. package/f-draggable/f-node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.execution.d.ts +0 -13
  702. package/f-draggable/f-node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.request.d.ts +0 -8
  703. package/f-draggable/f-node-resize/apply-child-resize-restrictions/index.d.ts +0 -2
  704. package/f-draggable/f-node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.execution.d.ts +0 -13
  705. package/f-draggable/f-node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.request.d.ts +0 -7
  706. package/f-draggable/f-node-resize/apply-parent-resize-restrictions/index.d.ts +0 -2
  707. package/f-draggable/f-node-resize/calculate-changed-position/calculate-changed-position.execution.d.ts +0 -10
  708. package/f-draggable/f-node-resize/calculate-changed-position/calculate-changed-position.request.d.ts +0 -10
  709. package/f-draggable/f-node-resize/calculate-changed-position/index.d.ts +0 -2
  710. package/f-draggable/f-node-resize/calculate-changed-size/calculate-changed-size.execution.d.ts +0 -10
  711. package/f-draggable/f-node-resize/calculate-changed-size/calculate-changed-size.request.d.ts +0 -9
  712. package/f-draggable/f-node-resize/calculate-changed-size/index.d.ts +0 -2
  713. package/f-draggable/f-node-resize/f-node-resize.drag-handler.d.ts +0 -27
  714. package/f-draggable/f-node-resize/get-node-resize-restrictions/get-node-resize-restrictions.execution.d.ts +0 -13
  715. package/f-draggable/f-node-resize/get-node-resize-restrictions/i-node-resize-restrictions.d.ts +0 -6
  716. package/f-draggable/f-node-resize/get-node-resize-restrictions/index.d.ts +0 -3
  717. package/f-draggable/f-node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.execution.d.ts +0 -14
  718. package/f-draggable/f-node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.request.d.ts +0 -7
  719. package/f-draggable/f-node-resize/get-normalized-children-nodes-rect/index.d.ts +0 -2
  720. package/f-draggable/f-node-resize/resize-finalize/f-node-resize-finalize.execution.d.ts +0 -10
  721. package/f-draggable/f-node-resize/resize-preparation/f-node-resize-preparation.execution.d.ts +0 -22
  722. package/f-line-alignment/domain/i-line-alignment-result.d.ts +0 -5
  723. package/reactivity/mediator-effect.d.ts +0 -2
  724. /package/f-draggable/f-node-move/{create-move-nodes-drag-model-from-selection → create-drag-model-from-selection}/i-node-move-limits-and-position.d.ts +0 -0
  725. /package/f-draggable/f-node-move/{create-move-nodes-drag-model-from-selection → create-drag-model-from-selection}/i-node-move-limits.d.ts +0 -0
@@ -0,0 +1,17 @@
1
+ import { CreateDragModelFromSelection } from './create-drag-model-from-selection';
2
+ import { CreateInputConnectionHandlerAndSetToNodeHandler } from './create-input-connection-handler-and-set-to-node-handler';
3
+ import { CreateOutputConnectionHandlerAndSetToNodeHandler } from './create-output-connection-handler-and-set-to-node-handler';
4
+ import { BuildDragHierarchy } from "./build-drag-hierarchy";
5
+ import { CalculateDragLimits } from "./calculate-drag-limits";
6
+ import { CreateSummaryDragHandler } from "./create-summary-drag-handler";
7
+ import { GetNodeBoundingIncludePaddings } from "./get-node-bounding-include-paddings";
8
+ export const CREATE_MOVE_NODE_DRAG_MODEL_FROM_SELECTION_PROVIDERS = [
9
+ BuildDragHierarchy,
10
+ CalculateDragLimits,
11
+ CreateSummaryDragHandler,
12
+ CreateInputConnectionHandlerAndSetToNodeHandler,
13
+ CreateOutputConnectionHandlerAndSetToNodeHandler,
14
+ GetNodeBoundingIncludePaddings,
15
+ CreateDragModelFromSelection,
16
+ ];
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLW5vZGUtbW92ZS9jcmVhdGUtZHJhZy1tb2RlbC1mcm9tLXNlbGVjdGlvbi9wcm92aWRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDbEYsT0FBTyxFQUFFLCtDQUErQyxFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDNUgsT0FBTyxFQUFFLGdEQUFnRCxFQUFFLE1BQU0sNERBQTRELENBQUM7QUFDOUgsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDekUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFdEYsTUFBTSxDQUFDLE1BQU0sb0RBQW9ELEdBQUc7SUFFbEUsa0JBQWtCO0lBRWxCLG1CQUFtQjtJQUVuQix3QkFBd0I7SUFFeEIsK0NBQStDO0lBRS9DLGdEQUFnRDtJQUVoRCw4QkFBOEI7SUFFOUIsNEJBQTRCO0NBQzdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDcmVhdGVEcmFnTW9kZWxGcm9tU2VsZWN0aW9uIH0gZnJvbSAnLi9jcmVhdGUtZHJhZy1tb2RlbC1mcm9tLXNlbGVjdGlvbic7XG5pbXBvcnQgeyBDcmVhdGVJbnB1dENvbm5lY3Rpb25IYW5kbGVyQW5kU2V0VG9Ob2RlSGFuZGxlciB9IGZyb20gJy4vY3JlYXRlLWlucHV0LWNvbm5lY3Rpb24taGFuZGxlci1hbmQtc2V0LXRvLW5vZGUtaGFuZGxlcic7XG5pbXBvcnQgeyBDcmVhdGVPdXRwdXRDb25uZWN0aW9uSGFuZGxlckFuZFNldFRvTm9kZUhhbmRsZXIgfSBmcm9tICcuL2NyZWF0ZS1vdXRwdXQtY29ubmVjdGlvbi1oYW5kbGVyLWFuZC1zZXQtdG8tbm9kZS1oYW5kbGVyJztcbmltcG9ydCB7IEJ1aWxkRHJhZ0hpZXJhcmNoeSB9IGZyb20gXCIuL2J1aWxkLWRyYWctaGllcmFyY2h5XCI7XG5pbXBvcnQgeyBDYWxjdWxhdGVEcmFnTGltaXRzIH0gZnJvbSBcIi4vY2FsY3VsYXRlLWRyYWctbGltaXRzXCI7XG5pbXBvcnQgeyBDcmVhdGVTdW1tYXJ5RHJhZ0hhbmRsZXIgfSBmcm9tIFwiLi9jcmVhdGUtc3VtbWFyeS1kcmFnLWhhbmRsZXJcIjtcbmltcG9ydCB7IEdldE5vZGVCb3VuZGluZ0luY2x1ZGVQYWRkaW5ncyB9IGZyb20gXCIuL2dldC1ub2RlLWJvdW5kaW5nLWluY2x1ZGUtcGFkZGluZ3NcIjtcblxuZXhwb3J0IGNvbnN0IENSRUFURV9NT1ZFX05PREVfRFJBR19NT0RFTF9GUk9NX1NFTEVDVElPTl9QUk9WSURFUlMgPSBbXG5cbiAgQnVpbGREcmFnSGllcmFyY2h5LFxuXG4gIENhbGN1bGF0ZURyYWdMaW1pdHMsXG5cbiAgQ3JlYXRlU3VtbWFyeURyYWdIYW5kbGVyLFxuXG4gIENyZWF0ZUlucHV0Q29ubmVjdGlvbkhhbmRsZXJBbmRTZXRUb05vZGVIYW5kbGVyLFxuXG4gIENyZWF0ZU91dHB1dENvbm5lY3Rpb25IYW5kbGVyQW5kU2V0VG9Ob2RlSGFuZGxlcixcblxuICBHZXROb2RlQm91bmRpbmdJbmNsdWRlUGFkZGluZ3MsXG5cbiAgQ3JlYXRlRHJhZ01vZGVsRnJvbVNlbGVjdGlvbixcbl07XG4iXX0=
@@ -0,0 +1,8 @@
1
+ export class CreateSnapLinesRequest {
2
+ summaryHandler;
3
+ static fToken = Symbol('CreateSnapLinesRequest');
4
+ constructor(summaryHandler) {
5
+ this.summaryHandler = summaryHandler;
6
+ }
7
+ }
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXNuYXAtbGluZXMtcmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1ub2RlLW1vdmUvY3JlYXRlLXNuYXAtbGluZXMvY3JlYXRlLXNuYXAtbGluZXMtcmVxdWVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sc0JBQXNCO0lBSWY7SUFIbEIsTUFBTSxDQUFVLE1BQU0sR0FBRyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztJQUUxRCxZQUNrQixjQUFzQztRQUF0QyxtQkFBYyxHQUFkLGNBQWMsQ0FBd0I7SUFFeEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vdmVTdW1tYXJ5RHJhZ0hhbmRsZXIgfSBmcm9tIFwiLi4vbW92ZS1zdW1tYXJ5LWRyYWctaGFuZGxlclwiO1xuXG5leHBvcnQgY2xhc3MgQ3JlYXRlU25hcExpbmVzUmVxdWVzdCB7XG4gIHN0YXRpYyByZWFkb25seSBmVG9rZW4gPSBTeW1ib2woJ0NyZWF0ZVNuYXBMaW5lc1JlcXVlc3QnKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgc3VtbWFyeUhhbmRsZXI6IE1vdmVTdW1tYXJ5RHJhZ0hhbmRsZXIsXG4gICkge1xuICB9XG59XG4iXX0=
@@ -0,0 +1,52 @@
1
+ import { __decorate } from "tslib";
2
+ import { inject, Injectable, Injector } from '@angular/core';
3
+ import { CreateSnapLinesRequest } from './create-snap-lines-request';
4
+ import { FExecutionRegister, FMediator } from '@foblex/mediator';
5
+ import { GetFlowHostElementRequest } from '../../../domain';
6
+ import { GetNormalizedElementRectRequest } from '../../../domain';
7
+ import { FComponentsStore } from '../../../f-storage';
8
+ import { SnapLinesDragHandler } from './snap-lines.drag-handler';
9
+ import { SnapLineService } from '../../../f-line-alignment';
10
+ import { BrowserService } from '@foblex/platform';
11
+ import * as i0 from "@angular/core";
12
+ let CreateSnapLines = class CreateSnapLines {
13
+ _mediator = inject(FMediator);
14
+ _store = inject(FComponentsStore);
15
+ _browser = inject(BrowserService);
16
+ _injector = inject(Injector);
17
+ _lineService;
18
+ handle({ summaryHandler }) {
19
+ this._addLineAlignmentDragHandler(summaryHandler);
20
+ }
21
+ _addLineAlignmentDragHandler(handler) {
22
+ handler.setLineAlignment(new SnapLinesDragHandler(this._injector, this._lineService || this._createLineService(), this._getFlowHostSize(), this._collectNotDraggedNodeRects(this._allDraggedNodes(handler))));
23
+ }
24
+ _allDraggedNodes(handler) {
25
+ return handler.allDraggedNodeHandlers.map((x) => x.nodeOrGroup);
26
+ }
27
+ _getFlowHostSize() {
28
+ return this._mediator.execute(new GetFlowHostElementRequest()).getBoundingClientRect();
29
+ }
30
+ _createLineService() {
31
+ this._lineService = new SnapLineService(this._browser, this._store.fLineAlignment.hostElement);
32
+ return this._lineService;
33
+ }
34
+ _collectNotDraggedNodeRects(allDraggedNodes) {
35
+ return this._calculateNotDraggedNodes(allDraggedNodes).map((x) => {
36
+ return this._mediator.execute(new GetNormalizedElementRectRequest(x.hostElement));
37
+ });
38
+ }
39
+ _calculateNotDraggedNodes(allDraggedNodes) {
40
+ return this._store.fNodes.filter((x) => !allDraggedNodes.includes(x));
41
+ }
42
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CreateSnapLines, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
43
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CreateSnapLines });
44
+ };
45
+ CreateSnapLines = __decorate([
46
+ FExecutionRegister(CreateSnapLinesRequest)
47
+ ], CreateSnapLines);
48
+ export { CreateSnapLines };
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CreateSnapLines, decorators: [{
50
+ type: Injectable
51
+ }] });
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXNuYXAtbGluZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2Ytbm9kZS1tb3ZlL2NyZWF0ZS1zbmFwLWxpbmVzL2NyZWF0ZS1zbmFwLWxpbmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFckUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQzdFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzVELE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXRELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRWpFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBSTNDLElBQU0sZUFBZSxHQUFyQixNQUFNLGVBQWU7SUFFVCxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlCLE1BQU0sR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNsQyxRQUFRLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ2xDLFNBQVMsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFdEMsWUFBWSxDQUE4QjtJQUUzQyxNQUFNLENBQUMsRUFBRSxjQUFjLEVBQTBCO1FBQ3RELElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRU8sNEJBQTRCLENBQUMsT0FBK0I7UUFDbEUsT0FBTyxDQUFDLGdCQUFnQixDQUN0QixJQUFJLG9CQUFvQixDQUN0QixJQUFJLENBQUMsU0FBUyxFQUNkLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFLEVBQzlDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxFQUN2QixJQUFJLENBQUMsMkJBQTJCLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQ2pFLENBQ0YsQ0FBQTtJQUNILENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxPQUErQjtRQUN0RCxPQUFPLE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQWMsSUFBSSx5QkFBeUIsRUFBRSxDQUFDLENBQUMscUJBQXFCLEVBQUUsQ0FBQztJQUN0RyxDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUVoRyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVPLDJCQUEyQixDQUFDLGVBQTRCO1FBQzlELE9BQU8sSUFBSSxDQUFDLHlCQUF5QixDQUFDLGVBQWUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQy9ELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQVEsSUFBSSwrQkFBK0IsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztRQUMzRixDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFTyx5QkFBeUIsQ0FBQyxlQUE0QjtRQUM1RCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEUsQ0FBQzt3R0E5Q1UsZUFBZTs0R0FBZixlQUFlOztBQUFmLGVBQWU7SUFEM0Isa0JBQWtCLENBQUMsc0JBQXNCLENBQUM7R0FDOUIsZUFBZSxDQStDM0I7OzRGQS9DWSxlQUFlO2tCQUYzQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ3JlYXRlU25hcExpbmVzUmVxdWVzdCB9IGZyb20gJy4vY3JlYXRlLXNuYXAtbGluZXMtcmVxdWVzdCc7XG5pbXBvcnQgeyBJUmVjdCwgSVNpemUgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBHZXRGbG93SG9zdEVsZW1lbnRSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IEdldE5vcm1hbGl6ZWRFbGVtZW50UmVjdFJlcXVlc3QgfSBmcm9tICcuLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBNb3ZlU3VtbWFyeURyYWdIYW5kbGVyIH0gZnJvbSAnLi4vLi4vaW5kZXgnO1xuaW1wb3J0IHsgU25hcExpbmVzRHJhZ0hhbmRsZXIgfSBmcm9tICcuL3NuYXAtbGluZXMuZHJhZy1oYW5kbGVyJztcbmltcG9ydCB7IEZOb2RlQmFzZSB9IGZyb20gJy4uLy4uLy4uL2Ytbm9kZSc7XG5pbXBvcnQgeyBTbmFwTGluZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9mLWxpbmUtYWxpZ25tZW50JztcbmltcG9ydCB7IEJyb3dzZXJTZXJ2aWNlIH0gZnJvbSAnQGZvYmxleC9wbGF0Zm9ybSc7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoQ3JlYXRlU25hcExpbmVzUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBDcmVhdGVTbmFwTGluZXMgaW1wbGVtZW50cyBJRXhlY3V0aW9uPENyZWF0ZVNuYXBMaW5lc1JlcXVlc3QsIHZvaWQ+IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9zdG9yZSA9IGluamVjdChGQ29tcG9uZW50c1N0b3JlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfYnJvd3NlciA9IGluamVjdChCcm93c2VyU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2luamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcblxuICBwcml2YXRlIF9saW5lU2VydmljZTogU25hcExpbmVTZXJ2aWNlIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBoYW5kbGUoeyBzdW1tYXJ5SGFuZGxlciB9OiBDcmVhdGVTbmFwTGluZXNSZXF1ZXN0KTogdm9pZCB7XG4gICAgdGhpcy5fYWRkTGluZUFsaWdubWVudERyYWdIYW5kbGVyKHN1bW1hcnlIYW5kbGVyKTtcbiAgfVxuXG4gIHByaXZhdGUgX2FkZExpbmVBbGlnbm1lbnREcmFnSGFuZGxlcihoYW5kbGVyOiBNb3ZlU3VtbWFyeURyYWdIYW5kbGVyKTogdm9pZCB7XG4gICAgaGFuZGxlci5zZXRMaW5lQWxpZ25tZW50KFxuICAgICAgbmV3IFNuYXBMaW5lc0RyYWdIYW5kbGVyKFxuICAgICAgICB0aGlzLl9pbmplY3RvcixcbiAgICAgICAgdGhpcy5fbGluZVNlcnZpY2UgfHwgdGhpcy5fY3JlYXRlTGluZVNlcnZpY2UoKSxcbiAgICAgICAgdGhpcy5fZ2V0Rmxvd0hvc3RTaXplKCksXG4gICAgICAgIHRoaXMuX2NvbGxlY3ROb3REcmFnZ2VkTm9kZVJlY3RzKHRoaXMuX2FsbERyYWdnZWROb2RlcyhoYW5kbGVyKSksXG4gICAgICApLFxuICAgIClcbiAgfVxuXG4gIHByaXZhdGUgX2FsbERyYWdnZWROb2RlcyhoYW5kbGVyOiBNb3ZlU3VtbWFyeURyYWdIYW5kbGVyKTogRk5vZGVCYXNlW10ge1xuICAgIHJldHVybiBoYW5kbGVyLmFsbERyYWdnZWROb2RlSGFuZGxlcnMubWFwKCh4KSA9PiB4Lm5vZGVPckdyb3VwKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldEZsb3dIb3N0U2l6ZSgpOiBJU2l6ZSB7XG4gICAgcmV0dXJuIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8SFRNTEVsZW1lbnQ+KG5ldyBHZXRGbG93SG9zdEVsZW1lbnRSZXF1ZXN0KCkpLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY3JlYXRlTGluZVNlcnZpY2UoKTogU25hcExpbmVTZXJ2aWNlIHtcbiAgICB0aGlzLl9saW5lU2VydmljZSA9IG5ldyBTbmFwTGluZVNlcnZpY2UodGhpcy5fYnJvd3NlciwgdGhpcy5fc3RvcmUuZkxpbmVBbGlnbm1lbnQhLmhvc3RFbGVtZW50KTtcblxuICAgIHJldHVybiB0aGlzLl9saW5lU2VydmljZTtcbiAgfVxuXG4gIHByaXZhdGUgX2NvbGxlY3ROb3REcmFnZ2VkTm9kZVJlY3RzKGFsbERyYWdnZWROb2RlczogRk5vZGVCYXNlW10pOiBJUmVjdFtdIHtcbiAgICByZXR1cm4gdGhpcy5fY2FsY3VsYXRlTm90RHJhZ2dlZE5vZGVzKGFsbERyYWdnZWROb2RlcykubWFwKCh4KSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTxJUmVjdD4obmV3IEdldE5vcm1hbGl6ZWRFbGVtZW50UmVjdFJlcXVlc3QoeC5ob3N0RWxlbWVudCkpO1xuICAgIH0pXG4gIH1cblxuICBwcml2YXRlIF9jYWxjdWxhdGVOb3REcmFnZ2VkTm9kZXMoYWxsRHJhZ2dlZE5vZGVzOiBGTm9kZUJhc2VbXSk6IEZOb2RlQmFzZVtdIHtcbiAgICByZXR1cm4gdGhpcy5fc3RvcmUuZk5vZGVzLmZpbHRlcigoeCkgPT4gIWFsbERyYWdnZWROb2Rlcy5pbmNsdWRlcyh4KSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './create-snap-lines';
2
+ export * from './create-snap-lines-request';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2Ytbm9kZS1tb3ZlL2NyZWF0ZS1zbmFwLWxpbmVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMscUJBQXFCLENBQUM7QUFFcEMsY0FBYyw2QkFBNkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY3JlYXRlLXNuYXAtbGluZXMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2NyZWF0ZS1zbmFwLWxpbmVzLXJlcXVlc3QnO1xuIl19
@@ -0,0 +1,51 @@
1
+ import { findClosestAlignment } from '@foblex/2d';
2
+ import { FComponentsStore } from '../../../f-storage';
3
+ export class SnapLinesDragHandler {
4
+ _lineService;
5
+ _size;
6
+ _rects;
7
+ _debounceTimer = null;
8
+ _canvasTransform;
9
+ _alignThreshold = 10;
10
+ constructor(injector, _lineService, _size, _rects) {
11
+ this._lineService = _lineService;
12
+ this._size = _size;
13
+ this._rects = _rects;
14
+ const store = injector.get(FComponentsStore);
15
+ this._alignThreshold = store.fLineAlignment.fAlignThreshold();
16
+ this._canvasTransform = store.fCanvas?.transform;
17
+ }
18
+ drawGuidesFor(_draggedRect) {
19
+ if (this._debounceTimer) {
20
+ clearTimeout(this._debounceTimer);
21
+ }
22
+ this._debounceTimer = setTimeout(() => this._renderGuides(_draggedRect), 15);
23
+ }
24
+ _renderGuides(_draggedRect) {
25
+ const intersect = this.findClosestAlignment(_draggedRect);
26
+ if (intersect.xResult.value !== undefined) {
27
+ this._lineService.drawVerticalLine(intersect.xResult.value, this._size, this._canvasTransform);
28
+ }
29
+ else {
30
+ this._lineService.hideVerticalLine();
31
+ }
32
+ if (intersect.yResult.value !== undefined) {
33
+ this._lineService.drawHorizontalLine(intersect.yResult.value, this._size, this._canvasTransform);
34
+ }
35
+ else {
36
+ this._lineService.hideHorizontalLine();
37
+ }
38
+ }
39
+ findClosestAlignment(_draggedRect) {
40
+ return findClosestAlignment(this._rects, _draggedRect, this._alignThreshold);
41
+ }
42
+ clearGuides() {
43
+ this._lineService.hideVerticalLine();
44
+ this._lineService.hideHorizontalLine();
45
+ if (this._debounceTimer) {
46
+ clearTimeout(this._debounceTimer);
47
+ this._debounceTimer = null;
48
+ }
49
+ }
50
+ }
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hcC1saW5lcy5kcmFnLWhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2Ytbm9kZS1tb3ZlL2NyZWF0ZS1zbmFwLWxpbmVzL3NuYXAtbGluZXMuZHJhZy1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBaUMsTUFBTSxZQUFZLENBQUM7QUFDakYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFJdEQsTUFBTSxPQUFPLG9CQUFvQjtJQVFyQjtJQUNBO0lBQ0E7SUFURixjQUFjLEdBQXlDLElBQUksQ0FBQztJQUVuRCxnQkFBZ0IsQ0FBa0I7SUFDbEMsZUFBZSxHQUFXLEVBQUUsQ0FBQztJQUU5QyxZQUNFLFFBQWtCLEVBQ1YsWUFBNkIsRUFDN0IsS0FBWSxFQUNaLE1BQWU7UUFGZixpQkFBWSxHQUFaLFlBQVksQ0FBaUI7UUFDN0IsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUNaLFdBQU0sR0FBTixNQUFNLENBQVM7UUFFdkIsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDLGNBQWUsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUMvRCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLE9BQU8sRUFBRSxTQUFVLENBQUM7SUFDcEQsQ0FBQztJQUVNLGFBQWEsQ0FBQyxZQUFtQjtRQUN0QyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN4QixZQUFZLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3BDLENBQUM7UUFFRCxJQUFJLENBQUMsY0FBYyxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQy9FLENBQUM7SUFFTyxhQUFhLENBQUMsWUFBbUI7UUFDdkMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzFELElBQUksU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDMUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsQ0FDaEMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQ3ZCLElBQUksQ0FBQyxLQUFLLEVBQ1YsSUFBSSxDQUFDLGdCQUFnQixDQUN0QixDQUFDO1FBQ0osQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsWUFBWSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDdkMsQ0FBQztRQUNELElBQUksU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDMUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxrQkFBa0IsQ0FDbEMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQ3ZCLElBQUksQ0FBQyxLQUFLLEVBQ1YsSUFBSSxDQUFDLGdCQUFnQixDQUN0QixDQUFDO1FBQ0osQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsWUFBWSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDekMsQ0FBQztJQUNILENBQUM7SUFFTSxvQkFBb0IsQ0FBQyxZQUFtQjtRQUM3QyxPQUFPLG9CQUFvQixDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsWUFBWSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsWUFBWSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDckMsSUFBSSxDQUFDLFlBQVksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBRXZDLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3hCLFlBQVksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDbEMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7UUFDN0IsQ0FBQztJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZpbmRDbG9zZXN0QWxpZ25tZW50LCBJUmVjdCwgSVNpemUsIElUcmFuc2Zvcm1Nb2RlbCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBJU25hcFJlc3VsdCwgU25hcExpbmVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vZi1saW5lLWFsaWdubWVudCc7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgY2xhc3MgU25hcExpbmVzRHJhZ0hhbmRsZXIge1xuICBwcml2YXRlIF9kZWJvdW5jZVRpbWVyOiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PiB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2NhbnZhc1RyYW5zZm9ybTogSVRyYW5zZm9ybU1vZGVsO1xuICBwcml2YXRlIHJlYWRvbmx5IF9hbGlnblRocmVzaG9sZDogbnVtYmVyID0gMTA7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIHByaXZhdGUgX2xpbmVTZXJ2aWNlOiBTbmFwTGluZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBfc2l6ZTogSVNpemUsXG4gICAgcHJpdmF0ZSBfcmVjdHM6IElSZWN0W10sXG4gICkge1xuICAgIGNvbnN0IHN0b3JlID0gaW5qZWN0b3IuZ2V0KEZDb21wb25lbnRzU3RvcmUpO1xuICAgIHRoaXMuX2FsaWduVGhyZXNob2xkID0gc3RvcmUuZkxpbmVBbGlnbm1lbnQhLmZBbGlnblRocmVzaG9sZCgpO1xuICAgIHRoaXMuX2NhbnZhc1RyYW5zZm9ybSA9IHN0b3JlLmZDYW52YXM/LnRyYW5zZm9ybSE7XG4gIH1cblxuICBwdWJsaWMgZHJhd0d1aWRlc0ZvcihfZHJhZ2dlZFJlY3Q6IElSZWN0KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2RlYm91bmNlVGltZXIpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLl9kZWJvdW5jZVRpbWVyKTtcbiAgICB9XG5cbiAgICB0aGlzLl9kZWJvdW5jZVRpbWVyID0gc2V0VGltZW91dCgoKSA9PiB0aGlzLl9yZW5kZXJHdWlkZXMoX2RyYWdnZWRSZWN0KSwgMTUpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVuZGVyR3VpZGVzKF9kcmFnZ2VkUmVjdDogSVJlY3QpOiB2b2lkIHtcbiAgICBjb25zdCBpbnRlcnNlY3QgPSB0aGlzLmZpbmRDbG9zZXN0QWxpZ25tZW50KF9kcmFnZ2VkUmVjdCk7XG4gICAgaWYgKGludGVyc2VjdC54UmVzdWx0LnZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuX2xpbmVTZXJ2aWNlLmRyYXdWZXJ0aWNhbExpbmUoXG4gICAgICAgIGludGVyc2VjdC54UmVzdWx0LnZhbHVlLFxuICAgICAgICB0aGlzLl9zaXplLFxuICAgICAgICB0aGlzLl9jYW52YXNUcmFuc2Zvcm0sXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9saW5lU2VydmljZS5oaWRlVmVydGljYWxMaW5lKCk7XG4gICAgfVxuICAgIGlmIChpbnRlcnNlY3QueVJlc3VsdC52YWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLl9saW5lU2VydmljZS5kcmF3SG9yaXpvbnRhbExpbmUoXG4gICAgICAgIGludGVyc2VjdC55UmVzdWx0LnZhbHVlLFxuICAgICAgICB0aGlzLl9zaXplLFxuICAgICAgICB0aGlzLl9jYW52YXNUcmFuc2Zvcm0sXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9saW5lU2VydmljZS5oaWRlSG9yaXpvbnRhbExpbmUoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZmluZENsb3Nlc3RBbGlnbm1lbnQoX2RyYWdnZWRSZWN0OiBJUmVjdCk6IElTbmFwUmVzdWx0IHtcbiAgICByZXR1cm4gZmluZENsb3Nlc3RBbGlnbm1lbnQodGhpcy5fcmVjdHMsIF9kcmFnZ2VkUmVjdCwgdGhpcy5fYWxpZ25UaHJlc2hvbGQpO1xuICB9XG5cbiAgcHVibGljIGNsZWFyR3VpZGVzKCk6IHZvaWQge1xuICAgIHRoaXMuX2xpbmVTZXJ2aWNlLmhpZGVWZXJ0aWNhbExpbmUoKTtcbiAgICB0aGlzLl9saW5lU2VydmljZS5oaWRlSG9yaXpvbnRhbExpbmUoKTtcblxuICAgIGlmICh0aGlzLl9kZWJvdW5jZVRpbWVyKSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5fZGVib3VuY2VUaW1lcik7XG4gICAgICB0aGlzLl9kZWJvdW5jZVRpbWVyID0gbnVsbDtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,7 +1,13 @@
1
+ /**
2
+ * Event that is emitted when nodes and groups are moved.
3
+ * It contains the moved nodes and groups and their new positions.
4
+ */
1
5
  export class FMoveNodesEvent {
2
6
  fNodes;
3
- constructor(fNodes) {
7
+ constructor(
8
+ // Moved nodes and groups
9
+ fNodes) {
4
10
  this.fNodes = fNodes;
5
11
  }
6
12
  }
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1tb3ZlLW5vZGVzLmV2ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLW5vZGUtbW92ZS9mLW1vdmUtbm9kZXMuZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLGVBQWU7SUFHakI7SUFEVCxZQUNTLE1BQTBDO1FBQTFDLFdBQU0sR0FBTixNQUFNLENBQW9DO0lBRW5ELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SVBvaW50fSBmcm9tICdAZm9ibGV4LzJkJztcblxuZXhwb3J0IGNsYXNzIEZNb3ZlTm9kZXNFdmVudCB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGZOb2RlczogeyBpZDogc3RyaW5nOyBwb3NpdGlvbjogSVBvaW50IH1bXSxcbiAgKSB7XG4gIH1cbn1cbiJdfQ==
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1tb3ZlLW5vZGVzLmV2ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLW5vZGUtbW92ZS9mLW1vdmUtbm9kZXMuZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUE7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLGVBQWU7SUFJakI7SUFGVDtJQUNFLHlCQUF5QjtJQUNsQixNQUEwQztRQUExQyxXQUFNLEdBQU4sTUFBTSxDQUFvQztJQUVuRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdAZm9ibGV4LzJkJztcblxuLyoqXG4gKiBFdmVudCB0aGF0IGlzIGVtaXR0ZWQgd2hlbiBub2RlcyBhbmQgZ3JvdXBzIGFyZSBtb3ZlZC5cbiAqIEl0IGNvbnRhaW5zIHRoZSBtb3ZlZCBub2RlcyBhbmQgZ3JvdXBzIGFuZCB0aGVpciBuZXcgcG9zaXRpb25zLlxuICovXG5leHBvcnQgY2xhc3MgRk1vdmVOb2Rlc0V2ZW50IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAvLyBNb3ZlZCBub2RlcyBhbmQgZ3JvdXBzXG4gICAgcHVibGljIGZOb2RlczogeyBpZDogc3RyaW5nOyBwb3NpdGlvbjogSVBvaW50IH1bXSxcbiAgKSB7XG4gIH1cbn1cbiJdfQ==
@@ -1,12 +1,13 @@
1
1
  export * from './connection-drag-handlers';
2
- export * from './create-move-nodes-drag-model-from-selection';
3
- export * from './line-alignment-preparation';
2
+ export * from './constraint';
3
+ export * from './create-drag-model-from-selection';
4
+ export * from './create-snap-lines';
4
5
  export * from './move-preparation';
5
6
  export * from './move-finalize';
6
- export * from './f-line-alignment.drag-handler';
7
+ export * from './create-snap-lines/snap-lines.drag-handler';
7
8
  export * from './f-move-nodes.event';
8
- export * from './f-node-move.drag-handler';
9
- export * from './point-bounds-limiter';
9
+ export * from './move-drag-handler';
10
10
  export * from './providers';
11
- export * from './f-summary-node-move.drag-handler';
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2Ytbm9kZS1tb3ZlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNEJBQTRCLENBQUM7QUFFM0MsY0FBYywrQ0FBK0MsQ0FBQztBQUU5RCxjQUFjLDhCQUE4QixDQUFDO0FBRTdDLGNBQWMsb0JBQW9CLENBQUM7QUFFbkMsY0FBYyxpQkFBaUIsQ0FBQztBQUVoQyxjQUFjLGlDQUFpQyxDQUFDO0FBRWhELGNBQWMsc0JBQXNCLENBQUM7QUFFckMsY0FBYyw0QkFBNEIsQ0FBQztBQUUzQyxjQUFjLHdCQUF3QixDQUFDO0FBRXZDLGNBQWMsYUFBYSxDQUFDO0FBRTVCLGNBQWMsb0NBQW9DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Nvbm5lY3Rpb24tZHJhZy1oYW5kbGVycyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vY3JlYXRlLW1vdmUtbm9kZXMtZHJhZy1tb2RlbC1mcm9tLXNlbGVjdGlvbic7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGluZS1hbGlnbm1lbnQtcHJlcGFyYXRpb24nO1xuXG5leHBvcnQgKiBmcm9tICcuL21vdmUtcHJlcGFyYXRpb24nO1xuXG5leHBvcnQgKiBmcm9tICcuL21vdmUtZmluYWxpemUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtbGluZS1hbGlnbm1lbnQuZHJhZy1oYW5kbGVyJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLW1vdmUtbm9kZXMuZXZlbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2Ytbm9kZS1tb3ZlLmRyYWctaGFuZGxlcic7XG5cbmV4cG9ydCAqIGZyb20gJy4vcG9pbnQtYm91bmRzLWxpbWl0ZXInO1xuXG5leHBvcnQgKiBmcm9tICcuL3Byb3ZpZGVycyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1zdW1tYXJ5LW5vZGUtbW92ZS5kcmFnLWhhbmRsZXInO1xuXG4iXX0=
11
+ export * from './move-summary-drag-handler';
12
+ export * from './constraint/snap-to-grid';
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2Ytbm9kZS1tb3ZlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNEJBQTRCLENBQUM7QUFFM0MsY0FBYyxjQUFjLENBQUM7QUFFN0IsY0FBYyxvQ0FBb0MsQ0FBQztBQUVuRCxjQUFjLHFCQUFxQixDQUFDO0FBRXBDLGNBQWMsb0JBQW9CLENBQUM7QUFFbkMsY0FBYyxpQkFBaUIsQ0FBQztBQUVoQyxjQUFjLDZDQUE2QyxDQUFDO0FBRTVELGNBQWMsc0JBQXNCLENBQUM7QUFFckMsY0FBYyxxQkFBcUIsQ0FBQztBQUVwQyxjQUFjLGFBQWEsQ0FBQztBQUU1QixjQUFjLDZCQUE2QixDQUFDO0FBRTVDLGNBQWMsMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Nvbm5lY3Rpb24tZHJhZy1oYW5kbGVycyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vY29uc3RyYWludCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vY3JlYXRlLWRyYWctbW9kZWwtZnJvbS1zZWxlY3Rpb24nO1xuXG5leHBvcnQgKiBmcm9tICcuL2NyZWF0ZS1zbmFwLWxpbmVzJztcblxuZXhwb3J0ICogZnJvbSAnLi9tb3ZlLXByZXBhcmF0aW9uJztcblxuZXhwb3J0ICogZnJvbSAnLi9tb3ZlLWZpbmFsaXplJztcblxuZXhwb3J0ICogZnJvbSAnLi9jcmVhdGUtc25hcC1saW5lcy9zbmFwLWxpbmVzLmRyYWctaGFuZGxlcic7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1tb3ZlLW5vZGVzLmV2ZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9tb3ZlLWRyYWctaGFuZGxlcic7XG5cbmV4cG9ydCAqIGZyb20gJy4vcHJvdmlkZXJzJztcblxuZXhwb3J0ICogZnJvbSAnLi9tb3ZlLXN1bW1hcnktZHJhZy1oYW5kbGVyJztcblxuZXhwb3J0ICogZnJvbSAnLi9jb25zdHJhaW50L3NuYXAtdG8tZ3JpZCc7XG5cbiJdfQ==
@@ -0,0 +1,95 @@
1
+ import { PointExtensions, RectExtensions } from '@foblex/2d';
2
+ import { F_CSS_CLASS, GetNormalizedElementRectRequest } from "../../domain";
3
+ import { DragConstraintPipeline, expandRectFromBaseline } from "./constraint";
4
+ import { FMediator } from "@foblex/mediator";
5
+ export class MoveDragHandler {
6
+ _injector;
7
+ nodeOrGroup;
8
+ childrenNodeAndGroups;
9
+ fSourceHandlers;
10
+ fTargetHandlers;
11
+ fEventType = 'move-node';
12
+ _startPosition = PointExtensions.initialize();
13
+ _startRect = RectExtensions.initialize();
14
+ _applyConstraints = (difference) => difference;
15
+ _lastSoftResults = [];
16
+ _pipeline;
17
+ _limits = null;
18
+ _lastPosition = PointExtensions.initialize();
19
+ constructor(_injector, nodeOrGroup, childrenNodeAndGroups = [], fSourceHandlers = [], fTargetHandlers = []) {
20
+ this._injector = _injector;
21
+ this.nodeOrGroup = nodeOrGroup;
22
+ this.childrenNodeAndGroups = childrenNodeAndGroups;
23
+ this.fSourceHandlers = fSourceHandlers;
24
+ this.fTargetHandlers = fTargetHandlers;
25
+ this._startRect = _injector.get(FMediator).execute(new GetNormalizedElementRectRequest(nodeOrGroup.hostElement));
26
+ this._startPosition = { ...nodeOrGroup._position };
27
+ }
28
+ setLimits(limits) {
29
+ this._limits = limits;
30
+ this._pipeline = new DragConstraintPipeline(this._injector, this._startPosition, limits);
31
+ this._applyConstraints = (difference) => {
32
+ const summary = this._pipeline.apply(difference);
33
+ this._applySoftExpansions(summary.soft);
34
+ return summary.hardDifference;
35
+ };
36
+ }
37
+ _applySoftExpansions(softResults) {
38
+ this._lastSoftResults = softResults;
39
+ this._lastSoftResults.forEach((result, index) => {
40
+ const softLimit = this._limits.soft[index];
41
+ const expandedRect = expandRectFromBaseline(softLimit.boundingRect, result.overflow, result.edges);
42
+ this._commitParentRect(softLimit.nodeOrGroup, expandedRect);
43
+ });
44
+ }
45
+ _commitParentRect(parent, rect) {
46
+ parent.updateSize({ width: rect.width, height: rect.height });
47
+ parent.updatePosition({ x: rect.x, y: rect.y });
48
+ parent.redraw();
49
+ }
50
+ getLastRect() {
51
+ return RectExtensions.initialize(this._lastPosition.x, this._lastPosition.y, this._startRect.width, this._startRect.height);
52
+ }
53
+ prepareDragSequence() {
54
+ this.childrenNodeAndGroups.forEach((x) => x.prepareDragSequence());
55
+ this.nodeOrGroup.hostElement.classList.add(F_CSS_CLASS.DRAG_AND_DROP.DRAGGING);
56
+ }
57
+ onPointerMove(difference) {
58
+ const differenceWithRestrictions = this._applyConstraints(difference);
59
+ this.childrenNodeAndGroups.forEach((x) => x.onPointerMove(differenceWithRestrictions));
60
+ this._redraw(this._nodeOrGroupNewPosition(differenceWithRestrictions));
61
+ this.fSourceHandlers.forEach((x) => x.setSourceDifference(differenceWithRestrictions));
62
+ this.fTargetHandlers.forEach((x) => x.setTargetDifference(differenceWithRestrictions));
63
+ }
64
+ assignFinalConstraints() {
65
+ this._applyConstraints = (difference) => {
66
+ const summary = this._pipeline.finalize(difference);
67
+ this._applySoftExpansions(summary.soft);
68
+ return summary.hardDifference;
69
+ };
70
+ }
71
+ _nodeOrGroupNewPosition(difference) {
72
+ return PointExtensions.sum(this._startPosition, difference);
73
+ }
74
+ _redraw(position) {
75
+ this._lastPosition = position;
76
+ this.nodeOrGroup.updatePosition(position);
77
+ this.nodeOrGroup.redraw();
78
+ }
79
+ onPointerUp() {
80
+ this.childrenNodeAndGroups.forEach((x) => x.onPointerUp());
81
+ this.nodeOrGroup.position.set(this.nodeOrGroup._position);
82
+ this.nodeOrGroup.hostElement.classList.remove(F_CSS_CLASS.DRAG_AND_DROP.DRAGGING);
83
+ this._emitEventIfNodeExpanded();
84
+ }
85
+ _emitEventIfNodeExpanded() {
86
+ this._lastSoftResults.forEach((result, index) => {
87
+ const softLimit = this._limits.soft[index];
88
+ const expandedRect = expandRectFromBaseline(softLimit.boundingRect, result.overflow, result.edges);
89
+ if (result.overflow.x || result.overflow.y) {
90
+ softLimit.nodeOrGroup.sizeChange.emit(expandedRect);
91
+ }
92
+ });
93
+ }
94
+ }
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW92ZS1kcmFnLWhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2Ytbm9kZS1tb3ZlL21vdmUtZHJhZy1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUk1RSxPQUFPLEVBQUUsV0FBVyxFQUFFLCtCQUErQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRzVFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBcUIsTUFBTSxjQUFjLENBQUM7QUFDakcsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRTdDLE1BQU0sT0FBTyxlQUFlO0lBZVA7SUFDVjtJQUNBO0lBQ0E7SUFDQTtJQWpCTyxVQUFVLEdBQUcsV0FBVyxDQUFDO0lBRXhCLGNBQWMsR0FBRyxlQUFlLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDOUMsVUFBVSxHQUFHLGNBQWMsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUVsRCxpQkFBaUIsR0FBbUMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQztJQUUvRSxnQkFBZ0IsR0FBd0IsRUFBRSxDQUFDO0lBQzNDLFNBQVMsQ0FBMEI7SUFDbkMsT0FBTyxHQUF1QixJQUFJLENBQUM7SUFDbkMsYUFBYSxHQUFHLGVBQWUsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUVyRCxZQUNtQixTQUFtQixFQUM3QixXQUFzQixFQUN0Qix3QkFBMkMsRUFBRSxFQUM3QyxrQkFBK0MsRUFBRSxFQUNqRCxrQkFBK0MsRUFBRTtRQUp2QyxjQUFTLEdBQVQsU0FBUyxDQUFVO1FBQzdCLGdCQUFXLEdBQVgsV0FBVyxDQUFXO1FBQ3RCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBd0I7UUFDN0Msb0JBQWUsR0FBZixlQUFlLENBQWtDO1FB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QUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2xGLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFTyx3QkFBd0I7UUFDOUIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUM5QyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM1QyxNQUFNLFlBQVksR0FBRyxzQkFBc0IsQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ25HLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDM0MsU0FBUyxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3RELENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElQb2ludCwgSVJlY3QsIFBvaW50RXh0ZW5zaW9ucywgUmVjdEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IElGRHJhZ0hhbmRsZXIgfSBmcm9tICcuLi9mLWRyYWctaGFuZGxlcic7XG5pbXBvcnQgeyBGTm9kZUJhc2UgfSBmcm9tICcuLi8uLi9mLW5vZGUnO1xuaW1wb3J0IHsgQmFzZUNvbm5lY3Rpb25EcmFnSGFuZGxlciB9IGZyb20gJy4vY29ubmVjdGlvbi1kcmFnLWhhbmRsZXJzJztcbmltcG9ydCB7IEZfQ1NTX0NMQVNTLCBHZXROb3JtYWxpemVkRWxlbWVudFJlY3RSZXF1ZXN0IH0gZnJvbSBcIi4uLy4uL2RvbWFpblwiO1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgSURyYWdMaW1pdHMgfSBmcm9tIFwiLi9jcmVhdGUtZHJhZy1tb2RlbC1mcm9tLXNlbGVjdGlvblwiO1xuaW1wb3J0IHsgRHJhZ0NvbnN0cmFpbnRQaXBlbGluZSwgZXhwYW5kUmVjdEZyb21CYXNlbGluZSwgSUNvbnN0cmFpbnRSZXN1bHQgfSBmcm9tIFwiLi9jb25zdHJhaW50XCI7XG5pbXBvcnQgeyBGTWVkaWF0b3IgfSBmcm9tIFwiQGZvYmxleC9tZWRpYXRvclwiO1xuXG5leHBvcnQgY2xhc3MgTW92ZURyYWdIYW5kbGVyIGltcGxlbWVudHMgSUZEcmFnSGFuZGxlciB7XG5cbiAgcHVibGljIHJlYWRvbmx5IGZFdmVudFR5cGUgPSAnbW92ZS1ub2RlJztcblxuICBwcml2YXRlIHJlYWRvbmx5IF9zdGFydFBvc2l0aW9uID0gUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfc3RhcnRSZWN0ID0gUmVjdEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpO1xuXG4gIHByaXZhdGUgX2FwcGx5Q29uc3RyYWludHM6IChkaWZmZXJlbmNlOiBJUG9pbnQpID0+IElQb2ludCA9IChkaWZmZXJlbmNlKSA9PiBkaWZmZXJlbmNlO1xuXG4gIHByaXZhdGUgX2xhc3RTb2Z0UmVzdWx0czogSUNvbnN0cmFpbnRSZXN1bHRbXSA9IFtdO1xuICBwcml2YXRlIF9waXBlbGluZSE6IERyYWdDb25zdHJhaW50UGlwZWxpbmU7XG4gIHByaXZhdGUgX2xpbWl0czogSURyYWdMaW1pdHMgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfbGFzdFBvc2l0aW9uID0gUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHVibGljIG5vZGVPckdyb3VwOiBGTm9kZUJhc2UsXG4gICAgcHVibGljIGNoaWxkcmVuTm9kZUFuZEdyb3VwczogTW92ZURyYWdIYW5kbGVyW10gPSBbXSxcbiAgICBwdWJsaWMgZlNvdXJjZUhhbmRsZXJzOiBCYXNlQ29ubmVjdGlvbkRyYWdIYW5kbGVyW10gPSBbXSxcbiAgICBwdWJsaWMgZlRhcmdldEhhbmRsZXJzOiBCYXNlQ29ubmVjdGlvbkRyYWdIYW5kbGVyW10gPSBbXSxcbiAgKSB7XG4gICAgdGhpcy5fc3RhcnRSZWN0ID0gX2luamVjdG9yLmdldChGTWVkaWF0b3IpLmV4ZWN1dGUobmV3IEdldE5vcm1hbGl6ZWRFbGVtZW50UmVjdFJlcXVlc3Qobm9kZU9yR3JvdXAuaG9zdEVsZW1lbnQpKVxuICAgIHRoaXMuX3N0YXJ0UG9zaXRpb24gPSB7IC4uLm5vZGVPckdyb3VwLl9wb3NpdGlvbiB9O1xuICB9XG5cbiAgcHVibGljIHNldExpbWl0cyhsaW1pdHM6IElEcmFnTGltaXRzKTogdm9pZCB7XG4gICAgdGhpcy5fbGltaXRzID0gbGltaXRzO1xuICAgIHRoaXMuX3BpcGVsaW5lID0gbmV3IERyYWdDb25zdHJhaW50UGlwZWxpbmUodGhpcy5faW5qZWN0b3IsIHRoaXMuX3N0YXJ0UG9zaXRpb24sIGxpbWl0cyk7XG5cbiAgICB0aGlzLl9hcHBseUNvbnN0cmFpbnRzID0gKGRpZmZlcmVuY2U6IElQb2ludCkgPT4ge1xuICAgICAgY29uc3Qgc3VtbWFyeSA9IHRoaXMuX3BpcGVsaW5lLmFwcGx5KGRpZmZlcmVuY2UpO1xuICAgICAgdGhpcy5fYXBwbHlTb2Z0RXhwYW5zaW9ucyhzdW1tYXJ5LnNvZnQpO1xuXG4gICAgICByZXR1cm4gc3VtbWFyeS5oYXJkRGlmZmVyZW5jZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9hcHBseVNvZnRFeHBhbnNpb25zKFxuICAgIHNvZnRSZXN1bHRzOiBJQ29uc3RyYWludFJlc3VsdFtdLFxuICApOiB2b2lkIHtcbiAgICB0aGlzLl9sYXN0U29mdFJlc3VsdHMgPSBzb2Z0UmVzdWx0cztcbiAgICB0aGlzLl9sYXN0U29mdFJlc3VsdHMuZm9yRWFjaCgocmVzdWx0LCBpbmRleCkgPT4ge1xuICAgICAgY29uc3Qgc29mdExpbWl0ID0gdGhpcy5fbGltaXRzIS5zb2Z0W2luZGV4XTtcbiAgICAgIGNvbnN0IGV4cGFuZGVkUmVjdCA9IGV4cGFuZFJlY3RGcm9tQmFzZWxpbmUoc29mdExpbWl0LmJvdW5kaW5nUmVjdCwgcmVzdWx0Lm92ZXJmbG93LCByZXN1bHQuZWRnZXMpO1xuICAgICAgdGhpcy5fY29tbWl0UGFyZW50UmVjdChzb2Z0TGltaXQubm9kZU9yR3JvdXAsIGV4cGFuZGVkUmVjdCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9jb21taXRQYXJlbnRSZWN0KHBhcmVudDogRk5vZGVCYXNlLCByZWN0OiBJUmVjdCk6IHZvaWQge1xuICAgIHBhcmVudC51cGRhdGVTaXplKHsgd2lkdGg6IHJlY3Qud2lkdGgsIGhlaWdodDogcmVjdC5oZWlnaHQgfSk7XG4gICAgcGFyZW50LnVwZGF0ZVBvc2l0aW9uKHsgeDogcmVjdC54LCB5OiByZWN0LnkgfSk7XG4gICAgcGFyZW50LnJlZHJhdygpO1xuICB9XG5cbiAgcHVibGljIGdldExhc3RSZWN0KCk6IElSZWN0IHtcbiAgICByZXR1cm4gUmVjdEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSh0aGlzLl9sYXN0UG9zaXRpb24ueCwgdGhpcy5fbGFzdFBvc2l0aW9uLnksIHRoaXMuX3N0YXJ0UmVjdC53aWR0aCwgdGhpcy5fc3RhcnRSZWN0LmhlaWdodCk7XG4gIH1cblxuICBwdWJsaWMgcHJlcGFyZURyYWdTZXF1ZW5jZSgpOiB2b2lkIHtcbiAgICB0aGlzLmNoaWxkcmVuTm9kZUFuZEdyb3Vwcy5mb3JFYWNoKCh4KSA9PiB4LnByZXBhcmVEcmFnU2VxdWVuY2UoKSk7XG4gICAgdGhpcy5ub2RlT3JHcm91cC5ob3N0RWxlbWVudC5jbGFzc0xpc3QuYWRkKEZfQ1NTX0NMQVNTLkRSQUdfQU5EX0RST1AuRFJBR0dJTkcpO1xuICB9XG5cbiAgcHVibGljIG9uUG9pbnRlck1vdmUoZGlmZmVyZW5jZTogSVBvaW50KTogdm9pZCB7XG4gICAgY29uc3QgZGlmZmVyZW5jZVdpdGhSZXN0cmljdGlvbnMgPSB0aGlzLl9hcHBseUNvbnN0cmFpbnRzKGRpZmZlcmVuY2UpO1xuXG4gICAgdGhpcy5jaGlsZHJlbk5vZGVBbmRHcm91cHMuZm9yRWFjaCgoeCkgPT4geC5vblBvaW50ZXJNb3ZlKGRpZmZlcmVuY2VXaXRoUmVzdHJpY3Rpb25zKSk7XG4gICAgdGhpcy5fcmVkcmF3KHRoaXMuX25vZGVPckdyb3VwTmV3UG9zaXRpb24oZGlmZmVyZW5jZVdpdGhSZXN0cmljdGlvbnMpKTtcblxuICAgIHRoaXMuZlNvdXJjZUhhbmRsZXJzLmZvckVhY2goKHgpID0+IHguc2V0U291cmNlRGlmZmVyZW5jZShkaWZmZXJlbmNlV2l0aFJlc3RyaWN0aW9ucykpO1xuICAgIHRoaXMuZlRhcmdldEhhbmRsZXJzLmZvckVhY2goKHgpID0+IHguc2V0VGFyZ2V0RGlmZmVyZW5jZShkaWZmZXJlbmNlV2l0aFJlc3RyaWN0aW9ucykpO1xuICB9XG5cbiAgcHVibGljIGFzc2lnbkZpbmFsQ29uc3RyYWludHMoKTogdm9pZCB7XG4gICAgdGhpcy5fYXBwbHlDb25zdHJhaW50cyA9IChkaWZmZXJlbmNlOiBJUG9pbnQpID0+IHtcbiAgICAgIGNvbnN0IHN1bW1hcnkgPSB0aGlzLl9waXBlbGluZS5maW5hbGl6ZShkaWZmZXJlbmNlKTtcbiAgICAgIHRoaXMuX2FwcGx5U29mdEV4cGFuc2lvbnMoc3VtbWFyeS5zb2Z0KTtcblxuICAgICAgcmV0dXJuIHN1bW1hcnkuaGFyZERpZmZlcmVuY2U7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfbm9kZU9yR3JvdXBOZXdQb3NpdGlvbihkaWZmZXJlbmNlOiBJUG9pbnQpOiBJUG9pbnQge1xuICAgIHJldHVybiBQb2ludEV4dGVuc2lvbnMuc3VtKHRoaXMuX3N0YXJ0UG9zaXRpb24sIGRpZmZlcmVuY2UpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVkcmF3KHBvc2l0aW9uOiBJUG9pbnQpOiB2b2lkIHtcbiAgICB0aGlzLl9sYXN0UG9zaXRpb24gPSBwb3NpdGlvbjtcbiAgICB0aGlzLm5vZGVPckdyb3VwLnVwZGF0ZVBvc2l0aW9uKHBvc2l0aW9uKTtcbiAgICB0aGlzLm5vZGVPckdyb3VwLnJlZHJhdygpO1xuICB9XG5cbiAgcHVibGljIG9uUG9pbnRlclVwKCk6IHZvaWQge1xuICAgIHRoaXMuY2hpbGRyZW5Ob2RlQW5kR3JvdXBzLmZvckVhY2goKHgpID0+IHgub25Qb2ludGVyVXAoKSk7XG4gICAgdGhpcy5ub2RlT3JHcm91cC5wb3NpdGlvbi5zZXQodGhpcy5ub2RlT3JHcm91cC5fcG9zaXRpb24pO1xuICAgIHRoaXMubm9kZU9yR3JvdXAuaG9zdEVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShGX0NTU19DTEFTUy5EUkFHX0FORF9EUk9QLkRSQUdHSU5HKTtcbiAgICB0aGlzLl9lbWl0RXZlbnRJZk5vZGVFeHBhbmRlZCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZW1pdEV2ZW50SWZOb2RlRXhwYW5kZWQoKTogdm9pZCB7XG4gICAgdGhpcy5fbGFzdFNvZnRSZXN1bHRzLmZvckVhY2goKHJlc3VsdCwgaW5kZXgpID0+IHtcbiAgICAgIGNvbnN0IHNvZnRMaW1pdCA9IHRoaXMuX2xpbWl0cyEuc29mdFtpbmRleF07XG4gICAgICBjb25zdCBleHBhbmRlZFJlY3QgPSBleHBhbmRSZWN0RnJvbUJhc2VsaW5lKHNvZnRMaW1pdC5ib3VuZGluZ1JlY3QsIHJlc3VsdC5vdmVyZmxvdywgcmVzdWx0LmVkZ2VzKTtcbiAgICAgIGlmIChyZXN1bHQub3ZlcmZsb3cueCB8fCByZXN1bHQub3ZlcmZsb3cueSkge1xuICAgICAgICBzb2Z0TGltaXQubm9kZU9yR3JvdXAuc2l6ZUNoYW5nZS5lbWl0KGV4cGFuZGVkUmVjdCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -5,65 +5,40 @@ import { Point } from '@foblex/2d';
5
5
  import { FExecutionRegister, FMediator } from '@foblex/mediator';
6
6
  import { FComponentsStore } from '../../../f-storage';
7
7
  import { FDraggableDataContext } from '../../f-draggable-data-context';
8
- import { IsConnectionUnderNodeRequest } from '../../domain';
9
- import { FNodeDropToGroupDragHandler } from '../../f-drop-to-group';
10
- import { FLineAlignmentDragHandler } from '../f-line-alignment.drag-handler';
11
- import { FSummaryNodeMoveDragHandler } from '../f-summary-node-move.drag-handler';
8
+ import { IsConnectionUnderNodeRequest, } from '../../domain';
9
+ import { MoveSummaryDragHandler } from '../move-summary-drag-handler';
12
10
  import { FMoveNodesEvent } from "../f-move-nodes.event";
13
11
  import * as i0 from "@angular/core";
14
12
  let FNodeMoveFinalizeExecution = class FNodeMoveFinalizeExecution {
15
- _fMediator = inject(FMediator);
16
- _fComponentsStore = inject(FComponentsStore);
17
- _fDraggableDataContext = inject(FDraggableDataContext);
13
+ _mediator = inject(FMediator);
14
+ _store = inject(FComponentsStore);
15
+ _dragContext = inject(FDraggableDataContext);
16
+ _summaryHandler;
18
17
  get _fHost() {
19
- return this._fComponentsStore.fFlow.hostElement;
18
+ return this._store.fFlow.hostElement;
20
19
  }
21
- handle(request) {
20
+ handle({ event }) {
22
21
  if (!this._isValid()) {
23
22
  return;
24
23
  }
25
- const difference = this._getDifferenceWithLineAlignment(this._getDifferenceBetweenPreparationAndFinalize(request.event.getPosition()));
26
- const firstNodeOrGroup = this._fDraggableDataContext.draggableItems
27
- .find((x) => x instanceof FSummaryNodeMoveDragHandler);
28
- this._finalizeMove(firstNodeOrGroup.calculateRestrictedDifference(difference));
24
+ const difference = this._getDifferenceBetweenPreparationAndFinalize(event.getPosition());
25
+ const snapLinesDifference = this._applySnapLinesDifference(difference, this._getSnapLinesResult(difference));
26
+ this._finalizeMove(snapLinesDifference);
29
27
  this._applyConnectionUnderDroppedNode();
30
28
  }
31
29
  _isValid() {
32
- return this._fDraggableDataContext.draggableItems.some((x) => x instanceof FSummaryNodeMoveDragHandler);
33
- }
34
- _finalizeMove(difference) {
35
- this._getItems().forEach((x) => {
36
- x.onPointerMove({ ...difference });
37
- x.onPointerUp?.();
38
- });
39
- if (this._getItems().length) {
40
- const event = this._getItems()[0].fData.fNodeIds.map((id) => {
41
- return {
42
- id,
43
- position: this._fComponentsStore.fNodes.find(x => x.fId() === id).position,
44
- };
45
- });
46
- this._fComponentsStore.fDraggable?.fMoveNodes.emit(new FMoveNodesEvent(event));
47
- }
48
- }
49
- _getItems() {
50
- return this._fDraggableDataContext.draggableItems
51
- .filter((x) => !(x instanceof FNodeDropToGroupDragHandler));
30
+ this._summaryHandler = this._dragContext.draggableItems.find((x) => x instanceof MoveSummaryDragHandler);
31
+ return !!this._summaryHandler;
52
32
  }
53
33
  _getDifferenceBetweenPreparationAndFinalize(position) {
54
34
  return Point.fromPoint(position).elementTransform(this._fHost)
55
- .div(this._fDraggableDataContext.onPointerDownScale)
56
- .sub(this._fDraggableDataContext.onPointerDownPosition);
35
+ .div(this._dragContext.onPointerDownScale)
36
+ .sub(this._dragContext.onPointerDownPosition);
57
37
  }
58
- _getDifferenceWithLineAlignment(difference) {
59
- return this._applyLineAlignmentDifference(difference, this._getLineAlignmentDifference(difference));
38
+ _getSnapLinesResult(difference) {
39
+ return this._summaryHandler?.findClosestAlignment(difference);
60
40
  }
61
- _getLineAlignmentDifference(difference) {
62
- return this._fDraggableDataContext.draggableItems
63
- .find((x) => x instanceof FLineAlignmentDragHandler)
64
- ?.findNearestCoordinate(difference);
65
- }
66
- _applyLineAlignmentDifference(difference, intersection) {
41
+ _applySnapLinesDifference(difference, intersection) {
67
42
  if (intersection) {
68
43
  difference.x = this._isIntersectValue(intersection.xResult) ? (difference.x - intersection.xResult.distance) : difference.x;
69
44
  difference.y = this._isIntersectValue(intersection.yResult) ? (difference.y - intersection.yResult.distance) : difference.y;
@@ -73,17 +48,31 @@ let FNodeMoveFinalizeExecution = class FNodeMoveFinalizeExecution {
73
48
  _isIntersectValue(result) {
74
49
  return result.value !== undefined && result.value !== null;
75
50
  }
51
+ _finalizeMove(snappedDifference) {
52
+ this._summaryHandler?.rootHandlers.forEach((x) => x.assignFinalConstraints());
53
+ this._summaryHandler.onPointerMove({ ...snappedDifference });
54
+ this._summaryHandler.onPointerUp?.();
55
+ this._store.fDraggable?.fMoveNodes.emit(this._createMoveNodesEvent());
56
+ }
57
+ _createMoveNodesEvent() {
58
+ const eventNodes = this._summaryHandler.fData.fNodeIds.map((id) => {
59
+ return {
60
+ id,
61
+ position: this._store.fNodes.find(x => x.fId() === id)._position,
62
+ };
63
+ });
64
+ return new FMoveNodesEvent(eventNodes);
65
+ }
76
66
  _applyConnectionUnderDroppedNode() {
77
- if (this._isDraggedJustOneNode() && this._fComponentsStore.fDraggable?.fEmitOnNodeIntersect) {
78
- const fNode = this._getFirstNodeOrGroup();
79
- setTimeout(() => this._fMediator.execute(new IsConnectionUnderNodeRequest(fNode)));
67
+ if (this._isDraggedJustOneNode() && this._store.fDraggable?.fEmitOnNodeIntersect) {
68
+ setTimeout(() => this._mediator.execute(new IsConnectionUnderNodeRequest(this._firstNodeOrGroup())));
80
69
  }
81
70
  }
82
71
  _isDraggedJustOneNode() {
83
- return this._fDraggableDataContext.draggableItems[0].fHandlers.length === 1;
72
+ return this._summaryHandler.rootHandlers.length === 1;
84
73
  }
85
- _getFirstNodeOrGroup() {
86
- return this._fDraggableDataContext.draggableItems[0].fHandlers[0].fNode;
74
+ _firstNodeOrGroup() {
75
+ return this._summaryHandler.rootHandlers[0].nodeOrGroup;
87
76
  }
88
77
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FNodeMoveFinalizeExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
89
78
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FNodeMoveFinalizeExecution });
@@ -95,4 +84,4 @@ export { FNodeMoveFinalizeExecution };
95
84
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FNodeMoveFinalizeExecution, decorators: [{
96
85
  type: Injectable
97
86
  }] });
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ub2RlLW1vdmUtZmluYWxpemUuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLW5vZGUtbW92ZS9tb3ZlLWZpbmFsaXplL2Ytbm9kZS1tb3ZlLWZpbmFsaXplLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEUsT0FBTyxFQUFTLEtBQUssRUFBQyxNQUFNLFlBQVksQ0FBQztBQUN6QyxPQUFPLEVBQUMsa0JBQWtCLEVBQUUsU0FBUyxFQUFhLE1BQU0sa0JBQWtCLENBQUM7QUFDM0UsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDcEQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDckUsT0FBTyxFQUNMLDRCQUE0QixFQUM3QixNQUFNLGNBQWMsQ0FBQztBQUV0QixPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUVsRSxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUMzRSxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUVoRixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sdUJBQXVCLENBQUM7O0FBSS9DLElBQU0sMEJBQTBCLEdBQWhDLE1BQU0sMEJBQTBCO0lBRTdCLFVBQVUsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0IsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDN0Msc0JBQXNCLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFFL0QsSUFB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QUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JGLENBQUM7SUFDSCxDQUFDO0lBRU8scUJBQXFCO1FBQzNCLE9BQVEsSUFBSSxDQUFDLHNCQUFzQixDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQWlDLENBQUMsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUM7SUFDL0csQ0FBQztJQUVPLG9CQUFvQjtRQUMxQixPQUFRLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFpQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDM0csQ0FBQzt3R0FsR1UsMEJBQTBCOzRHQUExQiwwQkFBMEI7O0FBQTFCLDBCQUEwQjtJQUR0QyxrQkFBa0IsQ0FBQyx3QkFBd0IsQ0FBQztHQUNoQywwQkFBMEIsQ0FtR3RDOzs0RkFuR1ksMEJBQTBCO2tCQUZ0QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtpbmplY3QsIEluamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGTm9kZU1vdmVGaW5hbGl6ZVJlcXVlc3R9IGZyb20gJy4vZi1ub2RlLW1vdmUtZmluYWxpemUucmVxdWVzdCc7XG5pbXBvcnQge0lQb2ludCwgUG9pbnR9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHtGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciwgSUV4ZWN1dGlvbn0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQge0ZDb21wb25lbnRzU3RvcmV9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQge0ZEcmFnZ2FibGVEYXRhQ29udGV4dH0gZnJvbSAnLi4vLi4vZi1kcmFnZ2FibGUtZGF0YS1jb250ZXh0JztcbmltcG9ydCB7XG4gIElzQ29ubmVjdGlvblVuZGVyTm9kZVJlcXVlc3Rcbn0gZnJvbSAnLi4vLi4vZG9tYWluJztcbmltcG9ydCB7SUZEcmFnSGFuZGxlcn0gZnJvbSAnLi4vLi4vZi1kcmFnLWhhbmRsZXInO1xuaW1wb3J0IHtGTm9kZURyb3BUb0dyb3VwRHJhZ0hhbmRsZXJ9IGZyb20gJy4uLy4uL2YtZHJvcC10by1ncm91cCc7XG5pbXBvcnQge0lMaW5lQWxpZ25tZW50UmVzdWx0LCBJTmVhcmVzdENvb3JkaW5hdGVSZXN1bHR9IGZyb20gJy4uLy4uLy4uL2YtbGluZS1hbGlnbm1lbnQnO1xuaW1wb3J0IHtGTGluZUFsaWdubWVudERyYWdIYW5kbGVyfSBmcm9tICcuLi9mLWxpbmUtYWxpZ25tZW50LmRyYWctaGFuZGxlcic7XG5pbXBvcnQge0ZTdW1tYXJ5Tm9kZU1vdmVEcmFnSGFuZGxlcn0gZnJvbSAnLi4vZi1zdW1tYXJ5LW5vZGUtbW92ZS5kcmFnLWhhbmRsZXInO1xuaW1wb3J0IHtGTm9kZUJhc2V9IGZyb20gJy4uLy4uLy4uL2Ytbm9kZSc7XG5pbXBvcnQge0ZNb3ZlTm9kZXNFdmVudH0gZnJvbSBcIi4uL2YtbW92ZS1ub2Rlcy5ldmVudFwiO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKEZOb2RlTW92ZUZpbmFsaXplUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBGTm9kZU1vdmVGaW5hbGl6ZUV4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248Rk5vZGVNb3ZlRmluYWxpemVSZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSBfZk1lZGlhdG9yID0gaW5qZWN0KEZNZWRpYXRvcik7XG4gIHByaXZhdGUgX2ZDb21wb25lbnRzU3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSk7XG4gIHByaXZhdGUgX2ZEcmFnZ2FibGVEYXRhQ29udGV4dCA9IGluamVjdChGRHJhZ2dhYmxlRGF0YUNvbnRleHQpO1xuXG4gIHByaXZhdGUgZ2V0IF9mSG9zdCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuX2ZDb21wb25lbnRzU3RvcmUuZkZsb3chLmhvc3RFbGVtZW50O1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBGTm9kZU1vdmVGaW5hbGl6ZVJlcXVlc3QpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2lzVmFsaWQoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBkaWZmZXJlbmNlID0gdGhpcy5fZ2V0RGlmZmVyZW5jZVdpdGhMaW5lQWxpZ25tZW50KFxuICAgICAgdGhpcy5fZ2V0RGlmZmVyZW5jZUJldHdlZW5QcmVwYXJhdGlvbkFuZEZpbmFsaXplKHJlcXVlc3QuZXZlbnQuZ2V0UG9zaXRpb24oKSlcbiAgICApO1xuXG4gICAgY29uc3QgZmlyc3ROb2RlT3JHcm91cDogRlN1bW1hcnlOb2RlTW92ZURyYWdIYW5kbGVyID0gdGhpcy5fZkRyYWdnYWJsZURhdGFDb250ZXh0LmRyYWdnYWJsZUl0ZW1zXG4gICAgICAuZmluZCgoeCkgPT4geCBpbnN0YW5jZW9mIEZTdW1tYXJ5Tm9kZU1vdmVEcmFnSGFuZGxlcikhO1xuXG4gICAgdGhpcy5fZmluYWxpemVNb3ZlKGZpcnN0Tm9kZU9yR3JvdXAuY2FsY3VsYXRlUmVzdHJpY3RlZERpZmZlcmVuY2UoZGlmZmVyZW5jZSkpO1xuXG4gICAgdGhpcy5fYXBwbHlDb25uZWN0aW9uVW5kZXJEcm9wcGVkTm9kZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNWYWxpZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZkRyYWdnYWJsZURhdGFDb250ZXh0LmRyYWdnYWJsZUl0ZW1zLnNvbWUoKHgpID0+IHggaW5zdGFuY2VvZiBGU3VtbWFyeU5vZGVNb3ZlRHJhZ0hhbmRsZXIpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZmluYWxpemVNb3ZlKGRpZmZlcmVuY2U6IElQb2ludCk6IHZvaWQge1xuICAgIHRoaXMuX2dldEl0ZW1zKCkuZm9yRWFjaCgoeCkgPT4ge1xuICAgICAgeC5vblBvaW50ZXJNb3ZlKHsuLi5kaWZmZXJlbmNlfSk7XG4gICAgICB4Lm9uUG9pbnRlclVwPy4oKTtcbiAgICB9KTtcblxuICAgIGlmICh0aGlzLl9nZXRJdGVtcygpLmxlbmd0aCkge1xuICAgICAgY29uc3QgZXZlbnQgPSB0aGlzLl9nZXRJdGVtcygpWzBdLmZEYXRhLmZOb2RlSWRzLm1hcCgoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGlkLFxuICAgICAgICAgIHBvc2l0aW9uOiB0aGlzLl9mQ29tcG9uZW50c1N0b3JlLmZOb2Rlcy5maW5kKHggPT4geC5mSWQoKSA9PT0gaWQpIS5wb3NpdGlvbixcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICB0aGlzLl9mQ29tcG9uZW50c1N0b3JlLmZEcmFnZ2FibGU/LmZNb3ZlTm9kZXMuZW1pdChuZXcgRk1vdmVOb2Rlc0V2ZW50KGV2ZW50KSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0SXRlbXMoKTogSUZEcmFnSGFuZGxlcltdIHtcbiAgICByZXR1cm4gdGhpcy5fZkRyYWdnYWJsZURhdGFDb250ZXh0LmRyYWdnYWJsZUl0ZW1zXG4gICAgICAuZmlsdGVyKCh4KSA9PiAhKHggaW5zdGFuY2VvZiBGTm9kZURyb3BUb0dyb3VwRHJhZ0hhbmRsZXIpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldERpZmZlcmVuY2VCZXR3ZWVuUHJlcGFyYXRpb25BbmRGaW5hbGl6ZShwb3NpdGlvbjogSVBvaW50KTogUG9pbnQge1xuICAgIHJldHVybiBQb2ludC5mcm9tUG9pbnQocG9zaXRpb24pLmVsZW1lbnRUcmFuc2Zvcm0odGhpcy5fZkhvc3QpXG4gICAgICAuZGl2KHRoaXMuX2ZEcmFnZ2FibGVEYXRhQ29udGV4dC5vblBvaW50ZXJEb3duU2NhbGUpXG4gICAgICAuc3ViKHRoaXMuX2ZEcmFnZ2FibGVEYXRhQ29udGV4dC5vblBvaW50ZXJEb3duUG9zaXRpb24pO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0RGlmZmVyZW5jZVdpdGhMaW5lQWxpZ25tZW50KGRpZmZlcmVuY2U6IElQb2ludCk6IElQb2ludCB7XG5cbiAgICByZXR1cm4gdGhpcy5fYXBwbHlMaW5lQWxpZ25tZW50RGlmZmVyZW5jZShcbiAgICAgIGRpZmZlcmVuY2UsXG4gICAgICB0aGlzLl9nZXRMaW5lQWxpZ25tZW50RGlmZmVyZW5jZShkaWZmZXJlbmNlKVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRMaW5lQWxpZ25tZW50RGlmZmVyZW5jZShkaWZmZXJlbmNlOiBJUG9pbnQpOiBJTGluZUFsaWdubWVudFJlc3VsdCB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX2ZEcmFnZ2FibGVEYXRhQ29udGV4dC5kcmFnZ2FibGVJdGVtc1xuICAgICAgLmZpbmQoKHgpID0+IHggaW5zdGFuY2VvZiBGTGluZUFsaWdubWVudERyYWdIYW5kbGVyKVxuICAgICAgPy5maW5kTmVhcmVzdENvb3JkaW5hdGUoZGlmZmVyZW5jZSk7XG4gIH1cblxuICBwcml2YXRlIF9hcHBseUxpbmVBbGlnbm1lbnREaWZmZXJlbmNlKGRpZmZlcmVuY2U6IElQb2ludCwgaW50ZXJzZWN0aW9uOiBJTGluZUFsaWdubWVudFJlc3VsdCB8IHVuZGVmaW5lZCk6IElQb2ludCB7XG4gICAgaWYgKGludGVyc2VjdGlvbikge1xuICAgICAgZGlmZmVyZW5jZS54ID0gdGhpcy5faXNJbnRlcnNlY3RWYWx1ZShpbnRlcnNlY3Rpb24ueFJlc3VsdCkgPyAoZGlmZmVyZW5jZS54IC0gaW50ZXJzZWN0aW9uLnhSZXN1bHQuZGlzdGFuY2UhKSA6IGRpZmZlcmVuY2UueDtcbiAgICAgIGRpZmZlcmVuY2UueSA9IHRoaXMuX2lzSW50ZXJzZWN0VmFsdWUoaW50ZXJzZWN0aW9uLnlSZXN1bHQpID8gKGRpZmZlcmVuY2UueSAtIGludGVyc2VjdGlvbi55UmVzdWx0LmRpc3RhbmNlISkgOiBkaWZmZXJlbmNlLnk7XG4gICAgfVxuICAgIHJldHVybiBkaWZmZXJlbmNlO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNJbnRlcnNlY3RWYWx1ZShyZXN1bHQ6IElOZWFyZXN0Q29vcmRpbmF0ZVJlc3VsdCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiByZXN1bHQudmFsdWUgIT09IHVuZGVmaW5lZCAmJiByZXN1bHQudmFsdWUgIT09IG51bGw7XG4gIH1cblxuICBwcml2YXRlIF9hcHBseUNvbm5lY3Rpb25VbmRlckRyb3BwZWROb2RlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9pc0RyYWdnZWRKdXN0T25lTm9kZSgpICYmIHRoaXMuX2ZDb21wb25lbnRzU3RvcmUuZkRyYWdnYWJsZT8uZkVtaXRPbk5vZGVJbnRlcnNlY3QpIHtcblxuICAgICAgY29uc3QgZk5vZGUgPSB0aGlzLl9nZXRGaXJzdE5vZGVPckdyb3VwKCk7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuX2ZNZWRpYXRvci5leGVjdXRlKG5ldyBJc0Nvbm5lY3Rpb25VbmRlck5vZGVSZXF1ZXN0KGZOb2RlKSkpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2lzRHJhZ2dlZEp1c3RPbmVOb2RlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAodGhpcy5fZkRyYWdnYWJsZURhdGFDb250ZXh0LmRyYWdnYWJsZUl0ZW1zWzBdIGFzIEZTdW1tYXJ5Tm9kZU1vdmVEcmFnSGFuZGxlcikuZkhhbmRsZXJzLmxlbmd0aCA9PT0gMTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldEZpcnN0Tm9kZU9yR3JvdXAoKTogRk5vZGVCYXNlIHtcbiAgICByZXR1cm4gKHRoaXMuX2ZEcmFnZ2FibGVEYXRhQ29udGV4dC5kcmFnZ2FibGVJdGVtc1swXSBhcyBGU3VtbWFyeU5vZGVNb3ZlRHJhZ0hhbmRsZXIpLmZIYW5kbGVyc1swXS5mTm9kZTtcbiAgfVxufVxuIl19
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ub2RlLW1vdmUtZmluYWxpemUuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLW5vZGUtbW92ZS9tb3ZlLWZpbmFsaXplL2Ytbm9kZS1tb3ZlLWZpbmFsaXplLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUUsT0FBTyxFQUFVLEtBQUssRUFBRSxNQUFNLFlBQVksQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDN0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkUsT0FBTyxFQUNMLDRCQUE0QixHQUM3QixNQUFNLGNBQWMsQ0FBQztBQUV0QixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUV0RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBSWpELElBQU0sMEJBQTBCLEdBQWhDLE1BQU0sMEJBQTBCO0lBRXBCLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDOUIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ2xDLFlBQVksR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUV0RCxlQUFlLENBQXFDO0lBRTVELElBQVksTUFBTTtRQUNoQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBTSxDQUFDLFdBQVcsQ0FBQztJQUN4QyxDQUFDO0lBRU0sTUFB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RyxDQUFDLENBQUMsRUFBVSxFQUFFLEVBQUU7WUFDekUsT0FBTztnQkFDTCxFQUFFO2dCQUNGLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxDQUFFLENBQUMsU0FBUzthQUNsRSxDQUFBO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFTyxnQ0FBZ0M7UUFDdEMsSUFBSSxJQUFJLENBQUMscUJBQXFCLEVBQUUsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxvQkFBb0IsRUFBRSxDQUFDO1lBQ2pGLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLDRCQUE0QixDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZHLENBQUM7SUFDSCxDQUFDO0lBRU8scUJBQXFCO1FBQzNCLE9BQU8sSUFBSSxDQUFDLGVBQWdCLENBQUMsWUFBWSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixPQUFPLElBQUksQ0FBQyxlQUFnQixDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7SUFDM0QsQ0FBQzt3R0FyRlUsMEJBQTBCOzRHQUExQiwwQkFBMEI7O0FBQTFCLDBCQUEwQjtJQUR0QyxrQkFBa0IsQ0FBQyx3QkFBd0IsQ0FBQztHQUNoQywwQkFBMEIsQ0FzRnRDOzs0RkF0RlksMEJBQTBCO2tCQUZ0QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGTm9kZU1vdmVGaW5hbGl6ZVJlcXVlc3QgfSBmcm9tICcuL2Ytbm9kZS1tb3ZlLWZpbmFsaXplLnJlcXVlc3QnO1xuaW1wb3J0IHsgSVBvaW50LCBQb2ludCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBGTWVkaWF0b3IsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgRkRyYWdnYWJsZURhdGFDb250ZXh0IH0gZnJvbSAnLi4vLi4vZi1kcmFnZ2FibGUtZGF0YS1jb250ZXh0JztcbmltcG9ydCB7XG4gIElzQ29ubmVjdGlvblVuZGVyTm9kZVJlcXVlc3QsXG59IGZyb20gJy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBJU25hcFJlc3VsdCwgSVNuYXBDb29yZGluYXRlIH0gZnJvbSAnLi4vLi4vLi4vZi1saW5lLWFsaWdubWVudCc7XG5pbXBvcnQgeyBNb3ZlU3VtbWFyeURyYWdIYW5kbGVyIH0gZnJvbSAnLi4vbW92ZS1zdW1tYXJ5LWRyYWctaGFuZGxlcic7XG5pbXBvcnQgeyBGTm9kZUJhc2UgfSBmcm9tICcuLi8uLi8uLi9mLW5vZGUnO1xuaW1wb3J0IHsgRk1vdmVOb2Rlc0V2ZW50IH0gZnJvbSBcIi4uL2YtbW92ZS1ub2Rlcy5ldmVudFwiO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKEZOb2RlTW92ZUZpbmFsaXplUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBGTm9kZU1vdmVGaW5hbGl6ZUV4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248Rk5vZGVNb3ZlRmluYWxpemVSZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbWVkaWF0b3IgPSBpbmplY3QoRk1lZGlhdG9yKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfc3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2RyYWdDb250ZXh0ID0gaW5qZWN0KEZEcmFnZ2FibGVEYXRhQ29udGV4dCk7XG5cbiAgcHJpdmF0ZSBfc3VtbWFyeUhhbmRsZXI6IE1vdmVTdW1tYXJ5RHJhZ0hhbmRsZXIgfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBnZXQgX2ZIb3N0KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5fc3RvcmUuZkZsb3chLmhvc3RFbGVtZW50O1xuICB9XG5cbiAgcHVibGljIGhhbmRsZSh7IGV2ZW50IH06IEZOb2RlTW92ZUZpbmFsaXplUmVxdWVzdCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5faXNWYWxpZCgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGRpZmZlcmVuY2UgPSB0aGlzLl9nZXREaWZmZXJlbmNlQmV0d2VlblByZXBhcmF0aW9uQW5kRmluYWxpemUoZXZlbnQuZ2V0UG9zaXRpb24oKSk7XG5cbiAgICBjb25zdCBzbmFwTGluZXNEaWZmZXJlbmNlID0gdGhpcy5fYXBwbHlTbmFwTGluZXNEaWZmZXJlbmNlKGRpZmZlcmVuY2UsIHRoaXMuX2dldFNuYXBMaW5lc1Jlc3VsdChkaWZmZXJlbmNlKSlcblxuICAgIHRoaXMuX2ZpbmFsaXplTW92ZShzbmFwTGluZXNEaWZmZXJlbmNlKTtcblxuICAgIHRoaXMuX2FwcGx5Q29ubmVjdGlvblVuZGVyRHJvcHBlZE5vZGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzVmFsaWQoKTogYm9vbGVhbiB7XG4gICAgdGhpcy5fc3VtbWFyeUhhbmRsZXIgPSB0aGlzLl9kcmFnQ29udGV4dC5kcmFnZ2FibGVJdGVtcy5maW5kKCh4KSA9PiB4IGluc3RhbmNlb2YgTW92ZVN1bW1hcnlEcmFnSGFuZGxlcik7XG5cbiAgICByZXR1cm4gISF0aGlzLl9zdW1tYXJ5SGFuZGxlcjtcbiAgfVxuXG4gIHByaXZhdGUgX2dldERpZmZlcmVuY2VCZXR3ZWVuUHJlcGFyYXRpb25BbmRGaW5hbGl6ZShwb3NpdGlvbjogSVBvaW50KTogUG9pbnQge1xuICAgIHJldHVybiBQb2ludC5mcm9tUG9pbnQocG9zaXRpb24pLmVsZW1lbnRUcmFuc2Zvcm0odGhpcy5fZkhvc3QpXG4gICAgICAuZGl2KHRoaXMuX2RyYWdDb250ZXh0Lm9uUG9pbnRlckRvd25TY2FsZSlcbiAgICAgIC5zdWIodGhpcy5fZHJhZ0NvbnRleHQub25Qb2ludGVyRG93blBvc2l0aW9uKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldFNuYXBMaW5lc1Jlc3VsdChkaWZmZXJlbmNlOiBJUG9pbnQpOiBJU25hcFJlc3VsdCB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX3N1bW1hcnlIYW5kbGVyPy5maW5kQ2xvc2VzdEFsaWdubWVudChkaWZmZXJlbmNlKTtcbiAgfVxuXG4gIHByaXZhdGUgX2FwcGx5U25hcExpbmVzRGlmZmVyZW5jZShkaWZmZXJlbmNlOiBJUG9pbnQsIGludGVyc2VjdGlvbjogSVNuYXBSZXN1bHQgfCB1bmRlZmluZWQpOiBJUG9pbnQge1xuICAgIGlmIChpbnRlcnNlY3Rpb24pIHtcbiAgICAgIGRpZmZlcmVuY2UueCA9IHRoaXMuX2lzSW50ZXJzZWN0VmFsdWUoaW50ZXJzZWN0aW9uLnhSZXN1bHQpID8gKGRpZmZlcmVuY2UueCAtIGludGVyc2VjdGlvbi54UmVzdWx0LmRpc3RhbmNlISkgOiBkaWZmZXJlbmNlLng7XG4gICAgICBkaWZmZXJlbmNlLnkgPSB0aGlzLl9pc0ludGVyc2VjdFZhbHVlKGludGVyc2VjdGlvbi55UmVzdWx0KSA/IChkaWZmZXJlbmNlLnkgLSBpbnRlcnNlY3Rpb24ueVJlc3VsdC5kaXN0YW5jZSEpIDogZGlmZmVyZW5jZS55O1xuICAgIH1cblxuICAgIHJldHVybiBkaWZmZXJlbmNlO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNJbnRlcnNlY3RWYWx1ZShyZXN1bHQ6IElTbmFwQ29vcmRpbmF0ZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiByZXN1bHQudmFsdWUgIT09IHVuZGVmaW5lZCAmJiByZXN1bHQudmFsdWUgIT09IG51bGw7XG4gIH1cblxuICBwcml2YXRlIF9maW5hbGl6ZU1vdmUoc25hcHBlZERpZmZlcmVuY2U6IElQb2ludCk6IHZvaWQge1xuICAgIHRoaXMuX3N1bW1hcnlIYW5kbGVyPy5yb290SGFuZGxlcnMuZm9yRWFjaCgoeCkgPT4geC5hc3NpZ25GaW5hbENvbnN0cmFpbnRzKCkpO1xuICAgIHRoaXMuX3N1bW1hcnlIYW5kbGVyIS5vblBvaW50ZXJNb3ZlKHsgLi4uc25hcHBlZERpZmZlcmVuY2UgfSk7XG4gICAgdGhpcy5fc3VtbWFyeUhhbmRsZXIhLm9uUG9pbnRlclVwPy4oKTtcblxuICAgIHRoaXMuX3N0b3JlLmZEcmFnZ2FibGU/LmZNb3ZlTm9kZXMuZW1pdCh0aGlzLl9jcmVhdGVNb3ZlTm9kZXNFdmVudCgpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NyZWF0ZU1vdmVOb2Rlc0V2ZW50KCk6IEZNb3ZlTm9kZXNFdmVudCB7XG4gICAgY29uc3QgZXZlbnROb2RlcyA9IHRoaXMuX3N1bW1hcnlIYW5kbGVyIS5mRGF0YS5mTm9kZUlkcy5tYXAoKGlkOiBzdHJpbmcpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGlkLFxuICAgICAgICBwb3NpdGlvbjogdGhpcy5fc3RvcmUuZk5vZGVzLmZpbmQoeCA9PiB4LmZJZCgpID09PSBpZCkhLl9wb3NpdGlvbixcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiBuZXcgRk1vdmVOb2Rlc0V2ZW50KGV2ZW50Tm9kZXMpO1xuICB9XG5cbiAgcHJpdmF0ZSBfYXBwbHlDb25uZWN0aW9uVW5kZXJEcm9wcGVkTm9kZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5faXNEcmFnZ2VkSnVzdE9uZU5vZGUoKSAmJiB0aGlzLl9zdG9yZS5mRHJhZ2dhYmxlPy5mRW1pdE9uTm9kZUludGVyc2VjdCkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBJc0Nvbm5lY3Rpb25VbmRlck5vZGVSZXF1ZXN0KHRoaXMuX2ZpcnN0Tm9kZU9yR3JvdXAoKSkpKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9pc0RyYWdnZWRKdXN0T25lTm9kZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fc3VtbWFyeUhhbmRsZXIhLnJvb3RIYW5kbGVycy5sZW5ndGggPT09IDE7XG4gIH1cblxuICBwcml2YXRlIF9maXJzdE5vZGVPckdyb3VwKCk6IEZOb2RlQmFzZSB7XG4gICAgcmV0dXJuIHRoaXMuX3N1bW1hcnlIYW5kbGVyIS5yb290SGFuZGxlcnNbMF0ubm9kZU9yR3JvdXA7XG4gIH1cbn1cbiJdfQ==
@@ -5,4 +5,4 @@ export class FNodeMoveFinalizeRequest {
5
5
  this.event = event;
6
6
  }
7
7
  }
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ub2RlLW1vdmUtZmluYWxpemUucmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1ub2RlLW1vdmUvbW92ZS1maW5hbGl6ZS9mLW5vZGUtbW92ZS1maW5hbGl6ZS5yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyx3QkFBd0I7SUFJMUI7SUFIVCxNQUFNLENBQVUsTUFBTSxHQUFHLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0lBRTVELFlBQ1MsS0FBb0I7UUFBcEIsVUFBSyxHQUFMLEtBQUssQ0FBZTtJQUU3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJUG9pbnRlckV2ZW50fSBmcm9tIFwiLi4vLi4vLi4vZHJhZy10b29sa2l0XCI7XG5cbmV4cG9ydCBjbGFzcyBGTm9kZU1vdmVGaW5hbGl6ZVJlcXVlc3Qge1xuICBzdGF0aWMgcmVhZG9ubHkgZlRva2VuID0gU3ltYm9sKCdGTm9kZU1vdmVGaW5hbGl6ZVJlcXVlc3QnKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZXZlbnQ6IElQb2ludGVyRXZlbnRcbiAgKSB7XG4gIH1cbn1cbiJdfQ==
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ub2RlLW1vdmUtZmluYWxpemUucmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1ub2RlLW1vdmUvbW92ZS1maW5hbGl6ZS9mLW5vZGUtbW92ZS1maW5hbGl6ZS5yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyx3QkFBd0I7SUFJMUI7SUFIVCxNQUFNLENBQVUsTUFBTSxHQUFHLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0lBRTVELFlBQ1MsS0FBb0I7UUFBcEIsVUFBSyxHQUFMLEtBQUssQ0FBZTtJQUU3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVBvaW50ZXJFdmVudCB9IGZyb20gXCIuLi8uLi8uLi9kcmFnLXRvb2xraXRcIjtcblxuZXhwb3J0IGNsYXNzIEZOb2RlTW92ZUZpbmFsaXplUmVxdWVzdCB7XG4gIHN0YXRpYyByZWFkb25seSBmVG9rZW4gPSBTeW1ib2woJ0ZOb2RlTW92ZUZpbmFsaXplUmVxdWVzdCcpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBldmVudDogSVBvaW50ZXJFdmVudCxcbiAgKSB7XG4gIH1cbn1cbiJdfQ==