@foblex/flow 17.1.1 → 17.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (327) hide show
  1. package/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.request.d.ts +3 -3
  2. package/domain/f-connectors/providers.d.ts +1 -1
  3. package/domain/f-draggable/end-drag-sequence/end-drag-sequence.execution.d.ts +1 -0
  4. package/domain/f-draggable/providers.d.ts +1 -1
  5. package/domain/f-draggable/start-drag-sequence/start-drag-sequence.execution.d.ts +1 -0
  6. package/domain/f-event-trigger.d.ts +4 -0
  7. package/domain/f-selection/clear-selection/clear-selection.execution.d.ts +1 -3
  8. package/domain/f-selection/get-can-be-selected-items/get-can-be-selected-items.execution.d.ts +4 -6
  9. package/domain/f-selection/get-can-be-selected-items/i-can-be-selected-element-and-rect.d.ts +6 -0
  10. package/domain/f-selection/get-can-be-selected-items/index.d.ts +1 -1
  11. package/domain/f-selection/providers.d.ts +1 -1
  12. package/domain/index.d.ts +1 -0
  13. package/domain/providers.d.ts +1 -1
  14. package/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.execution.d.ts +4 -4
  15. package/domain/update-item-and-children-layers/update-item-and-children-layers.request.d.ts +3 -3
  16. package/esm2022/domain/f-canvas/center-group-or-node/center-group-or-node.execution.mjs +2 -2
  17. package/esm2022/domain/f-canvas/fit-to-flow/fit-to-flow.execution.mjs +3 -3
  18. package/esm2022/domain/f-canvas/reset-scale-and-center/reset-scale-and-center.execution.mjs +3 -3
  19. package/esm2022/domain/f-connection/redraw-connections/redraw-connections.execution.mjs +3 -3
  20. package/esm2022/domain/f-connectors/find-input-at-position/find-input-at-position.execution.mjs +2 -2
  21. package/esm2022/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.execution.mjs +9 -9
  22. package/esm2022/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.request.mjs +4 -4
  23. package/esm2022/domain/f-connectors/get-connector-and-rect/get-connector-and-rect.execution.mjs +2 -2
  24. package/esm2022/domain/f-draggable/emit-selection-change-event/emit-selection-change-event.execution.mjs +3 -3
  25. package/esm2022/domain/f-draggable/end-drag-sequence/end-drag-sequence.execution.mjs +5 -1
  26. package/esm2022/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence.execution.mjs +2 -2
  27. package/esm2022/domain/f-draggable/start-drag-sequence/start-drag-sequence.execution.mjs +6 -2
  28. package/esm2022/domain/f-event-trigger.mjs +7 -0
  29. package/esm2022/domain/f-flow/get-flow-state/get-flow-state.execution.mjs +4 -4
  30. package/esm2022/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed.execution.mjs +2 -2
  31. package/esm2022/domain/f-selection/clear-selection/clear-selection.execution.mjs +9 -12
  32. package/esm2022/domain/f-selection/get-can-be-selected-items/get-can-be-selected-items.execution.mjs +8 -11
  33. package/esm2022/domain/f-selection/get-can-be-selected-items/i-can-be-selected-element-and-rect.mjs +2 -0
  34. package/esm2022/domain/f-selection/get-can-be-selected-items/index.mjs +2 -2
  35. package/esm2022/domain/f-selection/select/select.execution.mjs +4 -4
  36. package/esm2022/domain/f-selection/select-all/select-all.execution.mjs +4 -4
  37. package/esm2022/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.execution.mjs +3 -3
  38. package/esm2022/domain/f-zoom/set-zoom/set-zoom.execution.mjs +1 -1
  39. package/esm2022/domain/get-normalized-element-rect/get-normalized-element-rect.execution.mjs +2 -2
  40. package/esm2022/domain/index.mjs +2 -1
  41. package/esm2022/domain/sort-item-layers/sort-item-layers.execution.mjs +4 -4
  42. package/esm2022/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.execution.mjs +14 -14
  43. package/esm2022/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.execution.mjs +2 -2
  44. package/esm2022/domain/update-item-and-children-layers/update-item-and-children-layers.execution.mjs +3 -3
  45. package/esm2022/domain/update-item-and-children-layers/update-item-and-children-layers.request.mjs +1 -1
  46. package/esm2022/f-backgroud/f-background.component.mjs +4 -4
  47. package/esm2022/f-canvas/f-canvas.component.mjs +13 -13
  48. package/esm2022/f-connection/common/f-connection-base.mjs +3 -3
  49. package/esm2022/f-connection/common/f-connection-text/f-connection-text-path.directive.mjs +4 -2
  50. package/esm2022/f-connection/common/f-connection-text/f-connection-text.component.mjs +2 -1
  51. package/esm2022/f-connection/f-connection/f-connection.component.mjs +4 -4
  52. package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +4 -4
  53. package/esm2022/f-connection/f-marker/f-marker.directive.mjs +3 -3
  54. package/esm2022/f-connection/f-snap-connection/f-snap-connection.component.mjs +4 -4
  55. package/esm2022/f-connectors/f-node-input/f-node-input.directive.mjs +3 -3
  56. package/esm2022/f-connectors/f-node-outlet/f-node-outlet-base.mjs +1 -1
  57. package/esm2022/f-connectors/f-node-outlet/f-node-outlet.directive.mjs +3 -3
  58. package/esm2022/f-connectors/f-node-output/f-node-output-base.mjs +1 -1
  59. package/esm2022/f-connectors/f-node-output/f-node-output.directive.mjs +3 -3
  60. package/esm2022/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.execution.mjs +3 -3
  61. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler-preparation/create-connection-drag-handler-preparation.execution.mjs +40 -0
  62. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler-preparation/create-connection-drag-handler-preparation.request.mjs +9 -0
  63. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler-preparation/index.mjs +3 -0
  64. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.execution.mjs +36 -38
  65. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.request.mjs +4 -2
  66. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.execution.mjs +31 -23
  67. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.request.mjs +4 -2
  68. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/index.mjs +1 -2
  69. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.execution.mjs +8 -12
  70. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.request.mjs +4 -2
  71. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/index.mjs +2 -2
  72. package/esm2022/f-draggable/connections/create-connection/create-connection.drag-handler.mjs +15 -14
  73. package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.execution.mjs +27 -24
  74. package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.request.mjs +4 -4
  75. package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/index.mjs +1 -2
  76. package/esm2022/f-draggable/connections/providers.mjs +3 -5
  77. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.execution.mjs +2 -2
  78. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.execution.mjs +2 -2
  79. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.request.mjs +4 -2
  80. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.mjs +8 -7
  81. package/esm2022/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.execution.mjs +3 -3
  82. package/esm2022/f-draggable/domain/is-connection-under-node/is-connection-under-node.execution.mjs +2 -2
  83. package/esm2022/f-draggable/f-draggable-base.mjs +1 -1
  84. package/esm2022/f-draggable/f-draggable-data-context.mjs +1 -1
  85. package/esm2022/f-draggable/f-draggable.directive.mjs +55 -24
  86. package/esm2022/f-draggable/f-injector.mjs +19 -0
  87. package/esm2022/f-draggable/index.mjs +2 -1
  88. package/esm2022/f-draggable/node/connection-drag-handlers/base-connection.drag-handler.mjs +56 -0
  89. package/esm2022/f-draggable/node/connection-drag-handlers/index.mjs +5 -0
  90. package/esm2022/f-draggable/node/connection-drag-handlers/source-connection.drag-handler.mjs +11 -0
  91. package/esm2022/f-draggable/node/connection-drag-handlers/source-target-connection.drag-handler.mjs +22 -0
  92. package/esm2022/f-draggable/node/connection-drag-handlers/target-connection.drag-handler.mjs +11 -0
  93. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.mjs +47 -45
  94. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/calculate-common-node-move-limits.execution.mjs +69 -0
  95. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/calculate-common-node-move-limits.request.mjs +7 -0
  96. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/index.mjs +3 -0
  97. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/calculate-node-move-limits.execution.mjs +49 -0
  98. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/calculate-node-move-limits.request.mjs +9 -0
  99. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/index.mjs +3 -0
  100. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.execution.mjs +27 -35
  101. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.request.mjs +4 -4
  102. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.execution.mjs +33 -46
  103. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.request.mjs +4 -4
  104. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/i-node-move-limits-and-position.mjs +2 -0
  105. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/i-node-move-limits.mjs +2 -0
  106. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/index.mjs +5 -4
  107. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/providers.mjs +5 -5
  108. package/esm2022/f-draggable/node/index.mjs +4 -6
  109. package/esm2022/f-draggable/node/line-alignment-preparation/line-alignment-preparation.execution.mjs +7 -18
  110. package/esm2022/f-draggable/node/line-alignment-preparation/line-alignment-preparation.request.mjs +7 -1
  111. package/esm2022/f-draggable/node/line-alignment.drag-handler.mjs +5 -4
  112. package/esm2022/f-draggable/node/node-drag-to-parent-finalize/node-drag-to-parent-finalize.execution.mjs +3 -3
  113. package/esm2022/f-draggable/node/node-drag-to-parent-preparation/index.mjs +1 -3
  114. package/esm2022/f-draggable/node/node-drag-to-parent-preparation/node-drag-to-parent-preparation.execution.mjs +13 -6
  115. package/esm2022/f-draggable/node/node-move-finalize/node-move-finalize.execution.mjs +13 -9
  116. package/esm2022/f-draggable/node/node-move-preparation/node-move-preparation.execution.mjs +5 -4
  117. package/esm2022/f-draggable/node/node.drag-handler.mjs +12 -29
  118. package/esm2022/f-draggable/node/point-bounds-limiter.mjs +41 -0
  119. package/esm2022/f-draggable/node/providers.mjs +3 -3
  120. package/esm2022/f-draggable/node/summary-node.drag-handler.mjs +36 -0
  121. package/esm2022/f-draggable/node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.execution.mjs +26 -22
  122. package/esm2022/f-draggable/node-resize/calculate-changed-size/calculate-changed-size.execution.mjs +1 -1
  123. package/esm2022/f-draggable/node-resize/get-node-resize-restrictions/get-node-resize-restrictions.execution.mjs +18 -18
  124. package/esm2022/f-draggable/node-resize/get-node-resize-restrictions/i-node-resize-restrictions.mjs +1 -1
  125. package/esm2022/f-draggable/node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.execution.mjs +3 -3
  126. package/esm2022/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.execution.mjs +8 -11
  127. package/esm2022/f-draggable/node-resize/node-resize-preparation/index.mjs +1 -3
  128. package/esm2022/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.execution.mjs +46 -34
  129. package/esm2022/f-draggable/node-resize/node-resize.drag-handler.mjs +47 -34
  130. package/esm2022/f-draggable/node-resize/providers.mjs +3 -3
  131. package/esm2022/f-draggable/node-resize/resize-direction.mjs +5 -1
  132. package/esm2022/f-draggable/single-select/single-select.execution.mjs +101 -70
  133. package/esm2022/f-draggable/single-select/single-select.request.mjs +4 -2
  134. package/esm2022/f-external-item/domain/external-item-finalize/external-item-finalize.execution.mjs +2 -2
  135. package/esm2022/f-external-item/domain/external-item-preparation/external-item-preparation.execution.mjs +27 -27
  136. package/esm2022/f-external-item/domain/external-item-preparation/index.mjs +1 -2
  137. package/esm2022/f-external-item/domain/external-item-preparation/providers.mjs +1 -3
  138. package/esm2022/f-external-item/domain/external-item.drag-handler.mjs +9 -8
  139. package/esm2022/f-flow/f-flow.component.mjs +15 -15
  140. package/esm2022/f-minimap/domain/f-minimap.drag-handler.mjs +2 -2
  141. package/esm2022/f-minimap/domain/minimap-calculate-svg-scale-and-view-box/minimap-calculate-svg-scale-and-view-box.execution.mjs +2 -2
  142. package/esm2022/f-minimap/domain/minimap-drag-finalize/index.mjs +1 -2
  143. package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.mjs +8 -1
  144. package/esm2022/f-minimap/domain/minimap-drag-finalize/providers.mjs +1 -3
  145. package/esm2022/f-minimap/domain/minimap-drag-preparation/index.mjs +1 -2
  146. package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.mjs +10 -2
  147. package/esm2022/f-minimap/domain/minimap-drag-preparation/providers.mjs +1 -3
  148. package/esm2022/f-minimap/f-minimap-canvas.directive.mjs +2 -2
  149. package/esm2022/f-minimap/f-minimap-flow.directive.mjs +2 -2
  150. package/esm2022/f-minimap/f-minimap-view.directive.mjs +2 -2
  151. package/esm2022/f-minimap/f-minimap.component.mjs +4 -4
  152. package/esm2022/f-node/f-group.directive.mjs +16 -10
  153. package/esm2022/f-node/f-node-base.mjs +1 -1
  154. package/esm2022/f-node/f-node.directive.mjs +16 -10
  155. package/esm2022/f-node/f-resize-handle/e-f-resize-handle-type.mjs +6 -2
  156. package/esm2022/f-node/f-resize-handle/f-resize-handle.directive.mjs +3 -3
  157. package/esm2022/f-selection-area/domain/providers.mjs +5 -5
  158. package/esm2022/f-selection-area/domain/selection-area-finalize/index.mjs +1 -3
  159. package/esm2022/f-selection-area/domain/selection-area-finalize/selection-area-finalize.execution.mjs +14 -10
  160. package/esm2022/f-selection-area/domain/selection-area-preparation/index.mjs +1 -3
  161. package/esm2022/f-selection-area/domain/selection-area-preparation/selection-area-preparation.execution.mjs +25 -23
  162. package/esm2022/f-selection-area/domain/selection-area-preparation/selection-area-preparation.request.mjs +4 -2
  163. package/esm2022/f-selection-area/domain/selection-area.drag-handle.mjs +32 -29
  164. package/esm2022/f-selection-area/f-selection-area.component.mjs +11 -6
  165. package/esm2022/mixins/change-selection/change-selection.mjs +7 -7
  166. package/esm2022/mixins/change-selection/i-selectable.mjs +2 -0
  167. package/esm2022/mixins/change-selection/index.mjs +2 -2
  168. package/f-connection/common/f-connection-base.d.ts +5 -5
  169. package/f-connection/common/f-connection-text/f-connection-text-path.directive.d.ts +1 -0
  170. package/f-connection/providers.d.ts +1 -1
  171. package/f-connectors/f-node-outlet/f-node-outlet-base.d.ts +1 -0
  172. package/f-connectors/f-node-output/f-node-output-base.d.ts +1 -0
  173. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler-preparation/create-connection-drag-handler-preparation.execution.d.ts +12 -0
  174. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler-preparation/create-connection-drag-handler-preparation.request.d.ts +7 -0
  175. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler-preparation/index.d.ts +2 -0
  176. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.execution.d.ts +6 -6
  177. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.request.d.ts +3 -1
  178. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.execution.d.ts +6 -6
  179. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.request.d.ts +3 -1
  180. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/index.d.ts +0 -1
  181. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.execution.d.ts +1 -2
  182. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.request.d.ts +3 -1
  183. package/f-draggable/connections/create-connection/create-connection-preparation/index.d.ts +1 -1
  184. package/f-draggable/connections/create-connection/create-connection.drag-handler.d.ts +3 -5
  185. package/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.execution.d.ts +7 -7
  186. package/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.request.d.ts +2 -2
  187. package/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/index.d.ts +0 -1
  188. package/f-draggable/connections/providers.d.ts +2 -2
  189. package/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.request.d.ts +3 -1
  190. package/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.d.ts +2 -4
  191. package/f-draggable/f-draggable-base.d.ts +4 -1
  192. package/f-draggable/f-draggable-data-context.d.ts +2 -2
  193. package/f-draggable/f-draggable.directive.d.ts +16 -3
  194. package/f-draggable/f-injector.d.ts +8 -0
  195. package/f-draggable/index.d.ts +1 -0
  196. package/f-draggable/node/connection-drag-handlers/base-connection.drag-handler.d.ts +21 -0
  197. package/f-draggable/node/connection-drag-handlers/index.d.ts +4 -0
  198. package/f-draggable/node/connection-drag-handlers/source-connection.drag-handler.d.ts +7 -0
  199. package/f-draggable/node/connection-drag-handlers/source-target-connection.drag-handler.d.ts +10 -0
  200. package/f-draggable/node/connection-drag-handlers/target-connection.drag-handler.d.ts +7 -0
  201. package/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.d.ts +14 -13
  202. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/calculate-common-node-move-limits.execution.d.ts +19 -0
  203. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/calculate-common-node-move-limits.request.d.ts +5 -0
  204. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/index.d.ts +2 -0
  205. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/calculate-node-move-limits.execution.d.ts +15 -0
  206. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/{calculate-node-move-restrictions/calculate-node-move-restrictions.request.d.ts → calculate-node-move-limits/calculate-node-move-limits.request.d.ts} +1 -1
  207. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/index.d.ts +2 -0
  208. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.execution.d.ts +5 -10
  209. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.request.d.ts +4 -4
  210. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.execution.d.ts +8 -13
  211. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.request.d.ts +4 -4
  212. package/f-draggable/node/create-move-nodes-drag-model-from-selection/i-node-move-limits-and-position.d.ts +5 -0
  213. package/f-draggable/node/create-move-nodes-drag-model-from-selection/i-node-move-limits.d.ts +3 -0
  214. package/f-draggable/node/create-move-nodes-drag-model-from-selection/index.d.ts +4 -3
  215. package/f-draggable/node/create-move-nodes-drag-model-from-selection/providers.d.ts +3 -3
  216. package/f-draggable/node/index.d.ts +3 -5
  217. package/f-draggable/node/line-alignment-preparation/line-alignment-preparation.execution.d.ts +0 -2
  218. package/f-draggable/node/line-alignment-preparation/line-alignment-preparation.request.d.ts +5 -0
  219. package/f-draggable/node/line-alignment.drag-handler.d.ts +2 -3
  220. package/f-draggable/node/node-drag-to-parent-preparation/index.d.ts +0 -2
  221. package/f-draggable/node/node-drag-to-parent-preparation/node-drag-to-parent-preparation.execution.d.ts +1 -0
  222. package/f-draggable/node/node-move-finalize/node-move-finalize.execution.d.ts +2 -0
  223. package/f-draggable/node/node.drag-handler.d.ts +6 -9
  224. package/f-draggable/node/point-bounds-limiter.d.ts +15 -0
  225. package/f-draggable/node/providers.d.ts +2 -1
  226. package/f-draggable/node/summary-node.drag-handler.d.ts +14 -0
  227. package/f-draggable/node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.execution.d.ts +5 -5
  228. package/f-draggable/node-resize/get-node-resize-restrictions/get-node-resize-restrictions.execution.d.ts +5 -4
  229. package/f-draggable/node-resize/get-node-resize-restrictions/i-node-resize-restrictions.d.ts +3 -3
  230. package/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.execution.d.ts +1 -3
  231. package/f-draggable/node-resize/node-resize-preparation/index.d.ts +0 -2
  232. package/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.execution.d.ts +13 -11
  233. package/f-draggable/node-resize/node-resize.drag-handler.d.ts +16 -12
  234. package/f-draggable/node-resize/providers.d.ts +2 -1
  235. package/f-draggable/node-resize/resize-direction.d.ts +16 -0
  236. package/f-draggable/providers.d.ts +1 -1
  237. package/f-draggable/single-select/single-select.execution.d.ts +54 -20
  238. package/f-draggable/single-select/single-select.request.d.ts +3 -1
  239. package/f-external-item/domain/external-item-preparation/external-item-preparation.execution.d.ts +7 -11
  240. package/f-external-item/domain/external-item-preparation/index.d.ts +0 -1
  241. package/f-external-item/domain/external-item-preparation/providers.d.ts +1 -2
  242. package/f-external-item/domain/external-item.drag-handler.d.ts +2 -3
  243. package/f-external-item/domain/providers.d.ts +1 -1
  244. package/f-minimap/domain/minimap-drag-finalize/index.d.ts +0 -1
  245. package/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.d.ts +1 -0
  246. package/f-minimap/domain/minimap-drag-finalize/providers.d.ts +1 -2
  247. package/f-minimap/domain/minimap-drag-preparation/index.d.ts +0 -1
  248. package/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.d.ts +1 -0
  249. package/f-minimap/domain/minimap-drag-preparation/providers.d.ts +1 -2
  250. package/f-minimap/domain/providers.d.ts +1 -1
  251. package/f-node/f-node-base.d.ts +3 -3
  252. package/f-node/f-resize-handle/e-f-resize-handle-type.d.ts +6 -2
  253. package/f-node/providers.d.ts +1 -1
  254. package/f-selection-area/domain/providers.d.ts +3 -1
  255. package/f-selection-area/domain/selection-area-finalize/index.d.ts +0 -2
  256. package/f-selection-area/domain/selection-area-finalize/selection-area-finalize.execution.d.ts +2 -3
  257. package/f-selection-area/domain/selection-area-preparation/index.d.ts +0 -2
  258. package/f-selection-area/domain/selection-area-preparation/selection-area-preparation.execution.d.ts +6 -8
  259. package/f-selection-area/domain/selection-area-preparation/selection-area-preparation.request.d.ts +3 -1
  260. package/f-selection-area/domain/selection-area.drag-handle.d.ts +7 -6
  261. package/f-selection-area/f-selection-area.component.d.ts +3 -1
  262. package/f-storage/providers.d.ts +1 -1
  263. package/fesm2022/foblex-flow.mjs +1160 -1156
  264. package/fesm2022/foblex-flow.mjs.map +1 -1
  265. package/mixins/change-selection/change-selection.d.ts +2 -2
  266. package/mixins/change-selection/i-selectable.d.ts +10 -0
  267. package/mixins/change-selection/index.d.ts +1 -1
  268. package/package.json +2 -2
  269. package/domain/f-selection/get-can-be-selected-items/i-can-be-selected.d.ts +0 -6
  270. package/esm2022/domain/f-selection/get-can-be-selected-items/i-can-be-selected.mjs +0 -2
  271. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.execution.mjs +0 -47
  272. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.request.mjs +0 -9
  273. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/index.mjs +0 -3
  274. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.validator.mjs +0 -36
  275. package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.validator.mjs +0 -28
  276. package/esm2022/f-draggable/node/connection-base-drag-handler.mjs +0 -55
  277. package/esm2022/f-draggable/node/connection-source.drag-handler.mjs +0 -17
  278. package/esm2022/f-draggable/node/connection-target.drag-handler.mjs +0 -17
  279. package/esm2022/f-draggable/node/connection.drag-handler.mjs +0 -23
  280. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/calculate-common-node-move-restrictions.execution.mjs +0 -40
  281. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/calculate-common-node-move-restrictions.request.mjs +0 -7
  282. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/index.mjs +0 -3
  283. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-restrictions/calculate-node-move-restrictions.execution.mjs +0 -42
  284. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-restrictions/calculate-node-move-restrictions.request.mjs +0 -9
  285. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-restrictions/index.mjs +0 -3
  286. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/i-node-with-distance-restrictions.mjs +0 -2
  287. package/esm2022/f-draggable/node/node-drag-to-parent-preparation/node-drag-to-parent-preparation.validator.mjs +0 -26
  288. package/esm2022/f-draggable/node/node-drag-to-parent-preparation/providers.mjs +0 -7
  289. package/esm2022/f-draggable/node/node-resize-by-child.drag-handler.mjs +0 -16
  290. package/esm2022/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.validator.mjs +0 -44
  291. package/esm2022/f-draggable/node-resize/node-resize-preparation/providers.mjs +0 -7
  292. package/esm2022/f-external-item/domain/external-item-preparation/external-item-preparation.validator.mjs +0 -30
  293. package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.validator.mjs +0 -26
  294. package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.validator.mjs +0 -30
  295. package/esm2022/f-selection-area/domain/selection-area-finalize/providers.mjs +0 -7
  296. package/esm2022/f-selection-area/domain/selection-area-finalize/selection-area-finalize.validator.mjs +0 -26
  297. package/esm2022/f-selection-area/domain/selection-area-preparation/providers.mjs +0 -7
  298. package/esm2022/f-selection-area/domain/selection-area-preparation/selection-area-preparation.validator.mjs +0 -32
  299. package/esm2022/mixins/change-selection/i-can-change-selection.mjs +0 -2
  300. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.execution.d.ts +0 -17
  301. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.request.d.ts +0 -7
  302. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/index.d.ts +0 -2
  303. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.validator.d.ts +0 -14
  304. package/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.validator.d.ts +0 -12
  305. package/f-draggable/node/connection-base-drag-handler.d.ts +0 -24
  306. package/f-draggable/node/connection-source.drag-handler.d.ts +0 -11
  307. package/f-draggable/node/connection-target.drag-handler.d.ts +0 -11
  308. package/f-draggable/node/connection.drag-handler.d.ts +0 -14
  309. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/calculate-common-node-move-restrictions.execution.d.ts +0 -13
  310. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/calculate-common-node-move-restrictions.request.d.ts +0 -5
  311. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/index.d.ts +0 -2
  312. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-restrictions/calculate-node-move-restrictions.execution.d.ts +0 -12
  313. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-restrictions/index.d.ts +0 -2
  314. package/f-draggable/node/create-move-nodes-drag-model-from-selection/i-node-with-distance-restrictions.d.ts +0 -6
  315. package/f-draggable/node/node-drag-to-parent-preparation/node-drag-to-parent-preparation.validator.d.ts +0 -11
  316. package/f-draggable/node/node-drag-to-parent-preparation/providers.d.ts +0 -3
  317. package/f-draggable/node/node-resize-by-child.drag-handler.d.ts +0 -11
  318. package/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.validator.d.ts +0 -17
  319. package/f-draggable/node-resize/node-resize-preparation/providers.d.ts +0 -3
  320. package/f-external-item/domain/external-item-preparation/external-item-preparation.validator.d.ts +0 -12
  321. package/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.validator.d.ts +0 -11
  322. package/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.validator.d.ts +0 -13
  323. package/f-selection-area/domain/selection-area-finalize/providers.d.ts +0 -3
  324. package/f-selection-area/domain/selection-area-finalize/selection-area-finalize.validator.d.ts +0 -11
  325. package/f-selection-area/domain/selection-area-preparation/providers.d.ts +0 -3
  326. package/f-selection-area/domain/selection-area-preparation/selection-area-preparation.validator.d.ts +0 -13
  327. package/mixins/change-selection/i-can-change-selection.d.ts +0 -10
