@foblex/flow 17.6.1 → 17.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (515) hide show
  1. package/domain/css-cls.d.ts +4 -0
  2. package/domain/f-canvas/providers.d.ts +1 -1
  3. package/domain/f-connectors/add-outlet-to-store/add-outlet-to-store.execution.d.ts +1 -1
  4. package/domain/f-connectors/add-output-to-store/add-output-to-store.execution.d.ts +1 -1
  5. package/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.execution.d.ts +1 -1
  6. package/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/get-all-can-be-connected-source-connectors-and-rects.execution.d.ts +1 -1
  7. package/domain/f-connectors/providers.d.ts +1 -1
  8. package/domain/f-draggable/emit-selection-change-event/emit-selection-change-event.execution.d.ts +1 -1
  9. package/domain/f-draggable/end-drag-sequence/end-drag-sequence.execution.d.ts +1 -1
  10. package/domain/f-draggable/initialize-drag-sequence/initialize-drag-sequence.execution.d.ts +1 -1
  11. package/domain/f-draggable/is-drag-started/index.d.ts +1 -1
  12. package/domain/f-draggable/is-drag-started/{is-drag-started.execution.d.ts → is-drag-started.d.ts} +3 -3
  13. package/domain/f-draggable/on-pointer-move/on-pointer-move.execution.d.ts +1 -1
  14. package/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence.execution.d.ts +1 -1
  15. package/domain/f-draggable/providers.d.ts +2 -2
  16. package/domain/f-draggable/start-drag-sequence/start-drag-sequence.execution.d.ts +1 -1
  17. package/domain/f-flow/get-flow-state/i-f-flow-state-node.d.ts +2 -1
  18. package/domain/f-flow/get-flow-state/providers.d.ts +1 -1
  19. package/domain/f-flow/providers.d.ts +1 -1
  20. package/domain/f-node/add-node-to-store/{add-node-to-store.execution.d.ts → add-node-to-store.d.ts} +3 -3
  21. package/domain/f-node/add-node-to-store/index.d.ts +1 -1
  22. package/domain/f-node/calculate-input-connections/{calculate-input-connections.execution.d.ts → calculate-input-connections.d.ts} +3 -3
  23. package/domain/f-node/calculate-input-connections/index.d.ts +1 -1
  24. package/domain/f-node/calculate-nodes-bounding-box/{calculate-nodes-bounding-box.execution.d.ts → calculate-nodes-bounding-box.d.ts} +3 -3
  25. package/domain/f-node/calculate-nodes-bounding-box/index.d.ts +1 -1
  26. package/domain/f-node/calculate-nodes-bounding-box-normalized-position/{calculate-nodes-bounding-box-normalized-position.execution.d.ts → calculate-nodes-bounding-box-normalized-position.d.ts} +3 -3
  27. package/domain/f-node/calculate-nodes-bounding-box-normalized-position/index.d.ts +1 -1
  28. package/domain/f-node/calculate-output-connections/{calculate-output-connections.execution.d.ts → calculate-output-connections.d.ts} +3 -3
  29. package/domain/f-node/calculate-output-connections/index.d.ts +1 -1
  30. package/domain/f-node/fit-to-child-nodes-and-groups/fit-to-child-nodes-and-groups-request.d.ts +6 -0
  31. package/domain/f-node/fit-to-child-nodes-and-groups/fit-to-child-nodes-and-groups.d.ts +16 -0
  32. package/domain/f-node/fit-to-child-nodes-and-groups/index.d.ts +2 -0
  33. package/domain/f-node/get-child-node-ids/get-child-node-ids.d.ts +14 -0
  34. package/domain/f-node/get-child-node-ids/get-child-node-ids.request.d.ts +5 -0
  35. package/domain/f-node/get-child-node-ids/index.d.ts +2 -0
  36. package/domain/f-node/get-node-padding/{get-node-padding.execution.d.ts → get-node-padding.d.ts} +3 -3
  37. package/domain/f-node/get-node-padding/index.d.ts +1 -1
  38. package/domain/f-node/get-nodes/{get-nodes.execution.d.ts → get-nodes.d.ts} +3 -3
  39. package/domain/f-node/get-nodes/index.d.ts +1 -1
  40. package/domain/f-node/get-parent-nodes/{get-parent-nodes.execution.d.ts → get-parent-nodes.d.ts} +3 -3
  41. package/domain/f-node/get-parent-nodes/index.d.ts +1 -1
  42. package/domain/f-node/index.d.ts +2 -0
  43. package/domain/f-node/providers.d.ts +13 -11
  44. package/domain/f-node/remove-node-from-store/index.d.ts +1 -1
  45. package/domain/f-node/remove-node-from-store/{remove-node-from-store.execution.d.ts → remove-node-from-store.d.ts} +3 -3
  46. package/domain/f-node/update-node-when-state-or-size-changed/index.d.ts +1 -1
  47. package/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed-request.d.ts +2 -2
  48. package/domain/f-node/update-node-when-state-or-size-changed/{update-node-when-state-or-size-changed.execution.d.ts → update-node-when-state-or-size-changed.d.ts} +6 -4
  49. package/domain/f-selection/clear-selection/clear-selection.execution.d.ts +1 -1
  50. package/domain/f-selection/get-can-be-selected-items/get-can-be-selected-items.execution.d.ts +1 -1
  51. package/domain/f-selection/get-current-selection/get-current-selection.execution.d.ts +1 -1
  52. package/domain/f-selection/select/select.execution.d.ts +1 -1
  53. package/domain/f-selection/select-all/select-all.execution.d.ts +1 -1
  54. package/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.execution.d.ts +1 -1
  55. package/domain/providers.d.ts +1 -1
  56. package/esm2022/domain/css-cls.mjs +5 -1
  57. package/esm2022/domain/f-canvas/center-group-or-node/center-group-or-node.execution.mjs +2 -2
  58. package/esm2022/domain/f-canvas/fit-to-flow/fit-to-flow.execution.mjs +2 -2
  59. package/esm2022/domain/f-canvas/reset-scale-and-center/reset-scale-and-center.execution.mjs +2 -2
  60. package/esm2022/domain/f-connectors/add-outlet-to-store/add-outlet-to-store.execution.mjs +3 -3
  61. package/esm2022/domain/f-connectors/add-output-to-store/add-output-to-store.execution.mjs +3 -3
  62. package/esm2022/domain/f-connectors/find-connectable-connector-using-priority-and-position/find-connectable-connector-using-priority-and-position.execution.mjs +2 -2
  63. package/esm2022/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.execution.mjs +3 -3
  64. package/esm2022/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/get-all-can-be-connected-source-connectors-and-rects.execution.mjs +3 -3
  65. package/esm2022/domain/f-draggable/emit-selection-change-event/emit-selection-change-event.execution.mjs +4 -4
  66. package/esm2022/domain/f-draggable/end-drag-sequence/end-drag-sequence.execution.mjs +3 -3
  67. package/esm2022/domain/f-draggable/initialize-drag-sequence/initialize-drag-sequence.execution.mjs +3 -3
  68. package/esm2022/domain/f-draggable/is-drag-started/index.mjs +2 -2
  69. package/esm2022/domain/f-draggable/is-drag-started/is-drag-started-request.mjs +1 -1
  70. package/esm2022/domain/f-draggable/is-drag-started/is-drag-started.mjs +25 -0
  71. package/esm2022/domain/f-draggable/on-pointer-move/on-pointer-move.execution.mjs +5 -5
  72. package/esm2022/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence.execution.mjs +3 -3
  73. package/esm2022/domain/f-draggable/providers.mjs +3 -3
  74. package/esm2022/domain/f-draggable/start-drag-sequence/start-drag-sequence.execution.mjs +5 -5
  75. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.mjs +5 -4
  76. package/esm2022/domain/f-flow/get-flow-state/i-f-flow-state-node.mjs +1 -1
  77. package/esm2022/domain/f-node/add-node-to-store/add-node-to-store.mjs +25 -0
  78. package/esm2022/domain/f-node/add-node-to-store/index.mjs +2 -2
  79. package/esm2022/domain/f-node/calculate-input-connections/calculate-input-connections.mjs +34 -0
  80. package/esm2022/domain/f-node/calculate-input-connections/index.mjs +2 -2
  81. package/esm2022/domain/f-node/calculate-nodes-bounding-box/calculate-nodes-bounding-box.mjs +33 -0
  82. package/esm2022/domain/f-node/calculate-nodes-bounding-box/index.mjs +2 -2
  83. package/esm2022/domain/f-node/calculate-nodes-bounding-box-normalized-position/calculate-nodes-bounding-box-normalized-position.mjs +36 -0
  84. package/esm2022/domain/f-node/calculate-nodes-bounding-box-normalized-position/index.mjs +2 -2
  85. package/esm2022/domain/f-node/calculate-output-connections/calculate-output-connections.mjs +34 -0
  86. package/esm2022/domain/f-node/calculate-output-connections/index.mjs +2 -2
  87. package/esm2022/domain/f-node/fit-to-child-nodes-and-groups/fit-to-child-nodes-and-groups-request.mjs +8 -0
  88. package/esm2022/domain/f-node/fit-to-child-nodes-and-groups/fit-to-child-nodes-and-groups.mjs +64 -0
  89. package/esm2022/domain/f-node/fit-to-child-nodes-and-groups/index.mjs +3 -0
  90. package/esm2022/domain/f-node/get-child-node-ids/get-child-node-ids.mjs +45 -0
  91. package/esm2022/domain/f-node/get-child-node-ids/get-child-node-ids.request.mjs +8 -0
  92. package/esm2022/domain/f-node/get-child-node-ids/index.mjs +3 -0
  93. package/esm2022/domain/f-node/get-node-padding/get-node-padding.mjs +35 -0
  94. package/esm2022/domain/f-node/get-node-padding/index.mjs +2 -2
  95. package/esm2022/domain/f-node/get-nodes/get-nodes.mjs +25 -0
  96. package/esm2022/domain/f-node/get-nodes/index.mjs +2 -2
  97. package/esm2022/domain/f-node/get-parent-nodes/get-parent-nodes.mjs +37 -0
  98. package/esm2022/domain/f-node/get-parent-nodes/index.mjs +2 -2
  99. package/esm2022/domain/f-node/index.mjs +3 -1
  100. package/esm2022/domain/f-node/providers.mjs +25 -21
  101. package/esm2022/domain/f-node/remove-node-from-store/index.mjs +2 -2
  102. package/esm2022/domain/f-node/remove-node-from-store/remove-node-from-store.mjs +25 -0
  103. package/esm2022/domain/f-node/update-node-when-state-or-size-changed/index.mjs +2 -2
  104. package/esm2022/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed-request.mjs +4 -4
  105. package/esm2022/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed.mjs +104 -0
  106. package/esm2022/domain/f-selection/clear-selection/clear-selection.execution.mjs +5 -5
  107. package/esm2022/domain/f-selection/get-can-be-selected-items/get-can-be-selected-items.execution.mjs +5 -5
  108. package/esm2022/domain/f-selection/get-current-selection/get-current-selection.execution.mjs +5 -5
  109. package/esm2022/domain/f-selection/select/select.execution.mjs +7 -7
  110. package/esm2022/domain/f-selection/select-all/select-all.execution.mjs +7 -7
  111. package/esm2022/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.execution.mjs +5 -5
  112. package/esm2022/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.execution.mjs +2 -2
  113. package/esm2022/f-canvas/f-canvas.component.mjs +7 -7
  114. package/esm2022/f-connection/common/f-connection-base.mjs +22 -3
  115. package/esm2022/f-connection/common/i-has-connection-color.mjs +1 -1
  116. package/esm2022/f-connection/f-connection/f-connection.component.mjs +16 -31
  117. package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +7 -22
  118. package/esm2022/f-connection/f-snap-connection/f-snap-connection.component.mjs +7 -22
  119. package/esm2022/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.execution.mjs +13 -13
  120. package/esm2022/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.request.mjs +4 -4
  121. package/esm2022/f-draggable/domain/is-connection-under-node/is-connection-under-node.execution.mjs +8 -8
  122. package/esm2022/f-draggable/f-canvas/f-canvas.drag-handler.mjs +7 -7
  123. package/esm2022/f-draggable/f-canvas/move-finalize/f-canvas-move-finalize.execution.mjs +4 -4
  124. package/esm2022/f-draggable/f-canvas/move-preparation/f-canvas-move-preparation.execution.mjs +11 -11
  125. package/esm2022/f-draggable/f-connection/f-create-connection/create-finalize/f-create-connection-finalize.execution.mjs +8 -8
  126. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/drag-handler-preparation/f-create-connection-drag-handler-preparation.execution.mjs +8 -8
  127. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/f-create-connection-preparation.execution.mjs +5 -5
  128. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-outlet-preparation/f-create-connection-from-outlet-preparation.execution.mjs +4 -4
  129. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/f-create-connection-from-output-preparation.execution.mjs +4 -4
  130. package/esm2022/f-draggable/f-connection/f-create-connection/f-create-connection.drag-handler.mjs +5 -5
  131. package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-preparation/f-reassign-connection-preparation.execution.mjs +11 -11
  132. package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-preparation/is-pointer-inside-start-or-end-drag-handles.mjs +3 -3
  133. package/esm2022/f-draggable/f-draggable-base.mjs +2 -2
  134. package/esm2022/f-draggable/f-draggable-data-context.mjs +2 -1
  135. package/esm2022/f-draggable/f-draggable.directive.mjs +53 -47
  136. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-finalize/drop-to-group-finalize-request.mjs +8 -0
  137. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-finalize/drop-to-group-finalize.mjs +69 -0
  138. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-finalize/index.mjs +3 -3
  139. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-preparation/drop-to-group-preparation-request.mjs +8 -0
  140. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-preparation/drop-to-group-preparation.mjs +101 -0
  141. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-preparation/index.mjs +3 -3
  142. package/esm2022/f-draggable/f-drop-to-group/f-node-drop-to-group.drag-handler.mjs +20 -13
  143. package/esm2022/f-draggable/f-drop-to-group/index.mjs +2 -1
  144. package/esm2022/f-draggable/f-drop-to-group/providers.mjs +7 -5
  145. package/esm2022/f-draggable/f-drop-to-group/sort-containers-for-drop-by-layer/index.mjs +3 -0
  146. package/esm2022/f-draggable/f-drop-to-group/sort-containers-for-drop-by-layer/sort-containers-for-drop-by-layer-request.mjs +8 -0
  147. package/esm2022/f-draggable/f-drop-to-group/sort-containers-for-drop-by-layer/sort-containers-for-drop-by-layer.mjs +48 -0
  148. package/esm2022/f-draggable/f-node-move/connection-drag-handlers/base-connection.drag-handler.mjs +10 -10
  149. package/esm2022/f-draggable/f-node-move/constraint/drag-constraint-pipeline.mjs +29 -0
  150. package/esm2022/f-draggable/f-node-move/constraint/expand-rect-from-baseline.mjs +18 -0
  151. package/esm2022/f-draggable/f-node-move/constraint/index.mjs +5 -0
  152. package/esm2022/f-draggable/f-node-move/constraint/rect-constraint.mjs +36 -0
  153. package/esm2022/f-draggable/f-node-move/constraint/snap-to-grid.mjs +36 -0
  154. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/build-drag-hierarchy/build-drag-hierarchy-request.mjs +8 -0
  155. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/build-drag-hierarchy/build-drag-hierarchy-response.mjs +9 -0
  156. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/build-drag-hierarchy/build-drag-hierarchy.mjs +47 -0
  157. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/build-drag-hierarchy/index.mjs +4 -0
  158. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/calculate-drag-limits-request.mjs +8 -0
  159. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/calculate-drag-limits.mjs +72 -0
  160. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/i-drag-limits.mjs +2 -0
  161. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/i-soft-limit.mjs +2 -0
  162. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/index.mjs +5 -0
  163. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-drag-model-from-selection-request.mjs +8 -0
  164. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-drag-model-from-selection.mjs +88 -0
  165. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-input-connection-handler-and-set-to-node-handler/create-input-connection-handler-and-set-to-node-handler-request.mjs +12 -0
  166. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-input-connection-handler-and-set-to-node-handler/create-input-connection-handler-and-set-to-node-handler.mjs +59 -0
  167. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-input-connection-handler-and-set-to-node-handler/index.mjs +3 -0
  168. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-output-connection-handler-and-set-to-node-handler/create-output-connection-handler-and-set-to-node-handler-request.mjs +12 -0
  169. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-output-connection-handler-and-set-to-node-handler/create-output-connection-handler-and-set-to-node-handler.mjs +59 -0
  170. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-output-connection-handler-and-set-to-node-handler/index.mjs +3 -0
  171. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-summary-drag-handler/create-summary-drag-handler-request.mjs +10 -0
  172. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-summary-drag-handler/create-summary-drag-handler.mjs +33 -0
  173. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-summary-drag-handler/index.mjs +3 -0
  174. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/get-node-bounding-include-paddings/get-node-bounding-include-paddings-request.mjs +10 -0
  175. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/get-node-bounding-include-paddings/get-node-bounding-include-paddings-response.mjs +13 -0
  176. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/get-node-bounding-include-paddings/get-node-bounding-include-paddings.mjs +39 -0
  177. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/get-node-bounding-include-paddings/index.mjs +4 -0
  178. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/i-node-move-limits-and-position.mjs +2 -0
  179. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/i-node-move-limits.mjs +2 -0
  180. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/index.mjs +12 -0
  181. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/providers.mjs +17 -0
  182. package/esm2022/f-draggable/f-node-move/create-snap-lines/create-snap-lines-request.mjs +8 -0
  183. package/esm2022/f-draggable/f-node-move/create-snap-lines/create-snap-lines.mjs +52 -0
  184. package/esm2022/f-draggable/f-node-move/create-snap-lines/index.mjs +3 -0
  185. package/esm2022/f-draggable/f-node-move/create-snap-lines/snap-lines.drag-handler.mjs +51 -0
  186. package/esm2022/f-draggable/f-node-move/f-move-nodes.event.mjs +8 -2
  187. package/esm2022/f-draggable/f-node-move/index.mjs +8 -7
  188. package/esm2022/f-draggable/f-node-move/move-drag-handler.mjs +95 -0
  189. package/esm2022/f-draggable/f-node-move/move-finalize/f-node-move-finalize.execution.mjs +38 -49
  190. package/esm2022/f-draggable/f-node-move/move-preparation/f-node-move-preparation.execution.mjs +26 -26
  191. package/esm2022/f-draggable/f-node-move/move-summary-drag-handler.mjs +44 -0
  192. package/esm2022/f-draggable/f-node-move/providers.mjs +4 -4
  193. package/esm2022/f-draggable/f-node-resize/apply-child-resize-constraints/apply-child-resize-constraints-request.mjs +10 -0
  194. package/esm2022/f-draggable/f-node-resize/apply-child-resize-constraints/apply-child-resize-constraints.mjs +56 -0
  195. package/esm2022/f-draggable/f-node-resize/apply-child-resize-constraints/index.mjs +3 -0
  196. package/esm2022/f-draggable/f-node-resize/apply-parent-resize-constraints/apply-parent-resize-constraints-request.mjs +10 -0
  197. package/esm2022/f-draggable/f-node-resize/apply-parent-resize-constraints/apply-parent-resize-constraints.mjs +145 -0
  198. package/esm2022/f-draggable/f-node-resize/apply-parent-resize-constraints/index.mjs +3 -0
  199. package/esm2022/f-draggable/f-node-resize/calculate-changed-rect-from-difference/calculate-changed-rect-from-difference-request.mjs +14 -0
  200. package/esm2022/f-draggable/f-node-resize/calculate-changed-rect-from-difference/calculate-changed-rect-from-difference.mjs +55 -0
  201. package/esm2022/f-draggable/f-node-resize/calculate-changed-rect-from-difference/index.mjs +3 -0
  202. package/esm2022/f-draggable/f-node-resize/calculate-direct-children-union-rect/calculate-direct-children-union-rect-request.mjs +10 -0
  203. package/esm2022/f-draggable/f-node-resize/calculate-direct-children-union-rect/calculate-direct-children-union-rect.mjs +39 -0
  204. package/esm2022/f-draggable/f-node-resize/calculate-direct-children-union-rect/index.mjs +3 -0
  205. package/esm2022/f-draggable/f-node-resize/calculate-resize-limits/calculate-resize-limits-request.mjs +10 -0
  206. package/esm2022/f-draggable/f-node-resize/calculate-resize-limits/calculate-resize-limits.mjs +69 -0
  207. package/esm2022/f-draggable/f-node-resize/calculate-resize-limits/index.mjs +3 -0
  208. package/esm2022/f-draggable/f-node-resize/constraint/i-resize-constraint.mjs +2 -0
  209. package/esm2022/f-draggable/f-node-resize/constraint/i-resize-limit.mjs +2 -0
  210. package/esm2022/f-draggable/f-node-resize/constraint/i-resize-limits.mjs +2 -0
  211. package/esm2022/f-draggable/f-node-resize/constraint/i-resize-overflow.mjs +2 -0
  212. package/esm2022/f-draggable/f-node-resize/constraint/index.mjs +5 -0
  213. package/esm2022/f-draggable/f-node-resize/index.mjs +8 -8
  214. package/esm2022/f-draggable/f-node-resize/node-resize.drag-handler.mjs +64 -0
  215. package/esm2022/f-draggable/f-node-resize/providers.mjs +15 -17
  216. package/esm2022/f-draggable/f-node-resize/resize-finalize/index.mjs +3 -3
  217. package/esm2022/f-draggable/f-node-resize/resize-finalize/node-resize-finalize-request.mjs +8 -0
  218. package/esm2022/f-draggable/f-node-resize/resize-finalize/node-resize-finalize.mjs +29 -0
  219. package/esm2022/f-draggable/f-node-resize/resize-preparation/index.mjs +3 -3
  220. package/esm2022/f-draggable/f-node-resize/resize-preparation/node-resize-preparation-request.mjs +10 -0
  221. package/esm2022/f-draggable/f-node-resize/resize-preparation/node-resize-preparation.mjs +71 -0
  222. package/esm2022/f-draggable/f-node-rotate/f-node-rotate.drag-handler.mjs +9 -9
  223. package/esm2022/f-draggable/f-node-rotate/rotate-finalize/f-node-rotate-finalize.execution.mjs +4 -4
  224. package/esm2022/f-draggable/f-node-rotate/rotate-preparation/f-node-rotate-preparation.execution.mjs +13 -13
  225. package/esm2022/f-draggable/f-single-select/f-single-select.execution.mjs +18 -18
  226. package/esm2022/f-external-item/domain/constraint/external-rect-constraint.mjs +44 -0
  227. package/esm2022/f-external-item/domain/constraint/index.mjs +2 -0
  228. package/esm2022/f-external-item/domain/f-external-item.drag-handler.mjs +27 -22
  229. package/esm2022/f-external-item/domain/finalize/f-external-item-finalize.execution.mjs +9 -9
  230. package/esm2022/f-external-item/domain/index.mjs +2 -1
  231. package/esm2022/f-external-item/domain/preparation/f-external-item-preparation.execution.mjs +8 -8
  232. package/esm2022/f-line-alignment/domain/i-snap-coordinate.mjs +2 -0
  233. package/esm2022/f-line-alignment/domain/i-snap-result.mjs +2 -0
  234. package/esm2022/f-line-alignment/domain/index.mjs +5 -5
  235. package/esm2022/f-line-alignment/domain/snap-line-element.mjs +24 -0
  236. package/esm2022/f-line-alignment/domain/snap-line-service.mjs +38 -0
  237. package/esm2022/f-minimap/domain/minimap-draw-nodes/minimap-draw-nodes.execution.mjs +11 -10
  238. package/esm2022/f-node/f-group.directive.mjs +56 -94
  239. package/esm2022/f-node/f-node-base.mjs +61 -7
  240. package/esm2022/f-node/f-node.directive.mjs +56 -95
  241. package/esm2022/f-node/f-resize-handle/f-resize-handle.directive.mjs +1 -1
  242. package/esm2022/f-selection-area/domain/selection-area-finalize/selection-area-finalize.execution.mjs +4 -4
  243. package/esm2022/f-selection-area/domain/selection-area-preparation/selection-area-preparation.execution.mjs +9 -9
  244. package/esm2022/f-selection-area/domain/selection-area.drag-handle.mjs +13 -13
  245. package/esm2022/f-storage/features/listen-components-data-changed/listen-data-changes.execution.mjs +3 -3
  246. package/esm2022/f-storage/features/listen-count-changes/listen-count-changes.execution.mjs +3 -3
  247. package/esm2022/f-storage/features/listen-transform-changes/listen-transform-changes.execution.mjs +3 -3
  248. package/esm2022/f-storage/features/notify-data-changed/notify-data-changed.execution.mjs +3 -3
  249. package/esm2022/f-storage/features/notify-transform-changed/notify-transform-changed.execution.mjs +3 -3
  250. package/esm2022/mixins/change-selection/change-selection.mjs +2 -2
  251. package/esm2022/mixins/change-selection/i-selectable.mjs +1 -1
  252. package/esm2022/reactivity/f-resize-channel.mjs +1 -1
  253. package/f-canvas/f-canvas.component.d.ts +4 -4
  254. package/f-connection/common/f-connection-base.d.ts +17 -15
  255. package/f-connection/common/i-has-connection-color.d.ts +3 -3
  256. package/f-connection/f-connection/f-connection.component.d.ts +6 -20
  257. package/f-connection/f-connection-for-create/f-connection-for-create.component.d.ts +2 -17
  258. package/f-connection/f-snap-connection/f-snap-connection.component.d.ts +2 -17
  259. package/f-connection/providers.d.ts +1 -1
  260. package/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.execution.d.ts +3 -3
  261. package/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.request.d.ts +2 -2
  262. package/f-draggable/domain/is-connection-under-node/is-connection-under-node.execution.d.ts +1 -1
  263. package/f-draggable/domain/providers.d.ts +1 -1
  264. package/f-draggable/f-canvas/f-canvas.drag-handler.d.ts +1 -1
  265. package/f-draggable/f-canvas/move-finalize/f-canvas-move-finalize.execution.d.ts +1 -1
  266. package/f-draggable/f-canvas/move-preparation/f-canvas-move-preparation.execution.d.ts +2 -2
  267. package/f-draggable/f-connection/f-create-connection/create-finalize/f-create-connection-finalize.execution.d.ts +2 -2
  268. package/f-draggable/f-connection/f-create-connection/create-preparation/drag-handler-preparation/f-create-connection-drag-handler-preparation.execution.d.ts +2 -2
  269. package/f-draggable/f-connection/f-create-connection/create-preparation/f-create-connection-preparation.execution.d.ts +2 -2
  270. package/f-draggable/f-connection/f-create-connection/create-preparation/from-outlet-preparation/f-create-connection-from-outlet-preparation.execution.d.ts +1 -1
  271. package/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/f-create-connection-from-output-preparation.execution.d.ts +1 -1
  272. package/f-draggable/f-connection/f-create-connection/f-create-connection.drag-handler.d.ts +1 -1
  273. package/f-draggable/f-connection/f-reassign-connection/reassign-preparation/f-reassign-connection-preparation.execution.d.ts +2 -2
  274. package/f-draggable/f-connection/providers.d.ts +1 -1
  275. package/f-draggable/f-draggable-base.d.ts +4 -4
  276. package/f-draggable/f-draggable-data-context.d.ts +1 -0
  277. package/f-draggable/f-draggable.directive.d.ts +23 -11
  278. package/f-draggable/{f-node-resize/resize-finalize/f-node-resize-finalize.request.d.ts → f-drop-to-group/drop-to-group-finalize/drop-to-group-finalize-request.d.ts} +1 -1
  279. package/f-draggable/f-drop-to-group/drop-to-group-finalize/drop-to-group-finalize.d.ts +16 -0
  280. package/f-draggable/f-drop-to-group/drop-to-group-finalize/index.d.ts +2 -2
  281. package/f-draggable/f-drop-to-group/{drop-to-group-finalize/f-node-drop-to-group-finalize.request.d.ts → drop-to-group-preparation/drop-to-group-preparation-request.d.ts} +1 -1
  282. package/f-draggable/f-drop-to-group/drop-to-group-preparation/drop-to-group-preparation.d.ts +29 -0
  283. package/f-draggable/f-drop-to-group/drop-to-group-preparation/index.d.ts +2 -2
  284. package/f-draggable/f-drop-to-group/f-node-drop-to-group.drag-handler.d.ts +4 -4
  285. package/f-draggable/f-drop-to-group/index.d.ts +1 -0
  286. package/f-draggable/f-drop-to-group/providers.d.ts +4 -3
  287. package/f-draggable/f-drop-to-group/sort-containers-for-drop-by-layer/index.d.ts +2 -0
  288. package/f-draggable/f-drop-to-group/sort-containers-for-drop-by-layer/sort-containers-for-drop-by-layer-request.d.ts +6 -0
  289. package/f-draggable/f-drop-to-group/sort-containers-for-drop-by-layer/sort-containers-for-drop-by-layer.d.ts +10 -0
  290. package/f-draggable/f-node-move/connection-drag-handlers/base-connection.drag-handler.d.ts +2 -2
  291. package/f-draggable/f-node-move/constraint/drag-constraint-pipeline.d.ts +17 -0
  292. package/f-draggable/f-node-move/constraint/expand-rect-from-baseline.d.ts +3 -0
  293. package/f-draggable/f-node-move/constraint/index.d.ts +4 -0
  294. package/f-draggable/f-node-move/constraint/rect-constraint.d.ts +19 -0
  295. package/f-draggable/f-node-move/constraint/snap-to-grid.d.ts +15 -0
  296. package/f-draggable/f-node-move/create-drag-model-from-selection/build-drag-hierarchy/build-drag-hierarchy-request.d.ts +6 -0
  297. package/f-draggable/f-node-move/create-drag-model-from-selection/build-drag-hierarchy/build-drag-hierarchy-response.d.ts +6 -0
  298. package/f-draggable/f-node-move/create-drag-model-from-selection/build-drag-hierarchy/build-drag-hierarchy.d.ts +13 -0
  299. package/f-draggable/f-node-move/create-drag-model-from-selection/build-drag-hierarchy/index.d.ts +3 -0
  300. package/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/calculate-drag-limits-request.d.ts +6 -0
  301. package/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/calculate-drag-limits.d.ts +19 -0
  302. package/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/i-drag-limits.d.ts +6 -0
  303. package/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/i-soft-limit.d.ts +8 -0
  304. package/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/index.d.ts +4 -0
  305. package/f-draggable/f-node-move/{create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.request.d.ts → create-drag-model-from-selection/create-drag-model-from-selection-request.d.ts} +1 -1
  306. package/f-draggable/f-node-move/create-drag-model-from-selection/create-drag-model-from-selection.d.ts +24 -0
  307. package/f-draggable/f-node-move/create-drag-model-from-selection/create-input-connection-handler-and-set-to-node-handler/create-input-connection-handler-and-set-to-node-handler-request.d.ts +9 -0
  308. package/f-draggable/f-node-move/create-drag-model-from-selection/create-input-connection-handler-and-set-to-node-handler/create-input-connection-handler-and-set-to-node-handler.d.ts +16 -0
  309. package/f-draggable/f-node-move/create-drag-model-from-selection/create-input-connection-handler-and-set-to-node-handler/index.d.ts +2 -0
  310. package/f-draggable/f-node-move/create-drag-model-from-selection/create-output-connection-handler-and-set-to-node-handler/create-output-connection-handler-and-set-to-node-handler-request.d.ts +9 -0
  311. package/f-draggable/f-node-move/create-drag-model-from-selection/create-output-connection-handler-and-set-to-node-handler/create-output-connection-handler-and-set-to-node-handler.d.ts +18 -0
  312. package/f-draggable/f-node-move/create-drag-model-from-selection/create-output-connection-handler-and-set-to-node-handler/index.d.ts +2 -0
  313. package/f-draggable/f-node-move/create-drag-model-from-selection/create-summary-drag-handler/create-summary-drag-handler-request.d.ts +7 -0
  314. package/f-draggable/f-node-move/create-drag-model-from-selection/create-summary-drag-handler/create-summary-drag-handler.d.ts +13 -0
  315. package/f-draggable/f-node-move/create-drag-model-from-selection/create-summary-drag-handler/index.d.ts +2 -0
  316. package/f-draggable/f-node-move/create-drag-model-from-selection/get-node-bounding-include-paddings/get-node-bounding-include-paddings-request.d.ts +7 -0
  317. package/f-draggable/f-node-move/create-drag-model-from-selection/get-node-bounding-include-paddings/get-node-bounding-include-paddings-response.d.ts +9 -0
  318. package/f-draggable/f-node-move/create-drag-model-from-selection/get-node-bounding-include-paddings/get-node-bounding-include-paddings.d.ts +13 -0
  319. package/f-draggable/f-node-move/create-drag-model-from-selection/get-node-bounding-include-paddings/index.d.ts +3 -0
  320. package/f-draggable/f-node-move/create-drag-model-from-selection/index.d.ts +11 -0
  321. package/f-draggable/f-node-move/create-drag-model-from-selection/providers.d.ts +8 -0
  322. package/f-draggable/f-node-move/create-snap-lines/create-snap-lines-request.d.ts +6 -0
  323. package/f-draggable/f-node-move/create-snap-lines/create-snap-lines.d.ts +19 -0
  324. package/f-draggable/f-node-move/create-snap-lines/index.d.ts +2 -0
  325. package/f-draggable/f-node-move/create-snap-lines/snap-lines.drag-handler.d.ts +16 -0
  326. package/f-draggable/f-node-move/f-move-nodes.event.d.ts +4 -0
  327. package/f-draggable/f-node-move/index.d.ts +7 -6
  328. package/f-draggable/f-node-move/move-drag-handler.d.ts +33 -0
  329. package/f-draggable/f-node-move/move-finalize/f-node-move-finalize.execution.d.ts +10 -10
  330. package/f-draggable/f-node-move/move-preparation/f-node-move-preparation.execution.d.ts +4 -4
  331. package/f-draggable/f-node-move/move-summary-drag-handler.d.ts +22 -0
  332. package/f-draggable/f-node-move/providers.d.ts +2 -2
  333. package/f-draggable/f-node-resize/apply-child-resize-constraints/apply-child-resize-constraints-request.d.ts +7 -0
  334. package/f-draggable/f-node-resize/apply-child-resize-constraints/apply-child-resize-constraints.d.ts +13 -0
  335. package/f-draggable/f-node-resize/apply-child-resize-constraints/index.d.ts +2 -0
  336. package/f-draggable/f-node-resize/apply-parent-resize-constraints/apply-parent-resize-constraints-request.d.ts +8 -0
  337. package/f-draggable/f-node-resize/apply-parent-resize-constraints/apply-parent-resize-constraints.d.ts +36 -0
  338. package/f-draggable/f-node-resize/apply-parent-resize-constraints/index.d.ts +2 -0
  339. package/f-draggable/f-node-resize/calculate-changed-rect-from-difference/calculate-changed-rect-from-difference-request.d.ts +10 -0
  340. package/f-draggable/f-node-resize/calculate-changed-rect-from-difference/calculate-changed-rect-from-difference.d.ts +11 -0
  341. package/f-draggable/f-node-resize/calculate-changed-rect-from-difference/index.d.ts +2 -0
  342. package/f-draggable/f-node-resize/calculate-direct-children-union-rect/calculate-direct-children-union-rect-request.d.ts +7 -0
  343. package/f-draggable/f-node-resize/calculate-direct-children-union-rect/calculate-direct-children-union-rect.d.ts +15 -0
  344. package/f-draggable/f-node-resize/calculate-direct-children-union-rect/index.d.ts +2 -0
  345. package/f-draggable/f-node-resize/{get-node-resize-restrictions/get-node-resize-restrictions.request.d.ts → calculate-resize-limits/calculate-resize-limits-request.d.ts} +3 -3
  346. package/f-draggable/f-node-resize/calculate-resize-limits/calculate-resize-limits.d.ts +17 -0
  347. package/f-draggable/f-node-resize/calculate-resize-limits/index.d.ts +2 -0
  348. package/f-draggable/f-node-resize/constraint/i-resize-constraint.d.ts +7 -0
  349. package/f-draggable/f-node-resize/constraint/i-resize-limit.d.ts +7 -0
  350. package/f-draggable/f-node-resize/constraint/i-resize-limits.d.ts +5 -0
  351. package/f-draggable/f-node-resize/constraint/i-resize-overflow.d.ts +6 -0
  352. package/f-draggable/f-node-resize/constraint/index.d.ts +4 -0
  353. package/f-draggable/f-node-resize/index.d.ts +7 -7
  354. package/f-draggable/f-node-resize/node-resize.drag-handler.d.ts +25 -0
  355. package/f-draggable/f-node-resize/providers.d.ts +8 -9
  356. package/f-draggable/f-node-resize/resize-finalize/index.d.ts +2 -2
  357. package/f-draggable/{f-drop-to-group/drop-to-group-preparation/f-node-drop-to-group-preparation.request.d.ts → f-node-resize/resize-finalize/node-resize-finalize-request.d.ts} +2 -2
  358. package/f-draggable/f-node-resize/resize-finalize/node-resize-finalize.d.ts +10 -0
  359. package/f-draggable/f-node-resize/resize-preparation/index.d.ts +2 -2
  360. package/f-draggable/f-node-resize/resize-preparation/{f-node-resize-preparation.request.d.ts → node-resize-preparation-request.d.ts} +1 -1
  361. package/f-draggable/f-node-resize/resize-preparation/node-resize-preparation.d.ts +22 -0
  362. package/f-draggable/f-node-rotate/f-node-rotate.drag-handler.d.ts +2 -2
  363. package/f-draggable/f-node-rotate/providers.d.ts +1 -1
  364. package/f-draggable/f-node-rotate/rotate-finalize/f-node-rotate-finalize.execution.d.ts +1 -1
  365. package/f-draggable/f-node-rotate/rotate-preparation/f-node-rotate-preparation.execution.d.ts +2 -2
  366. package/f-draggable/f-single-select/f-single-select.execution.d.ts +2 -2
  367. package/f-draggable/providers.d.ts +1 -1
  368. package/{f-draggable/f-node-move/point-bounds-limiter.d.ts → f-external-item/domain/constraint/external-rect-constraint.d.ts} +4 -4
  369. package/f-external-item/domain/constraint/index.d.ts +1 -0
  370. package/f-external-item/domain/f-external-item.drag-handler.d.ts +6 -5
  371. package/f-external-item/domain/finalize/f-external-item-finalize.execution.d.ts +2 -2
  372. package/f-external-item/domain/index.d.ts +1 -0
  373. package/f-external-item/domain/preparation/f-external-item-preparation.execution.d.ts +2 -2
  374. package/f-line-alignment/domain/{i-nearest-coordinate-result.d.ts → i-snap-coordinate.d.ts} +1 -1
  375. package/f-line-alignment/domain/i-snap-result.d.ts +5 -0
  376. package/f-line-alignment/domain/index.d.ts +4 -4
  377. package/f-line-alignment/domain/{line-element.d.ts → snap-line-element.d.ts} +1 -1
  378. package/f-line-alignment/domain/{line-service.d.ts → snap-line-service.d.ts} +1 -1
  379. package/f-minimap/domain/minimap-draw-nodes/minimap-draw-nodes.execution.d.ts +2 -2
  380. package/f-minimap/domain/providers.d.ts +1 -1
  381. package/f-node/f-group.directive.d.ts +19 -28
  382. package/f-node/f-node-base.d.ts +26 -17
  383. package/f-node/f-node.directive.d.ts +19 -28
  384. package/f-node/f-resize-handle/f-resize-handle.directive.d.ts +1 -1
  385. package/f-node/providers.d.ts +2 -2
  386. package/f-selection-area/domain/providers.d.ts +1 -1
  387. package/f-selection-area/domain/selection-area-finalize/selection-area-finalize.execution.d.ts +1 -1
  388. package/f-selection-area/domain/selection-area-preparation/selection-area-preparation.execution.d.ts +2 -2
  389. package/f-selection-area/domain/selection-area.drag-handle.d.ts +3 -3
  390. package/f-storage/features/listen-components-data-changed/listen-data-changes.execution.d.ts +1 -1
  391. package/f-storage/features/listen-count-changes/listen-count-changes.execution.d.ts +1 -1
  392. package/f-storage/features/listen-transform-changes/listen-transform-changes.execution.d.ts +1 -1
  393. package/f-storage/features/notify-data-changed/notify-data-changed.execution.d.ts +1 -1
  394. package/f-storage/features/notify-transform-changed/notify-transform-changed.execution.d.ts +1 -1
  395. package/f-storage/providers.d.ts +1 -1
  396. package/fesm2022/foblex-flow.mjs +2010 -1481
  397. package/fesm2022/foblex-flow.mjs.map +1 -1
  398. package/mixins/change-selection/i-selectable.d.ts +1 -1
  399. package/package.json +1 -1
  400. package/reactivity/f-resize-channel.d.ts +2 -2
  401. package/esm2022/domain/f-draggable/is-drag-started/is-drag-started.execution.mjs +0 -25
  402. package/esm2022/domain/f-node/add-node-to-store/add-node-to-store.execution.mjs +0 -25
  403. package/esm2022/domain/f-node/calculate-input-connections/calculate-input-connections.execution.mjs +0 -34
  404. package/esm2022/domain/f-node/calculate-nodes-bounding-box/calculate-nodes-bounding-box.execution.mjs +0 -35
  405. package/esm2022/domain/f-node/calculate-nodes-bounding-box-normalized-position/calculate-nodes-bounding-box-normalized-position.execution.mjs +0 -36
  406. package/esm2022/domain/f-node/calculate-output-connections/calculate-output-connections.execution.mjs +0 -34
  407. package/esm2022/domain/f-node/get-node-padding/get-node-padding.execution.mjs +0 -35
  408. package/esm2022/domain/f-node/get-nodes/get-nodes.execution.mjs +0 -25
  409. package/esm2022/domain/f-node/get-parent-nodes/get-parent-nodes.execution.mjs +0 -37
  410. package/esm2022/domain/f-node/remove-node-from-store/remove-node-from-store.execution.mjs +0 -25
  411. package/esm2022/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed.execution.mjs +0 -95
  412. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-finalize/f-node-drop-to-group-finalize.execution.mjs +0 -57
  413. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-finalize/f-node-drop-to-group-finalize.request.mjs +0 -8
  414. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-preparation/f-node-drop-to-group-preparation.execution.mjs +0 -83
  415. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-preparation/f-node-drop-to-group-preparation.request.mjs +0 -8
  416. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.mjs +0 -110
  417. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.request.mjs +0 -8
  418. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/calculate-common-node-move-limits.execution.mjs +0 -69
  419. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/calculate-common-node-move-limits.request.mjs +0 -8
  420. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/index.mjs +0 -3
  421. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/calculate-node-move-limits.execution.mjs +0 -46
  422. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/calculate-node-move-limits.request.mjs +0 -10
  423. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/index.mjs +0 -3
  424. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/index.mjs +0 -3
  425. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.execution.mjs +0 -60
  426. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.request.mjs +0 -12
  427. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/index.mjs +0 -3
  428. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.execution.mjs +0 -60
  429. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.request.mjs +0 -12
  430. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/i-node-move-limits-and-position.mjs +0 -2
  431. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/i-node-move-limits.mjs +0 -2
  432. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/index.mjs +0 -10
  433. package/esm2022/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/providers.mjs +0 -13
  434. package/esm2022/f-draggable/f-node-move/f-line-alignment.drag-handler.mjs +0 -63
  435. package/esm2022/f-draggable/f-node-move/f-node-move.drag-handler.mjs +0 -30
  436. package/esm2022/f-draggable/f-node-move/f-summary-node-move.drag-handler.mjs +0 -33
  437. package/esm2022/f-draggable/f-node-move/line-alignment-preparation/index.mjs +0 -3
  438. package/esm2022/f-draggable/f-node-move/line-alignment-preparation/line-alignment-preparation.execution.mjs +0 -57
  439. package/esm2022/f-draggable/f-node-move/line-alignment-preparation/line-alignment-preparation.request.mjs +0 -10
  440. package/esm2022/f-draggable/f-node-move/point-bounds-limiter.mjs +0 -43
  441. package/esm2022/f-draggable/f-node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.execution.mjs +0 -53
  442. package/esm2022/f-draggable/f-node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.request.mjs +0 -10
  443. package/esm2022/f-draggable/f-node-resize/apply-child-resize-restrictions/index.mjs +0 -3
  444. package/esm2022/f-draggable/f-node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.execution.mjs +0 -49
  445. package/esm2022/f-draggable/f-node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.request.mjs +0 -10
  446. package/esm2022/f-draggable/f-node-resize/apply-parent-resize-restrictions/index.mjs +0 -3
  447. package/esm2022/f-draggable/f-node-resize/calculate-changed-position/calculate-changed-position.execution.mjs +0 -25
  448. package/esm2022/f-draggable/f-node-resize/calculate-changed-position/calculate-changed-position.request.mjs +0 -14
  449. package/esm2022/f-draggable/f-node-resize/calculate-changed-position/index.mjs +0 -3
  450. package/esm2022/f-draggable/f-node-resize/calculate-changed-size/calculate-changed-size.execution.mjs +0 -34
  451. package/esm2022/f-draggable/f-node-resize/calculate-changed-size/calculate-changed-size.request.mjs +0 -12
  452. package/esm2022/f-draggable/f-node-resize/calculate-changed-size/index.mjs +0 -3
  453. package/esm2022/f-draggable/f-node-resize/f-node-resize.drag-handler.mjs +0 -73
  454. package/esm2022/f-draggable/f-node-resize/get-node-resize-restrictions/get-node-resize-restrictions.execution.mjs +0 -39
  455. package/esm2022/f-draggable/f-node-resize/get-node-resize-restrictions/get-node-resize-restrictions.request.mjs +0 -10
  456. package/esm2022/f-draggable/f-node-resize/get-node-resize-restrictions/i-node-resize-restrictions.mjs +0 -2
  457. package/esm2022/f-draggable/f-node-resize/get-node-resize-restrictions/index.mjs +0 -4
  458. package/esm2022/f-draggable/f-node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.execution.mjs +0 -38
  459. package/esm2022/f-draggable/f-node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.request.mjs +0 -10
  460. package/esm2022/f-draggable/f-node-resize/get-normalized-children-nodes-rect/index.mjs +0 -3
  461. package/esm2022/f-draggable/f-node-resize/resize-finalize/f-node-resize-finalize.execution.mjs +0 -31
  462. package/esm2022/f-draggable/f-node-resize/resize-finalize/f-node-resize-finalize.request.mjs +0 -8
  463. package/esm2022/f-draggable/f-node-resize/resize-preparation/f-node-resize-preparation.execution.mjs +0 -73
  464. package/esm2022/f-draggable/f-node-resize/resize-preparation/f-node-resize-preparation.request.mjs +0 -10
  465. package/esm2022/f-line-alignment/domain/i-line-alignment-result.mjs +0 -2
  466. package/esm2022/f-line-alignment/domain/i-nearest-coordinate-result.mjs +0 -2
  467. package/esm2022/f-line-alignment/domain/line-element.mjs +0 -24
  468. package/esm2022/f-line-alignment/domain/line-service.mjs +0 -38
  469. package/f-draggable/f-drop-to-group/drop-to-group-finalize/f-node-drop-to-group-finalize.execution.d.ts +0 -15
  470. package/f-draggable/f-drop-to-group/drop-to-group-preparation/f-node-drop-to-group-preparation.execution.d.ts +0 -22
  471. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.d.ts +0 -29
  472. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/calculate-common-node-move-limits.execution.d.ts +0 -19
  473. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/calculate-common-node-move-limits.request.d.ts +0 -6
  474. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/index.d.ts +0 -2
  475. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/calculate-node-move-limits.execution.d.ts +0 -15
  476. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/calculate-node-move-limits.request.d.ts +0 -7
  477. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/index.d.ts +0 -2
  478. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/index.d.ts +0 -2
  479. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.execution.d.ts +0 -16
  480. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.request.d.ts +0 -9
  481. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/index.d.ts +0 -2
  482. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.execution.d.ts +0 -18
  483. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.request.d.ts +0 -9
  484. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/index.d.ts +0 -9
  485. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/providers.d.ts +0 -6
  486. package/f-draggable/f-node-move/f-line-alignment.drag-handler.d.ts +0 -21
  487. package/f-draggable/f-node-move/f-node-move.drag-handler.d.ts +0 -16
  488. package/f-draggable/f-node-move/f-summary-node-move.drag-handler.d.ts +0 -17
  489. package/f-draggable/f-node-move/line-alignment-preparation/index.d.ts +0 -2
  490. package/f-draggable/f-node-move/line-alignment-preparation/line-alignment-preparation.execution.d.ts +0 -20
  491. package/f-draggable/f-node-move/line-alignment-preparation/line-alignment-preparation.request.d.ts +0 -8
  492. package/f-draggable/f-node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.execution.d.ts +0 -13
  493. package/f-draggable/f-node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.request.d.ts +0 -8
  494. package/f-draggable/f-node-resize/apply-child-resize-restrictions/index.d.ts +0 -2
  495. package/f-draggable/f-node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.execution.d.ts +0 -13
  496. package/f-draggable/f-node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.request.d.ts +0 -7
  497. package/f-draggable/f-node-resize/apply-parent-resize-restrictions/index.d.ts +0 -2
  498. package/f-draggable/f-node-resize/calculate-changed-position/calculate-changed-position.execution.d.ts +0 -10
  499. package/f-draggable/f-node-resize/calculate-changed-position/calculate-changed-position.request.d.ts +0 -10
  500. package/f-draggable/f-node-resize/calculate-changed-position/index.d.ts +0 -2
  501. package/f-draggable/f-node-resize/calculate-changed-size/calculate-changed-size.execution.d.ts +0 -10
  502. package/f-draggable/f-node-resize/calculate-changed-size/calculate-changed-size.request.d.ts +0 -9
  503. package/f-draggable/f-node-resize/calculate-changed-size/index.d.ts +0 -2
  504. package/f-draggable/f-node-resize/f-node-resize.drag-handler.d.ts +0 -27
  505. package/f-draggable/f-node-resize/get-node-resize-restrictions/get-node-resize-restrictions.execution.d.ts +0 -13
  506. package/f-draggable/f-node-resize/get-node-resize-restrictions/i-node-resize-restrictions.d.ts +0 -6
  507. package/f-draggable/f-node-resize/get-node-resize-restrictions/index.d.ts +0 -3
  508. package/f-draggable/f-node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.execution.d.ts +0 -14
  509. package/f-draggable/f-node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.request.d.ts +0 -7
  510. package/f-draggable/f-node-resize/get-normalized-children-nodes-rect/index.d.ts +0 -2
  511. package/f-draggable/f-node-resize/resize-finalize/f-node-resize-finalize.execution.d.ts +0 -10
  512. package/f-draggable/f-node-resize/resize-preparation/f-node-resize-preparation.execution.d.ts +0 -22
  513. package/f-line-alignment/domain/i-line-alignment-result.d.ts +0 -5
  514. /package/f-draggable/f-node-move/{create-move-nodes-drag-model-from-selection → create-drag-model-from-selection}/i-node-move-limits-and-position.d.ts +0 -0
  515. /package/f-draggable/f-node-move/{create-move-nodes-drag-model-from-selection → create-drag-model-from-selection}/i-node-move-limits.d.ts +0 -0
