@foblex/flow 14.0.0 → 16.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (666) hide show
  1. package/esm2022/domain/create-connection-markers/create-connection-markers.execution.mjs +60 -0
  2. package/esm2022/domain/create-rounded-rect-from-element/create-rounded-rect-from-element.execution.mjs +38 -0
  3. package/esm2022/domain/emit-transform-changes/emit-transform-changes.execution.mjs +23 -0
  4. package/esm2022/domain/f-background/add-pattern-to-background/add-pattern-to-background.execution.mjs +46 -0
  5. package/esm2022/domain/f-canvas/center-group-or-node/center-group-or-node.execution.mjs +48 -0
  6. package/esm2022/domain/f-canvas/fit-to-flow/fit-to-flow.execution.mjs +55 -0
  7. package/esm2022/domain/f-canvas/input-canvas-position/input-canvas-position.execution.mjs +32 -0
  8. package/esm2022/domain/f-canvas/input-canvas-scale/input-canvas-scale.execution.mjs +27 -0
  9. package/esm2022/domain/f-canvas/reset-scale/reset-scale.execution.mjs +28 -0
  10. package/esm2022/domain/f-canvas/reset-scale-and-center/reset-scale-and-center.execution.mjs +50 -0
  11. package/esm2022/domain/f-canvas/update-scale/update-scale.execution.mjs +33 -0
  12. package/esm2022/domain/f-connection/find-closest-input-using-snap-threshold/find-closest-input-using-snap-threshold.execution.mjs +38 -0
  13. package/esm2022/domain/f-connection/get-all-can-be-connected-input-positions/get-all-can-be-connected-input-positions.execution.mjs +54 -0
  14. package/esm2022/domain/f-connection/get-connector-with-rect/get-connector-with-rect.execution.mjs +27 -0
  15. package/esm2022/domain/f-selection/clear-selection/clear-selection.execution.mjs +25 -0
  16. package/esm2022/domain/f-selection/get-selection/get-selection.execution.mjs +34 -0
  17. package/esm2022/domain/f-selection/select/select.execution.mjs +43 -0
  18. package/esm2022/domain/f-selection/select-all/select-all.execution.mjs +37 -0
  19. package/esm2022/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.execution.mjs +34 -0
  20. package/esm2022/domain/get-can-be-selected-items/get-can-be-selected-items.execution.mjs +56 -0
  21. package/esm2022/domain/get-connection-line/get-connection-line.execution.mjs +66 -0
  22. package/esm2022/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.execution.mjs +34 -0
  23. package/esm2022/domain/get-element-rect-in-flow/get-element-rect-in-flow.execution.mjs +42 -0
  24. package/esm2022/domain/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.mjs +32 -0
  25. package/esm2022/domain/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.mjs +49 -0
  26. package/esm2022/domain/get-flow-state/get-flow-state.execution.mjs +38 -0
  27. package/esm2022/domain/get-nodes-rect/get-nodes-rect.execution.mjs +30 -0
  28. package/esm2022/domain/get-position-in-flow/get-position-in-flow.execution.mjs +31 -0
  29. package/esm2022/domain/get-scaled-node-rects-with-flow-position/get-scaled-node-rects-with-flow-position.execution.mjs +33 -0
  30. package/esm2022/domain/is-connection-under-node/is-connection-under-node.execution.mjs +75 -0
  31. package/esm2022/domain/redraw-connections/redraw-connections.execution.mjs +62 -0
  32. package/esm2022/domain/show-connections-after-calculations/show-connections-after-calculations.execution.mjs +25 -0
  33. package/esm2022/domain/sort-item-layers/sort-item-layers.execution.mjs +29 -0
  34. package/esm2022/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.execution.mjs +56 -0
  35. package/esm2022/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.execution.mjs +58 -0
  36. package/esm2022/domain/subscribe-on-transform-changes/subscribe-on-transform-changes.execution.mjs +25 -0
  37. package/esm2022/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element.execution.mjs +29 -0
  38. package/esm2022/domain/update-item-and-children-layers/update-item-and-children-layers.execution.mjs +93 -0
  39. package/{esm2020 → esm2022}/f-backgroud/f-background-base.mjs +4 -4
  40. package/{esm2020 → esm2022}/f-backgroud/f-background.component.mjs +7 -7
  41. package/esm2022/f-backgroud/f-circle-pattern/f-circle-pattern.component.mjs +104 -0
  42. package/esm2022/f-backgroud/f-rect-pattern/f-rect-pattern.component.mjs +122 -0
  43. package/{esm2020 → esm2022}/f-canvas/f-canvas-base.mjs +4 -4
  44. package/esm2022/f-canvas/f-canvas.component.mjs +86 -0
  45. package/esm2022/f-connection/common/f-connection-base.mjs +66 -0
  46. package/esm2022/f-connection/common/f-connection-text/f-connection-text-path.directive.mjs +70 -0
  47. package/esm2022/f-connection/common/f-connection-text/f-connection-text.component.mjs +66 -0
  48. package/{esm2020 → esm2022}/f-connection/common/f-drag-handle/f-connection-drag-handle.component.mjs +7 -7
  49. package/esm2022/f-connection/common/f-gradient/f-connection-gradient.component.mjs +63 -0
  50. package/esm2022/f-connection/common/f-path/f-connection-path.component.mjs +59 -0
  51. package/{esm2020 → esm2022}/f-connection/common/f-selection/f-connection-selection.component.mjs +8 -8
  52. package/esm2022/f-connection/f-connection/f-connection.component.mjs +171 -0
  53. package/{esm2020 → esm2022}/f-connection/f-connection-builder/f-connection-factory.mjs +4 -4
  54. package/{esm2020 → esm2022}/f-connection/f-connection-center/f-connection-center.directive.mjs +4 -4
  55. package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +136 -0
  56. package/{esm2020 → esm2022}/f-connection/f-marker/f-marker-base.mjs +4 -4
  57. package/esm2022/f-connection/f-marker/f-marker.directive.mjs +58 -0
  58. package/esm2022/f-connection/f-snap-connection/f-snap-connection.component.mjs +136 -0
  59. package/{esm2020 → esm2022}/f-connectors/f-node-input/f-node-input-base.mjs +4 -4
  60. package/esm2022/f-connectors/f-node-input/f-node-input.directive.mjs +87 -0
  61. package/{esm2020 → esm2022}/f-connectors/f-node-outlet/f-node-outlet-base.mjs +4 -4
  62. package/esm2022/f-connectors/f-node-outlet/f-node-outlet.directive.mjs +71 -0
  63. package/{esm2020 → esm2022}/f-connectors/f-node-output/f-node-output-base.mjs +4 -4
  64. package/esm2022/f-connectors/f-node-output/f-node-output.directive.mjs +94 -0
  65. package/esm2022/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.execution.mjs +23 -0
  66. package/esm2022/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.validator.mjs +24 -0
  67. package/esm2022/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.execution.mjs +35 -0
  68. package/esm2022/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.validator.mjs +42 -0
  69. package/esm2022/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.execution.mjs +54 -0
  70. package/esm2022/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.validator.mjs +24 -0
  71. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.execution.mjs +43 -0
  72. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.execution.mjs +52 -0
  73. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.execution.mjs +38 -0
  74. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.validator.mjs +33 -0
  75. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.execution.mjs +42 -0
  76. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.validator.mjs +31 -0
  77. package/esm2022/f-draggable/connections/create-connection/create-connection.drag-handler.mjs +61 -0
  78. package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.execution.mjs +42 -0
  79. package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.validator.mjs +26 -0
  80. package/esm2022/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.execution.mjs +84 -0
  81. package/esm2022/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.validator.mjs +34 -0
  82. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.execution.mjs +49 -0
  83. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.validator.mjs +24 -0
  84. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.execution.mjs +63 -0
  85. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.validator.mjs +43 -0
  86. package/{esm2020 → esm2022}/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.mjs +4 -4
  87. package/esm2022/f-draggable/domain/get-node-padding/get-node-padding.execution.mjs +32 -0
  88. package/esm2022/f-draggable/domain/get-normalized-node-rect/get-normalized-node-rect.execution.mjs +28 -0
  89. package/esm2022/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.execution.mjs +47 -0
  90. package/esm2022/f-draggable/domain/get-parent-nodes/get-parent-nodes.execution.mjs +35 -0
  91. package/esm2022/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.execution.mjs +33 -0
  92. package/{esm2020 → esm2022}/f-draggable/f-draggable-base.mjs +4 -4
  93. package/{esm2020 → esm2022}/f-draggable/f-draggable-data-context.mjs +4 -4
  94. package/esm2022/f-draggable/f-draggable.directive.mjs +160 -0
  95. package/{esm2020 → esm2022}/f-draggable/node/connection-base-drag-handler.mjs +4 -4
  96. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.mjs +84 -0
  97. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/get-node-move-restrictions.execution.mjs +43 -0
  98. 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 +69 -0
  99. 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 +69 -0
  100. package/esm2022/f-draggable/node/node-move-finalize/node-move-finalize.execution.mjs +50 -0
  101. package/esm2022/f-draggable/node/node-move-finalize/node-move-finalize.validator.mjs +24 -0
  102. package/esm2022/f-draggable/node/node-move-preparation/node-move-preparation.execution.mjs +58 -0
  103. package/esm2022/f-draggable/node/node-move-preparation/node-move-preparation.validator.mjs +40 -0
  104. package/esm2022/f-draggable/node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.execution.mjs +48 -0
  105. package/esm2022/f-draggable/node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.execution.mjs +48 -0
  106. package/esm2022/f-draggable/node-resize/calculate-changed-position/calculate-changed-position.execution.mjs +24 -0
  107. package/esm2022/f-draggable/node-resize/calculate-changed-size/calculate-changed-size.execution.mjs +33 -0
  108. package/esm2022/f-draggable/node-resize/get-node-resize-restrictions/get-node-resize-restrictions.execution.mjs +30 -0
  109. package/esm2022/f-draggable/node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.execution.mjs +40 -0
  110. package/esm2022/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.execution.mjs +25 -0
  111. package/esm2022/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.validator.mjs +24 -0
  112. package/esm2022/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.execution.mjs +52 -0
  113. package/esm2022/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.validator.mjs +40 -0
  114. package/esm2022/f-draggable/single-select/single-select.execution.mjs +88 -0
  115. package/esm2022/f-draggable/single-select/single-select.validator.mjs +26 -0
  116. package/esm2022/f-external-item/domain/external-item-finalize/external-item-finalize.execution.mjs +56 -0
  117. package/esm2022/f-external-item/domain/external-item-finalize/external-item-finalize.validator.mjs +24 -0
  118. package/esm2022/f-external-item/domain/external-item-preparation/external-item-preparation.execution.mjs +42 -0
  119. package/esm2022/f-external-item/domain/external-item-preparation/external-item-preparation.validator.mjs +28 -0
  120. package/{esm2020 → esm2022}/f-external-item/f-external-item-base.mjs +4 -4
  121. package/{esm2020 → esm2022}/f-external-item/f-external-item.directive.mjs +9 -9
  122. package/{esm2020 → esm2022}/f-external-item/f-external-item.service.mjs +4 -4
  123. package/esm2022/f-flow/f-flow.component.mjs +118 -0
  124. package/{esm2020 → esm2022}/f-flow.module.mjs +5 -5
  125. package/{esm2020 → esm2022}/f-line-alignment/f-line-alignment-base.mjs +4 -4
  126. package/esm2022/f-line-alignment/f-line-alignment.component.mjs +92 -0
  127. package/esm2022/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.execution.mjs +41 -0
  128. package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.mjs +25 -0
  129. package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.validator.mjs +24 -0
  130. package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.mjs +48 -0
  131. package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.validator.mjs +27 -0
  132. package/esm2022/f-minimap/f-minimap-canvas.directive.mjs +66 -0
  133. package/{esm2020 → esm2022}/f-minimap/f-minimap-flow.directive.mjs +10 -10
  134. package/{esm2020 → esm2022}/f-minimap/f-minimap-view.directive.mjs +8 -8
  135. package/{esm2020 → esm2022}/f-minimap/f-minimap.component.mjs +6 -6
  136. package/{esm2020 → esm2022}/f-node/f-drag-handle/f-drag-handle.directive.mjs +7 -7
  137. package/esm2022/f-node/f-group.directive.mjs +145 -0
  138. package/esm2022/f-node/f-node.directive.mjs +146 -0
  139. package/esm2022/f-node/f-resize-handle/f-resize-handle.directive.mjs +43 -0
  140. package/{esm2020 → esm2022}/f-node/f-rotate-handle/f-rotate-handle.directive.mjs +5 -5
  141. package/esm2022/f-selection-area/domain/selection-area-finalize/selection-area-finalize.execution.mjs +25 -0
  142. package/esm2022/f-selection-area/domain/selection-area-finalize/selection-area-finalize.validator.mjs +24 -0
  143. package/esm2022/f-selection-area/domain/selection-area-preparation/selection-area-preparation.execution.mjs +37 -0
  144. package/esm2022/f-selection-area/domain/selection-area-preparation/selection-area-preparation.validator.mjs +30 -0
  145. package/{esm2020 → esm2022}/f-selection-area/domain/selection-area.drag-handle.mjs +4 -4
  146. package/{esm2020 → esm2022}/f-selection-area/f-selection-area-base.mjs +4 -4
  147. package/{esm2020 → esm2022}/f-selection-area/f-selection-area.component.mjs +9 -9
  148. package/{esm2020 → esm2022}/f-storage/f-components-store.mjs +4 -4
  149. package/{esm2020 → esm2022}/f-storage/f-transform-store.mjs +4 -4
  150. package/esm2022/f-zoom/f-zoom-base.mjs +97 -0
  151. package/esm2022/f-zoom/f-zoom.directive.mjs +59 -0
  152. package/esm2022/mixins/change-selection/change-selection.mjs +28 -0
  153. package/f-backgroud/f-background-base.d.ts +1 -1
  154. package/f-backgroud/f-background.component.d.ts +1 -1
  155. package/f-backgroud/f-circle-pattern/f-circle-pattern.component.d.ts +1 -1
  156. package/f-backgroud/f-rect-pattern/f-rect-pattern.component.d.ts +1 -1
  157. package/f-canvas/f-canvas-base.d.ts +1 -1
  158. package/f-canvas/f-canvas.component.d.ts +1 -1
  159. package/f-connection/common/f-connection-base.d.ts +1 -1
  160. package/f-connection/common/f-connection-text/f-connection-text-path.directive.d.ts +1 -1
  161. package/f-connection/common/f-connection-text/f-connection-text.component.d.ts +1 -1
  162. package/f-connection/common/f-drag-handle/f-connection-drag-handle.component.d.ts +1 -1
  163. package/f-connection/common/f-gradient/f-connection-gradient.component.d.ts +1 -1
  164. package/f-connection/common/f-path/f-connection-path.component.d.ts +1 -1
  165. package/f-connection/common/f-selection/f-connection-selection.component.d.ts +1 -1
  166. package/f-connection/f-connection/f-connection.component.d.ts +1 -1
  167. package/f-connection/f-connection-center/f-connection-center.directive.d.ts +1 -1
  168. package/f-connection/f-connection-for-create/f-connection-for-create.component.d.ts +1 -1
  169. package/f-connection/f-marker/f-marker-base.d.ts +1 -1
  170. package/f-connection/f-marker/f-marker.directive.d.ts +1 -1
  171. package/f-connection/f-snap-connection/f-snap-connection.component.d.ts +1 -1
  172. package/f-connectors/f-node-input/f-node-input-base.d.ts +1 -1
  173. package/f-connectors/f-node-input/f-node-input.directive.d.ts +1 -1
  174. package/f-connectors/f-node-outlet/f-node-outlet-base.d.ts +1 -1
  175. package/f-connectors/f-node-outlet/f-node-outlet.directive.d.ts +1 -1
  176. package/f-connectors/f-node-output/f-node-output-base.d.ts +1 -1
  177. package/f-connectors/f-node-output/f-node-output.directive.d.ts +1 -1
  178. package/f-draggable/f-draggable-base.d.ts +1 -1
  179. package/f-draggable/f-draggable.directive.d.ts +1 -1
  180. package/f-draggable/node/connection-base-drag-handler.d.ts +1 -1
  181. package/f-external-item/f-external-item-base.d.ts +1 -1
  182. package/f-external-item/f-external-item.directive.d.ts +1 -1
  183. package/f-flow/f-flow.component.d.ts +1 -1
  184. package/f-line-alignment/f-line-alignment-base.d.ts +1 -1
  185. package/f-line-alignment/f-line-alignment.component.d.ts +1 -1
  186. package/f-minimap/f-minimap-canvas.directive.d.ts +1 -1
  187. package/f-minimap/f-minimap-flow.directive.d.ts +1 -1
  188. package/f-minimap/f-minimap-view.directive.d.ts +1 -1
  189. package/f-minimap/f-minimap.component.d.ts +1 -1
  190. package/f-node/f-drag-handle/f-drag-handle.directive.d.ts +1 -1
  191. package/f-node/f-group.directive.d.ts +1 -1
  192. package/f-node/f-node.directive.d.ts +1 -1
  193. package/f-node/f-resize-handle/f-resize-handle.directive.d.ts +1 -1
  194. package/f-selection-area/f-selection-area-base.d.ts +1 -1
  195. package/f-selection-area/f-selection-area.component.d.ts +1 -1
  196. package/f-zoom/f-zoom.directive.d.ts +1 -1
  197. package/{fesm2020 → fesm2022}/foblex-flow.mjs +841 -841
  198. package/{fesm2015 → fesm2022}/foblex-flow.mjs.map +1 -1
  199. package/mixins/change-selection/change-selection.d.ts +1 -1
  200. package/mixins/change-visibility/change-visibility.d.ts +1 -1
  201. package/mixins/constructor.d.ts +2 -2
  202. package/package.json +5 -11
  203. package/esm2020/domain/create-connection-markers/create-connection-markers.execution.mjs +0 -61
  204. package/esm2020/domain/create-rounded-rect-from-element/create-rounded-rect-from-element.execution.mjs +0 -39
  205. package/esm2020/domain/emit-transform-changes/emit-transform-changes.execution.mjs +0 -24
  206. package/esm2020/domain/f-background/add-pattern-to-background/add-pattern-to-background.execution.mjs +0 -47
  207. package/esm2020/domain/f-canvas/center-group-or-node/center-group-or-node.execution.mjs +0 -49
  208. package/esm2020/domain/f-canvas/fit-to-flow/fit-to-flow.execution.mjs +0 -56
  209. package/esm2020/domain/f-canvas/input-canvas-position/input-canvas-position.execution.mjs +0 -33
  210. package/esm2020/domain/f-canvas/input-canvas-scale/input-canvas-scale.execution.mjs +0 -28
  211. package/esm2020/domain/f-canvas/reset-scale/reset-scale.execution.mjs +0 -29
  212. package/esm2020/domain/f-canvas/reset-scale-and-center/reset-scale-and-center.execution.mjs +0 -51
  213. package/esm2020/domain/f-canvas/update-scale/update-scale.execution.mjs +0 -34
  214. package/esm2020/domain/f-connection/find-closest-input-using-snap-threshold/find-closest-input-using-snap-threshold.execution.mjs +0 -39
  215. package/esm2020/domain/f-connection/get-all-can-be-connected-input-positions/get-all-can-be-connected-input-positions.execution.mjs +0 -55
  216. package/esm2020/domain/f-connection/get-connector-with-rect/get-connector-with-rect.execution.mjs +0 -28
  217. package/esm2020/domain/f-selection/clear-selection/clear-selection.execution.mjs +0 -26
  218. package/esm2020/domain/f-selection/get-selection/get-selection.execution.mjs +0 -35
  219. package/esm2020/domain/f-selection/select/select.execution.mjs +0 -44
  220. package/esm2020/domain/f-selection/select-all/select-all.execution.mjs +0 -38
  221. package/esm2020/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.execution.mjs +0 -35
  222. package/esm2020/domain/get-can-be-selected-items/get-can-be-selected-items.execution.mjs +0 -57
  223. package/esm2020/domain/get-connection-line/get-connection-line.execution.mjs +0 -67
  224. package/esm2020/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.execution.mjs +0 -35
  225. package/esm2020/domain/get-element-rect-in-flow/get-element-rect-in-flow.execution.mjs +0 -43
  226. package/esm2020/domain/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.mjs +0 -33
  227. package/esm2020/domain/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.mjs +0 -50
  228. package/esm2020/domain/get-flow-state/get-flow-state.execution.mjs +0 -39
  229. package/esm2020/domain/get-nodes-rect/get-nodes-rect.execution.mjs +0 -31
  230. package/esm2020/domain/get-position-in-flow/get-position-in-flow.execution.mjs +0 -32
  231. package/esm2020/domain/get-scaled-node-rects-with-flow-position/get-scaled-node-rects-with-flow-position.execution.mjs +0 -34
  232. package/esm2020/domain/is-connection-under-node/is-connection-under-node.execution.mjs +0 -76
  233. package/esm2020/domain/redraw-connections/redraw-connections.execution.mjs +0 -63
  234. package/esm2020/domain/show-connections-after-calculations/show-connections-after-calculations.execution.mjs +0 -26
  235. package/esm2020/domain/sort-item-layers/sort-item-layers.execution.mjs +0 -30
  236. package/esm2020/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.execution.mjs +0 -57
  237. package/esm2020/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.execution.mjs +0 -59
  238. package/esm2020/domain/subscribe-on-transform-changes/subscribe-on-transform-changes.execution.mjs +0 -26
  239. package/esm2020/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element.execution.mjs +0 -30
  240. package/esm2020/domain/update-item-and-children-layers/update-item-and-children-layers.execution.mjs +0 -94
  241. package/esm2020/f-backgroud/f-circle-pattern/f-circle-pattern.component.mjs +0 -104
  242. package/esm2020/f-backgroud/f-rect-pattern/f-rect-pattern.component.mjs +0 -122
  243. package/esm2020/f-canvas/f-canvas.component.mjs +0 -86
  244. package/esm2020/f-connection/common/f-connection-base.mjs +0 -66
  245. package/esm2020/f-connection/common/f-connection-text/f-connection-text-path.directive.mjs +0 -70
  246. package/esm2020/f-connection/common/f-connection-text/f-connection-text.component.mjs +0 -66
  247. package/esm2020/f-connection/common/f-gradient/f-connection-gradient.component.mjs +0 -63
  248. package/esm2020/f-connection/common/f-path/f-connection-path.component.mjs +0 -59
  249. package/esm2020/f-connection/f-connection/f-connection.component.mjs +0 -171
  250. package/esm2020/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +0 -136
  251. package/esm2020/f-connection/f-marker/f-marker.directive.mjs +0 -58
  252. package/esm2020/f-connection/f-snap-connection/f-snap-connection.component.mjs +0 -136
  253. package/esm2020/f-connectors/f-node-input/f-node-input.directive.mjs +0 -87
  254. package/esm2020/f-connectors/f-node-outlet/f-node-outlet.directive.mjs +0 -71
  255. package/esm2020/f-connectors/f-node-output/f-node-output.directive.mjs +0 -94
  256. package/esm2020/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.execution.mjs +0 -24
  257. package/esm2020/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.validator.mjs +0 -25
  258. package/esm2020/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.execution.mjs +0 -36
  259. package/esm2020/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.validator.mjs +0 -43
  260. package/esm2020/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.execution.mjs +0 -55
  261. package/esm2020/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.validator.mjs +0 -25
  262. package/esm2020/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.execution.mjs +0 -44
  263. package/esm2020/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.execution.mjs +0 -53
  264. package/esm2020/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.execution.mjs +0 -39
  265. package/esm2020/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.validator.mjs +0 -34
  266. package/esm2020/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.execution.mjs +0 -43
  267. package/esm2020/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.validator.mjs +0 -32
  268. package/esm2020/f-draggable/connections/create-connection/create-connection.drag-handler.mjs +0 -61
  269. package/esm2020/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.execution.mjs +0 -43
  270. package/esm2020/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.validator.mjs +0 -27
  271. package/esm2020/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.execution.mjs +0 -85
  272. package/esm2020/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.validator.mjs +0 -35
  273. package/esm2020/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.execution.mjs +0 -50
  274. package/esm2020/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.validator.mjs +0 -25
  275. package/esm2020/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.execution.mjs +0 -64
  276. package/esm2020/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.validator.mjs +0 -44
  277. package/esm2020/f-draggable/domain/get-node-padding/get-node-padding.execution.mjs +0 -33
  278. package/esm2020/f-draggable/domain/get-normalized-node-rect/get-normalized-node-rect.execution.mjs +0 -29
  279. package/esm2020/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.execution.mjs +0 -48
  280. package/esm2020/f-draggable/domain/get-parent-nodes/get-parent-nodes.execution.mjs +0 -36
  281. package/esm2020/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.execution.mjs +0 -34
  282. package/esm2020/f-draggable/f-draggable.directive.mjs +0 -160
  283. package/esm2020/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.mjs +0 -85
  284. package/esm2020/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/get-node-move-restrictions.execution.mjs +0 -44
  285. package/esm2020/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 +0 -70
  286. package/esm2020/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 +0 -70
  287. package/esm2020/f-draggable/node/node-move-finalize/node-move-finalize.execution.mjs +0 -51
  288. package/esm2020/f-draggable/node/node-move-finalize/node-move-finalize.validator.mjs +0 -25
  289. package/esm2020/f-draggable/node/node-move-preparation/node-move-preparation.execution.mjs +0 -59
  290. package/esm2020/f-draggable/node/node-move-preparation/node-move-preparation.validator.mjs +0 -41
  291. package/esm2020/f-draggable/node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.execution.mjs +0 -49
  292. package/esm2020/f-draggable/node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.execution.mjs +0 -49
  293. package/esm2020/f-draggable/node-resize/calculate-changed-position/calculate-changed-position.execution.mjs +0 -25
  294. package/esm2020/f-draggable/node-resize/calculate-changed-size/calculate-changed-size.execution.mjs +0 -34
  295. package/esm2020/f-draggable/node-resize/get-node-resize-restrictions/get-node-resize-restrictions.execution.mjs +0 -31
  296. package/esm2020/f-draggable/node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.execution.mjs +0 -41
  297. package/esm2020/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.execution.mjs +0 -26
  298. package/esm2020/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.validator.mjs +0 -25
  299. package/esm2020/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.execution.mjs +0 -53
  300. package/esm2020/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.validator.mjs +0 -41
  301. package/esm2020/f-draggable/single-select/single-select.execution.mjs +0 -89
  302. package/esm2020/f-draggable/single-select/single-select.validator.mjs +0 -27
  303. package/esm2020/f-external-item/domain/external-item-finalize/external-item-finalize.execution.mjs +0 -57
  304. package/esm2020/f-external-item/domain/external-item-finalize/external-item-finalize.validator.mjs +0 -25
  305. package/esm2020/f-external-item/domain/external-item-preparation/external-item-preparation.execution.mjs +0 -43
  306. package/esm2020/f-external-item/domain/external-item-preparation/external-item-preparation.validator.mjs +0 -29
  307. package/esm2020/f-flow/f-flow.component.mjs +0 -118
  308. package/esm2020/f-line-alignment/f-line-alignment.component.mjs +0 -92
  309. package/esm2020/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.execution.mjs +0 -42
  310. package/esm2020/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.mjs +0 -26
  311. package/esm2020/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.validator.mjs +0 -25
  312. package/esm2020/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.mjs +0 -49
  313. package/esm2020/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.validator.mjs +0 -28
  314. package/esm2020/f-minimap/f-minimap-canvas.directive.mjs +0 -66
  315. package/esm2020/f-node/f-group.directive.mjs +0 -145
  316. package/esm2020/f-node/f-node.directive.mjs +0 -146
  317. package/esm2020/f-node/f-resize-handle/f-resize-handle.directive.mjs +0 -43
  318. package/esm2020/f-selection-area/domain/selection-area-finalize/selection-area-finalize.execution.mjs +0 -26
  319. package/esm2020/f-selection-area/domain/selection-area-finalize/selection-area-finalize.validator.mjs +0 -25
  320. package/esm2020/f-selection-area/domain/selection-area-preparation/selection-area-preparation.execution.mjs +0 -38
  321. package/esm2020/f-selection-area/domain/selection-area-preparation/selection-area-preparation.validator.mjs +0 -31
  322. package/esm2020/f-zoom/f-zoom-base.mjs +0 -97
  323. package/esm2020/f-zoom/f-zoom.directive.mjs +0 -59
  324. package/esm2020/mixins/change-selection/change-selection.mjs +0 -28
  325. package/fesm2015/foblex-flow.mjs +0 -7927
  326. package/fesm2020/foblex-flow.mjs.map +0 -1
  327. /package/{esm2020 → esm2022}/domain/constants.mjs +0 -0
  328. /package/{esm2020 → esm2022}/domain/create-connection-markers/create-connection-markers-request.mjs +0 -0
  329. /package/{esm2020 → esm2022}/domain/create-connection-markers/index.mjs +0 -0
  330. /package/{esm2020 → esm2022}/domain/create-dom-element.mjs +0 -0
  331. /package/{esm2020 → esm2022}/domain/create-rounded-rect-from-element/create-rounded-rect-from-element-request.mjs +0 -0
  332. /package/{esm2020 → esm2022}/domain/create-rounded-rect-from-element/index.mjs +0 -0
  333. /package/{esm2020 → esm2022}/domain/emit-transform-changes/emit-transform-changes.request.mjs +0 -0
  334. /package/{esm2020 → esm2022}/domain/emit-transform-changes/index.mjs +0 -0
  335. /package/{esm2020 → esm2022}/domain/f-background/add-pattern-to-background/add-pattern-to-background.request.mjs +0 -0
  336. /package/{esm2020 → esm2022}/domain/f-background/add-pattern-to-background/index.mjs +0 -0
  337. /package/{esm2020 → esm2022}/domain/f-background/index.mjs +0 -0
  338. /package/{esm2020 → esm2022}/domain/f-background/providers.mjs +0 -0
  339. /package/{esm2020 → esm2022}/domain/f-canvas/center-group-or-node/center-group-or-node-request.mjs +0 -0
  340. /package/{esm2020 → esm2022}/domain/f-canvas/center-group-or-node/index.mjs +0 -0
  341. /package/{esm2020 → esm2022}/domain/f-canvas/fit-to-flow/fit-to-flow-request.mjs +0 -0
  342. /package/{esm2020 → esm2022}/domain/f-canvas/fit-to-flow/index.mjs +0 -0
  343. /package/{esm2020 → esm2022}/domain/f-canvas/index.mjs +0 -0
  344. /package/{esm2020 → esm2022}/domain/f-canvas/input-canvas-position/index.mjs +0 -0
  345. /package/{esm2020 → esm2022}/domain/f-canvas/input-canvas-position/input-canvas-position-request.mjs +0 -0
  346. /package/{esm2020 → esm2022}/domain/f-canvas/input-canvas-scale/index.mjs +0 -0
  347. /package/{esm2020 → esm2022}/domain/f-canvas/input-canvas-scale/input-canvas-scale-request.mjs +0 -0
  348. /package/{esm2020 → esm2022}/domain/f-canvas/providers.mjs +0 -0
  349. /package/{esm2020 → esm2022}/domain/f-canvas/reset-scale/index.mjs +0 -0
  350. /package/{esm2020 → esm2022}/domain/f-canvas/reset-scale/reset-scale-request.mjs +0 -0
  351. /package/{esm2020 → esm2022}/domain/f-canvas/reset-scale-and-center/index.mjs +0 -0
  352. /package/{esm2020 → esm2022}/domain/f-canvas/reset-scale-and-center/reset-scale-and-center-request.mjs +0 -0
  353. /package/{esm2020 → esm2022}/domain/f-canvas/update-scale/index.mjs +0 -0
  354. /package/{esm2020 → esm2022}/domain/f-canvas/update-scale/update-scale-request.mjs +0 -0
  355. /package/{esm2020 → esm2022}/domain/f-connection/find-closest-input-using-snap-threshold/find-closest-input-using-snap-threshold.request.mjs +0 -0
  356. /package/{esm2020 → esm2022}/domain/f-connection/find-closest-input-using-snap-threshold/index.mjs +0 -0
  357. /package/{esm2020 → esm2022}/domain/f-connection/get-all-can-be-connected-input-positions/get-all-can-be-connected-input-positions.request.mjs +0 -0
  358. /package/{esm2020 → esm2022}/domain/f-connection/get-all-can-be-connected-input-positions/index.mjs +0 -0
  359. /package/{esm2020 → esm2022}/domain/f-connection/get-connector-with-rect/get-connector-with-rect-request.mjs +0 -0
  360. /package/{esm2020 → esm2022}/domain/f-connection/get-connector-with-rect/i-connector-with-rect.mjs +0 -0
  361. /package/{esm2020 → esm2022}/domain/f-connection/get-connector-with-rect/index.mjs +0 -0
  362. /package/{esm2020 → esm2022}/domain/f-connection/index.mjs +0 -0
  363. /package/{esm2020 → esm2022}/domain/f-connection/providers.mjs +0 -0
  364. /package/{esm2020 → esm2022}/domain/f-selection/clear-selection/clear-selection.request.mjs +0 -0
  365. /package/{esm2020 → esm2022}/domain/f-selection/clear-selection/index.mjs +0 -0
  366. /package/{esm2020 → esm2022}/domain/f-selection/get-selection/get-selection.request.mjs +0 -0
  367. /package/{esm2020 → esm2022}/domain/f-selection/get-selection/index.mjs +0 -0
  368. /package/{esm2020 → esm2022}/domain/f-selection/index.mjs +0 -0
  369. /package/{esm2020 → esm2022}/domain/f-selection/providers.mjs +0 -0
  370. /package/{esm2020 → esm2022}/domain/f-selection/select/index.mjs +0 -0
  371. /package/{esm2020 → esm2022}/domain/f-selection/select/select.request.mjs +0 -0
  372. /package/{esm2020 → esm2022}/domain/f-selection/select-all/index.mjs +0 -0
  373. /package/{esm2020 → esm2022}/domain/f-selection/select-all/select-all.request.mjs +0 -0
  374. /package/{esm2020 → esm2022}/domain/f-selection/select-and-update-node-layer/index.mjs +0 -0
  375. /package/{esm2020 → esm2022}/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.request.mjs +0 -0
  376. /package/{esm2020 → esm2022}/domain/get-can-be-selected-items/get-can-be-selected-items-request.mjs +0 -0
  377. /package/{esm2020 → esm2022}/domain/get-can-be-selected-items/i-selectable-with-rect.mjs +0 -0
  378. /package/{esm2020 → esm2022}/domain/get-can-be-selected-items/index.mjs +0 -0
  379. /package/{esm2020 → esm2022}/domain/get-connection-line/get-connection-line.request.mjs +0 -0
  380. /package/{esm2020 → esm2022}/domain/get-connection-line/index.mjs +0 -0
  381. /package/{esm2020 → esm2022}/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.request.mjs +0 -0
  382. /package/{esm2020 → esm2022}/domain/get-deep-children-nodes-and-groups/index.mjs +0 -0
  383. /package/{esm2020 → esm2022}/domain/get-element-rect-in-flow/get-element-rect-in-flow-request.mjs +0 -0
  384. /package/{esm2020 → esm2022}/domain/get-element-rect-in-flow/index.mjs +0 -0
  385. /package/{esm2020 → esm2022}/domain/get-flow-state/get-flow-state-connections/get-flow-state-connections-request.mjs +0 -0
  386. /package/{esm2020 → esm2022}/domain/get-flow-state/get-flow-state-connections/index.mjs +0 -0
  387. /package/{esm2020 → esm2022}/domain/get-flow-state/get-flow-state-nodes/get-flow-state-nodes-request.mjs +0 -0
  388. /package/{esm2020 → esm2022}/domain/get-flow-state/get-flow-state-nodes/index.mjs +0 -0
  389. /package/{esm2020 → esm2022}/domain/get-flow-state/get-flow-state.request.mjs +0 -0
  390. /package/{esm2020 → esm2022}/domain/get-flow-state/i-f-flow-state-connection.mjs +0 -0
  391. /package/{esm2020 → esm2022}/domain/get-flow-state/i-f-flow-state-connector.mjs +0 -0
  392. /package/{esm2020 → esm2022}/domain/get-flow-state/i-f-flow-state-node.mjs +0 -0
  393. /package/{esm2020 → esm2022}/domain/get-flow-state/i-f-flow-state.mjs +0 -0
  394. /package/{esm2020 → esm2022}/domain/get-flow-state/index.mjs +0 -0
  395. /package/{esm2020 → esm2022}/domain/get-flow-state/providers.mjs +0 -0
  396. /package/{esm2020 → esm2022}/domain/get-nodes-rect/get-nodes-rect.request.mjs +0 -0
  397. /package/{esm2020 → esm2022}/domain/get-nodes-rect/index.mjs +0 -0
  398. /package/{esm2020 → esm2022}/domain/get-position-in-flow/get-position-in-flow-request.mjs +0 -0
  399. /package/{esm2020 → esm2022}/domain/get-position-in-flow/index.mjs +0 -0
  400. /package/{esm2020 → esm2022}/domain/get-scaled-node-rects-with-flow-position/get-scaled-node-rects-with-flow-position.request.mjs +0 -0
  401. /package/{esm2020 → esm2022}/domain/get-scaled-node-rects-with-flow-position/index.mjs +0 -0
  402. /package/{esm2020 → esm2022}/domain/i-map.mjs +0 -0
  403. /package/{esm2020 → esm2022}/domain/index.mjs +0 -0
  404. /package/{esm2020 → esm2022}/domain/is-connection-under-node/index.mjs +0 -0
  405. /package/{esm2020 → esm2022}/domain/is-connection-under-node/is-connection-under-node.request.mjs +0 -0
  406. /package/{esm2020 → esm2022}/domain/providers.mjs +0 -0
  407. /package/{esm2020 → esm2022}/domain/redraw-connections/index.mjs +0 -0
  408. /package/{esm2020 → esm2022}/domain/redraw-connections/redraw-connections-request.mjs +0 -0
  409. /package/{esm2020 → esm2022}/domain/show-connections-after-calculations/index.mjs +0 -0
  410. /package/{esm2020 → esm2022}/domain/show-connections-after-calculations/show-connections-after-calculations-request.mjs +0 -0
  411. /package/{esm2020 → esm2022}/domain/sort-item-layers/index.mjs +0 -0
  412. /package/{esm2020 → esm2022}/domain/sort-item-layers/sort-item-layers.request.mjs +0 -0
  413. /package/{esm2020 → esm2022}/domain/sort-item-layers/sort-items-by-parent/index.mjs +0 -0
  414. /package/{esm2020 → esm2022}/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.request.mjs +0 -0
  415. /package/{esm2020 → esm2022}/domain/sort-item-layers/sort-node-layers-by-groups/index.mjs +0 -0
  416. /package/{esm2020 → esm2022}/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.request.mjs +0 -0
  417. /package/{esm2020 → esm2022}/domain/subscribe-on-transform-changes/index.mjs +0 -0
  418. /package/{esm2020 → esm2022}/domain/subscribe-on-transform-changes/subscribe-on-transform-changes.request.mjs +0 -0
  419. /package/{esm2020 → esm2022}/domain/update-item-and-children-layers/index.mjs +0 -0
  420. /package/{esm2020 → esm2022}/domain/update-item-and-children-layers/move-front-elements-before-target-element/index.mjs +0 -0
  421. /package/{esm2020 → esm2022}/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element.request.mjs +0 -0
  422. /package/{esm2020 → esm2022}/domain/update-item-and-children-layers/update-item-and-children-layers.request.mjs +0 -0
  423. /package/{esm2020 → esm2022}/errors/conflict-error.mjs +0 -0
  424. /package/{esm2020 → esm2022}/errors/create-error-class.mjs +0 -0
  425. /package/{esm2020 → esm2022}/errors/errors.mjs +0 -0
  426. /package/{esm2020 → esm2022}/errors/index.mjs +0 -0
  427. /package/{esm2020 → esm2022}/errors/not-found-error.mjs +0 -0
  428. /package/{esm2020 → esm2022}/f-backgroud/domain/i-f-background-pattern.mjs +0 -0
  429. /package/{esm2020 → esm2022}/f-backgroud/domain/index.mjs +0 -0
  430. /package/{esm2020 → esm2022}/f-backgroud/f-circle-pattern/index.mjs +0 -0
  431. /package/{esm2020 → esm2022}/f-backgroud/f-rect-pattern/index.mjs +0 -0
  432. /package/{esm2020 → esm2022}/f-backgroud/index.mjs +0 -0
  433. /package/{esm2020 → esm2022}/f-backgroud/providers.mjs +0 -0
  434. /package/{esm2020 → esm2022}/f-canvas/domain/f-canvas-change.event.mjs +0 -0
  435. /package/{esm2020 → esm2022}/f-canvas/domain/index.mjs +0 -0
  436. /package/{esm2020 → esm2022}/f-canvas/index.mjs +0 -0
  437. /package/{esm2020 → esm2022}/f-canvas/providers.mjs +0 -0
  438. /package/{esm2020 → esm2022}/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points-request.mjs +0 -0
  439. /package/{esm2020 → esm2022}/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points.handler.mjs +0 -0
  440. /package/{esm2020 → esm2022}/f-connection/common/domain/calculate-center-between-points/index.mjs +0 -0
  441. /package/{esm2020 → esm2022}/f-connection/common/domain/calculate-connection-center/calculate-connection-center-request.mjs +0 -0
  442. /package/{esm2020 → esm2022}/f-connection/common/domain/calculate-connection-center/calculate-connection-center.handler.mjs +0 -0
  443. /package/{esm2020 → esm2022}/f-connection/common/domain/calculate-connection-center/index.mjs +0 -0
  444. /package/{esm2020 → esm2022}/f-connection/common/domain/f-bezier.path-builder.mjs +0 -0
  445. /package/{esm2020 → esm2022}/f-connection/common/domain/f-segment.path-builder.mjs +0 -0
  446. /package/{esm2020 → esm2022}/f-connection/common/domain/f-straight.path-builder.mjs +0 -0
  447. /package/{esm2020 → esm2022}/f-connection/common/domain/index.mjs +0 -0
  448. /package/{esm2020 → esm2022}/f-connection/common/e-f-connection-behavior.mjs +0 -0
  449. /package/{esm2020 → esm2022}/f-connection/common/e-f-connection-type.mjs +0 -0
  450. /package/{esm2020 → esm2022}/f-connection/common/f-connection-identifiers.mjs +0 -0
  451. /package/{esm2020 → esm2022}/f-connection/common/f-connection-text/i-connection-text.mjs +0 -0
  452. /package/{esm2020 → esm2022}/f-connection/common/f-connection-text/index.mjs +0 -0
  453. /package/{esm2020 → esm2022}/f-connection/common/f-connection.injection-token.mjs +0 -0
  454. /package/{esm2020 → esm2022}/f-connection/common/f-drag-handle/index.mjs +0 -0
  455. /package/{esm2020 → esm2022}/f-connection/common/f-gradient/i-connection-gradient.mjs +0 -0
  456. /package/{esm2020 → esm2022}/f-connection/common/f-gradient/index.mjs +0 -0
  457. /package/{esm2020 → esm2022}/f-connection/common/f-path/get-path-marker-id.mjs +0 -0
  458. /package/{esm2020 → esm2022}/f-connection/common/f-path/i-connection-path.mjs +0 -0
  459. /package/{esm2020 → esm2022}/f-connection/common/f-path/index.mjs +0 -0
  460. /package/{esm2020 → esm2022}/f-connection/common/f-selection/index.mjs +0 -0
  461. /package/{esm2020 → esm2022}/f-connection/common/i-has-connection-color.mjs +0 -0
  462. /package/{esm2020 → esm2022}/f-connection/common/i-has-connection-from-to.mjs +0 -0
  463. /package/{esm2020 → esm2022}/f-connection/common/i-has-connection-text.mjs +0 -0
  464. /package/{esm2020 → esm2022}/f-connection/common/index.mjs +0 -0
  465. /package/{esm2020 → esm2022}/f-connection/f-connection/index.mjs +0 -0
  466. /package/{esm2020 → esm2022}/f-connection/f-connection-builder/f-connection-builders.mjs +0 -0
  467. /package/{esm2020 → esm2022}/f-connection/f-connection-builder/i-f-connection-builder-request.mjs +0 -0
  468. /package/{esm2020 → esm2022}/f-connection/f-connection-builder/i-f-connection-builder-response.mjs +0 -0
  469. /package/{esm2020 → esm2022}/f-connection/f-connection-builder/i-f-connection-builder.mjs +0 -0
  470. /package/{esm2020 → esm2022}/f-connection/f-connection-builder/i-f-connection-factory-request.mjs +0 -0
  471. /package/{esm2020 → esm2022}/f-connection/f-connection-builder/index.mjs +0 -0
  472. /package/{esm2020 → esm2022}/f-connection/f-connection-center/index.mjs +0 -0
  473. /package/{esm2020 → esm2022}/f-connection/f-connection-for-create/index.mjs +0 -0
  474. /package/{esm2020 → esm2022}/f-connection/f-marker/e-f-marker-type.mjs +0 -0
  475. /package/{esm2020 → esm2022}/f-connection/f-marker/index.mjs +0 -0
  476. /package/{esm2020 → esm2022}/f-connection/f-snap-connection/index.mjs +0 -0
  477. /package/{esm2020 → esm2022}/f-connection/index.mjs +0 -0
  478. /package/{esm2020 → esm2022}/f-connection/providers.mjs +0 -0
  479. /package/{esm2020 → esm2022}/f-connectors/domain/calculate-connector-connectable-side/calculate-connector-connectable-side-request.mjs +0 -0
  480. /package/{esm2020 → esm2022}/f-connectors/domain/calculate-connector-connectable-side/calculate-connector-connectable-side.handler.mjs +0 -0
  481. /package/{esm2020 → esm2022}/f-connectors/domain/calculate-connector-connectable-side/index.mjs +0 -0
  482. /package/{esm2020 → esm2022}/f-connectors/domain/index.mjs +0 -0
  483. /package/{esm2020 → esm2022}/f-connectors/e-f-connectable-side.mjs +0 -0
  484. /package/{esm2020 → esm2022}/f-connectors/f-connector-base.mjs +0 -0
  485. /package/{esm2020 → esm2022}/f-connectors/f-node-input/index.mjs +0 -0
  486. /package/{esm2020 → esm2022}/f-connectors/f-node-outlet/index.mjs +0 -0
  487. /package/{esm2020 → esm2022}/f-connectors/f-node-outlet/is-node-outlet.mjs +0 -0
  488. /package/{esm2020 → esm2022}/f-connectors/f-node-output/index.mjs +0 -0
  489. /package/{esm2020 → esm2022}/f-connectors/f-node-output/is-node-output.mjs +0 -0
  490. /package/{esm2020 → esm2022}/f-connectors/index.mjs +0 -0
  491. /package/{esm2020 → esm2022}/f-connectors/providers.mjs +0 -0
  492. /package/{esm2020 → esm2022}/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.request.mjs +0 -0
  493. /package/{esm2020 → esm2022}/f-draggable/canvas/canvas-move-finalize/index.mjs +0 -0
  494. /package/{esm2020 → esm2022}/f-draggable/canvas/canvas-move-finalize/providers.mjs +0 -0
  495. /package/{esm2020 → esm2022}/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.request.mjs +0 -0
  496. /package/{esm2020 → esm2022}/f-draggable/canvas/canvas-move-preparation/index.mjs +0 -0
  497. /package/{esm2020 → esm2022}/f-draggable/canvas/canvas-move-preparation/providers.mjs +0 -0
  498. /package/{esm2020 → esm2022}/f-draggable/canvas/canvas.drag-handler.mjs +0 -0
  499. /package/{esm2020 → esm2022}/f-draggable/canvas/index.mjs +0 -0
  500. /package/{esm2020 → esm2022}/f-draggable/canvas/providers.mjs +0 -0
  501. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.request.mjs +0 -0
  502. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/create-connection-finalize/index.mjs +0 -0
  503. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.request.mjs +0 -0
  504. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/index.mjs +0 -0
  505. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.request.mjs +0 -0
  506. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/index.mjs +0 -0
  507. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.request.mjs +0 -0
  508. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/index.mjs +0 -0
  509. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.request.mjs +0 -0
  510. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/create-connection-preparation/index.mjs +0 -0
  511. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/f-create-connection.event.mjs +0 -0
  512. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.request.mjs +0 -0
  513. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/index.mjs +0 -0
  514. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/index.mjs +0 -0
  515. /package/{esm2020 → esm2022}/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.request.mjs +0 -0
  516. /package/{esm2020 → esm2022}/f-draggable/connections/get-input-under-pointer/index.mjs +0 -0
  517. /package/{esm2020 → esm2022}/f-draggable/connections/index.mjs +0 -0
  518. /package/{esm2020 → esm2022}/f-draggable/connections/providers.mjs +0 -0
  519. /package/{esm2020 → esm2022}/f-draggable/connections/reassign-connection/f-reassign-connection.event.mjs +0 -0
  520. /package/{esm2020 → esm2022}/f-draggable/connections/reassign-connection/index.mjs +0 -0
  521. /package/{esm2020 → esm2022}/f-draggable/connections/reassign-connection/reassign-connection-finalize/index.mjs +0 -0
  522. /package/{esm2020 → esm2022}/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.request.mjs +0 -0
  523. /package/{esm2020 → esm2022}/f-draggable/connections/reassign-connection/reassign-connection-preparation/index.mjs +0 -0
  524. /package/{esm2020 → esm2022}/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.request.mjs +0 -0
  525. /package/{esm2020 → esm2022}/f-draggable/domain/get-node-padding/get-node-padding.request.mjs +0 -0
  526. /package/{esm2020 → esm2022}/f-draggable/domain/get-node-padding/index.mjs +0 -0
  527. /package/{esm2020 → esm2022}/f-draggable/domain/get-normalized-node-rect/get-normalized-node-rect.request.mjs +0 -0
  528. /package/{esm2020 → esm2022}/f-draggable/domain/get-normalized-node-rect/index.mjs +0 -0
  529. /package/{esm2020 → esm2022}/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.request.mjs +0 -0
  530. /package/{esm2020 → esm2022}/f-draggable/domain/get-normalized-parent-node-rect/index.mjs +0 -0
  531. /package/{esm2020 → esm2022}/f-draggable/domain/get-parent-nodes/get-parent-nodes.request.mjs +0 -0
  532. /package/{esm2020 → esm2022}/f-draggable/domain/get-parent-nodes/index.mjs +0 -0
  533. /package/{esm2020 → esm2022}/f-draggable/domain/index.mjs +0 -0
  534. /package/{esm2020 → esm2022}/f-draggable/domain/is-array-has-parent-node/index.mjs +0 -0
  535. /package/{esm2020 → esm2022}/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.request.mjs +0 -0
  536. /package/{esm2020 → esm2022}/f-draggable/domain/providers.mjs +0 -0
  537. /package/{esm2020 → esm2022}/f-draggable/f-selection-change-event.mjs +0 -0
  538. /package/{esm2020 → esm2022}/f-draggable/i-draggable-item.mjs +0 -0
  539. /package/{esm2020 → esm2022}/f-draggable/i-f-drag-and-drop-plugin.mjs +0 -0
  540. /package/{esm2020 → esm2022}/f-draggable/index.mjs +0 -0
  541. /package/{esm2020 → esm2022}/f-draggable/node/connection-source.drag-handler.mjs +0 -0
  542. /package/{esm2020 → esm2022}/f-draggable/node/connection-target.drag-handler.mjs +0 -0
  543. /package/{esm2020 → esm2022}/f-draggable/node/connection.drag-handler.mjs +0 -0
  544. /package/{esm2020 → esm2022}/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.request.mjs +0 -0
  545. /package/{esm2020 → esm2022}/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/get-node-move-restrictions.request.mjs +0 -0
  546. /package/{esm2020 → esm2022}/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/i-node-move-restrictions.mjs +0 -0
  547. /package/{esm2020 → esm2022}/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/index.mjs +0 -0
  548. /package/{esm2020 → esm2022}/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/index.mjs +0 -0
  549. /package/{esm2020 → 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 +0 -0
  550. /package/{esm2020 → esm2022}/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/index.mjs +0 -0
  551. /package/{esm2020 → 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 +0 -0
  552. /package/{esm2020 → esm2022}/f-draggable/node/create-move-nodes-drag-model-from-selection/i-node-with-distance-restrictions.mjs +0 -0
  553. /package/{esm2020 → esm2022}/f-draggable/node/create-move-nodes-drag-model-from-selection/index.mjs +0 -0
  554. /package/{esm2020 → esm2022}/f-draggable/node/create-move-nodes-drag-model-from-selection/providers.mjs +0 -0
  555. /package/{esm2020 → esm2022}/f-draggable/node/index.mjs +0 -0
  556. /package/{esm2020 → esm2022}/f-draggable/node/node-move-finalize/index.mjs +0 -0
  557. /package/{esm2020 → esm2022}/f-draggable/node/node-move-finalize/node-move-finalize.request.mjs +0 -0
  558. /package/{esm2020 → esm2022}/f-draggable/node/node-move-finalize/providers.mjs +0 -0
  559. /package/{esm2020 → esm2022}/f-draggable/node/node-move-preparation/index.mjs +0 -0
  560. /package/{esm2020 → esm2022}/f-draggable/node/node-move-preparation/node-move-preparation.request.mjs +0 -0
  561. /package/{esm2020 → esm2022}/f-draggable/node/node-move-preparation/providers.mjs +0 -0
  562. /package/{esm2020 → esm2022}/f-draggable/node/node-resize-by-child.drag-handler.mjs +0 -0
  563. /package/{esm2020 → esm2022}/f-draggable/node/node.drag-handler.mjs +0 -0
  564. /package/{esm2020 → esm2022}/f-draggable/node/providers.mjs +0 -0
  565. /package/{esm2020 → esm2022}/f-draggable/node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.request.mjs +0 -0
  566. /package/{esm2020 → esm2022}/f-draggable/node-resize/apply-child-resize-restrictions/index.mjs +0 -0
  567. /package/{esm2020 → esm2022}/f-draggable/node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.request.mjs +0 -0
  568. /package/{esm2020 → esm2022}/f-draggable/node-resize/apply-parent-resize-restrictions/index.mjs +0 -0
  569. /package/{esm2020 → esm2022}/f-draggable/node-resize/calculate-changed-position/calculate-changed-position.request.mjs +0 -0
  570. /package/{esm2020 → esm2022}/f-draggable/node-resize/calculate-changed-position/index.mjs +0 -0
  571. /package/{esm2020 → esm2022}/f-draggable/node-resize/calculate-changed-size/calculate-changed-size.request.mjs +0 -0
  572. /package/{esm2020 → esm2022}/f-draggable/node-resize/calculate-changed-size/index.mjs +0 -0
  573. /package/{esm2020 → esm2022}/f-draggable/node-resize/get-node-resize-restrictions/get-node-resize-restrictions.request.mjs +0 -0
  574. /package/{esm2020 → esm2022}/f-draggable/node-resize/get-node-resize-restrictions/i-node-resize-restrictions.mjs +0 -0
  575. /package/{esm2020 → esm2022}/f-draggable/node-resize/get-node-resize-restrictions/index.mjs +0 -0
  576. /package/{esm2020 → esm2022}/f-draggable/node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.request.mjs +0 -0
  577. /package/{esm2020 → esm2022}/f-draggable/node-resize/get-normalized-children-nodes-rect/index.mjs +0 -0
  578. /package/{esm2020 → esm2022}/f-draggable/node-resize/index.mjs +0 -0
  579. /package/{esm2020 → esm2022}/f-draggable/node-resize/node-resize-finalize/index.mjs +0 -0
  580. /package/{esm2020 → esm2022}/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.request.mjs +0 -0
  581. /package/{esm2020 → esm2022}/f-draggable/node-resize/node-resize-finalize/providers.mjs +0 -0
  582. /package/{esm2020 → esm2022}/f-draggable/node-resize/node-resize-preparation/index.mjs +0 -0
  583. /package/{esm2020 → esm2022}/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.request.mjs +0 -0
  584. /package/{esm2020 → esm2022}/f-draggable/node-resize/node-resize-preparation/providers.mjs +0 -0
  585. /package/{esm2020 → esm2022}/f-draggable/node-resize/node-resize.drag-handler.mjs +0 -0
  586. /package/{esm2020 → esm2022}/f-draggable/node-resize/providers.mjs +0 -0
  587. /package/{esm2020 → esm2022}/f-draggable/node-resize/resize-direction.mjs +0 -0
  588. /package/{esm2020 → esm2022}/f-draggable/providers.mjs +0 -0
  589. /package/{esm2020 → esm2022}/f-draggable/single-select/index.mjs +0 -0
  590. /package/{esm2020 → esm2022}/f-draggable/single-select/providers.mjs +0 -0
  591. /package/{esm2020 → esm2022}/f-draggable/single-select/single-select.request.mjs +0 -0
  592. /package/{esm2020 → esm2022}/f-external-item/domain/external-item-finalize/external-item-finalize.request.mjs +0 -0
  593. /package/{esm2020 → esm2022}/f-external-item/domain/external-item-finalize/index.mjs +0 -0
  594. /package/{esm2020 → esm2022}/f-external-item/domain/external-item-finalize/providers.mjs +0 -0
  595. /package/{esm2020 → esm2022}/f-external-item/domain/external-item-preparation/external-item-preparation.request.mjs +0 -0
  596. /package/{esm2020 → esm2022}/f-external-item/domain/external-item-preparation/index.mjs +0 -0
  597. /package/{esm2020 → esm2022}/f-external-item/domain/external-item-preparation/providers.mjs +0 -0
  598. /package/{esm2020 → esm2022}/f-external-item/domain/external-item.drag-handler.mjs +0 -0
  599. /package/{esm2020 → esm2022}/f-external-item/domain/f-create-node.event.mjs +0 -0
  600. /package/{esm2020 → esm2022}/f-external-item/domain/index.mjs +0 -0
  601. /package/{esm2020 → esm2022}/f-external-item/domain/providers.mjs +0 -0
  602. /package/{esm2020 → esm2022}/f-external-item/index.mjs +0 -0
  603. /package/{esm2020 → esm2022}/f-external-item/is-external-item.mjs +0 -0
  604. /package/{esm2020 → esm2022}/f-external-item/providers.mjs +0 -0
  605. /package/{esm2020 → esm2022}/f-flow/f-flow-base.mjs +0 -0
  606. /package/{esm2020 → esm2022}/f-flow/index.mjs +0 -0
  607. /package/{esm2020 → esm2022}/f-flow/providers.mjs +0 -0
  608. /package/{esm2020 → esm2022}/f-line-alignment/domain/i-line-alignment-rect.mjs +0 -0
  609. /package/{esm2020 → esm2022}/f-line-alignment/domain/i-line-alignment-result.mjs +0 -0
  610. /package/{esm2020 → esm2022}/f-line-alignment/domain/i-nearest-coordinate-result.mjs +0 -0
  611. /package/{esm2020 → esm2022}/f-line-alignment/domain/index.mjs +0 -0
  612. /package/{esm2020 → esm2022}/f-line-alignment/domain/line-element.mjs +0 -0
  613. /package/{esm2020 → esm2022}/f-line-alignment/domain/line-service.mjs +0 -0
  614. /package/{esm2020 → esm2022}/f-line-alignment/domain/nearest-coordinate.mjs +0 -0
  615. /package/{esm2020 → esm2022}/f-line-alignment/index.mjs +0 -0
  616. /package/{esm2020 → esm2022}/f-line-alignment/providers.mjs +0 -0
  617. /package/{esm2020 → esm2022}/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.request.mjs +0 -0
  618. /package/{esm2020 → esm2022}/f-minimap/domain/calculate-flow-point-from-minimap-point/index.mjs +0 -0
  619. /package/{esm2020 → esm2022}/f-minimap/domain/check-rect-is-finite.mjs +0 -0
  620. /package/{esm2020 → esm2022}/f-minimap/domain/f-minimap-data.mjs +0 -0
  621. /package/{esm2020 → esm2022}/f-minimap/domain/f-minimap.drag-handler.mjs +0 -0
  622. /package/{esm2020 → esm2022}/f-minimap/domain/index.mjs +0 -0
  623. /package/{esm2020 → esm2022}/f-minimap/domain/minimap-drag-finalize/index.mjs +0 -0
  624. /package/{esm2020 → esm2022}/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.request.mjs +0 -0
  625. /package/{esm2020 → esm2022}/f-minimap/domain/minimap-drag-finalize/providers.mjs +0 -0
  626. /package/{esm2020 → esm2022}/f-minimap/domain/minimap-drag-preparation/index.mjs +0 -0
  627. /package/{esm2020 → esm2022}/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.request.mjs +0 -0
  628. /package/{esm2020 → esm2022}/f-minimap/domain/minimap-drag-preparation/providers.mjs +0 -0
  629. /package/{esm2020 → esm2022}/f-minimap/domain/providers.mjs +0 -0
  630. /package/{esm2020 → esm2022}/f-minimap/index.mjs +0 -0
  631. /package/{esm2020 → esm2022}/f-minimap/providers.mjs +0 -0
  632. /package/{esm2020 → esm2022}/f-node/domain/index.mjs +0 -0
  633. /package/{esm2020 → esm2022}/f-node/domain/is-group.mjs +0 -0
  634. /package/{esm2020 → esm2022}/f-node/domain/is-node.mjs +0 -0
  635. /package/{esm2020 → esm2022}/f-node/f-drag-handle/index.mjs +0 -0
  636. /package/{esm2020 → esm2022}/f-node/f-node-base.mjs +0 -0
  637. /package/{esm2020 → esm2022}/f-node/f-resize-handle/e-f-resize-handle-type.mjs +0 -0
  638. /package/{esm2020 → esm2022}/f-node/f-resize-handle/index.mjs +0 -0
  639. /package/{esm2020 → esm2022}/f-node/f-resize-observer.mjs +0 -0
  640. /package/{esm2020 → esm2022}/f-node/f-rotate-handle/index.mjs +0 -0
  641. /package/{esm2020 → esm2022}/f-node/index.mjs +0 -0
  642. /package/{esm2020 → esm2022}/f-node/providers.mjs +0 -0
  643. /package/{esm2020 → esm2022}/f-selection-area/domain/index.mjs +0 -0
  644. /package/{esm2020 → esm2022}/f-selection-area/domain/providers.mjs +0 -0
  645. /package/{esm2020 → esm2022}/f-selection-area/domain/selection-area-finalize/index.mjs +0 -0
  646. /package/{esm2020 → esm2022}/f-selection-area/domain/selection-area-finalize/providers.mjs +0 -0
  647. /package/{esm2020 → esm2022}/f-selection-area/domain/selection-area-finalize/selection-area-finalize.request.mjs +0 -0
  648. /package/{esm2020 → esm2022}/f-selection-area/domain/selection-area-preparation/index.mjs +0 -0
  649. /package/{esm2020 → esm2022}/f-selection-area/domain/selection-area-preparation/providers.mjs +0 -0
  650. /package/{esm2020 → esm2022}/f-selection-area/domain/selection-area-preparation/selection-area-preparation.request.mjs +0 -0
  651. /package/{esm2020 → esm2022}/f-selection-area/index.mjs +0 -0
  652. /package/{esm2020 → esm2022}/f-selection-area/providers.mjs +0 -0
  653. /package/{esm2020 → esm2022}/f-storage/index.mjs +0 -0
  654. /package/{esm2020 → esm2022}/f-zoom/index.mjs +0 -0
  655. /package/{esm2020 → esm2022}/f-zoom/providers.mjs +0 -0
  656. /package/{esm2020 → esm2022}/foblex-flow.mjs +0 -0
  657. /package/{esm2020 → esm2022}/i-has-host-element.mjs +0 -0
  658. /package/{esm2020 → esm2022}/i-has-state-changes.mjs +0 -0
  659. /package/{esm2020 → esm2022}/mixins/change-selection/i-can-change-selection.mjs +0 -0
  660. /package/{esm2020 → esm2022}/mixins/change-selection/index.mjs +0 -0
  661. /package/{esm2020 → esm2022}/mixins/change-visibility/change-visibility.mjs +0 -0
  662. /package/{esm2020 → esm2022}/mixins/change-visibility/i-can-change-visibility.mjs +0 -0
  663. /package/{esm2020 → esm2022}/mixins/change-visibility/index.mjs +0 -0
  664. /package/{esm2020 → esm2022}/mixins/constructor.mjs +0 -0
  665. /package/{esm2020 → esm2022}/mixins/index.mjs +0 -0
  666. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
@@ -0,0 +1,60 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { CreateConnectionMarkersRequest } from './create-connection-markers-request';
4
+ import { FExecutionRegister } from '@foblex/mediator';
5
+ import { normalizeDomElementId } from '@foblex/utils';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@foblex/platform";
8
+ import * as i2 from "../../f-storage";
9
+ export let CreateConnectionMarkersExecution = class CreateConnectionMarkersExecution {
10
+ constructor(fBrowser, fComponentsStore) {
11
+ this.fBrowser = fBrowser;
12
+ this.fComponentsStore = fComponentsStore;
13
+ }
14
+ handle(request) {
15
+ const element = createSVGElement('defs', this.fBrowser);
16
+ const fConnection = request.fConnection;
17
+ this.getMarkers(fConnection).forEach((marker) => {
18
+ const markerElement = this.createMarkerElement(marker, fConnection.fId);
19
+ const clone = marker.hostElement.cloneNode(true);
20
+ clone.setAttribute('height', `${marker.height}`);
21
+ clone.setAttribute('width', `${marker.width}`);
22
+ clone.removeAttribute('markerUnits');
23
+ clone.style.display = 'unset';
24
+ markerElement.append(clone);
25
+ element.append(markerElement);
26
+ });
27
+ fConnection.fDefs.nativeElement.innerHTML = element.innerHTML;
28
+ this.makeSafariCompatible(fConnection);
29
+ }
30
+ getMarkers(fConnection) {
31
+ return this.fComponentsStore.fMarkers.filter((x) => fConnection.hostElement.contains(x.hostElement));
32
+ }
33
+ // Safari does not support markers on path elements if markers are defined after the path element
34
+ makeSafariCompatible(fConnection) {
35
+ fConnection.fPath.hostElement.replaceWith(fConnection.fPath.hostElement);
36
+ }
37
+ createMarkerElement(marker, fConnectionId) {
38
+ const markerElement = createSVGElement('marker', this.fBrowser);
39
+ markerElement.setAttribute('id', normalizeDomElementId(marker.type + '-' + fConnectionId));
40
+ markerElement.setAttribute('markerHeight', `${marker.height}`);
41
+ markerElement.setAttribute('markerWidth', `${marker.width}`);
42
+ markerElement.setAttribute('orient', `${marker.orient}`);
43
+ markerElement.setAttribute('refX', `${marker.refX}`);
44
+ markerElement.setAttribute('refY', `${marker.refY}`);
45
+ markerElement.setAttribute('markerUnits', `${marker.markerUnits}`);
46
+ return markerElement;
47
+ }
48
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionMarkersExecution, deps: [{ token: i1.BrowserService }, { token: i2.FComponentsStore }], target: i0.ɵɵFactoryTarget.Injectable }); }
49
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionMarkersExecution }); }
50
+ };
51
+ CreateConnectionMarkersExecution = __decorate([
52
+ FExecutionRegister(CreateConnectionMarkersRequest)
53
+ ], CreateConnectionMarkersExecution);
54
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionMarkersExecution, decorators: [{
55
+ type: Injectable
56
+ }], ctorParameters: function () { return [{ type: i1.BrowserService }, { type: i2.FComponentsStore }]; } });
57
+ function createSVGElement(tag, fBrowser) {
58
+ return fBrowser.document.createElementNS('http://www.w3.org/2000/svg', tag);
59
+ }
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNvbm5lY3Rpb24tbWFya2Vycy5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9jcmVhdGUtY29ubmVjdGlvbi1tYXJrZXJzL2NyZWF0ZS1jb25uZWN0aW9uLW1hcmtlcnMuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXJGLE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBRWxFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQUsvQyxXQUFNLGdDQUFnQyxHQUF0QyxNQUFNLGdDQUFnQztJQUUzQyxZQUNVLFFBQXdCLEVBQ3hCLGdCQUFrQztRQURsQyxhQUFRLEdBQVIsUUFBUSxDQUFnQjtRQUN4QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBRTVDLENBQUM7SUFFTSxNQUFNLENBQUMsT0FBdUM7UUFDbkQsTUFBTSxPQUFPLEdBQW1CLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDeEUsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQztRQUV4QyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBRTlDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLEVBQUUsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBRXhFLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBZ0IsQ0FBQztZQUNoRSxLQUFLLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxHQUFJLE1BQU0sQ0FBQyxNQUFPLEVBQUUsQ0FBQyxDQUFDO1lBQ25ELEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLEdBQUksTUFBTSxDQUFDLEtBQU0sRUFBRSxDQUFDLENBQUM7WUFDakQsS0FBSyxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUNyQyxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7WUFDOUIsYUFBYSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUU1QixPQUFPLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2hDLENBQUMsQ0FBQyxDQUFDO1FBRUgsV0FBVyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUM7UUFFOUQsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFTSxVQUFVLENBQUMsV0FBNEI7UUFDNUMsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDdkcsQ0FBQztJQUVELGlHQUFpRztJQUN6RixvQkFBb0IsQ0FBQyxXQUE0QjtRQUN2RCxXQUFXLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBRU8sbUJBQW1CLENBQUMsTUFBbUIsRUFBRSxhQUFxQjtRQUNwRSxNQUFNLGFBQWEsR0FBRyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRWhFLGFBQWEsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxJQUFJLEdBQUcsR0FBRyxHQUFHLGFBQWEsQ0FBQyxDQUFDLENBQUM7UUFFM0YsYUFBYSxDQUFDLFlBQVksQ0FBQyxjQUFjLEVBQUUsR0FBSSxNQUFNLENBQUMsTUFBTyxFQUFFLENBQUMsQ0FBQztRQUNqRSxhQUFhLENBQUMsWUFBWSxDQUFDLGFBQWEsRUFBRSxHQUFJLE1BQU0sQ0FBQyxLQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQy9ELGFBQWEsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLEdBQUksTUFBTSxDQUFDLE1BQU8sRUFBRSxDQUFDLENBQUM7UUFDM0QsYUFBYSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsR0FBSSxNQUFNLENBQUMsSUFBSyxFQUFFLENBQUMsQ0FBQztRQUN2RCxhQUFhLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxHQUFJLE1BQU0sQ0FBQyxJQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZELGFBQWEsQ0FBQyxZQUFZLENBQUMsYUFBYSxFQUFFLEdBQUksTUFBTSxDQUFDLFdBQVksRUFBRSxDQUFDLENBQUM7UUFFckUsT0FBTyxhQUFhLENBQUM7SUFDdkIsQ0FBQzsrR0FyRFUsZ0NBQWdDO21IQUFoQyxnQ0FBZ0M7O0FBQWhDLGdDQUFnQztJQUQ1QyxrQkFBa0IsQ0FBQyw4QkFBOEIsQ0FBQztHQUN0QyxnQ0FBZ0MsQ0FzRDVDOzRGQXREWSxnQ0FBZ0M7a0JBRjVDLFVBQVU7O0FBMERYLFNBQVMsZ0JBQWdCLENBQXVDLEdBQU0sRUFBRSxRQUF3QjtJQUM5RixPQUFPLFFBQVEsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLDRCQUE0QixFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBQzlFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDcmVhdGVDb25uZWN0aW9uTWFya2Vyc1JlcXVlc3QgfSBmcm9tICcuL2NyZWF0ZS1jb25uZWN0aW9uLW1hcmtlcnMtcmVxdWVzdCc7XG5pbXBvcnQgeyBGQ29ubmVjdGlvbkJhc2UsIEZNYXJrZXJCYXNlIH0gZnJvbSAnLi4vLi4vZi1jb25uZWN0aW9uJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgQnJvd3NlclNlcnZpY2UgfSBmcm9tICdAZm9ibGV4L3BsYXRmb3JtJztcbmltcG9ydCB7IG5vcm1hbGl6ZURvbUVsZW1lbnRJZCB9IGZyb20gJ0Bmb2JsZXgvdXRpbHMnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uL2Ytc3RvcmFnZSc7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoQ3JlYXRlQ29ubmVjdGlvbk1hcmtlcnNSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIENyZWF0ZUNvbm5lY3Rpb25NYXJrZXJzRXhlY3V0aW9uIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxDcmVhdGVDb25uZWN0aW9uTWFya2Vyc1JlcXVlc3QsIHZvaWQ+IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZCcm93c2VyOiBCcm93c2VyU2VydmljZSxcbiAgICBwcml2YXRlIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmVcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IENyZWF0ZUNvbm5lY3Rpb25NYXJrZXJzUmVxdWVzdCk6IHZvaWQge1xuICAgIGNvbnN0IGVsZW1lbnQ6IFNWR0RlZnNFbGVtZW50ID0gY3JlYXRlU1ZHRWxlbWVudCgnZGVmcycsIHRoaXMuZkJyb3dzZXIpO1xuICAgIGNvbnN0IGZDb25uZWN0aW9uID0gcmVxdWVzdC5mQ29ubmVjdGlvbjtcblxuICAgIHRoaXMuZ2V0TWFya2VycyhmQ29ubmVjdGlvbikuZm9yRWFjaCgobWFya2VyKSA9PiB7XG5cbiAgICAgIGNvbnN0IG1hcmtlckVsZW1lbnQgPSB0aGlzLmNyZWF0ZU1hcmtlckVsZW1lbnQobWFya2VyLCBmQ29ubmVjdGlvbi5mSWQpO1xuXG4gICAgICBjb25zdCBjbG9uZSA9IG1hcmtlci5ob3N0RWxlbWVudC5jbG9uZU5vZGUodHJ1ZSkgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICBjbG9uZS5zZXRBdHRyaWJ1dGUoJ2hlaWdodCcsIGAkeyBtYXJrZXIuaGVpZ2h0IH1gKTtcbiAgICAgIGNsb25lLnNldEF0dHJpYnV0ZSgnd2lkdGgnLCBgJHsgbWFya2VyLndpZHRoIH1gKTtcbiAgICAgIGNsb25lLnJlbW92ZUF0dHJpYnV0ZSgnbWFya2VyVW5pdHMnKTtcbiAgICAgIGNsb25lLnN0eWxlLmRpc3BsYXkgPSAndW5zZXQnO1xuICAgICAgbWFya2VyRWxlbWVudC5hcHBlbmQoY2xvbmUpO1xuXG4gICAgICBlbGVtZW50LmFwcGVuZChtYXJrZXJFbGVtZW50KTtcbiAgICB9KTtcblxuICAgIGZDb25uZWN0aW9uLmZEZWZzLm5hdGl2ZUVsZW1lbnQuaW5uZXJIVE1MID0gZWxlbWVudC5pbm5lckhUTUw7XG5cbiAgICB0aGlzLm1ha2VTYWZhcmlDb21wYXRpYmxlKGZDb25uZWN0aW9uKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRNYXJrZXJzKGZDb25uZWN0aW9uOiBGQ29ubmVjdGlvbkJhc2UpOiBGTWFya2VyQmFzZVtdIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZNYXJrZXJzLmZpbHRlcigoeCkgPT4gZkNvbm5lY3Rpb24uaG9zdEVsZW1lbnQuY29udGFpbnMoeC5ob3N0RWxlbWVudCkpO1xuICB9XG5cbiAgLy8gU2FmYXJpIGRvZXMgbm90IHN1cHBvcnQgbWFya2VycyBvbiBwYXRoIGVsZW1lbnRzIGlmIG1hcmtlcnMgYXJlIGRlZmluZWQgYWZ0ZXIgdGhlIHBhdGggZWxlbWVudFxuICBwcml2YXRlIG1ha2VTYWZhcmlDb21wYXRpYmxlKGZDb25uZWN0aW9uOiBGQ29ubmVjdGlvbkJhc2UpOiB2b2lkIHtcbiAgICBmQ29ubmVjdGlvbi5mUGF0aC5ob3N0RWxlbWVudC5yZXBsYWNlV2l0aChmQ29ubmVjdGlvbi5mUGF0aC5ob3N0RWxlbWVudCk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZU1hcmtlckVsZW1lbnQobWFya2VyOiBGTWFya2VyQmFzZSwgZkNvbm5lY3Rpb25JZDogc3RyaW5nKTogU1ZHRWxlbWVudCB7XG4gICAgY29uc3QgbWFya2VyRWxlbWVudCA9IGNyZWF0ZVNWR0VsZW1lbnQoJ21hcmtlcicsIHRoaXMuZkJyb3dzZXIpO1xuXG4gICAgbWFya2VyRWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2lkJywgbm9ybWFsaXplRG9tRWxlbWVudElkKG1hcmtlci50eXBlICsgJy0nICsgZkNvbm5lY3Rpb25JZCkpO1xuXG4gICAgbWFya2VyRWxlbWVudC5zZXRBdHRyaWJ1dGUoJ21hcmtlckhlaWdodCcsIGAkeyBtYXJrZXIuaGVpZ2h0IH1gKTtcbiAgICBtYXJrZXJFbGVtZW50LnNldEF0dHJpYnV0ZSgnbWFya2VyV2lkdGgnLCBgJHsgbWFya2VyLndpZHRoIH1gKTtcbiAgICBtYXJrZXJFbGVtZW50LnNldEF0dHJpYnV0ZSgnb3JpZW50JywgYCR7IG1hcmtlci5vcmllbnQgfWApO1xuICAgIG1hcmtlckVsZW1lbnQuc2V0QXR0cmlidXRlKCdyZWZYJywgYCR7IG1hcmtlci5yZWZYIH1gKTtcbiAgICBtYXJrZXJFbGVtZW50LnNldEF0dHJpYnV0ZSgncmVmWScsIGAkeyBtYXJrZXIucmVmWSB9YCk7XG4gICAgbWFya2VyRWxlbWVudC5zZXRBdHRyaWJ1dGUoJ21hcmtlclVuaXRzJywgYCR7IG1hcmtlci5tYXJrZXJVbml0cyB9YCk7XG5cbiAgICByZXR1cm4gbWFya2VyRWxlbWVudDtcbiAgfVxufVxuXG5mdW5jdGlvbiBjcmVhdGVTVkdFbGVtZW50PEsgZXh0ZW5kcyBrZXlvZiBTVkdFbGVtZW50VGFnTmFtZU1hcD4odGFnOiBLLCBmQnJvd3NlcjogQnJvd3NlclNlcnZpY2UpOiBTVkdFbGVtZW50VGFnTmFtZU1hcFtLXSB7XG4gIHJldHVybiBmQnJvd3Nlci5kb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoJ2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJywgdGFnKTtcbn1cbiJdfQ==
@@ -0,0 +1,38 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { CreateRoundedRectFromElementRequest } from './create-rounded-rect-from-element-request';
4
+ import { FExecutionRegister } from '@foblex/mediator';
5
+ import { RoundedRect, RectExtensions } from '@foblex/2d';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@foblex/platform";
8
+ export let CreateRoundedRectFromElementExecution = class CreateRoundedRectFromElementExecution {
9
+ constructor(fBrowser) {
10
+ this.fBrowser = fBrowser;
11
+ }
12
+ handle(request) {
13
+ return this.setRadiusFromElement(RoundedRect.fromRect(RectExtensions.fromElement(request.element)), request.element);
14
+ }
15
+ setRadiusFromElement(rect, element) {
16
+ const styles = this.getComputedStyle(element);
17
+ rect.radius1 = this.toPixels(styles.borderTopLeftRadius, element, styles.fontSize);
18
+ rect.radius2 = this.toPixels(styles.borderTopRightRadius, element, styles.fontSize);
19
+ rect.radius3 = this.toPixels(styles.borderBottomRightRadius, element, styles.fontSize);
20
+ rect.radius4 = this.toPixels(styles.borderBottomLeftRadius, element, styles.fontSize);
21
+ return rect;
22
+ }
23
+ getComputedStyle(element) {
24
+ return this.fBrowser.window.getComputedStyle(element);
25
+ }
26
+ toPixels(value, element, fontSize) {
27
+ return this.fBrowser.toPixels(value, element.clientWidth, element.clientHeight, fontSize) || 0;
28
+ }
29
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateRoundedRectFromElementExecution, deps: [{ token: i1.BrowserService }], target: i0.ɵɵFactoryTarget.Injectable }); }
30
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateRoundedRectFromElementExecution }); }
31
+ };
32
+ CreateRoundedRectFromElementExecution = __decorate([
33
+ FExecutionRegister(CreateRoundedRectFromElementRequest)
34
+ ], CreateRoundedRectFromElementExecution);
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateRoundedRectFromElementExecution, decorators: [{
36
+ type: Injectable
37
+ }], ctorParameters: function () { return [{ type: i1.BrowserService }]; } });
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXJvdW5kZWQtcmVjdC1mcm9tLWVsZW1lbnQuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vY3JlYXRlLXJvdW5kZWQtcmVjdC1mcm9tLWVsZW1lbnQvY3JlYXRlLXJvdW5kZWQtcmVjdC1mcm9tLWVsZW1lbnQuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBRWxFLE9BQU8sRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLE1BQU0sWUFBWSxDQUFDOzs7QUFJbEQsV0FBTSxxQ0FBcUMsR0FBM0MsTUFBTSxxQ0FBcUM7SUFFaEQsWUFDVSxRQUF3QjtRQUF4QixhQUFRLEdBQVIsUUFBUSxDQUFnQjtJQUVsQyxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQTRDO1FBQ3hELE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdkgsQ0FBQztJQUVPLG9CQUFvQixDQUFDLElBQWlCLEVBQUUsT0FBaUM7UUFDL0UsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsbUJBQW1CLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuRixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLG9CQUFvQixFQUFFLE9BQU8sRUFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDcEYsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyx1QkFBdUIsRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3ZGLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsc0JBQXNCLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN0RixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxPQUFpQztRQUN4RCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFTyxRQUFRLENBQUMsS0FBYSxFQUFFLE9BQWlDLEVBQUUsUUFBZ0I7UUFDakYsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNoRyxDQUFDOytHQTFCVSxxQ0FBcUM7bUhBQXJDLHFDQUFxQzs7QUFBckMscUNBQXFDO0lBRGpELGtCQUFrQixDQUFDLG1DQUFtQyxDQUFDO0dBQzNDLHFDQUFxQyxDQTJCakQ7NEZBM0JZLHFDQUFxQztrQkFGakQsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENyZWF0ZVJvdW5kZWRSZWN0RnJvbUVsZW1lbnRSZXF1ZXN0IH0gZnJvbSAnLi9jcmVhdGUtcm91bmRlZC1yZWN0LWZyb20tZWxlbWVudC1yZXF1ZXN0JztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgQnJvd3NlclNlcnZpY2UgfSBmcm9tICdAZm9ibGV4L3BsYXRmb3JtJztcbmltcG9ydCB7IFJvdW5kZWRSZWN0LCBSZWN0RXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKENyZWF0ZVJvdW5kZWRSZWN0RnJvbUVsZW1lbnRSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIENyZWF0ZVJvdW5kZWRSZWN0RnJvbUVsZW1lbnRFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPENyZWF0ZVJvdW5kZWRSZWN0RnJvbUVsZW1lbnRSZXF1ZXN0LCBSb3VuZGVkUmVjdD4ge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZkJyb3dzZXI6IEJyb3dzZXJTZXJ2aWNlXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBDcmVhdGVSb3VuZGVkUmVjdEZyb21FbGVtZW50UmVxdWVzdCk6IFJvdW5kZWRSZWN0IHtcbiAgICByZXR1cm4gdGhpcy5zZXRSYWRpdXNGcm9tRWxlbWVudChSb3VuZGVkUmVjdC5mcm9tUmVjdChSZWN0RXh0ZW5zaW9ucy5mcm9tRWxlbWVudChyZXF1ZXN0LmVsZW1lbnQpKSwgcmVxdWVzdC5lbGVtZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0UmFkaXVzRnJvbUVsZW1lbnQocmVjdDogUm91bmRlZFJlY3QsIGVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgU1ZHRWxlbWVudCk6IFJvdW5kZWRSZWN0IHtcbiAgICBjb25zdCBzdHlsZXMgPSB0aGlzLmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG4gICAgcmVjdC5yYWRpdXMxID0gdGhpcy50b1BpeGVscyhzdHlsZXMuYm9yZGVyVG9wTGVmdFJhZGl1cywgZWxlbWVudCwgc3R5bGVzLmZvbnRTaXplKTtcbiAgICByZWN0LnJhZGl1czIgPSB0aGlzLnRvUGl4ZWxzKHN0eWxlcy5ib3JkZXJUb3BSaWdodFJhZGl1cywgZWxlbWVudCwgc3R5bGVzLmZvbnRTaXplKTtcbiAgICByZWN0LnJhZGl1czMgPSB0aGlzLnRvUGl4ZWxzKHN0eWxlcy5ib3JkZXJCb3R0b21SaWdodFJhZGl1cywgZWxlbWVudCwgc3R5bGVzLmZvbnRTaXplKTtcbiAgICByZWN0LnJhZGl1czQgPSB0aGlzLnRvUGl4ZWxzKHN0eWxlcy5ib3JkZXJCb3R0b21MZWZ0UmFkaXVzLCBlbGVtZW50LCBzdHlsZXMuZm9udFNpemUpO1xuICAgIHJldHVybiByZWN0O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgU1ZHRWxlbWVudCk6IENTU1N0eWxlRGVjbGFyYXRpb24ge1xuICAgIHJldHVybiB0aGlzLmZCcm93c2VyLndpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpO1xuICB9XG5cbiAgcHJpdmF0ZSB0b1BpeGVscyh2YWx1ZTogc3RyaW5nLCBlbGVtZW50OiBIVE1MRWxlbWVudCB8IFNWR0VsZW1lbnQsIGZvbnRTaXplOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmZCcm93c2VyLnRvUGl4ZWxzKHZhbHVlLCBlbGVtZW50LmNsaWVudFdpZHRoLCBlbGVtZW50LmNsaWVudEhlaWdodCwgZm9udFNpemUpIHx8IDBcbiAgfVxufVxuIl19
@@ -0,0 +1,23 @@
1
+ import { __decorate } from "tslib";
2
+ import { EmitTransformChangesRequest } from './emit-transform-changes.request';
3
+ import { Injectable } from '@angular/core';
4
+ import { FExecutionRegister } from '@foblex/mediator';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../f-storage";
7
+ export let EmitTransformChangesExecution = class EmitTransformChangesExecution {
8
+ constructor(fTransformStore) {
9
+ this.fTransformStore = fTransformStore;
10
+ }
11
+ handle(request) {
12
+ this.fTransformStore.changes.next();
13
+ }
14
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EmitTransformChangesExecution, deps: [{ token: i1.FTransformStore }], target: i0.ɵɵFactoryTarget.Injectable }); }
15
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EmitTransformChangesExecution }); }
16
+ };
17
+ EmitTransformChangesExecution = __decorate([
18
+ FExecutionRegister(EmitTransformChangesRequest)
19
+ ], EmitTransformChangesExecution);
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EmitTransformChangesExecution, decorators: [{
21
+ type: Injectable
22
+ }], ctorParameters: function () { return [{ type: i1.FTransformStore }]; } });
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1pdC10cmFuc2Zvcm0tY2hhbmdlcy5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9lbWl0LXRyYW5zZm9ybS1jaGFuZ2VzL2VtaXQtdHJhbnNmb3JtLWNoYW5nZXMuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDOzs7QUFLM0QsV0FBTSw2QkFBNkIsR0FBbkMsTUFBTSw2QkFBNkI7SUFHeEMsWUFDVSxlQUFnQztRQUFoQyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7SUFFMUMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUFvQztRQUNoRCxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QyxDQUFDOytHQVZVLDZCQUE2QjttSEFBN0IsNkJBQTZCOztBQUE3Qiw2QkFBNkI7SUFEekMsa0JBQWtCLENBQUMsMkJBQTJCLENBQUM7R0FDbkMsNkJBQTZCLENBV3pDOzRGQVhZLDZCQUE2QjtrQkFGekMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVtaXRUcmFuc2Zvcm1DaGFuZ2VzUmVxdWVzdCB9IGZyb20gJy4vZW1pdC10cmFuc2Zvcm0tY2hhbmdlcy5yZXF1ZXN0JztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgRlRyYW5zZm9ybVN0b3JlIH0gZnJvbSAnLi4vLi4vZi1zdG9yYWdlJztcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihFbWl0VHJhbnNmb3JtQ2hhbmdlc1JlcXVlc3QpXG5leHBvcnQgY2xhc3MgRW1pdFRyYW5zZm9ybUNoYW5nZXNFeGVjdXRpb25cbiAgaW1wbGVtZW50cyBJRXhlY3V0aW9uPEVtaXRUcmFuc2Zvcm1DaGFuZ2VzUmVxdWVzdCwgdm9pZD4ge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZlRyYW5zZm9ybVN0b3JlOiBGVHJhbnNmb3JtU3RvcmUsXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBFbWl0VHJhbnNmb3JtQ2hhbmdlc1JlcXVlc3QpOiB2b2lkIHtcbiAgICB0aGlzLmZUcmFuc2Zvcm1TdG9yZS5jaGFuZ2VzLm5leHQoKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,46 @@
1
+ import { __decorate } from "tslib";
2
+ import { TransformModelExtensions } from '@foblex/2d';
3
+ import { AddPatternToBackgroundRequest } from './add-pattern-to-background.request';
4
+ import { Injectable } from '@angular/core';
5
+ import { FExecutionRegister } from '@foblex/mediator';
6
+ import { createSVGElement } from '../../../domain';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "../../../f-storage";
9
+ import * as i2 from "@foblex/platform";
10
+ let uniqueId = 0;
11
+ export let AddPatternToBackgroundExecution = class AddPatternToBackgroundExecution {
12
+ get fBackground() {
13
+ return this.fComponentsStore.fBackground;
14
+ }
15
+ constructor(fComponentsStore, fBrowser) {
16
+ this.fComponentsStore = fComponentsStore;
17
+ this.fBrowser = fBrowser;
18
+ }
19
+ handle(request) {
20
+ const children = request.fPattern?.hostElement.getElementsByTagName('pattern') || [];
21
+ const pattern = children.length ? children[0] : undefined;
22
+ if (pattern) {
23
+ const defs = createSVGElement('defs', this.fBrowser);
24
+ pattern.id = 'f-background-pattern-' + uniqueId++;
25
+ request.fPattern?.hostElement.remove();
26
+ defs.appendChild(pattern);
27
+ this.fBackground.hostElement?.firstChild?.appendChild(defs);
28
+ const rect = createSVGElement('rect', this.fBrowser);
29
+ rect.setAttribute('fill', 'url(#' + pattern.id + ')');
30
+ rect.setAttribute('width', '100%');
31
+ rect.setAttribute('height', '100%');
32
+ this.fBackground.hostElement.firstChild?.appendChild(rect);
33
+ const transform = this.fComponentsStore.fCanvas?.transform || TransformModelExtensions.default();
34
+ request.fPattern?.setTransform(transform);
35
+ }
36
+ }
37
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddPatternToBackgroundExecution, deps: [{ token: i1.FComponentsStore }, { token: i2.BrowserService }], target: i0.ɵɵFactoryTarget.Injectable }); }
38
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddPatternToBackgroundExecution }); }
39
+ };
40
+ AddPatternToBackgroundExecution = __decorate([
41
+ FExecutionRegister(AddPatternToBackgroundRequest)
42
+ ], AddPatternToBackgroundExecution);
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddPatternToBackgroundExecution, decorators: [{
44
+ type: Injectable
45
+ }], ctorParameters: function () { return [{ type: i1.FComponentsStore }, { type: i2.BrowserService }]; } });
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXBhdHRlcm4tdG8tYmFja2dyb3VuZC5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLWJhY2tncm91bmQvYWRkLXBhdHRlcm4tdG8tYmFja2dyb3VuZC9hZGQtcGF0dGVybi10by1iYWNrZ3JvdW5kLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3RELE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGtCQUFrQixFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFLbkQsSUFBSSxRQUFRLEdBQVcsQ0FBQyxDQUFDO0FBSWxCLFdBQU0sK0JBQStCLEdBQXJDLE1BQU0sK0JBQStCO0lBRTFDLElBQVksV0FBVztRQUNyQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFZLENBQUM7SUFDNUMsQ0FBQztJQUVELFlBQ1UsZ0JBQWtDLEVBQ2xDLFFBQXdCO1FBRHhCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7SUFFbEMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUFzQztRQUNsRCxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsUUFBUSxFQUFFLFdBQVcsQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDckYsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFFLENBQUMsQ0FBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDNUQsSUFBSSxPQUFPLEVBQUU7WUFDWCxNQUFNLElBQUksR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3JELE9BQU8sQ0FBQyxFQUFFLEdBQUcsdUJBQXVCLEdBQUcsUUFBUSxFQUFFLENBQUM7WUFDbEQsT0FBTyxDQUFDLFFBQVEsRUFBRSxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDdkMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxVQUFVLEVBQUUsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzVELE1BQU0sSUFBSSxHQUFHLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDckQsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsT0FBTyxHQUFHLE9BQU8sQ0FBQyxFQUFFLEdBQUcsR0FBRyxDQUFDLENBQUM7WUFDdEQsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDbkMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDcEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUMzRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLFNBQVMsSUFBSSx3QkFBd0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNqRyxPQUFPLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUMzQztJQUNILENBQUM7K0dBN0JVLCtCQUErQjttSEFBL0IsK0JBQStCOztBQUEvQiwrQkFBK0I7SUFEM0Msa0JBQWtCLENBQUMsNkJBQTZCLENBQUM7R0FDckMsK0JBQStCLENBOEIzQzs0RkE5QlksK0JBQStCO2tCQUYzQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNmb3JtTW9kZWxFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBBZGRQYXR0ZXJuVG9CYWNrZ3JvdW5kUmVxdWVzdCB9IGZyb20gJy4vYWRkLXBhdHRlcm4tdG8tYmFja2dyb3VuZC5yZXF1ZXN0JztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgY3JlYXRlU1ZHRWxlbWVudCB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEJyb3dzZXJTZXJ2aWNlIH0gZnJvbSAnQGZvYmxleC9wbGF0Zm9ybSc7XG5pbXBvcnQgeyBGQmFja2dyb3VuZEJhc2UgfSBmcm9tICcuLi8uLi8uLi9mLWJhY2tncm91ZCc7XG5cbmxldCB1bmlxdWVJZDogbnVtYmVyID0gMDtcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihBZGRQYXR0ZXJuVG9CYWNrZ3JvdW5kUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBBZGRQYXR0ZXJuVG9CYWNrZ3JvdW5kRXhlY3V0aW9uIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxBZGRQYXR0ZXJuVG9CYWNrZ3JvdW5kUmVxdWVzdCwgdm9pZD4ge1xuXG4gIHByaXZhdGUgZ2V0IGZCYWNrZ3JvdW5kKCk6IEZCYWNrZ3JvdW5kQmFzZSB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQmFja2dyb3VuZCE7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmUsXG4gICAgcHJpdmF0ZSBmQnJvd3NlcjogQnJvd3NlclNlcnZpY2VcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IEFkZFBhdHRlcm5Ub0JhY2tncm91bmRSZXF1ZXN0KTogdm9pZCB7XG4gICAgY29uc3QgY2hpbGRyZW4gPSByZXF1ZXN0LmZQYXR0ZXJuPy5ob3N0RWxlbWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgncGF0dGVybicpIHx8IFtdO1xuICAgIGNvbnN0IHBhdHRlcm4gPSBjaGlsZHJlbi5sZW5ndGggPyBjaGlsZHJlblsgMCBdIDogdW5kZWZpbmVkO1xuICAgIGlmIChwYXR0ZXJuKSB7XG4gICAgICBjb25zdCBkZWZzID0gY3JlYXRlU1ZHRWxlbWVudCgnZGVmcycsIHRoaXMuZkJyb3dzZXIpO1xuICAgICAgcGF0dGVybi5pZCA9ICdmLWJhY2tncm91bmQtcGF0dGVybi0nICsgdW5pcXVlSWQrKztcbiAgICAgIHJlcXVlc3QuZlBhdHRlcm4/Lmhvc3RFbGVtZW50LnJlbW92ZSgpO1xuICAgICAgZGVmcy5hcHBlbmRDaGlsZChwYXR0ZXJuKTtcbiAgICAgIHRoaXMuZkJhY2tncm91bmQuaG9zdEVsZW1lbnQ/LmZpcnN0Q2hpbGQ/LmFwcGVuZENoaWxkKGRlZnMpO1xuICAgICAgY29uc3QgcmVjdCA9IGNyZWF0ZVNWR0VsZW1lbnQoJ3JlY3QnLCB0aGlzLmZCcm93c2VyKTtcbiAgICAgIHJlY3Quc2V0QXR0cmlidXRlKCdmaWxsJywgJ3VybCgjJyArIHBhdHRlcm4uaWQgKyAnKScpO1xuICAgICAgcmVjdC5zZXRBdHRyaWJ1dGUoJ3dpZHRoJywgJzEwMCUnKTtcbiAgICAgIHJlY3Quc2V0QXR0cmlidXRlKCdoZWlnaHQnLCAnMTAwJScpO1xuICAgICAgdGhpcy5mQmFja2dyb3VuZC5ob3N0RWxlbWVudC5maXJzdENoaWxkPy5hcHBlbmRDaGlsZChyZWN0KTtcbiAgICAgIGNvbnN0IHRyYW5zZm9ybSA9IHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzPy50cmFuc2Zvcm0gfHwgVHJhbnNmb3JtTW9kZWxFeHRlbnNpb25zLmRlZmF1bHQoKTtcbiAgICAgIHJlcXVlc3QuZlBhdHRlcm4/LnNldFRyYW5zZm9ybSh0cmFuc2Zvcm0pO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -0,0 +1,48 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { CenterGroupOrNodeRequest } from './center-group-or-node-request';
4
+ import { FExecutionRegister } from '@foblex/mediator';
5
+ import { PointExtensions, RectExtensions } from '@foblex/2d';
6
+ import { F_CANVAS_ANIMATION_DURATION } from '../../../domain';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "../../../f-storage";
9
+ export let CenterGroupOrNodeExecution = class CenterGroupOrNodeExecution {
10
+ get transform() {
11
+ return this.fComponentsStore.fCanvas.transform;
12
+ }
13
+ constructor(fComponentsStore) {
14
+ this.fComponentsStore = fComponentsStore;
15
+ }
16
+ handle(request) {
17
+ const fNode = this.getNode(request.id);
18
+ if (!fNode) {
19
+ return;
20
+ }
21
+ this.toCenter(this.getNodeRect(fNode), this.getFlowRect(), fNode.position);
22
+ request.animated ? this.fComponentsStore.fCanvas.redrawWithAnimation() : this.fComponentsStore.fCanvas.redraw();
23
+ this.fComponentsStore.fCanvas.emitCanvasChangeEvent();
24
+ setTimeout(() => this.fComponentsStore.componentDataChanged(), F_CANVAS_ANIMATION_DURATION);
25
+ }
26
+ toCenter(fNodeRect, fFlowRect, position) {
27
+ this.transform.scaledPosition = PointExtensions.initialize();
28
+ this.transform.position = PointExtensions.initialize((fFlowRect.width - fNodeRect.width) / 2 - position.x * this.transform.scale, (fFlowRect.height - fNodeRect.height) / 2 - position.y * this.transform.scale);
29
+ }
30
+ getNode(id) {
31
+ return this.fComponentsStore.fNodes.find((x) => x.fId === id);
32
+ }
33
+ getNodeRect(fNode) {
34
+ return RectExtensions.fromElement(fNode.hostElement);
35
+ }
36
+ getFlowRect() {
37
+ return RectExtensions.fromElement(this.fComponentsStore.fFlow.hostElement);
38
+ }
39
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CenterGroupOrNodeExecution, deps: [{ token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Injectable }); }
40
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CenterGroupOrNodeExecution }); }
41
+ };
42
+ CenterGroupOrNodeExecution = __decorate([
43
+ FExecutionRegister(CenterGroupOrNodeRequest)
44
+ ], CenterGroupOrNodeExecution);
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CenterGroupOrNodeExecution, decorators: [{
46
+ type: Injectable
47
+ }], ctorParameters: function () { return [{ type: i1.FComponentsStore }]; } });
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VudGVyLWdyb3VwLW9yLW5vZGUuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1jYW52YXMvY2VudGVyLWdyb3VwLW9yLW5vZGUvY2VudGVyLWdyb3VwLW9yLW5vZGUuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xFLE9BQU8sRUFBa0MsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUc3RixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7O0FBSXZELFdBQU0sMEJBQTBCLEdBQWhDLE1BQU0sMEJBQTBCO0lBRXJDLElBQVksU0FBUztRQUNuQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFRLENBQUMsU0FBUyxDQUFDO0lBQ2xELENBQUM7SUFFRCxZQUNVLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBRTVDLENBQUM7SUFFTSxNQUFNLENBQUMsT0FBaUM7UUFDN0MsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTNFLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFRLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNsSCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBUSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDdkQsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLDJCQUEyQixDQUFDLENBQUM7SUFDOUYsQ0FBQztJQUVNLFFBQVEsQ0FBQyxTQUFnQixFQUFFLFNBQWdCLEVBQUUsUUFBZ0I7UUFDbEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLEdBQUcsZUFBZSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzdELElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxHQUFHLGVBQWUsQ0FBQyxVQUFVLENBQ2xELENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQzNFLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQzlFLENBQUM7SUFDSixDQUFDO0lBRU8sT0FBTyxDQUFDLEVBQVU7UUFDeEIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRU8sV0FBVyxDQUFDLEtBQWdCO1FBQ2xDLE9BQU8sY0FBYyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVPLFdBQVc7UUFDakIsT0FBTyxjQUFjLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDOUUsQ0FBQzsrR0ExQ1UsMEJBQTBCO21IQUExQiwwQkFBMEI7O0FBQTFCLDBCQUEwQjtJQUR0QyxrQkFBa0IsQ0FBQyx3QkFBd0IsQ0FBQztHQUNoQywwQkFBMEIsQ0EyQ3RDOzRGQTNDWSwwQkFBMEI7a0JBRnRDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDZW50ZXJHcm91cE9yTm9kZVJlcXVlc3QgfSBmcm9tICcuL2NlbnRlci1ncm91cC1vci1ub2RlLXJlcXVlc3QnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBJUG9pbnQsIElSZWN0LCBJVHJhbnNmb3JtTW9kZWwsIFBvaW50RXh0ZW5zaW9ucywgUmVjdEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgRk5vZGVCYXNlIH0gZnJvbSAnLi4vLi4vLi4vZi1ub2RlJztcbmltcG9ydCB7IEZfQ0FOVkFTX0FOSU1BVElPTl9EVVJBVElPTiB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbic7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoQ2VudGVyR3JvdXBPck5vZGVSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIENlbnRlckdyb3VwT3JOb2RlRXhlY3V0aW9uIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxDZW50ZXJHcm91cE9yTm9kZVJlcXVlc3QsIHZvaWQ+IHtcblxuICBwcml2YXRlIGdldCB0cmFuc2Zvcm0oKTogSVRyYW5zZm9ybU1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhLnRyYW5zZm9ybTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZSxcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IENlbnRlckdyb3VwT3JOb2RlUmVxdWVzdCk6IHZvaWQge1xuICAgIGNvbnN0IGZOb2RlID0gdGhpcy5nZXROb2RlKHJlcXVlc3QuaWQpO1xuICAgIGlmICghZk5vZGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnRvQ2VudGVyKHRoaXMuZ2V0Tm9kZVJlY3QoZk5vZGUpLCB0aGlzLmdldEZsb3dSZWN0KCksIGZOb2RlLnBvc2l0aW9uKTtcblxuICAgIHJlcXVlc3QuYW5pbWF0ZWQgPyB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyEucmVkcmF3V2l0aEFuaW1hdGlvbigpIDogdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhLnJlZHJhdygpO1xuICAgIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzIS5lbWl0Q2FudmFzQ2hhbmdlRXZlbnQoKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuZkNvbXBvbmVudHNTdG9yZS5jb21wb25lbnREYXRhQ2hhbmdlZCgpLCBGX0NBTlZBU19BTklNQVRJT05fRFVSQVRJT04pO1xuICB9XG5cbiAgcHVibGljIHRvQ2VudGVyKGZOb2RlUmVjdDogSVJlY3QsIGZGbG93UmVjdDogSVJlY3QsIHBvc2l0aW9uOiBJUG9pbnQpOiB2b2lkIHtcbiAgICB0aGlzLnRyYW5zZm9ybS5zY2FsZWRQb3NpdGlvbiA9IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCk7XG4gICAgdGhpcy50cmFuc2Zvcm0ucG9zaXRpb24gPSBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZShcbiAgICAgIChmRmxvd1JlY3Qud2lkdGggLSBmTm9kZVJlY3Qud2lkdGgpIC8gMiAtIHBvc2l0aW9uLnggKiB0aGlzLnRyYW5zZm9ybS5zY2FsZSxcbiAgICAgIChmRmxvd1JlY3QuaGVpZ2h0IC0gZk5vZGVSZWN0LmhlaWdodCkgLyAyIC0gcG9zaXRpb24ueSAqIHRoaXMudHJhbnNmb3JtLnNjYWxlXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Tm9kZShpZDogc3RyaW5nKTogRk5vZGVCYXNlIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZOb2Rlcy5maW5kKCh4KSA9PiB4LmZJZCA9PT0gaWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXROb2RlUmVjdChmTm9kZTogRk5vZGVCYXNlKTogSVJlY3Qge1xuICAgIHJldHVybiBSZWN0RXh0ZW5zaW9ucy5mcm9tRWxlbWVudChmTm9kZS5ob3N0RWxlbWVudCk7XG4gIH1cblxuICBwcml2YXRlIGdldEZsb3dSZWN0KCk6IElSZWN0IHtcbiAgICByZXR1cm4gUmVjdEV4dGVuc2lvbnMuZnJvbUVsZW1lbnQodGhpcy5mQ29tcG9uZW50c1N0b3JlLmZGbG93IS5ob3N0RWxlbWVudCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,55 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { FitToFlowRequest } from './fit-to-flow-request';
4
+ import { FExecutionRegister } from '@foblex/mediator';
5
+ import { PointExtensions, RectExtensions } from '@foblex/2d';
6
+ import { F_CANVAS_ANIMATION_DURATION, GetNodesRectRequest } from '../../../domain';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "../../../f-storage";
9
+ import * as i2 from "@foblex/mediator";
10
+ export let FitToFlowExecution = class FitToFlowExecution {
11
+ get transform() {
12
+ return this.fComponentsStore.fCanvas.transform;
13
+ }
14
+ constructor(fComponentsStore, fMediator) {
15
+ this.fComponentsStore = fComponentsStore;
16
+ this.fMediator = fMediator;
17
+ }
18
+ handle(request) {
19
+ const fNodesRect = this.fMediator.send(new GetNodesRectRequest()) || RectExtensions.initialize();
20
+ if (fNodesRect.width === 0 || fNodesRect.height === 0) {
21
+ return;
22
+ }
23
+ this.fitToParent(fNodesRect, RectExtensions.fromElement(this.fComponentsStore.fFlow.hostElement), this.fComponentsStore.fNodes.map((x) => x.position), request.toCenter);
24
+ request.animated ? this.fComponentsStore.fCanvas.redrawWithAnimation() : this.fComponentsStore.fCanvas.redraw();
25
+ this.fComponentsStore.fCanvas.emitCanvasChangeEvent();
26
+ setTimeout(() => this.fComponentsStore.componentDataChanged(), F_CANVAS_ANIMATION_DURATION);
27
+ }
28
+ fitToParent(rect, parentRect, points, toCenter) {
29
+ this.transform.scaledPosition = PointExtensions.initialize();
30
+ this.transform.position = this.getZeroPositionWithoutScale(points);
31
+ const itemsContainerWidth = (rect.width / this.transform.scale) + toCenter.x;
32
+ const itemsContainerHeight = (rect.height / this.transform.scale) + toCenter.y;
33
+ if ((itemsContainerWidth > parentRect.width || itemsContainerHeight > parentRect.height) ||
34
+ itemsContainerWidth < parentRect.width && itemsContainerHeight < parentRect.height) {
35
+ this.transform.scale = Math.min(parentRect.width / itemsContainerWidth, parentRect.height / itemsContainerHeight);
36
+ }
37
+ const newX = (parentRect.width - itemsContainerWidth * this.transform.scale) / 2 - this.transform.position.x * this.transform.scale;
38
+ const newY = (parentRect.height - itemsContainerHeight * this.transform.scale) / 2 - this.transform.position.y * this.transform.scale;
39
+ this.transform.position = PointExtensions.initialize(newX + (toCenter.x / 2) * this.transform.scale, newY + (toCenter.y / 2) * this.transform.scale);
40
+ }
41
+ getZeroPositionWithoutScale(points) {
42
+ const xPoint = points.length ? Math.min(...points.map((point) => point.x)) : 0;
43
+ const yPoint = points.length ? Math.min(...points.map((point) => point.y)) : 0;
44
+ return PointExtensions.initialize(xPoint, yPoint);
45
+ }
46
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FitToFlowExecution, deps: [{ token: i1.FComponentsStore }, { token: i2.FMediator }], target: i0.ɵɵFactoryTarget.Injectable }); }
47
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FitToFlowExecution }); }
48
+ };
49
+ FitToFlowExecution = __decorate([
50
+ FExecutionRegister(FitToFlowRequest)
51
+ ], FitToFlowExecution);
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FitToFlowExecution, decorators: [{
53
+ type: Injectable
54
+ }], ctorParameters: function () { return [{ type: i1.FComponentsStore }, { type: i2.FMediator }]; } });
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml0LXRvLWZsb3cuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1jYW52YXMvZml0LXRvLWZsb3cvZml0LXRvLWZsb3cuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxrQkFBa0IsRUFBeUIsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RSxPQUFPLEVBQWtDLGVBQWUsRUFBRSxjQUFjLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFN0YsT0FBTyxFQUFFLDJCQUEyQixFQUFFLG1CQUFtQixFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFJNUUsV0FBTSxrQkFBa0IsR0FBeEIsTUFBTSxrQkFBa0I7SUFFN0IsSUFBWSxTQUFTO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQVEsQ0FBQyxTQUFTLENBQUM7SUFDbEQsQ0FBQztJQUVELFlBQ1UsZ0JBQWtDLEVBQ2xDLFNBQW9CO1FBRHBCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsY0FBUyxHQUFULFNBQVMsQ0FBVztJQUU5QixDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQXlCO1FBQ3JDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFlLElBQUksbUJBQW1CLEVBQUUsQ0FBQyxJQUFJLGNBQWMsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUMvRyxJQUFJLFVBQVUsQ0FBQyxLQUFLLEtBQUssQ0FBQyxJQUFJLFVBQVUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3JELE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxXQUFXLENBQ2QsVUFBVSxFQUNWLGNBQWMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQU0sQ0FBQyxXQUFXLENBQUMsRUFDcEUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFDbkQsT0FBTyxDQUFDLFFBQVEsQ0FDakIsQ0FBQztRQUNGLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFRLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNsSCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBUSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDdkQsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLDJCQUEyQixDQUFDLENBQUM7SUFDOUYsQ0FBQztJQUVNLFdBQVcsQ0FBQyxJQUFXLEVBQUUsVUFBaUIsRUFBRSxNQUFnQixFQUFFLFFBQWdCO1FBQ25GLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxHQUFHLGVBQWUsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUM3RCxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsMkJBQTJCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbkUsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQzdFLE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUMvRSxJQUNFLENBQUMsbUJBQW1CLEdBQUcsVUFBVSxDQUFDLEtBQUssSUFBSSxvQkFBb0IsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDO1lBQ3BGLG1CQUFtQixHQUFHLFVBQVUsQ0FBQyxLQUFLLElBQUksb0JBQW9CLEdBQUcsVUFBVSxDQUFDLE1BQU0sRUFDbEY7WUFDQSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsbUJBQW1CLEVBQUUsVUFBVSxDQUFDLE1BQU0sR0FBRyxvQkFBb0IsQ0FBQyxDQUFDO1NBQ25IO1FBRUQsTUFBTSxJQUFJLEdBQUcsQ0FBQyxVQUFVLENBQUMsS0FBSyxHQUFHLG1CQUFtQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztRQUNwSSxNQUFNLElBQUksR0FBRyxDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDO1FBRXRJLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxHQUFHLGVBQWUsQ0FBQyxVQUFVLENBQUMsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDdEosQ0FBQztJQUVPLDJCQUEyQixDQUFDLE1BQWdCO1FBQ2xELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9FLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9FLE9BQU8sZUFBZSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUE7SUFDbkQsQ0FBQzsrR0FuRFUsa0JBQWtCO21IQUFsQixrQkFBa0I7O0FBQWxCLGtCQUFrQjtJQUQ5QixrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FBQztHQUN4QixrQkFBa0IsQ0FvRDlCOzRGQXBEWSxrQkFBa0I7a0JBRjlCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGaXRUb0Zsb3dSZXF1ZXN0IH0gZnJvbSAnLi9maXQtdG8tZmxvdy1yZXF1ZXN0JztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBJUG9pbnQsIElSZWN0LCBJVHJhbnNmb3JtTW9kZWwsIFBvaW50RXh0ZW5zaW9ucywgUmVjdEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgRl9DQU5WQVNfQU5JTUFUSU9OX0RVUkFUSU9OLCBHZXROb2Rlc1JlY3RSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJztcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihGaXRUb0Zsb3dSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIEZpdFRvRmxvd0V4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248Rml0VG9GbG93UmVxdWVzdCwgdm9pZD4ge1xuXG4gIHByaXZhdGUgZ2V0IHRyYW5zZm9ybSgpOiBJVHJhbnNmb3JtTW9kZWwge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyEudHJhbnNmb3JtO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgIHByaXZhdGUgZk1lZGlhdG9yOiBGTWVkaWF0b3JcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IEZpdFRvRmxvd1JlcXVlc3QpOiB2b2lkIHtcbiAgICBjb25zdCBmTm9kZXNSZWN0ID0gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJUmVjdCB8IG51bGw+KG5ldyBHZXROb2Rlc1JlY3RSZXF1ZXN0KCkpIHx8IFJlY3RFeHRlbnNpb25zLmluaXRpYWxpemUoKTtcbiAgICBpZiAoZk5vZGVzUmVjdC53aWR0aCA9PT0gMCB8fCBmTm9kZXNSZWN0LmhlaWdodCA9PT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuZml0VG9QYXJlbnQoXG4gICAgICBmTm9kZXNSZWN0LFxuICAgICAgUmVjdEV4dGVuc2lvbnMuZnJvbUVsZW1lbnQodGhpcy5mQ29tcG9uZW50c1N0b3JlLmZGbG93IS5ob3N0RWxlbWVudCksXG4gICAgICB0aGlzLmZDb21wb25lbnRzU3RvcmUuZk5vZGVzLm1hcCgoeCkgPT4geC5wb3NpdGlvbiksXG4gICAgICByZXF1ZXN0LnRvQ2VudGVyXG4gICAgKTtcbiAgICByZXF1ZXN0LmFuaW1hdGVkID8gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhLnJlZHJhd1dpdGhBbmltYXRpb24oKSA6IHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzIS5yZWRyYXcoKTtcbiAgICB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyEuZW1pdENhbnZhc0NoYW5nZUV2ZW50KCk7XG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmZDb21wb25lbnRzU3RvcmUuY29tcG9uZW50RGF0YUNoYW5nZWQoKSwgRl9DQU5WQVNfQU5JTUFUSU9OX0RVUkFUSU9OKTtcbiAgfVxuXG4gIHB1YmxpYyBmaXRUb1BhcmVudChyZWN0OiBJUmVjdCwgcGFyZW50UmVjdDogSVJlY3QsIHBvaW50czogSVBvaW50W10sIHRvQ2VudGVyOiBJUG9pbnQpOiB2b2lkIHtcbiAgICB0aGlzLnRyYW5zZm9ybS5zY2FsZWRQb3NpdGlvbiA9IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCk7XG4gICAgdGhpcy50cmFuc2Zvcm0ucG9zaXRpb24gPSB0aGlzLmdldFplcm9Qb3NpdGlvbldpdGhvdXRTY2FsZShwb2ludHMpO1xuICAgIGNvbnN0IGl0ZW1zQ29udGFpbmVyV2lkdGggPSAocmVjdC53aWR0aCAvIHRoaXMudHJhbnNmb3JtLnNjYWxlKSArIHRvQ2VudGVyLng7XG4gICAgY29uc3QgaXRlbXNDb250YWluZXJIZWlnaHQgPSAocmVjdC5oZWlnaHQgLyB0aGlzLnRyYW5zZm9ybS5zY2FsZSkgKyB0b0NlbnRlci55O1xuICAgIGlmIChcbiAgICAgIChpdGVtc0NvbnRhaW5lcldpZHRoID4gcGFyZW50UmVjdC53aWR0aCB8fCBpdGVtc0NvbnRhaW5lckhlaWdodCA+IHBhcmVudFJlY3QuaGVpZ2h0KSB8fFxuICAgICAgaXRlbXNDb250YWluZXJXaWR0aCA8IHBhcmVudFJlY3Qud2lkdGggJiYgaXRlbXNDb250YWluZXJIZWlnaHQgPCBwYXJlbnRSZWN0LmhlaWdodFxuICAgICkge1xuICAgICAgdGhpcy50cmFuc2Zvcm0uc2NhbGUgPSBNYXRoLm1pbihwYXJlbnRSZWN0LndpZHRoIC8gaXRlbXNDb250YWluZXJXaWR0aCwgcGFyZW50UmVjdC5oZWlnaHQgLyBpdGVtc0NvbnRhaW5lckhlaWdodCk7XG4gICAgfVxuXG4gICAgY29uc3QgbmV3WCA9IChwYXJlbnRSZWN0LndpZHRoIC0gaXRlbXNDb250YWluZXJXaWR0aCAqIHRoaXMudHJhbnNmb3JtLnNjYWxlKSAvIDIgLSB0aGlzLnRyYW5zZm9ybS5wb3NpdGlvbi54ICogdGhpcy50cmFuc2Zvcm0uc2NhbGU7XG4gICAgY29uc3QgbmV3WSA9IChwYXJlbnRSZWN0LmhlaWdodCAtIGl0ZW1zQ29udGFpbmVySGVpZ2h0ICogdGhpcy50cmFuc2Zvcm0uc2NhbGUpIC8gMiAtIHRoaXMudHJhbnNmb3JtLnBvc2l0aW9uLnkgKiB0aGlzLnRyYW5zZm9ybS5zY2FsZTtcblxuICAgIHRoaXMudHJhbnNmb3JtLnBvc2l0aW9uID0gUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUobmV3WCArICh0b0NlbnRlci54IC8gMikgKiB0aGlzLnRyYW5zZm9ybS5zY2FsZSwgbmV3WSArICh0b0NlbnRlci55IC8gMikgKiB0aGlzLnRyYW5zZm9ybS5zY2FsZSlcbiAgfVxuXG4gIHByaXZhdGUgZ2V0WmVyb1Bvc2l0aW9uV2l0aG91dFNjYWxlKHBvaW50czogSVBvaW50W10pOiBJUG9pbnQge1xuICAgIGNvbnN0IHhQb2ludCA9IHBvaW50cy5sZW5ndGggPyBNYXRoLm1pbiguLi5wb2ludHMubWFwKChwb2ludCkgPT4gcG9pbnQueCkpIDogMDtcbiAgICBjb25zdCB5UG9pbnQgPSBwb2ludHMubGVuZ3RoID8gTWF0aC5taW4oLi4ucG9pbnRzLm1hcCgocG9pbnQpID0+IHBvaW50LnkpKSA6IDA7XG4gICAgcmV0dXJuIFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKHhQb2ludCwgeVBvaW50KVxuICB9XG59XG4iXX0=
@@ -0,0 +1,32 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { InputCanvasPositionRequest } from './input-canvas-position-request';
4
+ import { FExecutionRegister } from '@foblex/mediator';
5
+ import { PointExtensions } from '@foblex/2d';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../../../f-storage";
8
+ export let InputCanvasPositionExecution = class InputCanvasPositionExecution {
9
+ constructor(fComponentsStore) {
10
+ this.fComponentsStore = fComponentsStore;
11
+ }
12
+ handle(request) {
13
+ if (!request.position) {
14
+ return;
15
+ }
16
+ const position = PointExtensions.sum(request.transform.position, request.transform.scaledPosition);
17
+ if (!PointExtensions.isEqual(position, request.position)) {
18
+ request.transform.position = request.position;
19
+ request.transform.scaledPosition = PointExtensions.initialize();
20
+ this.fComponentsStore.fCanvas?.redraw();
21
+ }
22
+ }
23
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InputCanvasPositionExecution, deps: [{ token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Injectable }); }
24
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InputCanvasPositionExecution }); }
25
+ };
26
+ InputCanvasPositionExecution = __decorate([
27
+ FExecutionRegister(InputCanvasPositionRequest)
28
+ ], InputCanvasPositionExecution);
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InputCanvasPositionExecution, decorators: [{
30
+ type: Injectable
31
+ }], ctorParameters: function () { return [{ type: i1.FComponentsStore }]; } });
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtY2FudmFzLXBvc2l0aW9uLmV4ZWN1dGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2YtY2FudmFzL2lucHV0LWNhbnZhcy1wb3NpdGlvbi9pbnB1dC1jYW52YXMtcG9zaXRpb24uZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxZQUFZLENBQUM7OztBQUt0QyxXQUFNLDRCQUE0QixHQUFsQyxNQUFNLDRCQUE0QjtJQUd2QyxZQUNVLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBRTVDLENBQUM7SUFFTSxNQUFNLENBQUMsT0FBbUM7UUFDL0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUU7WUFDckIsT0FBTztTQUNSO1FBQ0QsTUFBTSxRQUFRLEdBQUcsZUFBZSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ25HLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDeEQsT0FBTyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQztZQUM5QyxPQUFPLENBQUMsU0FBUyxDQUFDLGNBQWMsR0FBRyxlQUFlLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDaEUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsQ0FBQztTQUN6QztJQUNILENBQUM7K0dBbEJVLDRCQUE0QjttSEFBNUIsNEJBQTRCOztBQUE1Qiw0QkFBNEI7SUFEeEMsa0JBQWtCLENBQUMsMEJBQTBCLENBQUM7R0FDbEMsNEJBQTRCLENBbUJ4Qzs0RkFuQlksNEJBQTRCO2tCQUZ4QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW5wdXRDYW52YXNQb3NpdGlvblJlcXVlc3QgfSBmcm9tICcuL2lucHV0LWNhbnZhcy1wb3NpdGlvbi1yZXF1ZXN0JztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgUG9pbnRFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihJbnB1dENhbnZhc1Bvc2l0aW9uUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBJbnB1dENhbnZhc1Bvc2l0aW9uRXhlY3V0aW9uIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxJbnB1dENhbnZhc1Bvc2l0aW9uUmVxdWVzdCwgdm9pZD4ge1xuXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBJbnB1dENhbnZhc1Bvc2l0aW9uUmVxdWVzdCk6IHZvaWQge1xuICAgIGlmICghcmVxdWVzdC5wb3NpdGlvbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBwb3NpdGlvbiA9IFBvaW50RXh0ZW5zaW9ucy5zdW0ocmVxdWVzdC50cmFuc2Zvcm0ucG9zaXRpb24sIHJlcXVlc3QudHJhbnNmb3JtLnNjYWxlZFBvc2l0aW9uKTtcbiAgICBpZiAoIVBvaW50RXh0ZW5zaW9ucy5pc0VxdWFsKHBvc2l0aW9uLCByZXF1ZXN0LnBvc2l0aW9uKSkge1xuICAgICAgcmVxdWVzdC50cmFuc2Zvcm0ucG9zaXRpb24gPSByZXF1ZXN0LnBvc2l0aW9uO1xuICAgICAgcmVxdWVzdC50cmFuc2Zvcm0uc2NhbGVkUG9zaXRpb24gPSBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpO1xuICAgICAgdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXM/LnJlZHJhdygpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -0,0 +1,27 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { InputCanvasScaleRequest } from './input-canvas-scale-request';
4
+ import { FExecutionRegister } from '@foblex/mediator';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../../f-storage";
7
+ export let InputCanvasScaleExecution = class InputCanvasScaleExecution {
8
+ constructor(fComponentsStore) {
9
+ this.fComponentsStore = fComponentsStore;
10
+ }
11
+ handle(request) {
12
+ if (!request.scale) {
13
+ return;
14
+ }
15
+ request.transform.scale = request.scale;
16
+ this.fComponentsStore.fCanvas?.redraw();
17
+ }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InputCanvasScaleExecution, deps: [{ token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Injectable }); }
19
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InputCanvasScaleExecution }); }
20
+ };
21
+ InputCanvasScaleExecution = __decorate([
22
+ FExecutionRegister(InputCanvasScaleRequest)
23
+ ], InputCanvasScaleExecution);
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InputCanvasScaleExecution, decorators: [{
25
+ type: Injectable
26
+ }], ctorParameters: function () { return [{ type: i1.FComponentsStore }]; } });
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtY2FudmFzLXNjYWxlLmV4ZWN1dGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2YtY2FudmFzL2lucHV0LWNhbnZhcy1zY2FsZS9pbnB1dC1jYW52YXMtc2NhbGUuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDOzs7QUFLM0QsV0FBTSx5QkFBeUIsR0FBL0IsTUFBTSx5QkFBeUI7SUFHcEMsWUFDVSxnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUU1QyxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQWdDO1FBQzVDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFO1lBQ2xCLE9BQU87U0FDUjtRQUNELE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFDeEMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsQ0FBQztJQUMxQyxDQUFDOytHQWRVLHlCQUF5QjttSEFBekIseUJBQXlCOztBQUF6Qix5QkFBeUI7SUFEckMsa0JBQWtCLENBQUMsdUJBQXVCLENBQUM7R0FDL0IseUJBQXlCLENBZXJDOzRGQWZZLHlCQUF5QjtrQkFGckMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElucHV0Q2FudmFzU2NhbGVSZXF1ZXN0IH0gZnJvbSAnLi9pbnB1dC1jYW52YXMtc2NhbGUtcmVxdWVzdCc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKElucHV0Q2FudmFzU2NhbGVSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIElucHV0Q2FudmFzU2NhbGVFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPElucHV0Q2FudmFzU2NhbGVSZXF1ZXN0LCB2b2lkPiB7XG5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmVcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IElucHV0Q2FudmFzU2NhbGVSZXF1ZXN0KTogdm9pZCB7XG4gICAgaWYgKCFyZXF1ZXN0LnNjYWxlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHJlcXVlc3QudHJhbnNmb3JtLnNjYWxlID0gcmVxdWVzdC5zY2FsZTtcbiAgICB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcz8ucmVkcmF3KCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,28 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { ResetScaleRequest } from './reset-scale-request';
4
+ import { FExecutionRegister } from '@foblex/mediator';
5
+ import { PointExtensions } from '@foblex/2d';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../../../f-storage";
8
+ export let ResetScaleExecution = class ResetScaleExecution {
9
+ get transform() {
10
+ return this.fComponentsStore.fCanvas.transform;
11
+ }
12
+ constructor(fComponentsStore) {
13
+ this.fComponentsStore = fComponentsStore;
14
+ }
15
+ handle(request) {
16
+ this.transform.scale = 1;
17
+ this.transform.scaledPosition = PointExtensions.initialize();
18
+ }
19
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResetScaleExecution, deps: [{ token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Injectable }); }
20
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResetScaleExecution }); }
21
+ };
22
+ ResetScaleExecution = __decorate([
23
+ FExecutionRegister(ResetScaleRequest)
24
+ ], ResetScaleExecution);
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResetScaleExecution, decorators: [{
26
+ type: Injectable
27
+ }], ctorParameters: function () { return [{ type: i1.FComponentsStore }]; } });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXQtc2NhbGUuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1jYW52YXMvcmVzZXQtc2NhbGUvcmVzZXQtc2NhbGUuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xFLE9BQU8sRUFBbUIsZUFBZSxFQUFFLE1BQU0sWUFBWSxDQUFDOzs7QUFNdkQsV0FBTSxtQkFBbUIsR0FBekIsTUFBTSxtQkFBbUI7SUFFOUIsSUFBWSxTQUFTO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQVEsQ0FBQyxTQUFTLENBQUM7SUFDbEQsQ0FBQztJQUVELFlBQ1UsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFFNUMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUEwQjtRQUN0QyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLEdBQUcsZUFBZSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQy9ELENBQUM7K0dBZFUsbUJBQW1CO21IQUFuQixtQkFBbUI7O0FBQW5CLG1CQUFtQjtJQUQvQixrQkFBa0IsQ0FBQyxpQkFBaUIsQ0FBQztHQUN6QixtQkFBbUIsQ0FlL0I7NEZBZlksbUJBQW1CO2tCQUYvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmVzZXRTY2FsZVJlcXVlc3QgfSBmcm9tICcuL3Jlc2V0LXNjYWxlLXJlcXVlc3QnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBJVHJhbnNmb3JtTW9kZWwsIFBvaW50RXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5cblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihSZXNldFNjYWxlUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBSZXNldFNjYWxlRXhlY3V0aW9uIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxSZXNldFNjYWxlUmVxdWVzdCwgdm9pZD4ge1xuXG4gIHByaXZhdGUgZ2V0IHRyYW5zZm9ybSgpOiBJVHJhbnNmb3JtTW9kZWwge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyEudHJhbnNmb3JtO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBSZXNldFNjYWxlUmVxdWVzdCk6IHZvaWQge1xuICAgIHRoaXMudHJhbnNmb3JtLnNjYWxlID0gMTtcbiAgICB0aGlzLnRyYW5zZm9ybS5zY2FsZWRQb3NpdGlvbiA9IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,50 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { ResetScaleAndCenterRequest } from './reset-scale-and-center-request';
4
+ import { FExecutionRegister } from '@foblex/mediator';
5
+ import { PointExtensions, RectExtensions } from '@foblex/2d';
6
+ import { F_CANVAS_ANIMATION_DURATION, GetNodesRectRequest } from '../../../domain';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "../../../f-storage";
9
+ import * as i2 from "@foblex/mediator";
10
+ export let ResetScaleAndCenterExecution = class ResetScaleAndCenterExecution {
11
+ get transform() {
12
+ return this.fComponentsStore.fCanvas.transform;
13
+ }
14
+ constructor(fComponentsStore, fMediator) {
15
+ this.fComponentsStore = fComponentsStore;
16
+ this.fMediator = fMediator;
17
+ }
18
+ handle(request) {
19
+ const fNodesRect = this.fMediator.send(new GetNodesRectRequest()) || RectExtensions.initialize();
20
+ if (fNodesRect.width === 0 || fNodesRect.height === 0) {
21
+ return;
22
+ }
23
+ this.oneToOneCentering(fNodesRect, RectExtensions.fromElement(this.fComponentsStore.fFlow.hostElement), this.fComponentsStore.fNodes.map((x) => x.position));
24
+ request.animated ? this.fComponentsStore.fCanvas.redrawWithAnimation() : this.fComponentsStore.fCanvas.redraw();
25
+ this.fComponentsStore.fCanvas.emitCanvasChangeEvent();
26
+ setTimeout(() => this.fComponentsStore.componentDataChanged(), F_CANVAS_ANIMATION_DURATION);
27
+ }
28
+ oneToOneCentering(rect, parentRect, points) {
29
+ this.transform.scaledPosition = PointExtensions.initialize();
30
+ this.transform.position = this.getZeroPositionWithoutScale(points);
31
+ const newX = (parentRect.width - rect.width / this.transform.scale) / 2 - this.transform.position.x;
32
+ const newY = (parentRect.height - rect.height / this.transform.scale) / 2 - this.transform.position.y;
33
+ this.transform.scale = 1;
34
+ this.transform.position = PointExtensions.initialize(newX, newY);
35
+ }
36
+ getZeroPositionWithoutScale(points) {
37
+ const xPoint = points.length ? Math.min(...points.map((point) => point.x)) : 0;
38
+ const yPoint = points.length ? Math.min(...points.map((point) => point.y)) : 0;
39
+ return PointExtensions.initialize(xPoint, yPoint);
40
+ }
41
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResetScaleAndCenterExecution, deps: [{ token: i1.FComponentsStore }, { token: i2.FMediator }], target: i0.ɵɵFactoryTarget.Injectable }); }
42
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResetScaleAndCenterExecution }); }
43
+ };
44
+ ResetScaleAndCenterExecution = __decorate([
45
+ FExecutionRegister(ResetScaleAndCenterRequest)
46
+ ], ResetScaleAndCenterExecution);
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResetScaleAndCenterExecution, decorators: [{
48
+ type: Injectable
49
+ }], ctorParameters: function () { return [{ type: i1.FComponentsStore }, { type: i2.FMediator }]; } });
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXQtc2NhbGUtYW5kLWNlbnRlci5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLWNhbnZhcy9yZXNldC1zY2FsZS1hbmQtY2VudGVyL3Jlc2V0LXNjYWxlLWFuZC1jZW50ZXIuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxrQkFBa0IsRUFBeUIsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RSxPQUFPLEVBQWtDLGVBQWUsRUFBRSxjQUFjLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDN0YsT0FBTyxFQUFFLDJCQUEyQixFQUFFLG1CQUFtQixFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFNNUUsV0FBTSw0QkFBNEIsR0FBbEMsTUFBTSw0QkFBNEI7SUFFdkMsSUFBWSxTQUFTO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQVEsQ0FBQyxTQUFTLENBQUM7SUFDbEQsQ0FBQztJQUVELFlBQ1UsZ0JBQWtDLEVBQ2xDLFNBQW9CO1FBRHBCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsY0FBUyxHQUFULFNBQVMsQ0FBVztJQUU5QixDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQW1DO1FBQy9DLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFlLElBQUksbUJBQW1CLEVBQUUsQ0FBQyxJQUFJLGNBQWMsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUMvRyxJQUFJLFVBQVUsQ0FBQyxLQUFLLEtBQUssQ0FBQyxJQUFJLFVBQVUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3JELE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxpQkFBaUIsQ0FDcEIsVUFBVSxFQUNWLGNBQWMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQU0sQ0FBQyxXQUFXLENBQUMsRUFDcEUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FDcEQsQ0FBQztRQUVGLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFRLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNsSCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBUSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDdkQsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLDJCQUEyQixDQUFDLENBQUM7SUFDOUYsQ0FBQztJQUVNLGlCQUFpQixDQUFDLElBQVcsRUFBRSxVQUFpQixFQUFFLE1BQWdCO1FBQ3ZFLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxHQUFHLGVBQWUsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUM3RCxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsMkJBQTJCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFbkUsTUFBTSxJQUFJLEdBQUcsQ0FBQyxVQUFVLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQ3BHLE1BQU0sSUFBSSxHQUFHLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUV0RyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEdBQUcsZUFBZSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVPLDJCQUEyQixDQUFDLE1BQWdCO1FBQ2xELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9FLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9FLE9BQU8sZUFBZSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUE7SUFDbkQsQ0FBQzsrR0EzQ1UsNEJBQTRCO21IQUE1Qiw0QkFBNEI7O0FBQTVCLDRCQUE0QjtJQUR4QyxrQkFBa0IsQ0FBQywwQkFBMEIsQ0FBQztHQUNsQyw0QkFBNEIsQ0E0Q3hDOzRGQTVDWSw0QkFBNEI7a0JBRnhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZXNldFNjYWxlQW5kQ2VudGVyUmVxdWVzdCB9IGZyb20gJy4vcmVzZXQtc2NhbGUtYW5kLWNlbnRlci1yZXF1ZXN0JztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBJUG9pbnQsIElSZWN0LCBJVHJhbnNmb3JtTW9kZWwsIFBvaW50RXh0ZW5zaW9ucywgUmVjdEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZfQ0FOVkFTX0FOSU1BVElPTl9EVVJBVElPTiwgR2V0Tm9kZXNSZWN0UmVxdWVzdCB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcblxuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKFJlc2V0U2NhbGVBbmRDZW50ZXJSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIFJlc2V0U2NhbGVBbmRDZW50ZXJFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPFJlc2V0U2NhbGVBbmRDZW50ZXJSZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSBnZXQgdHJhbnNmb3JtKCk6IElUcmFuc2Zvcm1Nb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzIS50cmFuc2Zvcm07XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmUsXG4gICAgcHJpdmF0ZSBmTWVkaWF0b3I6IEZNZWRpYXRvclxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogUmVzZXRTY2FsZUFuZENlbnRlclJlcXVlc3QpOiB2b2lkIHtcbiAgICBjb25zdCBmTm9kZXNSZWN0ID0gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJUmVjdCB8IG51bGw+KG5ldyBHZXROb2Rlc1JlY3RSZXF1ZXN0KCkpIHx8IFJlY3RFeHRlbnNpb25zLmluaXRpYWxpemUoKTtcbiAgICBpZiAoZk5vZGVzUmVjdC53aWR0aCA9PT0gMCB8fCBmTm9kZXNSZWN0LmhlaWdodCA9PT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLm9uZVRvT25lQ2VudGVyaW5nKFxuICAgICAgZk5vZGVzUmVjdCxcbiAgICAgIFJlY3RFeHRlbnNpb25zLmZyb21FbGVtZW50KHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mRmxvdyEuaG9zdEVsZW1lbnQpLFxuICAgICAgdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZOb2Rlcy5tYXAoKHgpID0+IHgucG9zaXRpb24pXG4gICAgKTtcblxuICAgIHJlcXVlc3QuYW5pbWF0ZWQgPyB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyEucmVkcmF3V2l0aEFuaW1hdGlvbigpIDogdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhLnJlZHJhdygpO1xuICAgIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzIS5lbWl0Q2FudmFzQ2hhbmdlRXZlbnQoKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuZkNvbXBvbmVudHNTdG9yZS5jb21wb25lbnREYXRhQ2hhbmdlZCgpLCBGX0NBTlZBU19BTklNQVRJT05fRFVSQVRJT04pO1xuICB9XG5cbiAgcHVibGljIG9uZVRvT25lQ2VudGVyaW5nKHJlY3Q6IElSZWN0LCBwYXJlbnRSZWN0OiBJUmVjdCwgcG9pbnRzOiBJUG9pbnRbXSk6IHZvaWQge1xuICAgIHRoaXMudHJhbnNmb3JtLnNjYWxlZFBvc2l0aW9uID0gUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoKTtcbiAgICB0aGlzLnRyYW5zZm9ybS5wb3NpdGlvbiA9IHRoaXMuZ2V0WmVyb1Bvc2l0aW9uV2l0aG91dFNjYWxlKHBvaW50cyk7XG5cbiAgICBjb25zdCBuZXdYID0gKHBhcmVudFJlY3Qud2lkdGggLSByZWN0LndpZHRoIC8gdGhpcy50cmFuc2Zvcm0uc2NhbGUpIC8gMiAtIHRoaXMudHJhbnNmb3JtLnBvc2l0aW9uLng7XG4gICAgY29uc3QgbmV3WSA9IChwYXJlbnRSZWN0LmhlaWdodCAtIHJlY3QuaGVpZ2h0IC8gdGhpcy50cmFuc2Zvcm0uc2NhbGUpIC8gMiAtIHRoaXMudHJhbnNmb3JtLnBvc2l0aW9uLnk7XG5cbiAgICB0aGlzLnRyYW5zZm9ybS5zY2FsZSA9IDE7XG4gICAgdGhpcy50cmFuc2Zvcm0ucG9zaXRpb24gPSBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZShuZXdYLCBuZXdZKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0WmVyb1Bvc2l0aW9uV2l0aG91dFNjYWxlKHBvaW50czogSVBvaW50W10pOiBJUG9pbnQge1xuICAgIGNvbnN0IHhQb2ludCA9IHBvaW50cy5sZW5ndGggPyBNYXRoLm1pbiguLi5wb2ludHMubWFwKChwb2ludCkgPT4gcG9pbnQueCkpIDogMDtcbiAgICBjb25zdCB5UG9pbnQgPSBwb2ludHMubGVuZ3RoID8gTWF0aC5taW4oLi4ucG9pbnRzLm1hcCgocG9pbnQpID0+IHBvaW50LnkpKSA6IDA7XG4gICAgcmV0dXJuIFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKHhQb2ludCwgeVBvaW50KVxuICB9XG59XG4iXX0=
@@ -0,0 +1,33 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { UpdateScaleRequest } from './update-scale-request';
4
+ import { FExecutionRegister } from '@foblex/mediator';
5
+ import { PointExtensions } from '@foblex/2d';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../../../f-storage";
8
+ export let UpdateScaleExecution = class UpdateScaleExecution {
9
+ get transform() {
10
+ return this.fComponentsStore.fCanvas.transform;
11
+ }
12
+ constructor(fComponentsStore) {
13
+ this.fComponentsStore = fComponentsStore;
14
+ }
15
+ handle(request) {
16
+ if (request.scale !== this.transform.scale) {
17
+ const summaryPosition = PointExtensions.sum(this.transform.scaledPosition, this.transform.position);
18
+ const newX = request.toPosition.x - (request.toPosition.x - summaryPosition.x) * request.scale / this.transform.scale;
19
+ const newY = request.toPosition.y - (request.toPosition.y - summaryPosition.y) * request.scale / this.transform.scale;
20
+ this.transform.scale = request.scale;
21
+ this.transform.scaledPosition = PointExtensions.sub(PointExtensions.initialize(newX, newY), this.transform.position);
22
+ }
23
+ }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UpdateScaleExecution, deps: [{ token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Injectable }); }
25
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UpdateScaleExecution }); }
26
+ };
27
+ UpdateScaleExecution = __decorate([
28
+ FExecutionRegister(UpdateScaleRequest)
29
+ ], UpdateScaleExecution);
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UpdateScaleExecution, decorators: [{
31
+ type: Injectable
32
+ }], ctorParameters: function () { return [{ type: i1.FComponentsStore }]; } });
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLXNjYWxlLmV4ZWN1dGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2YtY2FudmFzL3VwZGF0ZS1zY2FsZS91cGRhdGUtc2NhbGUuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xFLE9BQU8sRUFBbUIsZUFBZSxFQUFFLE1BQU0sWUFBWSxDQUFDOzs7QUFNdkQsV0FBTSxvQkFBb0IsR0FBMUIsTUFBTSxvQkFBb0I7SUFFL0IsSUFBWSxTQUFTO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQVEsQ0FBQyxTQUFTLENBQUM7SUFDbEQsQ0FBQztJQUVELFlBQ1UsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFFNUMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUEyQjtRQUN2QyxJQUFJLE9BQU8sQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUU7WUFFMUMsTUFBTSxlQUFlLEdBQUcsZUFBZSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBRXBHLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsZUFBZSxDQUFDLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7WUFDdEgsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsR0FBRyxlQUFlLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztZQUV0SCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQ3JDLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxHQUFHLGVBQWUsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUN0SDtJQUNILENBQUM7K0dBdEJVLG9CQUFvQjttSEFBcEIsb0JBQW9COztBQUFwQixvQkFBb0I7SUFEaEMsa0JBQWtCLENBQUMsa0JBQWtCLENBQUM7R0FDMUIsb0JBQW9CLENBdUJoQzs0RkF2Qlksb0JBQW9CO2tCQUZoQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVXBkYXRlU2NhbGVSZXF1ZXN0IH0gZnJvbSAnLi91cGRhdGUtc2NhbGUtcmVxdWVzdCc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IElUcmFuc2Zvcm1Nb2RlbCwgUG9pbnRFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcblxuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKFVwZGF0ZVNjYWxlUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBVcGRhdGVTY2FsZUV4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248VXBkYXRlU2NhbGVSZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSBnZXQgdHJhbnNmb3JtKCk6IElUcmFuc2Zvcm1Nb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzIS50cmFuc2Zvcm07XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmVcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IFVwZGF0ZVNjYWxlUmVxdWVzdCk6IHZvaWQge1xuICAgIGlmIChyZXF1ZXN0LnNjYWxlICE9PSB0aGlzLnRyYW5zZm9ybS5zY2FsZSkge1xuXG4gICAgICBjb25zdCBzdW1tYXJ5UG9zaXRpb24gPSBQb2ludEV4dGVuc2lvbnMuc3VtKHRoaXMudHJhbnNmb3JtLnNjYWxlZFBvc2l0aW9uLCB0aGlzLnRyYW5zZm9ybS5wb3NpdGlvbik7XG5cbiAgICAgIGNvbnN0IG5ld1ggPSByZXF1ZXN0LnRvUG9zaXRpb24ueCAtIChyZXF1ZXN0LnRvUG9zaXRpb24ueCAtIHN1bW1hcnlQb3NpdGlvbi54KSAqIHJlcXVlc3Quc2NhbGUgLyB0aGlzLnRyYW5zZm9ybS5zY2FsZTtcbiAgICAgIGNvbnN0IG5ld1kgPSByZXF1ZXN0LnRvUG9zaXRpb24ueSAtIChyZXF1ZXN0LnRvUG9zaXRpb24ueSAtIHN1bW1hcnlQb3NpdGlvbi55KSAqIHJlcXVlc3Quc2NhbGUgLyB0aGlzLnRyYW5zZm9ybS5zY2FsZTtcblxuICAgICAgdGhpcy50cmFuc2Zvcm0uc2NhbGUgPSByZXF1ZXN0LnNjYWxlO1xuICAgICAgdGhpcy50cmFuc2Zvcm0uc2NhbGVkUG9zaXRpb24gPSBQb2ludEV4dGVuc2lvbnMuc3ViKFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKG5ld1gsIG5ld1kpLCB0aGlzLnRyYW5zZm9ybS5wb3NpdGlvbik7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -0,0 +1,38 @@
1
+ import { __decorate } from "tslib";
2
+ import { FindClosestInputUsingSnapThresholdRequest } from './find-closest-input-using-snap-threshold.request';
3
+ import { Injectable } from '@angular/core';
4
+ import { FExecutionRegister } from '@foblex/mediator';
5
+ import * as i0 from "@angular/core";
6
+ export let FindClosestInputUsingSnapThresholdExecution = class FindClosestInputUsingSnapThresholdExecution {
7
+ handle(payload) {
8
+ let result;
9
+ let minDistance = Infinity;
10
+ for (const element of payload.canBeConnectedInputs) {
11
+ const distance = this.distanceToRectangle(payload.position, element);
12
+ if (distance < minDistance) {
13
+ minDistance = distance;
14
+ result = element;
15
+ }
16
+ }
17
+ return minDistance < payload.snapThreshold ? result : undefined;
18
+ }
19
+ distanceToRectangle(point, inputWithRect) {
20
+ const closestX = this.clamp(point.x, inputWithRect.fRect.x, inputWithRect.fRect.x + inputWithRect.fRect.width);
21
+ const closestY = this.clamp(point.y, inputWithRect.fRect.y, inputWithRect.fRect.y + inputWithRect.fRect.height);
22
+ const dx = point.x - closestX;
23
+ const dy = point.y - closestY;
24
+ return Math.sqrt(dx * dx + dy * dy);
25
+ }
26
+ clamp(value, min, max) {
27
+ return Math.max(min, Math.min(max, value));
28
+ }
29
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FindClosestInputUsingSnapThresholdExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
30
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FindClosestInputUsingSnapThresholdExecution }); }
31
+ };
32
+ FindClosestInputUsingSnapThresholdExecution = __decorate([
33
+ FExecutionRegister(FindClosestInputUsingSnapThresholdRequest)
34
+ ], FindClosestInputUsingSnapThresholdExecution);
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FindClosestInputUsingSnapThresholdExecution, decorators: [{
36
+ type: Injectable
37
+ }] });
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZC1jbG9zZXN0LWlucHV0LXVzaW5nLXNuYXAtdGhyZXNob2xkLmV4ZWN1dGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2YtY29ubmVjdGlvbi9maW5kLWNsb3Nlc3QtaW5wdXQtdXNpbmctc25hcC10aHJlc2hvbGQvZmluZC1jbG9zZXN0LWlucHV0LXVzaW5nLXNuYXAtdGhyZXNob2xkLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHlDQUF5QyxFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDOUcsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQzs7QUFNM0QsV0FBTSwyQ0FBMkMsR0FBakQsTUFBTSwyQ0FBMkM7SUFJL0MsTUFBTSxDQUFDLE9BQWtEO1FBQzlELElBQUksTUFBc0MsQ0FBQztRQUMzQyxJQUFJLFdBQVcsR0FBRyxRQUFRLENBQUM7UUFFM0IsS0FBSyxNQUFNLE9BQU8sSUFBSSxPQUFPLENBQUMsb0JBQW9CLEVBQUU7WUFDbEQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFFckUsSUFBSSxRQUFRLEdBQUcsV0FBVyxFQUFFO2dCQUMxQixXQUFXLEdBQUcsUUFBUSxDQUFDO2dCQUN2QixNQUFNLEdBQUcsT0FBTyxDQUFDO2FBQ2xCO1NBQ0Y7UUFFRCxPQUFPLFdBQVcsR0FBRyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUNsRSxDQUFDO0lBRU8sbUJBQW1CLENBQUMsS0FBYSxFQUFFLGFBQWlDO1FBQzFFLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9HLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRWhILE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDO1FBQzlCLE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDO1FBRTlCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRU8sS0FBSyxDQUFDLEtBQWEsRUFBRSxHQUFXLEVBQUUsR0FBVztRQUNuRCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDN0MsQ0FBQzsrR0FoQ1UsMkNBQTJDO21IQUEzQywyQ0FBMkM7O0FBQTNDLDJDQUEyQztJQUR2RCxrQkFBa0IsQ0FBQyx5Q0FBeUMsQ0FBQztHQUNqRCwyQ0FBMkMsQ0FpQ3ZEOzRGQWpDWSwyQ0FBMkM7a0JBRnZELFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaW5kQ2xvc2VzdElucHV0VXNpbmdTbmFwVGhyZXNob2xkUmVxdWVzdCB9IGZyb20gJy4vZmluZC1jbG9zZXN0LWlucHV0LXVzaW5nLXNuYXAtdGhyZXNob2xkLnJlcXVlc3QnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IElDb25uZWN0b3JXaXRoUmVjdCB9IGZyb20gJy4uL2dldC1jb25uZWN0b3Itd2l0aC1yZWN0JztcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihGaW5kQ2xvc2VzdElucHV0VXNpbmdTbmFwVGhyZXNob2xkUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBGaW5kQ2xvc2VzdElucHV0VXNpbmdTbmFwVGhyZXNob2xkRXhlY3V0aW9uXG4gIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxGaW5kQ2xvc2VzdElucHV0VXNpbmdTbmFwVGhyZXNob2xkUmVxdWVzdCwgSUNvbm5lY3RvcldpdGhSZWN0IHwgdW5kZWZpbmVkPiB7XG5cblxuICBwdWJsaWMgaGFuZGxlKHBheWxvYWQ6IEZpbmRDbG9zZXN0SW5wdXRVc2luZ1NuYXBUaHJlc2hvbGRSZXF1ZXN0KTogSUNvbm5lY3RvcldpdGhSZWN0IHwgdW5kZWZpbmVkIHtcbiAgICBsZXQgcmVzdWx0OiBJQ29ubmVjdG9yV2l0aFJlY3QgfCB1bmRlZmluZWQ7XG4gICAgbGV0IG1pbkRpc3RhbmNlID0gSW5maW5pdHk7XG5cbiAgICBmb3IgKGNvbnN0IGVsZW1lbnQgb2YgcGF5bG9hZC5jYW5CZUNvbm5lY3RlZElucHV0cykge1xuICAgICAgY29uc3QgZGlzdGFuY2UgPSB0aGlzLmRpc3RhbmNlVG9SZWN0YW5nbGUocGF5bG9hZC5wb3NpdGlvbiwgZWxlbWVudCk7XG5cbiAgICAgIGlmIChkaXN0YW5jZSA8IG1pbkRpc3RhbmNlKSB7XG4gICAgICAgIG1pbkRpc3RhbmNlID0gZGlzdGFuY2U7XG4gICAgICAgIHJlc3VsdCA9IGVsZW1lbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG1pbkRpc3RhbmNlIDwgcGF5bG9hZC5zbmFwVGhyZXNob2xkID8gcmVzdWx0IDogdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJpdmF0ZSBkaXN0YW5jZVRvUmVjdGFuZ2xlKHBvaW50OiBJUG9pbnQsIGlucHV0V2l0aFJlY3Q6IElDb25uZWN0b3JXaXRoUmVjdCk6IG51bWJlciB7XG4gICAgY29uc3QgY2xvc2VzdFggPSB0aGlzLmNsYW1wKHBvaW50LngsIGlucHV0V2l0aFJlY3QuZlJlY3QueCwgaW5wdXRXaXRoUmVjdC5mUmVjdC54ICsgaW5wdXRXaXRoUmVjdC5mUmVjdC53aWR0aCk7XG4gICAgY29uc3QgY2xvc2VzdFkgPSB0aGlzLmNsYW1wKHBvaW50LnksIGlucHV0V2l0aFJlY3QuZlJlY3QueSwgaW5wdXRXaXRoUmVjdC5mUmVjdC55ICsgaW5wdXRXaXRoUmVjdC5mUmVjdC5oZWlnaHQpO1xuXG4gICAgY29uc3QgZHggPSBwb2ludC54IC0gY2xvc2VzdFg7XG4gICAgY29uc3QgZHkgPSBwb2ludC55IC0gY2xvc2VzdFk7XG5cbiAgICByZXR1cm4gTWF0aC5zcXJ0KGR4ICogZHggKyBkeSAqIGR5KTtcbiAgfVxuXG4gIHByaXZhdGUgY2xhbXAodmFsdWU6IG51bWJlciwgbWluOiBudW1iZXIsIG1heDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gTWF0aC5tYXgobWluLCBNYXRoLm1pbihtYXgsIHZhbHVlKSk7XG4gIH1cbn1cbiJdfQ==