@@ -3,6 +3,7 @@ import { FDraggableBase } from './f-draggable-base';
3
3
  import { FDropToGroupEvent } from './node';
4
4
  import { FCreateConnectionEvent, FReassignConnectionEvent } from './connections';
5
5
  import { FSelectionChangeEvent } from './f-selection-change-event';
6
+ import { FEventTrigger } from '../domain';
6
7
  import { FCreateNodeEvent } from '../f-external-item';
7
8
  import { BrowserService } from '@foblex/platform';
8
9
  import { ICanRunOutsideAngular, IPointerEvent } from '@foblex/drag-toolkit';
@@ -12,17 +13,25 @@ export declare class FDraggableDirective extends FDraggableBase implements OnIni
12
13
  private _fBrowser;
13
14
  private _elementReference;
14
15
  private _fMediator;
16
+ private _fPlatform;
17
+ private _injector;
15
18
  disabled: boolean;
16
19
  get hostElement(): HTMLElement;
20
+ fMultiSelectTrigger: FEventTrigger;
21
+ fReassignConnectionTrigger: FEventTrigger;
22
+ fCreateConnectionTrigger: FEventTrigger;
17
23
  fSelectionChange: EventEmitter<FSelectionChangeEvent>;
18
24
  fNodeIntersectedWithConnections: EventEmitter<FNodeIntersectedWithConnections>;