@@ -0,0 +1,101 @@
1
+ import { __decorate } from "tslib";
2
+ import { inject, Injectable, Injector } from '@angular/core';
3
+ import { DropToGroupPreparationRequest } from './drop-to-group-preparation-request';
4
+ import { FExecutionRegister, FMediator } from '@foblex/mediator';
5
+ import { FComponentsStore } from '../../../f-storage';
6
+ import { PointExtensions, RectExtensions } from '@foblex/2d';
7
+ import { GetChildNodeIdsRequest, GetNormalizedElementRectRequest, GetParentNodesRequest } from '../../../domain';
8
+ import { FGroupDirective } from '../../../f-node';
9
+ import { FDraggableDataContext } from '../../f-draggable-data-context';
10
+ import { FNodeDropToGroupDragHandler } from '../f-node-drop-to-group.drag-handler';
11
+ import { MoveSummaryDragHandler } from '../../f-node-move';
12
+ import { FExternalItemDragHandler } from "../../../f-external-item";
13
+ import { SortContainersForDropByLayerRequest } from "../sort-containers-for-drop-by-layer";
14
+ import * as i0 from "@angular/core";
15
+ let DropToGroupPreparation = class DropToGroupPreparation {
16
+ _mediator = inject(FMediator);
17
+ _dragContext = inject(FDraggableDataContext);
18
+ _store = inject(FComponentsStore);
19
+ _injector = inject(Injector);
20
+ get _allNodesAndGroups() {
21
+ return this._store.fNodes;
22
+ }
23
+ get _canvasTransform() {
24
+ return this._store.fCanvas.transform;
25
+ }
26
+ get _canvasPosition() {
27
+ return PointExtensions.sum(this._canvasTransform.position, this._canvasTransform.scaledPosition);
28
+ }
29
+ handle({ event }) {
30
+ if (!this._canPrepareDropToGroup()) {
31
+ return;
32
+ }
33
+ const _dragTarget = this._allNodesAndGroups.find((x) => x.isContains(event.targetElement));
34
+ if (!_dragTarget && !this._isExternalItemDragHandler()) {
35
+ throw new Error('Drag target node not found');
36
+ }
37
+ let targetRects = this._mediator.execute(new SortContainersForDropByLayerRequest(this._collectGroupingTargetRects()));
38
+ if (_dragTarget) {
39
+ // We can drop items only to children of direct parent
40
+ const childIds = this._mediator.execute(new GetChildNodeIdsRequest(_dragTarget.fParentId()));
41
+ if (childIds.length) {
42
+ targetRects = targetRects.filter(t => childIds.includes(t.node.fId()));
43
+ }
44
+ }
45
+ this._dragContext.draggableItems.push(new FNodeDropToGroupDragHandler(this._injector, targetRects));
46
+ }
47
+ _canPrepareDropToGroup() {
48
+ return this._isNodeDragHandler() || this._isExternalItemDragHandler();
49
+ }
50
+ _isNodeDragHandler() {
51
+ return this._dragContext.draggableItems
52
+ .some((x) => x instanceof MoveSummaryDragHandler);
53
+ }
54
+ _isExternalItemDragHandler() {
55
+ return this._dragContext.draggableItems
56
+ .some((x) => x instanceof FExternalItemDragHandler);
57
+ }
58
+ _collectGroupingTargetRects() {
59
+ const dragged = this._draggedNodes();
60
+ const draggingGroup = dragged.some((x) => x instanceof FGroupDirective);
61
+ const draggedNodes = this._draggedNodesWithParents(dragged);
62
+ return this._eligibleTargets(draggedNodes, draggingGroup).map((node) => {
63
+ const rect = this._mediator.execute(new GetNormalizedElementRectRequest(node.hostElement));
64
+ return { node, rect: this._toCanvasRect(rect) };
65
+ });
66
+ }
67
+ _draggedNodes() {
68
+ return this._dragContext.draggableItems
69
+ .find((x) => x instanceof MoveSummaryDragHandler)
70
+ ?.allDraggedNodeHandlers.map((x) => x.nodeOrGroup) || [];
71
+ }
72
+ /**
73
+ * Returns the list of dragged nodes extended with all of their parent nodes.
74
+ *
75
+ * This ensures that parent nodes are excluded from the potential drop targets,
76
+ * since they already act as containers for the dragged elements.
77
+ */
78
+ _draggedNodesWithParents(nodes) {
79
+ return nodes.reduce((result, x) => {
80
+ result.push(x, ...this._mediator.execute(new GetParentNodesRequest(x)));
81
+ return result;
82
+ }, []);
83
+ }
84
+ _eligibleTargets(dragged, draggingGroup) {
85
+ const nonDragged = this._allNodesAndGroups.filter(x => !dragged.includes(x));
86
+ return draggingGroup ? nonDragged.filter(x => x instanceof FGroupDirective) : nonDragged;
87
+ }
88
+ _toCanvasRect(rect) {
89
+ return RectExtensions.initialize(rect.x * this._canvasTransform.scale + this._canvasPosition.x, rect.y * this._canvasTransform.scale + this._canvasPosition.y, rect.width * this._canvasTransform.scale, rect.height * this._canvasTransform.scale);
90
+ }
91
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DropToGroupPreparation, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
92
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DropToGroupPreparation });
93
+ };
94
+ DropToGroupPreparation = __decorate([
95
+ FExecutionRegister(DropToGroupPreparationRequest)
96
+ ], DropToGroupPreparation);
97
+ export { DropToGroupPreparation };
98
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DropToGroupPreparation, decorators: [{
99
+ type: Injectable
100
+ }] });
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcC10by1ncm91cC1wcmVwYXJhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1kcm9wLXRvLWdyb3VwL2Ryb3AtdG8tZ3JvdXAtcHJlcGFyYXRpb24vZHJvcC10by1ncm91cC1wcmVwYXJhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ2xGLE9BQU8sRUFBQyxrQkFBa0IsRUFBRSxTQUFTLEVBQWEsTUFBTSxrQkFBa0IsQ0FBQztBQUMzRSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUVwRCxPQUFPLEVBQWlDLGVBQWUsRUFBRSxjQUFjLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFDM0YsT0FBTyxFQUFDLHNCQUFzQixFQUFFLCtCQUErQixFQUFFLHFCQUFxQixFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDL0csT0FBTyxFQUFDLGVBQWUsRUFBWSxNQUFNLGlCQUFpQixDQUFDO0FBQzNELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ2pGLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ3pELE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ2xFLE9BQU8sRUFBQyxtQ0FBbUMsRUFBQyxNQUFNLHNDQUFzQyxDQUFDOztBQUlsRixJQUFNLHNCQUFzQixHQUE1QixNQUFNLHNCQUFzQjtJQUdoQixTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lB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Q0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM3RSxPQUFPLGFBQWEsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsWUFBWSxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDO0lBQzNGLENBQUM7SUFFTyxhQUFhLENBQUMsSUFBVztRQUMvQixPQUFPLGNBQWMsQ0FBQyxVQUFVLENBQzlCLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsRUFDN0QsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxFQUM3RCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQ3hDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FDMUMsQ0FBQztJQUNKLENBQUM7d0dBM0dVLHNCQUFzQjs0R0FBdEIsc0JBQXNCOztBQUF0QixzQkFBc0I7SUFEbEMsa0JBQWtCLENBQUMsNkJBQTZCLENBQUM7R0FDckMsc0JBQXNCLENBNEdsQzs7NEZBNUdZLHNCQUFzQjtrQkFGbEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7aW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3Rvcn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Ryb3BUb0dyb3VwUHJlcGFyYXRpb25SZXF1ZXN0fSBmcm9tICcuL2Ryb3AtdG8tZ3JvdXAtcHJlcGFyYXRpb24tcmVxdWVzdCc7XG5pbXBvcnQge0ZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9ufSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7RkNvbXBvbmVudHNTdG9yZX0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7SU5vZGVXaXRoUmVjdH0gZnJvbSAnLi4vLi4vZG9tYWluJztcbmltcG9ydCB7SVBvaW50LCBJUmVjdCwgSVRyYW5zZm9ybU1vZGVsLCBQb2ludEV4dGVuc2lvbnMsIFJlY3RFeHRlbnNpb25zfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7R2V0Q2hpbGROb2RlSWRzUmVxdWVzdCwgR2V0Tm9ybWFsaXplZEVsZW1lbnRSZWN0UmVxdWVzdCwgR2V0UGFyZW50Tm9kZXNSZXF1ZXN0fSBmcm9tICcuLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHtGR3JvdXBEaXJlY3RpdmUsIEZOb2RlQmFzZX0gZnJvbSAnLi4vLi4vLi4vZi1ub2RlJztcbmltcG9ydCB7RkRyYWdnYWJsZURhdGFDb250ZXh0fSBmcm9tICcuLi8uLi9mLWRyYWdnYWJsZS1kYXRhLWNvbnRleHQnO1xuaW1wb3J0IHtGTm9kZURyb3BUb0dyb3VwRHJhZ0hhbmRsZXJ9IGZyb20gJy4uL2Ytbm9kZS1kcm9wLXRvLWdyb3VwLmRyYWctaGFuZGxlcic7XG5pbXBvcnQge01vdmVTdW1tYXJ5RHJhZ0hhbmRsZXJ9IGZyb20gJy4uLy4uL2Ytbm9kZS1tb3ZlJztcbmltcG9ydCB7RkV4dGVybmFsSXRlbURyYWdIYW5kbGVyfSBmcm9tIFwiLi4vLi4vLi4vZi1leHRlcm5hbC1pdGVtXCI7XG5pbXBvcnQge1NvcnRDb250YWluZXJzRm9yRHJvcEJ5TGF5ZXJSZXF1ZXN0fSBmcm9tIFwiLi4vc29ydC1jb250YWluZXJzLWZvci1kcm9wLWJ5LWxheWVyXCI7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoRHJvcFRvR3JvdXBQcmVwYXJhdGlvblJlcXVlc3QpXG5leHBvcnQgY2xhc3MgRHJvcFRvR3JvdXBQcmVwYXJhdGlvblxuICBpbXBsZW1lbnRzIElFeGVjdXRpb248RHJvcFRvR3JvdXBQcmVwYXJhdGlvblJlcXVlc3QsIHZvaWQ+IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9kcmFnQ29udGV4dCA9IGluamVjdChGRHJhZ2dhYmxlRGF0YUNvbnRleHQpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9zdG9yZSA9IGluamVjdChGQ29tcG9uZW50c1N0b3JlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuXG4gIHByaXZhdGUgZ2V0IF9hbGxOb2Rlc0FuZEdyb3VwcygpOiBGTm9kZUJhc2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuX3N0b3JlLmZOb2RlcztcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF9jYW52YXNUcmFuc2Zvcm0oKTogSVRyYW5zZm9ybU1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5fc3RvcmUuZkNhbnZhcyEudHJhbnNmb3JtO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgX2NhbnZhc1Bvc2l0aW9uKCk6IElQb2ludCB7XG4gICAgcmV0dXJuIFBvaW50RXh0ZW5zaW9ucy5zdW0odGhpcy5fY2FudmFzVHJhbnNmb3JtLnBvc2l0aW9uLCB0aGlzLl9jYW52YXNUcmFuc2Zvcm0uc2NhbGVkUG9zaXRpb24pXG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHtldmVudH06IERyb3BUb0dyb3VwUHJlcGFyYXRpb25SZXF1ZXN0KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9jYW5QcmVwYXJlRHJvcFRvR3JvdXAoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBfZHJhZ1RhcmdldCA9IHRoaXMuX2FsbE5vZGVzQW5kR3JvdXBzLmZpbmQoKHgpID0+XG4gICAgICB4LmlzQ29udGFpbnMoZXZlbnQudGFyZ2V0RWxlbWVudClcbiAgICApO1xuXG4gICAgaWYgKCFfZHJhZ1RhcmdldCAmJiAhdGhpcy5faXNFeHRlcm5hbEl0ZW1EcmFnSGFuZGxlcigpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0RyYWcgdGFyZ2V0IG5vZGUgbm90IGZvdW5kJyk7XG4gICAgfVxuXG4gICAgbGV0IHRhcmdldFJlY3RzID0gdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTxJTm9kZVdpdGhSZWN0W10+KFxuICAgICAgbmV3IFNvcnRDb250YWluZXJzRm9yRHJvcEJ5TGF5ZXJSZXF1ZXN0KHRoaXMuX2NvbGxlY3RHcm91cGluZ1RhcmdldFJlY3RzKCkpXG4gICAgKTtcblxuICAgIGlmIChfZHJhZ1RhcmdldCkge1xuICAgICAgLy8gV2UgY2FuIGRyb3AgaXRlbXMgb25seSB0byBjaGlsZHJlbiBvZiBkaXJlY3QgcGFyZW50XG4gICAgICBjb25zdCBjaGlsZElkcyA9IHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8c3RyaW5nW10+KG5ldyBHZXRDaGlsZE5vZGVJZHNSZXF1ZXN0KF9kcmFnVGFyZ2V0LmZQYXJlbnRJZCgpKSk7XG4gICAgICBpZiAoY2hpbGRJZHMubGVuZ3RoKSB7XG4gICAgICAgIHRhcmdldFJlY3RzID0gdGFyZ2V0UmVjdHMuZmlsdGVyKHQgPT4gY2hpbGRJZHMuaW5jbHVkZXModC5ub2RlLmZJZCgpKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5fZHJhZ0NvbnRleHQuZHJhZ2dhYmxlSXRlbXMucHVzaChuZXcgRk5vZGVEcm9wVG9Hcm91cERyYWdIYW5kbGVyKFxuICAgICAgdGhpcy5faW5qZWN0b3IsXG4gICAgICB0YXJnZXRSZWN0c1xuICAgICkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FuUHJlcGFyZURyb3BUb0dyb3VwKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9pc05vZGVEcmFnSGFuZGxlcigpIHx8IHRoaXMuX2lzRXh0ZXJuYWxJdGVtRHJhZ0hhbmRsZXIoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzTm9kZURyYWdIYW5kbGVyKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9kcmFnQ29udGV4dC5kcmFnZ2FibGVJdGVtc1xuICAgICAgLnNvbWUoKHgpID0+IHggaW5zdGFuY2VvZiBNb3ZlU3VtbWFyeURyYWdIYW5kbGVyKTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzRXh0ZXJuYWxJdGVtRHJhZ0hhbmRsZXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2RyYWdDb250ZXh0LmRyYWdnYWJsZUl0ZW1zXG4gICAgICAuc29tZSgoeCkgPT4geCBpbnN0YW5jZW9mIEZFeHRlcm5hbEl0ZW1EcmFnSGFuZGxlcik7XG4gIH1cblxuICBwcml2YXRlIF9jb2xsZWN0R3JvdXBpbmdUYXJnZXRSZWN0cygpOiBJTm9kZVdpdGhSZWN0W10ge1xuICAgIGNvbnN0IGRyYWdnZWQgPSB0aGlzLl9kcmFnZ2VkTm9kZXMoKTtcbiAgICBjb25zdCBkcmFnZ2luZ0dyb3VwID0gZHJhZ2dlZC5zb21lKCh4KSA9PiB4IGluc3RhbmNlb2YgRkdyb3VwRGlyZWN0aXZlKTtcblxuICAgIGNvbnN0IGRyYWdnZWROb2RlcyA9IHRoaXMuX2RyYWdnZWROb2Rlc1dpdGhQYXJlbnRzKGRyYWdnZWQpO1xuXG4gICAgcmV0dXJuIHRoaXMuX2VsaWdpYmxlVGFyZ2V0cyhkcmFnZ2VkTm9kZXMsIGRyYWdnaW5nR3JvdXApLm1hcCgobm9kZSkgPT4ge1xuICAgICAgY29uc3QgcmVjdCA9IHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8SVJlY3Q+KG5ldyBHZXROb3JtYWxpemVkRWxlbWVudFJlY3RSZXF1ZXN0KG5vZGUuaG9zdEVsZW1lbnQpKTtcbiAgICAgIHJldHVybiB7bm9kZSwgcmVjdDogdGhpcy5fdG9DYW52YXNSZWN0KHJlY3QpfTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2RyYWdnZWROb2RlcygpOiBGTm9kZUJhc2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2RyYWdDb250ZXh0LmRyYWdnYWJsZUl0ZW1zXG4gICAgICAuZmluZCgoeCkgPT4geCBpbnN0YW5jZW9mIE1vdmVTdW1tYXJ5RHJhZ0hhbmRsZXIpXG4gICAgICA/LmFsbERyYWdnZWROb2RlSGFuZGxlcnMubWFwKCh4KSA9PiB4Lm5vZGVPckdyb3VwKSB8fCBbXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBsaXN0IG9mIGRyYWdnZWQgbm9kZXMgZXh0ZW5kZWQgd2l0aCBhbGwgb2YgdGhlaXIgcGFyZW50IG5vZGVzLlxuICAgKlxuICAgKiBUaGlzIGVuc3VyZXMgdGhhdCBwYXJlbnQgbm9kZXMgYXJlIGV4Y2x1ZGVkIGZyb20gdGhlIHBvdGVudGlhbCBkcm9wIHRhcmdldHMsXG4gICAqIHNpbmNlIHRoZXkgYWxyZWFkeSBhY3QgYXMgY29udGFpbmVycyBmb3IgdGhlIGRyYWdnZWQgZWxlbWVudHMuXG4gICAqL1xuICBwcml2YXRlIF9kcmFnZ2VkTm9kZXNXaXRoUGFyZW50cyhub2RlczogRk5vZGVCYXNlW10pOiBGTm9kZUJhc2VbXSB7XG4gICAgcmV0dXJuIG5vZGVzLnJlZHVjZSgocmVzdWx0OiBGTm9kZUJhc2VbXSwgeDogRk5vZGVCYXNlKSA9PiB7XG4gICAgICByZXN1bHQucHVzaCh4LCAuLi50aGlzLl9tZWRpYXRvci5leGVjdXRlPEZOb2RlQmFzZVtdPihuZXcgR2V0UGFyZW50Tm9kZXNSZXF1ZXN0KHgpKSk7XG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH0sIFtdKTtcbiAgfVxuXG4gIHByaXZhdGUgX2VsaWdpYmxlVGFyZ2V0cyhkcmFnZ2VkOiBGTm9kZUJhc2VbXSwgZHJhZ2dpbmdHcm91cDogYm9vbGVhbik6IEZOb2RlQmFzZVtdIHtcbiAgICBjb25zdCBub25EcmFnZ2VkID0gdGhpcy5fYWxsTm9kZXNBbmRHcm91cHMuZmlsdGVyKHggPT4gIWRyYWdnZWQuaW5jbHVkZXMoeCkpO1xuICAgIHJldHVybiBkcmFnZ2luZ0dyb3VwID8gbm9uRHJhZ2dlZC5maWx0ZXIoeCA9PiB4IGluc3RhbmNlb2YgRkdyb3VwRGlyZWN0aXZlKSA6IG5vbkRyYWdnZWQ7XG4gIH1cblxuICBwcml2YXRlIF90b0NhbnZhc1JlY3QocmVjdDogSVJlY3QpOiBJUmVjdCB7XG4gICAgcmV0dXJuIFJlY3RFeHRlbnNpb25zLmluaXRpYWxpemUoXG4gICAgICByZWN0LnggKiB0aGlzLl9jYW52YXNUcmFuc2Zvcm0uc2NhbGUgKyB0aGlzLl9jYW52YXNQb3NpdGlvbi54LFxuICAgICAgcmVjdC55ICogdGhpcy5fY2FudmFzVHJhbnNmb3JtLnNjYWxlICsgdGhpcy5fY2FudmFzUG9zaXRpb24ueSxcbiAgICAgIHJlY3Qud2lkdGggKiB0aGlzLl9jYW52YXNUcmFuc2Zvcm0uc2NhbGUsXG4gICAgICByZWN0LmhlaWdodCAqIHRoaXMuX2NhbnZhc1RyYW5zZm9ybS5zY2FsZVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -1,3 +1,3 @@
1
- export * from './f-node-drop-to-group-preparation.execution';
2
- export * from './f-node-drop-to-group-preparation.request';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2YtZHJvcC10by1ncm91cC9kcm9wLXRvLWdyb3VwLXByZXBhcmF0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsOENBQThDLENBQUM7QUFFN0QsY0FBYyw0Q0FBNEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZi1ub2RlLWRyb3AtdG8tZ3JvdXAtcHJlcGFyYXRpb24uZXhlY3V0aW9uJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLW5vZGUtZHJvcC10by1ncm91cC1wcmVwYXJhdGlvbi5yZXF1ZXN0JztcbiJdfQ==
1
+ export * from './drop-to-group-preparation';
2
+ export * from './drop-to-group-preparation-request';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2YtZHJvcC10by1ncm91cC9kcm9wLXRvLWdyb3VwLXByZXBhcmF0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNkJBQTZCLENBQUM7QUFFNUMsY0FBYyxxQ0FBcUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZHJvcC10by1ncm91cC1wcmVwYXJhdGlvbic7XG5cbmV4cG9ydCAqIGZyb20gJy4vZHJvcC10by1ncm91cC1wcmVwYXJhdGlvbi1yZXF1ZXN0JztcbiJdfQ==
@@ -2,24 +2,28 @@ import { Directive } from '@angular/core';
2
2
  import { Point, PointExtensions, RectExtensions } from '@foblex/2d';
