@foblex/flow 17.9.81 → 18.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (742) hide show
  1. package/LICENSE +1 -1
  2. package/domain/css-cls.d.ts +0 -3
  3. package/domain/f-connection/add-connection-for-create-to-store/add-connection-for-create-to-store-request.d.ts +3 -3
  4. package/domain/f-connection/add-connection-for-create-to-store/{add-connection-for-create-to-store.execution.d.ts → add-connection-for-create-to-store.d.ts} +4 -4
  5. package/domain/f-connection/add-connection-for-create-to-store/index.d.ts +1 -1
  6. package/domain/f-connection/add-connection-marker-to-store/add-connection-marker-to-store-request.d.ts +3 -3
  7. package/domain/f-connection/add-connection-marker-to-store/{add-connection-marker-to-store.execution.d.ts → add-connection-marker-to-store.d.ts} +4 -4
  8. package/domain/f-connection/add-connection-marker-to-store/index.d.ts +1 -1
  9. package/domain/f-connection/add-connection-to-store/add-connection-to-store-request.d.ts +3 -3
  10. package/domain/f-connection/add-connection-to-store/{add-connection-to-store.execution.d.ts → add-connection-to-store.d.ts} +4 -4
  11. package/domain/f-connection/add-connection-to-store/index.d.ts +1 -1
  12. package/domain/f-connection/add-snap-connection-to-store/add-snap-connection-to-store-request.d.ts +3 -3
  13. package/domain/f-connection/add-snap-connection-to-store/{add-snap-connection-to-store.execution.d.ts → add-snap-connection-to-store.d.ts} +4 -4
  14. package/domain/f-connection/add-snap-connection-to-store/index.d.ts +1 -1
  15. package/domain/f-connection/create-connection-markers/create-connection-markers-request.d.ts +3 -3
  16. package/domain/f-connection/create-connection-markers/{create-connection-markers.execution.d.ts → create-connection-markers.d.ts} +7 -8
  17. package/domain/f-connection/create-connection-markers/index.d.ts +1 -1
  18. package/domain/f-connection/index.d.ts +1 -1
  19. package/domain/f-connection/providers.d.ts +11 -11
  20. package/domain/f-connection/redraw-connections/redraw-connections.d.ts +6 -4
  21. package/domain/f-connection/remove-connection-for-create-from-store/index.d.ts +1 -1
  22. package/domain/f-connection/remove-connection-for-create-from-store/{remove-connection-for-create-from-store.execution.d.ts → remove-connection-for-create-from-store.d.ts} +4 -4
  23. package/domain/f-connection/remove-connection-from-store/index.d.ts +1 -1
  24. package/domain/f-connection/remove-connection-from-store/remove-connection-from-store-request.d.ts +3 -3
  25. package/domain/f-connection/remove-connection-from-store/{remove-connection-from-store.execution.d.ts → remove-connection-from-store.d.ts} +4 -5
  26. package/domain/f-connection/remove-connection-marker-from-store/index.d.ts +1 -1
  27. package/domain/f-connection/remove-connection-marker-from-store/remove-connection-marker-from-store-request.d.ts +3 -3
  28. package/domain/f-connection/remove-connection-marker-from-store/{remove-connection-marker-from-store.execution.d.ts → remove-connection-marker-from-store.d.ts} +4 -4
  29. package/domain/f-connection/remove-connection-waypoint/index.d.ts +2 -0
  30. package/domain/f-connection/remove-connection-waypoint/remove-connection-waypoint-request.d.ts +6 -0
  31. package/domain/f-connection/remove-connection-waypoint/remove-connection-waypoint.d.ts +11 -0
  32. package/domain/f-connection/remove-snap-connection-from-store/index.d.ts +1 -1
  33. package/domain/f-connection/remove-snap-connection-from-store/{remove-snap-connection-from-store.execution.d.ts → remove-snap-connection-from-store.d.ts} +4 -4
  34. package/domain/f-draggable/on-pointer-move/on-pointer-move.execution.d.ts +1 -1
  35. package/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence.execution.d.ts +1 -1
  36. package/domain/f-flow/calculate-flow-state/calculate-connections-state/calculate-connections-state-request.d.ts +3 -0
  37. package/domain/f-flow/calculate-flow-state/calculate-connections-state/calculate-connections-state.d.ts +14 -0
  38. package/domain/f-flow/calculate-flow-state/calculate-connections-state/index.d.ts +2 -0
  39. package/domain/f-flow/calculate-flow-state/calculate-flow-state-request.d.ts +3 -0
  40. package/domain/f-flow/calculate-flow-state/calculate-flow-state.d.ts +17 -0
  41. package/domain/f-flow/calculate-flow-state/calculate-nodes-state/calculate-nodes-state-request.d.ts +6 -0
  42. package/domain/f-flow/calculate-flow-state/calculate-nodes-state/calculate-nodes-state.d.ts +15 -0
  43. package/domain/f-flow/calculate-flow-state/calculate-nodes-state/index.d.ts +2 -0
  44. package/domain/f-flow/calculate-flow-state/i-f-flow-state-connection.d.ts +13 -0
  45. package/domain/f-flow/{get-flow-state → calculate-flow-state}/i-f-flow-state-connector.d.ts +1 -1
  46. package/domain/f-flow/{get-flow-state → calculate-flow-state}/index.d.ts +4 -4
  47. package/domain/f-flow/calculate-flow-state/providers.d.ts +7 -0
  48. package/domain/f-flow/index.d.ts +1 -1
  49. package/domain/f-flow/providers.d.ts +1 -1
  50. package/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions.d.ts +1 -1
  51. package/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position.d.ts +1 -1
  52. package/domain/f-node/calculate-connectors-connectable-sides/constants/calculatable-sides.d.ts +1 -1
  53. package/domain/f-node/calculate-connectors-connectable-sides/models/t-calculate-mode.d.ts +1 -1
  54. package/domain/f-node/calculate-connectors-connectable-sides/utils/determine-side.d.ts +1 -1
  55. package/domain/f-node/calculate-connectors-connectable-sides/utils/is-calculate-mode.d.ts +1 -1
  56. package/domain/f-node/calculate-input-connections/calculate-input-connections.d.ts +1 -1
  57. package/domain/f-node/calculate-output-connections/calculate-output-connections.d.ts +1 -1
  58. package/domain/f-selection/calculate-selectable-items/calculate-selectable-items-request.d.ts +3 -0
  59. package/domain/f-selection/{get-can-be-selected-items/get-can-be-selected-items.execution.d.ts → calculate-selectable-items/calculate-selectable-items.d.ts} +8 -8
  60. package/domain/f-selection/calculate-selectable-items/index.d.ts +3 -0
  61. package/domain/f-selection/index.d.ts +1 -1
  62. package/domain/f-selection/providers.d.ts +2 -2
  63. package/domain/f-zoom/add-zoom-to-store/add-zoom-to-store-request.d.ts +2 -2
  64. package/domain/f-zoom/add-zoom-to-store/add-zoom-to-store.d.ts +12 -0
  65. package/domain/f-zoom/add-zoom-to-store/index.d.ts +1 -1
  66. package/domain/f-zoom/providers.d.ts +5 -5
  67. package/domain/f-zoom/remove-zoom-from-store/index.d.ts +1 -1
  68. package/domain/f-zoom/remove-zoom-from-store/{remove-zoom-from-store.execution.d.ts → remove-zoom-from-store.d.ts} +3 -3
  69. package/domain/f-zoom/reset-zoom/index.d.ts +1 -1
  70. package/domain/f-zoom/reset-zoom/reset-zoom.d.ts +13 -0
  71. package/domain/f-zoom/set-zoom/index.d.ts +1 -1
  72. package/domain/f-zoom/set-zoom/{set-zoom.execution.d.ts → set-zoom.d.ts} +6 -6
  73. package/domain/index.d.ts +0 -1
  74. package/domain/providers.d.ts +1 -1
  75. package/drag-toolkit/pointer-events/i-pointer-event.d.ts +6 -4
  76. package/esm2022/domain/css-cls.mjs +1 -4
  77. package/esm2022/domain/f-connection/add-connection-for-create-to-store/add-connection-for-create-to-store-request.mjs +4 -4
  78. package/esm2022/domain/f-connection/add-connection-for-create-to-store/add-connection-for-create-to-store.mjs +25 -0
  79. package/esm2022/domain/f-connection/add-connection-for-create-to-store/index.mjs +2 -2
  80. package/esm2022/domain/f-connection/add-connection-marker-to-store/add-connection-marker-to-store-request.mjs +4 -4
  81. package/esm2022/domain/f-connection/add-connection-marker-to-store/add-connection-marker-to-store.mjs +25 -0
  82. package/esm2022/domain/f-connection/add-connection-marker-to-store/index.mjs +2 -2
  83. package/esm2022/domain/f-connection/add-connection-to-store/add-connection-to-store-request.mjs +4 -4
  84. package/esm2022/domain/f-connection/add-connection-to-store/add-connection-to-store.mjs +26 -0
  85. package/esm2022/domain/f-connection/add-connection-to-store/index.mjs +2 -2
  86. package/esm2022/domain/f-connection/add-snap-connection-to-store/add-snap-connection-to-store-request.mjs +4 -4
  87. package/esm2022/domain/f-connection/add-snap-connection-to-store/add-snap-connection-to-store.mjs +25 -0
  88. package/esm2022/domain/f-connection/add-snap-connection-to-store/index.mjs +2 -2
  89. package/esm2022/domain/f-connection/create-connection-markers/create-connection-markers-request.mjs +4 -4
  90. package/esm2022/domain/f-connection/create-connection-markers/create-connection-markers.mjs +64 -0
  91. package/esm2022/domain/f-connection/create-connection-markers/index.mjs +2 -2
  92. package/esm2022/domain/f-connection/index.mjs +2 -2
  93. package/esm2022/domain/f-connection/providers.mjs +21 -21
  94. package/esm2022/domain/f-connection/redraw-connections/redraw-connections.mjs +24 -21
  95. package/esm2022/domain/f-connection/remove-connection-for-create-from-store/index.mjs +2 -2
  96. package/esm2022/domain/f-connection/remove-connection-for-create-from-store/remove-connection-for-create-from-store.mjs +25 -0
  97. package/esm2022/domain/f-connection/remove-connection-from-store/index.mjs +2 -2
  98. package/esm2022/domain/f-connection/remove-connection-from-store/remove-connection-from-store-request.mjs +4 -4
  99. package/esm2022/domain/f-connection/remove-connection-from-store/remove-connection-from-store.mjs +33 -0
  100. package/esm2022/domain/f-connection/remove-connection-marker-from-store/index.mjs +2 -2
  101. package/esm2022/domain/f-connection/remove-connection-marker-from-store/remove-connection-marker-from-store-request.mjs +4 -4
  102. package/esm2022/domain/f-connection/remove-connection-marker-from-store/remove-connection-marker-from-store.mjs +25 -0
  103. package/esm2022/domain/f-connection/remove-connection-waypoint/index.mjs +3 -0
  104. package/esm2022/domain/f-connection/remove-connection-waypoint/remove-connection-waypoint-request.mjs +10 -0
  105. package/esm2022/domain/f-connection/remove-connection-waypoint/remove-connection-waypoint.mjs +40 -0
  106. package/esm2022/domain/f-connection/remove-snap-connection-from-store/index.mjs +2 -2
  107. package/esm2022/domain/f-connection/remove-snap-connection-from-store/remove-snap-connection-from-store.mjs +25 -0
  108. package/esm2022/domain/f-connectors/calculate-source-connectors-to-connect/calculate-source-connectors-to-connect.mjs +1 -1
  109. package/esm2022/domain/f-connectors/calculate-target-connectors-to-connect/calculate-target-connectors-to-connect.mjs +1 -1
  110. package/esm2022/domain/f-draggable/add-dnd-to-store/add-dnd-to-store-request.mjs +1 -1
  111. package/esm2022/domain/f-draggable/on-pointer-move/on-pointer-move.execution.mjs +5 -5
  112. package/esm2022/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence-request.mjs +1 -1
  113. package/esm2022/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence.execution.mjs +3 -5
  114. package/esm2022/domain/f-flow/calculate-flow-state/calculate-connections-state/calculate-connections-state-request.mjs +4 -0
  115. package/esm2022/domain/f-flow/calculate-flow-state/calculate-connections-state/calculate-connections-state.mjs +38 -0
  116. package/esm2022/domain/f-flow/calculate-flow-state/calculate-connections-state/index.mjs +3 -0
  117. package/esm2022/domain/f-flow/calculate-flow-state/calculate-flow-state-request.mjs +4 -0
  118. package/esm2022/domain/f-flow/calculate-flow-state/calculate-flow-state.mjs +45 -0
  119. package/esm2022/domain/f-flow/calculate-flow-state/calculate-nodes-state/calculate-nodes-state-request.mjs +8 -0
  120. package/esm2022/domain/f-flow/calculate-flow-state/calculate-nodes-state/calculate-nodes-state.mjs +58 -0
  121. package/esm2022/domain/f-flow/calculate-flow-state/calculate-nodes-state/index.mjs +3 -0
  122. package/esm2022/domain/f-flow/calculate-flow-state/i-f-flow-state-connection.mjs +2 -0
  123. package/esm2022/domain/f-flow/calculate-flow-state/i-f-flow-state-connector.mjs +2 -0
  124. package/esm2022/domain/f-flow/calculate-flow-state/i-f-flow-state-node.mjs +2 -0
  125. package/esm2022/domain/f-flow/calculate-flow-state/i-f-flow-state.mjs +2 -0
  126. package/esm2022/domain/f-flow/calculate-flow-state/index.mjs +10 -0
  127. package/esm2022/domain/f-flow/calculate-flow-state/providers.mjs +12 -0
  128. package/esm2022/domain/f-flow/index.mjs +2 -2
  129. package/esm2022/domain/f-flow/providers.mjs +2 -2
  130. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions.mjs +1 -1
  131. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position.mjs +2 -2
  132. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectors-connectable-sides.mjs +2 -2
  133. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/constants/calculatable-sides.mjs +2 -2
  134. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/models/t-calculate-mode.mjs +1 -1
  135. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/utils/determine-side.mjs +2 -2
  136. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/utils/is-calculate-mode.mjs +2 -2
  137. package/esm2022/domain/f-node/calculate-input-connections/calculate-input-connections.mjs +1 -1
  138. package/esm2022/domain/f-node/calculate-output-connections/calculate-output-connections.mjs +1 -1
  139. package/esm2022/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed.mjs +2 -2
  140. package/esm2022/domain/f-selection/calculate-selectable-items/calculate-selectable-items-request.mjs +4 -0
  141. package/esm2022/domain/f-selection/calculate-selectable-items/calculate-selectable-items.mjs +70 -0
  142. package/esm2022/domain/f-selection/calculate-selectable-items/i-can-be-selected-element-and-rect.mjs +2 -0
  143. package/esm2022/domain/f-selection/calculate-selectable-items/index.mjs +4 -0
  144. package/esm2022/domain/f-selection/clear-selection/clear-selection.request.mjs +1 -1
  145. package/esm2022/domain/f-selection/index.mjs +2 -2
  146. package/esm2022/domain/f-selection/providers.mjs +3 -3
  147. package/esm2022/domain/f-zoom/add-zoom-to-store/add-zoom-to-store-request.mjs +4 -4
  148. package/esm2022/domain/f-zoom/add-zoom-to-store/add-zoom-to-store.mjs +28 -0
  149. package/esm2022/domain/f-zoom/add-zoom-to-store/index.mjs +2 -2
  150. package/esm2022/domain/f-zoom/providers.mjs +6 -11
  151. package/esm2022/domain/f-zoom/remove-zoom-from-store/index.mjs +2 -2
  152. package/esm2022/domain/f-zoom/remove-zoom-from-store/remove-zoom-from-store.mjs +28 -0
  153. package/esm2022/domain/f-zoom/reset-zoom/index.mjs +2 -2
  154. package/esm2022/domain/f-zoom/reset-zoom/reset-zoom.mjs +30 -0
  155. package/esm2022/domain/f-zoom/set-zoom/index.mjs +2 -2
  156. package/esm2022/domain/f-zoom/set-zoom/set-zoom.mjs +54 -0
  157. package/esm2022/domain/index.mjs +1 -2
  158. package/esm2022/drag-toolkit/pointer-events/i-pointer-event.mjs +15 -10
  159. package/esm2022/f-canvas/domain/{f-canvas-change.event.mjs → f-canvas-change-event.mjs} +1 -1
  160. package/esm2022/f-canvas/domain/index.mjs +2 -2
  161. package/esm2022/f-canvas/f-canvas-base.mjs +7 -5
  162. package/esm2022/f-canvas/f-canvas.component.mjs +26 -36
  163. package/esm2022/f-connection/f-connection/f-connection.component.mjs +10 -24
  164. package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +13 -18
  165. package/esm2022/f-connection/f-snap-connection/f-snap-connection.component.mjs +9 -15
  166. package/esm2022/f-connection/index.mjs +2 -7
  167. package/esm2022/f-connection/providers.mjs +9 -13
  168. package/esm2022/f-connection-v2/components/connection-content/f-connection-content.mjs +76 -0
  169. package/esm2022/f-connection-v2/components/connection-content/index.mjs +4 -0
  170. package/esm2022/f-connection-v2/components/connection-content/models/f-connection-content-base.mjs +10 -0
  171. package/esm2022/f-connection-v2/components/connection-content/models/index.mjs +2 -0
  172. package/esm2022/f-connection-v2/components/connection-content/utils/i-polyline-content.mjs +2 -0
  173. package/esm2022/f-connection-v2/components/connection-content/utils/index.mjs +6 -0
  174. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-content-align.mjs +6 -0
  175. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-content-layout-engine.mjs +25 -0
  176. package/esm2022/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-content-place.mjs +2 -2
  177. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-sampler/i-sampler-result.mjs +2 -0
  178. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-sampler/i-tangent.mjs +2 -0
  179. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-sampler/index.mjs +5 -0
  180. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-sampler/polyline-sampler.mjs +143 -0
  181. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-sampler/polyline.mjs +71 -0
  182. package/esm2022/f-connection-v2/components/connection-drag-handles/f-connection-drag-handle-end.mjs +35 -0
  183. package/esm2022/f-connection-v2/components/connection-drag-handles/f-connection-drag-handle-start.mjs +35 -0
  184. package/esm2022/f-connection-v2/components/connection-drag-handles/index.mjs +4 -0
  185. package/esm2022/f-connection-v2/components/connection-drag-handles/models/f-connection-drag-handle-base.mjs +17 -0
  186. package/esm2022/f-connection-v2/components/connection-drag-handles/models/index.mjs +2 -0
  187. package/esm2022/f-connection-v2/components/connection-gradient/f-connection-gradient.mjs +54 -0
  188. package/esm2022/f-connection-v2/components/connection-gradient/index.mjs +3 -0
  189. package/esm2022/f-connection-v2/components/connection-gradient/models/f-connection-gradient-base.mjs +6 -0
  190. package/esm2022/f-connection-v2/components/connection-gradient/models/index.mjs +2 -0
  191. package/esm2022/f-connection-v2/components/connection-marker/enums/e-f-marker-type.mjs +8 -0
  192. package/esm2022/f-connection-v2/components/connection-marker/enums/index.mjs +2 -0
  193. package/esm2022/f-connection-v2/components/connection-marker/f-connection-marker.mjs +50 -0
  194. package/esm2022/f-connection-v2/components/connection-marker/index.mjs +4 -0
  195. package/esm2022/f-connection-v2/components/connection-marker/models/f-connection-marker-base.mjs +6 -0
  196. package/esm2022/f-connection-v2/components/connection-marker/models/index.mjs +2 -0
  197. package/esm2022/f-connection-v2/components/connection-path/f-connection-path.mjs +66 -0
  198. package/esm2022/f-connection-v2/components/connection-path/index.mjs +3 -0
  199. package/esm2022/f-connection-v2/components/connection-path/models/f-connection-path-base.mjs +6 -0
  200. package/esm2022/f-connection-v2/components/connection-path/models/index.mjs +2 -0
  201. package/esm2022/f-connection-v2/components/connection-selection/f-connection-selection.mjs +34 -0
  202. package/esm2022/f-connection-v2/components/connection-selection/index.mjs +3 -0
  203. package/esm2022/f-connection-v2/components/connection-selection/models/f-connection-selection-base.mjs +6 -0
  204. package/esm2022/f-connection-v2/components/connection-selection/models/index.mjs +2 -0
  205. package/esm2022/f-connection-v2/components/connection-waypoints/f-connection-waypoints.mjs +50 -0
  206. package/esm2022/f-connection-v2/components/connection-waypoints/index.mjs +4 -0
  207. package/esm2022/f-connection-v2/components/connection-waypoints/models/f-connection-waypoints-base.mjs +27 -0
  208. package/esm2022/f-connection-v2/components/connection-waypoints/models/index.mjs +2 -0
  209. package/esm2022/f-connection-v2/components/connection-waypoints/utils/find-existing-waypoint.mjs +7 -0
  210. package/esm2022/f-connection-v2/components/connection-waypoints/utils/find-waypoint-candidate.mjs +7 -0
  211. package/esm2022/f-connection-v2/components/connection-waypoints/utils/index.mjs +5 -0
  212. package/esm2022/f-connection-v2/components/connection-waypoints/utils/is-pointer-inside-point.mjs +4 -0
  213. package/esm2022/f-connection-v2/components/connection-waypoints/utils/pick-waypoint.mjs +16 -0
  214. package/esm2022/f-connection-v2/components/f-connection-base.mjs +112 -0
  215. package/esm2022/f-connection-v2/components/index.mjs +9 -0
  216. package/esm2022/f-connection-v2/enums/e-f-connectable-side.mjs +12 -0
  217. package/esm2022/f-connection-v2/enums/e-f-connection-type.mjs +8 -0
  218. package/esm2022/f-connection-v2/enums/index.mjs +3 -0
  219. package/esm2022/f-connection-v2/index.mjs +5 -0
  220. package/esm2022/f-connection-v2/models/f-connection-components-parent.mjs +5 -0
  221. package/esm2022/f-connection-v2/models/f-connection-waypoints-changed-event.mjs +9 -0
  222. package/esm2022/f-connection-v2/models/index.mjs +3 -0
  223. package/esm2022/f-connection-v2/utils/connection-behaviour/connection-behaviour-builder-request.mjs +15 -0
  224. package/esm2022/f-connection-v2/utils/connection-behaviour/connection-behaviour-builder.mjs +136 -0
  225. package/esm2022/f-connection-v2/utils/connection-behaviour/enums/e-f-connection-behavior.mjs +7 -0
  226. package/esm2022/f-connection-v2/utils/connection-behaviour/enums/e-f-connection-connectable-side.mjs +12 -0
  227. package/esm2022/f-connection-v2/utils/connection-behaviour/enums/index.mjs +3 -0
  228. package/esm2022/f-connection-v2/utils/connection-behaviour/index.mjs +6 -0
  229. package/esm2022/f-connection-v2/utils/connection-behaviour/models/i-calculate-behavior-request.mjs +2 -0
  230. package/esm2022/f-connection-v2/utils/connection-behaviour/models/index.mjs +2 -0
  231. package/esm2022/f-connection-v2/utils/connection-behaviour/utils/fixed-center-behavior.mjs +12 -0
  232. package/esm2022/f-connection-v2/utils/connection-behaviour/utils/fixed-outbound-behavior.mjs +31 -0
  233. package/esm2022/f-connection-v2/utils/connection-behaviour/utils/floating-behavior.mjs +22 -0
  234. package/esm2022/f-connection-v2/utils/connection-behaviour/utils/index.mjs +4 -0
  235. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/adaptive-curve/calculate-adaptive-curve-data.mjs +74 -0
  236. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/adaptive-curve/index.mjs +2 -0
  237. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/bezier-curve/calculate-bezier-curve-data.mjs +49 -0
  238. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/bezier-curve/index.mjs +2 -0
  239. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/index.mjs +6 -0
  240. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/segment-line/build-corner-mid-points-and-apply-offsets.mjs +50 -0
  241. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/segment-line/calculate-segment-line-data.mjs +106 -0
  242. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/segment-line/create-segment-line-path.mjs +46 -0
  243. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/segment-line/index.mjs +4 -0
  244. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/straight-line/calculate-straight-line-data.mjs +28 -0
  245. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/straight-line/index.mjs +2 -0
  246. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/build-connection-anchors.mjs +4 -0
  247. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/calculate-center-between-points.mjs +8 -0
  248. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/calculate-curve-candidates.mjs +7 -0
  249. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/calculate-polyline-candidates.mjs +39 -0
  250. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/index.mjs +9 -0
  251. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/merge-point-chains.mjs +12 -0
  252. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/multi-cubic.mjs +28 -0
  253. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/normalize-polyline.mjs +30 -0
  254. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/sample-cubic-bezier-uniform.mjs +37 -0
  255. package/esm2022/f-connection-v2/utils/connection-line-builder/connection-line-builder-request.mjs +9 -0
  256. package/esm2022/f-connection-v2/utils/connection-line-builder/connection-line-builder.mjs +50 -0
  257. package/esm2022/f-connection-v2/utils/connection-line-builder/index.mjs +6 -0
  258. package/esm2022/f-connection-v2/utils/connection-line-builder/models/i-f-connection-builder-request.mjs +2 -0
  259. package/esm2022/f-connection-v2/utils/connection-line-builder/models/i-f-connection-builder-response.mjs +2 -0
  260. package/esm2022/f-connection-v2/utils/connection-line-builder/models/i-f-connection-builder.mjs +2 -0
  261. package/esm2022/f-connection-v2/utils/connection-line-builder/models/index.mjs +4 -0
  262. package/esm2022/f-connection-v2/utils/connection-line-builder/providers/f-connection-builders.mjs +3 -0
  263. package/esm2022/f-connection-v2/utils/connection-line-builder/providers/index.mjs +2 -0
  264. package/esm2022/f-connection-v2/utils/create-connection-dom-identifier.mjs +5 -0
  265. package/esm2022/f-connection-v2/utils/create-connection-selection-dom-identifier.mjs +5 -0
  266. package/esm2022/f-connection-v2/utils/create-gradient-dom-identifier.mjs +5 -0
  267. package/esm2022/f-connection-v2/utils/create-gradient-dom-url.mjs +5 -0
  268. package/esm2022/f-connection-v2/utils/index.mjs +7 -0
  269. package/esm2022/f-connectors/f-connector-base.mjs +2 -2
  270. package/esm2022/f-connectors/f-node-input/f-node-input.directive.mjs +2 -2
  271. package/esm2022/f-connectors/f-node-outlet/f-node-outlet.directive.mjs +2 -2
  272. package/esm2022/f-connectors/f-node-output/f-node-output.directive.mjs +2 -2
  273. package/esm2022/f-connectors/f-source-connector-base.mjs +8 -1
  274. package/esm2022/f-connectors/index.mjs +1 -2
  275. package/esm2022/f-draggable/domain/is-connection-under-node/is-connection-under-node.execution.mjs +1 -1
  276. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/create-connection-preparation.mjs +1 -8
  277. package/esm2022/f-draggable/f-connection/f-create-connection/f-create-connection.drag-handler.mjs +8 -6
  278. package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-connection.drag-handler.mjs +6 -3
  279. package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-source.drag-handler.mjs +8 -5
  280. package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-target.drag-handler.mjs +8 -5
  281. package/esm2022/f-draggable/f-connection/f-reassign-connection/i-f-reassign-connection-drag-result.mjs +1 -1
  282. package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-preparation/f-reassign-connection-preparation.execution.mjs +22 -27
  283. package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-preparation/is-pointer-inside-start-or-end-drag-handles.mjs +8 -7
  284. package/esm2022/f-draggable/f-connection/index.mjs +2 -1
  285. package/esm2022/f-draggable/f-connection/move-connection-waypoint/index.mjs +4 -0
  286. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-finalize/index.mjs +3 -0
  287. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-finalize/move-connection-waypoint-finalize-request.mjs +8 -0
  288. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-finalize/move-connection-waypoint-finalize.mjs +32 -0
  289. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-handler.mjs +49 -0
  290. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-preparation/index.mjs +3 -0
  291. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-preparation/move-connection-waypoint-preparation-request.mjs +10 -0
  292. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-preparation/move-connection-waypoint-preparation.mjs +65 -0
  293. package/esm2022/f-draggable/f-connection/providers.mjs +5 -2
  294. package/esm2022/f-draggable/f-drag-handler/i-f-drag-handler.mjs +1 -1
  295. package/esm2022/f-draggable/f-draggable-base.mjs +2 -2
  296. package/esm2022/f-draggable/f-draggable.directive.mjs +20 -9
  297. package/esm2022/f-draggable/f-node-move/connection-drag-handlers/base-connection.drag-handler.mjs +6 -3
  298. package/esm2022/f-draggable/f-node-move/connection-drag-handlers/source-connection.drag-handler.mjs +1 -1
  299. package/esm2022/f-draggable/f-node-move/connection-drag-handlers/source-target-connection.drag-handler.mjs +1 -1
  300. package/esm2022/f-draggable/f-node-move/connection-drag-handlers/target-connection.drag-handler.mjs +1 -1
  301. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-input-connection-handler-and-set-to-node-handler/create-input-connection-handler-and-set-to-node-handler.mjs +1 -1
  302. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-output-connection-handler-and-set-to-node-handler/create-output-connection-handler-and-set-to-node-handler.mjs +1 -1
  303. package/esm2022/f-draggable/f-node-move/create-snap-lines/create-snap-lines-request.mjs +1 -1
  304. package/esm2022/f-draggable/f-node-move/move-drag-handler.mjs +7 -5
  305. package/esm2022/f-draggable/f-node-move/move-finalize/f-node-move-finalize.execution.mjs +19 -14
  306. package/esm2022/f-draggable/f-node-move/move-preparation/index.mjs +3 -3
  307. package/esm2022/f-draggable/f-node-move/move-preparation/move-node-preparation-request.mjs +10 -0
  308. package/esm2022/f-draggable/f-node-move/move-preparation/move-node-preparation.mjs +81 -0
  309. package/esm2022/f-draggable/f-node-move/move-summary-drag-handler.mjs +1 -1
  310. package/esm2022/f-draggable/f-node-move/providers.mjs +3 -3
  311. package/esm2022/f-draggable/f-node-rotate/rotate-preparation/f-node-rotate-preparation.execution.mjs +1 -1
  312. package/esm2022/f-draggable/index.mjs +3 -2
  313. package/esm2022/f-draggable/pinch-to-zoom/constants/constants.mjs +6 -0
  314. package/esm2022/f-draggable/pinch-to-zoom/constants/index.mjs +2 -0
  315. package/esm2022/f-draggable/pinch-to-zoom/finalize/index.mjs +3 -0
  316. package/esm2022/f-draggable/pinch-to-zoom/finalize/pinch-to-zoom-finalize-request.mjs +8 -0
  317. package/esm2022/f-draggable/pinch-to-zoom/finalize/pinch-to-zoom-finalize.mjs +31 -0
  318. package/esm2022/f-draggable/pinch-to-zoom/index.mjs +7 -0
  319. package/esm2022/f-draggable/pinch-to-zoom/pinch-to-zoom-handler.mjs +68 -0
  320. package/esm2022/f-draggable/pinch-to-zoom/preparation/index.mjs +3 -0
  321. package/esm2022/f-draggable/pinch-to-zoom/preparation/pinch-to-zoom-preparation-request.mjs +8 -0
  322. package/esm2022/f-draggable/pinch-to-zoom/preparation/pinch-to-zoom-preparation.mjs +42 -0
  323. package/esm2022/f-draggable/pinch-to-zoom/providers.mjs +4 -0
  324. package/esm2022/f-draggable/pinch-to-zoom/utils/calculate-touch-center.mjs +10 -0
  325. package/esm2022/f-draggable/pinch-to-zoom/utils/calculate-touch-distance.mjs +9 -0
  326. package/esm2022/f-draggable/pinch-to-zoom/utils/index.mjs +3 -0
  327. package/esm2022/f-draggable/providers.mjs +4 -2
  328. package/esm2022/f-draggable/single-select/index.mjs +4 -0
  329. package/esm2022/f-draggable/single-select/providers.mjs +3 -0
  330. package/esm2022/f-draggable/single-select/single-select-request.mjs +10 -0
  331. package/esm2022/f-draggable/single-select/single-select.mjs +139 -0
  332. package/esm2022/f-flow/f-flow.component.mjs +39 -26
  333. package/esm2022/f-flow.module.mjs +38 -37
  334. package/esm2022/f-line-alignment/f-line-alignment-base.mjs +1 -1
  335. package/esm2022/f-line-alignment/f-line-alignment.component.mjs +10 -17
  336. package/esm2022/f-minimap/f-minimap.component.mjs +8 -9
  337. package/esm2022/f-selection-area/domain/selection-area.drag-handle.mjs +21 -19
  338. package/esm2022/f-storage/f-components-store.mjs +1 -1
  339. package/esm2022/f-storage/features/listen-components-data-changed/index.mjs +2 -2
  340. package/esm2022/f-storage/features/listen-components-data-changed/listen-data-changes-request.mjs +1 -1
  341. package/esm2022/f-storage/features/listen-components-data-changed/listen-data-changes.mjs +23 -0
  342. package/esm2022/f-storage/features/listen-count-changes/index.mjs +2 -2
  343. package/esm2022/f-storage/features/listen-count-changes/listen-count-changes-request.mjs +1 -1
  344. package/esm2022/f-storage/features/listen-count-changes/listen-count-changes.mjs +23 -0
  345. package/esm2022/f-storage/features/listen-transform-changes/index.mjs +3 -3
  346. package/esm2022/f-storage/features/listen-transform-changes/{listen-transform-changes.request.mjs → listen-transform-changes-request.mjs} +1 -1
  347. package/esm2022/f-storage/features/listen-transform-changes/listen-transform-changes.mjs +23 -0
  348. package/esm2022/f-storage/features/notify-data-changed/index.mjs +2 -2
  349. package/esm2022/f-storage/features/notify-data-changed/notify-data-changed-request.mjs +1 -1
  350. package/esm2022/f-storage/features/notify-data-changed/notify-data-changed.mjs +22 -0
  351. package/esm2022/f-storage/features/notify-transform-changed/index.mjs +3 -3
  352. package/esm2022/f-storage/features/notify-transform-changed/{notify-transform-changed.request.mjs → notify-transform-changed-request.mjs} +1 -1
  353. package/esm2022/f-storage/features/notify-transform-changed/notify-transform-changed.mjs +22 -0
  354. package/esm2022/f-storage/index.mjs +1 -2
  355. package/esm2022/f-storage/providers.mjs +11 -11
  356. package/esm2022/f-zoom/f-zoom.directive.mjs +3 -13
  357. package/esm2022/public-api.mjs +2 -1
  358. package/esm2022/reactivity/debounce-time.mjs +16 -5
  359. package/esm2022/reactivity/f-channel-hub.mjs +33 -9
  360. package/esm2022/reactivity/index.mjs +2 -1
  361. package/esm2022/reactivity/notify-on-start.mjs +12 -4
  362. package/esm2022/reactivity/take-one.mjs +17 -0
  363. package/esm2022/reactivity/types.mjs +1 -1
  364. package/esm2022/utils/calculate-pointer-in-flow.mjs +9 -0
  365. package/esm2022/utils/index.mjs +2 -1
  366. package/f-canvas/domain/index.d.ts +1 -1
  367. package/f-canvas/f-canvas-base.d.ts +2 -2
  368. package/f-canvas/f-canvas.component.d.ts +2 -9
  369. package/f-connection/f-connection/f-connection.component.d.ts +2 -7
  370. package/f-connection/f-connection-for-create/f-connection-for-create.component.d.ts +2 -6
  371. package/f-connection/f-snap-connection/f-snap-connection.component.d.ts +2 -6
  372. package/f-connection/index.d.ts +1 -6
  373. package/f-connection/providers.d.ts +3 -4
  374. package/{f-connection/f-connection-content → f-connection-v2/components/connection-content}/f-connection-content.d.ts +3 -30
  375. package/f-connection-v2/components/connection-content/index.d.ts +3 -0
  376. package/f-connection-v2/components/connection-content/models/f-connection-content-base.d.ts +36 -0
  377. package/f-connection-v2/components/connection-content/models/index.d.ts +1 -0
  378. package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-content-layout-engine.d.ts +1 -9
  379. package/f-connection-v2/components/connection-drag-handles/f-connection-drag-handle-end.d.ts +8 -0
  380. package/f-connection-v2/components/connection-drag-handles/f-connection-drag-handle-start.d.ts +8 -0
  381. package/f-connection-v2/components/connection-drag-handles/index.d.ts +3 -0
  382. package/f-connection-v2/components/connection-drag-handles/models/f-connection-drag-handle-base.d.ts +11 -0
  383. package/f-connection-v2/components/connection-drag-handles/models/index.d.ts +1 -0
  384. package/{f-connection/common/f-gradient/f-connection-gradient.component.d.ts → f-connection-v2/components/connection-gradient/f-connection-gradient.d.ts} +5 -6
  385. package/f-connection-v2/components/connection-gradient/index.d.ts +2 -0
  386. package/f-connection-v2/components/connection-gradient/models/f-connection-gradient-base.d.ts +8 -0
  387. package/f-connection-v2/components/connection-gradient/models/index.d.ts +1 -0
  388. package/f-connection-v2/components/connection-marker/enums/index.d.ts +1 -0
  389. package/f-connection-v2/components/connection-marker/f-connection-marker.d.ts +17 -0
  390. package/f-connection-v2/components/connection-marker/index.d.ts +3 -0
  391. package/{f-connection/f-marker/f-marker-base.d.ts → f-connection-v2/components/connection-marker/models/f-connection-marker-base.d.ts} +3 -4
  392. package/f-connection-v2/components/connection-marker/models/index.d.ts +1 -0
  393. package/f-connection-v2/components/connection-path/f-connection-path.d.ts +14 -0
  394. package/f-connection-v2/components/connection-path/index.d.ts +2 -0
  395. package/f-connection-v2/components/connection-path/models/f-connection-path-base.d.ts +9 -0
  396. package/f-connection-v2/components/connection-path/models/index.d.ts +1 -0
  397. package/f-connection-v2/components/connection-selection/f-connection-selection.d.ts +9 -0
  398. package/f-connection-v2/components/connection-selection/index.d.ts +2 -0
  399. package/f-connection-v2/components/connection-selection/models/f-connection-selection-base.d.ts +6 -0
  400. package/f-connection-v2/components/connection-selection/models/index.d.ts +1 -0
  401. package/f-connection-v2/components/connection-waypoints/f-connection-waypoints.d.ts +19 -0
  402. package/f-connection-v2/components/connection-waypoints/index.d.ts +3 -0
  403. package/f-connection-v2/components/connection-waypoints/models/f-connection-waypoints-base.d.ts +16 -0
  404. package/f-connection-v2/components/connection-waypoints/models/index.d.ts +1 -0
  405. package/f-connection-v2/components/connection-waypoints/utils/find-existing-waypoint.d.ts +6 -0
  406. package/f-connection-v2/components/connection-waypoints/utils/find-waypoint-candidate.d.ts +6 -0
  407. package/f-connection-v2/components/connection-waypoints/utils/index.d.ts +4 -0
  408. package/f-connection-v2/components/connection-waypoints/utils/is-pointer-inside-point.d.ts +2 -0
  409. package/f-connection-v2/components/connection-waypoints/utils/pick-waypoint.d.ts +17 -0
  410. package/{f-connection/common → f-connection-v2/components}/f-connection-base.d.ts +14 -31
  411. package/f-connection-v2/components/index.d.ts +8 -0
  412. package/f-connection-v2/enums/index.d.ts +2 -0
  413. package/f-connection-v2/index.d.ts +4 -0
  414. package/f-connection-v2/models/f-connection-components-parent.d.ts +15 -0
  415. package/f-connection-v2/models/f-connection-waypoints-changed-event.d.ts +6 -0
  416. package/f-connection-v2/models/index.d.ts +2 -0
  417. package/f-connection-v2/utils/connection-behaviour/connection-behaviour-builder-request.d.ts +11 -0
  418. package/{domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior.d.ts → f-connection-v2/utils/connection-behaviour/connection-behaviour-builder.d.ts} +5 -6
  419. package/f-connection-v2/utils/connection-behaviour/enums/index.d.ts +2 -0
  420. package/f-connection-v2/utils/connection-behaviour/index.d.ts +5 -0
  421. package/{domain/f-connection/calculate-connection-line-by-behavior/models/calculate-behavior-request.d.ts → f-connection-v2/utils/connection-behaviour/models/i-calculate-behavior-request.d.ts} +2 -2
  422. package/f-connection-v2/utils/connection-behaviour/models/index.d.ts +1 -0
  423. package/{domain/f-connection/calculate-connection-line-by-behavior → f-connection-v2/utils/connection-behaviour}/utils/fixed-center-behavior.d.ts +2 -2
  424. package/{domain/f-connection/calculate-connection-line-by-behavior → f-connection-v2/utils/connection-behaviour}/utils/fixed-outbound-behavior.d.ts +2 -2
  425. package/{domain/f-connection/calculate-connection-line-by-behavior → f-connection-v2/utils/connection-behaviour}/utils/floating-behavior.d.ts +2 -2
  426. package/f-connection-v2/utils/connection-behaviour/utils/index.d.ts +3 -0
  427. package/f-connection-v2/utils/connection-line-builder/builders/adaptive-curve/calculate-adaptive-curve-data.d.ts +8 -0
  428. package/f-connection-v2/utils/connection-line-builder/builders/adaptive-curve/index.d.ts +1 -0
  429. package/f-connection-v2/utils/connection-line-builder/builders/bezier-curve/calculate-bezier-curve-data.d.ts +4 -0
  430. package/f-connection-v2/utils/connection-line-builder/builders/bezier-curve/index.d.ts +1 -0
  431. package/f-connection-v2/utils/connection-line-builder/builders/index.d.ts +5 -0
  432. package/f-connection-v2/utils/connection-line-builder/builders/segment-line/build-corner-mid-points-and-apply-offsets.d.ts +17 -0
  433. package/f-connection-v2/utils/connection-line-builder/builders/segment-line/calculate-segment-line-data.d.ts +6 -0
  434. package/f-connection-v2/utils/connection-line-builder/builders/segment-line/create-segment-line-path.d.ts +2 -0
  435. package/f-connection-v2/utils/connection-line-builder/builders/segment-line/index.d.ts +3 -0
  436. package/{f-connection/common/domain/f-straight.path-builder.d.ts → f-connection-v2/utils/connection-line-builder/builders/straight-line/calculate-straight-line-data.d.ts} +2 -2
  437. package/f-connection-v2/utils/connection-line-builder/builders/straight-line/index.d.ts +1 -0
  438. package/f-connection-v2/utils/connection-line-builder/builders/utils/build-connection-anchors.d.ts +2 -0
  439. package/f-connection-v2/utils/connection-line-builder/builders/utils/calculate-center-between-points.d.ts +2 -0
  440. package/f-connection-v2/utils/connection-line-builder/builders/utils/calculate-curve-candidates.d.ts +3 -0
  441. package/f-connection-v2/utils/connection-line-builder/builders/utils/calculate-polyline-candidates.d.ts +2 -0
  442. package/f-connection-v2/utils/connection-line-builder/builders/utils/index.d.ts +8 -0
  443. package/f-connection-v2/utils/connection-line-builder/builders/utils/merge-point-chains.d.ts +2 -0
  444. package/f-connection-v2/utils/connection-line-builder/builders/utils/multi-cubic.d.ts +10 -0
  445. package/f-connection-v2/utils/connection-line-builder/builders/utils/normalize-polyline.d.ts +2 -0
  446. package/f-connection-v2/utils/connection-line-builder/builders/utils/sample-cubic-bezier-uniform.d.ts +24 -0
  447. package/f-connection-v2/utils/connection-line-builder/connection-line-builder-request.d.ts +7 -0
  448. package/f-connection-v2/utils/connection-line-builder/connection-line-builder.d.ts +13 -0
  449. package/f-connection-v2/utils/connection-line-builder/index.d.ts +5 -0
  450. package/{f-connection/f-connection-builder → f-connection-v2/utils/connection-line-builder/models}/i-f-connection-builder-request.d.ts +2 -1
  451. package/{f-connection/f-connection-builder → f-connection-v2/utils/connection-line-builder/models}/i-f-connection-builder-response.d.ts +2 -2
  452. package/{f-connection/f-connection-builder → f-connection-v2/utils/connection-line-builder/models}/i-f-connection-builder.d.ts +1 -2
  453. package/{f-connection/f-connection-builder → f-connection-v2/utils/connection-line-builder/models}/index.d.ts +1 -4
  454. package/f-connection-v2/utils/connection-line-builder/providers/f-connection-builders.d.ts +4 -0
  455. package/f-connection-v2/utils/connection-line-builder/providers/index.d.ts +1 -0
  456. package/f-connection-v2/utils/create-connection-dom-identifier.d.ts +1 -0
  457. package/f-connection-v2/utils/create-connection-selection-dom-identifier.d.ts +1 -0
  458. package/f-connection-v2/utils/create-gradient-dom-identifier.d.ts +1 -0
  459. package/f-connection-v2/utils/create-gradient-dom-url.d.ts +1 -0
  460. package/f-connection-v2/utils/index.d.ts +6 -0
  461. package/f-connectors/f-connector-base.d.ts +1 -1
  462. package/f-connectors/f-node-input/f-node-input.directive.d.ts +1 -1
  463. package/f-connectors/f-node-outlet/f-node-outlet.directive.d.ts +1 -1
  464. package/f-connectors/f-node-output/f-node-output.directive.d.ts +1 -1
  465. package/f-connectors/f-source-connector-base.d.ts +3 -0
  466. package/f-connectors/index.d.ts +0 -1
  467. package/f-draggable/f-connection/f-create-connection/f-create-connection.drag-handler.d.ts +1 -0
  468. package/f-draggable/f-connection/f-reassign-connection/f-reassign-connection.drag-handler.d.ts +2 -1
  469. package/f-draggable/f-connection/f-reassign-connection/f-reassign-source.drag-handler.d.ts +4 -2
  470. package/f-draggable/f-connection/f-reassign-connection/f-reassign-target.drag-handler.d.ts +4 -2
  471. package/f-draggable/f-connection/f-reassign-connection/i-f-reassign-connection-drag-result.d.ts +1 -1
  472. package/f-draggable/f-connection/f-reassign-connection/reassign-preparation/f-reassign-connection-preparation.execution.d.ts +6 -7
  473. package/f-draggable/f-connection/f-reassign-connection/reassign-preparation/is-pointer-inside-start-or-end-drag-handles.d.ts +2 -2
  474. package/f-draggable/f-connection/index.d.ts +1 -0
  475. package/f-draggable/f-connection/move-connection-waypoint/index.d.ts +3 -0
  476. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-finalize/index.d.ts +2 -0
  477. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-finalize/move-connection-waypoint-finalize-request.d.ts +6 -0
  478. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-finalize/move-connection-waypoint-finalize.d.ts +11 -0
  479. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-handler.d.ts +20 -0
  480. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-preparation/index.d.ts +2 -0
  481. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-preparation/move-connection-waypoint-preparation-request.d.ts +8 -0
  482. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-preparation/move-connection-waypoint-preparation.d.ts +19 -0
  483. package/f-draggable/f-connection/providers.d.ts +3 -2
  484. package/f-draggable/f-drag-handler/i-f-drag-handler.d.ts +2 -1
  485. package/f-draggable/f-draggable-base.d.ts +3 -1
  486. package/f-draggable/f-draggable.directive.d.ts +5 -1
  487. package/f-draggable/f-node-move/connection-drag-handlers/base-connection.drag-handler.d.ts +2 -1
  488. package/f-draggable/f-node-move/connection-drag-handlers/source-connection.drag-handler.d.ts +1 -1
  489. package/f-draggable/f-node-move/connection-drag-handlers/source-target-connection.drag-handler.d.ts +1 -1
  490. package/f-draggable/f-node-move/connection-drag-handlers/target-connection.drag-handler.d.ts +1 -1
  491. package/f-draggable/f-node-move/create-drag-model-from-selection/create-output-connection-handler-and-set-to-node-handler/create-output-connection-handler-and-set-to-node-handler.d.ts +1 -1
  492. package/f-draggable/f-node-move/create-snap-lines/create-snap-lines-request.d.ts +1 -1
  493. package/f-draggable/f-node-move/move-drag-handler.d.ts +2 -2
  494. package/f-draggable/f-node-move/move-finalize/f-node-move-finalize.execution.d.ts +1 -1
  495. package/f-draggable/f-node-move/move-preparation/index.d.ts +2 -2
  496. package/f-draggable/f-node-move/move-preparation/{f-node-move-preparation.request.d.ts → move-node-preparation-request.d.ts} +3 -3
  497. package/f-draggable/f-node-move/move-preparation/move-node-preparation.d.ts +17 -0
  498. package/f-draggable/f-node-move/move-summary-drag-handler.d.ts +3 -3
  499. package/f-draggable/f-node-move/providers.d.ts +2 -2
  500. package/f-draggable/index.d.ts +2 -1
  501. package/f-draggable/pinch-to-zoom/constants/constants.d.ts +5 -0
  502. package/f-draggable/pinch-to-zoom/constants/index.d.ts +1 -0
  503. package/f-draggable/pinch-to-zoom/finalize/index.d.ts +2 -0
  504. package/f-draggable/pinch-to-zoom/finalize/pinch-to-zoom-finalize-request.d.ts +6 -0
  505. package/f-draggable/pinch-to-zoom/finalize/pinch-to-zoom-finalize.d.ts +11 -0
  506. package/f-draggable/pinch-to-zoom/index.d.ts +6 -0
  507. package/f-draggable/pinch-to-zoom/pinch-to-zoom-handler.d.ts +21 -0
  508. package/f-draggable/pinch-to-zoom/preparation/index.d.ts +2 -0
  509. package/f-draggable/pinch-to-zoom/preparation/pinch-to-zoom-preparation-request.d.ts +6 -0
  510. package/f-draggable/pinch-to-zoom/preparation/pinch-to-zoom-preparation.d.ts +13 -0
  511. package/f-draggable/pinch-to-zoom/providers.d.ts +3 -0
  512. package/f-draggable/pinch-to-zoom/utils/calculate-touch-center.d.ts +2 -0
  513. package/f-draggable/pinch-to-zoom/utils/calculate-touch-distance.d.ts +1 -0
  514. package/f-draggable/pinch-to-zoom/utils/index.d.ts +2 -0
  515. package/f-draggable/providers.d.ts +1 -1
  516. package/f-draggable/single-select/index.d.ts +3 -0
  517. package/f-draggable/single-select/providers.d.ts +2 -0
  518. package/f-draggable/single-select/single-select-request.d.ts +8 -0
  519. package/f-draggable/{f-single-select/f-single-select.execution.d.ts → single-select/single-select.d.ts} +7 -6
  520. package/f-flow/f-flow.component.d.ts +1 -1
  521. package/f-flow.module.d.ts +36 -37
  522. package/f-line-alignment/f-line-alignment-base.d.ts +3 -4
  523. package/f-line-alignment/f-line-alignment.component.d.ts +3 -4
  524. package/f-minimap/f-minimap.component.d.ts +2 -2
  525. package/f-selection-area/domain/selection-area.drag-handle.d.ts +6 -5
  526. package/f-storage/f-components-store.d.ts +3 -4
  527. package/f-storage/features/listen-components-data-changed/index.d.ts +1 -1
  528. package/f-storage/features/listen-components-data-changed/{listen-data-changes.execution.d.ts → listen-data-changes.d.ts} +3 -3
  529. package/f-storage/features/listen-count-changes/index.d.ts +1 -1
  530. package/f-storage/features/listen-count-changes/{listen-count-changes.execution.d.ts → listen-count-changes.d.ts} +3 -3
  531. package/f-storage/features/listen-transform-changes/index.d.ts +2 -2
  532. package/f-storage/features/listen-transform-changes/{listen-transform-changes.execution.d.ts → listen-transform-changes.d.ts} +4 -4
  533. package/f-storage/features/notify-data-changed/index.d.ts +1 -1
  534. package/f-storage/features/notify-data-changed/{notify-data-changed.execution.d.ts → notify-data-changed.d.ts} +3 -3
  535. package/f-storage/features/notify-transform-changed/index.d.ts +2 -2
  536. package/f-storage/features/notify-transform-changed/{notify-transform-changed.execution.d.ts → notify-transform-changed.d.ts} +4 -4
  537. package/f-storage/index.d.ts +0 -1
  538. package/f-storage/providers.d.ts +6 -6
  539. package/f-zoom/f-zoom.directive.d.ts +0 -4
  540. package/fesm2022/foblex-flow.mjs +4296 -3863
  541. package/fesm2022/foblex-flow.mjs.map +1 -1
  542. package/package.json +1 -1
  543. package/public-api.d.ts +1 -0
  544. package/reactivity/index.d.ts +1 -0
  545. package/reactivity/take-one.d.ts +2 -0
  546. package/reactivity/types.d.ts +6 -1
  547. package/utils/calculate-pointer-in-flow.d.ts +4 -0
  548. package/utils/index.d.ts +1 -0
  549. package/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior-request.d.ts +0 -12
  550. package/domain/f-connection/calculate-connection-line-by-behavior/index.d.ts +0 -6
  551. package/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections-request.d.ts +0 -3
  552. package/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.d.ts +0 -14
  553. package/domain/f-flow/get-flow-state/get-flow-state-connections/index.d.ts +0 -2
  554. package/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes-request.d.ts +0 -6
  555. package/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.d.ts +0 -15
  556. package/domain/f-flow/get-flow-state/get-flow-state-nodes/index.d.ts +0 -2
  557. package/domain/f-flow/get-flow-state/get-flow-state.execution.d.ts +0 -15
  558. package/domain/f-flow/get-flow-state/get-flow-state.request.d.ts +0 -3
  559. package/domain/f-flow/get-flow-state/i-f-flow-state-connection.d.ts +0 -9
  560. package/domain/f-flow/get-flow-state/providers.d.ts +0 -7
  561. package/domain/f-selection/get-can-be-selected-items/get-can-be-selected-items-request.d.ts +0 -3
  562. package/domain/f-selection/get-can-be-selected-items/index.d.ts +0 -3
  563. package/domain/f-zoom/add-zoom-to-store/add-zoom-to-store.execution.d.ts +0 -12
  564. package/domain/f-zoom/reset-zoom/reset-zoom.execution.d.ts +0 -13
  565. package/domain/i-map.d.ts +0 -1
  566. package/esm2022/domain/f-connection/add-connection-for-create-to-store/add-connection-for-create-to-store.execution.mjs +0 -25
  567. package/esm2022/domain/f-connection/add-connection-marker-to-store/add-connection-marker-to-store.execution.mjs +0 -25
  568. package/esm2022/domain/f-connection/add-connection-to-store/add-connection-to-store.execution.mjs +0 -26
  569. package/esm2022/domain/f-connection/add-snap-connection-to-store/add-snap-connection-to-store.execution.mjs +0 -25
  570. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior-request.mjs +0 -16
  571. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior.mjs +0 -145
  572. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/index.mjs +0 -7
  573. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/models/calculate-behavior-request.mjs +0 -2
  574. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/utils/fixed-center-behavior.mjs +0 -12
  575. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/utils/fixed-outbound-behavior.mjs +0 -31
  576. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/utils/floating-behavior.mjs +0 -22
  577. package/esm2022/domain/f-connection/create-connection-markers/create-connection-markers.execution.mjs +0 -65
  578. package/esm2022/domain/f-connection/remove-connection-for-create-from-store/remove-connection-for-create-from-store.execution.mjs +0 -25
  579. package/esm2022/domain/f-connection/remove-connection-from-store/remove-connection-from-store.execution.mjs +0 -33
  580. package/esm2022/domain/f-connection/remove-connection-marker-from-store/remove-connection-marker-from-store.execution.mjs +0 -25
  581. package/esm2022/domain/f-connection/remove-snap-connection-from-store/remove-snap-connection-from-store.execution.mjs +0 -25
  582. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections-request.mjs +0 -4
  583. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.mjs +0 -35
  584. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-connections/index.mjs +0 -3
  585. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes-request.mjs +0 -8
  586. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.mjs +0 -58
  587. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-nodes/index.mjs +0 -3
  588. package/esm2022/domain/f-flow/get-flow-state/get-flow-state.execution.mjs +0 -39
  589. package/esm2022/domain/f-flow/get-flow-state/get-flow-state.request.mjs +0 -4
  590. package/esm2022/domain/f-flow/get-flow-state/i-f-flow-state-connection.mjs +0 -2
  591. package/esm2022/domain/f-flow/get-flow-state/i-f-flow-state-connector.mjs +0 -2
  592. package/esm2022/domain/f-flow/get-flow-state/i-f-flow-state-node.mjs +0 -2
  593. package/esm2022/domain/f-flow/get-flow-state/i-f-flow-state.mjs +0 -2
  594. package/esm2022/domain/f-flow/get-flow-state/index.mjs +0 -10
  595. package/esm2022/domain/f-flow/get-flow-state/providers.mjs +0 -12
  596. package/esm2022/domain/f-selection/get-can-be-selected-items/get-can-be-selected-items-request.mjs +0 -4
  597. package/esm2022/domain/f-selection/get-can-be-selected-items/get-can-be-selected-items.execution.mjs +0 -66
  598. package/esm2022/domain/f-selection/get-can-be-selected-items/i-can-be-selected-element-and-rect.mjs +0 -2
  599. package/esm2022/domain/f-selection/get-can-be-selected-items/index.mjs +0 -4
  600. package/esm2022/domain/f-zoom/add-zoom-to-store/add-zoom-to-store.execution.mjs +0 -28
  601. package/esm2022/domain/f-zoom/remove-zoom-from-store/remove-zoom-from-store.execution.mjs +0 -28
  602. package/esm2022/domain/f-zoom/reset-zoom/reset-zoom.execution.mjs +0 -30
  603. package/esm2022/domain/f-zoom/set-zoom/set-zoom.execution.mjs +0 -54
  604. package/esm2022/domain/i-map.mjs +0 -2
  605. package/esm2022/f-connection/common/domain/adaptive-curve-builder.mjs +0 -201
  606. package/esm2022/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points-request.mjs +0 -10
  607. package/esm2022/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points.handler.mjs +0 -12
  608. package/esm2022/f-connection/common/domain/calculate-center-between-points/index.mjs +0 -3
  609. package/esm2022/f-connection/common/domain/calculate-connection-center/calculate-connection-center-request.mjs +0 -8
  610. package/esm2022/f-connection/common/domain/calculate-connection-center/calculate-connection-center.handler.mjs +0 -35
  611. package/esm2022/f-connection/common/domain/calculate-connection-center/index.mjs +0 -3
  612. package/esm2022/f-connection/common/domain/f-bezier.path-builder.mjs +0 -58
  613. package/esm2022/f-connection/common/domain/f-segment.path-builder.mjs +0 -161
  614. package/esm2022/f-connection/common/domain/f-straight.path-builder.mjs +0 -16
  615. package/esm2022/f-connection/common/domain/index.mjs +0 -7
  616. package/esm2022/f-connection/common/e-f-connection-behavior.mjs +0 -7
  617. package/esm2022/f-connection/common/e-f-connection-connectable-side.mjs +0 -12
  618. package/esm2022/f-connection/common/e-f-connection-type.mjs +0 -8
  619. package/esm2022/f-connection/common/f-connection-base.mjs +0 -121
  620. package/esm2022/f-connection/common/f-connection-identifiers.mjs +0 -22
  621. package/esm2022/f-connection/common/f-connection-text/f-connection-text-path.directive.mjs +0 -65
  622. package/esm2022/f-connection/common/f-connection-text/f-connection-text.component.mjs +0 -57
  623. package/esm2022/f-connection/common/f-connection-text/i-connection-text.mjs +0 -3
  624. package/esm2022/f-connection/common/f-connection-text/index.mjs +0 -4
  625. package/esm2022/f-connection/common/f-connection.injection-token.mjs +0 -3
  626. package/esm2022/f-connection/common/f-drag-handle/f-connection-drag-handle-end.component.mjs +0 -37
  627. package/esm2022/f-connection/common/f-drag-handle/f-connection-drag-handle-start.component.mjs +0 -37
  628. package/esm2022/f-connection/common/f-drag-handle/index.mjs +0 -3
  629. package/esm2022/f-connection/common/f-gradient/f-connection-gradient.component.mjs +0 -55
  630. package/esm2022/f-connection/common/f-gradient/i-connection-gradient.mjs +0 -3
  631. package/esm2022/f-connection/common/f-gradient/index.mjs +0 -3
  632. package/esm2022/f-connection/common/f-path/f-connection-path.component.mjs +0 -45
  633. package/esm2022/f-connection/common/f-path/get-path-marker-id.mjs +0 -14
  634. package/esm2022/f-connection/common/f-path/i-connection-path.mjs +0 -3
  635. package/esm2022/f-connection/common/f-path/index.mjs +0 -4
  636. package/esm2022/f-connection/common/f-selection/f-connection-selection.component.mjs +0 -24
  637. package/esm2022/f-connection/common/f-selection/index.mjs +0 -2
  638. package/esm2022/f-connection/common/i-has-connection-color.mjs +0 -2
  639. package/esm2022/f-connection/common/i-has-connection-from-to.mjs +0 -2
  640. package/esm2022/f-connection/common/i-has-connection-text.mjs +0 -2
  641. package/esm2022/f-connection/common/index.mjs +0 -15
  642. package/esm2022/f-connection/f-connection-builder/f-connection-builders.mjs +0 -3
  643. package/esm2022/f-connection/f-connection-builder/f-connection-factory.mjs +0 -26
  644. package/esm2022/f-connection/f-connection-builder/i-f-connection-builder-request.mjs +0 -2
  645. package/esm2022/f-connection/f-connection-builder/i-f-connection-builder-response.mjs +0 -2
  646. package/esm2022/f-connection/f-connection-builder/i-f-connection-builder.mjs +0 -2
  647. package/esm2022/f-connection/f-connection-builder/i-f-connection-factory-request.mjs +0 -2
  648. package/esm2022/f-connection/f-connection-builder/index.mjs +0 -7
  649. package/esm2022/f-connection/f-connection-center/f-connection-center.directive.mjs +0 -30
  650. package/esm2022/f-connection/f-connection-center/index.mjs +0 -2
  651. package/esm2022/f-connection/f-connection-content/f-connection-content.mjs +0 -102
  652. package/esm2022/f-connection/f-connection-content/index.mjs +0 -3
  653. package/esm2022/f-connection/f-connection-content/polyline-content-engine/i-polyline-content.mjs +0 -2
  654. package/esm2022/f-connection/f-connection-content/polyline-content-engine/index.mjs +0 -6
  655. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-content-align.mjs +0 -6
  656. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-content-layout-engine.mjs +0 -28
  657. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/i-sampler-result.mjs +0 -2
  658. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/i-tangent.mjs +0 -2
  659. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/index.mjs +0 -5
  660. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/polyline-sampler.mjs +0 -143
  661. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/polyline.mjs +0 -68
  662. package/esm2022/f-connection/f-marker/e-f-marker-type.mjs +0 -8
  663. package/esm2022/f-connection/f-marker/f-marker-base.mjs +0 -5
  664. package/esm2022/f-connection/f-marker/f-marker.directive.mjs +0 -51
  665. package/esm2022/f-connection/f-marker/index.mjs +0 -4
  666. package/esm2022/f-connectors/e-f-connectable-side.mjs +0 -12
  667. package/esm2022/f-draggable/f-node-move/move-preparation/f-node-move-preparation.execution.mjs +0 -82
  668. package/esm2022/f-draggable/f-node-move/move-preparation/f-node-move-preparation.request.mjs +0 -10
  669. package/esm2022/f-draggable/f-single-select/f-single-select.execution.mjs +0 -138
  670. package/esm2022/f-draggable/f-single-select/f-single-select.request.mjs +0 -10
  671. package/esm2022/f-draggable/f-single-select/index.mjs +0 -4
  672. package/esm2022/f-draggable/f-single-select/providers.mjs +0 -5
  673. package/esm2022/f-storage/f-connectors-store.mjs +0 -11
  674. package/esm2022/f-storage/features/listen-components-data-changed/listen-data-changes.execution.mjs +0 -23
  675. package/esm2022/f-storage/features/listen-count-changes/listen-count-changes.execution.mjs +0 -23
  676. package/esm2022/f-storage/features/listen-transform-changes/listen-transform-changes.execution.mjs +0 -23
  677. package/esm2022/f-storage/features/notify-data-changed/notify-data-changed.execution.mjs +0 -22
  678. package/esm2022/f-storage/features/notify-transform-changed/notify-transform-changed.execution.mjs +0 -22
  679. package/f-connection/common/domain/adaptive-curve-builder.d.ts +0 -102
  680. package/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points-request.d.ts +0 -7
  681. package/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points.handler.d.ts +0 -6
  682. package/f-connection/common/domain/calculate-center-between-points/index.d.ts +0 -2
  683. package/f-connection/common/domain/calculate-connection-center/calculate-connection-center-request.d.ts +0 -6
  684. package/f-connection/common/domain/calculate-connection-center/calculate-connection-center.handler.d.ts +0 -8
  685. package/f-connection/common/domain/calculate-connection-center/index.d.ts +0 -2
  686. package/f-connection/common/domain/f-bezier.path-builder.d.ts +0 -6
  687. package/f-connection/common/domain/f-segment.path-builder.d.ts +0 -11
  688. package/f-connection/common/domain/index.d.ts +0 -6
  689. package/f-connection/common/f-connection-identifiers.d.ts +0 -8
  690. package/f-connection/common/f-connection-text/f-connection-text-path.directive.d.ts +0 -18
  691. package/f-connection/common/f-connection-text/f-connection-text.component.d.ts +0 -16
  692. package/f-connection/common/f-connection-text/i-connection-text.d.ts +0 -7
  693. package/f-connection/common/f-connection-text/index.d.ts +0 -3
  694. package/f-connection/common/f-connection.injection-token.d.ts +0 -2
  695. package/f-connection/common/f-drag-handle/f-connection-drag-handle-end.component.d.ts +0 -13
  696. package/f-connection/common/f-drag-handle/f-connection-drag-handle-start.component.d.ts +0 -13
  697. package/f-connection/common/f-drag-handle/index.d.ts +0 -2
  698. package/f-connection/common/f-gradient/i-connection-gradient.d.ts +0 -8
  699. package/f-connection/common/f-gradient/index.d.ts +0 -2
  700. package/f-connection/common/f-path/f-connection-path.component.d.ts +0 -15
  701. package/f-connection/common/f-path/get-path-marker-id.d.ts +0 -4
  702. package/f-connection/common/f-path/i-connection-path.d.ts +0 -9
  703. package/f-connection/common/f-path/index.d.ts +0 -3
  704. package/f-connection/common/f-selection/f-connection-selection.component.d.ts +0 -10
  705. package/f-connection/common/f-selection/index.d.ts +0 -1
  706. package/f-connection/common/i-has-connection-color.d.ts +0 -5
  707. package/f-connection/common/i-has-connection-from-to.d.ts +0 -6
  708. package/f-connection/common/i-has-connection-text.d.ts +0 -4
  709. package/f-connection/common/index.d.ts +0 -14
  710. package/f-connection/f-connection-builder/f-connection-builders.d.ts +0 -4
  711. package/f-connection/f-connection-builder/f-connection-factory.d.ts +0 -9
  712. package/f-connection/f-connection-builder/i-f-connection-factory-request.d.ts +0 -6
  713. package/f-connection/f-connection-center/f-connection-center.directive.d.ts +0 -10
  714. package/f-connection/f-connection-center/index.d.ts +0 -1
  715. package/f-connection/f-connection-content/index.d.ts +0 -2
  716. package/f-connection/f-marker/f-marker.directive.d.ts +0 -18
  717. package/f-connection/f-marker/index.d.ts +0 -3
  718. package/f-draggable/f-node-move/move-preparation/f-node-move-preparation.execution.d.ts +0 -20
  719. package/f-draggable/f-single-select/f-single-select.request.d.ts +0 -8
  720. package/f-draggable/f-single-select/index.d.ts +0 -3
  721. package/f-draggable/f-single-select/providers.d.ts +0 -2
  722. package/f-storage/f-connectors-store.d.ts +0 -6
  723. /package/domain/f-flow/{get-flow-state → calculate-flow-state}/i-f-flow-state-node.d.ts +0 -0
  724. /package/domain/f-flow/{get-flow-state → calculate-flow-state}/i-f-flow-state.d.ts +0 -0
  725. /package/domain/f-selection/{get-can-be-selected-items → calculate-selectable-items}/i-can-be-selected-element-and-rect.d.ts +0 -0
  726. /package/f-canvas/domain/{f-canvas-change.event.d.ts → f-canvas-change-event.d.ts} +0 -0
  727. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/i-polyline-content.d.ts +0 -0
  728. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/index.d.ts +0 -0
  729. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-content-align.d.ts +0 -0
  730. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-content-place.d.ts +0 -0
  731. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-sampler/i-sampler-result.d.ts +0 -0
  732. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-sampler/i-tangent.d.ts +0 -0
  733. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-sampler/index.d.ts +0 -0
  734. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-sampler/polyline-sampler.d.ts +0 -0
  735. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-sampler/polyline.d.ts +0 -0
  736. /package/{f-connection/f-marker → f-connection-v2/components/connection-marker/enums}/e-f-marker-type.d.ts +0 -0
  737. /package/{f-connectors → f-connection-v2/enums}/e-f-connectable-side.d.ts +0 -0
  738. /package/{f-connection/common → f-connection-v2/enums}/e-f-connection-type.d.ts +0 -0
  739. /package/{f-connection/common → f-connection-v2/utils/connection-behaviour/enums}/e-f-connection-behavior.d.ts +0 -0
  740. /package/{f-connection/common → f-connection-v2/utils/connection-behaviour/enums}/e-f-connection-connectable-side.d.ts +0 -0
  741. /package/f-storage/features/listen-transform-changes/{listen-transform-changes.request.d.ts → listen-transform-changes-request.d.ts} +0 -0
  742. /package/f-storage/features/notify-transform-changed/{notify-transform-changed.request.d.ts → notify-transform-changed-request.d.ts} +0 -0