19
- emitWhenNodeIntersectedWithConnection: boolean;
25
+ fEmitOnNodeIntersect: boolean;
20
26
  fCreateNode: EventEmitter<FCreateNodeEvent<any>>;
21
27
  fReassignConnection: EventEmitter<FReassignConnectionEvent>;
22
28
  fCreateConnection: EventEmitter<FCreateConnectionEvent>;
23
29
  fDropToGroup: EventEmitter<FDropToGroupEvent>;
24
30
  vCellSize: number;
25
31
  hCellSize: number;
32
+ fCellSizeWhileDragging: boolean;
33
+ fDragStarted: EventEmitter<void>;
34
+ fDragEnded: EventEmitter<void>;
26
35
  private plugins;
27
36
  constructor(ngZone: ICanRunOutsideAngular, _fBrowser: BrowserService);
28
37
  ngOnInit(): void;
@@ -35,6 +44,10 @@ export declare class FDraggableDirective extends FDraggableBase implements OnIni
35
44
  protected finalizeDragSequence(): void;
36
45
  ngOnDestroy(): void;
37
46
  static ɵfac: i0.ɵɵFactoryDeclaration<FDraggableDirective, [{ optional: true; }, null]>;
38
- static ɵdir: i0.ɵɵDirectiveDeclaration<FDraggableDirective, "f-flow[fDraggable]", ["fDraggable"], { "disabled": { "alias": "fDraggableDisabled"; "required": false; }; "emitWhenNodeIntersectedWithConnection": { "alias": "emitWhenNodeIntersectedWithConnection"; "required": false; }; "vCellSize": { "alias": "vCellSize"; "required": false; }; "hCellSize": { "alias": "hCellSize"; "required": false; }; }, { "fSelectionChange": "fSelectionChange"; "fNodeIntersectedWithConnections": "fNodeIntersectedWithConnections"; "fCreateNode": "fCreateNode"; "fReassignConnection": "fReassignConnection"; "fCreateConnection": "fCreateConnection"; "fDropToGroup": "fDropToGroup"; }, ["plugins"], never, false, never>;
39
- static ngAcceptInputType_emitWhenNodeIntersectedWithConnection: unknown;
47
+ static ɵdir: i0.ɵɵDirectiveDeclaration<FDraggableDirective, "f-flow[fDraggable]", ["fDraggable"], { "disabled": { "alias": "fDraggableDisabled"; "required": false; }; "fMultiSelectTrigger": { "alias": "fMultiSelectTrigger"; "required": false; }; "fReassignConnectionTrigger": { "alias": "fReassignConnectionTrigger"; "required": false; }; "fCreateConnectionTrigger": { "alias": "fCreateConnectionTrigger"; "required": false; }; "fEmitOnNodeIntersect": { "alias": "fEmitOnNodeIntersect"; "required": false; }; "vCellSize": { "alias": "vCellSize"; "required": false; }; "hCellSize": { "alias": "hCellSize"; "required": false; }; "fCellSizeWhileDragging": { "alias": "fCellSizeWhileDragging"; "required": false; }; }, { "fSelectionChange": "fSelectionChange"; "fNodeIntersectedWithConnections": "fNodeIntersectedWithConnections"; "fCreateNode": "fCreateNode"; "fReassignConnection": "fReassignConnection"; "fCreateConnection": "fCreateConnection"; "fDropToGroup": "fDropToGroup"; "fDragStarted": "fDragStarted"; "fDragEnded": "fDragEnded"; }, ["plugins"], never, false, never>;
48
+ static ngAcceptInputType_disabled: unknown;
49
+ static ngAcceptInputType_fEmitOnNodeIntersect: unknown;
50
+ static ngAcceptInputType_vCellSize: unknown;
51
+ static ngAcceptInputType_hCellSize: unknown;
52
+ static ngAcceptInputType_fCellSizeWhileDragging: unknown;
40
53
  }