3
3
  import { FComponentsStore } from '../../f-storage';
4
4
  import { FDraggableDataContext } from '../f-draggable-data-context';
5
+ import { F_CSS_CLASS } from "../../domain";
5
6
  import * as i0 from "@angular/core";
6
7
  export class FNodeDropToGroupDragHandler {
7
- notDraggedNodesRects;
8
- _fComponentsStore;
9
- _fDraggableDataContext;
8
+ containersForDrop;
9
+ _store;
10
10
  fEventType = 'move-node-to-parent';
11
11
  _DEBOUNCE_TIME = 1;
12
12
  get _transform() {
13
- return this._fComponentsStore.fCanvas.transform;
13
+ return this._store.fCanvas.transform;
14
14
  }
15
15
  _onPointerDownPosition = PointExtensions.initialize();
16
16
  _debounceTimer = null;
17
17
  fNodeWithRect = null;
18
- constructor(_injector, notDraggedNodesRects) {
19
- this.notDraggedNodesRects = notDraggedNodesRects;
20
- this._fComponentsStore = _injector.get(FComponentsStore);
21
- this._fDraggableDataContext = _injector.get(FDraggableDataContext);
22
- this._onPointerDownPosition = this._fDraggableDataContext.onPointerDownPosition;
18
+ constructor(_injector, containersForDrop) {
19
+ this.containersForDrop = containersForDrop;
20
+ this._store = _injector.get(FComponentsStore);
21
+ this._onPointerDownPosition = _injector.get(FDraggableDataContext).onPointerDownPosition;
22
+ }
23
+ prepareDragSequence() {
24
+ this.containersForDrop.forEach(({ node }) => {
25
+ node.hostElement.classList.add(F_CSS_CLASS.GROUPING.DROP_ACTIVE);
26
+ });
23
27
  }
24
28
  _toggleParentNode(difference) {
25
29
  const isInclude = this._isNodeInsideAnotherNode(this._getNewPosition(difference));
@@ -34,7 +38,7 @@ export class FNodeDropToGroupDragHandler {
34
38
  return Point.fromPoint(this._onPointerDownPosition).add(difference).mult(this._transform.scale);
35
39
  }
36
40
  _isNodeInsideAnotherNode(point) {
37
- return this.notDraggedNodesRects.find((x) => RectExtensions.isIncludePoint(x.rect, point));
41
+ return this.containersForDrop.find((x) => RectExtensions.isIncludePoint(x.rect, point));
38
42
  }
39
43
  onPointerMove(difference) {
40
44
  if (this._debounceTimer) {
@@ -45,14 +49,17 @@ export class FNodeDropToGroupDragHandler {
45
49
  _markIncludeNode(nodeWithRect) {
46
50
  this._unmarkIncludeNode();
47
51
  this.fNodeWithRect = nodeWithRect;
48
- nodeWithRect.node.setClass('f-parent-for-drop');
52
+ nodeWithRect.node.setClass(F_CSS_CLASS.GROUPING.OVER_BOUNDARY);
49
53
  }
50
54
  _unmarkIncludeNode() {
51
- this.fNodeWithRect?.node.removeClass('f-parent-for-drop');
55
+ this.fNodeWithRect?.node.removeClass(F_CSS_CLASS.GROUPING.OVER_BOUNDARY);
52
56
  this.fNodeWithRect = null;
53
57
  }
54
58
  onPointerUp() {
55
59
  this._unmarkIncludeNode();
60
+ this.containersForDrop.forEach(({ node }) => {
61
+ node.hostElement.classList.remove(F_CSS_CLASS.GROUPING.DROP_ACTIVE);
62
+ });
56
63
  if (this._debounceTimer) {
57
64
  clearTimeout(this._debounceTimer);
58
65
  this._debounceTimer = null;
@@ -64,4 +71,4 @@ export class FNodeDropToGroupDragHandler {
64
71
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FNodeDropToGroupDragHandler, decorators: [{
65
72
  type: Directive
66
73
  }], ctorParameters: () => [{ type: i0.Injector }, { type: undefined }] });
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ub2RlLWRyb3AtdG8tZ3JvdXAuZHJhZy1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLWRyb3AtdG8tZ3JvdXAvZi1ub2RlLWRyb3AtdG8tZ3JvdXAuZHJhZy1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUEyQixLQUFLLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUU3RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVuRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7QUFHcEUsTUFBTSxPQUFPLDJCQUEyQjtJQW9CNUI7SUFsQk8saUJBQWlCLENBQW1CO0lBQ3BDLHNCQUFzQixDQUF3QjtJQUV4RCxVQUFVLEdBQUcscUJBQXFCLENBQUM7SUFFbEMsY0FBYyxHQUFHLENBQUMsQ0FBQztJQUUzQixJQUFZLFVBQVU7UUFDcEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBUSxDQUFDLFNBQVMsQ0FBQztJQUNuRCxDQUFDO0lBRU8sc0JBQXNCLEdBQVcsZUFBZSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQzlELGNBQWMsR0FBUSxJQUFJLENBQUM7SUFFNUIsYUFBYSxHQUF5QixJQUFJLENBQUM7SUFFbEQsWUFDRSxTQUFtQixFQUNYLG9CQUFxQztRQUFyQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQWlCO1FBRTdDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxTQUFTLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLHNCQUFzQixHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUNuRSxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLHFCQUFxQixDQUFDO0lBQ2xGLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxVQUFrQjtRQUMxQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQ2xGLElBQUksU0FBUyxFQUFFLENBQUM7WUFDZCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDbkMsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUM1QixDQUFDO0lBQ0gsQ0FBQztJQUVPLGVBQWUsQ0FBQyxVQUFrQjtRQUN4QyxPQUFPLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xHLENBQUM7SUFFTyx3QkFBd0IsQ0FBQyxLQUFhO1FBQzVDLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDN0YsQ0FBQztJQUVNLGFBQWEsQ0FBQyxVQUFrQjtRQUNyQyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN4QixZQUFZLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3BDLENBQUM7UUFFRCxJQUFJLENBQUMsY0FBYyxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUFDLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ2xHLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxZQUEyQjtRQUNsRCxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsYUFBYSxHQUFHLFlBQVksQ0FBQztRQUNsQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFTyxrQkFBa0I7UUFDeEIsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7SUFDNUIsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFFMUIsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDeEIsWUFBWSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUNsQyxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztRQUM3QixDQUFDO0lBQ0gsQ0FBQzt3R0F0RVUsMkJBQTJCOzRGQUEzQiwyQkFBMkI7OzRGQUEzQiwyQkFBMkI7a0JBRHZDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJUG9pbnQsIElUcmFuc2Zvcm1Nb2RlbCwgUG9pbnQsIFBvaW50RXh0ZW5zaW9ucywgUmVjdEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IElGRHJhZ0hhbmRsZXIgfSBmcm9tICcuLi9mLWRyYWctaGFuZGxlcic7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IElOb2RlV2l0aFJlY3QgfSBmcm9tICcuLi9kb21haW4nO1xuaW1wb3J0IHsgRkRyYWdnYWJsZURhdGFDb250ZXh0IH0gZnJvbSAnLi4vZi1kcmFnZ2FibGUtZGF0YS1jb250ZXh0JztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgRk5vZGVEcm9wVG9Hcm91cERyYWdIYW5kbGVyIGltcGxlbWVudHMgSUZEcmFnSGFuZGxlciB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZkRyYWdnYWJsZURhdGFDb250ZXh0OiBGRHJhZ2dhYmxlRGF0YUNvbnRleHQ7XG5cbiAgcHVibGljIGZFdmVudFR5cGUgPSAnbW92ZS1ub2RlLXRvLXBhcmVudCc7XG5cbiAgcHJpdmF0ZSBfREVCT1VOQ0VfVElNRSA9IDE7XG5cbiAgcHJpdmF0ZSBnZXQgX3RyYW5zZm9ybSgpOiBJVHJhbnNmb3JtTW9kZWwge1xuICAgIHJldHVybiB0aGlzLl9mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhLnRyYW5zZm9ybTtcbiAgfVxuXG4gIHByaXZhdGUgX29uUG9pbnRlckRvd25Qb3NpdGlvbjogSVBvaW50ID0gUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoKTtcbiAgcHJpdmF0ZSBfZGVib3VuY2VUaW1lcjogYW55ID0gbnVsbDtcblxuICBwdWJsaWMgZk5vZGVXaXRoUmVjdDogSU5vZGVXaXRoUmVjdCB8IG51bGwgPSBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSBub3REcmFnZ2VkTm9kZXNSZWN0czogSU5vZGVXaXRoUmVjdFtdLFxuICApIHtcbiAgICB0aGlzLl9mQ29tcG9uZW50c1N0b3JlID0gX2luamVjdG9yLmdldChGQ29tcG9uZW50c1N0b3JlKTtcbiAgICB0aGlzLl9mRHJhZ2dhYmxlRGF0YUNvbnRleHQgPSBfaW5qZWN0b3IuZ2V0KEZEcmFnZ2FibGVEYXRhQ29udGV4dCk7XG4gICAgdGhpcy5fb25Qb2ludGVyRG93blBvc2l0aW9uID0gdGhpcy5fZkRyYWdnYWJsZURhdGFDb250ZXh0Lm9uUG9pbnRlckRvd25Qb3NpdGlvbjtcbiAgfVxuXG4gIHByaXZhdGUgX3RvZ2dsZVBhcmVudE5vZGUoZGlmZmVyZW5jZTogSVBvaW50KTogdm9pZCB7XG4gICAgY29uc3QgaXNJbmNsdWRlID0gdGhpcy5faXNOb2RlSW5zaWRlQW5vdGhlck5vZGUodGhpcy5fZ2V0TmV3UG9zaXRpb24oZGlmZmVyZW5jZSkpO1xuICAgIGlmIChpc0luY2x1ZGUpIHtcbiAgICAgIHRoaXMuX21hcmtJbmNsdWRlTm9kZShpc0luY2x1ZGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl91bm1hcmtJbmNsdWRlTm9kZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2dldE5ld1Bvc2l0aW9uKGRpZmZlcmVuY2U6IElQb2ludCk6IElQb2ludCB7XG4gICAgcmV0dXJuIFBvaW50LmZyb21Qb2ludCh0aGlzLl9vblBvaW50ZXJEb3duUG9zaXRpb24pLmFkZChkaWZmZXJlbmNlKS5tdWx0KHRoaXMuX3RyYW5zZm9ybS5zY2FsZSk7XG4gIH1cblxuICBwcml2YXRlIF9pc05vZGVJbnNpZGVBbm90aGVyTm9kZShwb2ludDogSVBvaW50KTogSU5vZGVXaXRoUmVjdCB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMubm90RHJhZ2dlZE5vZGVzUmVjdHMuZmluZCgoeCkgPT4gUmVjdEV4dGVuc2lvbnMuaXNJbmNsdWRlUG9pbnQoeC5yZWN0LCBwb2ludCkpO1xuICB9XG5cbiAgcHVibGljIG9uUG9pbnRlck1vdmUoZGlmZmVyZW5jZTogSVBvaW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2RlYm91bmNlVGltZXIpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLl9kZWJvdW5jZVRpbWVyKTtcbiAgICB9XG5cbiAgICB0aGlzLl9kZWJvdW5jZVRpbWVyID0gc2V0VGltZW91dCgoKSA9PiB0aGlzLl90b2dnbGVQYXJlbnROb2RlKGRpZmZlcmVuY2UpLCB0aGlzLl9ERUJPVU5DRV9USU1FKTtcbiAgfVxuXG4gIHByaXZhdGUgX21hcmtJbmNsdWRlTm9kZShub2RlV2l0aFJlY3Q6IElOb2RlV2l0aFJlY3QpOiB2b2lkIHtcbiAgICB0aGlzLl91bm1hcmtJbmNsdWRlTm9kZSgpO1xuICAgIHRoaXMuZk5vZGVXaXRoUmVjdCA9IG5vZGVXaXRoUmVjdDtcbiAgICBub2RlV2l0aFJlY3Qubm9kZS5zZXRDbGFzcygnZi1wYXJlbnQtZm9yLWRyb3AnKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VubWFya0luY2x1ZGVOb2RlKCk6IHZvaWQge1xuICAgIHRoaXMuZk5vZGVXaXRoUmVjdD8ubm9kZS5yZW1vdmVDbGFzcygnZi1wYXJlbnQtZm9yLWRyb3AnKTtcbiAgICB0aGlzLmZOb2RlV2l0aFJlY3QgPSBudWxsO1xuICB9XG5cbiAgcHVibGljIG9uUG9pbnRlclVwKCk6IHZvaWQge1xuICAgIHRoaXMuX3VubWFya0luY2x1ZGVOb2RlKCk7XG5cbiAgICBpZiAodGhpcy5fZGVib3VuY2VUaW1lcikge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX2RlYm91bmNlVGltZXIpO1xuICAgICAgdGhpcy5fZGVib3VuY2VUaW1lciA9IG51bGw7XG4gICAgfVxuICB9XG59XG4iXX0=
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ub2RlLWRyb3AtdG8tZ3JvdXAuZHJhZy1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLWRyb3AtdG8tZ3JvdXAvZi1ub2RlLWRyb3AtdG8tZ3JvdXAuZHJhZy1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQVcsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUEwQixLQUFLLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBQyxNQUFNLFlBQVksQ0FBQztBQUUzRixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUVqRCxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUNsRSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sY0FBYyxDQUFDOztBQUd6QyxNQUFNLE9BQU8sMkJBQTJCO0lBbUI1QjtJQWpCTyxNQUFNLENBQW1CO0lBRW5DLFVBQVUsR0FBRyxxQkFBcUIsQ0FBQztJQUVsQyxjQUFjLEdBQUcsQ0FBQyxDQUFDO0lBRTNCLElBQVksVUFBVTtRQUNwQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBUSxDQUFDLFNBQVMsQ0FBQztJQUN4QyxDQUFDO0lBRU8sc0JBQXNCLEdBQVcsZUFBZSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQzlELGNBQWMsR0FBUSxJQUFJLENBQUM7SUFFNUIsYUFBYSxHQUF5QixJQUFJLENBQUM7SUFFbEQsWUFDRSxTQUFtQixFQUNYLGlCQUFrQztRQUFsQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQWlCO1FBRTFDLElBQUksQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxTQUFTLENBQUMsR0FBRyxDQUFDLHFCQUFxQixD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bGFyL2NvcmUnO1xuaW1wb3J0IHtJUG9pbnQsIElUcmFuc2Zvcm1Nb2RlbCwgUG9pbnQsIFBvaW50RXh0ZW5zaW9ucywgUmVjdEV4dGVuc2lvbnN9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHtJRkRyYWdIYW5kbGVyfSBmcm9tICcuLi9mLWRyYWctaGFuZGxlcic7XG5pbXBvcnQge0ZDb21wb25lbnRzU3RvcmV9IGZyb20gJy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQge0lOb2RlV2l0aFJlY3R9IGZyb20gJy4uL2RvbWFpbic7XG5pbXBvcnQge0ZEcmFnZ2FibGVEYXRhQ29udGV4dH0gZnJvbSAnLi4vZi1kcmFnZ2FibGUtZGF0YS1jb250ZXh0JztcbmltcG9ydCB7Rl9DU1NfQ0xBU1N9IGZyb20gXCIuLi8uLi9kb21haW5cIjtcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgRk5vZGVEcm9wVG9Hcm91cERyYWdIYW5kbGVyIGltcGxlbWVudHMgSUZEcmFnSGFuZGxlciB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfc3RvcmU6IEZDb21wb25lbnRzU3RvcmU7XG5cbiAgcHVibGljIGZFdmVudFR5cGUgPSAnbW92ZS1ub2RlLXRvLXBhcmVudCc7XG5cbiAgcHJpdmF0ZSBfREVCT1VOQ0VfVElNRSA9IDE7XG5cbiAgcHJpdmF0ZSBnZXQgX3RyYW5zZm9ybSgpOiBJVHJhbnNmb3JtTW9kZWwge1xuICAgIHJldHVybiB0aGlzLl9zdG9yZS5mQ2FudmFzIS50cmFuc2Zvcm07XG4gIH1cblxuICBwcml2YXRlIF9vblBvaW50ZXJEb3duUG9zaXRpb246IElQb2ludCA9IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCk7XG4gIHByaXZhdGUgX2RlYm91bmNlVGltZXI6IGFueSA9IG51bGw7XG5cbiAgcHVibGljIGZOb2RlV2l0aFJlY3Q6IElOb2RlV2l0aFJlY3QgfCBudWxsID0gbnVsbDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBfaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIHByaXZhdGUgY29udGFpbmVyc0ZvckRyb3A6IElOb2RlV2l0aFJlY3RbXSxcbiAgKSB7XG4gICAgdGhpcy5fc3RvcmUgPSBfaW5qZWN0b3IuZ2V0KEZDb21wb25lbnRzU3RvcmUpO1xuICAgIHRoaXMuX29uUG9pbnRlckRvd25Qb3NpdGlvbiA9IF9pbmplY3Rvci5nZXQoRkRyYWdnYWJsZURhdGFDb250ZXh0KS5vblBvaW50ZXJEb3duUG9zaXRpb247XG4gIH1cblxuICBwdWJsaWMgcHJlcGFyZURyYWdTZXF1ZW5jZSgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbnRhaW5lcnNGb3JEcm9wLmZvckVhY2goKHtub2RlfSkgPT4ge1xuICAgICAgbm9kZS5ob3N0RWxlbWVudC5jbGFzc0xpc3QuYWRkKEZfQ1NTX0NMQVNTLkdST1VQSU5HLkRST1BfQUNUSVZFKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX3RvZ2dsZVBhcmVudE5vZGUoZGlmZmVyZW5jZTogSVBvaW50KTogdm9pZCB7XG4gICAgY29uc3QgaXNJbmNsdWRlID0gdGhpcy5faXNOb2RlSW5zaWRlQW5vdGhlck5vZGUodGhpcy5fZ2V0TmV3UG9zaXRpb24oZGlmZmVyZW5jZSkpO1xuICAgIGlmIChpc0luY2x1ZGUpIHtcbiAgICAgIHRoaXMuX21hcmtJbmNsdWRlTm9kZShpc0luY2x1ZGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl91bm1hcmtJbmNsdWRlTm9kZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2dldE5ld1Bvc2l0aW9uKGRpZmZlcmVuY2U6IElQb2ludCk6IElQb2ludCB7XG4gICAgcmV0dXJuIFBvaW50LmZyb21Qb2ludCh0aGlzLl9vblBvaW50ZXJEb3duUG9zaXRpb24pLmFkZChkaWZmZXJlbmNlKS5tdWx0KHRoaXMuX3RyYW5zZm9ybS5zY2FsZSk7XG4gIH1cblxuICBwcml2YXRlIF9pc05vZGVJbnNpZGVBbm90aGVyTm9kZShwb2ludDogSVBvaW50KTogSU5vZGVXaXRoUmVjdCB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuY29udGFpbmVyc0ZvckRyb3AuZmluZCgoeCkgPT4gUmVjdEV4dGVuc2lvbnMuaXNJbmNsdWRlUG9pbnQoeC5yZWN0LCBwb2ludCkpO1xuICB9XG5cbiAgcHVibGljIG9uUG9pbnRlck1vdmUoZGlmZmVyZW5jZTogSVBvaW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2RlYm91bmNlVGltZXIpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLl9kZWJvdW5jZVRpbWVyKTtcbiAgICB9XG5cbiAgICB0aGlzLl9kZWJvdW5jZVRpbWVyID0gc2V0VGltZW91dCgoKSA9PiB0aGlzLl90b2dnbGVQYXJlbnROb2RlKGRpZmZlcmVuY2UpLCB0aGlzLl9ERUJPVU5DRV9USU1FKTtcbiAgfVxuXG4gIHByaXZhdGUgX21hcmtJbmNsdWRlTm9kZShub2RlV2l0aFJlY3Q6IElOb2RlV2l0aFJlY3QpOiB2b2lkIHtcbiAgICB0aGlzLl91bm1hcmtJbmNsdWRlTm9kZSgpO1xuICAgIHRoaXMuZk5vZGVXaXRoUmVjdCA9IG5vZGVXaXRoUmVjdDtcbiAgICBub2RlV2l0aFJlY3Qubm9kZS5zZXRDbGFzcyhGX0NTU19DTEFTUy5HUk9VUElORy5PVkVSX0JPVU5EQVJZKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VubWFya0luY2x1ZGVOb2RlKCk6IHZvaWQge1xuICAgIHRoaXMuZk5vZGVXaXRoUmVjdD8ubm9kZS5yZW1vdmVDbGFzcyhGX0NTU19DTEFTUy5HUk9VUElORy5PVkVSX0JPVU5EQVJZKTtcbiAgICB0aGlzLmZOb2RlV2l0aFJlY3QgPSBudWxsO1xuICB9XG5cbiAgcHVibGljIG9uUG9pbnRlclVwKCk6IHZvaWQge1xuICAgIHRoaXMuX3VubWFya0luY2x1ZGVOb2RlKCk7XG4gICAgdGhpcy5jb250YWluZXJzRm9yRHJvcC5mb3JFYWNoKCh7bm9kZX0pID0+IHtcbiAgICAgIG5vZGUuaG9zdEVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShGX0NTU19DTEFTUy5HUk9VUElORy5EUk9QX0FDVElWRSk7XG4gICAgfSk7XG4gICAgaWYgKHRoaXMuX2RlYm91bmNlVGltZXIpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLl9kZWJvdW5jZVRpbWVyKTtcbiAgICAgIHRoaXMuX2RlYm91bmNlVGltZXIgPSBudWxsO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -1,6 +1,7 @@
1
1
  export * from './drop-to-group-finalize';
2
2
  export * from './drop-to-group-preparation';
3
3
  export * from './f-node-drop-to-group.drag-handler';
4
+ export * from './sort-containers-for-drop-by-layer';
4
5
  export * from './f-drop-to-group.event';
5
6
  export * from './providers';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2YtZHJvcC10by1ncm91cC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDBCQUEwQixDQUFDO0FBRXpDLGNBQWMsNkJBQTZCLENBQUM7QUFFNUMsY0FBYyxxQ0FBcUMsQ0FBQztBQUVwRCxjQUFjLHlCQUF5QixDQUFDO0FBRXhDLGNBQWMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9kcm9wLXRvLWdyb3VwLWZpbmFsaXplJztcblxuZXhwb3J0ICogZnJvbSAnLi9kcm9wLXRvLWdyb3VwLXByZXBhcmF0aW9uJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLW5vZGUtZHJvcC10by1ncm91cC5kcmFnLWhhbmRsZXInO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtZHJvcC10by1ncm91cC5ldmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vcHJvdmlkZXJzJztcblxuIl19
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2YtZHJvcC10by1ncm91cC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDBCQUEwQixDQUFDO0FBRXpDLGNBQWMsNkJBQTZCLENBQUM7QUFFNUMsY0FBYyxxQ0FBcUMsQ0FBQztBQUVwRCxjQUFjLHFDQUFxQyxDQUFDO0FBRXBELGNBQWMseUJBQXlCLENBQUM7QUFFeEMsY0FBYyxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Ryb3AtdG8tZ3JvdXAtZmluYWxpemUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2Ryb3AtdG8tZ3JvdXAtcHJlcGFyYXRpb24nO1xuXG5leHBvcnQgKiBmcm9tICcuL2Ytbm9kZS1kcm9wLXRvLWdyb3VwLmRyYWctaGFuZGxlcic7XG5cbmV4cG9ydCAqIGZyb20gJy4vc29ydC1jb250YWluZXJzLWZvci1kcm9wLWJ5LWxheWVyJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWRyb3AtdG8tZ3JvdXAuZXZlbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL3Byb3ZpZGVycyc7XG5cbiJdfQ==
@@ -1,7 +1,9 @@
1
- import { FNodeDropToGroupPreparationExecution } from './drop-to-group-preparation';
2
- import { FNodeDropToGroupFinalizeExecution } from './drop-to-group-finalize';
1
+ import { DropToGroupPreparation } from './drop-to-group-preparation';
2
+ import { DropToGroupFinalize } from './drop-to-group-finalize';
3
+ import { SortContainersForDropByLayer } from './sort-containers-for-drop-by-layer';
3
4
  export const NODE_DROP_TO_GROUP_PROVIDERS = [
4
- FNodeDropToGroupPreparationExecution,
5
- FNodeDropToGroupFinalizeExecution
5
+ SortContainersForDropByLayer,
6
+ DropToGroupPreparation,
7
+ DropToGroupFinalize
6
8
  ];
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLWRyb3AtdG8tZ3JvdXAvcHJvdmlkZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ25GLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTdFLE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFHO0lBRTFDLG9DQUFvQztJQUVwQyxpQ0FBaUM7Q0FDbEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZOb2RlRHJvcFRvR3JvdXBQcmVwYXJhdGlvbkV4ZWN1dGlvbiB9IGZyb20gJy4vZHJvcC10by1ncm91cC1wcmVwYXJhdGlvbic7XG5pbXBvcnQgeyBGTm9kZURyb3BUb0dyb3VwRmluYWxpemVFeGVjdXRpb24gfSBmcm9tICcuL2Ryb3AtdG8tZ3JvdXAtZmluYWxpemUnO1xuXG5leHBvcnQgY29uc3QgTk9ERV9EUk9QX1RPX0dST1VQX1BST1ZJREVSUyA9IFtcblxuICBGTm9kZURyb3BUb0dyb3VwUHJlcGFyYXRpb25FeGVjdXRpb24sXG5cbiAgRk5vZGVEcm9wVG9Hcm91cEZpbmFsaXplRXhlY3V0aW9uXG5dO1xuIl19
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLWRyb3AtdG8tZ3JvdXAvcHJvdmlkZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBQyw0QkFBNEIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBRWpGLE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFHO0lBRTFDLDRCQUE0QjtJQUU1QixzQkFBc0I7SUFFdEIsbUJBQW1CO0NBQ3BCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEcm9wVG9Hcm91cFByZXBhcmF0aW9uIH0gZnJvbSAnLi9kcm9wLXRvLWdyb3VwLXByZXBhcmF0aW9uJztcbmltcG9ydCB7IERyb3BUb0dyb3VwRmluYWxpemUgfSBmcm9tICcuL2Ryb3AtdG8tZ3JvdXAtZmluYWxpemUnO1xuaW1wb3J0IHtTb3J0Q29udGFpbmVyc0ZvckRyb3BCeUxheWVyfSBmcm9tICcuL3NvcnQtY29udGFpbmVycy1mb3ItZHJvcC1ieS1sYXllcic7XG5cbmV4cG9ydCBjb25zdCBOT0RFX0RST1BfVE9fR1JPVVBfUFJPVklERVJTID0gW1xuXG4gIFNvcnRDb250YWluZXJzRm9yRHJvcEJ5TGF5ZXIsXG5cbiAgRHJvcFRvR3JvdXBQcmVwYXJhdGlvbixcblxuICBEcm9wVG9Hcm91cEZpbmFsaXplXG5dO1xuIl19
@@ -0,0 +1,3 @@
1
+ export * from './sort-containers-for-drop-by-layer';
2
+ export * from './sort-containers-for-drop-by-layer-request';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2YtZHJvcC10by1ncm91cC9zb3J0LWNvbnRhaW5lcnMtZm9yLWRyb3AtYnktbGF5ZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQ0FBcUMsQ0FBQztBQUVwRCxjQUFjLDZDQUE2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zb3J0LWNvbnRhaW5lcnMtZm9yLWRyb3AtYnktbGF5ZXInO1xuXG5leHBvcnQgKiBmcm9tICcuL3NvcnQtY29udGFpbmVycy1mb3ItZHJvcC1ieS1sYXllci1yZXF1ZXN0JztcbiJdfQ==
@@ -0,0 +1,8 @@
1
+ export class SortContainersForDropByLayerRequest {
2
+ containersForDrop;
3
+ static fToken = Symbol('SortContainersForDropByLayerRequest');
4
+ constructor(containersForDrop) {
5
+ this.containersForDrop = containersForDrop;
6
+ }
7
+ }
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1jb250YWluZXJzLWZvci1kcm9wLWJ5LWxheWVyLXJlcXVlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2YtZHJvcC10by1ncm91cC9zb3J0LWNvbnRhaW5lcnMtZm9yLWRyb3AtYnktbGF5ZXIvc29ydC1jb250YWluZXJzLWZvci1kcm9wLWJ5LWxheWVyLXJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLG1DQUFtQztJQUlyQztJQUhULE1BQU0sQ0FBVSxNQUFNLEdBQUcsTUFBTSxDQUFDLHFDQUFxQyxDQUFDLENBQUM7SUFFdkUsWUFDUyxpQkFBa0M7UUFBbEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFpQjtJQUUzQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJTm9kZVdpdGhSZWN0fSBmcm9tIFwiLi4vLi4vZG9tYWluXCI7XG5cbmV4cG9ydCBjbGFzcyBTb3J0Q29udGFpbmVyc0ZvckRyb3BCeUxheWVyUmVxdWVzdCB7XG4gIHN0YXRpYyByZWFkb25seSBmVG9rZW4gPSBTeW1ib2woJ1NvcnRDb250YWluZXJzRm9yRHJvcEJ5TGF5ZXJSZXF1ZXN0Jyk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGNvbnRhaW5lcnNGb3JEcm9wOiBJTm9kZVdpdGhSZWN0W11cbiAgKSB7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,48 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { FExecutionRegister } from '@foblex/mediator';
4
+ import { SortContainersForDropByLayerRequest } from "./sort-containers-for-drop-by-layer-request";
5
+ import * as i0 from "@angular/core";
6
+ let SortContainersForDropByLayer = class SortContainersForDropByLayer {
7
+ handle({ containersForDrop }) {
8
+ const decorated = containersForDrop.map((item, idx) => ({ item, idx }));
9
+ decorated.sort((a, b) => {
10
+ const elA = a.item.node.hostElement;
11
+ const elB = b.item.node.hostElement;
12
+ const domOrder = this._domOrder(elA, elB);
13
+ if (domOrder !== 0)
14
+ return -domOrder;
15
+ return a.idx - b.idx;
16
+ });
17
+ return decorated.map(d => d.item);
18
+ }
19
+ _domOrder(a, b) {
20
+ if (a === b)
21
+ return 0;
22
+ const pos = a.compareDocumentPosition(b);
23
+ if (pos & Node.DOCUMENT_POSITION_FOLLOWING)
24
+ return -1;
25
+ if (pos & Node.DOCUMENT_POSITION_PRECEDING)
26
+ return 1;
27
+ if (pos & Node.DOCUMENT_POSITION_DISCONNECTED) {
28
+ const ar = a.getBoundingClientRect?.() ?? { top: 0, left: 0 };
29
+ const br = b.getBoundingClientRect?.() ?? { top: 0, left: 0 };
30
+ if (ar.top !== br.top)
31
+ return ar.top < br.top ? -1 : 1;
32
+ if (ar.left !== br.left)
33
+ return ar.left < br.left ? -1 : 1;
34
+ return 0;
35
+ }
36
+ return 0;
37
+ }
38
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SortContainersForDropByLayer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
39
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SortContainersForDropByLayer });
40
+ };
41
+ SortContainersForDropByLayer = __decorate([
42
+ FExecutionRegister(SortContainersForDropByLayerRequest)
43
+ ], SortContainersForDropByLayer);
44
+ export { SortContainersForDropByLayer };
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SortContainersForDropByLayer, decorators: [{
46
+ type: Injectable
47
+ }] });
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1jb250YWluZXJzLWZvci1kcm9wLWJ5LWxheWVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLWRyb3AtdG8tZ3JvdXAvc29ydC1jb250YWluZXJzLWZvci1kcm9wLWJ5LWxheWVyL3NvcnQtY29udGFpbmVycy1mb3ItZHJvcC1ieS1sYXllci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsa0JBQWtCLEVBQWEsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRSxPQUFPLEVBQUMsbUNBQW1DLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQzs7QUFLekYsSUFBTSw0QkFBNEIsR0FBbEMsTUFBTSw0QkFBNEI7SUFFaEMsTUFBTSxDQUFDLEVBQUUsaUJBQWlCLEVBQXVDO1FBQ3RFLE1BQU0sU0FBUyxHQUFHLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRXhFLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDdEIsTUFBTSxHQUFHLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO1lBQ3BDLE1BQU0sR0FBRyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQztZQUVwQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUUxQyxJQUFJLFFBQVEsS0FBSyxDQUFDO2dCQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUM7WUFFckMsT0FBTyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVPLFNBQVMsQ0FBQyxDQUFVLEVBQUUsQ0FBVTtRQUN0QyxJQUFJLENBQUMsS0FBSyxDQUFDO1lBQUUsT0FBTyxDQUFDLENBQUM7UUFFdEIsTUFBTSxHQUFHLEdBQUcsQ0FBQyxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRXpDLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQywyQkFBMkI7WUFBRyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQ3ZELElBQUksR0FBRyxHQUFHLElBQUksQ0FBQywyQkFBMkI7WUFBRyxPQUFRLENBQUMsQ0FBQztRQUV2RCxJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsOEJBQThCLEVBQUUsQ0FBQztZQUM5QyxNQUFNLEVBQUUsR0FBSSxDQUFpQixDQUFDLHFCQUFxQixFQUFFLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQy9FLE1BQU0sRUFBRSxHQUFJLENBQWlCLENBQUMscUJBQXFCLEVBQUUsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFFL0UsSUFBSSxFQUFFLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxHQUFHO2dCQUFHLE9BQU8sRUFBRSxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hELElBQUksRUFBRSxDQUFDLElBQUksS0FBSyxFQUFFLENBQUMsSUFBSTtnQkFBRSxPQUFPLEVBQUUsQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUUzRCxPQUFPLENBQUMsQ0FBQztRQUNYLENBQUM7UUFFRCxPQUFPLENBQUMsQ0FBQztJQUNYLENBQUM7d0dBdENVLDRCQUE0Qjs0R0FBNUIsNEJBQTRCOztBQUE1Qiw0QkFBNEI7SUFEeEMsa0JBQWtCLENBQUMsbUNBQW1DLENBQUM7R0FDM0MsNEJBQTRCLENBdUN4Qzs7NEZBdkNZLDRCQUE0QjtrQkFGeEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0ZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbn0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQge1NvcnRDb250YWluZXJzRm9yRHJvcEJ5TGF5ZXJSZXF1ZXN0fSBmcm9tIFwiLi9zb3J0LWNvbnRhaW5lcnMtZm9yLWRyb3AtYnktbGF5ZXItcmVxdWVzdFwiO1xuaW1wb3J0IHtJTm9kZVdpdGhSZWN0fSBmcm9tIFwiLi4vLi4vZG9tYWluXCI7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoU29ydENvbnRhaW5lcnNGb3JEcm9wQnlMYXllclJlcXVlc3QpXG5leHBvcnQgY2xhc3MgU29ydENvbnRhaW5lcnNGb3JEcm9wQnlMYXllciBpbXBsZW1lbnRzIElFeGVjdXRpb248U29ydENvbnRhaW5lcnNGb3JEcm9wQnlMYXllclJlcXVlc3QsIElOb2RlV2l0aFJlY3RbXT4ge1xuXG4gIHB1YmxpYyBoYW5kbGUoeyBjb250YWluZXJzRm9yRHJvcCB9OiBTb3J0Q29udGFpbmVyc0ZvckRyb3BCeUxheWVyUmVxdWVzdCk6IElOb2RlV2l0aFJlY3RbXSB7XG4gICAgY29uc3QgZGVjb3JhdGVkID0gY29udGFpbmVyc0ZvckRyb3AubWFwKChpdGVtLCBpZHgpID0+ICh7IGl0ZW0sIGlkeCB9KSk7XG5cbiAgICBkZWNvcmF0ZWQuc29ydCgoYSwgYikgPT4ge1xuICAgICAgY29uc3QgZWxBID0gYS5pdGVtLm5vZGUuaG9zdEVsZW1lbnQ7XG4gICAgICBjb25zdCBlbEIgPSBiLml0ZW0ubm9kZS5ob3N0RWxlbWVudDtcblxuICAgICAgY29uc3QgZG9tT3JkZXIgPSB0aGlzLl9kb21PcmRlcihlbEEsIGVsQik7XG5cbiAgICAgIGlmIChkb21PcmRlciAhPT0gMCkgcmV0dXJuIC1kb21PcmRlcjtcblxuICAgICAgcmV0dXJuIGEuaWR4IC0gYi5pZHg7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gZGVjb3JhdGVkLm1hcChkID0+IGQuaXRlbSk7XG4gIH1cblxuICBwcml2YXRlIF9kb21PcmRlcihhOiBFbGVtZW50LCBiOiBFbGVtZW50KTogbnVtYmVyIHtcbiAgICBpZiAoYSA9PT0gYikgcmV0dXJuIDA7XG5cbiAgICBjb25zdCBwb3MgPSBhLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKGIpO1xuXG4gICAgaWYgKHBvcyAmIE5vZGUuRE9DVU1FTlRfUE9TSVRJT05fRk9MTE9XSU5HKSAgcmV0dXJuIC0xO1xuICAgIGlmIChwb3MgJiBOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX1BSRUNFRElORykgIHJldHVybiAgMTtcblxuICAgIGlmIChwb3MgJiBOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX0RJU0NPTk5FQ1RFRCkge1xuICAgICAgY29uc3QgYXIgPSAoYSBhcyBIVE1MRWxlbWVudCkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0Py4oKSA/PyB7IHRvcDogMCwgbGVmdDogMCB9O1xuICAgICAgY29uc3QgYnIgPSAoYiBhcyBIVE1MRWxlbWVudCkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0Py4oKSA/PyB7IHRvcDogMCwgbGVmdDogMCB9O1xuXG4gICAgICBpZiAoYXIudG9wICE9PSBici50b3ApICByZXR1cm4gYXIudG9wIDwgYnIudG9wID8gLTEgOiAxO1xuICAgICAgaWYgKGFyLmxlZnQgIT09IGJyLmxlZnQpIHJldHVybiBhci5sZWZ0IDwgYnIubGVmdCA/IC0xIDogMTtcblxuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuXG4gICAgcmV0dXJuIDA7XG4gIH1cbn1cbiJdfQ==
@@ -4,19 +4,19 @@ import { CalculateConnectionLineByBehaviorRequest, GetConnectorAndRectRequest }
4
4
  import { FComponentsStore } from '../../../f-storage';
5
5
  export class BaseConnectionDragHandler {
6
6
  fConnection;
7
- _fMediator;
8
- _fComponentsStore;
7
+ _mediator;
8
+ _store;
9
9
  _fOutputWithRect;
10
10
  _fInputWithRect;
11
11
  get _fOutput() {
12
- const result = this._fComponentsStore.fOutputs.find((x) => x.fId === this.fConnection.fOutputId);
12
+ const result = this._store.fOutputs.find((x) => x.fId === this.fConnection.fOutputId);
13
13
  if (!result) {
14
14
  throw new Error(this._connectorNotFoundPrefix(`fOutput with id ${this.fConnection.fOutputId} not found`));
15
15
  }
16
16
  return result;
17
17
  }
18
18
  get _fInput() {
19
- const result = this._fComponentsStore.fInputs.find((x) => x.fId === this.fConnection.fInputId);
19
+ const result = this._store.fInputs.find((x) => x.fId === this.fConnection.fInputId);
20
20
  if (!result) {
21
21
  throw new Error(this._connectorNotFoundPrefix(`fInput with id ${this.fConnection.fInputId} not found`));
22
22
  }
@@ -26,13 +26,13 @@ export class BaseConnectionDragHandler {
26
26
  _targetDifference = PointExtensions.initialize();
27
27
  constructor(_injector, fConnection) {
28
28
  this.fConnection = fConnection;
29
- this._fMediator = _injector.get(FMediator);
30
- this._fComponentsStore = _injector.get(FComponentsStore);
29
+ this._mediator = _injector.get(FMediator);
30
+ this._store = _injector.get(FComponentsStore);
31
31
  this._initialize();
32
32
  }
33
33
  _initialize() {
34
- this._fOutputWithRect = this._fMediator.execute(new GetConnectorAndRectRequest(this._fOutput));
35
- this._fInputWithRect = this._fMediator.execute(new GetConnectorAndRectRequest(this._fInput));
34
+ this._fOutputWithRect = this._mediator.execute(new GetConnectorAndRectRequest(this._fOutput));
35
+ this._fInputWithRect = this._mediator.execute(new GetConnectorAndRectRequest(this._fInput));
36
36
  }
37
37
  setSourceDifference(difference) {
38
38
  this._sourceDifference = difference;
@@ -44,7 +44,7 @@ export class BaseConnectionDragHandler {
44
44
  this._redrawConnection(this._recalculateConnection());
45
45
  }
46
46
  _recalculateConnection() {
47
- return this._fMediator.execute(new CalculateConnectionLineByBehaviorRequest(RoundedRect.fromRoundedRect(this._fOutputWithRect.fRect).addPoint(this._sourceDifference), RoundedRect.fromRoundedRect(this._fInputWithRect.fRect).addPoint(this._targetDifference), this.fConnection.fBehavior, this._fOutputWithRect.fConnector.fConnectableSide, this._fInputWithRect.fConnector.fConnectableSide));
47
+ return this._mediator.execute(new CalculateConnectionLineByBehaviorRequest(RoundedRect.fromRoundedRect(this._fOutputWithRect.fRect).addPoint(this._sourceDifference), RoundedRect.fromRoundedRect(this._fInputWithRect.fRect).addPoint(this._targetDifference), this.fConnection.fBehavior, this._fOutputWithRect.fConnector.fConnectableSide, this._fInputWithRect.fConnector.fConnectableSide));
48
48
  }
49
49
  _redrawConnection(line) {
50
50
  this.fConnection.setLine(line, this._fOutputWithRect.fConnector.fConnectableSide, this._fInputWithRect.fConnector.fConnectableSide);
@@ -54,4 +54,4 @@ export class BaseConnectionDragHandler {
54
54
  return `ConnectionDragHandler Error: Connection From (fOutput)${this.fConnection.fOutputId} To (fInput)${this.fConnection.fInputId}. ${message}. Please ensure that all f-connections are associated with existing connectors`;
55
55
  }
56
56
  }
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jb25uZWN0aW9uLmRyYWctaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1ub2RlLW1vdmUvY29ubmVjdGlvbi1kcmFnLWhhbmRsZXJzL2Jhc2UtY29ubmVjdGlvbi5kcmFnLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixlQUFlLEVBQUUsV0FBVyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM3QyxPQUFPLEVBQ0wsd0NBQXdDLEVBQ3hDLDBCQUEwQixFQUUzQixNQUFNLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBSXRELE1BQU0sT0FBTyx5QkFBeUI7SUE2QjNCO0lBM0JRLFVBQVUsQ0FBWTtJQUN0QixpQkFBaUIsQ0FBbUI7SUFFN0MsZ0JBQWdCLENBQXFCO0lBQ3JDLGVBQWUsQ0FBcUI7SUFFNUMsSUFBWSxRQUFRO1FBQ2xCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFFLENBQUM7UUFDbEcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ1osTUFBTSxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsbUJBQW9CLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBVSxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBQzlHLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQsSUFBWSxPQUFPO1FBQ2pCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FB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cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUxpbmUsIElQb2ludCwgUG9pbnRFeHRlbnNpb25zLCBSb3VuZGVkUmVjdCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgRk1lZGlhdG9yIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQge1xuICBDYWxjdWxhdGVDb25uZWN0aW9uTGluZUJ5QmVoYXZpb3JSZXF1ZXN0LFxuICBHZXRDb25uZWN0b3JBbmRSZWN0UmVxdWVzdCxcbiAgSUNvbm5lY3RvckFuZFJlY3Rcbn0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IEZDb25uZWN0b3JCYXNlIH0gZnJvbSAnLi4vLi4vLi4vZi1jb25uZWN0b3JzJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgRkNvbm5lY3Rpb25CYXNlIH0gZnJvbSAnLi4vLi4vLi4vZi1jb25uZWN0aW9uJztcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBjbGFzcyBCYXNlQ29ubmVjdGlvbkRyYWdIYW5kbGVyIHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9mTWVkaWF0b3I6IEZNZWRpYXRvcjtcbiAgcHJpdmF0ZSByZWFkb25seSBfZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZTtcblxuICBwcml2YXRlIF9mT3V0cHV0V2l0aFJlY3QhOiBJQ29ubmVjdG9yQW5kUmVjdDtcbiAgcHJpdmF0ZSBfZklucHV0V2l0aFJlY3QhOiBJQ29ubmVjdG9yQW5kUmVjdDtcblxuICBwcml2YXRlIGdldCBfZk91dHB1dCgpOiBGQ29ubmVjdG9yQmFzZSB7XG4gICAgY29uc3QgcmVzdWx0ID0gdGhpcy5fZkNvbXBvbmVudHNTdG9yZS5mT3V0cHV0cy5maW5kKCh4KSA9PiB4LmZJZCA9PT0gdGhpcy5mQ29ubmVjdGlvbi5mT3V0cHV0SWQpITtcbiAgICBpZiAoIXJlc3VsdCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKHRoaXMuX2Nvbm5lY3Rvck5vdEZvdW5kUHJlZml4KGBmT3V0cHV0IHdpdGggaWQgJHsgdGhpcy5mQ29ubmVjdGlvbi5mT3V0cHV0SWQgfSBub3QgZm91bmRgKSk7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBwcml2YXRlIGdldCBfZklucHV0KCk6IEZDb25uZWN0b3JCYXNlIHtcbiAgICBjb25zdCByZXN1bHQgPSB0aGlzLl9mQ29tcG9uZW50c1N0b3JlLmZJbnB1dHMuZmluZCgoeCkgPT4geC5mSWQgPT09IHRoaXMuZkNvbm5lY3Rpb24uZklucHV0SWQpITtcbiAgICBpZiAoIXJlc3VsdCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKHRoaXMuX2Nvbm5lY3Rvck5vdEZvdW5kUHJlZml4KGBmSW5wdXQgd2l0aCBpZCAkeyB0aGlzLmZDb25uZWN0aW9uLmZJbnB1dElkIH0gbm90IGZvdW5kYCkpO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHJpdmF0ZSBfc291cmNlRGlmZmVyZW5jZSA9IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCk7XG4gIHByaXZhdGUgX3RhcmdldERpZmZlcmVuY2UgPSBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHVibGljIGZDb25uZWN0aW9uOiBGQ29ubmVjdGlvbkJhc2UsXG4gICkge1xuICAgIHRoaXMuX2ZNZWRpYXRvciA9IF9pbmplY3Rvci5nZXQoRk1lZGlhdG9yKTtcbiAgICB0aGlzLl9mQ29tcG9uZW50c1N0b3JlID0gX2luamVjdG9yLmdldChGQ29tcG9uZW50c1N0b3JlKTtcbiAgICB0aGlzLl9pbml0aWFsaXplKCk7XG4gIH1cblxuICBwcml2YXRlIF9pbml0aWFsaXplKCk6IHZvaWQge1xuICAgIHRoaXMuX2ZPdXRwdXRXaXRoUmVjdCA9IHRoaXMuX2ZNZWRpYXRvci5leGVjdXRlPElDb25uZWN0b3JBbmRSZWN0PihuZXcgR2V0Q29ubmVjdG9yQW5kUmVjdFJlcXVlc3QodGhpcy5fZk91dHB1dCkpO1xuICAgIHRoaXMuX2ZJbnB1dFdpdGhSZWN0ID0gdGhpcy5fZk1lZGlhdG9yLmV4ZWN1dGU8SUNvbm5lY3RvckFuZFJlY3Q+KG5ldyBHZXRDb25uZWN0b3JBbmRSZWN0UmVxdWVzdCh0aGlzLl9mSW5wdXQpKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRTb3VyY2VEaWZmZXJlbmNlKGRpZmZlcmVuY2U6IElQb2ludCk6IHZvaWQge1xuICAgIHRoaXMuX3NvdXJjZURpZmZlcmVuY2UgPSBkaWZmZXJlbmNlO1xuICB9XG5cbiAgcHVibGljIHNldFRhcmdldERpZmZlcmVuY2UoZGlmZmVyZW5jZTogSVBvaW50KTogdm9pZCB7XG4gICAgdGhpcy5fdGFyZ2V0RGlmZmVyZW5jZSA9IGRpZmZlcmVuY2U7XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVkcmF3KCk6IHZvaWQge1xuICAgIHRoaXMuX3JlZHJhd0Nvbm5lY3Rpb24odGhpcy5fcmVjYWxjdWxhdGVDb25uZWN0aW9uKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVjYWxjdWxhdGVDb25uZWN0aW9uKCk6IElMaW5lIHtcbiAgICByZXR1cm4gdGhpcy5fZk1lZGlhdG9yLmV4ZWN1dGU8SUxpbmU+KG5ldyBDYWxjdWxhdGVDb25uZWN0aW9uTGluZUJ5QmVoYXZpb3JSZXF1ZXN0KFxuICAgICAgUm91bmRlZFJlY3QuZnJvbVJvdW5kZWRSZWN0KHRoaXMuX2ZPdXRwdXRXaXRoUmVjdC5mUmVjdCkuYWRkUG9pbnQodGhpcy5fc291cmNlRGlmZmVyZW5jZSksXG4gICAgICBSb3VuZGVkUmVjdC5mcm9tUm91bmRlZFJlY3QodGhpcy5fZklucHV0V2l0aFJlY3QuZlJlY3QpLmFkZFBvaW50KHRoaXMuX3RhcmdldERpZmZlcmVuY2UpLFxuICAgICAgdGhpcy5mQ29ubmVjdGlvbi5mQmVoYXZpb3IsXG4gICAgICB0aGlzLl9mT3V0cHV0V2l0aFJlY3QuZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlLFxuICAgICAgdGhpcy5fZklucHV0V2l0aFJlY3QuZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlXG4gICAgKSk7XG4gIH1cblxuICBwcml2YXRlIF9yZWRyYXdDb25uZWN0aW9uKGxpbmU6IElMaW5lKTogdm9pZCB7XG4gICAgdGhpcy5mQ29ubmVjdGlvbi5zZXRMaW5lKFxuICAgICAgbGluZSxcbiAgICAgIHRoaXMuX2ZPdXRwdXRXaXRoUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsXG4gICAgICB0aGlzLl9mSW5wdXRXaXRoUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGVcbiAgICApO1xuICAgIHRoaXMuZkNvbm5lY3Rpb24ucmVkcmF3KCk7XG4gIH1cblxuICBwcml2YXRlIF9jb25uZWN0b3JOb3RGb3VuZFByZWZpeChtZXNzYWdlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBgQ29ubmVjdGlvbkRyYWdIYW5kbGVyIEVycm9yOiBDb25uZWN0aW9uIEZyb20gKGZPdXRwdXQpJHsgdGhpcy5mQ29ubmVjdGlvbi5mT3V0cHV0SWQgfSBUbyAoZklucHV0KSR7IHRoaXMuZkNvbm5lY3Rpb24uZklucHV0SWQgfS4gJHsgbWVzc2FnZSB9LiBQbGVhc2UgZW5zdXJlIHRoYXQgYWxsIGYtY29ubmVjdGlvbnMgYXJlIGFzc29jaWF0ZWQgd2l0aCBleGlzdGluZyBjb25uZWN0b3JzYDtcbiAgfVxufVxuIl19
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jb25uZWN0aW9uLmRyYWctaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1ub2RlLW1vdmUvY29ubmVjdGlvbi1kcmFnLWhhbmRsZXJzL2Jhc2UtY29ubmVjdGlvbi5kcmFnLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixlQUFlLEVBQUUsV0FBVyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM3QyxPQUFPLEVBQ0wsd0NBQXdDLEVBQ3hDLDBCQUEwQixFQUUzQixNQUFNLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBSXRELE1BQU0sT0FBTyx5QkFBeUI7SUE2QjNCO0lBM0JRLFNBQVMsQ0FBWTtJQUNyQixNQUFNLENBQW1CO0lBRWxDLGdCQUFnQixDQUFxQjtJQUNyQyxlQUFlLENBQXFCO0lBRTVDLElBQVksUUFBUTtRQUNsQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUUsQ0FBQztRQUN2RixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDWixNQUFNLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxtQkFBb0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFVLFlBQVksQ0FBQyxDQUFDLENBQUM7UUFDOUcsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxJQUFZLE9BQU87UUFDakIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1B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ZW50IjpbImltcG9ydCB7IElMaW5lLCBJUG9pbnQsIFBvaW50RXh0ZW5zaW9ucywgUm91bmRlZFJlY3QgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZNZWRpYXRvciB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHtcbiAgQ2FsY3VsYXRlQ29ubmVjdGlvbkxpbmVCeUJlaGF2aW9yUmVxdWVzdCxcbiAgR2V0Q29ubmVjdG9yQW5kUmVjdFJlcXVlc3QsXG4gIElDb25uZWN0b3JBbmRSZWN0XG59IGZyb20gJy4uLy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBGQ29ubmVjdG9yQmFzZSB9IGZyb20gJy4uLy4uLy4uL2YtY29ubmVjdG9ycyc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZDb25uZWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uLy4uL2YtY29ubmVjdGlvbic7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgY2xhc3MgQmFzZUNvbm5lY3Rpb25EcmFnSGFuZGxlciB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbWVkaWF0b3I6IEZNZWRpYXRvcjtcbiAgcHJpdmF0ZSByZWFkb25seSBfc3RvcmU6IEZDb21wb25lbnRzU3RvcmU7XG5cbiAgcHJpdmF0ZSBfZk91dHB1dFdpdGhSZWN0ITogSUNvbm5lY3RvckFuZFJlY3Q7XG4gIHByaXZhdGUgX2ZJbnB1dFdpdGhSZWN0ITogSUNvbm5lY3RvckFuZFJlY3Q7XG5cbiAgcHJpdmF0ZSBnZXQgX2ZPdXRwdXQoKTogRkNvbm5lY3RvckJhc2Uge1xuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuX3N0b3JlLmZPdXRwdXRzLmZpbmQoKHgpID0+IHguZklkID09PSB0aGlzLmZDb25uZWN0aW9uLmZPdXRwdXRJZCkhO1xuICAgIGlmICghcmVzdWx0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IodGhpcy5fY29ubmVjdG9yTm90Rm91bmRQcmVmaXgoYGZPdXRwdXQgd2l0aCBpZCAkeyB0aGlzLmZDb25uZWN0aW9uLmZPdXRwdXRJZCB9IG5vdCBmb3VuZGApKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF9mSW5wdXQoKTogRkNvbm5lY3RvckJhc2Uge1xuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuX3N0b3JlLmZJbnB1dHMuZmluZCgoeCkgPT4geC5mSWQgPT09IHRoaXMuZkNvbm5lY3Rpb24uZklucHV0SWQpITtcbiAgICBpZiAoIXJlc3VsdCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKHRoaXMuX2Nvbm5lY3Rvck5vdEZvdW5kUHJlZml4KGBmSW5wdXQgd2l0aCBpZCAkeyB0aGlzLmZDb25uZWN0aW9uLmZJbnB1dElkIH0gbm90IGZvdW5kYCkpO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHJpdmF0ZSBfc291cmNlRGlmZmVyZW5jZSA9IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCk7XG4gIHByaXZhdGUgX3RhcmdldERpZmZlcmVuY2UgPSBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHVibGljIGZDb25uZWN0aW9uOiBGQ29ubmVjdGlvbkJhc2UsXG4gICkge1xuICAgIHRoaXMuX21lZGlhdG9yID0gX2luamVjdG9yLmdldChGTWVkaWF0b3IpO1xuICAgIHRoaXMuX3N0b3JlID0gX2luamVjdG9yLmdldChGQ29tcG9uZW50c1N0b3JlKTtcbiAgICB0aGlzLl9pbml0aWFsaXplKCk7XG4gIH1cblxuICBwcml2YXRlIF9pbml0aWFsaXplKCk6IHZvaWQge1xuICAgIHRoaXMuX2ZPdXRwdXRXaXRoUmVjdCA9IHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8SUNvbm5lY3RvckFuZFJlY3Q+KG5ldyBHZXRDb25uZWN0b3JBbmRSZWN0UmVxdWVzdCh0aGlzLl9mT3V0cHV0KSk7XG4gICAgdGhpcy5fZklucHV0V2l0aFJlY3QgPSB0aGlzLl9tZWRpYXRvci5leGVjdXRlPElDb25uZWN0b3JBbmRSZWN0PihuZXcgR2V0Q29ubmVjdG9yQW5kUmVjdFJlcXVlc3QodGhpcy5fZklucHV0KSk7XG4gIH1cblxuICBwdWJsaWMgc2V0U291cmNlRGlmZmVyZW5jZShkaWZmZXJlbmNlOiBJUG9pbnQpOiB2b2lkIHtcbiAgICB0aGlzLl9zb3VyY2VEaWZmZXJlbmNlID0gZGlmZmVyZW5jZTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRUYXJnZXREaWZmZXJlbmNlKGRpZmZlcmVuY2U6IElQb2ludCk6IHZvaWQge1xuICAgIHRoaXMuX3RhcmdldERpZmZlcmVuY2UgPSBkaWZmZXJlbmNlO1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlZHJhdygpOiB2b2lkIHtcbiAgICB0aGlzLl9yZWRyYXdDb25uZWN0aW9uKHRoaXMuX3JlY2FsY3VsYXRlQ29ubmVjdGlvbigpKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlY2FsY3VsYXRlQ29ubmVjdGlvbigpOiBJTGluZSB7XG4gICAgcmV0dXJuIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8SUxpbmU+KG5ldyBDYWxjdWxhdGVDb25uZWN0aW9uTGluZUJ5QmVoYXZpb3JSZXF1ZXN0KFxuICAgICAgUm91bmRlZFJlY3QuZnJvbVJvdW5kZWRSZWN0KHRoaXMuX2ZPdXRwdXRXaXRoUmVjdC5mUmVjdCkuYWRkUG9pbnQodGhpcy5fc291cmNlRGlmZmVyZW5jZSksXG4gICAgICBSb3VuZGVkUmVjdC5mcm9tUm91bmRlZFJlY3QodGhpcy5fZklucHV0V2l0aFJlY3QuZlJlY3QpLmFkZFBvaW50KHRoaXMuX3RhcmdldERpZmZlcmVuY2UpLFxuICAgICAgdGhpcy5mQ29ubmVjdGlvbi5mQmVoYXZpb3IsXG4gICAgICB0aGlzLl9mT3V0cHV0V2l0aFJlY3QuZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlLFxuICAgICAgdGhpcy5fZklucHV0V2l0aFJlY3QuZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlXG4gICAgKSk7XG4gIH1cblxuICBwcml2YXRlIF9yZWRyYXdDb25uZWN0aW9uKGxpbmU6IElMaW5lKTogdm9pZCB7XG4gICAgdGhpcy5mQ29ubmVjdGlvbi5zZXRMaW5lKFxuICAgICAgbGluZSxcbiAgICAgIHRoaXMuX2ZPdXRwdXRXaXRoUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsXG4gICAgICB0aGlzLl9mSW5wdXRXaXRoUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGVcbiAgICApO1xuICAgIHRoaXMuZkNvbm5lY3Rpb24ucmVkcmF3KCk7XG4gIH1cblxuICBwcml2YXRlIF9jb25uZWN0b3JOb3RGb3VuZFByZWZpeChtZXNzYWdlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBgQ29ubmVjdGlvbkRyYWdIYW5kbGVyIEVycm9yOiBDb25uZWN0aW9uIEZyb20gKGZPdXRwdXQpJHsgdGhpcy5mQ29ubmVjdGlvbi5mT3V0cHV0SWQgfSBUbyAoZklucHV0KSR7IHRoaXMuZkNvbm5lY3Rpb24uZklucHV0SWQgfS4gJHsgbWVzc2FnZSB9LiBQbGVhc2UgZW5zdXJlIHRoYXQgYWxsIGYtY29ubmVjdGlvbnMgYXJlIGFzc29jaWF0ZWQgd2l0aCBleGlzdGluZyBjb25uZWN0b3JzYDtcbiAgfVxufVxuIl19
@@ -0,0 +1,29 @@
1
+ import { SnapToGrid } from "./snap-to-grid";
2
+ import { RectConstraint } from "./rect-constraint";
3
+ export class DragConstraintPipeline {
4
+ _snapper;
5
+ _hardConstraint;
6
+ _softConstraints = [];
7
+ constructor(injector, pointerDown, limits) {
8
+ this._snapper = new SnapToGrid(injector, pointerDown);
9
+ this._hardConstraint = new RectConstraint(limits.hard);
10
+ this._initSoftConstraints(limits);
11
+ }
12
+ _initSoftConstraints(limits) {
13
+ for (const soft of limits.soft) {
14
+ this._softConstraints.push(new RectConstraint(soft.limits));
15
+ }
16
+ }
17
+ apply(difference, adjustCellSize = false) {
18
+ const snapped = this._snapper.snap(difference, adjustCellSize);
19
+ const hardDifference = this._hardConstraint.apply(snapped).value;
20
+ return {
21
+ hardDifference,
22
+ soft: this._softConstraints.map(c => c.apply(hardDifference)),
23
+ };
24
+ }
25
+ finalize(difference) {
26
+ return this.apply(difference, true);
27
+ }
28
+ }
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1jb25zdHJhaW50LXBpcGVsaW5lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLW5vZGUtbW92ZS9jb25zdHJhaW50L2RyYWctY29uc3RyYWludC1waXBlbGluZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxFQUFvQixjQUFjLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQVNwRSxNQUFNLE9BQU8sc0JBQXNCO0lBQ2hCLFFBQVEsQ0FBYTtJQUNyQixlQUFlLENBQWlCO0lBQ2hDLGdCQUFnQixHQUFxQixFQUFFLENBQUM7SUFFekQsWUFDRSxRQUFrQixFQUNsQixXQUFtQixFQUNuQixNQUFtQjtRQUVuQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksVUFBVSxDQUFDLFFBQVEsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksY0FBYyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2RCxJQUFJLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVPLG9CQUFvQixDQUFDLE1BQW1CO1FBQzlDLEtBQUssTUFBTSxJQUFJLElBQUksTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQy9CLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxjQUFjLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDOUQsQ0FBQztJQUNILENBQUM7SUFFTSxLQUFLLENBQUMsVUFBa0IsRUFBRSxpQkFBMEIsS0FBSztRQUM5RCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFDL0QsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBRWpFLE9BQU87WUFDTCxjQUFjO1lBQ2QsSUFBSSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQzlELENBQUM7SUFDSixDQUFDO0lBRU0sUUFBUSxDQUFDLFVBQWtCO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDdEMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJUG9pbnR9IGZyb20gXCJAZm9ibGV4LzJkXCI7XG5pbXBvcnQge1NuYXBUb0dyaWR9IGZyb20gXCIuL3NuYXAtdG8tZ3JpZFwiO1xuaW1wb3J0IHtJQ29uc3RyYWludFJlc3VsdCwgUmVjdENvbnN0cmFpbnR9IGZyb20gXCIuL3JlY3QtY29uc3RyYWludFwiO1xuaW1wb3J0IHtJbmplY3Rvcn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7SURyYWdMaW1pdHN9IGZyb20gXCIuLi9jcmVhdGUtZHJhZy1tb2RlbC1mcm9tLXNlbGVjdGlvblwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIElDb25zdHJhaW50U3VtbWFyeSB7XG4gIGhhcmREaWZmZXJlbmNlOiBJUG9pbnQ7XG4gIHNvZnQ6IElDb25zdHJhaW50UmVzdWx0W107XG59XG5cbmV4cG9ydCBjbGFzcyBEcmFnQ29uc3RyYWludFBpcGVsaW5lIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfc25hcHBlcjogU25hcFRvR3JpZDtcbiAgcHJpdmF0ZSByZWFkb25seSBfaGFyZENvbnN0cmFpbnQ6IFJlY3RDb25zdHJhaW50O1xuICBwcml2YXRlIHJlYWRvbmx5IF9zb2Z0Q29uc3RyYWludHM6IFJlY3RDb25zdHJhaW50W10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcG9pbnRlckRvd246IElQb2ludCxcbiAgICBsaW1pdHM6IElEcmFnTGltaXRzXG4gICkge1xuICAgIHRoaXMuX3NuYXBwZXIgPSBuZXcgU25hcFRvR3JpZChpbmplY3RvciwgcG9pbnRlckRvd24pO1xuICAgIHRoaXMuX2hhcmRDb25zdHJhaW50ID0gbmV3IFJlY3RDb25zdHJhaW50KGxpbWl0cy5oYXJkKTtcbiAgICB0aGlzLl9pbml0U29mdENvbnN0cmFpbnRzKGxpbWl0cyk7XG4gIH1cblxuICBwcml2YXRlIF9pbml0U29mdENvbnN0cmFpbnRzKGxpbWl0czogSURyYWdMaW1pdHMpOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IHNvZnQgb2YgbGltaXRzLnNvZnQpIHtcbiAgICAgIHRoaXMuX3NvZnRDb25zdHJhaW50cy5wdXNoKG5ldyBSZWN0Q29uc3RyYWludChzb2Z0LmxpbWl0cykpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBhcHBseShkaWZmZXJlbmNlOiBJUG9pbnQsIGFkanVzdENlbGxTaXplOiBib29sZWFuID0gZmFsc2UpOiBJQ29uc3RyYWludFN1bW1hcnkge1xuICAgIGNvbnN0IHNuYXBwZWQgPSB0aGlzLl9zbmFwcGVyLnNuYXAoZGlmZmVyZW5jZSwgYWRqdXN0Q2VsbFNpemUpO1xuICAgIGNvbnN0IGhhcmREaWZmZXJlbmNlID0gdGhpcy5faGFyZENvbnN0cmFpbnQuYXBwbHkoc25hcHBlZCkudmFsdWU7XG5cbiAgICByZXR1cm4ge1xuICAgICAgaGFyZERpZmZlcmVuY2UsXG4gICAgICBzb2Z0OiB0aGlzLl9zb2Z0Q29uc3RyYWludHMubWFwKGMgPT4gYy5hcHBseShoYXJkRGlmZmVyZW5jZSkpLFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgZmluYWxpemUoZGlmZmVyZW5jZTogSVBvaW50KTogSUNvbnN0cmFpbnRTdW1tYXJ5IHtcbiAgICByZXR1cm4gdGhpcy5hcHBseShkaWZmZXJlbmNlLCB0cnVlKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,18 @@
1
+ import { RectExtensions } from "@foblex/2d";
2
+ export function expandRectFromBaseline(boundingRect, overflow, edges) {
3
+ let { x, y, width, height } = boundingRect;
4
+ if (edges.right && overflow.x > 0)
5
+ width += overflow.x;
6
+ if (edges.left && overflow.x > 0) {
7
+ x -= overflow.x;
8
+ width += overflow.x;
9
+ }
10
+ if (edges.bottom && overflow.y > 0)
11
+ height += overflow.y;
12
+ if (edges.top && overflow.y > 0) {
13
+ y -= overflow.y;
14
+ height += overflow.y;
15
+ }
16
+ return RectExtensions.initialize(x, y, width, height);
17
+ }
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kLXJlY3QtZnJvbS1iYXNlbGluZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1ub2RlLW1vdmUvY29uc3RyYWludC9leHBhbmQtcmVjdC1mcm9tLWJhc2VsaW5lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsY0FBYyxFQUFDLE1BQU0sWUFBWSxDQUFDO0FBR3pELE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxZQUFtQixFQUFFLFFBQWdCLEVBQUUsS0FBdUI7SUFDbkcsSUFBSSxFQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxHQUFHLFlBQVksQ0FBQztJQUV6QyxJQUFJLEtBQUssQ0FBQyxLQUFLLElBQUksUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDO1FBQUUsS0FBSyxJQUFJLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDdkQsSUFBSSxLQUFLLENBQUMsSUFBSSxJQUFJLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDakMsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDaEIsS0FBSyxJQUFJLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDdEIsQ0FBQztJQUVELElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUM7UUFBRSxNQUFNLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQztJQUN6RCxJQUFJLEtBQUssQ0FBQyxHQUFHLElBQUksUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUNoQyxDQUFDLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQztRQUNoQixNQUFNLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBRUQsT0FBTyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQ3hELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0lQb2ludCwgSVJlY3QsIFJlY3RFeHRlbnNpb25zfSBmcm9tIFwiQGZvYmxleC8yZFwiO1xuaW1wb3J0IHtJQ29uc3RyYWludEVkZ2VzfSBmcm9tIFwiLi9yZWN0LWNvbnN0cmFpbnRcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGV4cGFuZFJlY3RGcm9tQmFzZWxpbmUoYm91bmRpbmdSZWN0OiBJUmVjdCwgb3ZlcmZsb3c6IElQb2ludCwgZWRnZXM6IElDb25zdHJhaW50RWRnZXMpOiBJUmVjdCB7XG4gIGxldCB7eCwgeSwgd2lkdGgsIGhlaWdodH0gPSBib3VuZGluZ1JlY3Q7XG5cbiAgaWYgKGVkZ2VzLnJpZ2h0ICYmIG92ZXJmbG93LnggPiAwKSB3aWR0aCArPSBvdmVyZmxvdy54O1xuICBpZiAoZWRnZXMubGVmdCAmJiBvdmVyZmxvdy54ID4gMCkge1xuICAgIHggLT0gb3ZlcmZsb3cueDtcbiAgICB3aWR0aCArPSBvdmVyZmxvdy54O1xuICB9XG5cbiAgaWYgKGVkZ2VzLmJvdHRvbSAmJiBvdmVyZmxvdy55ID4gMCkgaGVpZ2h0ICs9IG92ZXJmbG93Lnk7XG4gIGlmIChlZGdlcy50b3AgJiYgb3ZlcmZsb3cueSA+IDApIHtcbiAgICB5IC09IG92ZXJmbG93Lnk7XG4gICAgaGVpZ2h0ICs9IG92ZXJmbG93Lnk7XG4gIH1cblxuICByZXR1cm4gUmVjdEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSh4LCB5LCB3aWR0aCwgaGVpZ2h0KTtcbn1cbiJdfQ==
@@ -0,0 +1,5 @@
1
+ export * from './drag-constraint-pipeline';
2
+ export * from './expand-rect-from-baseline';
3
+ export * from './rect-constraint';
4
+ export * from './snap-to-grid';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2Ytbm9kZS1tb3ZlL2NvbnN0cmFpbnQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZHJhZy1jb25zdHJhaW50LXBpcGVsaW5lJztcbmV4cG9ydCAqIGZyb20gJy4vZXhwYW5kLXJlY3QtZnJvbS1iYXNlbGluZSc7XG5leHBvcnQgKiBmcm9tICcuL3JlY3QtY29uc3RyYWludCc7XG5leHBvcnQgKiBmcm9tICcuL3NuYXAtdG8tZ3JpZCc7XG4iXX0=
@@ -0,0 +1,36 @@
1
+ export class RectConstraint {
2
+ _limits;
3
+ constructor(_limits) {
4
+ this._limits = _limits;
5
+ }
6
+ apply(offset) {
7
+ const { min, max } = this._limits;
8
+ const clampedX = this._clamp(offset.x, min.x, max.x);
9
+ const clampedY = this._clamp(offset.y, min.y, max.y);
10
+ const rawOverflowX = offset.x - clampedX;
11
+ const rawOverflowY = offset.y - clampedY;
12
+ const overflowX = this._quantizeSigned(rawOverflowX, 0.5);
13
+ const overflowY = this._quantizeSigned(rawOverflowY, 0.5);
14
+ const edges = {
15
+ left: overflowX < 0,
16
+ right: overflowX > 0,
17
+ top: overflowY < 0,
18
+ bottom: overflowY > 0,
19
+ };
20
+ return {
21
+ value: { x: clampedX, y: clampedY },
22
+ overflow: { x: Math.abs(overflowX), y: Math.abs(overflowY) },
23
+ edges,
24
+ };
25
+ }
26
+ _quantizeSigned(v, step) {
27
+ if (step <= 0 || v === 0)
28
+ return 0;
29
+ const k = v / step;
30
+ return (v > 0 ? Math.ceil(k) : Math.floor(k)) * step;
31
+ }
32
+ _clamp(value, min, max) {
33
+ return Math.min(Math.max(value, min), max);
34
+ }
35
+ }
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjdC1jb25zdHJhaW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLW5vZGUtbW92ZS9jb25zdHJhaW50L3JlY3QtY29uc3RyYWludC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFlQSxNQUFNLE9BQU8sY0FBYztJQUVOO0lBRG5CLFlBQ21CLE9BQXFCO1FBQXJCLFlBQU8sR0FBUCxPQUFPLENBQWM7SUFFeEMsQ0FBQztJQUVNLEtBQUssQ0FBQyxNQUFjO1FBQ3pCLE1BQU0sRUFBQyxHQUFHLEVBQUUsR0FBRyxFQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUVoQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRXJELE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDO1FBQ3pDLE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDO1FBRXpDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQzFELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBRTFELE1BQU0sS0FBSyxHQUFxQjtZQUM5QixJQUFJLEVBQUUsU0FBUyxHQUFHLENBQUM7WUFDbkIsS0FBSyxFQUFFLFNBQVMsR0FBRyxDQUFDO1lBQ3BCLEdBQUcsRUFBRSxTQUFTLEdBQUcsQ0FBQztZQUNsQixNQUFNLEVBQUUsU0FBUyxHQUFHLENBQUM7U0FDdEIsQ0FBQztRQUVGLE9BQU87WUFDTCxLQUFLLEVBQUUsRUFBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUM7WUFDakMsUUFBUSxFQUFFLEVBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUM7WUFDMUQsS0FBSztTQUNOLENBQUM7SUFDSixDQUFDO0lBRU8sZUFBZSxDQUFDLENBQVMsRUFBRSxJQUFZO1FBQzdDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ25DLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDbkIsT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUM7SUFDdkQsQ0FBQztJQUVPLE1BQU0sQ0FBQyxLQUFhLEVBQUUsR0FBVyxFQUFFLEdBQVc7UUFDcEQsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzdDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SU1pbk1heFBvaW50LCBJUG9pbnR9IGZyb20gXCJAZm9ibGV4LzJkXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNvbnN0cmFpbnRFZGdlcyB7XG4gIGxlZnQ6IGJvb2xlYW47XG4gIHJpZ2h0OiBib29sZWFuO1xuICB0b3A6IGJvb2xlYW47XG4gIGJvdHRvbTogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ29uc3RyYWludFJlc3VsdCB7XG4gIHZhbHVlOiBJUG9pbnQ7XG4gIG92ZXJmbG93OiBJUG9pbnQ7XG4gIGVkZ2VzOiBJQ29uc3RyYWludEVkZ2VzO1xufVxuXG5leHBvcnQgY2xhc3MgUmVjdENvbnN0cmFpbnQge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9saW1pdHM6IElNaW5NYXhQb2ludFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBhcHBseShvZmZzZXQ6IElQb2ludCk6IElDb25zdHJhaW50UmVzdWx0IHtcbiAgICBjb25zdCB7bWluLCBtYXh9ID0gdGhpcy5fbGltaXRzO1xuXG4gICAgY29uc3QgY2xhbXBlZFggPSB0aGlzLl9jbGFtcChvZmZzZXQueCwgbWluLngsIG1heC54KTtcbiAgICBjb25zdCBjbGFtcGVkWSA9IHRoaXMuX2NsYW1wKG9mZnNldC55LCBtaW4ueSwgbWF4LnkpO1xuXG4gICAgY29uc3QgcmF3T3ZlcmZsb3dYID0gb2Zmc2V0LnggLSBjbGFtcGVkWDtcbiAgICBjb25zdCByYXdPdmVyZmxvd1kgPSBvZmZzZXQueSAtIGNsYW1wZWRZO1xuXG4gICAgY29uc3Qgb3ZlcmZsb3dYID0gdGhpcy5fcXVhbnRpemVTaWduZWQocmF3T3ZlcmZsb3dYLCAwLjUpO1xuICAgIGNvbnN0IG92ZXJmbG93WSA9IHRoaXMuX3F1YW50aXplU2lnbmVkKHJhd092ZXJmbG93WSwgMC41KTtcblxuICAgIGNvbnN0IGVkZ2VzOiBJQ29uc3RyYWludEVkZ2VzID0ge1xuICAgICAgbGVmdDogb3ZlcmZsb3dYIDwgMCxcbiAgICAgIHJpZ2h0OiBvdmVyZmxvd1ggPiAwLFxuICAgICAgdG9wOiBvdmVyZmxvd1kgPCAwLFxuICAgICAgYm90dG9tOiBvdmVyZmxvd1kgPiAwLFxuICAgIH07XG5cbiAgICByZXR1cm4ge1xuICAgICAgdmFsdWU6IHt4OiBjbGFtcGVkWCwgeTogY2xhbXBlZFl9LFxuICAgICAgb3ZlcmZsb3c6IHt4OiBNYXRoLmFicyhvdmVyZmxvd1gpLCB5OiBNYXRoLmFicyhvdmVyZmxvd1kpfSxcbiAgICAgIGVkZ2VzLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIF9xdWFudGl6ZVNpZ25lZCh2OiBudW1iZXIsIHN0ZXA6IG51bWJlcik6IG51bWJlciB7XG4gICAgaWYgKHN0ZXAgPD0gMCB8fCB2ID09PSAwKSByZXR1cm4gMDtcbiAgICBjb25zdCBrID0gdiAvIHN0ZXA7XG4gICAgcmV0dXJuICh2ID4gMCA/IE1hdGguY2VpbChrKSA6IE1hdGguZmxvb3IoaykpICogc3RlcDtcbiAgfVxuXG4gIHByaXZhdGUgX2NsYW1wKHZhbHVlOiBudW1iZXIsIG1pbjogbnVtYmVyLCBtYXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIE1hdGgubWluKE1hdGgubWF4KHZhbHVlLCBtaW4pLCBtYXgpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,36 @@
1
+ import { FComponentsStore } from "../../../f-storage";
2
+ export class SnapToGrid {
3
+ _onPointerDown;
4
+ _store;
5
+ _vCellSize;
6
+ _hCellSize;
7
+ _adjustCellSize;
8
+ constructor(_injector, _onPointerDown) {
9
+ this._onPointerDown = _onPointerDown;
10
+ this._store = _injector.get(FComponentsStore);
11
+ this._vCellSize = this._store.fDraggable.vCellSize();
12
+ this._hCellSize = this._store.fDraggable.hCellSize();
13
+ this._adjustCellSize = this._store.fDraggable.fCellSizeWhileDragging();
14
+ }
15
+ snap(difference, adjustCellSize) {
16
+ const _adjustCellSize = adjustCellSize || this._adjustCellSize;
17
+ return this._cellSizeStrategies[+_adjustCellSize](difference);
18
+ }
19
+ _cellSizeStrategies = {
20
+ 0: this._noSnap.bind(this),
21
+ 1: this._snapWithCellSize.bind(this)
22
+ };
23
+ _snapWithCellSize(difference) {
24
+ return {
25
+ x: this._snapToGrid(this._onPointerDown.x + difference.x, this._hCellSize) - this._onPointerDown.x,
26
+ y: this._snapToGrid(this._onPointerDown.y + difference.y, this._vCellSize) - this._onPointerDown.y
27
+ };
28
+ }
29
+ _noSnap(difference) {
30
+ return difference;
31
+ }
32
+ _snapToGrid(value, cellSize) {
33
+ return Math.round(value / cellSize) * cellSize;
34
+ }
35
+ }
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hcC10by1ncmlkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLW5vZGUtbW92ZS9jb25zdHJhaW50L3NuYXAtdG8tZ3JpZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUdwRCxNQUFNLE9BQU8sVUFBVTtJQVVYO0lBUk8sTUFBTSxDQUFtQjtJQUV6QixVQUFVLENBQVM7SUFDbkIsVUFBVSxDQUFTO0lBQ25CLGVBQWUsQ0FBVTtJQUUxQyxZQUNFLFNBQW1CLEVBQ1gsY0FBc0I7UUFBdEIsbUJBQWMsR0FBZCxjQUFjLENBQVE7UUFFOUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDOUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVcsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUN0RCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ3RELElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFXLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztJQUMxRSxDQUFDO0lBRU0sSUFBSSxDQUFDLFVBQWtCLEVBQUUsY0FBdUI7UUFDckQsTUFBTSxlQUFlLEdBQUcsY0FBYyxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUM7UUFDL0QsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRU8sbUJBQW1CLEdBQW1EO1FBQzVFLENBQUMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDMUIsQ0FBQyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0tBQ3JDLENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxVQUFrQjtRQUMxQyxPQUFPO1lBQ0wsQ0FBQyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLEdBQUcsVUFBVSxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ2xHLENBQUMsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUNuRyxDQUFDO0lBQ0osQ0FBQztJQUVPLE9BQU8sQ0FBQyxVQUFrQjtRQUNoQyxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBRU8sV0FBVyxDQUFDLEtBQWEsRUFBRSxRQUFnQjtRQUNqRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxHQUFHLFFBQVEsQ0FBQztJQUNqRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdG9yfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtGQ29tcG9uZW50c1N0b3JlfSBmcm9tIFwiLi4vLi4vLi4vZi1zdG9yYWdlXCI7XG5pbXBvcnQge0lQb2ludH0gZnJvbSBcIkBmb2JsZXgvMmRcIjtcblxuZXhwb3J0IGNsYXNzIFNuYXBUb0dyaWQge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3N0b3JlOiBGQ29tcG9uZW50c1N0b3JlO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3ZDZWxsU2l6ZTogbnVtYmVyO1xuICBwcml2YXRlIHJlYWRvbmx5IF9oQ2VsbFNpemU6IG51bWJlcjtcbiAgcHJpdmF0ZSByZWFkb25seSBfYWRqdXN0Q2VsbFNpemU6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgX2luamVjdG9yOiBJbmplY3RvcixcbiAgICBwcml2YXRlIF9vblBvaW50ZXJEb3duOiBJUG9pbnQsXG4gICkge1xuICAgIHRoaXMuX3N0b3JlID0gX2luamVjdG9yLmdldChGQ29tcG9uZW50c1N0b3JlKTtcbiAgICB0aGlzLl92Q2VsbFNpemUgPSB0aGlzLl9zdG9yZS5mRHJhZ2dhYmxlIS52Q2VsbFNpemUoKTtcbiAgICB0aGlzLl9oQ2VsbFNpemUgPSB0aGlzLl9zdG9yZS5mRHJhZ2dhYmxlIS5oQ2VsbFNpemUoKTtcbiAgICB0aGlzLl9hZGp1c3RDZWxsU2l6ZSA9IHRoaXMuX3N0b3JlLmZEcmFnZ2FibGUhLmZDZWxsU2l6ZVdoaWxlRHJhZ2dpbmcoKTtcbiAgfVxuXG4gIHB1YmxpYyBzbmFwKGRpZmZlcmVuY2U6IElQb2ludCwgYWRqdXN0Q2VsbFNpemU6IGJvb2xlYW4pOiBJUG9pbnQge1xuICAgIGNvbnN0IF9hZGp1c3RDZWxsU2l6ZSA9IGFkanVzdENlbGxTaXplIHx8IHRoaXMuX2FkanVzdENlbGxTaXplO1xuICAgIHJldHVybiB0aGlzLl9jZWxsU2l6ZVN0cmF0ZWdpZXNbK19hZGp1c3RDZWxsU2l6ZV0oZGlmZmVyZW5jZSk7XG4gIH1cblxuICBwcml2YXRlIF9jZWxsU2l6ZVN0cmF0ZWdpZXM6IFJlY29yZDxudW1iZXIsIChkaWZmZXJlbmNlOiBJUG9pbnQpID0+IElQb2ludD4gPSB7XG4gICAgMDogdGhpcy5fbm9TbmFwLmJpbmQodGhpcyksXG4gICAgMTogdGhpcy5fc25hcFdpdGhDZWxsU2l6ZS5iaW5kKHRoaXMpXG4gIH07XG5cbiAgcHJpdmF0ZSBfc25hcFdpdGhDZWxsU2l6ZShkaWZmZXJlbmNlOiBJUG9pbnQpOiBJUG9pbnQge1xuICAgIHJldHVybiB7XG4gICAgICB4OiB0aGlzLl9zbmFwVG9HcmlkKHRoaXMuX29uUG9pbnRlckRvd24ueCArIGRpZmZlcmVuY2UueCwgdGhpcy5faENlbGxTaXplKSAtIHRoaXMuX29uUG9pbnRlckRvd24ueCxcbiAgICAgIHk6IHRoaXMuX3NuYXBUb0dyaWQodGhpcy5fb25Qb2ludGVyRG93bi55ICsgZGlmZmVyZW5jZS55LCB0aGlzLl92Q2VsbFNpemUpIC0gdGhpcy5fb25Qb2ludGVyRG93bi55XG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgX25vU25hcChkaWZmZXJlbmNlOiBJUG9pbnQpOiBJUG9pbnQge1xuICAgIHJldHVybiBkaWZmZXJlbmNlO1xuICB9XG5cbiAgcHJpdmF0ZSBfc25hcFRvR3JpZCh2YWx1ZTogbnVtYmVyLCBjZWxsU2l6ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gTWF0aC5yb3VuZCh2YWx1ZSAvIGNlbGxTaXplKSAqIGNlbGxTaXplO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,8 @@
1
+ export class BuildDragHierarchyRequest {
2
+ selectedNodesAndGroupsWithChildren;
3
+ static fToken = Symbol('BuildDragHierarchyRequest');
4
+ constructor(selectedNodesAndGroupsWithChildren) {
5
+ this.selectedNodesAndGroupsWithChildren = selectedNodesAndGroupsWithChildren;
6
+ }
7
+ }
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtZHJhZy1oaWVyYXJjaHktcmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1ub2RlLW1vdmUvY3JlYXRlLWRyYWctbW9kZWwtZnJvbS1zZWxlY3Rpb24vYnVpbGQtZHJhZy1oaWVyYXJjaHkvYnVpbGQtZHJhZy1oaWVyYXJjaHktcmVxdWVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8seUJBQXlCO0lBSTNCO0lBSFQsTUFBTSxDQUFVLE1BQU0sR0FBRyxNQUFNLENBQUMsMkJBQTJCLENBQUMsQ0FBQztJQUU3RCxZQUNTLGtDQUErQztRQUEvQyx1Q0FBa0MsR0FBbEMsa0NBQWtDLENBQWE7SUFFeEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Rk5vZGVCYXNlfSBmcm9tIFwiLi4vLi4vLi4vLi4vZi1ub2RlXCI7XG5cbmV4cG9ydCBjbGFzcyBCdWlsZERyYWdIaWVyYXJjaHlSZXF1ZXN0IHtcbiAgc3RhdGljIHJlYWRvbmx5IGZUb2tlbiA9IFN5bWJvbCgnQnVpbGREcmFnSGllcmFyY2h5UmVxdWVzdCcpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBzZWxlY3RlZE5vZGVzQW5kR3JvdXBzV2l0aENoaWxkcmVuOiBGTm9kZUJhc2VbXVxuICApIHtcbiAgfVxufVxuIl19
@@ -0,0 +1,9 @@
1
+ export class BuildDragHierarchyResponse {
2
+ roots;
3
+ list;
4
+ constructor(roots, list) {
5
+ this.roots = roots;
6
+ this.list = list;
7
+ }
8
+ }
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtZHJhZy1oaWVyYXJjaHktcmVzcG9uc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2Ytbm9kZS1tb3ZlL2NyZWF0ZS1kcmFnLW1vZGVsLWZyb20tc2VsZWN0aW9uL2J1aWxkLWRyYWctaGllcmFyY2h5L2J1aWxkLWRyYWctaGllcmFyY2h5LXJlc3BvbnNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTywwQkFBMEI7SUFHNUI7SUFDQTtJQUZULFlBQ1MsS0FBd0IsRUFDeEIsSUFBdUI7UUFEdkIsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFDeEIsU0FBSSxHQUFKLElBQUksQ0FBbUI7SUFFaEMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtNb3ZlRHJhZ0hhbmRsZXJ9IGZyb20gXCIuLi8uLi9tb3ZlLWRyYWctaGFuZGxlclwiO1xuXG5leHBvcnQgY2xhc3MgQnVpbGREcmFnSGllcmFyY2h5UmVzcG9uc2Uge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByb290czogTW92ZURyYWdIYW5kbGVyW10sXG4gICAgcHVibGljIGxpc3Q6IE1vdmVEcmFnSGFuZGxlcltdLFxuICApIHtcbiAgfVxufVxuIl19