@@ -5,17 +5,17 @@ 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';
8
+ import { IsConnectionUnderNodeRequest } from '../../domain';
9
9
  import { MoveSummaryDragHandler } from '../move-summary-drag-handler';
10
- import { FMoveNodesEvent } from "../f-move-nodes.event";
10
+ import { FMoveNodesEvent } from '../f-move-nodes.event';
11
11
  import * as i0 from "@angular/core";
12
12
  let FNodeMoveFinalizeExecution = class FNodeMoveFinalizeExecution {
13
13
  _mediator = inject(FMediator);
14
14
  _store = inject(FComponentsStore);
15
15
  _dragContext = inject(FDraggableDataContext);
16
16
  _summaryHandler;
17
- get _fHost() {
18
- return this._store.fFlow.hostElement;
17
+ get _flowHost() {
18
+ return this._store.flowHost;
19
19
  }
20
20
  handle({ event }) {
21
21
  if (!this._isValid()) {
@@ -31,7 +31,8 @@ let FNodeMoveFinalizeExecution = class FNodeMoveFinalizeExecution {
31
31
  return !!this._summaryHandler;
32
32
  }
33
33
  _getDifferenceBetweenPreparationAndFinalize(position) {
34
- return Point.fromPoint(position).elementTransform(this._fHost)
34
+ return Point.fromPoint(position)
35
+ .elementTransform(this._flowHost)
35
36
  .div(this._dragContext.onPointerDownScale)
36
37
  .sub(this._dragContext.onPointerDownPosition);
37
38
  }
@@ -40,8 +41,12 @@ let FNodeMoveFinalizeExecution = class FNodeMoveFinalizeExecution {
40
41
  }
41
42
  _applySnapLinesDifference(difference, intersection) {
42
43
  if (intersection) {
43
- difference.x = this._isIntersectValue(intersection.xResult) ? (difference.x - intersection.xResult.distance) : difference.x;
44
- difference.y = this._isIntersectValue(intersection.yResult) ? (difference.y - intersection.yResult.distance) : difference.y;
44
+ difference.x = this._isIntersectValue(intersection.xResult)
45
+ ? difference.x - intersection.xResult.distance
46
+ : difference.x;
47
+ difference.y = this._isIntersectValue(intersection.yResult)
48
+ ? difference.y - intersection.yResult.distance
49
+ : difference.y;
45
50
  }
46
51
  return difference;
47
52
  }
@@ -50,15 +55,15 @@ let FNodeMoveFinalizeExecution = class FNodeMoveFinalizeExecution {
50
55
  }
51
56
  _finalizeMove(snappedDifference) {
52
57
  this._summaryHandler?.rootHandlers.forEach((x) => x.assignFinalConstraints());
53
- this._summaryHandler.onPointerMove({ ...snappedDifference });
54
- this._summaryHandler.onPointerUp?.();
58
+ this._summaryHandler?.onPointerMove({ ...snappedDifference });
59
+ this._summaryHandler?.onPointerUp?.();
55
60
  this._store.fDraggable?.fMoveNodes.emit(this._createMoveNodesEvent());
56
61
  }
57
62
  _createMoveNodesEvent() {
58
- const eventNodes = this._summaryHandler.fData.fNodeIds.map((id) => {
63
+ const eventNodes = this._summaryHandler?.fData.fNodeIds.map((id) => {
59
64
  return {
60
65
  id,
61
- position: this._store.fNodes.find(x => x.fId() === id)._position,
66
+ position: this._store.fNodes.find((x) => x.fId() === id)?._position,
62
67
  };
63
68
  });
64
69
  return new FMoveNodesEvent(eventNodes);
@@ -69,10 +74,10 @@ let FNodeMoveFinalizeExecution = class FNodeMoveFinalizeExecution {
69
74
  }
70
75
  }
71
76
  _isDraggedJustOneNode() {
72
- return this._summaryHandler.rootHandlers.length === 1;
77
+ return this._summaryHandler?.rootHandlers.length === 1;
73
78
  }
74
79
  _firstNodeOrGroup() {
75
- return this._summaryHandler.rootHandlers[0].nodeOrGroup;
80
+ return this._summaryHandler?.rootHandlers[0].nodeOrGroup;
76
81
  }
77
82
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FNodeMoveFinalizeExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
78
83
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FNodeMoveFinalizeExecution });
@@ -84,4 +89,4 @@ export { FNodeMoveFinalizeExecution };
84
89
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FNodeMoveFinalizeExecution, decorators: [{
85
90
  type: Injectable
86
91
  }] });
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ub2RlLW1vdmUtZmluYWxpemUuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLW5vZGUtbW92ZS9tb3ZlLWZpbmFsaXplL2Ytbm9kZS1tb3ZlLWZpbmFsaXplLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUUsT0FBTyxFQUFVLEtBQUssRUFBRSxNQUFNLFlBQVksQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDN0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkUsT0FBTyxFQUNMLDRCQUE0QixHQUM3QixNQUFNLGNBQWMsQ0FBQztBQUV0QixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUV0RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBSWpELElBQU0sMEJBQTBCLEdBQWhDLE1BQU0sMEJBQTBCO0lBRXBCLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDOUIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ2xDLFlBQVksR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUV0RCxlQUFlLENBQXFDO0lBRTVELElBQVksTUFBTTtRQUNoQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBTSxDQUFDLFdBQVcsQ0FBQztJQUN4QyxDQUFDO0lBRU0sTUFB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RyxDQUFDLENBQUMsRUFBVSxFQUFFLEVBQUU7WUFDekUsT0FBTztnQkFDTCxFQUFFO2dCQUNGLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxDQUFFLENBQUMsU0FBUzthQUNsRSxDQUFBO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFTyxnQ0FBZ0M7UUFDdEMsSUFBSSxJQUFJLENBQUMscUJBQXFCLEVBQUUsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxvQkFBb0IsRUFBRSxDQUFDO1lBQ2pGLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLDRCQUE0QixDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZHLENBQUM7SUFDSCxDQUFDO0lBRU8scUJBQXFCO1FBQzNCLE9BQU8sSUFBSSxDQUFDLGVBQWdCLENBQUMsWUFBWSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixPQUFPLElBQUksQ0FBQyxlQUFnQixDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7SUFDM0QsQ0FBQzt3R0FyRlUsMEJBQTBCOzRHQUExQiwwQkFBMEI7O0FBQTFCLDBCQUEwQjtJQUR0QyxrQkFBa0IsQ0FBQyx3QkFBd0IsQ0FBQztHQUNoQywwQkFBMEIsQ0FzRnRDOzs0RkF0RlksMEJBQTBCO2tCQUZ0QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGTm9kZU1vdmVGaW5hbGl6ZVJlcXVlc3QgfSBmcm9tICcuL2Ytbm9kZS1tb3ZlLWZpbmFsaXplLnJlcXVlc3QnO1xuaW1wb3J0IHsgSVBvaW50LCBQb2ludCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBGTWVkaWF0b3IsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgRkRyYWdnYWJsZURhdGFDb250ZXh0IH0gZnJvbSAnLi4vLi4vZi1kcmFnZ2FibGUtZGF0YS1jb250ZXh0JztcbmltcG9ydCB7XG4gIElzQ29ubmVjdGlvblVuZGVyTm9kZVJlcXVlc3QsXG59IGZyb20gJy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBJU25hcFJlc3VsdCwgSVNuYXBDb29yZGluYXRlIH0gZnJvbSAnLi4vLi4vLi4vZi1saW5lLWFsaWdubWVudCc7XG5pbXBvcnQgeyBNb3ZlU3VtbWFyeURyYWdIYW5kbGVyIH0gZnJvbSAnLi4vbW92ZS1zdW1tYXJ5LWRyYWctaGFuZGxlcic7XG5pbXBvcnQgeyBGTm9kZUJhc2UgfSBmcm9tICcuLi8uLi8uLi9mLW5vZGUnO1xuaW1wb3J0IHsgRk1vdmVOb2Rlc0V2ZW50IH0gZnJvbSBcIi4uL2YtbW92ZS1ub2Rlcy5ldmVudFwiO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKEZOb2RlTW92ZUZpbmFsaXplUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBGTm9kZU1vdmVGaW5hbGl6ZUV4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248Rk5vZGVNb3ZlRmluYWxpemVSZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbWVkaWF0b3IgPSBpbmplY3QoRk1lZGlhdG9yKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfc3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2RyYWdDb250ZXh0ID0gaW5qZWN0KEZEcmFnZ2FibGVEYXRhQ29udGV4dCk7XG5cbiAgcHJpdmF0ZSBfc3VtbWFyeUhhbmRsZXI6IE1vdmVTdW1tYXJ5RHJhZ0hhbmRsZXIgfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBnZXQgX2ZIb3N0KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5fc3RvcmUuZkZsb3chLmhvc3RFbGVtZW50O1xuICB9XG5cbiAgcHVibGljIGhhbmRsZSh7IGV2ZW50IH06IEZOb2RlTW92ZUZpbmFsaXplUmVxdWVzdCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5faXNWYWxpZCgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGRpZmZlcmVuY2UgPSB0aGlzLl9nZXREaWZmZXJlbmNlQmV0d2VlblByZXBhcmF0aW9uQW5kRmluYWxpemUoZXZlbnQuZ2V0UG9zaXRpb24oKSk7XG5cbiAgICBjb25zdCBzbmFwTGluZXNEaWZmZXJlbmNlID0gdGhpcy5fYXBwbHlTbmFwTGluZXNEaWZmZXJlbmNlKGRpZmZlcmVuY2UsIHRoaXMuX2dldFNuYXBMaW5lc1Jlc3VsdChkaWZmZXJlbmNlKSlcblxuICAgIHRoaXMuX2ZpbmFsaXplTW92ZShzbmFwTGluZXNEaWZmZXJlbmNlKTtcblxuICAgIHRoaXMuX2FwcGx5Q29ubmVjdGlvblVuZGVyRHJvcHBlZE5vZGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzVmFsaWQoKTogYm9vbGVhbiB7XG4gICAgdGhpcy5fc3VtbWFyeUhhbmRsZXIgPSB0aGlzLl9kcmFnQ29udGV4dC5kcmFnZ2FibGVJdGVtcy5maW5kKCh4KSA9PiB4IGluc3RhbmNlb2YgTW92ZVN1bW1hcnlEcmFnSGFuZGxlcik7XG5cbiAgICByZXR1cm4gISF0aGlzLl9zdW1tYXJ5SGFuZGxlcjtcbiAgfVxuXG4gIHByaXZhdGUgX2dldERpZmZlcmVuY2VCZXR3ZWVuUHJlcGFyYXRpb25BbmRGaW5hbGl6ZShwb3NpdGlvbjogSVBvaW50KTogUG9pbnQge1xuICAgIHJldHVybiBQb2ludC5mcm9tUG9pbnQocG9zaXRpb24pLmVsZW1lbnRUcmFuc2Zvcm0odGhpcy5fZkhvc3QpXG4gICAgICAuZGl2KHRoaXMuX2RyYWdDb250ZXh0Lm9uUG9pbnRlckRvd25TY2FsZSlcbiAgICAgIC5zdWIodGhpcy5fZHJhZ0NvbnRleHQub25Qb2ludGVyRG93blBvc2l0aW9uKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldFNuYXBMaW5lc1Jlc3VsdChkaWZmZXJlbmNlOiBJUG9pbnQpOiBJU25hcFJlc3VsdCB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX3N1bW1hcnlIYW5kbGVyPy5maW5kQ2xvc2VzdEFsaWdubWVudChkaWZmZXJlbmNlKTtcbiAgfVxuXG4gIHByaXZhdGUgX2FwcGx5U25hcExpbmVzRGlmZmVyZW5jZShkaWZmZXJlbmNlOiBJUG9pbnQsIGludGVyc2VjdGlvbjogSVNuYXBSZXN1bHQgfCB1bmRlZmluZWQpOiBJUG9pbnQge1xuICAgIGlmIChpbnRlcnNlY3Rpb24pIHtcbiAgICAgIGRpZmZlcmVuY2UueCA9IHRoaXMuX2lzSW50ZXJzZWN0VmFsdWUoaW50ZXJzZWN0aW9uLnhSZXN1bHQpID8gKGRpZmZlcmVuY2UueCAtIGludGVyc2VjdGlvbi54UmVzdWx0LmRpc3RhbmNlISkgOiBkaWZmZXJlbmNlLng7XG4gICAgICBkaWZmZXJlbmNlLnkgPSB0aGlzLl9pc0ludGVyc2VjdFZhbHVlKGludGVyc2VjdGlvbi55UmVzdWx0KSA/IChkaWZmZXJlbmNlLnkgLSBpbnRlcnNlY3Rpb24ueVJlc3VsdC5kaXN0YW5jZSEpIDogZGlmZmVyZW5jZS55O1xuICAgIH1cblxuICAgIHJldHVybiBkaWZmZXJlbmNlO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNJbnRlcnNlY3RWYWx1ZShyZXN1bHQ6IElTbmFwQ29vcmRpbmF0ZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiByZXN1bHQudmFsdWUgIT09IHVuZGVmaW5lZCAmJiByZXN1bHQudmFsdWUgIT09IG51bGw7XG4gIH1cblxuICBwcml2YXRlIF9maW5hbGl6ZU1vdmUoc25hcHBlZERpZmZlcmVuY2U6IElQb2ludCk6IHZvaWQge1xuICAgIHRoaXMuX3N1bW1hcnlIYW5kbGVyPy5yb290SGFuZGxlcnMuZm9yRWFjaCgoeCkgPT4geC5hc3NpZ25GaW5hbENvbnN0cmFpbnRzKCkpO1xuICAgIHRoaXMuX3N1bW1hcnlIYW5kbGVyIS5vblBvaW50ZXJNb3ZlKHsgLi4uc25hcHBlZERpZmZlcmVuY2UgfSk7XG4gICAgdGhpcy5fc3VtbWFyeUhhbmRsZXIhLm9uUG9pbnRlclVwPy4oKTtcblxuICAgIHRoaXMuX3N0b3JlLmZEcmFnZ2FibGU/LmZNb3ZlTm9kZXMuZW1pdCh0aGlzLl9jcmVhdGVNb3ZlTm9kZXNFdmVudCgpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NyZWF0ZU1vdmVOb2Rlc0V2ZW50KCk6IEZNb3ZlTm9kZXNFdmVudCB7XG4gICAgY29uc3QgZXZlbnROb2RlcyA9IHRoaXMuX3N1bW1hcnlIYW5kbGVyIS5mRGF0YS5mTm9kZUlkcy5tYXAoKGlkOiBzdHJpbmcpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGlkLFxuICAgICAgICBwb3NpdGlvbjogdGhpcy5fc3RvcmUuZk5vZGVzLmZpbmQoeCA9PiB4LmZJZCgpID09PSBpZCkhLl9wb3NpdGlvbixcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiBuZXcgRk1vdmVOb2Rlc0V2ZW50KGV2ZW50Tm9kZXMpO1xuICB9XG5cbiAgcHJpdmF0ZSBfYXBwbHlDb25uZWN0aW9uVW5kZXJEcm9wcGVkTm9kZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5faXNEcmFnZ2VkSnVzdE9uZU5vZGUoKSAmJiB0aGlzLl9zdG9yZS5mRHJhZ2dhYmxlPy5mRW1pdE9uTm9kZUludGVyc2VjdCkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBJc0Nvbm5lY3Rpb25VbmRlck5vZGVSZXF1ZXN0KHRoaXMuX2ZpcnN0Tm9kZU9yR3JvdXAoKSkpKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9pc0RyYWdnZWRKdXN0T25lTm9kZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fc3VtbWFyeUhhbmRsZXIhLnJvb3RIYW5kbGVycy5sZW5ndGggPT09IDE7XG4gIH1cblxuICBwcml2YXRlIF9maXJzdE5vZGVPckdyb3VwKCk6IEZOb2RlQmFzZSB7XG4gICAgcmV0dXJuIHRoaXMuX3N1bW1hcnlIYW5kbGVyIS5yb290SGFuZGxlcnNbMF0ubm9kZU9yR3JvdXA7XG4gIH1cbn1cbiJdfQ==
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ub2RlLW1vdmUtZmluYWxpemUuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLW5vZGUtbW92ZS9tb3ZlLWZpbmFsaXplL2Ytbm9kZS1tb3ZlLWZpbmFsaXplLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUUsT0FBTyxFQUFVLEtBQUssRUFBRSxNQUFNLFlBQVksQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDN0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTVELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRXRFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFJakQsSUFBTSwwQkFBMEIsR0FBaEMsTUFBTSwwQkFBMEI7SUFDcEIsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM5QixNQUFNLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDbEMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBRXRELGVBQWUsQ0FBcUM7SUFFNUQsSUFBWSxTQUFTO1FBQ25CLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUM7SUFDOUIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxFQUFF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LEVBQUU7WUFDekUsT0FBTztnQkFDTCxFQUFFO2dCQUNGLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxTQUFTO2FBQ3BFLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sSUFBSSxlQUFlLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVPLGdDQUFnQztRQUN0QyxJQUFJLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLG9CQUFvQixFQUFFLENBQUM7WUFDakYsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUNkLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksNEJBQTRCLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUMsQ0FBQyxDQUNuRixDQUFDO1FBQ0osQ0FBQztJQUNILENBQUM7SUFFTyxxQkFBcUI7UUFDM0IsT0FBTyxJQUFJLENBQUMsZUFBZSxFQUFFLFlBQVksQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFTyxpQkFBaUI7UUFDdkIsT0FBTyxJQUFJLENBQUMsZUFBZSxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUF3QixDQUFDO0lBQ3hFLENBQUM7d0dBbkdVLDBCQUEwQjs0R0FBMUIsMEJBQTBCOztBQUExQiwwQkFBMEI7SUFEdEMsa0JBQWtCLENBQUMsd0JBQXdCLENBQUM7R0FDaEMsMEJBQTBCLENBb0d0Qzs7NEZBcEdZLDBCQUEwQjtrQkFGdEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRk5vZGVNb3ZlRmluYWxpemVSZXF1ZXN0IH0gZnJvbSAnLi9mLW5vZGUtbW92ZS1maW5hbGl6ZS5yZXF1ZXN0JztcbmltcG9ydCB7IElQb2ludCwgUG9pbnQgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZEcmFnZ2FibGVEYXRhQ29udGV4dCB9IGZyb20gJy4uLy4uL2YtZHJhZ2dhYmxlLWRhdGEtY29udGV4dCc7XG5pbXBvcnQgeyBJc0Nvbm5lY3Rpb25VbmRlck5vZGVSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IElTbmFwUmVzdWx0LCBJU25hcENvb3JkaW5hdGUgfSBmcm9tICcuLi8uLi8uLi9mLWxpbmUtYWxpZ25tZW50JztcbmltcG9ydCB7IE1vdmVTdW1tYXJ5RHJhZ0hhbmRsZXIgfSBmcm9tICcuLi9tb3ZlLXN1bW1hcnktZHJhZy1oYW5kbGVyJztcbmltcG9ydCB7IEZOb2RlQmFzZSB9IGZyb20gJy4uLy4uLy4uL2Ytbm9kZSc7XG5pbXBvcnQgeyBGTW92ZU5vZGVzRXZlbnQgfSBmcm9tICcuLi9mLW1vdmUtbm9kZXMuZXZlbnQnO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKEZOb2RlTW92ZUZpbmFsaXplUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBGTm9kZU1vdmVGaW5hbGl6ZUV4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248Rk5vZGVNb3ZlRmluYWxpemVSZXF1ZXN0LCB2b2lkPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX21lZGlhdG9yID0gaW5qZWN0KEZNZWRpYXRvcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3N0b3JlID0gaW5qZWN0KEZDb21wb25lbnRzU3RvcmUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9kcmFnQ29udGV4dCA9IGluamVjdChGRHJhZ2dhYmxlRGF0YUNvbnRleHQpO1xuXG4gIHByaXZhdGUgX3N1bW1hcnlIYW5kbGVyOiBNb3ZlU3VtbWFyeURyYWdIYW5kbGVyIHwgdW5kZWZpbmVkO1xuXG4gIHByaXZhdGUgZ2V0IF9mbG93SG9zdCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuX3N0b3JlLmZsb3dIb3N0O1xuICB9XG5cbiAgcHVibGljIGhhbmRsZSh7IGV2ZW50IH06IEZOb2RlTW92ZUZpbmFsaXplUmVxdWVzdCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5faXNWYWxpZCgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGRpZmZlcmVuY2UgPSB0aGlzLl9nZXREaWZmZXJlbmNlQmV0d2VlblByZXBhcmF0aW9uQW5kRmluYWxpemUoZXZlbnQuZ2V0UG9zaXRpb24oKSk7XG5cbiAgICBjb25zdCBzbmFwTGluZXNEaWZmZXJlbmNlID0gdGhpcy5fYXBwbHlTbmFwTGluZXNEaWZmZXJlbmNlKFxuICAgICAgZGlmZmVyZW5jZSxcbiAgICAgIHRoaXMuX2dldFNuYXBMaW5lc1Jlc3VsdChkaWZmZXJlbmNlKSxcbiAgICApO1xuXG4gICAgdGhpcy5fZmluYWxpemVNb3ZlKHNuYXBMaW5lc0RpZmZlcmVuY2UpO1xuXG4gICAgdGhpcy5fYXBwbHlDb25uZWN0aW9uVW5kZXJEcm9wcGVkTm9kZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNWYWxpZCgpOiBib29sZWFuIHtcbiAgICB0aGlzLl9zdW1tYXJ5SGFuZGxlciA9IHRoaXMuX2RyYWdDb250ZXh0LmRyYWdnYWJsZUl0ZW1zLmZpbmQoXG4gICAgICAoeCkgPT4geCBpbnN0YW5jZW9mIE1vdmVTdW1tYXJ5RHJhZ0hhbmRsZXIsXG4gICAgKTtcblxuICAgIHJldHVybiAhIXRoaXMuX3N1bW1hcnlIYW5kbGVyO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0RGlmZmVyZW5jZUJldHdlZW5QcmVwYXJhdGlvbkFuZEZpbmFsaXplKHBvc2l0aW9uOiBJUG9pbnQpOiBQb2ludCB7XG4gICAgcmV0dXJuIFBvaW50LmZyb21Qb2ludChwb3NpdGlvbilcbiAgICAgIC5lbGVtZW50VHJhbnNmb3JtKHRoaXMuX2Zsb3dIb3N0KVxuICAgICAgLmRpdih0aGlzLl9kcmFnQ29udGV4dC5vblBvaW50ZXJEb3duU2NhbGUpXG4gICAgICAuc3ViKHRoaXMuX2RyYWdDb250ZXh0Lm9uUG9pbnRlckRvd25Qb3NpdGlvbik7XG4gIH1cblxuICBwcml2YXRlIF9nZXRTbmFwTGluZXNSZXN1bHQoZGlmZmVyZW5jZTogSVBvaW50KTogSVNuYXBSZXN1bHQgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9zdW1tYXJ5SGFuZGxlcj8uZmluZENsb3Nlc3RBbGlnbm1lbnQoZGlmZmVyZW5jZSk7XG4gIH1cblxuICBwcml2YXRlIF9hcHBseVNuYXBMaW5lc0RpZmZlcmVuY2UoXG4gICAgZGlmZmVyZW5jZTogSVBvaW50LFxuICAgIGludGVyc2VjdGlvbjogSVNuYXBSZXN1bHQgfCB1bmRlZmluZWQsXG4gICk6IElQb2ludCB7XG4gICAgaWYgKGludGVyc2VjdGlvbikge1xuICAgICAgZGlmZmVyZW5jZS54ID0gdGhpcy5faXNJbnRlcnNlY3RWYWx1ZShpbnRlcnNlY3Rpb24ueFJlc3VsdClcbiAgICAgICAgPyBkaWZmZXJlbmNlLnggLSBpbnRlcnNlY3Rpb24ueFJlc3VsdC5kaXN0YW5jZSFcbiAgICAgICAgOiBkaWZmZXJlbmNlLng7XG4gICAgICBkaWZmZXJlbmNlLnkgPSB0aGlzLl9pc0ludGVyc2VjdFZhbHVlKGludGVyc2VjdGlvbi55UmVzdWx0KVxuICAgICAgICA/IGRpZmZlcmVuY2UueSAtIGludGVyc2VjdGlvbi55UmVzdWx0LmRpc3RhbmNlIVxuICAgICAgICA6IGRpZmZlcmVuY2UueTtcbiAgICB9XG5cbiAgICByZXR1cm4gZGlmZmVyZW5jZTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzSW50ZXJzZWN0VmFsdWUocmVzdWx0OiBJU25hcENvb3JkaW5hdGUpOiBib29sZWFuIHtcbiAgICByZXR1cm4gcmVzdWx0LnZhbHVlICE9PSB1bmRlZmluZWQgJiYgcmVzdWx0LnZhbHVlICE9PSBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBfZmluYWxpemVNb3ZlKHNuYXBwZWREaWZmZXJlbmNlOiBJUG9pbnQpOiB2b2lkIHtcbiAgICB0aGlzLl9zdW1tYXJ5SGFuZGxlcj8ucm9vdEhhbmRsZXJzLmZvckVhY2goKHgpID0+IHguYXNzaWduRmluYWxDb25zdHJhaW50cygpKTtcbiAgICB0aGlzLl9zdW1tYXJ5SGFuZGxlcj8ub25Qb2ludGVyTW92ZSh7IC4uLnNuYXBwZWREaWZmZXJlbmNlIH0pO1xuICAgIHRoaXMuX3N1bW1hcnlIYW5kbGVyPy5vblBvaW50ZXJVcD8uKCk7XG5cbiAgICB0aGlzLl9zdG9yZS5mRHJhZ2dhYmxlPy5mTW92ZU5vZGVzLmVtaXQodGhpcy5fY3JlYXRlTW92ZU5vZGVzRXZlbnQoKSk7XG4gIH1cblxuICBwcml2YXRlIF9jcmVhdGVNb3ZlTm9kZXNFdmVudCgpOiBGTW92ZU5vZGVzRXZlbnQge1xuICAgIGNvbnN0IGV2ZW50Tm9kZXMgPSB0aGlzLl9zdW1tYXJ5SGFuZGxlcj8uZkRhdGEuZk5vZGVJZHMubWFwKChpZDogc3RyaW5nKSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpZCxcbiAgICAgICAgcG9zaXRpb246IHRoaXMuX3N0b3JlLmZOb2Rlcy5maW5kKCh4KSA9PiB4LmZJZCgpID09PSBpZCk/Ll9wb3NpdGlvbixcbiAgICAgIH07XG4gICAgfSk7XG5cbiAgICByZXR1cm4gbmV3IEZNb3ZlTm9kZXNFdmVudChldmVudE5vZGVzKTtcbiAgfVxuXG4gIHByaXZhdGUgX2FwcGx5Q29ubmVjdGlvblVuZGVyRHJvcHBlZE5vZGUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2lzRHJhZ2dlZEp1c3RPbmVOb2RlKCkgJiYgdGhpcy5fc3RvcmUuZkRyYWdnYWJsZT8uZkVtaXRPbk5vZGVJbnRlcnNlY3QpIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT5cbiAgICAgICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgSXNDb25uZWN0aW9uVW5kZXJOb2RlUmVxdWVzdCh0aGlzLl9maXJzdE5vZGVPckdyb3VwKCkpKSxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaXNEcmFnZ2VkSnVzdE9uZU5vZGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3N1bW1hcnlIYW5kbGVyPy5yb290SGFuZGxlcnMubGVuZ3RoID09PSAxO1xuICB9XG5cbiAgcHJpdmF0ZSBfZmlyc3ROb2RlT3JHcm91cCgpOiBGTm9kZUJhc2Uge1xuICAgIHJldHVybiB0aGlzLl9zdW1tYXJ5SGFuZGxlcj8ucm9vdEhhbmRsZXJzWzBdLm5vZGVPckdyb3VwIGFzIEZOb2RlQmFzZTtcbiAgfVxufVxuIl19
@@ -1,3 +1,3 @@
1
- export * from './f-node-move-preparation.execution';
2
- export * from './f-node-move-preparation.request';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2Ytbm9kZS1tb3ZlL21vdmUtcHJlcGFyYXRpb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQ0FBcUMsQ0FBQztBQUVwRCxjQUFjLG1DQUFtQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mLW5vZGUtbW92ZS1wcmVwYXJhdGlvbi5leGVjdXRpb24nO1xuXG5leHBvcnQgKiBmcm9tICcuL2Ytbm9kZS1tb3ZlLXByZXBhcmF0aW9uLnJlcXVlc3QnO1xuIl19
1
+ export * from './move-node-preparation';
2
+ export * from './move-node-preparation-request';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2Ytbm9kZS1tb3ZlL21vdmUtcHJlcGFyYXRpb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5QkFBeUIsQ0FBQztBQUV4QyxjQUFjLGlDQUFpQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9tb3ZlLW5vZGUtcHJlcGFyYXRpb24nO1xuXG5leHBvcnQgKiBmcm9tICcuL21vdmUtbm9kZS1wcmVwYXJhdGlvbi1yZXF1ZXN0JztcbiJdfQ==
@@ -0,0 +1,10 @@
1
+ export class MoveNodePreparationRequest {
2
+ event;
3
+ fTrigger;
4
+ static fToken = Symbol('MoveNodePreparationRequest');
5
+ constructor(event, fTrigger) {
6
+ this.event = event;
7
+ this.fTrigger = fTrigger;
8
+ }
9
+ }
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW92ZS1ub2RlLXByZXBhcmF0aW9uLXJlcXVlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2Ytbm9kZS1tb3ZlL21vdmUtcHJlcGFyYXRpb24vbW92ZS1ub2RlLXByZXBhcmF0aW9uLXJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxPQUFPLDBCQUEwQjtJQUluQjtJQUNBO0lBSmxCLE1BQU0sQ0FBVSxNQUFNLEdBQUcsTUFBTSxDQUFDLDRCQUE0QixDQUFDLENBQUM7SUFFOUQsWUFDa0IsS0FBb0IsRUFDcEIsUUFBdUI7UUFEdkIsVUFBSyxHQUFMLEtBQUssQ0FBZTtRQUNwQixhQUFRLEdBQVIsUUFBUSxDQUFlO0lBQ3RDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGRXZlbnRUcmlnZ2VyIH0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IElQb2ludGVyRXZlbnQgfSBmcm9tICcuLi8uLi8uLi9kcmFnLXRvb2xraXQnO1xuXG5leHBvcnQgY2xhc3MgTW92ZU5vZGVQcmVwYXJhdGlvblJlcXVlc3Qge1xuICBzdGF0aWMgcmVhZG9ubHkgZlRva2VuID0gU3ltYm9sKCdNb3ZlTm9kZVByZXBhcmF0aW9uUmVxdWVzdCcpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSBldmVudDogSVBvaW50ZXJFdmVudCxcbiAgICBwdWJsaWMgcmVhZG9ubHkgZlRyaWdnZXI6IEZFdmVudFRyaWdnZXIsXG4gICkge31cbn1cbiJdfQ==
@@ -0,0 +1,81 @@
1
+ import { __decorate } from "tslib";
2
+ import { inject, Injectable } from '@angular/core';
3
+ import { MoveNodePreparationRequest } from './move-node-preparation-request';
4
+ import { Point } from '@foblex/2d';
5
+ import { FExecutionRegister, FMediator } from '@foblex/mediator';
6
+ import { FComponentsStore } from '../../../f-storage';
7
+ import { FDraggableDataContext } from '../../f-draggable-data-context';
8
+ import { CreateDragModelFromSelectionRequest } from '../create-drag-model-from-selection';
9
+ import { isValidEventTrigger, SelectAndUpdateNodeLayerRequest, } from '../../../domain';
10
+ import { isClosestElementHasClass } from '@foblex/utils';
11
+ import { CreateSnapLinesRequest } from '../create-snap-lines';
12
+ import * as i0 from "@angular/core";
13
+ let MoveNodePreparation = class MoveNodePreparation {
14
+ _mediator = inject(FMediator);
15
+ _store = inject(FComponentsStore);
16
+ _dragContext = inject(FDraggableDataContext);
17
+ handle({ event, fTrigger }) {
18
+ if (!this._dragContext.isEmpty() ||
19
+ !this._isDragHandle(event.targetElement) ||
20
+ !this._isValidTrigger(event, fTrigger)) {
21
+ return;
22
+ }
23
+ const node = this._findDraggableNode(event.targetElement);
24
+ if (!node) {
25
+ return;
26
+ }
27
+ const scale = this._store.fCanvas?.transform.scale ?? 1;
28
+ const flowHost = this._store.flowHost;
29
+ const summaryDragHandler = this._buildDragHandler(node);
30
+ this._dragContext.onPointerDownScale = scale;
31
+ this._dragContext.onPointerDownPosition = Point.fromPoint(event.getPosition())
32
+ .elementTransform(flowHost)
33
+ .div(scale);
34
+ this._dragContext.draggableItems = [summaryDragHandler];
35
+ if (this._store.fLineAlignment) {
36
+ this._mediator.execute(new CreateSnapLinesRequest(summaryDragHandler));
37
+ }
38
+ }
39
+ _isDragHandle(element) {
40
+ return isClosestElementHasClass(element, '.f-drag-handle');
41
+ }
42
+ _findDraggableNode(target) {
43
+ for (const node of this._store.fNodes) {
44
+ if (!node.fDraggingDisabled() && node.isContains(target)) {
45
+ return node;
46
+ }
47
+ }
48
+ return undefined;
49
+ }
50
+ _isValidTrigger(event, fTrigger) {
51
+ return isValidEventTrigger(event.originalEvent, fTrigger);
52
+ }
53
+ //We drag nodes from selection model
54
+ _buildDragHandler(node) {
55
+ if (!node.fSelectionDisabled()) {
56
+ // Need to select node before drag
57
+ this._selectBeforeDrag(node);
58
+ return this._dragModelFromSelection();
59
+ }
60
+ // User can drag node that can't be selected
61
+ return this._dragModelFromSelection(node);
62
+ }
63
+ _selectBeforeDrag(node) {
64
+ queueMicrotask(() => {
65
+ this._mediator.execute(new SelectAndUpdateNodeLayerRequest(node));
66
+ });
67
+ }
68
+ _dragModelFromSelection(nodeWithDisabledSelection) {
69
+ return this._mediator.execute(new CreateDragModelFromSelectionRequest(nodeWithDisabledSelection));
70
+ }
71
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MoveNodePreparation, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
72
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MoveNodePreparation });
73
+ };
74
+ MoveNodePreparation = __decorate([
75
+ FExecutionRegister(MoveNodePreparationRequest)
76
+ ], MoveNodePreparation);
77
+ export { MoveNodePreparation };
78
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MoveNodePreparation, decorators: [{
79
+ type: Injectable
80
+ }] });
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW92ZS1ub2RlLXByZXBhcmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLW5vZGUtbW92ZS9tb3ZlLXByZXBhcmF0aW9uL21vdmUtbm9kZS1wcmVwYXJhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDN0UsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNuQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDN0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFdkUsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDMUYsT0FBTyxFQUVMLG1CQUFtQixFQUNuQiwrQkFBK0IsR0FDaEMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBTXZELElBQU0sbUJBQW1CLEdBQXpCLE1BQU0sbUJBQW1CO0lBQ2IsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM5QixNQUFNLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDbEMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBRXZELE1BQU0sQ0FBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQThCO1FBQzNELElBQ0UsQ0FBQyxJ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SUFDSixDQUFDO3dHQTVFVSxtQkFBbUI7NEdBQW5CLG1CQUFtQjs7QUFBbkIsbUJBQW1CO0lBRC9CLGtCQUFrQixDQUFDLDBCQUEwQixDQUFDO0dBQ2xDLG1CQUFtQixDQTZFL0I7OzRGQTdFWSxtQkFBbUI7a0JBRi9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1vdmVOb2RlUHJlcGFyYXRpb25SZXF1ZXN0IH0gZnJvbSAnLi9tb3ZlLW5vZGUtcHJlcGFyYXRpb24tcmVxdWVzdCc7XG5pbXBvcnQgeyBQb2ludCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBGTWVkaWF0b3IsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgRkRyYWdnYWJsZURhdGFDb250ZXh0IH0gZnJvbSAnLi4vLi4vZi1kcmFnZ2FibGUtZGF0YS1jb250ZXh0JztcbmltcG9ydCB7IEZOb2RlQmFzZSB9IGZyb20gJy4uLy4uLy4uL2Ytbm9kZSc7XG5pbXBvcnQgeyBDcmVhdGVEcmFnTW9kZWxGcm9tU2VsZWN0aW9uUmVxdWVzdCB9IGZyb20gJy4uL2NyZWF0ZS1kcmFnLW1vZGVsLWZyb20tc2VsZWN0aW9uJztcbmltcG9ydCB7XG4gIEZFdmVudFRyaWdnZXIsXG4gIGlzVmFsaWRFdmVudFRyaWdnZXIsXG4gIFNlbGVjdEFuZFVwZGF0ZU5vZGVMYXllclJlcXVlc3QsXG59IGZyb20gJy4uLy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBpc0Nsb3Nlc3RFbGVtZW50SGFzQ2xhc3MgfSBmcm9tICdAZm9ibGV4L3V0aWxzJztcbmltcG9ydCB7IENyZWF0ZVNuYXBMaW5lc1JlcXVlc3QgfSBmcm9tICcuLi9jcmVhdGUtc25hcC1saW5lcyc7XG5pbXBvcnQgeyBNb3ZlU3VtbWFyeURyYWdIYW5kbGVyIH0gZnJvbSAnLi4vbW92ZS1zdW1tYXJ5LWRyYWctaGFuZGxlcic7XG5pbXBvcnQgeyBJUG9pbnRlckV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vZHJhZy10b29sa2l0JztcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihNb3ZlTm9kZVByZXBhcmF0aW9uUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBNb3ZlTm9kZVByZXBhcmF0aW9uIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxNb3ZlTm9kZVByZXBhcmF0aW9uUmVxdWVzdCwgdm9pZD4ge1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9zdG9yZSA9IGluamVjdChGQ29tcG9uZW50c1N0b3JlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZHJhZ0NvbnRleHQgPSBpbmplY3QoRkRyYWdnYWJsZURhdGFDb250ZXh0KTtcblxuICBwdWJsaWMgaGFuZGxlKHsgZXZlbnQsIGZUcmlnZ2VyIH06IE1vdmVOb2RlUHJlcGFyYXRpb25SZXF1ZXN0KTogdm9pZCB7XG4gICAgaWYgKFxuICAgICAgIXRoaXMuX2RyYWdDb250ZXh0LmlzRW1wdHkoKSB8fFxuICAgICAgIXRoaXMuX2lzRHJhZ0hhbmRsZShldmVudC50YXJnZXRFbGVtZW50KSB8fFxuICAgICAgIXRoaXMuX2lzVmFsaWRUcmlnZ2VyKGV2ZW50LCBmVHJpZ2dlcilcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBub2RlID0gdGhpcy5fZmluZERyYWdnYWJsZU5vZGUoZXZlbnQudGFyZ2V0RWxlbWVudCk7XG4gICAgaWYgKCFub2RlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3Qgc2NhbGUgPSB0aGlzLl9zdG9yZS5mQ2FudmFzPy50cmFuc2Zvcm0uc2NhbGUgPz8gMTtcbiAgICBjb25zdCBmbG93SG9zdCA9IHRoaXMuX3N0b3JlLmZsb3dIb3N0O1xuXG4gICAgY29uc3Qgc3VtbWFyeURyYWdIYW5kbGVyID0gdGhpcy5fYnVpbGREcmFnSGFuZGxlcihub2RlKTtcblxuICAgIHRoaXMuX2RyYWdDb250ZXh0Lm9uUG9pbnRlckRvd25TY2FsZSA9IHNjYWxlO1xuICAgIHRoaXMuX2RyYWdDb250ZXh0Lm9uUG9pbnRlckRvd25Qb3NpdGlvbiA9IFBvaW50LmZyb21Qb2ludChldmVudC5nZXRQb3NpdGlvbigpKVxuICAgICAgLmVsZW1lbnRUcmFuc2Zvcm0oZmxvd0hvc3QpXG4gICAgICAuZGl2KHNjYWxlKTtcbiAgICB0aGlzLl9kcmFnQ29udGV4dC5kcmFnZ2FibGVJdGVtcyA9IFtzdW1tYXJ5RHJhZ0hhbmRsZXJdO1xuXG4gICAgaWYgKHRoaXMuX3N0b3JlLmZMaW5lQWxpZ25tZW50KSB7XG4gICAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlPHZvaWQ+KG5ldyBDcmVhdGVTbmFwTGluZXNSZXF1ZXN0KHN1bW1hcnlEcmFnSGFuZGxlcikpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2lzRHJhZ0hhbmRsZShlbGVtZW50OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc0Nsb3Nlc3RFbGVtZW50SGFzQ2xhc3MoZWxlbWVudCwgJy5mLWRyYWctaGFuZGxlJyk7XG4gIH1cblxuICBwcml2YXRlIF9maW5kRHJhZ2dhYmxlTm9kZSh0YXJnZXQ6IEhUTUxFbGVtZW50KTogRk5vZGVCYXNlIHwgdW5kZWZpbmVkIHtcbiAgICBmb3IgKGNvbnN0IG5vZGUgb2YgdGhpcy5fc3RvcmUuZk5vZGVzKSB7XG4gICAgICBpZiAoIW5vZGUuZkRyYWdnaW5nRGlzYWJsZWQoKSAmJiBub2RlLmlzQ29udGFpbnModGFyZ2V0KSkge1xuICAgICAgICByZXR1cm4gbm9kZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNWYWxpZFRyaWdnZXIoZXZlbnQ6IElQb2ludGVyRXZlbnQsIGZUcmlnZ2VyOiBGRXZlbnRUcmlnZ2VyKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzVmFsaWRFdmVudFRyaWdnZXIoZXZlbnQub3JpZ2luYWxFdmVudCwgZlRyaWdnZXIpO1xuICB9XG5cbiAgLy9XZSBkcmFnIG5vZGVzIGZyb20gc2VsZWN0aW9uIG1vZGVsXG4gIHByaXZhdGUgX2J1aWxkRHJhZ0hhbmRsZXIobm9kZTogRk5vZGVCYXNlKTogTW92ZVN1bW1hcnlEcmFnSGFuZGxlciB7XG4gICAgaWYgKCFub2RlLmZTZWxlY3Rpb25EaXNhYmxlZCgpKSB7XG4gICAgICAvLyBOZWVkIHRvIHNlbGVjdCBub2RlIGJlZm9yZSBkcmFnXG4gICAgICB0aGlzLl9zZWxlY3RCZWZvcmVEcmFnKG5vZGUpO1xuXG4gICAgICByZXR1cm4gdGhpcy5fZHJhZ01vZGVsRnJvbVNlbGVjdGlvbigpO1xuICAgIH1cblxuICAgIC8vIFVzZXIgY2FuIGRyYWcgbm9kZSB0aGF0IGNhbid0IGJlIHNlbGVjdGVkXG4gICAgcmV0dXJuIHRoaXMuX2RyYWdNb2RlbEZyb21TZWxlY3Rpb24obm9kZSk7XG4gIH1cblxuICBwcml2YXRlIF9zZWxlY3RCZWZvcmVEcmFnKG5vZGU6IEZOb2RlQmFzZSk6IHZvaWQge1xuICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IHtcbiAgICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8dm9pZD4obmV3IFNlbGVjdEFuZFVwZGF0ZU5vZGVMYXllclJlcXVlc3Qobm9kZSkpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfZHJhZ01vZGVsRnJvbVNlbGVjdGlvbihub2RlV2l0aERpc2FibGVkU2VsZWN0aW9uPzogRk5vZGVCYXNlKTogTW92ZVN1bW1hcnlEcmFnSGFuZGxlciB7XG4gICAgcmV0dXJuIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUoXG4gICAgICBuZXcgQ3JlYXRlRHJhZ01vZGVsRnJvbVNlbGVjdGlvblJlcXVlc3Qobm9kZVdpdGhEaXNhYmxlZFNlbGVjdGlvbiksXG4gICAgKTtcbiAgfVxufVxuIl19
@@ -41,4 +41,4 @@ export class MoveSummaryDragHandler {
41
41
  this.rootHandlers.forEach(({ nodeOrGroup }) => nodeOrGroup.refresh());
42
42
  }