@@ -0,0 +1,8 @@
1
+ import { Injector, Type } from "@angular/core";
2
+ export declare class FInjector {
3
+ private static _injector;
4
+ static set(injector: Injector): void;
5
+ static clear(): void;
6
+ static get(): Injector;
7
+ }
8
+ export declare function fInject<T>(token: Type<T>): T;
@@ -8,6 +8,7 @@ export * from './single-select';
8
8
  export * from './f-draggable.directive';
9
9
  export * from './f-draggable-base';
10
10
  export * from './f-draggable-data-context';
11
+ export * from './f-injector';
11
12
  export * from './f-selection-change-event';
12
13
  export * from './i-f-drag-and-drop-plugin';
13
14
  export * from './i-draggable-item';
@@ -0,0 +1,21 @@
1
+ import { IPoint } from '@foblex/2d';
2
+ import { FConnectionBase } from '../../../f-connection';
3
+ export declare class BaseConnectionDragHandler {
4
+ fConnection: FConnectionBase;
5
+ private _fMediator;
6
+ private _fComponentStore;
7
+ private _fOutputWithRect;
8
+ private _fInputWithRect;
9
+ private get _fOutput();
10
+ private get _fInput();
11
+ private _sourceDifference;
12
+ private _targetDifference;
13
+ constructor(fConnection: FConnectionBase);
14
+ private _initialize;
15
+ setSourceDifference(difference: IPoint): void;
16
+ setTargetDifference(difference: IPoint): void;
17
+ protected redraw(): void;
18
+ private _recalculateConnection;
19
+ private _redrawConnection;
20
+ private _connectorNotFoundPrefix;
21
+ }
@@ -0,0 +1,4 @@
1
+ export * from './base-connection.drag-handler';
2
+ export * from './source-connection.drag-handler';
3
+ export * from './source-target-connection.drag-handler';
4
+ export * from './target-connection.drag-handler';
@@ -0,0 +1,7 @@
1
+ import { BaseConnectionDragHandler } from './base-connection.drag-handler';
2
+ import { FConnectionBase } from '../../../f-connection';
3
+ import { IPoint } from '@foblex/2d';
4
+ export declare class SourceConnectionDragHandler extends BaseConnectionDragHandler {
5
+ constructor(fConnection: FConnectionBase);
6
+ setSourceDifference(difference: IPoint): void;
7
+ }
@@ -0,0 +1,10 @@
1
+ import { BaseConnectionDragHandler } from './base-connection.drag-handler';
2
+ import { FConnectionBase } from '../../../f-connection';
3
+ import { IPoint } from '@foblex/2d';
4
+ export declare class SourceTargetConnectionDragHandler extends BaseConnectionDragHandler {
5
+ private _callTracker;
6
+ constructor(fConnection: FConnectionBase);
7
+ setSourceDifference(difference: IPoint): void;
8
+ setTargetDifference(difference: IPoint): void;
9
+ private _checkAndTriggerAction;
10
+ }
@@ -0,0 +1,7 @@
1
+ import { FConnectionBase } from '../../../f-connection';
2
+ import { BaseConnectionDragHandler } from './base-connection.drag-handler';
3
+ import { IPoint } from '@foblex/2d';
4
+ export declare class TargetConnectionDragHandler extends BaseConnectionDragHandler {
5
+ constructor(fConnection: FConnectionBase);
6
+ setTargetDifference(difference: IPoint): void;
7
+ }
@@ -1,27 +1,28 @@
1
1
  import { CreateMoveNodesDragModelFromSelectionRequest } from './create-move-nodes-drag-model-from-selection.request';