43
43
  }
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW92ZS1zdW1tYXJ5LWRyYWctaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1ub2RlLW1vdmUvbW92ZS1zdW1tYXJ5LWRyYWctaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQU8zRCxNQUFNLE9BQU8sc0JBQXNCO0lBU3hCO0lBQ0E7SUFSTyxVQUFVLEdBQUcsV0FBVyxDQUFDO0lBQ3pCLEtBQUssQ0FBTTtJQUVuQixjQUFjLEdBQWdDLElBQUksQ0FBQztJQUUzRCxZQUNFLFNBQW1CLEVBQ1osc0JBQXlDLEVBQ3pDLFlBQStCO1FBRC9CLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBbUI7UUFDekMsaUJBQVksR0FBWixZQUFZLENBQW1CO1FBRXRDLElBQUksQ0FBQyxLQUFLLEdBQUc7WUFDWCxRQUFRLEVBQUUsc0JBQXNCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxDQUFDO1NBQ2pFLENBQUM7SUFDSixDQUFDO0lBRU0sZ0JBQWdCLENBQUMsT0FBNkI7UUFDbkQsSUFBSSxDQUFDLGNBQWMsR0FBRyxPQUFPLENBQUM7SUFDaEMsQ0FBQztJQUVNLG9CQUFvQixDQUFDLFVBQWtCO1FBQzVDLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFFOUQsT0FBTyxJQUFJLENBQUMsY0FBYyxFQUFFLG9CQUFvQixDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFTSxtQkFBbUI7UUFDeEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVNLGFBQWEsQ0FBQyxVQUFrQjtRQUNyQyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxjQUFjLEVBQUUsYUFBYSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUNsRCxJQUFJLENBQUMsY0FBYyxFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQ25DLHFCQUFxQixDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVPLFVBQVU7UUFDaEIsT0FBTyxjQUFjLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxJQUFJLGNBQWMsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNuRixDQUFDO0lBRU8sYUFBYTtRQUNuQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRU8sb0JBQW9CO1FBQzFCLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDeEUsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVBvaW50LCBJUmVjdCwgUmVjdEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IElGRHJhZ0hhbmRsZXIgfSBmcm9tICcuLi9mLWRyYWctaGFuZGxlcic7XG5pbXBvcnQgeyBNb3ZlRHJhZ0hhbmRsZXIgfSBmcm9tICcuL21vdmUtZHJhZy1oYW5kbGVyJztcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFNuYXBMaW5lc0RyYWdIYW5kbGVyIH0gZnJvbSBcIi4vY3JlYXRlLXNuYXAtbGluZXMvc25hcC1saW5lcy5kcmFnLWhhbmRsZXJcIjtcbmltcG9ydCB7IElTbmFwUmVzdWx0IH0gZnJvbSBcIi4uLy4uL2YtbGluZS1hbGlnbm1lbnRcIjtcblxuZXhwb3J0IGNsYXNzIE1vdmVTdW1tYXJ5RHJhZ0hhbmRsZXIgaW1wbGVtZW50cyBJRkRyYWdIYW5kbGVyIHtcblxuICBwdWJsaWMgcmVhZG9ubHkgZkV2ZW50VHlwZSA9ICdtb3ZlLW5vZGUnO1xuICBwdWJsaWMgcmVhZG9ubHkgZkRhdGE6IGFueTtcblxuICBwcml2YXRlIF9saW5lQWxpZ25tZW50OiBTbmFwTGluZXNEcmFnSGFuZGxlciB8IG51bGwgPSBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHVibGljIGFsbERyYWdnZWROb2RlSGFuZGxlcnM6IE1vdmVEcmFnSGFuZGxlcltdLFxuICAgIHB1YmxpYyByb290SGFuZGxlcnM6IE1vdmVEcmFnSGFuZGxlcltdLFxuICApIHtcbiAgICB0aGlzLmZEYXRhID0ge1xuICAgICAgZk5vZGVJZHM6IGFsbERyYWdnZWROb2RlSGFuZGxlcnMubWFwKCh4KSA9PiB4Lm5vZGVPckdyb3VwLmZJZCgpKSxcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIHNldExpbmVBbGlnbm1lbnQoaGFuZGxlcjogU25hcExpbmVzRHJhZ0hhbmRsZXIpOiB2b2lkIHtcbiAgICB0aGlzLl9saW5lQWxpZ25tZW50ID0gaGFuZGxlcjtcbiAgfVxuXG4gIHB1YmxpYyBmaW5kQ2xvc2VzdEFsaWdubWVudChkaWZmZXJlbmNlOiBJUG9pbnQpOiBJU25hcFJlc3VsdCB8IHVuZGVmaW5lZCB7XG4gICAgdGhpcy5yb290SGFuZGxlcnMuZm9yRWFjaCgoeCkgPT4geC5vblBvaW50ZXJNb3ZlKGRpZmZlcmVuY2UpKTtcblxuICAgIHJldHVybiB0aGlzLl9saW5lQWxpZ25tZW50Py5maW5kQ2xvc2VzdEFsaWdubWVudCh0aGlzLl91bmlvblJlY3QoKSk7XG4gIH1cblxuICBwdWJsaWMgcHJlcGFyZURyYWdTZXF1ZW5jZSgpOiB2b2lkIHtcbiAgICB0aGlzLnJvb3RIYW5kbGVycy5mb3JFYWNoKCh4KSA9PiB4LnByZXBhcmVEcmFnU2VxdWVuY2UoKSk7XG4gIH1cblxuICBwdWJsaWMgb25Qb2ludGVyTW92ZShkaWZmZXJlbmNlOiBJUG9pbnQpOiB2b2lkIHtcbiAgICB0aGlzLnJvb3RIYW5kbGVycy5mb3JFYWNoKCh4KSA9PiB4Lm9uUG9pbnRlck1vdmUoZGlmZmVyZW5jZSkpO1xuICAgIHRoaXMuX2xpbmVBbGlnbm1lbnQ/LmRyYXdHdWlkZXNGb3IodGhpcy5fdW5pb25SZWN0KCkpO1xuICB9XG5cbiAgcHVibGljIG9uUG9pbnRlclVwKCk6IHZvaWQge1xuICAgIHRoaXMucm9vdEhhbmRsZXJzLmZvckVhY2goKHgpID0+IHgub25Qb2ludGVyVXAoKSk7XG4gICAgdGhpcy5fbGluZUFsaWdubWVudD8uY2xlYXJHdWlkZXMoKTtcbiAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4gdGhpcy5fcmVmcmVzaERyYWdnZWROb2RlcygpKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VuaW9uUmVjdCgpOiBJUmVjdCB7XG4gICAgcmV0dXJuIFJlY3RFeHRlbnNpb25zLnVuaW9uKHRoaXMuX2dldFJvb3RSZWN0cygpKSB8fCBSZWN0RXh0ZW5zaW9ucy5pbml0aWFsaXplKCk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRSb290UmVjdHMoKTogSVJlY3RbXSB7XG4gICAgcmV0dXJuIHRoaXMucm9vdEhhbmRsZXJzLm1hcCgoeCkgPT4geC5nZXRMYXN0UmVjdCgpKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlZnJlc2hEcmFnZ2VkTm9kZXMoKTogdm9pZCB7XG4gICAgdGhpcy5yb290SGFuZGxlcnMuZm9yRWFjaCgoeyBub2RlT3JHcm91cCB9KSA9PiBub2RlT3JHcm91cC5yZWZyZXNoKCkpO1xuICB9XG59XG4iXX0=
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW92ZS1zdW1tYXJ5LWRyYWctaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1ub2RlLW1vdmUvbW92ZS1zdW1tYXJ5LWRyYWctaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQU8zRCxNQUFNLE9BQU8sc0JBQXNCO0lBUXhCO0lBQ0E7SUFSTyxVQUFVLEdBQUcsV0FBVyxDQUFDO0lBQ3pCLEtBQUssQ0FBTTtJQUVuQixjQUFjLEdBQWdDLElBQUksQ0FBQztJQUUzRCxZQUNFLFNBQW1CLEVBQ1osc0JBQXlDLEVBQ3pDLFlBQStCO1FBRC9CLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBbUI7UUFDekMsaUJBQVksR0FBWixZQUFZLENBQW1CO1FBRXRDLElBQUksQ0FBQyxLQUFLLEdBQUc7WUFDWCxRQUFRLEVBQUUsc0JBQXNCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxDQUFDO1NBQ2pFLENBQUM7SUFDSixDQUFDO0lBRU0sZ0JBQWdCLENBQUMsT0FBNkI7UUFDbkQsSUFBSSxDQUFDLGNBQWMsR0FBRyxPQUFPLENBQUM7SUFDaEMsQ0FBQztJQUVNLG9CQUFvQixDQUFDLFVBQWtCO1FBQzVDLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFFOUQsT0FBTyxJQUFJLENBQUMsY0FBYyxFQUFFLG9CQUFvQixDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFTSxtQkFBbUI7UUFDeEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVNLGFBQWEsQ0FBQyxVQUFrQjtRQUNyQyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxjQUFjLEVBQUUsYUFBYSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUNsRCxJQUFJLENBQUMsY0FBYyxFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQ25DLHFCQUFxQixDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVPLFVBQVU7UUFDaEIsT0FBTyxjQUFjLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxJQUFJLGNBQWMsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNuRixDQUFDO0lBRU8sYUFBYTtRQUNuQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRU8sb0JBQW9CO1FBQzFCLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDeEUsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVBvaW50LCBJUmVjdCwgUmVjdEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IElGRHJhZ0hhbmRsZXIgfSBmcm9tICcuLi9mLWRyYWctaGFuZGxlcic7XG5pbXBvcnQgeyBNb3ZlRHJhZ0hhbmRsZXIgfSBmcm9tICcuL21vdmUtZHJhZy1oYW5kbGVyJztcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTbmFwTGluZXNEcmFnSGFuZGxlciB9IGZyb20gJy4vY3JlYXRlLXNuYXAtbGluZXMvc25hcC1saW5lcy5kcmFnLWhhbmRsZXInO1xuaW1wb3J0IHsgSVNuYXBSZXN1bHQgfSBmcm9tICcuLi8uLi9mLWxpbmUtYWxpZ25tZW50JztcblxuZXhwb3J0IGNsYXNzIE1vdmVTdW1tYXJ5RHJhZ0hhbmRsZXIgaW1wbGVtZW50cyBJRkRyYWdIYW5kbGVyIHtcbiAgcHVibGljIHJlYWRvbmx5IGZFdmVudFR5cGUgPSAnbW92ZS1ub2RlJztcbiAgcHVibGljIHJlYWRvbmx5IGZEYXRhOiBhbnk7XG5cbiAgcHJpdmF0ZSBfbGluZUFsaWdubWVudDogU25hcExpbmVzRHJhZ0hhbmRsZXIgfCBudWxsID0gbnVsbDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBfaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIHB1YmxpYyBhbGxEcmFnZ2VkTm9kZUhhbmRsZXJzOiBNb3ZlRHJhZ0hhbmRsZXJbXSxcbiAgICBwdWJsaWMgcm9vdEhhbmRsZXJzOiBNb3ZlRHJhZ0hhbmRsZXJbXSxcbiAgKSB7XG4gICAgdGhpcy5mRGF0YSA9IHtcbiAgICAgIGZOb2RlSWRzOiBhbGxEcmFnZ2VkTm9kZUhhbmRsZXJzLm1hcCgoeCkgPT4geC5ub2RlT3JHcm91cC5mSWQoKSksXG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRMaW5lQWxpZ25tZW50KGhhbmRsZXI6IFNuYXBMaW5lc0RyYWdIYW5kbGVyKTogdm9pZCB7XG4gICAgdGhpcy5fbGluZUFsaWdubWVudCA9IGhhbmRsZXI7XG4gIH1cblxuICBwdWJsaWMgZmluZENsb3Nlc3RBbGlnbm1lbnQoZGlmZmVyZW5jZTogSVBvaW50KTogSVNuYXBSZXN1bHQgfCB1bmRlZmluZWQge1xuICAgIHRoaXMucm9vdEhhbmRsZXJzLmZvckVhY2goKHgpID0+IHgub25Qb2ludGVyTW92ZShkaWZmZXJlbmNlKSk7XG5cbiAgICByZXR1cm4gdGhpcy5fbGluZUFsaWdubWVudD8uZmluZENsb3Nlc3RBbGlnbm1lbnQodGhpcy5fdW5pb25SZWN0KCkpO1xuICB9XG5cbiAgcHVibGljIHByZXBhcmVEcmFnU2VxdWVuY2UoKTogdm9pZCB7XG4gICAgdGhpcy5yb290SGFuZGxlcnMuZm9yRWFjaCgoeCkgPT4geC5wcmVwYXJlRHJhZ1NlcXVlbmNlKCkpO1xuICB9XG5cbiAgcHVibGljIG9uUG9pbnRlck1vdmUoZGlmZmVyZW5jZTogSVBvaW50KTogdm9pZCB7XG4gICAgdGhpcy5yb290SGFuZGxlcnMuZm9yRWFjaCgoeCkgPT4geC5vblBvaW50ZXJNb3ZlKGRpZmZlcmVuY2UpKTtcbiAgICB0aGlzLl9saW5lQWxpZ25tZW50Py5kcmF3R3VpZGVzRm9yKHRoaXMuX3VuaW9uUmVjdCgpKTtcbiAgfVxuXG4gIHB1YmxpYyBvblBvaW50ZXJVcCgpOiB2b2lkIHtcbiAgICB0aGlzLnJvb3RIYW5kbGVycy5mb3JFYWNoKCh4KSA9PiB4Lm9uUG9pbnRlclVwKCkpO1xuICAgIHRoaXMuX2xpbmVBbGlnbm1lbnQ/LmNsZWFyR3VpZGVzKCk7XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHRoaXMuX3JlZnJlc2hEcmFnZ2VkTm9kZXMoKSk7XG4gIH1cblxuICBwcml2YXRlIF91bmlvblJlY3QoKTogSVJlY3Qge1xuICAgIHJldHVybiBSZWN0RXh0ZW5zaW9ucy51bmlvbih0aGlzLl9nZXRSb290UmVjdHMoKSkgfHwgUmVjdEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Um9vdFJlY3RzKCk6IElSZWN0W10ge1xuICAgIHJldHVybiB0aGlzLnJvb3RIYW5kbGVycy5tYXAoKHgpID0+IHguZ2V0TGFzdFJlY3QoKSk7XG4gIH1cblxuICBwcml2YXRlIF9yZWZyZXNoRHJhZ2dlZE5vZGVzKCk6IHZvaWQge1xuICAgIHRoaXMucm9vdEhhbmRsZXJzLmZvckVhY2goKHsgbm9kZU9yR3JvdXAgfSkgPT4gbm9kZU9yR3JvdXAucmVmcmVzaCgpKTtcbiAgfVxufVxuIl19
@@ -1,11 +1,11 @@
1
1
  import { CREATE_MOVE_NODE_DRAG_MODEL_FROM_SELECTION_PROVIDERS } from './create-drag-model-from-selection';