2
2
  import { IExecution } from '@foblex/mediator';
3
- import { IDraggableItem } from '../../i-draggable-item';
3
+ import { SummaryNodeDragHandler } from '../summary-node.drag-handler';
4
4
  import * as i0 from "@angular/core";
5
- export declare class CreateMoveNodesDragModelFromSelectionExecution implements IExecution<CreateMoveNodesDragModelFromSelectionRequest, IDraggableItem[]> {
5
+ export declare class CreateMoveNodesDragModelFromSelectionExecution implements IExecution<CreateMoveNodesDragModelFromSelectionRequest, SummaryNodeDragHandler> {
6
6
  private _fMediator;
7
7
  private _fComponentsStore;
8
8
  private _fDraggableDataContext;
9
- handle(request: CreateMoveNodesDragModelFromSelectionRequest): IDraggableItem[];
9
+ handle(request: CreateMoveNodesDragModelFromSelectionRequest): SummaryNodeDragHandler;
10
10
  private _getDraggedNodes;
11
11
  private _getNodesFromSelection;
12
12
  private _findNode;
13
- private _getNodesWithRestrictions;
14
- private _getNodeMoveRestrictions;
13
+ private _getNodesToDragWithCommonLimits;
14
+ private _getNodesMoveLimits;
15
+ private _getNodeMoveLimits;
15
16
  private _isParentNodeInArray;
16
- private _getChildrenItemsToDrag;
17
17
  private _getChildrenNodes;
18
- private _applyCommonRestrictions;
19
- private getAllOutputIds;
20
- private getOutputsForNode;
21
- private getAllInputIds;
22
- private getInputsForNode;
23
- private getDragHandlersFromNodes;
24
- private getDragHandlersWithConnections;
18
+ private _calculateCommonLimits;
19
+ private _getAllOutputIds;
20
+ private _getNodeOutputIds;
21
+ private _getAllInputIds;
22
+ private _getNodeInputIds;
23
+ private _mapToNodeDragHandlers;
24
+ private _setConnectionsHandlersToNodes;
25
+ private _getDraggedNodesBoundingRect;
25
26
  static ɵfac: i0.ɵɵFactoryDeclaration<CreateMoveNodesDragModelFromSelectionExecution, never>;
26
27
  static ɵprov: i0.ɵɵInjectableDeclaration<CreateMoveNodesDragModelFromSelectionExecution>;
27
28
  }
@@ -0,0 +1,19 @@
1
+ import { CalculateCommonNodeMoveLimitsRequest } from './calculate-common-node-move-limits.request';
2
+ import { IExecution } from '@foblex/mediator';
3
+ import { INodeMoveLimits } from '../../i-node-move-limits';
4
+ import * as i0 from "@angular/core";
5
+ export declare class CalculateCommonNodeMoveLimitsExecution implements IExecution<CalculateCommonNodeMoveLimitsRequest, INodeMoveLimits> {
6
+ private _fComponentsStore;
7
+ private get _vCellSize();
8
+ private get _hCellSize();
9
+ handle(request: CalculateCommonNodeMoveLimitsRequest): INodeMoveLimits;
10
+ private _calculateCommonLimits;
11
+ private _clampRestrictions;
12
+ private _clampMinRestrictions;
13
+ private _clampMaxRestrictions;
14
+ private _snapLimitToGrid;
15
+ private _snapLimitToGridMinimum;
16
+ private _snapLimitToGridMaximum;
17
+ static ɵfac: i0.ɵɵFactoryDeclaration<CalculateCommonNodeMoveLimitsExecution, never>;
18
+ static ɵprov: i0.ɵɵInjectableDeclaration<CalculateCommonNodeMoveLimitsExecution>;
19
+ }
@@ -0,0 +1,5 @@
1
+ import { INodeMoveLimitsAndPosition } from '../../i-node-move-limits-and-position';
2
+ export declare class CalculateCommonNodeMoveLimitsRequest {
3
+ limits: INodeMoveLimitsAndPosition[];
4
+ constructor(limits: INodeMoveLimitsAndPosition[]);
5
+ }
@@ -0,0 +1,2 @@
1
+ export * from './calculate-common-node-move-limits.execution';
2
+ export * from './calculate-common-node-move-limits.request';
@@ -0,0 +1,15 @@
1
+ import { CalculateNodeMoveLimitsRequest } from './calculate-node-move-limits.request';
2
+ import { IExecution } from '@foblex/mediator';
3
+ import { INodeMoveLimits } from '../../i-node-move-limits';
4
+ import * as i0 from "@angular/core";
5
+ export declare class CalculateNodeMoveLimitsExecution implements IExecution<CalculateNodeMoveLimitsRequest, INodeMoveLimits> {
6
+ private _fMediator;
7
+ handle(request: CalculateNodeMoveLimitsRequest): INodeMoveLimits;
8
+ private _fNodeRect;
9
+ private _fParentRect;
10
+ private _calculateDifference;
11
+ private _calculateMinimumDifference;
12
+ private _calculateMaximumDifference;
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<CalculateNodeMoveLimitsExecution, never>;
14
+ static ɵprov: i0.ɵɵInjectableDeclaration<CalculateNodeMoveLimitsExecution>;
15
+ }
@@ -1,5 +1,5 @@
1
1
  import { FNodeBase } from '../../../../../f-node';
2
- export declare class CalculateNodeMoveRestrictionsRequest {
2
+ export declare class CalculateNodeMoveLimitsRequest {
3
3
  fNode: FNodeBase;
4
4
  hasParentNodeInSelected: boolean;
5
5
  constructor(fNode: FNodeBase, hasParentNodeInSelected: boolean);
@@ -0,0 +1,2 @@
1
+ export * from './calculate-node-move-limits.execution';
2
+ export * from './calculate-node-move-limits.request';
@@ -1,20 +1,15 @@
1
1
  import { PutInputConnectionHandlersToArrayRequest } from './put-input-connection-handlers-to-array.request';
2
2
  import { IExecution } from '@foblex/mediator';
3
- import { FNodeBase } from '../../../../../f-node';
4
- import { FConnectionBase } from '../../../../../f-connection';
5
3
  import * as i0 from "@angular/core";
6
4
  export declare class PutInputConnectionHandlersToArrayExecution implements IExecution<PutInputConnectionHandlersToArrayRequest, void> {
7
- private _fMediator;
8
5
  private _fComponentsStore;
9
6
  private get _fConnections();
10
7
  handle(request: PutInputConnectionHandlersToArrayRequest): void;
11
- getInputConnections(node: FNodeBase): FConnectionBase[];
12
- private getInputsForNode;
13
- private getExistingConnectionHandlerIndex;
14
- private createNewConnectionHandler;
15
- private getNewConnectionHandler;
16
- private updateExistingConnectionHandler;
17
- private getNewSourceConnectionHandler;
8
+ private _getInputConnections;
9
+ private _getNodeInputIds;
10
+ private _createAndSetConnectionToNodeHandler;
11
+ private _getExistingConnectionHandler;
12
+ private _createConnectionHandler;
18
13
  static ɵfac: i0.ɵɵFactoryDeclaration<PutInputConnectionHandlersToArrayExecution, never>;
19
14
  static ɵprov: i0.ɵɵInjectableDeclaration<PutInputConnectionHandlersToArrayExecution>;
20
15
  }
@@ -1,8 +1,8 @@
1
1
  import { NodeDragHandler } from '../../../node.drag-handler';
2
- import { IDraggableItem } from '../../../../i-draggable-item';
2
+ import { BaseConnectionDragHandler } from '../../../connection-drag-handlers/base-connection.drag-handler';
3
3
  export declare class PutInputConnectionHandlersToArrayRequest {
4
- nodeDragHandler: NodeDragHandler;
4
+ fDragHandler: NodeDragHandler;
5
5
  outputIds: string[];
6
- result: IDraggableItem[];
7
- constructor(nodeDragHandler: NodeDragHandler, outputIds: string[], result: IDraggableItem[]);
6
+ result: BaseConnectionDragHandler[];
7
+ constructor(fDragHandler: NodeDragHandler, outputIds: string[], result: BaseConnectionDragHandler[]);
8
8
  }
@@ -1,22 +1,17 @@
1
1
  import { PutOutputConnectionHandlersToArrayRequest } from './put-output-connection-handlers-to-array.request';
2
- import { FComponentsStore } from '../../../../../f-storage';
3
- import { FMediator, IExecution } from '@foblex/mediator';
2
+ import { IExecution } from '@foblex/mediator';
4
3
  import { FNodeBase } from '../../../../../f-node';
5
4
  import { FConnectionBase } from '../../../../../f-connection';
6
5
  import * as i0 from "@angular/core";
7
6
  export declare class PutOutputConnectionHandlersToArrayExecution implements IExecution<PutOutputConnectionHandlersToArrayRequest, void> {
8
- private fComponentsStore;
9
- private fMediator;
10
- private get fConnections();
11
- constructor(fComponentsStore: FComponentsStore, fMediator: FMediator);
7
+ private _fComponentsStore;
8
+ private get _fConnections();
12
9
  handle(request: PutOutputConnectionHandlersToArrayRequest): void;
13
- getOutputConnections(node: FNodeBase): FConnectionBase[];
14
- private getOutputsForNode;
15
- private getExistingConnectionHandlerIndex;
16
- private createNewConnectionHandler;
17
- private getNewConnectionHandler;
18
- private updateExistingConnectionHandler;
19
- private getNewSourceConnectionHandler;
10
+ _getOutputConnections(node: FNodeBase): FConnectionBase[];
11
+ private _getNodeOutputIds;
12
+ private _createAndSetConnectionToNodeHandler;
13
+ private _getExistingConnectionHandler;
14
+ private _createConnectionHandler;
20
15
  static ɵfac: i0.ɵɵFactoryDeclaration<PutOutputConnectionHandlersToArrayExecution, never>;
21
16
  static ɵprov: i0.ɵɵInjectableDeclaration<PutOutputConnectionHandlersToArrayExecution>;
22
17
  }
@@ -1,8 +1,8 @@
1
1
  import { NodeDragHandler } from '../../../node.drag-handler';
2
- import { IDraggableItem } from '../../../../i-draggable-item';
2
+ import { BaseConnectionDragHandler } from '../../../connection-drag-handlers/base-connection.drag-handler';
3
3
  export declare class PutOutputConnectionHandlersToArrayRequest {
4
- nodeDragHandler: NodeDragHandler;
4
+ fDragHandler: NodeDragHandler;
5
5
  inputIds: string[];
6
- result: IDraggableItem[];
7
- constructor(nodeDragHandler: NodeDragHandler, inputIds: string[], result: IDraggableItem[]);
6
+ result: BaseConnectionDragHandler[];
7
+ constructor(fDragHandler: NodeDragHandler, inputIds: string[], result: BaseConnectionDragHandler[]);
8
8
  }
@@ -0,0 +1,5 @@
1
+ import { IPoint } from '@foblex/2d';
2
+ import { INodeMoveLimits } from './i-node-move-limits';
3
+ export interface INodeMoveLimitsAndPosition extends INodeMoveLimits {
4
+ position: IPoint;
5
+ }
@@ -0,0 +1,3 @@
1
+ import { IMinMaxPoint } from '@foblex/2d';
2
+ export interface INodeMoveLimits extends IMinMaxPoint {
3
+ }
@@ -1,8 +1,9 @@
1
- export * from './domain/calculate-common-node-move-restrictions';
1
+ export * from './domain/calculate-common-node-move-limits';
2
2
  export * from './domain/put-input-connection-handlers-to-array';
3
3
  export * from './domain/put-output-connection-handlers-to-array';
4
- export * from './domain/calculate-node-move-restrictions';
4
+ export * from './domain/calculate-node-move-limits';
5
5
  export * from './providers';
6
6
  export * from './create-move-nodes-drag-model-from-selection.execution';
7
7
  export * from './create-move-nodes-drag-model-from-selection.request';
8
- export * from './i-node-with-distance-restrictions';
8
+ export * from './i-node-move-limits';
9
+ export * from './i-node-move-limits-and-position';
@@ -1,6 +1,6 @@
1
1
  import { CreateMoveNodesDragModelFromSelectionExecution } from './create-move-nodes-drag-model-from-selection.execution';
2
- import { CalculateNodeMoveRestrictionsExecution } from './domain/calculate-node-move-restrictions';
2
+ import { CalculateNodeMoveLimitsExecution } from './domain/calculate-node-move-limits';
3
3
  import { PutInputConnectionHandlersToArrayExecution } from './domain/put-input-connection-handlers-to-array';
4
4
  import { PutOutputConnectionHandlersToArrayExecution } from './domain/put-output-connection-handlers-to-array';
5
- import { CalculateCommonNodeMoveRestrictionsExecution } from './domain/calculate-common-node-move-restrictions';
6
- export declare const CREATE_MOVE_NODE_DRAG_MODEL_FROM_SELECTION_PROVIDERS: (typeof CalculateCommonNodeMoveRestrictionsExecution | typeof CalculateNodeMoveRestrictionsExecution | typeof PutInputConnectionHandlersToArrayExecution | typeof PutOutputConnectionHandlersToArrayExecution | typeof CreateMoveNodesDragModelFromSelectionExecution)[];
5
+ import { CalculateCommonNodeMoveLimitsExecution } from './domain/calculate-common-node-move-limits';
6
+ export declare const CREATE_MOVE_NODE_DRAG_MODEL_FROM_SELECTION_PROVIDERS: (typeof CalculateCommonNodeMoveLimitsExecution | typeof CalculateNodeMoveLimitsExecution | typeof PutInputConnectionHandlersToArrayExecution | typeof PutOutputConnectionHandlersToArrayExecution | typeof CreateMoveNodesDragModelFromSelectionExecution)[];
@@ -1,16 +1,14 @@
1
+ export * from './connection-drag-handlers';
1
2
  export * from './create-move-nodes-drag-model-from-selection';
2
3
  export * from './line-alignment-preparation';
3
4
  export * from './node-drag-to-parent-finalize';
4
5
  export * from './node-drag-to-parent-preparation';
5
6
  export * from './node-move-preparation';
6
7
  export * from './node-move-finalize';
7
- export * from './connection.drag-handler';
8
- export * from './connection-base-drag-handler';
9
- export * from './connection-source.drag-handler';
10
- export * from './connection-target.drag-handler';
11
8
  export * from './f-drop-to-group.event';
12
9
  export * from './line-alignment.drag-handler';
13
10
  export * from './node.drag-handler';
14
11
  export * from './node-drag-to-parent.drag-handler';
15
- export * from './node-resize-by-child.drag-handler';
12
+ export * from './point-bounds-limiter';
16
13
  export * from './providers';
14
+ export * from './summary-node.drag-handler';
@@ -8,11 +8,9 @@ export declare class LineAlignmentPreparationExecution implements IExecution<Lin
8
8
  private _fBrowser;
9
9
  private _lineService;
10
10
  handle(request: LineAlignmentPreparationRequest): void;
11
- private _getDraggedNodes;
12
11
  private _addLineAlignmentDragHandler;
13
12
  private _getFlowHostSize;
14
13
  private _createLineService;
15
- private _getDraggedNodesBoundingRect;
16
14
  private _getStaticNodeRects;
17
15
  private _getStaticNodes;
18
16
  private _getCommonRestrictions;
@@ -1,2 +1,7 @@
1
+ import { IRect } from '@foblex/2d';
2
+ import { FNodeBase } from '../../../f-node';
1
3
  export declare class LineAlignmentPreparationRequest {
4
+ fNodes: FNodeBase[];
5
+ commonRect: IRect;
6
+ constructor(fNodes: FNodeBase[], commonRect: IRect);
2
7
  }
@@ -1,17 +1,16 @@
1
1
  import { IMinMaxPoint, IPoint, IRect, ISize } from '@foblex/2d';
2
2
  import { IDraggableItem } from '../index';
3
- import { FComponentsStore } from '../../f-storage';
4
3
  import { ILineAlignmentResult, LineService } from '../../f-line-alignment';
5
4
  export declare class LineAlignmentDragHandler implements IDraggableItem {
6
- private _fComponentsStore;
7
5
  private _lineService;
8
6
  private _size;
9
7
  private _draggedNodeRect;
10
8
  private _rects;
11
9
  private _restrictions;
10
+ private _fComponentsStore;
12
11
  private _debounceTimer;
13
12
  private readonly _transform;
14
- constructor(_fComponentsStore: FComponentsStore, _lineService: LineService, _size: ISize, _draggedNodeRect: IRect, _rects: IRect[], _restrictions: IMinMaxPoint);
13
+ constructor(_lineService: LineService, _size: ISize, _draggedNodeRect: IRect, _rects: IRect[], _restrictions: IMinMaxPoint);
15
14
  onPointerMove(difference: IPoint): void;
16
15
  private _drawIntersectingLines;
17
16
  private _getDifference;
@@ -1,4 +1,2 @@
1
- export * from './providers';
2
1
  export * from './node-drag-to-parent-preparation.execution';
3
2
  export * from './node-drag-to-parent-preparation.request';
4
- export * from './node-drag-to-parent-preparation.validator';
@@ -12,6 +12,7 @@ export declare class NodeDragToParentPreparationExecution implements IExecution<
12
12
  private get fCanvasPosition();
13
13
  constructor(fMediator: FMediator, fDraggableDataContext: FDraggableDataContext, fComponentsStore: FComponentsStore);
14
14
  handle(request: NodeDragToParentPreparationRequest): void;
15
+ private _isValid;
15
16
  private _getNotDraggedNodesRects;
16
17
  private _getNodesBeingDragged;
17
18
  private _addParentNodes;
@@ -15,6 +15,8 @@ export declare class NodeMoveFinalizeExecution implements IExecution<NodeMoveFin
15
15
  private _getLineAlignmentDifference;
16
16
  private _applyLineAlignmentDifference;
17
17
  private _applyConnectionUnderDroppedNode;
18
+ private _isDraggedJustOneNode;
19
+ private _getFirstNodeOrGroup;
18
20
  static ɵfac: i0.ɵɵFactoryDeclaration<NodeMoveFinalizeExecution, never>;
19
21
  static ɵprov: i0.ɵɵInjectableDeclaration<NodeMoveFinalizeExecution>;
20
22
  }
@@ -1,18 +1,15 @@
1
- import { IMinMaxPoint, IPoint } from '@foblex/2d';
1
+ import { IPoint } from '@foblex/2d';
2
2
  import { IDraggableItem } from '../i-draggable-item';
3
3
  import { FNodeBase } from '../../f-node';
4
- import { FComponentsStore } from '../../f-storage';
4
+ import { BaseConnectionDragHandler } from './connection-drag-handlers';
5
5
  export declare class NodeDragHandler implements IDraggableItem {
6
- private _fComponentsStore;
7
6
  fNode: FNodeBase;
8
- restrictions: IMinMaxPoint;
7
+ fSourceHandlers: BaseConnectionDragHandler[];
8
+ fTargetHandlers: BaseConnectionDragHandler[];
9
9
  private readonly _onPointerDownPosition;
10
- constructor(_fComponentsStore: FComponentsStore, fNode: FNodeBase, restrictions: IMinMaxPoint);
10
+ constructor(fNode: FNodeBase, fSourceHandlers?: BaseConnectionDragHandler[], fTargetHandlers?: BaseConnectionDragHandler[]);
11
11
  onPointerMove(difference: IPoint): void;
12
- private _getPosition;
13
- private _getDifference;
12
+ private _calculateNewPosition;
14
13
  private _redraw;
15
14
  onPointerUp(): void;
16
- getDifferenceWithCellSize(difference: IPoint): IPoint;
17
- private _applyCellSize;
18
15
  }
@@ -0,0 +1,15 @@
1
+ import { IMinMaxPoint, IPoint } from '@foblex/2d';
2
+ export declare class PointBoundsLimiter {
3
+ private _onPointerDown;
4
+ private readonly _limit;
5
+ private _fComponentsStore;
6
+ private _vCellSize;
7
+ private _hCellSize;
8
+ constructor(_onPointerDown: IPoint, _limit: IMinMaxPoint);
9
+ limit(difference: IPoint, adjustCellSize: boolean): IPoint;
10
+ private _cellSizeStrategies;
11
+ private _applyCellSize;
12
+ private _skipCellSize;
13
+ private _clamp;
14
+ private _snapToGrid;
15
+ }
@@ -1,3 +1,4 @@
1
1
  import { NodeMoveFinalizeExecution } from './node-move-finalize';
2
+ import { NodeDragToParentPreparationExecution } from './node-drag-to-parent-preparation';
2
3
  import { LineAlignmentPreparationExecution } from './line-alignment-preparation';
3
- export declare const NODE_PROVIDERS: (typeof import("./create-move-nodes-drag-model-from-selection").CalculateCommonNodeMoveRestrictionsExecution | typeof import("./create-move-nodes-drag-model-from-selection").CalculateNodeMoveRestrictionsExecution | typeof import("./create-move-nodes-drag-model-from-selection").PutInputConnectionHandlersToArrayExecution | typeof import("./create-move-nodes-drag-model-from-selection").PutOutputConnectionHandlersToArrayExecution | typeof import("./create-move-nodes-drag-model-from-selection").CreateMoveNodesDragModelFromSelectionExecution | typeof LineAlignmentPreparationExecution | typeof NodeMoveFinalizeExecution | typeof import("./node-move-preparation").NodeMovePreparationExecution | typeof import("./node-drag-to-parent-preparation").NodeDragToParentPreparationExecution | typeof import("./node-drag-to-parent-preparation").NodeDragToParentPreparationValidator | typeof import("./node-drag-to-parent-finalize").NodeDragToParentFinalizeExecution)[];
4
+ export declare const NODE_PROVIDERS: (typeof import("./create-move-nodes-drag-model-from-selection").CalculateCommonNodeMoveLimitsExecution | typeof import("./create-move-nodes-drag-model-from-selection").CalculateNodeMoveLimitsExecution | typeof import("./create-move-nodes-drag-model-from-selection").PutInputConnectionHandlersToArrayExecution | typeof import("./create-move-nodes-drag-model-from-selection").PutOutputConnectionHandlersToArrayExecution | typeof import("./create-move-nodes-drag-model-from-selection").CreateMoveNodesDragModelFromSelectionExecution | typeof LineAlignmentPreparationExecution | typeof NodeMoveFinalizeExecution | typeof import("./node-move-preparation").NodeMovePreparationExecution | typeof NodeDragToParentPreparationExecution | typeof import("./node-drag-to-parent-finalize").NodeDragToParentFinalizeExecution)[];
@@ -0,0 +1,14 @@
1
+ import { IMinMaxPoint, IPoint, IRect } from '@foblex/2d';
2
+ import { IDraggableItem } from '../i-draggable-item';
3
+ import { NodeDragHandler } from './node.drag-handler';
4
+ export declare class SummaryNodeDragHandler implements IDraggableItem {
5
+ limits: IMinMaxPoint;
6
+ fHandlers: NodeDragHandler[];
7
+ commonRect: IRect;
8
+ private _fComponentStore;
9
+ private readonly _fBoundsLimiter;
10
+ constructor(limits: IMinMaxPoint, fHandlers: NodeDragHandler[], commonRect: IRect);
11
+ onPointerMove(difference: IPoint): void;
12
+ onPointerUp(): void;
13
+ calculateRestrictedDifference(difference: IPoint): IPoint;
14
+ }
@@ -3,11 +3,11 @@ import { IExecution } from '@foblex/mediator';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class ApplyChildResizeRestrictionsExecution implements IExecution<ApplyChildResizeRestrictionsRequest, void> {
5
5
  handle(request: ApplyChildResizeRestrictionsRequest): void;
6
- private applyRestrictions;
7
- private left;
8
- private top;
9
- private right;
10
- private bottom;
6
+ private _apply;
7
+ private _restrictLeft;
8
+ private _restrictTop;
9
+ private _restrictRight;
10
+ private _restrictBottom;
11
11
  static ɵfac: i0.ɵɵFactoryDeclaration<ApplyChildResizeRestrictionsExecution, never>;
12
12
  static ɵprov: i0.ɵɵInjectableDeclaration<ApplyChildResizeRestrictionsExecution>;
13
13
  }
@@ -1,12 +1,13 @@
1
1
  import { GetNodeResizeRestrictionsRequest } from './get-node-resize-restrictions.request';
2
2
  import { INodeResizeRestrictions } from './i-node-resize-restrictions';
3
- import { FMediator, IExecution } from '@foblex/mediator';
3
+ import { IExecution } from '@foblex/mediator';
4
4
  import * as i0 from "@angular/core";
5
5
  export declare class GetNodeResizeRestrictionsExecution implements IExecution<GetNodeResizeRestrictionsRequest, INodeResizeRestrictions> {
6
- private fMediator;
7
- constructor(fMediator: FMediator);
6
+ private _fMediator;
8
7
  handle(request: GetNodeResizeRestrictionsRequest): INodeResizeRestrictions;
9
- private getNodePaddings;
8
+ private _calculateNodePaddings;
9
+ private _getNormalizedParentBounds;
10
+ private _getNormalizedChildrenBounds;
10
11
  static ɵfac: i0.ɵɵFactoryDeclaration<GetNodeResizeRestrictionsExecution, never>;
11
12
  static ɵprov: i0.ɵɵInjectableDeclaration<GetNodeResizeRestrictionsExecution>;
12
13
  }
@@ -1,6 +1,6 @@
1
1
  import { IRect, ISize } from '@foblex/2d';
2
2
  export interface INodeResizeRestrictions {
3
- parentRect: IRect;
4
- childRect: IRect | null;
5
- minSize: ISize;
3
+ parentBounds: IRect;
4
+ childrenBounds: IRect | null;
5
+ minimumSize: ISize;
6
6
  }
@@ -1,10 +1,8 @@
1
1
  import { NodeResizeFinalizeRequest } from './node-resize-finalize.request';
2
2
  import { IExecution } from '@foblex/mediator';
3
- import { FDraggableDataContext } from '../../f-draggable-data-context';
4
3
  import * as i0 from "@angular/core";
5
4
  export declare class NodeResizeFinalizeExecution implements IExecution<NodeResizeFinalizeRequest, void> {
6
- private fDraggableDataContext;
7
- constructor(fDraggableDataContext: FDraggableDataContext);
5
+ private _fDraggableDataContext;
8
6
  handle(request: NodeResizeFinalizeRequest): void;
9
7
  private _isValid;
10
8
  static ɵfac: i0.ɵɵFactoryDeclaration<NodeResizeFinalizeExecution, never>;
@@ -1,4 +1,2 @@
1
- export * from './providers';
2
1
  export * from './node-resize-preparation.execution';
3
2
  export * from './node-resize-preparation.request';
4
- export * from './node-resize-preparation.validator';
@@ -1,18 +1,20 @@
1
1
  import { NodeResizePreparationRequest } from './node-resize-preparation.request';
2
- import { FMediator, IExecution } from '@foblex/mediator';
3
- import { FComponentsStore } from '../../../f-storage';
4
- import { FDraggableDataContext } from '../../f-draggable-data-context';
2
+ import { IExecution } from '@foblex/mediator';
5
3
  import * as i0 from "@angular/core";
6
4
  export declare class NodeResizePreparationExecution implements IExecution<NodeResizePreparationRequest, void> {
7
- private fComponentsStore;
8
- private fDraggableDataContext;
9
- private fMediator;
10
- private get transform();
11
- private get flowHost();
12
- constructor(fComponentsStore: FComponentsStore, fDraggableDataContext: FDraggableDataContext, fMediator: FMediator);
5
+ private _fMediator;
6
+ private _fComponentsStore;
7
+ private _fDraggableDataContext;
8
+ private get _transform();
9
+ private get _fHost();
10
+ private _fNode;
13
11
  handle(request: NodeResizePreparationRequest): void;
14
- private selectAndUpdateNodeLayer;
15
- private getNode;
12
+ private _isValid;
13
+ private _isDragHandleElement;
14
+ private _isNodeCanBeDragged;
15
+ private _getNode;
16
+ private _selectAndUpdateNodeLayer;
17
+ private _getHandleType;
16
18
  static ɵfac: i0.ɵɵFactoryDeclaration<NodeResizePreparationExecution, never>;
17
19
  static ɵprov: i0.ɵɵInjectableDeclaration<NodeResizePreparationExecution>;
18
20
  }