2
2
  import { FNodeMoveFinalizeExecution } from './move-finalize';
3
- import { FNodeMovePreparationExecution } from './move-preparation';
3
+ import { MoveNodePreparation } from './move-preparation';
4
4
  import { CreateSnapLines } from './create-snap-lines';
5
5
  export const NODE_PROVIDERS = [
6
6
  ...CREATE_MOVE_NODE_DRAG_MODEL_FROM_SELECTION_PROVIDERS,
7
7
  CreateSnapLines,
8
8
  FNodeMoveFinalizeExecution,
9
- FNodeMovePreparationExecution,
9
+ MoveNodePreparation,
10
10
  ];
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLW5vZGUtbW92ZS9wcm92aWRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9EQUFvRCxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDMUcsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXRELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRztJQUU1QixHQUFHLG9EQUFvRDtJQUV2RCxlQUFlO0lBRWYsMEJBQTBCO0lBRTFCLDZCQUE2QjtDQUM5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ1JFQVRFX01PVkVfTk9ERV9EUkFHX01PREVMX0ZST01fU0VMRUNUSU9OX1BST1ZJREVSUyB9IGZyb20gJy4vY3JlYXRlLWRyYWctbW9kZWwtZnJvbS1zZWxlY3Rpb24nO1xuaW1wb3J0IHsgRk5vZGVNb3ZlRmluYWxpemVFeGVjdXRpb24gfSBmcm9tICcuL21vdmUtZmluYWxpemUnO1xuaW1wb3J0IHsgRk5vZGVNb3ZlUHJlcGFyYXRpb25FeGVjdXRpb24gfSBmcm9tICcuL21vdmUtcHJlcGFyYXRpb24nO1xuaW1wb3J0IHsgQ3JlYXRlU25hcExpbmVzIH0gZnJvbSAnLi9jcmVhdGUtc25hcC1saW5lcyc7XG5cbmV4cG9ydCBjb25zdCBOT0RFX1BST1ZJREVSUyA9IFtcblxuICAuLi5DUkVBVEVfTU9WRV9OT0RFX0RSQUdfTU9ERUxfRlJPTV9TRUxFQ1RJT05fUFJPVklERVJTLFxuXG4gIENyZWF0ZVNuYXBMaW5lcyxcblxuICBGTm9kZU1vdmVGaW5hbGl6ZUV4ZWN1dGlvbixcblxuICBGTm9kZU1vdmVQcmVwYXJhdGlvbkV4ZWN1dGlvbixcbl07XG4iXX0=
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLW5vZGUtbW92ZS9wcm92aWRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9EQUFvRCxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDMUcsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXRELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRztJQUM1QixHQUFHLG9EQUFvRDtJQUV2RCxlQUFlO0lBRWYsMEJBQTBCO0lBRTFCLG1CQUFtQjtDQUNwQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ1JFQVRFX01PVkVfTk9ERV9EUkFHX01PREVMX0ZST01fU0VMRUNUSU9OX1BST1ZJREVSUyB9IGZyb20gJy4vY3JlYXRlLWRyYWctbW9kZWwtZnJvbS1zZWxlY3Rpb24nO1xuaW1wb3J0IHsgRk5vZGVNb3ZlRmluYWxpemVFeGVjdXRpb24gfSBmcm9tICcuL21vdmUtZmluYWxpemUnO1xuaW1wb3J0IHsgTW92ZU5vZGVQcmVwYXJhdGlvbiB9IGZyb20gJy4vbW92ZS1wcmVwYXJhdGlvbic7XG5pbXBvcnQgeyBDcmVhdGVTbmFwTGluZXMgfSBmcm9tICcuL2NyZWF0ZS1zbmFwLWxpbmVzJztcblxuZXhwb3J0IGNvbnN0IE5PREVfUFJPVklERVJTID0gW1xuICAuLi5DUkVBVEVfTU9WRV9OT0RFX0RSQUdfTU9ERUxfRlJPTV9TRUxFQ1RJT05fUFJPVklERVJTLFxuXG4gIENyZWF0ZVNuYXBMaW5lcyxcblxuICBGTm9kZU1vdmVGaW5hbGl6ZUV4ZWN1dGlvbixcblxuICBNb3ZlTm9kZVByZXBhcmF0aW9uLFxuXTtcbiJdfQ==
@@ -93,4 +93,4 @@ export { FNodeRotatePreparationExecution };
93
93
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FNodeRotatePreparationExecution, decorators: [{
94
94
  type: Injectable
95
95
  }] });
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ub2RlLXJvdGF0ZS1wcmVwYXJhdGlvbi5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2Ytbm9kZS1yb3RhdGUvcm90YXRlLXByZXBhcmF0aW9uL2Ytbm9kZS1yb3RhdGUtcHJlcGFyYXRpb24uZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDcEYsT0FBTyxFQUFrQyxLQUFLLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDbkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFDTCxnQ0FBZ0MsRUFDaEMsaUNBQWlDLEVBQ2pDLCtCQUErQixFQUMvQixtQkFBbUIsRUFDbkIsK0JBQStCLEdBQ2hDLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFhLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzVELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3ZFLE9BQU8sRUFFTCwyQkFBMkIsRUFDM0IsMkJBQTJCLEdBQzVCLE1BQU0sbUJBQW1CLENBQUM7O0FBS3BCLElBQU0sK0JBQStCLEdBQXJDLE1BQU0sK0JBQStCO0lBR3pCLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDOUIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ2xD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QUMsU0FBUyxDQUFDLENBQUM7cUJBQ3JGLGFBQWE7YUFDakIsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzt3R0ExR1UsK0JBQStCOzRHQUEvQiwrQkFBK0I7O0FBQS9CLCtCQUErQjtJQUQzQyxrQkFBa0IsQ0FBQyw2QkFBNkIsQ0FBQztHQUNyQywrQkFBK0IsQ0EyRzNDOzs0RkEzR1ksK0JBQStCO2tCQUYzQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRk5vZGVSb3RhdGVQcmVwYXJhdGlvblJlcXVlc3QgfSBmcm9tICcuL2Ytbm9kZS1yb3RhdGUtcHJlcGFyYXRpb24ucmVxdWVzdCc7XG5pbXBvcnQgeyBJUG9pbnQsIElSZWN0LCBJVHJhbnNmb3JtTW9kZWwsIFBvaW50IH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGRHJhZ2dhYmxlRGF0YUNvbnRleHQgfSBmcm9tICcuLi8uLi9mLWRyYWdnYWJsZS1kYXRhLWNvbnRleHQnO1xuaW1wb3J0IHtcbiAgQ2FsY3VsYXRlSW5wdXRDb25uZWN0aW9uc1JlcXVlc3QsXG4gIENhbGN1bGF0ZU91dHB1dENvbm5lY3Rpb25zUmVxdWVzdCxcbiAgR2V0Tm9ybWFsaXplZEVsZW1lbnRSZWN0UmVxdWVzdCxcbiAgaXNWYWxpZEV2ZW50VHJpZ2dlcixcbiAgU2VsZWN0QW5kVXBkYXRlTm9kZUxheWVyUmVxdWVzdCxcbn0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IEZOb2RlQmFzZSwgaXNSb3RhdGVIYW5kbGUgfSBmcm9tICcuLi8uLi8uLi9mLW5vZGUnO1xuaW1wb3J0IHsgRk5vZGVSb3RhdGVEcmFnSGFuZGxlciB9IGZyb20gJy4uL2Ytbm9kZS1yb3RhdGUuZHJhZy1oYW5kbGVyJztcbmltcG9ydCB7XG4gIEJhc2VDb25uZWN0aW9uRHJhZ0hhbmRsZXIsXG4gIFNvdXJjZUNvbm5lY3Rpb25EcmFnSGFuZGxlcixcbiAgVGFyZ2V0Q29ubmVjdGlvbkRyYWdIYW5kbGVyLFxufSBmcm9tICcuLi8uLi9mLW5vZGUtbW92ZSc7XG5pbXBvcnQgeyBGQ29ubmVjdGlvbkJhc2UgfSBmcm9tICcuLi8uLi8uLi9mLWNvbm5lY3Rpb24nO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKEZOb2RlUm90YXRlUHJlcGFyYXRpb25SZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIEZOb2RlUm90YXRlUHJlcGFyYXRpb25FeGVjdXRpb25cbiAgaW1wbGVtZW50cyBJRXhlY3V0aW9uPEZOb2RlUm90YXRlUHJlcGFyYXRpb25SZXF1ZXN0LCB2b2lkPlxue1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9zdG9yZSA9IGluamVjdChGQ29tcG9uZW50c1N0b3JlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZHJhZ0NvbnRleHQgPSBpbmplY3QoRkRyYWdnYWJsZURhdGFDb250ZXh0KTtcbiAgcHJpdmF0ZSByZWFkb25seSBfaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuXG4gIHByaXZhdGUgZ2V0IF90cmFuc2Zvcm0oKTogSVRyYW5zZm9ybU1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5fc3RvcmUuZkNhbnZhcyEudHJhbnNmb3JtO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgX2ZIb3N0KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5fc3RvcmUuZkZsb3chLmhvc3RFbGVtZW50O1xuICB9XG5cbiAgcHJpdmF0ZSBfZk5vZGU6IEZOb2RlQmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IEZOb2RlUm90YXRlUHJlcGFyYXRpb25SZXF1ZXN0KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9pc1ZhbGlkKHJlcXVlc3QpIHx8ICF0aGlzLl9pc1ZhbGlkVHJpZ2dlcihyZXF1ZXN0KSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX3NlbGVjdEFuZFVwZGF0ZU5vZGVMYXllcigpO1xuXG4gICAgdGhpcy5fZHJhZ0NvbnRleHQub25Qb2ludGVyRG93blNjYWxlID0gdGhpcy5fdHJhbnNmb3JtLnNjYWxlO1xuICAgIHRoaXMuX2RyYWdDb250ZXh0Lm9uUG9pbnRlckRvd25Qb3NpdGlvbiA9IFBvaW50LmZyb21Qb2ludChyZXF1ZXN0LmV2ZW50LmdldFBvc2l0aW9uKCkpXG4gICAgICAuZWxlbWVudFRyYW5zZm9ybSh0aGlzLl9mSG9zdClcbiAgICAgIC5kaXYodGhpcy5fdHJhbnNmb3JtLnNjYWxlKTtcblxuICAgIHRoaXMuX2RyYWdDb250ZXh0LmRyYWdnYWJsZUl0ZW1zID0gW1xuICAgICAgbmV3IEZOb2RlUm90YXRlRHJhZ0hhbmRsZXIoXG4gICAgICAgIHRoaXMuX2luamVjdG9yLFxuICAgICAgICB0aGlzLl9mTm9kZSEsXG4gICAgICAgIHRoaXMuX2NhbGN1bGF0ZU91dHB1dENvbm5lY3Rpb25zRHJhZ0hhbmRsZXJzKCksXG4gICAgICAgIHRoaXMuX2NhbGN1bGF0ZUlucHV0Q29ubmVjdGlvbnNEcmFnSGFuZGxlcnMoKSxcbiAgICAgICksXG4gICAgXTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzVmFsaWQocmVxdWVzdDogRk5vZGVSb3RhdGVQcmVwYXJhdGlvblJlcXVlc3QpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5fZHJhZ0NvbnRleHQuaXNFbXB0eSgpICYmXG4gICAgICBpc1JvdGF0ZUhhbmRsZShyZXF1ZXN0LmV2ZW50LnRhcmdldEVsZW1lbnQpICYmXG4gICAgICB0aGlzLl9pc05vZGVDYW5CZURyYWdnZWQodGhpcy5fZ2V0Tm9kZShyZXF1ZXN0LmV2ZW50LnRhcmdldEVsZW1lbnQpKVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9pc05vZGVDYW5CZURyYWdnZWQoZk5vZGU/OiBGTm9kZUJhc2UpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISFmTm9kZSAmJiAhZk5vZGUuZkRyYWdnaW5nRGlzYWJsZWQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldE5vZGUoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBGTm9kZUJhc2UgfCB1bmRlZmluZWQge1xuICAgIHRoaXMuX2ZOb2RlID0gdGhpcy5fc3RvcmUuZk5vZGVzLmZpbmQoKHgpID0+IHguaXNDb250YWlucyhlbGVtZW50KSk7XG5cbiAgICByZXR1cm4gdGhpcy5fZk5vZGU7XG4gIH1cblxuICBwcml2YXRlIF9pc1ZhbGlkVHJpZ2dlcihyZXF1ZXN0OiBGTm9kZVJvdGF0ZVByZXBhcmF0aW9uUmVxdWVzdCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc1ZhbGlkRXZlbnRUcmlnZ2VyKHJlcXVlc3QuZXZlbnQub3JpZ2luYWxFdmVudCwgcmVxdWVzdC5mVHJpZ2dlcik7XG4gIH1cblxuICBwcml2YXRlIF9zZWxlY3RBbmRVcGRhdGVOb2RlTGF5ZXIoKSB7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgU2VsZWN0QW5kVXBkYXRlTm9kZUxheWVyUmVxdWVzdCh0aGlzLl9mTm9kZSEpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NhbGN1bGF0ZUlucHV0Q29ubmVjdGlvbnNEcmFnSGFuZGxlcnMoKToge1xuICAgIGNvbm5lY3Rpb246IEJhc2VDb25uZWN0aW9uRHJhZ0hhbmRsZXI7XG4gICAgY29ubmVjdG9yOiBJUG9pbnQ7XG4gIH1bXSB7XG4gICAgcmV0dXJuIHRoaXMuX21lZGlhdG9yXG4gICAgICAuZXhlY3V0ZTxGQ29ubmVjdGlvbkJhc2VbXT4obmV3IENhbGN1bGF0ZUlucHV0Q29ubmVjdGlvbnNSZXF1ZXN0KHRoaXMuX2ZOb2RlISkpXG4gICAgICAubWFwKCh4OiBGQ29ubmVjdGlvbkJhc2UpID0+IHtcbiAgICAgICAgY29uc3QgY29ubmVjdG9yID0gdGhpcy5fc3RvcmUuZklucHV0cy5maW5kKCh5KSA9PiB5LmZJZCgpID09PSB4LmZJbnB1dElkKCkpPy5ob3N0RWxlbWVudDtcblxuICAgICAgICBpZiAoIWNvbm5lY3Rvcikge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ29ubmVjdG9yIHdpdGggaWQgJHt4LmZJbnB1dElkKCl9IG5vdCBmb3VuZGApO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBjb25uZWN0aW9uOiBuZXcgVGFyZ2V0Q29ubmVjdGlvbkRyYWdIYW5kbGVyKHRoaXMuX2luamVjdG9yLCB4KSxcbiAgICAgICAgICBjb25uZWN0b3I6IHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8SVJlY3Q+KG5ldyBHZXROb3JtYWxpemVkRWxlbWVudFJlY3RSZXF1ZXN0KGNvbm5lY3RvcikpXG4gICAgICAgICAgICAuZ3Jhdml0eUNlbnRlcixcbiAgICAgICAgfTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlT3V0cHV0Q29ubmVjdGlvbnNEcmFnSGFuZGxlcnMoKToge1xuICAgIGNvbm5lY3Rpb246IEJhc2VDb25uZWN0aW9uRHJhZ0hhbmRsZXI7XG4gICAgY29ubmVjdG9yOiBJUG9pbnQ7XG4gIH1bXSB7XG4gICAgcmV0dXJuIHRoaXMuX21lZGlhdG9yXG4gICAgICAuZXhlY3V0ZTxGQ29ubmVjdGlvbkJhc2VbXT4obmV3IENhbGN1bGF0ZU91dHB1dENvbm5lY3Rpb25zUmVxdWVzdCh0aGlzLl9mTm9kZSEpKVxuICAgICAgLm1hcCgoeDogRkNvbm5lY3Rpb25CYXNlKSA9PiB7XG4gICAgICAgIGNvbnN0IGNvbm5lY3RvciA9IHRoaXMuX3N0b3JlLmZPdXRwdXRzLmZpbmQoKHkpID0+IHkuZklkKCkgPT09IHguZk91dHB1dElkKCkpPy5ob3N0RWxlbWVudDtcblxuICAgICAgICBpZiAoIWNvbm5lY3Rvcikge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ29ubmVjdG9yIHdpdGggaWQgJHt4LmZPdXRwdXRJZCgpfSBub3QgZm91bmRgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgY29ubmVjdGlvbjogbmV3IFNvdXJjZUNvbm5lY3Rpb25EcmFnSGFuZGxlcih0aGlzLl9pbmplY3RvciwgeCksXG4gICAgICAgICAgY29ubmVjdG9yOiB0aGlzLl9tZWRpYXRvci5leGVjdXRlPElSZWN0PihuZXcgR2V0Tm9ybWFsaXplZEVsZW1lbnRSZWN0UmVxdWVzdChjb25uZWN0b3IpKVxuICAgICAgICAgICAgLmdyYXZpdHlDZW50ZXIsXG4gICAgICAgIH07XG4gICAgICB9KTtcbiAgfVxufVxuIl19
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ub2RlLXJvdGF0ZS1wcmVwYXJhdGlvbi5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2Ytbm9kZS1yb3RhdGUvcm90YXRlLXByZXBhcmF0aW9uL2Ytbm9kZS1yb3RhdGUtcHJlcGFyYXRpb24uZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDcEYsT0FBTyxFQUFrQyxLQUFLLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDbkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFDTCxnQ0FBZ0MsRUFDaEMsaUNBQWlDLEVBQ2pDLCtCQUErQixFQUMvQixtQkFBbUIsRUFDbkIsK0JBQStCLEdBQ2hDLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFhLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzVELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3ZFLE9BQU8sRUFFTCwyQkFBMkIsRUFDM0IsMkJBQTJCLEdBQzVCLE1BQU0sbUJBQW1CLENBQUM7O0FBS3BCLElBQU0sK0JBQStCLEdBQXJDLE1BQU0sK0JBQStCO0lBR3pCLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDOUIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ2xD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QUFTLENBQUMsQ0FBQztxQkFDckYsYUFBYTthQUNqQixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO3dHQTFHVSwrQkFBK0I7NEdBQS9CLCtCQUErQjs7QUFBL0IsK0JBQStCO0lBRDNDLGtCQUFrQixDQUFDLDZCQUE2QixDQUFDO0dBQ3JDLCtCQUErQixDQTJHM0M7OzRGQTNHWSwrQkFBK0I7a0JBRjNDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGTm9kZVJvdGF0ZVByZXBhcmF0aW9uUmVxdWVzdCB9IGZyb20gJy4vZi1ub2RlLXJvdGF0ZS1wcmVwYXJhdGlvbi5yZXF1ZXN0JztcbmltcG9ydCB7IElQb2ludCwgSVJlY3QsIElUcmFuc2Zvcm1Nb2RlbCwgUG9pbnQgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZEcmFnZ2FibGVEYXRhQ29udGV4dCB9IGZyb20gJy4uLy4uL2YtZHJhZ2dhYmxlLWRhdGEtY29udGV4dCc7XG5pbXBvcnQge1xuICBDYWxjdWxhdGVJbnB1dENvbm5lY3Rpb25zUmVxdWVzdCxcbiAgQ2FsY3VsYXRlT3V0cHV0Q29ubmVjdGlvbnNSZXF1ZXN0LFxuICBHZXROb3JtYWxpemVkRWxlbWVudFJlY3RSZXF1ZXN0LFxuICBpc1ZhbGlkRXZlbnRUcmlnZ2VyLFxuICBTZWxlY3RBbmRVcGRhdGVOb2RlTGF5ZXJSZXF1ZXN0LFxufSBmcm9tICcuLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgRk5vZGVCYXNlLCBpc1JvdGF0ZUhhbmRsZSB9IGZyb20gJy4uLy4uLy4uL2Ytbm9kZSc7XG5pbXBvcnQgeyBGTm9kZVJvdGF0ZURyYWdIYW5kbGVyIH0gZnJvbSAnLi4vZi1ub2RlLXJvdGF0ZS5kcmFnLWhhbmRsZXInO1xuaW1wb3J0IHtcbiAgQmFzZUNvbm5lY3Rpb25EcmFnSGFuZGxlcixcbiAgU291cmNlQ29ubmVjdGlvbkRyYWdIYW5kbGVyLFxuICBUYXJnZXRDb25uZWN0aW9uRHJhZ0hhbmRsZXIsXG59IGZyb20gJy4uLy4uL2Ytbm9kZS1tb3ZlJztcbmltcG9ydCB7IEZDb25uZWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uLy4uL2YtY29ubmVjdGlvbi12Mic7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoRk5vZGVSb3RhdGVQcmVwYXJhdGlvblJlcXVlc3QpXG5leHBvcnQgY2xhc3MgRk5vZGVSb3RhdGVQcmVwYXJhdGlvbkV4ZWN1dGlvblxuICBpbXBsZW1lbnRzIElFeGVjdXRpb248Rk5vZGVSb3RhdGVQcmVwYXJhdGlvblJlcXVlc3QsIHZvaWQ+XG57XG4gIHByaXZhdGUgcmVhZG9ubHkgX21lZGlhdG9yID0gaW5qZWN0KEZNZWRpYXRvcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3N0b3JlID0gaW5qZWN0KEZDb21wb25lbnRzU3RvcmUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9kcmFnQ29udGV4dCA9IGluamVjdChGRHJhZ2dhYmxlRGF0YUNvbnRleHQpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9pbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG5cbiAgcHJpdmF0ZSBnZXQgX3RyYW5zZm9ybSgpOiBJVHJhbnNmb3JtTW9kZWwge1xuICAgIHJldHVybiB0aGlzLl9zdG9yZS5mQ2FudmFzIS50cmFuc2Zvcm07XG4gIH1cblxuICBwcml2YXRlIGdldCBfZkhvc3QoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLl9zdG9yZS5mRmxvdyEuaG9zdEVsZW1lbnQ7XG4gIH1cblxuICBwcml2YXRlIF9mTm9kZTogRk5vZGVCYXNlIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogRk5vZGVSb3RhdGVQcmVwYXJhdGlvblJlcXVlc3QpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2lzVmFsaWQocmVxdWVzdCkgfHwgIXRoaXMuX2lzVmFsaWRUcmlnZ2VyKHJlcXVlc3QpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fc2VsZWN0QW5kVXBkYXRlTm9kZUxheWVyKCk7XG5cbiAgICB0aGlzLl9kcmFnQ29udGV4dC5vblBvaW50ZXJEb3duU2NhbGUgPSB0aGlzLl90cmFuc2Zvcm0uc2NhbGU7XG4gICAgdGhpcy5fZHJhZ0NvbnRleHQub25Qb2ludGVyRG93blBvc2l0aW9uID0gUG9pbnQuZnJvbVBvaW50KHJlcXVlc3QuZXZlbnQuZ2V0UG9zaXRpb24oKSlcbiAgICAgIC5lbGVtZW50VHJhbnNmb3JtKHRoaXMuX2ZIb3N0KVxuICAgICAgLmRpdih0aGlzLl90cmFuc2Zvcm0uc2NhbGUpO1xuXG4gICAgdGhpcy5fZHJhZ0NvbnRleHQuZHJhZ2dhYmxlSXRlbXMgPSBbXG4gICAgICBuZXcgRk5vZGVSb3RhdGVEcmFnSGFuZGxlcihcbiAgICAgICAgdGhpcy5faW5qZWN0b3IsXG4gICAgICAgIHRoaXMuX2ZOb2RlISxcbiAgICAgICAgdGhpcy5fY2FsY3VsYXRlT3V0cHV0Q29ubmVjdGlvbnNEcmFnSGFuZGxlcnMoKSxcbiAgICAgICAgdGhpcy5fY2FsY3VsYXRlSW5wdXRDb25uZWN0aW9uc0RyYWdIYW5kbGVycygpLFxuICAgICAgKSxcbiAgICBdO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNWYWxpZChyZXF1ZXN0OiBGTm9kZVJvdGF0ZVByZXBhcmF0aW9uUmVxdWVzdCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLl9kcmFnQ29udGV4dC5pc0VtcHR5KCkgJiZcbiAgICAgIGlzUm90YXRlSGFuZGxlKHJlcXVlc3QuZXZlbnQudGFyZ2V0RWxlbWVudCkgJiZcbiAgICAgIHRoaXMuX2lzTm9kZUNhbkJlRHJhZ2dlZCh0aGlzLl9nZXROb2RlKHJlcXVlc3QuZXZlbnQudGFyZ2V0RWxlbWVudCkpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzTm9kZUNhbkJlRHJhZ2dlZChmTm9kZT86IEZOb2RlQmFzZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIWZOb2RlICYmICFmTm9kZS5mRHJhZ2dpbmdEaXNhYmxlZCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Tm9kZShlbGVtZW50OiBIVE1MRWxlbWVudCk6IEZOb2RlQmFzZSB8IHVuZGVmaW5lZCB7XG4gICAgdGhpcy5fZk5vZGUgPSB0aGlzLl9zdG9yZS5mTm9kZXMuZmluZCgoeCkgPT4geC5pc0NvbnRhaW5zKGVsZW1lbnQpKTtcblxuICAgIHJldHVybiB0aGlzLl9mTm9kZTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzVmFsaWRUcmlnZ2VyKHJlcXVlc3Q6IEZOb2RlUm90YXRlUHJlcGFyYXRpb25SZXF1ZXN0KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzVmFsaWRFdmVudFRyaWdnZXIocmVxdWVzdC5ldmVudC5vcmlnaW5hbEV2ZW50LCByZXF1ZXN0LmZUcmlnZ2VyKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NlbGVjdEFuZFVwZGF0ZU5vZGVMYXllcigpIHtcbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBTZWxlY3RBbmRVcGRhdGVOb2RlTGF5ZXJSZXF1ZXN0KHRoaXMuX2ZOb2RlISkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlSW5wdXRDb25uZWN0aW9uc0RyYWdIYW5kbGVycygpOiB7XG4gICAgY29ubmVjdGlvbjogQmFzZUNvbm5lY3Rpb25EcmFnSGFuZGxlcjtcbiAgICBjb25uZWN0b3I6IElQb2ludDtcbiAgfVtdIHtcbiAgICByZXR1cm4gdGhpcy5fbWVkaWF0b3JcbiAgICAgIC5leGVjdXRlPEZDb25uZWN0aW9uQmFzZVtdPihuZXcgQ2FsY3VsYXRlSW5wdXRDb25uZWN0aW9uc1JlcXVlc3QodGhpcy5fZk5vZGUhKSlcbiAgICAgIC5tYXAoKHgpID0+IHtcbiAgICAgICAgY29uc3QgY29ubmVjdG9yID0gdGhpcy5fc3RvcmUuZklucHV0cy5maW5kKCh5KSA9PiB5LmZJZCgpID09PSB4LmZJbnB1dElkKCkpPy5ob3N0RWxlbWVudDtcblxuICAgICAgICBpZiAoIWNvbm5lY3Rvcikge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ29ubmVjdG9yIHdpdGggaWQgJHt4LmZJbnB1dElkKCl9IG5vdCBmb3VuZGApO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBjb25uZWN0aW9uOiBuZXcgVGFyZ2V0Q29ubmVjdGlvbkRyYWdIYW5kbGVyKHRoaXMuX2luamVjdG9yLCB4KSxcbiAgICAgICAgICBjb25uZWN0b3I6IHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8SVJlY3Q+KG5ldyBHZXROb3JtYWxpemVkRWxlbWVudFJlY3RSZXF1ZXN0KGNvbm5lY3RvcikpXG4gICAgICAgICAgICAuZ3Jhdml0eUNlbnRlcixcbiAgICAgICAgfTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlT3V0cHV0Q29ubmVjdGlvbnNEcmFnSGFuZGxlcnMoKToge1xuICAgIGNvbm5lY3Rpb246IEJhc2VDb25uZWN0aW9uRHJhZ0hhbmRsZXI7XG4gICAgY29ubmVjdG9yOiBJUG9pbnQ7XG4gIH1bXSB7XG4gICAgcmV0dXJuIHRoaXMuX21lZGlhdG9yXG4gICAgICAuZXhlY3V0ZTxGQ29ubmVjdGlvbkJhc2VbXT4obmV3IENhbGN1bGF0ZU91dHB1dENvbm5lY3Rpb25zUmVxdWVzdCh0aGlzLl9mTm9kZSEpKVxuICAgICAgLm1hcCgoeCkgPT4ge1xuICAgICAgICBjb25zdCBjb25uZWN0b3IgPSB0aGlzLl9zdG9yZS5mT3V0cHV0cy5maW5kKCh5KSA9PiB5LmZJZCgpID09PSB4LmZPdXRwdXRJZCgpKT8uaG9zdEVsZW1lbnQ7XG5cbiAgICAgICAgaWYgKCFjb25uZWN0b3IpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENvbm5lY3RvciB3aXRoIGlkICR7eC5mT3V0cHV0SWQoKX0gbm90IGZvdW5kYCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGNvbm5lY3Rpb246IG5ldyBTb3VyY2VDb25uZWN0aW9uRHJhZ0hhbmRsZXIodGhpcy5faW5qZWN0b3IsIHgpLFxuICAgICAgICAgIGNvbm5lY3RvcjogdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTxJUmVjdD4obmV3IEdldE5vcm1hbGl6ZWRFbGVtZW50UmVjdFJlcXVlc3QoY29ubmVjdG9yKSlcbiAgICAgICAgICAgIC5ncmF2aXR5Q2VudGVyLFxuICAgICAgICB9O1xuICAgICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -6,7 +6,8 @@ export * from './f-drop-to-group';
6
6
  export * from './f-node-move';
7
7
  export * from './f-node-resize';
8
8
  export * from './f-node-rotate';
9
- export * from './f-single-select';
9
+ export * from './single-select';
10
+ export * from './pinch-to-zoom';
10
11
  export * from './f-drag-blocker.directive';
11
12
  export * from './f-draggable.directive';
12
13
  export * from './f-draggable-base';
@@ -15,4 +16,4 @@ export * from './f-selection-change-event';
15
16
  export * from './i-f-drag-and-drop-plugin';
16
17
  export * from './is-drag-blocker';
17
18
  export * from './providers';
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsVUFBVSxDQUFDO0FBRXpCLGNBQWMsWUFBWSxDQUFDO0FBRTNCLGNBQWMsZ0JBQWdCLENBQUM7QUFFL0IsY0FBYyxrQkFBa0IsQ0FBQztBQUVqQyxjQUFjLG1CQUFtQixDQUFDO0FBRWxDLGNBQWMsZUFBZSxDQUFDO0FBRTlCLGNBQWMsaUJBQWlCLENBQUM7QUFFaEMsY0FBYyxpQkFBaUIsQ0FBQztBQUVoQyxjQUFjLG1CQUFtQixDQUFDO0FBRWxDLGNBQWMsNEJBQTRCLENBQUM7QUFFM0MsY0FBYyx5QkFBeUIsQ0FBQztBQUV4QyxjQUFjLG9CQUFvQixDQUFDO0FBRW5DLGNBQWMsNEJBQTRCLENBQUM7QUFFM0MsY0FBYyw0QkFBNEIsQ0FBQztBQUUzQyxjQUFjLDRCQUE0QixDQUFDO0FBRTNDLGNBQWMsbUJBQW1CLENBQUM7QUFFbEMsY0FBYyxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2RvbWFpbic7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1jYW52YXMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtY29ubmVjdGlvbic7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1kcmFnLWhhbmRsZXInO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtZHJvcC10by1ncm91cCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1ub2RlLW1vdmUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2Ytbm9kZS1yZXNpemUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2Ytbm9kZS1yb3RhdGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2Ytc2luZ2xlLXNlbGVjdCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1kcmFnLWJsb2NrZXIuZGlyZWN0aXZlJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWRyYWdnYWJsZS5kaXJlY3RpdmUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtZHJhZ2dhYmxlLWJhc2UnO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtZHJhZ2dhYmxlLWRhdGEtY29udGV4dCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1zZWxlY3Rpb24tY2hhbmdlLWV2ZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9pLWYtZHJhZy1hbmQtZHJvcC1wbHVnaW4nO1xuXG5leHBvcnQgKiBmcm9tICcuL2lzLWRyYWctYmxvY2tlcic7XG5cbmV4cG9ydCAqIGZyb20gJy4vcHJvdmlkZXJzJztcblxuXG4iXX0=
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsVUFBVSxDQUFDO0FBRXpCLGNBQWMsWUFBWSxDQUFDO0FBRTNCLGNBQWMsZ0JBQWdCLENBQUM7QUFFL0IsY0FBYyxrQkFBa0IsQ0FBQztBQUVqQyxjQUFjLG1CQUFtQixDQUFDO0FBRWxDLGNBQWMsZUFBZSxDQUFDO0FBRTlCLGNBQWMsaUJBQWlCLENBQUM7QUFFaEMsY0FBYyxpQkFBaUIsQ0FBQztBQUVoQyxjQUFjLGlCQUFpQixDQUFDO0FBRWhDLGNBQWMsaUJBQWlCLENBQUM7QUFFaEMsY0FBYyw0QkFBNEIsQ0FBQztBQUUzQyxjQUFjLHlCQUF5QixDQUFDO0FBRXhDLGNBQWMsb0JBQW9CLENBQUM7QUFFbkMsY0FBYyw0QkFBNEIsQ0FBQztBQUUzQyxjQUFjLDRCQUE0QixDQUFDO0FBRTNDLGNBQWMsNEJBQTRCLENBQUM7QUFFM0MsY0FBYyxtQkFBbUIsQ0FBQztBQUVsQyxjQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZG9tYWluJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWNhbnZhcyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1jb25uZWN0aW9uJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWRyYWctaGFuZGxlcic7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1kcm9wLXRvLWdyb3VwJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLW5vZGUtbW92ZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1ub2RlLXJlc2l6ZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1ub2RlLXJvdGF0ZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vc2luZ2xlLXNlbGVjdCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vcGluY2gtdG8tem9vbSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1kcmFnLWJsb2NrZXIuZGlyZWN0aXZlJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWRyYWdnYWJsZS5kaXJlY3RpdmUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtZHJhZ2dhYmxlLWJhc2UnO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtZHJhZ2dhYmxlLWRhdGEtY29udGV4dCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1zZWxlY3Rpb24tY2hhbmdlLWV2ZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9pLWYtZHJhZy1hbmQtZHJvcC1wbHVnaW4nO1xuXG5leHBvcnQgKiBmcm9tICcuL2lzLWRyYWctYmxvY2tlcic7XG5cbmV4cG9ydCAqIGZyb20gJy4vcHJvdmlkZXJzJztcbiJdfQ==
@@ -0,0 +1,6 @@
1
+ export const PINCH_NORMALIZATION_FACTOR = 100;
2
+ export const PINCH_NORMALIZATION_RATIO = 1 / PINCH_NORMALIZATION_FACTOR;
3
+ export const PINCH_MOVEMENT_THRESHOLD = 0.5;
4
+ export const NORMALIZED_MIN = 0.1;
5
+ export const NORMALIZED_MAX = 1;
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9waW5jaC10by16b29tL2NvbnN0YW50cy9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsR0FBRyxDQUFDO0FBQzlDLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLENBQUMsR0FBRywwQkFBMEIsQ0FBQztBQUN4RSxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxHQUFHLENBQUM7QUFDNUMsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLEdBQUcsQ0FBQztBQUNsQyxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFBJTkNIX05PUk1BTElaQVRJT05fRkFDVE9SID0gMTAwO1xuZXhwb3J0IGNvbnN0IFBJTkNIX05PUk1BTElaQVRJT05fUkFUSU8gPSAxIC8gUElOQ0hfTk9STUFMSVpBVElPTl9GQUNUT1I7XG5leHBvcnQgY29uc3QgUElOQ0hfTU9WRU1FTlRfVEhSRVNIT0xEID0gMC41O1xuZXhwb3J0IGNvbnN0IE5PUk1BTElaRURfTUlOID0gMC4xO1xuZXhwb3J0IGNvbnN0IE5PUk1BTElaRURfTUFYID0gMTtcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './constants';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL3BpbmNoLXRvLXpvb20vY29uc3RhbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb25zdGFudHMnO1xuIl19
@@ -0,0 +1,3 @@
1
+ export * from './pinch-to-zoom-finalize';
2
+ export * from './pinch-to-zoom-finalize-request';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL3BpbmNoLXRvLXpvb20vZmluYWxpemUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywwQkFBMEIsQ0FBQztBQUV6QyxjQUFjLGtDQUFrQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9waW5jaC10by16b29tLWZpbmFsaXplJztcblxuZXhwb3J0ICogZnJvbSAnLi9waW5jaC10by16b29tLWZpbmFsaXplLXJlcXVlc3QnO1xuIl19
@@ -0,0 +1,8 @@
1
+ export class PinchToZoomFinalizeRequest {
2
+ event;
3
+ static fToken = Symbol('PinchToZoomFinalizeRequest');
4
+ constructor(event) {
5
+ this.event = event;
6
+ }
7
+ }
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGluY2gtdG8tem9vbS1maW5hbGl6ZS1yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9waW5jaC10by16b29tL2ZpbmFsaXplL3BpbmNoLXRvLXpvb20tZmluYWxpemUtcmVxdWVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sMEJBQTBCO0lBRVQ7SUFENUIsTUFBTSxDQUFVLE1BQU0sR0FBRyxNQUFNLENBQUMsNEJBQTRCLENBQUMsQ0FBQztJQUM5RCxZQUE0QixLQUFvQjtRQUFwQixVQUFLLEdBQUwsS0FBSyxDQUFlO0lBQUcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElQb2ludGVyRXZlbnQgfSBmcm9tICcuLi8uLi8uLi9kcmFnLXRvb2xraXQnO1xuXG5leHBvcnQgY2xhc3MgUGluY2hUb1pvb21GaW5hbGl6ZVJlcXVlc3Qge1xuICBzdGF0aWMgcmVhZG9ubHkgZlRva2VuID0gU3ltYm9sKCdQaW5jaFRvWm9vbUZpbmFsaXplUmVxdWVzdCcpO1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgZXZlbnQ6IElQb2ludGVyRXZlbnQpIHt9XG59XG4iXX0=
@@ -0,0 +1,31 @@
1
+ import { __decorate } from "tslib";
2
+ import { inject, Injectable } from '@angular/core';
3
+ import { PinchToZoomFinalizeRequest } from './pinch-to-zoom-finalize-request';
4
+ import { FExecutionRegister } from '@foblex/mediator';
5
+ import { FDraggableDataContext } from '../../f-draggable-data-context';
6
+ import { FNodeRotateDragHandler } from '../../f-node-rotate';
7
+ import * as i0 from "@angular/core";
8
+ let PinchToZoomFinalize = class PinchToZoomFinalize {
9
+ _dragContext = inject(FDraggableDataContext);
10
+ handle(_request) {
11
+ if (!this._isValid()) {
12
+ return;
13
+ }
14
+ this._dragContext.draggableItems.forEach((x) => {
15
+ x.onPointerUp?.();
16
+ });
17
+ }
18
+ _isValid() {
19
+ return this._dragContext.draggableItems.some((x) => x instanceof FNodeRotateDragHandler);
20
+ }
21
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PinchToZoomFinalize, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
22
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PinchToZoomFinalize });
23
+ };
24
+ PinchToZoomFinalize = __decorate([
25
+ FExecutionRegister(PinchToZoomFinalizeRequest)
26
+ ], PinchToZoomFinalize);
27
+ export { PinchToZoomFinalize };
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PinchToZoomFinalize, decorators: [{
29
+ type: Injectable
30
+ }] });
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGluY2gtdG8tem9vbS1maW5hbGl6ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvcGluY2gtdG8tem9vbS9maW5hbGl6ZS9waW5jaC10by16b29tLWZpbmFsaXplLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsa0JBQWtCLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsc0JBQXNCLEVBQThCLE1BQU0scUJBQXFCLENBQUM7O0FBSWxGLElBQU0sbUJBQW1CLEdBQXpCLE1BQU0sbUJBQW1CO0lBQ2IsWUFBWSxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBRXZELE1BQU0sQ0FBQyxRQUFvQztRQUNoRCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7WUFDckIsT0FBTztRQUNULENBQUM7UUFDRCxJQUFJLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUM3QyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQztRQUNwQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxRQUFRO1FBQ2QsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsWUFBWSxzQkFBc0IsQ0FBQyxDQUFDO0lBQzNGLENBQUM7d0dBZFUsbUJBQW1COzRHQUFuQixtQkFBbUI7O0FBQW5CLG1CQUFtQjtJQUQvQixrQkFBa0IsQ0FBQywwQkFBMEIsQ0FBQztHQUNsQyxtQkFBbUIsQ0FlL0I7OzRGQWZZLG1CQUFtQjtrQkFGL0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUGluY2hUb1pvb21GaW5hbGl6ZVJlcXVlc3QgfSBmcm9tICcuL3BpbmNoLXRvLXpvb20tZmluYWxpemUtcmVxdWVzdCc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IEZEcmFnZ2FibGVEYXRhQ29udGV4dCB9IGZyb20gJy4uLy4uL2YtZHJhZ2dhYmxlLWRhdGEtY29udGV4dCc7XG5pbXBvcnQgeyBGTm9kZVJvdGF0ZURyYWdIYW5kbGVyLCBGTm9kZVJvdGF0ZUZpbmFsaXplUmVxdWVzdCB9IGZyb20gJy4uLy4uL2Ytbm9kZS1yb3RhdGUnO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKFBpbmNoVG9ab29tRmluYWxpemVSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIFBpbmNoVG9ab29tRmluYWxpemUgaW1wbGVtZW50cyBJRXhlY3V0aW9uPFBpbmNoVG9ab29tRmluYWxpemVSZXF1ZXN0LCB2b2lkPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2RyYWdDb250ZXh0ID0gaW5qZWN0KEZEcmFnZ2FibGVEYXRhQ29udGV4dCk7XG5cbiAgcHVibGljIGhhbmRsZShfcmVxdWVzdDogRk5vZGVSb3RhdGVGaW5hbGl6ZVJlcXVlc3QpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2lzVmFsaWQoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9kcmFnQ29udGV4dC5kcmFnZ2FibGVJdGVtcy5mb3JFYWNoKCh4KSA9PiB7XG4gICAgICB4Lm9uUG9pbnRlclVwPy4oKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzVmFsaWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2RyYWdDb250ZXh0LmRyYWdnYWJsZUl0ZW1zLnNvbWUoKHgpID0+IHggaW5zdGFuY2VvZiBGTm9kZVJvdGF0ZURyYWdIYW5kbGVyKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,7 @@
1
+ export * from './constants';
2
+ export * from './finalize';
3
+ export * from './preparation';
4
+ export * from './utils';
5
+ export * from './pinch-to-zoom-handler';
6
+ export * from './providers';
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL3BpbmNoLXRvLXpvb20vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29uc3RhbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vZmluYWxpemUnO1xuZXhwb3J0ICogZnJvbSAnLi9wcmVwYXJhdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3V0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vcGluY2gtdG8tem9vbS1oYW5kbGVyJztcbmV4cG9ydCAqIGZyb20gJy4vcHJvdmlkZXJzJztcbiJdfQ==
@@ -0,0 +1,68 @@
1
+ import { Point } from '@foblex/2d';
2
+ import { calculateTouchCenter, calculateTouchDistance } from './utils';
3
+ import { PINCH_MOVEMENT_THRESHOLD } from './constants';
4
+ import { F_ZOOM_TAG } from '../../domain';
5
+ import { FComponentsStore } from '../../f-storage';
6
+ export class PinchToZoomHandler {
7
+ _touches;
8
+ _store;
9
+ fEventType = 'pinch-to-zoom';
10
+ get _flowHost() {
11
+ return this._store.fFlow?.hostElement;
12
+ }
13
+ get _canvas() {
14
+ return this._store.fCanvas;
15
+ }
16
+ get _zoomComponent() {
17
+ return this._store.fComponents[F_ZOOM_TAG];
18
+ }
19
+ _pinchStartDistance = null;
20
+ _pinchStartScale = null;
21
+ constructor(_injector, _touches) {
22
+ this._touches = _touches;
23
+ this._store = _injector.get(FComponentsStore);
24
+ }
25
+ prepareDragSequence() {
26
+ const d = calculateTouchDistance(this._touches);
27
+ if (d == null)
28
+ return;
29
+ this._pinchStartDistance = d;
30
+ this._pinchStartScale = this._canvas.transform.scale;
31
+ }
32
+ onPointerMove(_, event) {
33
+ if (event.touches.length !== 2 ||
34
+ this._pinchStartDistance == null ||
35
+ this._pinchStartScale == null) {
36
+ return;
37
+ }
38
+ const d = calculateTouchDistance(event.touches);
39
+ const center = calculateTouchCenter(event.touches);
40
+ if (d == null || center == null) {
41
+ this._resetPinch();
42
+ return;
43
+ }
44
+ if (Math.abs(d - this._pinchStartDistance) < PINCH_MOVEMENT_THRESHOLD) {
45
+ return;
46
+ }
47
+ event.preventDefault();
48
+ const ratio = d / this._pinchStartDistance;
49
+ const nextScale = this._clamp(this._pinchStartScale * ratio);
50
+ this._canvas.setScale(nextScale, this._castPositionToFlow(center));
51
+ this._canvas.redraw();
52
+ }
53
+ _clamp(value) {
54
+ return Math.max(this._zoomComponent.minimum, Math.min(value, this._zoomComponent.maximum));
55
+ }
56
+ _castPositionToFlow(position) {
57
+ return Point.fromPoint(position).elementTransform(this._flowHost);
58
+ }
59
+ _resetPinch() {
60
+ this._pinchStartScale = null;
61
+ this._pinchStartDistance = null;
62
+ }
63
+ onPointerUp() {
64
+ this._resetPinch();
65
+ this._canvas.emitCanvasChangeEvent();
66
+ }
67
+ }
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGluY2gtdG8tem9vbS1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9waW5jaC10by16b29tL3BpbmNoLXRvLXpvb20taGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQVUsS0FBSyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUV2RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFdkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUduRCxNQUFNLE9BQU8sa0JBQWtCO0lBc0JuQjtJQXJCTyxNQUFNLENBQW1CO0lBRTFCLFVBQVUsR0FBRyxlQUFlLENBQUM7SUFFN0MsSUFBWSxTQUFTO1FBQ25CLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsV0FBMEIsQ0FBQztJQUN2RCxDQUFDO0lBRUQsSUFBWSxPQUFPO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFzQixDQUFDO0lBQzVDLENBQUM7SUFFRCxJQUFZLGNBQWM7UUFDeEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQWMsQ0FBQztJQUMxRCxDQUFDO0lBRU8sbUJBQW1CLEdBQWtCLElBQUksQ0FBQztJQUMxQyxnQkFBZ0IsR0FBa0IsSUFBSSxDQUFDO0lBRS9DLFlBQ0UsU0FBbUIsRUFDWCxRQUFtQjtRQUFuQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBRTNCLElBQUksQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFTSxtQkFBbUI7UUFDeEIsTUFBTSxDQUFDLEdBQUcsc0JBQXNCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxJQUFJLElBQUk7WUFBRSxPQUFPO1FBRXRCLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztJQUN2RCxDQUFDO0lBRU0sYUFBYSxDQUFDLENBQVMsRUFBRSxLQUFvQjtRQUNsRCxJQUNFLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUM7WUFDMUIsSUFBSSxDQUFDLG1CQUFtQixJQUFJLElBQUk7WUFDaEMsSUFBSSxDQUFDLGdCQUFnQixJQUFJLElBQUksRUFDN0IsQ0FBQztZQUNELE9BQU87UUFDVCxDQUFDO1FBRUQsTUFBTSxDQUFDLEdBQUcsc0JBQXNCLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2hELE1BQU0sTUFBTSxHQUFHLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksTUFBTSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ2hDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUVuQixPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsd0JBQXdCLEVBQUUsQ0FBQztZQUN0RSxPQUFPO1FBQ1QsQ0FBQztRQUVELEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUV2QixNQUFNLEtBQUssR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDO1FBQzNDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQyxDQUFDO1FBRTdELElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUNuRSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFTyxNQUFNLENBQUMsS0FBYTtRQUMxQixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQzdGLENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxRQUFnQjtRQUMxQyxPQUFPLEtBQUssQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFTyxXQUFXO1FBQ2pCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFDN0IsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQztJQUNsQyxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJUG9pbnQsIFBvaW50IH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBJRkRyYWdIYW5kbGVyIH0gZnJvbSAnLi4vZi1kcmFnLWhhbmRsZXInO1xuaW1wb3J0IHsgY2FsY3VsYXRlVG91Y2hDZW50ZXIsIGNhbGN1bGF0ZVRvdWNoRGlzdGFuY2UgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IElQb2ludGVyRXZlbnQgfSBmcm9tICcuLi8uLi9kcmFnLXRvb2xraXQnO1xuaW1wb3J0IHsgUElOQ0hfTU9WRU1FTlRfVEhSRVNIT0xEIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgRlpvb21CYXNlIH0gZnJvbSAnLi4vLi4vZi16b29tJztcbmltcG9ydCB7IEZfWk9PTV9UQUcgfSBmcm9tICcuLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGQ2FudmFzQmFzZSB9IGZyb20gJy4uLy4uL2YtY2FudmFzJztcblxuZXhwb3J0IGNsYXNzIFBpbmNoVG9ab29tSGFuZGxlciBpbXBsZW1lbnRzIElGRHJhZ0hhbmRsZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IF9zdG9yZTogRkNvbXBvbmVudHNTdG9yZTtcblxuICBwdWJsaWMgcmVhZG9ubHkgZkV2ZW50VHlwZSA9ICdwaW5jaC10by16b29tJztcblxuICBwcml2YXRlIGdldCBfZmxvd0hvc3QoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLl9zdG9yZS5mRmxvdz8uaG9zdEVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG4gIH1cblxuICBwcml2YXRlIGdldCBfY2FudmFzKCk6IEZDYW52YXNCYXNlIHtcbiAgICByZXR1cm4gdGhpcy5fc3RvcmUuZkNhbnZhcyBhcyBGQ2FudmFzQmFzZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF96b29tQ29tcG9uZW50KCk6IEZab29tQmFzZSB7XG4gICAgcmV0dXJuIHRoaXMuX3N0b3JlLmZDb21wb25lbnRzW0ZfWk9PTV9UQUddIGFzIEZab29tQmFzZTtcbiAgfVxuXG4gIHByaXZhdGUgX3BpbmNoU3RhcnREaXN0YW5jZTogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3BpbmNoU3RhcnRTY2FsZTogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgX2luamVjdG9yOiBJbmplY3RvcixcbiAgICBwcml2YXRlIF90b3VjaGVzOiBUb3VjaExpc3QsXG4gICkge1xuICAgIHRoaXMuX3N0b3JlID0gX2luamVjdG9yLmdldChGQ29tcG9uZW50c1N0b3JlKTtcbiAgfVxuXG4gIHB1YmxpYyBwcmVwYXJlRHJhZ1NlcXVlbmNlKCk6IHZvaWQge1xuICAgIGNvbnN0IGQgPSBjYWxjdWxhdGVUb3VjaERpc3RhbmNlKHRoaXMuX3RvdWNoZXMpO1xuICAgIGlmIChkID09IG51bGwpIHJldHVybjtcblxuICAgIHRoaXMuX3BpbmNoU3RhcnREaXN0YW5jZSA9IGQ7XG4gICAgdGhpcy5fcGluY2hTdGFydFNjYWxlID0gdGhpcy5fY2FudmFzLnRyYW5zZm9ybS5zY2FsZTtcbiAgfVxuXG4gIHB1YmxpYyBvblBvaW50ZXJNb3ZlKF86IElQb2ludCwgZXZlbnQ6IElQb2ludGVyRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICBldmVudC50b3VjaGVzLmxlbmd0aCAhPT0gMiB8fFxuICAgICAgdGhpcy5fcGluY2hTdGFydERpc3RhbmNlID09IG51bGwgfHxcbiAgICAgIHRoaXMuX3BpbmNoU3RhcnRTY2FsZSA9PSBudWxsXG4gICAgKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZCA9IGNhbGN1bGF0ZVRvdWNoRGlzdGFuY2UoZXZlbnQudG91Y2hlcyk7XG4gICAgY29uc3QgY2VudGVyID0gY2FsY3VsYXRlVG91Y2hDZW50ZXIoZXZlbnQudG91Y2hlcyk7XG4gICAgaWYgKGQgPT0gbnVsbCB8fCBjZW50ZXIgPT0gbnVsbCkge1xuICAgICAgdGhpcy5fcmVzZXRQaW5jaCgpO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKE1hdGguYWJzKGQgLSB0aGlzLl9waW5jaFN0YXJ0RGlzdGFuY2UpIDwgUElOQ0hfTU9WRU1FTlRfVEhSRVNIT0xEKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgIGNvbnN0IHJhdGlvID0gZCAvIHRoaXMuX3BpbmNoU3RhcnREaXN0YW5jZTtcbiAgICBjb25zdCBuZXh0U2NhbGUgPSB0aGlzLl9jbGFtcCh0aGlzLl9waW5jaFN0YXJ0U2NhbGUgKiByYXRpbyk7XG5cbiAgICB0aGlzLl9jYW52YXMuc2V0U2NhbGUobmV4dFNjYWxlLCB0aGlzLl9jYXN0UG9zaXRpb25Ub0Zsb3coY2VudGVyKSk7XG4gICAgdGhpcy5fY2FudmFzLnJlZHJhdygpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2xhbXAodmFsdWU6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIE1hdGgubWF4KHRoaXMuX3pvb21Db21wb25lbnQubWluaW11bSwgTWF0aC5taW4odmFsdWUsIHRoaXMuX3pvb21Db21wb25lbnQubWF4aW11bSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FzdFBvc2l0aW9uVG9GbG93KHBvc2l0aW9uOiBJUG9pbnQpOiBJUG9pbnQge1xuICAgIHJldHVybiBQb2ludC5mcm9tUG9pbnQocG9zaXRpb24pLmVsZW1lbnRUcmFuc2Zvcm0odGhpcy5fZmxvd0hvc3QpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVzZXRQaW5jaCgpOiB2b2lkIHtcbiAgICB0aGlzLl9waW5jaFN0YXJ0U2NhbGUgPSBudWxsO1xuICAgIHRoaXMuX3BpbmNoU3RhcnREaXN0YW5jZSA9IG51bGw7XG4gIH1cblxuICBwdWJsaWMgb25Qb2ludGVyVXAoKTogdm9pZCB7XG4gICAgdGhpcy5fcmVzZXRQaW5jaCgpO1xuICAgIHRoaXMuX2NhbnZhcy5lbWl0Q2FudmFzQ2hhbmdlRXZlbnQoKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,3 @@
1
+ export * from './pinch-to-zoom-preparation';
2
+ export * from './pinch-to-zoom-preparation-request';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL3BpbmNoLXRvLXpvb20vcHJlcGFyYXRpb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw2QkFBNkIsQ0FBQztBQUU1QyxjQUFjLHFDQUFxQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9waW5jaC10by16b29tLXByZXBhcmF0aW9uJztcblxuZXhwb3J0ICogZnJvbSAnLi9waW5jaC10by16b29tLXByZXBhcmF0aW9uLXJlcXVlc3QnO1xuIl19
@@ -0,0 +1,8 @@
1
+ export class PinchToZoomPreparationRequest {
2
+ event;
3
+ static fToken = Symbol('PinchToZoomPreparationRequest');
4
+ constructor(event) {
5
+ this.event = event;
6
+ }
7
+ }
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGluY2gtdG8tem9vbS1wcmVwYXJhdGlvbi1yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9waW5jaC10by16b29tL3ByZXBhcmF0aW9uL3BpbmNoLXRvLXpvb20tcHJlcGFyYXRpb24tcmVxdWVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sNkJBQTZCO0lBRVo7SUFENUIsTUFBTSxDQUFVLE1BQU0sR0FBRyxNQUFNLENBQUMsK0JBQStCLENBQUMsQ0FBQztJQUNqRSxZQUE0QixLQUFvQjtRQUFwQixVQUFLLEdBQUwsS0FBSyxDQUFlO0lBQUcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElQb2ludGVyRXZlbnQgfSBmcm9tICcuLi8uLi8uLi9kcmFnLXRvb2xraXQnO1xuXG5leHBvcnQgY2xhc3MgUGluY2hUb1pvb21QcmVwYXJhdGlvblJlcXVlc3Qge1xuICBzdGF0aWMgcmVhZG9ubHkgZlRva2VuID0gU3ltYm9sKCdQaW5jaFRvWm9vbVByZXBhcmF0aW9uUmVxdWVzdCcpO1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgZXZlbnQ6IElQb2ludGVyRXZlbnQpIHt9XG59XG4iXX0=
@@ -0,0 +1,42 @@
1
+ import { __decorate } from "tslib";
2
+ import { inject, Injectable, Injector } from '@angular/core';
3
+ import { PinchToZoomPreparationRequest } from './pinch-to-zoom-preparation-request';
4
+ import { FExecutionRegister } from '@foblex/mediator';
5
+ import { FDraggableDataContext } from '../../f-draggable-data-context';
6
+ import { Point } from '@foblex/2d';
7
+ import { PinchToZoomHandler } from '../pinch-to-zoom-handler';
8
+ import { FComponentsStore } from '../../../f-storage';
9
+ import { F_ZOOM_TAG } from '../../../domain';
10
+ import * as i0 from "@angular/core";
11
+ let PinchToZoomPreparation = class PinchToZoomPreparation {
12
+ _injector = inject(Injector);
13
+ _store = inject(FComponentsStore);
14
+ _dragContext = inject(FDraggableDataContext);
15
+ handle({ event }) {
16
+ if (!this._isValid(event)) {
17
+ return;
18
+ }
19
+ this._dragContext.onPointerDownScale = 1;
20
+ this._dragContext.onPointerDownPosition = new Point();
21
+ this._dragContext.draggableItems = [new PinchToZoomHandler(this._injector, event.touches)];
22
+ }
23
+ _isValid(event) {
24
+ return (this._dragContext.isEmpty() &&
25
+ event.touches?.length === 2 &&
26
+ !event.isEventInLockedContext &&
27
+ this._isZoomComponent());
28
+ }
29
+ _isZoomComponent() {
30
+ return !!this._store.fComponents[F_ZOOM_TAG];
31
+ }
32
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PinchToZoomPreparation, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
33
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PinchToZoomPreparation });
34
+ };
35
+ PinchToZoomPreparation = __decorate([
36
+ FExecutionRegister(PinchToZoomPreparationRequest)
37
+ ], PinchToZoomPreparation);
38
+ export { PinchToZoomPreparation };
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PinchToZoomPreparation, decorators: [{
40
+ type: Injectable
41
+ }] });
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGluY2gtdG8tem9vbS1wcmVwYXJhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvcGluY2gtdG8tem9vbS9wcmVwYXJhdGlvbi9waW5jaC10by16b29tLXByZXBhcmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDcEYsT0FBTyxFQUFFLGtCQUFrQixFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFFbEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNuQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBSXRDLElBQU0sc0JBQXNCLEdBQTVCLE1BQU0sc0JBQXNCO0lBQ2hCLFNBQVMsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDN0IsTUFBTSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ2xDLFlBQVksR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUV2RCxNQUFNLENBQUMsRUFBRSxLQUFLLEVBQWlDO1FBQ3BELElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDMUIsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLENBQUMsWUFBWSxDQUFDLGtCQUFrQixHQUFHLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsWUFBWSxDQUFDLHFCQUFxQixHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7UUFFdEQsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLEdBQUcsQ0FBQyxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDN0YsQ0FBQztJQUVPLFFBQVEsQ0FBQyxLQUFvQjtRQUNuQyxPQUFPLENBQ0wsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUU7WUFDM0IsS0FBSyxDQUFDLE9BQU8sRUFBRSxNQUFNLEtBQUssQ0FBQztZQUMzQixDQUFDLEtBQUssQ0FBQyxzQkFBc0I7WUFDN0IsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQ3hCLENBQUM7SUFDSixDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQy9DLENBQUM7d0dBM0JVLHNCQUFzQjs0R0FBdEIsc0JBQXNCOztBQUF0QixzQkFBc0I7SUFEbEMsa0JBQWtCLENBQUMsNkJBQTZCLENBQUM7R0FDckMsc0JBQXNCLENBNEJsQzs7NEZBNUJZLHNCQUFzQjtrQkFGbEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBpbmNoVG9ab29tUHJlcGFyYXRpb25SZXF1ZXN0IH0gZnJvbSAnLi9waW5jaC10by16b29tLXByZXBhcmF0aW9uLXJlcXVlc3QnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBJUG9pbnRlckV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vZHJhZy10b29sa2l0JztcbmltcG9ydCB7IEZEcmFnZ2FibGVEYXRhQ29udGV4dCB9IGZyb20gJy4uLy4uL2YtZHJhZ2dhYmxlLWRhdGEtY29udGV4dCc7XG5pbXBvcnQgeyBQb2ludCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgUGluY2hUb1pvb21IYW5kbGVyIH0gZnJvbSAnLi4vcGluY2gtdG8tem9vbS1oYW5kbGVyJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgRl9aT09NX1RBRyB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbic7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoUGluY2hUb1pvb21QcmVwYXJhdGlvblJlcXVlc3QpXG5leHBvcnQgY2xhc3MgUGluY2hUb1pvb21QcmVwYXJhdGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248UGluY2hUb1pvb21QcmVwYXJhdGlvblJlcXVlc3QsIHZvaWQ+IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9zdG9yZSA9IGluamVjdChGQ29tcG9uZW50c1N0b3JlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZHJhZ0NvbnRleHQgPSBpbmplY3QoRkRyYWdnYWJsZURhdGFDb250ZXh0KTtcblxuICBwdWJsaWMgaGFuZGxlKHsgZXZlbnQgfTogUGluY2hUb1pvb21QcmVwYXJhdGlvblJlcXVlc3QpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2lzVmFsaWQoZXZlbnQpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fZHJhZ0NvbnRleHQub25Qb2ludGVyRG93blNjYWxlID0gMTtcbiAgICB0aGlzLl9kcmFnQ29udGV4dC5vblBvaW50ZXJEb3duUG9zaXRpb24gPSBuZXcgUG9pbnQoKTtcblxuICAgIHRoaXMuX2RyYWdDb250ZXh0LmRyYWdnYWJsZUl0ZW1zID0gW25ldyBQaW5jaFRvWm9vbUhhbmRsZXIodGhpcy5faW5qZWN0b3IsIGV2ZW50LnRvdWNoZXMpXTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzVmFsaWQoZXZlbnQ6IElQb2ludGVyRXZlbnQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5fZHJhZ0NvbnRleHQuaXNFbXB0eSgpICYmXG4gICAgICBldmVudC50b3VjaGVzPy5sZW5ndGggPT09IDIgJiZcbiAgICAgICFldmVudC5pc0V2ZW50SW5Mb2NrZWRDb250ZXh0ICYmXG4gICAgICB0aGlzLl9pc1pvb21Db21wb25lbnQoKVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9pc1pvb21Db21wb25lbnQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5fc3RvcmUuZkNvbXBvbmVudHNbRl9aT09NX1RBR107XG4gIH1cbn1cbiJdfQ==