@foblex/flow 14.0.0 → 16.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (678) 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/{esm2020 → esm2022}/f-draggable/connections/create-connection/create-connection.drag-handler.mjs +13 -8
  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/esm2022/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.mjs +66 -0
  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/{esm2020 → esm2022}/f-draggable/node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.request.mjs +1 -1
  106. package/esm2022/f-draggable/node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.execution.mjs +48 -0
  107. package/esm2022/f-draggable/node-resize/calculate-changed-position/calculate-changed-position.execution.mjs +24 -0
  108. package/esm2022/f-draggable/node-resize/calculate-changed-size/calculate-changed-size.execution.mjs +33 -0
  109. package/esm2022/f-draggable/node-resize/get-node-resize-restrictions/get-node-resize-restrictions.execution.mjs +36 -0
  110. package/{esm2020 → esm2022}/f-draggable/node-resize/get-node-resize-restrictions/i-node-resize-restrictions.mjs +1 -1
  111. package/esm2022/f-draggable/node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.execution.mjs +37 -0
  112. package/esm2022/f-draggable/node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.request.mjs +7 -0
  113. package/esm2022/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.execution.mjs +25 -0
  114. package/esm2022/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.validator.mjs +24 -0
  115. package/esm2022/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.execution.mjs +52 -0
  116. package/esm2022/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.validator.mjs +40 -0
  117. package/esm2022/f-draggable/node-resize/node-resize.drag-handler.mjs +49 -0
  118. package/esm2022/f-draggable/single-select/single-select.execution.mjs +88 -0
  119. package/esm2022/f-draggable/single-select/single-select.validator.mjs +26 -0
  120. package/esm2022/f-external-item/domain/external-item-finalize/external-item-finalize.execution.mjs +56 -0
  121. package/esm2022/f-external-item/domain/external-item-finalize/external-item-finalize.validator.mjs +24 -0
  122. package/esm2022/f-external-item/domain/external-item-preparation/external-item-preparation.execution.mjs +42 -0
  123. package/esm2022/f-external-item/domain/external-item-preparation/external-item-preparation.validator.mjs +28 -0
  124. package/{esm2020 → esm2022}/f-external-item/f-external-item-base.mjs +4 -4
  125. package/{esm2020 → esm2022}/f-external-item/f-external-item.directive.mjs +9 -9
  126. package/{esm2020 → esm2022}/f-external-item/f-external-item.service.mjs +4 -4
  127. package/esm2022/f-flow/f-flow.component.mjs +118 -0
  128. package/{esm2020 → esm2022}/f-flow.module.mjs +5 -5
  129. package/{esm2020 → esm2022}/f-line-alignment/f-line-alignment-base.mjs +4 -4
  130. package/esm2022/f-line-alignment/f-line-alignment.component.mjs +92 -0
  131. package/esm2022/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.execution.mjs +41 -0
  132. package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.mjs +25 -0
  133. package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.validator.mjs +24 -0
  134. package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.mjs +48 -0
  135. package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.validator.mjs +27 -0
  136. package/esm2022/f-minimap/f-minimap-canvas.directive.mjs +66 -0
  137. package/{esm2020 → esm2022}/f-minimap/f-minimap-flow.directive.mjs +10 -10
  138. package/{esm2020 → esm2022}/f-minimap/f-minimap-view.directive.mjs +8 -8
  139. package/{esm2020 → esm2022}/f-minimap/f-minimap.component.mjs +6 -6
  140. package/{esm2020 → esm2022}/f-node/f-drag-handle/f-drag-handle.directive.mjs +7 -7
  141. package/esm2022/f-node/f-group.directive.mjs +145 -0
  142. package/esm2022/f-node/f-node.directive.mjs +146 -0
  143. package/esm2022/f-node/f-resize-handle/f-resize-handle.directive.mjs +43 -0
  144. package/{esm2020 → esm2022}/f-node/f-rotate-handle/f-rotate-handle.directive.mjs +5 -5
  145. package/esm2022/f-selection-area/domain/selection-area-finalize/selection-area-finalize.execution.mjs +25 -0
  146. package/esm2022/f-selection-area/domain/selection-area-finalize/selection-area-finalize.validator.mjs +24 -0
  147. package/esm2022/f-selection-area/domain/selection-area-preparation/selection-area-preparation.execution.mjs +37 -0
  148. package/esm2022/f-selection-area/domain/selection-area-preparation/selection-area-preparation.validator.mjs +30 -0
  149. package/{esm2020 → esm2022}/f-selection-area/domain/selection-area.drag-handle.mjs +4 -4
  150. package/{esm2020 → esm2022}/f-selection-area/f-selection-area-base.mjs +4 -4
  151. package/{esm2020 → esm2022}/f-selection-area/f-selection-area.component.mjs +9 -9
  152. package/{esm2020 → esm2022}/f-storage/f-components-store.mjs +4 -4
  153. package/{esm2020 → esm2022}/f-storage/f-transform-store.mjs +4 -4
  154. package/esm2022/f-zoom/f-zoom-base.mjs +97 -0
  155. package/esm2022/f-zoom/f-zoom.directive.mjs +59 -0
  156. package/esm2022/mixins/change-selection/change-selection.mjs +28 -0
  157. package/f-backgroud/f-background-base.d.ts +1 -1
  158. package/f-backgroud/f-background.component.d.ts +1 -1
  159. package/f-backgroud/f-circle-pattern/f-circle-pattern.component.d.ts +1 -1
  160. package/f-backgroud/f-rect-pattern/f-rect-pattern.component.d.ts +1 -1
  161. package/f-canvas/f-canvas-base.d.ts +1 -1
  162. package/f-canvas/f-canvas.component.d.ts +1 -1
  163. package/f-connection/common/f-connection-base.d.ts +1 -1
  164. package/f-connection/common/f-connection-text/f-connection-text-path.directive.d.ts +1 -1
  165. package/f-connection/common/f-connection-text/f-connection-text.component.d.ts +1 -1
  166. package/f-connection/common/f-drag-handle/f-connection-drag-handle.component.d.ts +1 -1
  167. package/f-connection/common/f-gradient/f-connection-gradient.component.d.ts +1 -1
  168. package/f-connection/common/f-path/f-connection-path.component.d.ts +1 -1
  169. package/f-connection/common/f-selection/f-connection-selection.component.d.ts +1 -1
  170. package/f-connection/f-connection/f-connection.component.d.ts +1 -1
  171. package/f-connection/f-connection-center/f-connection-center.directive.d.ts +1 -1
  172. package/f-connection/f-connection-for-create/f-connection-for-create.component.d.ts +1 -1
  173. package/f-connection/f-marker/f-marker-base.d.ts +1 -1
  174. package/f-connection/f-marker/f-marker.directive.d.ts +1 -1
  175. package/f-connection/f-snap-connection/f-snap-connection.component.d.ts +1 -1
  176. package/f-connectors/f-node-input/f-node-input-base.d.ts +1 -1
  177. package/f-connectors/f-node-input/f-node-input.directive.d.ts +1 -1
  178. package/f-connectors/f-node-outlet/f-node-outlet-base.d.ts +1 -1
  179. package/f-connectors/f-node-outlet/f-node-outlet.directive.d.ts +1 -1
  180. package/f-connectors/f-node-output/f-node-output-base.d.ts +1 -1
  181. package/f-connectors/f-node-output/f-node-output.directive.d.ts +1 -1
  182. package/f-draggable/connections/providers.d.ts +1 -1
  183. package/f-draggable/f-draggable-base.d.ts +1 -1
  184. package/f-draggable/f-draggable.directive.d.ts +1 -1
  185. package/f-draggable/node/connection-base-drag-handler.d.ts +1 -1
  186. package/f-draggable/node/create-move-nodes-drag-model-from-selection/providers.d.ts +1 -1
  187. package/f-draggable/node/providers.d.ts +1 -1
  188. package/f-draggable/node-resize/get-node-resize-restrictions/get-node-resize-restrictions.execution.d.ts +1 -0
  189. package/f-draggable/node-resize/get-node-resize-restrictions/i-node-resize-restrictions.d.ts +2 -1
  190. package/f-draggable/node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.execution.d.ts +0 -1
  191. package/f-draggable/node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.request.d.ts +2 -3
  192. package/f-draggable/node-resize/providers.d.ts +1 -1
  193. package/f-draggable/providers.d.ts +1 -1
  194. package/f-external-item/f-external-item-base.d.ts +1 -1
  195. package/f-external-item/f-external-item.directive.d.ts +1 -1
  196. package/f-flow/f-flow.component.d.ts +1 -1
  197. package/f-line-alignment/f-line-alignment-base.d.ts +1 -1
  198. package/f-line-alignment/f-line-alignment.component.d.ts +1 -1
  199. package/f-minimap/f-minimap-canvas.directive.d.ts +1 -1
  200. package/f-minimap/f-minimap-flow.directive.d.ts +1 -1
  201. package/f-minimap/f-minimap-view.directive.d.ts +1 -1
  202. package/f-minimap/f-minimap.component.d.ts +1 -1
  203. package/f-node/f-drag-handle/f-drag-handle.directive.d.ts +1 -1
  204. package/f-node/f-group.directive.d.ts +1 -1
  205. package/f-node/f-node.directive.d.ts +1 -1
  206. package/f-node/f-resize-handle/f-resize-handle.directive.d.ts +1 -1
  207. package/f-selection-area/f-selection-area-base.d.ts +1 -1
  208. package/f-selection-area/f-selection-area.component.d.ts +1 -1
  209. package/f-zoom/f-zoom.directive.d.ts +1 -1
  210. package/{fesm2020 → fesm2022}/foblex-flow.mjs +870 -854
  211. package/fesm2022/foblex-flow.mjs.map +1 -0
  212. package/mixins/change-selection/change-selection.d.ts +1 -1
  213. package/mixins/change-visibility/change-visibility.d.ts +1 -1
  214. package/mixins/constructor.d.ts +2 -2
  215. package/package.json +5 -11
  216. package/esm2020/domain/create-connection-markers/create-connection-markers.execution.mjs +0 -61
  217. package/esm2020/domain/create-rounded-rect-from-element/create-rounded-rect-from-element.execution.mjs +0 -39
  218. package/esm2020/domain/emit-transform-changes/emit-transform-changes.execution.mjs +0 -24
  219. package/esm2020/domain/f-background/add-pattern-to-background/add-pattern-to-background.execution.mjs +0 -47
  220. package/esm2020/domain/f-canvas/center-group-or-node/center-group-or-node.execution.mjs +0 -49
  221. package/esm2020/domain/f-canvas/fit-to-flow/fit-to-flow.execution.mjs +0 -56
  222. package/esm2020/domain/f-canvas/input-canvas-position/input-canvas-position.execution.mjs +0 -33
  223. package/esm2020/domain/f-canvas/input-canvas-scale/input-canvas-scale.execution.mjs +0 -28
  224. package/esm2020/domain/f-canvas/reset-scale/reset-scale.execution.mjs +0 -29
  225. package/esm2020/domain/f-canvas/reset-scale-and-center/reset-scale-and-center.execution.mjs +0 -51
  226. package/esm2020/domain/f-canvas/update-scale/update-scale.execution.mjs +0 -34
  227. package/esm2020/domain/f-connection/find-closest-input-using-snap-threshold/find-closest-input-using-snap-threshold.execution.mjs +0 -39
  228. package/esm2020/domain/f-connection/get-all-can-be-connected-input-positions/get-all-can-be-connected-input-positions.execution.mjs +0 -55
  229. package/esm2020/domain/f-connection/get-connector-with-rect/get-connector-with-rect.execution.mjs +0 -28
  230. package/esm2020/domain/f-selection/clear-selection/clear-selection.execution.mjs +0 -26
  231. package/esm2020/domain/f-selection/get-selection/get-selection.execution.mjs +0 -35
  232. package/esm2020/domain/f-selection/select/select.execution.mjs +0 -44
  233. package/esm2020/domain/f-selection/select-all/select-all.execution.mjs +0 -38
  234. package/esm2020/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.execution.mjs +0 -35
  235. package/esm2020/domain/get-can-be-selected-items/get-can-be-selected-items.execution.mjs +0 -57
  236. package/esm2020/domain/get-connection-line/get-connection-line.execution.mjs +0 -67
  237. package/esm2020/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.execution.mjs +0 -35
  238. package/esm2020/domain/get-element-rect-in-flow/get-element-rect-in-flow.execution.mjs +0 -43
  239. package/esm2020/domain/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.mjs +0 -33
  240. package/esm2020/domain/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.mjs +0 -50
  241. package/esm2020/domain/get-flow-state/get-flow-state.execution.mjs +0 -39
  242. package/esm2020/domain/get-nodes-rect/get-nodes-rect.execution.mjs +0 -31
  243. package/esm2020/domain/get-position-in-flow/get-position-in-flow.execution.mjs +0 -32
  244. package/esm2020/domain/get-scaled-node-rects-with-flow-position/get-scaled-node-rects-with-flow-position.execution.mjs +0 -34
  245. package/esm2020/domain/is-connection-under-node/is-connection-under-node.execution.mjs +0 -76
  246. package/esm2020/domain/redraw-connections/redraw-connections.execution.mjs +0 -63
  247. package/esm2020/domain/show-connections-after-calculations/show-connections-after-calculations.execution.mjs +0 -26
  248. package/esm2020/domain/sort-item-layers/sort-item-layers.execution.mjs +0 -30
  249. package/esm2020/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.execution.mjs +0 -57
  250. package/esm2020/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.execution.mjs +0 -59
  251. package/esm2020/domain/subscribe-on-transform-changes/subscribe-on-transform-changes.execution.mjs +0 -26
  252. package/esm2020/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element.execution.mjs +0 -30
  253. package/esm2020/domain/update-item-and-children-layers/update-item-and-children-layers.execution.mjs +0 -94
  254. package/esm2020/f-backgroud/f-circle-pattern/f-circle-pattern.component.mjs +0 -104
  255. package/esm2020/f-backgroud/f-rect-pattern/f-rect-pattern.component.mjs +0 -122
  256. package/esm2020/f-canvas/f-canvas.component.mjs +0 -86
  257. package/esm2020/f-connection/common/f-connection-base.mjs +0 -66
  258. package/esm2020/f-connection/common/f-connection-text/f-connection-text-path.directive.mjs +0 -70
  259. package/esm2020/f-connection/common/f-connection-text/f-connection-text.component.mjs +0 -66
  260. package/esm2020/f-connection/common/f-gradient/f-connection-gradient.component.mjs +0 -63
  261. package/esm2020/f-connection/common/f-path/f-connection-path.component.mjs +0 -59
  262. package/esm2020/f-connection/f-connection/f-connection.component.mjs +0 -171
  263. package/esm2020/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +0 -136
  264. package/esm2020/f-connection/f-marker/f-marker.directive.mjs +0 -58
  265. package/esm2020/f-connection/f-snap-connection/f-snap-connection.component.mjs +0 -136
  266. package/esm2020/f-connectors/f-node-input/f-node-input.directive.mjs +0 -87
  267. package/esm2020/f-connectors/f-node-outlet/f-node-outlet.directive.mjs +0 -71
  268. package/esm2020/f-connectors/f-node-output/f-node-output.directive.mjs +0 -94
  269. package/esm2020/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.execution.mjs +0 -24
  270. package/esm2020/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.validator.mjs +0 -25
  271. package/esm2020/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.execution.mjs +0 -36
  272. package/esm2020/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.validator.mjs +0 -43
  273. package/esm2020/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.execution.mjs +0 -55
  274. package/esm2020/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.validator.mjs +0 -25
  275. package/esm2020/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.execution.mjs +0 -44
  276. package/esm2020/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.execution.mjs +0 -53
  277. package/esm2020/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.execution.mjs +0 -39
  278. package/esm2020/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.validator.mjs +0 -34
  279. package/esm2020/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.execution.mjs +0 -43
  280. package/esm2020/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.validator.mjs +0 -32
  281. 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
  282. 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
  283. package/esm2020/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.execution.mjs +0 -85
  284. package/esm2020/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.validator.mjs +0 -35
  285. package/esm2020/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.execution.mjs +0 -50
  286. package/esm2020/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.validator.mjs +0 -25
  287. package/esm2020/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.execution.mjs +0 -64
  288. package/esm2020/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.validator.mjs +0 -44
  289. package/esm2020/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.mjs +0 -58
  290. package/esm2020/f-draggable/domain/get-node-padding/get-node-padding.execution.mjs +0 -33
  291. package/esm2020/f-draggable/domain/get-normalized-node-rect/get-normalized-node-rect.execution.mjs +0 -29
  292. package/esm2020/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.execution.mjs +0 -48
  293. package/esm2020/f-draggable/domain/get-parent-nodes/get-parent-nodes.execution.mjs +0 -36
  294. package/esm2020/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.execution.mjs +0 -34
  295. package/esm2020/f-draggable/f-draggable.directive.mjs +0 -160
  296. package/esm2020/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.mjs +0 -85
  297. 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
  298. 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
  299. 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
  300. package/esm2020/f-draggable/node/node-move-finalize/node-move-finalize.execution.mjs +0 -51
  301. package/esm2020/f-draggable/node/node-move-finalize/node-move-finalize.validator.mjs +0 -25
  302. package/esm2020/f-draggable/node/node-move-preparation/node-move-preparation.execution.mjs +0 -59
  303. package/esm2020/f-draggable/node/node-move-preparation/node-move-preparation.validator.mjs +0 -41
  304. package/esm2020/f-draggable/node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.execution.mjs +0 -49
  305. package/esm2020/f-draggable/node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.execution.mjs +0 -49
  306. package/esm2020/f-draggable/node-resize/calculate-changed-position/calculate-changed-position.execution.mjs +0 -25
  307. package/esm2020/f-draggable/node-resize/calculate-changed-size/calculate-changed-size.execution.mjs +0 -34
  308. package/esm2020/f-draggable/node-resize/get-node-resize-restrictions/get-node-resize-restrictions.execution.mjs +0 -31
  309. package/esm2020/f-draggable/node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.execution.mjs +0 -41
  310. package/esm2020/f-draggable/node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.request.mjs +0 -7
  311. package/esm2020/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.execution.mjs +0 -26
  312. package/esm2020/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.validator.mjs +0 -25
  313. package/esm2020/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.execution.mjs +0 -53
  314. package/esm2020/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.validator.mjs +0 -41
  315. package/esm2020/f-draggable/node-resize/node-resize.drag-handler.mjs +0 -48
  316. package/esm2020/f-draggable/single-select/single-select.execution.mjs +0 -89
  317. package/esm2020/f-draggable/single-select/single-select.validator.mjs +0 -27
  318. package/esm2020/f-external-item/domain/external-item-finalize/external-item-finalize.execution.mjs +0 -57
  319. package/esm2020/f-external-item/domain/external-item-finalize/external-item-finalize.validator.mjs +0 -25
  320. package/esm2020/f-external-item/domain/external-item-preparation/external-item-preparation.execution.mjs +0 -43
  321. package/esm2020/f-external-item/domain/external-item-preparation/external-item-preparation.validator.mjs +0 -29
  322. package/esm2020/f-flow/f-flow.component.mjs +0 -118
  323. package/esm2020/f-line-alignment/f-line-alignment.component.mjs +0 -92
  324. package/esm2020/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.execution.mjs +0 -42
  325. package/esm2020/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.mjs +0 -26
  326. package/esm2020/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.validator.mjs +0 -25
  327. package/esm2020/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.mjs +0 -49
  328. package/esm2020/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.validator.mjs +0 -28
  329. package/esm2020/f-minimap/f-minimap-canvas.directive.mjs +0 -66
  330. package/esm2020/f-node/f-group.directive.mjs +0 -145
  331. package/esm2020/f-node/f-node.directive.mjs +0 -146
  332. package/esm2020/f-node/f-resize-handle/f-resize-handle.directive.mjs +0 -43
  333. package/esm2020/f-selection-area/domain/selection-area-finalize/selection-area-finalize.execution.mjs +0 -26
  334. package/esm2020/f-selection-area/domain/selection-area-finalize/selection-area-finalize.validator.mjs +0 -25
  335. package/esm2020/f-selection-area/domain/selection-area-preparation/selection-area-preparation.execution.mjs +0 -38
  336. package/esm2020/f-selection-area/domain/selection-area-preparation/selection-area-preparation.validator.mjs +0 -31
  337. package/esm2020/f-zoom/f-zoom-base.mjs +0 -97
  338. package/esm2020/f-zoom/f-zoom.directive.mjs +0 -59
  339. package/esm2020/mixins/change-selection/change-selection.mjs +0 -28
  340. package/fesm2015/foblex-flow.mjs +0 -7927
  341. package/fesm2015/foblex-flow.mjs.map +0 -1
  342. package/fesm2020/foblex-flow.mjs.map +0 -1
  343. /package/{esm2020 → esm2022}/domain/constants.mjs +0 -0
  344. /package/{esm2020 → esm2022}/domain/create-connection-markers/create-connection-markers-request.mjs +0 -0
  345. /package/{esm2020 → esm2022}/domain/create-connection-markers/index.mjs +0 -0
  346. /package/{esm2020 → esm2022}/domain/create-dom-element.mjs +0 -0
  347. /package/{esm2020 → esm2022}/domain/create-rounded-rect-from-element/create-rounded-rect-from-element-request.mjs +0 -0
  348. /package/{esm2020 → esm2022}/domain/create-rounded-rect-from-element/index.mjs +0 -0
  349. /package/{esm2020 → esm2022}/domain/emit-transform-changes/emit-transform-changes.request.mjs +0 -0
  350. /package/{esm2020 → esm2022}/domain/emit-transform-changes/index.mjs +0 -0
  351. /package/{esm2020 → esm2022}/domain/f-background/add-pattern-to-background/add-pattern-to-background.request.mjs +0 -0
  352. /package/{esm2020 → esm2022}/domain/f-background/add-pattern-to-background/index.mjs +0 -0
  353. /package/{esm2020 → esm2022}/domain/f-background/index.mjs +0 -0
  354. /package/{esm2020 → esm2022}/domain/f-background/providers.mjs +0 -0
  355. /package/{esm2020 → esm2022}/domain/f-canvas/center-group-or-node/center-group-or-node-request.mjs +0 -0
  356. /package/{esm2020 → esm2022}/domain/f-canvas/center-group-or-node/index.mjs +0 -0
  357. /package/{esm2020 → esm2022}/domain/f-canvas/fit-to-flow/fit-to-flow-request.mjs +0 -0
  358. /package/{esm2020 → esm2022}/domain/f-canvas/fit-to-flow/index.mjs +0 -0
  359. /package/{esm2020 → esm2022}/domain/f-canvas/index.mjs +0 -0
  360. /package/{esm2020 → esm2022}/domain/f-canvas/input-canvas-position/index.mjs +0 -0
  361. /package/{esm2020 → esm2022}/domain/f-canvas/input-canvas-position/input-canvas-position-request.mjs +0 -0
  362. /package/{esm2020 → esm2022}/domain/f-canvas/input-canvas-scale/index.mjs +0 -0
  363. /package/{esm2020 → esm2022}/domain/f-canvas/input-canvas-scale/input-canvas-scale-request.mjs +0 -0
  364. /package/{esm2020 → esm2022}/domain/f-canvas/providers.mjs +0 -0
  365. /package/{esm2020 → esm2022}/domain/f-canvas/reset-scale/index.mjs +0 -0
  366. /package/{esm2020 → esm2022}/domain/f-canvas/reset-scale/reset-scale-request.mjs +0 -0
  367. /package/{esm2020 → esm2022}/domain/f-canvas/reset-scale-and-center/index.mjs +0 -0
  368. /package/{esm2020 → esm2022}/domain/f-canvas/reset-scale-and-center/reset-scale-and-center-request.mjs +0 -0
  369. /package/{esm2020 → esm2022}/domain/f-canvas/update-scale/index.mjs +0 -0
  370. /package/{esm2020 → esm2022}/domain/f-canvas/update-scale/update-scale-request.mjs +0 -0
  371. /package/{esm2020 → esm2022}/domain/f-connection/find-closest-input-using-snap-threshold/find-closest-input-using-snap-threshold.request.mjs +0 -0
  372. /package/{esm2020 → esm2022}/domain/f-connection/find-closest-input-using-snap-threshold/index.mjs +0 -0
  373. /package/{esm2020 → esm2022}/domain/f-connection/get-all-can-be-connected-input-positions/get-all-can-be-connected-input-positions.request.mjs +0 -0
  374. /package/{esm2020 → esm2022}/domain/f-connection/get-all-can-be-connected-input-positions/index.mjs +0 -0
  375. /package/{esm2020 → esm2022}/domain/f-connection/get-connector-with-rect/get-connector-with-rect-request.mjs +0 -0
  376. /package/{esm2020 → esm2022}/domain/f-connection/get-connector-with-rect/i-connector-with-rect.mjs +0 -0
  377. /package/{esm2020 → esm2022}/domain/f-connection/get-connector-with-rect/index.mjs +0 -0
  378. /package/{esm2020 → esm2022}/domain/f-connection/index.mjs +0 -0
  379. /package/{esm2020 → esm2022}/domain/f-connection/providers.mjs +0 -0
  380. /package/{esm2020 → esm2022}/domain/f-selection/clear-selection/clear-selection.request.mjs +0 -0
  381. /package/{esm2020 → esm2022}/domain/f-selection/clear-selection/index.mjs +0 -0
  382. /package/{esm2020 → esm2022}/domain/f-selection/get-selection/get-selection.request.mjs +0 -0
  383. /package/{esm2020 → esm2022}/domain/f-selection/get-selection/index.mjs +0 -0
  384. /package/{esm2020 → esm2022}/domain/f-selection/index.mjs +0 -0
  385. /package/{esm2020 → esm2022}/domain/f-selection/providers.mjs +0 -0
  386. /package/{esm2020 → esm2022}/domain/f-selection/select/index.mjs +0 -0
  387. /package/{esm2020 → esm2022}/domain/f-selection/select/select.request.mjs +0 -0
  388. /package/{esm2020 → esm2022}/domain/f-selection/select-all/index.mjs +0 -0
  389. /package/{esm2020 → esm2022}/domain/f-selection/select-all/select-all.request.mjs +0 -0
  390. /package/{esm2020 → esm2022}/domain/f-selection/select-and-update-node-layer/index.mjs +0 -0
  391. /package/{esm2020 → esm2022}/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.request.mjs +0 -0
  392. /package/{esm2020 → esm2022}/domain/get-can-be-selected-items/get-can-be-selected-items-request.mjs +0 -0
  393. /package/{esm2020 → esm2022}/domain/get-can-be-selected-items/i-selectable-with-rect.mjs +0 -0
  394. /package/{esm2020 → esm2022}/domain/get-can-be-selected-items/index.mjs +0 -0
  395. /package/{esm2020 → esm2022}/domain/get-connection-line/get-connection-line.request.mjs +0 -0
  396. /package/{esm2020 → esm2022}/domain/get-connection-line/index.mjs +0 -0
  397. /package/{esm2020 → esm2022}/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.request.mjs +0 -0
  398. /package/{esm2020 → esm2022}/domain/get-deep-children-nodes-and-groups/index.mjs +0 -0
  399. /package/{esm2020 → esm2022}/domain/get-element-rect-in-flow/get-element-rect-in-flow-request.mjs +0 -0
  400. /package/{esm2020 → esm2022}/domain/get-element-rect-in-flow/index.mjs +0 -0
  401. /package/{esm2020 → esm2022}/domain/get-flow-state/get-flow-state-connections/get-flow-state-connections-request.mjs +0 -0
  402. /package/{esm2020 → esm2022}/domain/get-flow-state/get-flow-state-connections/index.mjs +0 -0
  403. /package/{esm2020 → esm2022}/domain/get-flow-state/get-flow-state-nodes/get-flow-state-nodes-request.mjs +0 -0
  404. /package/{esm2020 → esm2022}/domain/get-flow-state/get-flow-state-nodes/index.mjs +0 -0
  405. /package/{esm2020 → esm2022}/domain/get-flow-state/get-flow-state.request.mjs +0 -0
  406. /package/{esm2020 → esm2022}/domain/get-flow-state/i-f-flow-state-connection.mjs +0 -0
  407. /package/{esm2020 → esm2022}/domain/get-flow-state/i-f-flow-state-connector.mjs +0 -0
  408. /package/{esm2020 → esm2022}/domain/get-flow-state/i-f-flow-state-node.mjs +0 -0
  409. /package/{esm2020 → esm2022}/domain/get-flow-state/i-f-flow-state.mjs +0 -0
  410. /package/{esm2020 → esm2022}/domain/get-flow-state/index.mjs +0 -0
  411. /package/{esm2020 → esm2022}/domain/get-flow-state/providers.mjs +0 -0
  412. /package/{esm2020 → esm2022}/domain/get-nodes-rect/get-nodes-rect.request.mjs +0 -0
  413. /package/{esm2020 → esm2022}/domain/get-nodes-rect/index.mjs +0 -0
  414. /package/{esm2020 → esm2022}/domain/get-position-in-flow/get-position-in-flow-request.mjs +0 -0
  415. /package/{esm2020 → esm2022}/domain/get-position-in-flow/index.mjs +0 -0
  416. /package/{esm2020 → esm2022}/domain/get-scaled-node-rects-with-flow-position/get-scaled-node-rects-with-flow-position.request.mjs +0 -0
  417. /package/{esm2020 → esm2022}/domain/get-scaled-node-rects-with-flow-position/index.mjs +0 -0
  418. /package/{esm2020 → esm2022}/domain/i-map.mjs +0 -0
  419. /package/{esm2020 → esm2022}/domain/index.mjs +0 -0
  420. /package/{esm2020 → esm2022}/domain/is-connection-under-node/index.mjs +0 -0
  421. /package/{esm2020 → esm2022}/domain/is-connection-under-node/is-connection-under-node.request.mjs +0 -0
  422. /package/{esm2020 → esm2022}/domain/providers.mjs +0 -0
  423. /package/{esm2020 → esm2022}/domain/redraw-connections/index.mjs +0 -0
  424. /package/{esm2020 → esm2022}/domain/redraw-connections/redraw-connections-request.mjs +0 -0
  425. /package/{esm2020 → esm2022}/domain/show-connections-after-calculations/index.mjs +0 -0
  426. /package/{esm2020 → esm2022}/domain/show-connections-after-calculations/show-connections-after-calculations-request.mjs +0 -0
  427. /package/{esm2020 → esm2022}/domain/sort-item-layers/index.mjs +0 -0
  428. /package/{esm2020 → esm2022}/domain/sort-item-layers/sort-item-layers.request.mjs +0 -0
  429. /package/{esm2020 → esm2022}/domain/sort-item-layers/sort-items-by-parent/index.mjs +0 -0
  430. /package/{esm2020 → esm2022}/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.request.mjs +0 -0
  431. /package/{esm2020 → esm2022}/domain/sort-item-layers/sort-node-layers-by-groups/index.mjs +0 -0
  432. /package/{esm2020 → esm2022}/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.request.mjs +0 -0
  433. /package/{esm2020 → esm2022}/domain/subscribe-on-transform-changes/index.mjs +0 -0
  434. /package/{esm2020 → esm2022}/domain/subscribe-on-transform-changes/subscribe-on-transform-changes.request.mjs +0 -0
  435. /package/{esm2020 → esm2022}/domain/update-item-and-children-layers/index.mjs +0 -0
  436. /package/{esm2020 → esm2022}/domain/update-item-and-children-layers/move-front-elements-before-target-element/index.mjs +0 -0
  437. /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
  438. /package/{esm2020 → esm2022}/domain/update-item-and-children-layers/update-item-and-children-layers.request.mjs +0 -0
  439. /package/{esm2020 → esm2022}/errors/conflict-error.mjs +0 -0
  440. /package/{esm2020 → esm2022}/errors/create-error-class.mjs +0 -0
  441. /package/{esm2020 → esm2022}/errors/errors.mjs +0 -0
  442. /package/{esm2020 → esm2022}/errors/index.mjs +0 -0
  443. /package/{esm2020 → esm2022}/errors/not-found-error.mjs +0 -0
  444. /package/{esm2020 → esm2022}/f-backgroud/domain/i-f-background-pattern.mjs +0 -0
  445. /package/{esm2020 → esm2022}/f-backgroud/domain/index.mjs +0 -0
  446. /package/{esm2020 → esm2022}/f-backgroud/f-circle-pattern/index.mjs +0 -0
  447. /package/{esm2020 → esm2022}/f-backgroud/f-rect-pattern/index.mjs +0 -0
  448. /package/{esm2020 → esm2022}/f-backgroud/index.mjs +0 -0
  449. /package/{esm2020 → esm2022}/f-backgroud/providers.mjs +0 -0
  450. /package/{esm2020 → esm2022}/f-canvas/domain/f-canvas-change.event.mjs +0 -0
  451. /package/{esm2020 → esm2022}/f-canvas/domain/index.mjs +0 -0
  452. /package/{esm2020 → esm2022}/f-canvas/index.mjs +0 -0
  453. /package/{esm2020 → esm2022}/f-canvas/providers.mjs +0 -0
  454. /package/{esm2020 → esm2022}/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points-request.mjs +0 -0
  455. /package/{esm2020 → esm2022}/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points.handler.mjs +0 -0
  456. /package/{esm2020 → esm2022}/f-connection/common/domain/calculate-center-between-points/index.mjs +0 -0
  457. /package/{esm2020 → esm2022}/f-connection/common/domain/calculate-connection-center/calculate-connection-center-request.mjs +0 -0
  458. /package/{esm2020 → esm2022}/f-connection/common/domain/calculate-connection-center/calculate-connection-center.handler.mjs +0 -0
  459. /package/{esm2020 → esm2022}/f-connection/common/domain/calculate-connection-center/index.mjs +0 -0
  460. /package/{esm2020 → esm2022}/f-connection/common/domain/f-bezier.path-builder.mjs +0 -0
  461. /package/{esm2020 → esm2022}/f-connection/common/domain/f-segment.path-builder.mjs +0 -0
  462. /package/{esm2020 → esm2022}/f-connection/common/domain/f-straight.path-builder.mjs +0 -0
  463. /package/{esm2020 → esm2022}/f-connection/common/domain/index.mjs +0 -0
  464. /package/{esm2020 → esm2022}/f-connection/common/e-f-connection-behavior.mjs +0 -0
  465. /package/{esm2020 → esm2022}/f-connection/common/e-f-connection-type.mjs +0 -0
  466. /package/{esm2020 → esm2022}/f-connection/common/f-connection-identifiers.mjs +0 -0
  467. /package/{esm2020 → esm2022}/f-connection/common/f-connection-text/i-connection-text.mjs +0 -0
  468. /package/{esm2020 → esm2022}/f-connection/common/f-connection-text/index.mjs +0 -0
  469. /package/{esm2020 → esm2022}/f-connection/common/f-connection.injection-token.mjs +0 -0
  470. /package/{esm2020 → esm2022}/f-connection/common/f-drag-handle/index.mjs +0 -0
  471. /package/{esm2020 → esm2022}/f-connection/common/f-gradient/i-connection-gradient.mjs +0 -0
  472. /package/{esm2020 → esm2022}/f-connection/common/f-gradient/index.mjs +0 -0
  473. /package/{esm2020 → esm2022}/f-connection/common/f-path/get-path-marker-id.mjs +0 -0
  474. /package/{esm2020 → esm2022}/f-connection/common/f-path/i-connection-path.mjs +0 -0
  475. /package/{esm2020 → esm2022}/f-connection/common/f-path/index.mjs +0 -0
  476. /package/{esm2020 → esm2022}/f-connection/common/f-selection/index.mjs +0 -0
  477. /package/{esm2020 → esm2022}/f-connection/common/i-has-connection-color.mjs +0 -0
  478. /package/{esm2020 → esm2022}/f-connection/common/i-has-connection-from-to.mjs +0 -0
  479. /package/{esm2020 → esm2022}/f-connection/common/i-has-connection-text.mjs +0 -0
  480. /package/{esm2020 → esm2022}/f-connection/common/index.mjs +0 -0
  481. /package/{esm2020 → esm2022}/f-connection/f-connection/index.mjs +0 -0
  482. /package/{esm2020 → esm2022}/f-connection/f-connection-builder/f-connection-builders.mjs +0 -0
  483. /package/{esm2020 → esm2022}/f-connection/f-connection-builder/i-f-connection-builder-request.mjs +0 -0
  484. /package/{esm2020 → esm2022}/f-connection/f-connection-builder/i-f-connection-builder-response.mjs +0 -0
  485. /package/{esm2020 → esm2022}/f-connection/f-connection-builder/i-f-connection-builder.mjs +0 -0
  486. /package/{esm2020 → esm2022}/f-connection/f-connection-builder/i-f-connection-factory-request.mjs +0 -0
  487. /package/{esm2020 → esm2022}/f-connection/f-connection-builder/index.mjs +0 -0
  488. /package/{esm2020 → esm2022}/f-connection/f-connection-center/index.mjs +0 -0
  489. /package/{esm2020 → esm2022}/f-connection/f-connection-for-create/index.mjs +0 -0
  490. /package/{esm2020 → esm2022}/f-connection/f-marker/e-f-marker-type.mjs +0 -0
  491. /package/{esm2020 → esm2022}/f-connection/f-marker/index.mjs +0 -0
  492. /package/{esm2020 → esm2022}/f-connection/f-snap-connection/index.mjs +0 -0
  493. /package/{esm2020 → esm2022}/f-connection/index.mjs +0 -0
  494. /package/{esm2020 → esm2022}/f-connection/providers.mjs +0 -0
  495. /package/{esm2020 → esm2022}/f-connectors/domain/calculate-connector-connectable-side/calculate-connector-connectable-side-request.mjs +0 -0
  496. /package/{esm2020 → esm2022}/f-connectors/domain/calculate-connector-connectable-side/calculate-connector-connectable-side.handler.mjs +0 -0
  497. /package/{esm2020 → esm2022}/f-connectors/domain/calculate-connector-connectable-side/index.mjs +0 -0
  498. /package/{esm2020 → esm2022}/f-connectors/domain/index.mjs +0 -0
  499. /package/{esm2020 → esm2022}/f-connectors/e-f-connectable-side.mjs +0 -0
  500. /package/{esm2020 → esm2022}/f-connectors/f-connector-base.mjs +0 -0
  501. /package/{esm2020 → esm2022}/f-connectors/f-node-input/index.mjs +0 -0
  502. /package/{esm2020 → esm2022}/f-connectors/f-node-outlet/index.mjs +0 -0
  503. /package/{esm2020 → esm2022}/f-connectors/f-node-outlet/is-node-outlet.mjs +0 -0
  504. /package/{esm2020 → esm2022}/f-connectors/f-node-output/index.mjs +0 -0
  505. /package/{esm2020 → esm2022}/f-connectors/f-node-output/is-node-output.mjs +0 -0
  506. /package/{esm2020 → esm2022}/f-connectors/index.mjs +0 -0
  507. /package/{esm2020 → esm2022}/f-connectors/providers.mjs +0 -0
  508. /package/{esm2020 → esm2022}/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.request.mjs +0 -0
  509. /package/{esm2020 → esm2022}/f-draggable/canvas/canvas-move-finalize/index.mjs +0 -0
  510. /package/{esm2020 → esm2022}/f-draggable/canvas/canvas-move-finalize/providers.mjs +0 -0
  511. /package/{esm2020 → esm2022}/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.request.mjs +0 -0
  512. /package/{esm2020 → esm2022}/f-draggable/canvas/canvas-move-preparation/index.mjs +0 -0
  513. /package/{esm2020 → esm2022}/f-draggable/canvas/canvas-move-preparation/providers.mjs +0 -0
  514. /package/{esm2020 → esm2022}/f-draggable/canvas/canvas.drag-handler.mjs +0 -0
  515. /package/{esm2020 → esm2022}/f-draggable/canvas/index.mjs +0 -0
  516. /package/{esm2020 → esm2022}/f-draggable/canvas/providers.mjs +0 -0
  517. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.request.mjs +0 -0
  518. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/create-connection-finalize/index.mjs +0 -0
  519. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.request.mjs +0 -0
  520. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/index.mjs +0 -0
  521. /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
  522. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/index.mjs +0 -0
  523. /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
  524. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/index.mjs +0 -0
  525. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.request.mjs +0 -0
  526. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/create-connection-preparation/index.mjs +0 -0
  527. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/f-create-connection.event.mjs +0 -0
  528. /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
  529. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/index.mjs +0 -0
  530. /package/{esm2020 → esm2022}/f-draggable/connections/create-connection/index.mjs +0 -0
  531. /package/{esm2020 → esm2022}/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.request.mjs +0 -0
  532. /package/{esm2020 → esm2022}/f-draggable/connections/get-input-under-pointer/index.mjs +0 -0
  533. /package/{esm2020 → esm2022}/f-draggable/connections/index.mjs +0 -0
  534. /package/{esm2020 → esm2022}/f-draggable/connections/providers.mjs +0 -0
  535. /package/{esm2020 → esm2022}/f-draggable/connections/reassign-connection/f-reassign-connection.event.mjs +0 -0
  536. /package/{esm2020 → esm2022}/f-draggable/connections/reassign-connection/index.mjs +0 -0
  537. /package/{esm2020 → esm2022}/f-draggable/connections/reassign-connection/reassign-connection-finalize/index.mjs +0 -0
  538. /package/{esm2020 → esm2022}/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.request.mjs +0 -0
  539. /package/{esm2020 → esm2022}/f-draggable/connections/reassign-connection/reassign-connection-preparation/index.mjs +0 -0
  540. /package/{esm2020 → esm2022}/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.request.mjs +0 -0
  541. /package/{esm2020 → esm2022}/f-draggable/domain/get-node-padding/get-node-padding.request.mjs +0 -0
  542. /package/{esm2020 → esm2022}/f-draggable/domain/get-node-padding/index.mjs +0 -0
  543. /package/{esm2020 → esm2022}/f-draggable/domain/get-normalized-node-rect/get-normalized-node-rect.request.mjs +0 -0
  544. /package/{esm2020 → esm2022}/f-draggable/domain/get-normalized-node-rect/index.mjs +0 -0
  545. /package/{esm2020 → esm2022}/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.request.mjs +0 -0
  546. /package/{esm2020 → esm2022}/f-draggable/domain/get-normalized-parent-node-rect/index.mjs +0 -0
  547. /package/{esm2020 → esm2022}/f-draggable/domain/get-parent-nodes/get-parent-nodes.request.mjs +0 -0
  548. /package/{esm2020 → esm2022}/f-draggable/domain/get-parent-nodes/index.mjs +0 -0
  549. /package/{esm2020 → esm2022}/f-draggable/domain/index.mjs +0 -0
  550. /package/{esm2020 → esm2022}/f-draggable/domain/is-array-has-parent-node/index.mjs +0 -0
  551. /package/{esm2020 → esm2022}/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.request.mjs +0 -0
  552. /package/{esm2020 → esm2022}/f-draggable/domain/providers.mjs +0 -0
  553. /package/{esm2020 → esm2022}/f-draggable/f-selection-change-event.mjs +0 -0
  554. /package/{esm2020 → esm2022}/f-draggable/i-draggable-item.mjs +0 -0
  555. /package/{esm2020 → esm2022}/f-draggable/i-f-drag-and-drop-plugin.mjs +0 -0
  556. /package/{esm2020 → esm2022}/f-draggable/index.mjs +0 -0
  557. /package/{esm2020 → esm2022}/f-draggable/node/connection-source.drag-handler.mjs +0 -0
  558. /package/{esm2020 → esm2022}/f-draggable/node/connection-target.drag-handler.mjs +0 -0
  559. /package/{esm2020 → esm2022}/f-draggable/node/connection.drag-handler.mjs +0 -0
  560. /package/{esm2020 → esm2022}/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.request.mjs +0 -0
  561. /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
  562. /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
  563. /package/{esm2020 → esm2022}/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/index.mjs +0 -0
  564. /package/{esm2020 → esm2022}/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/index.mjs +0 -0
  565. /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
  566. /package/{esm2020 → esm2022}/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/index.mjs +0 -0
  567. /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
  568. /package/{esm2020 → esm2022}/f-draggable/node/create-move-nodes-drag-model-from-selection/i-node-with-distance-restrictions.mjs +0 -0
  569. /package/{esm2020 → esm2022}/f-draggable/node/create-move-nodes-drag-model-from-selection/index.mjs +0 -0
  570. /package/{esm2020 → esm2022}/f-draggable/node/create-move-nodes-drag-model-from-selection/providers.mjs +0 -0
  571. /package/{esm2020 → esm2022}/f-draggable/node/index.mjs +0 -0
  572. /package/{esm2020 → esm2022}/f-draggable/node/node-move-finalize/index.mjs +0 -0
  573. /package/{esm2020 → esm2022}/f-draggable/node/node-move-finalize/node-move-finalize.request.mjs +0 -0
  574. /package/{esm2020 → esm2022}/f-draggable/node/node-move-finalize/providers.mjs +0 -0
  575. /package/{esm2020 → esm2022}/f-draggable/node/node-move-preparation/index.mjs +0 -0
  576. /package/{esm2020 → esm2022}/f-draggable/node/node-move-preparation/node-move-preparation.request.mjs +0 -0
  577. /package/{esm2020 → esm2022}/f-draggable/node/node-move-preparation/providers.mjs +0 -0
  578. /package/{esm2020 → esm2022}/f-draggable/node/node-resize-by-child.drag-handler.mjs +0 -0
  579. /package/{esm2020 → esm2022}/f-draggable/node/node.drag-handler.mjs +0 -0
  580. /package/{esm2020 → esm2022}/f-draggable/node/providers.mjs +0 -0
  581. /package/{esm2020 → esm2022}/f-draggable/node-resize/apply-child-resize-restrictions/index.mjs +0 -0
  582. /package/{esm2020 → esm2022}/f-draggable/node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.request.mjs +0 -0
  583. /package/{esm2020 → esm2022}/f-draggable/node-resize/apply-parent-resize-restrictions/index.mjs +0 -0
  584. /package/{esm2020 → esm2022}/f-draggable/node-resize/calculate-changed-position/calculate-changed-position.request.mjs +0 -0
  585. /package/{esm2020 → esm2022}/f-draggable/node-resize/calculate-changed-position/index.mjs +0 -0
  586. /package/{esm2020 → esm2022}/f-draggable/node-resize/calculate-changed-size/calculate-changed-size.request.mjs +0 -0
  587. /package/{esm2020 → esm2022}/f-draggable/node-resize/calculate-changed-size/index.mjs +0 -0
  588. /package/{esm2020 → esm2022}/f-draggable/node-resize/get-node-resize-restrictions/get-node-resize-restrictions.request.mjs +0 -0
  589. /package/{esm2020 → esm2022}/f-draggable/node-resize/get-node-resize-restrictions/index.mjs +0 -0
  590. /package/{esm2020 → esm2022}/f-draggable/node-resize/get-normalized-children-nodes-rect/index.mjs +0 -0
  591. /package/{esm2020 → esm2022}/f-draggable/node-resize/index.mjs +0 -0
  592. /package/{esm2020 → esm2022}/f-draggable/node-resize/node-resize-finalize/index.mjs +0 -0
  593. /package/{esm2020 → esm2022}/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.request.mjs +0 -0
  594. /package/{esm2020 → esm2022}/f-draggable/node-resize/node-resize-finalize/providers.mjs +0 -0
  595. /package/{esm2020 → esm2022}/f-draggable/node-resize/node-resize-preparation/index.mjs +0 -0
  596. /package/{esm2020 → esm2022}/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.request.mjs +0 -0
  597. /package/{esm2020 → esm2022}/f-draggable/node-resize/node-resize-preparation/providers.mjs +0 -0
  598. /package/{esm2020 → esm2022}/f-draggable/node-resize/providers.mjs +0 -0
  599. /package/{esm2020 → esm2022}/f-draggable/node-resize/resize-direction.mjs +0 -0
  600. /package/{esm2020 → esm2022}/f-draggable/providers.mjs +0 -0
  601. /package/{esm2020 → esm2022}/f-draggable/single-select/index.mjs +0 -0
  602. /package/{esm2020 → esm2022}/f-draggable/single-select/providers.mjs +0 -0
  603. /package/{esm2020 → esm2022}/f-draggable/single-select/single-select.request.mjs +0 -0
  604. /package/{esm2020 → esm2022}/f-external-item/domain/external-item-finalize/external-item-finalize.request.mjs +0 -0
  605. /package/{esm2020 → esm2022}/f-external-item/domain/external-item-finalize/index.mjs +0 -0
  606. /package/{esm2020 → esm2022}/f-external-item/domain/external-item-finalize/providers.mjs +0 -0
  607. /package/{esm2020 → esm2022}/f-external-item/domain/external-item-preparation/external-item-preparation.request.mjs +0 -0
  608. /package/{esm2020 → esm2022}/f-external-item/domain/external-item-preparation/index.mjs +0 -0
  609. /package/{esm2020 → esm2022}/f-external-item/domain/external-item-preparation/providers.mjs +0 -0
  610. /package/{esm2020 → esm2022}/f-external-item/domain/external-item.drag-handler.mjs +0 -0
  611. /package/{esm2020 → esm2022}/f-external-item/domain/f-create-node.event.mjs +0 -0
  612. /package/{esm2020 → esm2022}/f-external-item/domain/index.mjs +0 -0
  613. /package/{esm2020 → esm2022}/f-external-item/domain/providers.mjs +0 -0
  614. /package/{esm2020 → esm2022}/f-external-item/index.mjs +0 -0
  615. /package/{esm2020 → esm2022}/f-external-item/is-external-item.mjs +0 -0
  616. /package/{esm2020 → esm2022}/f-external-item/providers.mjs +0 -0
  617. /package/{esm2020 → esm2022}/f-flow/f-flow-base.mjs +0 -0
  618. /package/{esm2020 → esm2022}/f-flow/index.mjs +0 -0
  619. /package/{esm2020 → esm2022}/f-flow/providers.mjs +0 -0
  620. /package/{esm2020 → esm2022}/f-line-alignment/domain/i-line-alignment-rect.mjs +0 -0
  621. /package/{esm2020 → esm2022}/f-line-alignment/domain/i-line-alignment-result.mjs +0 -0
  622. /package/{esm2020 → esm2022}/f-line-alignment/domain/i-nearest-coordinate-result.mjs +0 -0
  623. /package/{esm2020 → esm2022}/f-line-alignment/domain/index.mjs +0 -0
  624. /package/{esm2020 → esm2022}/f-line-alignment/domain/line-element.mjs +0 -0
  625. /package/{esm2020 → esm2022}/f-line-alignment/domain/line-service.mjs +0 -0
  626. /package/{esm2020 → esm2022}/f-line-alignment/domain/nearest-coordinate.mjs +0 -0
  627. /package/{esm2020 → esm2022}/f-line-alignment/index.mjs +0 -0
  628. /package/{esm2020 → esm2022}/f-line-alignment/providers.mjs +0 -0
  629. /package/{esm2020 → esm2022}/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.request.mjs +0 -0
  630. /package/{esm2020 → esm2022}/f-minimap/domain/calculate-flow-point-from-minimap-point/index.mjs +0 -0
  631. /package/{esm2020 → esm2022}/f-minimap/domain/check-rect-is-finite.mjs +0 -0
  632. /package/{esm2020 → esm2022}/f-minimap/domain/f-minimap-data.mjs +0 -0
  633. /package/{esm2020 → esm2022}/f-minimap/domain/f-minimap.drag-handler.mjs +0 -0
  634. /package/{esm2020 → esm2022}/f-minimap/domain/index.mjs +0 -0
  635. /package/{esm2020 → esm2022}/f-minimap/domain/minimap-drag-finalize/index.mjs +0 -0
  636. /package/{esm2020 → esm2022}/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.request.mjs +0 -0
  637. /package/{esm2020 → esm2022}/f-minimap/domain/minimap-drag-finalize/providers.mjs +0 -0
  638. /package/{esm2020 → esm2022}/f-minimap/domain/minimap-drag-preparation/index.mjs +0 -0
  639. /package/{esm2020 → esm2022}/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.request.mjs +0 -0
  640. /package/{esm2020 → esm2022}/f-minimap/domain/minimap-drag-preparation/providers.mjs +0 -0
  641. /package/{esm2020 → esm2022}/f-minimap/domain/providers.mjs +0 -0
  642. /package/{esm2020 → esm2022}/f-minimap/index.mjs +0 -0
  643. /package/{esm2020 → esm2022}/f-minimap/providers.mjs +0 -0
  644. /package/{esm2020 → esm2022}/f-node/domain/index.mjs +0 -0
  645. /package/{esm2020 → esm2022}/f-node/domain/is-group.mjs +0 -0
  646. /package/{esm2020 → esm2022}/f-node/domain/is-node.mjs +0 -0
  647. /package/{esm2020 → esm2022}/f-node/f-drag-handle/index.mjs +0 -0
  648. /package/{esm2020 → esm2022}/f-node/f-node-base.mjs +0 -0
  649. /package/{esm2020 → esm2022}/f-node/f-resize-handle/e-f-resize-handle-type.mjs +0 -0
  650. /package/{esm2020 → esm2022}/f-node/f-resize-handle/index.mjs +0 -0
  651. /package/{esm2020 → esm2022}/f-node/f-resize-observer.mjs +0 -0
  652. /package/{esm2020 → esm2022}/f-node/f-rotate-handle/index.mjs +0 -0
  653. /package/{esm2020 → esm2022}/f-node/index.mjs +0 -0
  654. /package/{esm2020 → esm2022}/f-node/providers.mjs +0 -0
  655. /package/{esm2020 → esm2022}/f-selection-area/domain/index.mjs +0 -0
  656. /package/{esm2020 → esm2022}/f-selection-area/domain/providers.mjs +0 -0
  657. /package/{esm2020 → esm2022}/f-selection-area/domain/selection-area-finalize/index.mjs +0 -0
  658. /package/{esm2020 → esm2022}/f-selection-area/domain/selection-area-finalize/providers.mjs +0 -0
  659. /package/{esm2020 → esm2022}/f-selection-area/domain/selection-area-finalize/selection-area-finalize.request.mjs +0 -0
  660. /package/{esm2020 → esm2022}/f-selection-area/domain/selection-area-preparation/index.mjs +0 -0
  661. /package/{esm2020 → esm2022}/f-selection-area/domain/selection-area-preparation/providers.mjs +0 -0
  662. /package/{esm2020 → esm2022}/f-selection-area/domain/selection-area-preparation/selection-area-preparation.request.mjs +0 -0
  663. /package/{esm2020 → esm2022}/f-selection-area/index.mjs +0 -0
  664. /package/{esm2020 → esm2022}/f-selection-area/providers.mjs +0 -0
  665. /package/{esm2020 → esm2022}/f-storage/index.mjs +0 -0
  666. /package/{esm2020 → esm2022}/f-zoom/index.mjs +0 -0
  667. /package/{esm2020 → esm2022}/f-zoom/providers.mjs +0 -0
  668. /package/{esm2020 → esm2022}/foblex-flow.mjs +0 -0
  669. /package/{esm2020 → esm2022}/i-has-host-element.mjs +0 -0
  670. /package/{esm2020 → esm2022}/i-has-state-changes.mjs +0 -0
  671. /package/{esm2020 → esm2022}/mixins/change-selection/i-can-change-selection.mjs +0 -0
  672. /package/{esm2020 → esm2022}/mixins/change-selection/index.mjs +0 -0
  673. /package/{esm2020 → esm2022}/mixins/change-visibility/change-visibility.mjs +0 -0
  674. /package/{esm2020 → esm2022}/mixins/change-visibility/i-can-change-visibility.mjs +0 -0
  675. /package/{esm2020 → esm2022}/mixins/change-visibility/index.mjs +0 -0
  676. /package/{esm2020 → esm2022}/mixins/constructor.mjs +0 -0
  677. /package/{esm2020 → esm2022}/mixins/index.mjs +0 -0
  678. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
@@ -0,0 +1,35 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { CanvasMovePreparationRequest } from './canvas-move-preparation.request';
4
+ import { Point } from '@foblex/2d';
5
+ import { FExecutionRegister } from '@foblex/mediator';
6
+ import { CanvasDragHandler } from '../canvas.drag-handler';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "../../../f-storage";
9
+ import * as i2 from "../../f-draggable-data-context";
10
+ export let CanvasMovePreparationExecution = class CanvasMovePreparationExecution {
11
+ get flowHost() {
12
+ return this.fComponentsStore.fFlow.hostElement;
13
+ }
14
+ constructor(fComponentsStore, fDraggableDataContext) {
15
+ this.fComponentsStore = fComponentsStore;
16
+ this.fDraggableDataContext = fDraggableDataContext;
17
+ }
18
+ handle(request) {
19
+ this.fDraggableDataContext.onPointerDownScale = 1;
20
+ this.fDraggableDataContext.onPointerDownPosition = Point.fromPoint(request.event.getPosition())
21
+ .elementTransform(this.flowHost);
22
+ this.fDraggableDataContext.draggableItems = [
23
+ new CanvasDragHandler(this.fComponentsStore)
24
+ ];
25
+ }
26
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CanvasMovePreparationExecution, deps: [{ token: i1.FComponentsStore }, { token: i2.FDraggableDataContext }], target: i0.ɵɵFactoryTarget.Injectable }); }
27
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CanvasMovePreparationExecution }); }
28
+ };
29
+ CanvasMovePreparationExecution = __decorate([
30
+ FExecutionRegister(CanvasMovePreparationRequest)
31
+ ], CanvasMovePreparationExecution);
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CanvasMovePreparationExecution, decorators: [{
33
+ type: Injectable
34
+ }], ctorParameters: function () { return [{ type: i1.FComponentsStore }, { type: i2.FDraggableDataContext }]; } });
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FudmFzLW1vdmUtcHJlcGFyYXRpb24uZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9jYW52YXMvY2FudmFzLW1vdmUtcHJlcGFyYXRpb24vY2FudmFzLW1vdmUtcHJlcGFyYXRpb24uZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDbkMsT0FBTyxFQUFFLGtCQUFrQixFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFHbEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7QUFJcEQsV0FBTSw4QkFBOEIsR0FBcEMsTUFBTSw4QkFBOEI7SUFFekMsSUFBWSxRQUFRO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQU0sQ0FBQyxXQUFXLENBQUM7SUFDbEQsQ0FBQztJQUVELFlBQ1UsZ0JBQWtDLEVBQ2xDLHFCQUE0QztRQUQ1QyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7SUFFdEQsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUFxQztRQUNqRCxJQUFJLENBQUMscUJBQXFCLENBQUMsa0JBQWtCLEdBQUcsQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxxQkFBcUIsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7YUFDNUYsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxjQUFjLEdBQUc7WUFDMUMsSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7U0FDN0MsQ0FBQztJQUNKLENBQUM7K0dBbkJVLDhCQUE4QjttSEFBOUIsOEJBQThCOztBQUE5Qiw4QkFBOEI7SUFEMUMsa0JBQWtCLENBQUMsNEJBQTRCLENBQUM7R0FDcEMsOEJBQThCLENBb0IxQzs0RkFwQlksOEJBQThCO2tCQUYxQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2FudmFzTW92ZVByZXBhcmF0aW9uUmVxdWVzdCB9IGZyb20gJy4vY2FudmFzLW1vdmUtcHJlcGFyYXRpb24ucmVxdWVzdCc7XG5pbXBvcnQgeyBQb2ludCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZEcmFnZ2FibGVEYXRhQ29udGV4dCB9IGZyb20gJy4uLy4uL2YtZHJhZ2dhYmxlLWRhdGEtY29udGV4dCc7XG5pbXBvcnQgeyBDYW52YXNEcmFnSGFuZGxlciB9IGZyb20gJy4uL2NhbnZhcy5kcmFnLWhhbmRsZXInO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKENhbnZhc01vdmVQcmVwYXJhdGlvblJlcXVlc3QpXG5leHBvcnQgY2xhc3MgQ2FudmFzTW92ZVByZXBhcmF0aW9uRXhlY3V0aW9uIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxDYW52YXNNb3ZlUHJlcGFyYXRpb25SZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSBnZXQgZmxvd0hvc3QoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkZsb3chLmhvc3RFbGVtZW50O1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgIHByaXZhdGUgZkRyYWdnYWJsZURhdGFDb250ZXh0OiBGRHJhZ2dhYmxlRGF0YUNvbnRleHQsXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBDYW52YXNNb3ZlUHJlcGFyYXRpb25SZXF1ZXN0KTogdm9pZCB7XG4gICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQub25Qb2ludGVyRG93blNjYWxlID0gMTtcbiAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5vblBvaW50ZXJEb3duUG9zaXRpb24gPSBQb2ludC5mcm9tUG9pbnQocmVxdWVzdC5ldmVudC5nZXRQb3NpdGlvbigpKVxuICAgICAgLmVsZW1lbnRUcmFuc2Zvcm0odGhpcy5mbG93SG9zdCk7XG4gICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuZHJhZ2dhYmxlSXRlbXMgPSBbXG4gICAgICBuZXcgQ2FudmFzRHJhZ0hhbmRsZXIodGhpcy5mQ29tcG9uZW50c1N0b3JlKVxuICAgIF07XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,42 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { CanvasMovePreparationRequest } from './canvas-move-preparation.request';
4
+ import { FValidatorRegister } from '@foblex/mediator';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../../f-storage";
7
+ import * as i2 from "../../f-draggable-data-context";
8
+ export let CanvasMovePreparationValidator = class CanvasMovePreparationValidator {
9
+ get flowHost() {
10
+ return this.fComponentsStore.fFlow.hostElement;
11
+ }
12
+ constructor(fComponentsStore, fDraggableDataContext) {
13
+ this.fComponentsStore = fComponentsStore;
14
+ this.fDraggableDataContext = fDraggableDataContext;
15
+ }
16
+ handle(request) {
17
+ return !this.fDraggableDataContext.draggableItems.length &&
18
+ (this.isBackgroundElement(request.event.targetElement) || this.isDragOnHost(request.event.targetElement));
19
+ }
20
+ isBackgroundElement(targetElement) {
21
+ return this.fComponentsStore.fBackground?.isBackgroundElement(targetElement);
22
+ }
23
+ isDragOnHost(targetElement) {
24
+ return this.flowHost.contains(targetElement) && !this.getNode(targetElement);
25
+ }
26
+ getNode(targetElement) {
27
+ let result = this.fComponentsStore.findNode(targetElement);
28
+ if (result && result.fDraggingDisabled) {
29
+ result = undefined;
30
+ }
31
+ return result;
32
+ }
33
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CanvasMovePreparationValidator, deps: [{ token: i1.FComponentsStore }, { token: i2.FDraggableDataContext }], target: i0.ɵɵFactoryTarget.Injectable }); }
34
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CanvasMovePreparationValidator }); }
35
+ };
36
+ CanvasMovePreparationValidator = __decorate([
37
+ FValidatorRegister(CanvasMovePreparationRequest)
38
+ ], CanvasMovePreparationValidator);
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CanvasMovePreparationValidator, decorators: [{
40
+ type: Injectable
41
+ }], ctorParameters: function () { return [{ type: i1.FComponentsStore }, { type: i2.FDraggableDataContext }]; } });
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FudmFzLW1vdmUtcHJlcGFyYXRpb24udmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9jYW52YXMvY2FudmFzLW1vdmUtcHJlcGFyYXRpb24vY2FudmFzLW1vdmUtcHJlcGFyYXRpb24udmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDOzs7O0FBTzNELFdBQU0sOEJBQThCLEdBQXBDLE1BQU0sOEJBQThCO0lBRXpDLElBQVksUUFBUTtRQUNsQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFNLENBQUMsV0FBVyxDQUFDO0lBQ2xELENBQUM7SUFFRCxZQUNVLGdCQUFrQyxFQUNsQyxxQkFBNEM7UUFENUMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO0lBRXRELENBQUM7SUFFTSxNQUFNLENBQUMsT0FBcUM7UUFDakQsT0FBTyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxjQUFjLENBQUMsTUFBTTtZQUN0RCxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQzlHLENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxhQUEwQjtRQUNwRCxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsbUJBQW1CLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDL0UsQ0FBQztJQUVPLFlBQVksQ0FBQyxhQUEwQjtRQUM3QyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRU8sT0FBTyxDQUFDLGFBQTBCO1FBQ3hDLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDM0QsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLGlCQUFpQixFQUFFO1lBQ3RDLE1BQU0sR0FBRyxTQUFTLENBQUM7U0FDcEI7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDOytHQS9CVSw4QkFBOEI7bUhBQTlCLDhCQUE4Qjs7QUFBOUIsOEJBQThCO0lBRDFDLGtCQUFrQixDQUFDLDRCQUE0QixDQUFDO0dBQ3BDLDhCQUE4QixDQWdDMUM7NEZBaENZLDhCQUE4QjtrQkFGMUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhbnZhc01vdmVQcmVwYXJhdGlvblJlcXVlc3QgfSBmcm9tICcuL2NhbnZhcy1tb3ZlLXByZXBhcmF0aW9uLnJlcXVlc3QnO1xuaW1wb3J0IHsgRlZhbGlkYXRvclJlZ2lzdGVyLCBJVmFsaWRhdG9yIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZEcmFnZ2FibGVEYXRhQ29udGV4dCB9IGZyb20gJy4uLy4uL2YtZHJhZ2dhYmxlLWRhdGEtY29udGV4dCc7XG5pbXBvcnQgeyBGTm9kZUJhc2UgfSBmcm9tICcuLi8uLi8uLi9mLW5vZGUnO1xuXG5ASW5qZWN0YWJsZSgpXG5ARlZhbGlkYXRvclJlZ2lzdGVyKENhbnZhc01vdmVQcmVwYXJhdGlvblJlcXVlc3QpXG5leHBvcnQgY2xhc3MgQ2FudmFzTW92ZVByZXBhcmF0aW9uVmFsaWRhdG9yIGltcGxlbWVudHMgSVZhbGlkYXRvcjxDYW52YXNNb3ZlUHJlcGFyYXRpb25SZXF1ZXN0PiB7XG5cbiAgcHJpdmF0ZSBnZXQgZmxvd0hvc3QoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkZsb3chLmhvc3RFbGVtZW50O1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgIHByaXZhdGUgZkRyYWdnYWJsZURhdGFDb250ZXh0OiBGRHJhZ2dhYmxlRGF0YUNvbnRleHRcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IENhbnZhc01vdmVQcmVwYXJhdGlvblJlcXVlc3QpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LmRyYWdnYWJsZUl0ZW1zLmxlbmd0aCAmJlxuICAgICAgKHRoaXMuaXNCYWNrZ3JvdW5kRWxlbWVudChyZXF1ZXN0LmV2ZW50LnRhcmdldEVsZW1lbnQpIHx8IHRoaXMuaXNEcmFnT25Ib3N0KHJlcXVlc3QuZXZlbnQudGFyZ2V0RWxlbWVudCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0JhY2tncm91bmRFbGVtZW50KHRhcmdldEVsZW1lbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQmFja2dyb3VuZD8uaXNCYWNrZ3JvdW5kRWxlbWVudCh0YXJnZXRFbGVtZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgaXNEcmFnT25Ib3N0KHRhcmdldEVsZW1lbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZmxvd0hvc3QuY29udGFpbnModGFyZ2V0RWxlbWVudCkgJiYgIXRoaXMuZ2V0Tm9kZSh0YXJnZXRFbGVtZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Tm9kZSh0YXJnZXRFbGVtZW50OiBIVE1MRWxlbWVudCk6IEZOb2RlQmFzZSB8IHVuZGVmaW5lZCB7XG4gICAgbGV0IHJlc3VsdCA9IHRoaXMuZkNvbXBvbmVudHNTdG9yZS5maW5kTm9kZSh0YXJnZXRFbGVtZW50KTtcbiAgICBpZiAocmVzdWx0ICYmIHJlc3VsdC5mRHJhZ2dpbmdEaXNhYmxlZCkge1xuICAgICAgcmVzdWx0ID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG59XG4iXX0=
@@ -0,0 +1,54 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { isNodeOutlet } from '../../../../f-connectors';
4
+ import { CreateConnectionFinalizeRequest } from './create-connection-finalize.request';
5
+ import { FExecutionRegister } from '@foblex/mediator';
6
+ import { OutputNotFound } from '../../../../errors';
7
+ import { GetCanBeConnectedOutputByOutletRequest } from '../get-can-be-connected-output-by-outlet';
8
+ import { FCreateConnectionEvent } from '../f-create-connection.event';
9
+ import { GetInputUnderPointerRequest } from '../../get-input-under-pointer';
10
+ import * as i0 from "@angular/core";
11
+ import * as i1 from "../../../../f-storage";
12
+ import * as i2 from "../../../f-draggable-data-context";
13
+ import * as i3 from "@foblex/mediator";
14
+ export let CreateConnectionFinalizeExecution = class CreateConnectionFinalizeExecution {
15
+ get dragHandler() {
16
+ return this.fDraggableDataContext.draggableItems[0];
17
+ }
18
+ constructor(fComponentsStore, fDraggableDataContext, fMediator) {
19
+ this.fComponentsStore = fComponentsStore;
20
+ this.fDraggableDataContext = fDraggableDataContext;
21
+ this.fMediator = fMediator;
22
+ }
23
+ handle(request) {
24
+ this.emitEvent(request.event);
25
+ this.dragHandler.complete();
26
+ }
27
+ getTargetOutput(output) {
28
+ if (!output) {
29
+ throw OutputNotFound(this.dragHandler.fConnection.fOutputId);
30
+ }
31
+ return isNodeOutlet(output.hostElement) ? this.fMediator.send(new GetCanBeConnectedOutputByOutletRequest(output)) : output;
32
+ }
33
+ getOutput() {
34
+ return this.fComponentsStore.fOutputs.find((x) => x.id === this.dragHandler.fConnection.fOutputId);
35
+ }
36
+ getOutlet() {
37
+ return this.fComponentsStore.fOutlets.find((x) => x.id === this.dragHandler.fConnection.fOutputId);
38
+ }
39
+ emitEvent(event) {
40
+ this.fComponentsStore.fDraggable?.fCreateConnection.emit(new FCreateConnectionEvent(this.getTargetOutput(this.getOutput() || this.getOutlet()).id, this.getInputUnderPointer(event)?.id, event.getPosition()));
41
+ }
42
+ getInputUnderPointer(event) {
43
+ return this.fMediator.send(new GetInputUnderPointerRequest(event, this.dragHandler));
44
+ }
45
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionFinalizeExecution, deps: [{ token: i1.FComponentsStore }, { token: i2.FDraggableDataContext }, { token: i3.FMediator }], target: i0.ɵɵFactoryTarget.Injectable }); }
46
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionFinalizeExecution }); }
47
+ };
48
+ CreateConnectionFinalizeExecution = __decorate([
49
+ FExecutionRegister(CreateConnectionFinalizeRequest)
50
+ ], CreateConnectionFinalizeExecution);
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionFinalizeExecution, decorators: [{
52
+ type: Injectable
53
+ }], ctorParameters: function () { return [{ type: i1.FComponentsStore }, { type: i2.FDraggableDataContext }, { type: i3.FMediator }]; } });
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNvbm5lY3Rpb24tZmluYWxpemUuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9jb25uZWN0aW9ucy9jcmVhdGUtY29ubmVjdGlvbi9jcmVhdGUtY29ubmVjdGlvbi1maW5hbGl6ZS9jcmVhdGUtY29ubmVjdGlvbi1maW5hbGl6ZS5leGVjdXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUVBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFvRCxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN2RixPQUFPLEVBQUUsa0JBQWtCLEVBQWEsTUFBTSxrQkFBa0IsQ0FBQztBQUVqRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEQsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDbEcsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFdEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sK0JBQStCLENBQUM7Ozs7O0FBSXJFLFdBQU0saUNBQWlDLEdBQXZDLE1BQU0saUNBQWlDO0lBRzVDLElBQVksV0FBVztRQUNyQixPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxjQUFjLENBQUUsQ0FBQyxDQUFpQyxDQUFDO0lBQ3ZGLENBQUM7SUFFRCxZQUNVLGdCQUFrQyxFQUNsQyxxQkFBNEMsRUFDNUMsU0FBb0I7UUFGcEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLGNBQVMsR0FBVCxTQUFTLENBQVc7SUFFOUIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUF3QztRQUNwRCxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFTyxlQUFlLENBQUMsTUFBa0M7UUFDeEQsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNYLE1BQU0sY0FBYyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQzlEO1FBQ0QsT0FBTyxZQUFZLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FDM0QsSUFBSSxzQ0FBc0MsQ0FBQyxNQUF5QixDQUFDLENBQ3RFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNiLENBQUM7SUFFTyxTQUFTO1FBQ2YsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNyRyxDQUFDO0lBRU8sU0FBUztRQUNmLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDckcsQ0FBQztJQUVPLFNBQVMsQ0FBQyxLQUFvQjtRQUNwQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLGlCQUFpQixDQUFDLElBQUksQ0FDdEQsSUFBSSxzQkFBc0IsQ0FDeEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUM3RCxJQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxFQUNwQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQ3BCLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTyxvQkFBb0IsQ0FBQyxLQUFvQjtRQUMvQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUE2QixJQUFJLDJCQUEyQixDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUNuSCxDQUFDOytHQWhEVSxpQ0FBaUM7bUhBQWpDLGlDQUFpQzs7QUFBakMsaUNBQWlDO0lBRDdDLGtCQUFrQixDQUFDLCtCQUErQixDQUFDO0dBQ3ZDLGlDQUFpQyxDQWlEN0M7NEZBakRZLGlDQUFpQztrQkFGN0MsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElIYW5kbGVyIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBJUG9pbnRlckV2ZW50IH0gZnJvbSAnQGZvYmxleC9kcmFnLXRvb2xraXQnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGQ29ubmVjdG9yQmFzZSwgRk5vZGVPdXRsZXRCYXNlLCBGTm9kZU91dHB1dEJhc2UsIGlzTm9kZU91dGxldCB9IGZyb20gJy4uLy4uLy4uLy4uL2YtY29ubmVjdG9ycyc7XG5pbXBvcnQgeyBDcmVhdGVDb25uZWN0aW9uRmluYWxpemVSZXF1ZXN0IH0gZnJvbSAnLi9jcmVhdGUtY29ubmVjdGlvbi1maW5hbGl6ZS5yZXF1ZXN0JztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBGRHJhZ2dhYmxlRGF0YUNvbnRleHQgfSBmcm9tICcuLi8uLi8uLi9mLWRyYWdnYWJsZS1kYXRhLWNvbnRleHQnO1xuaW1wb3J0IHsgT3V0cHV0Tm90Rm91bmQgfSBmcm9tICcuLi8uLi8uLi8uLi9lcnJvcnMnO1xuaW1wb3J0IHsgR2V0Q2FuQmVDb25uZWN0ZWRPdXRwdXRCeU91dGxldFJlcXVlc3QgfSBmcm9tICcuLi9nZXQtY2FuLWJlLWNvbm5lY3RlZC1vdXRwdXQtYnktb3V0bGV0JztcbmltcG9ydCB7IEZDcmVhdGVDb25uZWN0aW9uRXZlbnQgfSBmcm9tICcuLi9mLWNyZWF0ZS1jb25uZWN0aW9uLmV2ZW50JztcbmltcG9ydCB7IENyZWF0ZUNvbm5lY3Rpb25EcmFnSGFuZGxlciB9IGZyb20gJy4uL2NyZWF0ZS1jb25uZWN0aW9uLmRyYWctaGFuZGxlcic7XG5pbXBvcnQgeyBHZXRJbnB1dFVuZGVyUG9pbnRlclJlcXVlc3QgfSBmcm9tICcuLi8uLi9nZXQtaW5wdXQtdW5kZXItcG9pbnRlcic7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoQ3JlYXRlQ29ubmVjdGlvbkZpbmFsaXplUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBDcmVhdGVDb25uZWN0aW9uRmluYWxpemVFeGVjdXRpb25cbiAgaW1wbGVtZW50cyBJSGFuZGxlcjxDcmVhdGVDb25uZWN0aW9uRmluYWxpemVSZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSBnZXQgZHJhZ0hhbmRsZXIoKTogQ3JlYXRlQ29ubmVjdGlvbkRyYWdIYW5kbGVyIHtcbiAgICByZXR1cm4gdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuZHJhZ2dhYmxlSXRlbXNbIDAgXSBhcyBDcmVhdGVDb25uZWN0aW9uRHJhZ0hhbmRsZXI7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmUsXG4gICAgcHJpdmF0ZSBmRHJhZ2dhYmxlRGF0YUNvbnRleHQ6IEZEcmFnZ2FibGVEYXRhQ29udGV4dCxcbiAgICBwcml2YXRlIGZNZWRpYXRvcjogRk1lZGlhdG9yLFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogQ3JlYXRlQ29ubmVjdGlvbkZpbmFsaXplUmVxdWVzdCk6IHZvaWQge1xuICAgIHRoaXMuZW1pdEV2ZW50KHJlcXVlc3QuZXZlbnQpO1xuICAgIHRoaXMuZHJhZ0hhbmRsZXIuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VGFyZ2V0T3V0cHV0KG91dHB1dDogRkNvbm5lY3RvckJhc2UgfCB1bmRlZmluZWQpOiBGQ29ubmVjdG9yQmFzZSB7XG4gICAgaWYgKCFvdXRwdXQpIHtcbiAgICAgIHRocm93IE91dHB1dE5vdEZvdW5kKHRoaXMuZHJhZ0hhbmRsZXIuZkNvbm5lY3Rpb24uZk91dHB1dElkKTtcbiAgICB9XG4gICAgcmV0dXJuIGlzTm9kZU91dGxldChvdXRwdXQuaG9zdEVsZW1lbnQpID8gdGhpcy5mTWVkaWF0b3Iuc2VuZDxGTm9kZU91dHB1dEJhc2U+KFxuICAgICAgbmV3IEdldENhbkJlQ29ubmVjdGVkT3V0cHV0QnlPdXRsZXRSZXF1ZXN0KG91dHB1dCBhcyBGTm9kZU91dGxldEJhc2UpXG4gICAgKSA6IG91dHB1dDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0T3V0cHV0KCk6IEZDb25uZWN0b3JCYXNlIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZPdXRwdXRzLmZpbmQoKHgpID0+IHguaWQgPT09IHRoaXMuZHJhZ0hhbmRsZXIuZkNvbm5lY3Rpb24uZk91dHB1dElkKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0T3V0bGV0KCk6IEZDb25uZWN0b3JCYXNlIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZPdXRsZXRzLmZpbmQoKHgpID0+IHguaWQgPT09IHRoaXMuZHJhZ0hhbmRsZXIuZkNvbm5lY3Rpb24uZk91dHB1dElkKTtcbiAgfVxuXG4gIHByaXZhdGUgZW1pdEV2ZW50KGV2ZW50OiBJUG9pbnRlckV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZEcmFnZ2FibGU/LmZDcmVhdGVDb25uZWN0aW9uLmVtaXQoXG4gICAgICBuZXcgRkNyZWF0ZUNvbm5lY3Rpb25FdmVudChcbiAgICAgICAgdGhpcy5nZXRUYXJnZXRPdXRwdXQodGhpcy5nZXRPdXRwdXQoKSB8fCB0aGlzLmdldE91dGxldCgpKS5pZCxcbiAgICAgICAgdGhpcy5nZXRJbnB1dFVuZGVyUG9pbnRlcihldmVudCk/LmlkLFxuICAgICAgICBldmVudC5nZXRQb3NpdGlvbigpXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0SW5wdXRVbmRlclBvaW50ZXIoZXZlbnQ6IElQb2ludGVyRXZlbnQpOiBGQ29ubmVjdG9yQmFzZSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuZk1lZGlhdG9yLnNlbmQ8RkNvbm5lY3RvckJhc2UgfCB1bmRlZmluZWQ+KG5ldyBHZXRJbnB1dFVuZGVyUG9pbnRlclJlcXVlc3QoZXZlbnQsIHRoaXMuZHJhZ0hhbmRsZXIpKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,24 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { CreateConnectionFinalizeRequest } from './create-connection-finalize.request';
4
+ import { FValidatorRegister } from '@foblex/mediator';
5
+ import { CreateConnectionDragHandler } from '../create-connection.drag-handler';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../../../f-draggable-data-context";
8
+ export let CreateConnectionFinalizeValidator = class CreateConnectionFinalizeValidator {
9
+ constructor(fDraggableDataContext) {
10
+ this.fDraggableDataContext = fDraggableDataContext;
11
+ }
12
+ handle(request) {
13
+ return this.fDraggableDataContext.draggableItems.some((x) => x instanceof CreateConnectionDragHandler);
14
+ }
15
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionFinalizeValidator, deps: [{ token: i1.FDraggableDataContext }], target: i0.ɵɵFactoryTarget.Injectable }); }
16
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionFinalizeValidator }); }
17
+ };
18
+ CreateConnectionFinalizeValidator = __decorate([
19
+ FValidatorRegister(CreateConnectionFinalizeRequest)
20
+ ], CreateConnectionFinalizeValidator);
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionFinalizeValidator, decorators: [{
22
+ type: Injectable
23
+ }], ctorParameters: function () { return [{ type: i1.FDraggableDataContext }]; } });
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNvbm5lY3Rpb24tZmluYWxpemUudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9jb25uZWN0aW9ucy9jcmVhdGUtY29ubmVjdGlvbi9jcmVhdGUtY29ubmVjdGlvbi1maW5hbGl6ZS9jcmVhdGUtY29ubmVjdGlvbi1maW5hbGl6ZS52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDdkYsT0FBTyxFQUFFLGtCQUFrQixFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFFbEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7OztBQUl6RSxXQUFNLGlDQUFpQyxHQUF2QyxNQUFNLGlDQUFpQztJQUU1QyxZQUNVLHFCQUE0QztRQUE1QywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO0lBRXRELENBQUM7SUFFTSxNQUFNLENBQUMsT0FBd0M7UUFDcEQsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsY0FBYyxDQUFDLElBQUksQ0FDbkQsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsWUFBWSwyQkFBMkIsQ0FDaEQsQ0FBQztJQUNKLENBQUM7K0dBWFUsaUNBQWlDO21IQUFqQyxpQ0FBaUM7O0FBQWpDLGlDQUFpQztJQUQ3QyxrQkFBa0IsQ0FBQywrQkFBK0IsQ0FBQztHQUN2QyxpQ0FBaUMsQ0FZN0M7NEZBWlksaUNBQWlDO2tCQUY3QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ3JlYXRlQ29ubmVjdGlvbkZpbmFsaXplUmVxdWVzdCB9IGZyb20gJy4vY3JlYXRlLWNvbm5lY3Rpb24tZmluYWxpemUucmVxdWVzdCc7XG5pbXBvcnQgeyBGVmFsaWRhdG9yUmVnaXN0ZXIsIElWYWxpZGF0b3IgfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IEZEcmFnZ2FibGVEYXRhQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uL2YtZHJhZ2dhYmxlLWRhdGEtY29udGV4dCc7XG5pbXBvcnQgeyBDcmVhdGVDb25uZWN0aW9uRHJhZ0hhbmRsZXIgfSBmcm9tICcuLi9jcmVhdGUtY29ubmVjdGlvbi5kcmFnLWhhbmRsZXInO1xuXG5ASW5qZWN0YWJsZSgpXG5ARlZhbGlkYXRvclJlZ2lzdGVyKENyZWF0ZUNvbm5lY3Rpb25GaW5hbGl6ZVJlcXVlc3QpXG5leHBvcnQgY2xhc3MgQ3JlYXRlQ29ubmVjdGlvbkZpbmFsaXplVmFsaWRhdG9yIGltcGxlbWVudHMgSVZhbGlkYXRvcjxDcmVhdGVDb25uZWN0aW9uRmluYWxpemVSZXF1ZXN0PiB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmRHJhZ2dhYmxlRGF0YUNvbnRleHQ6IEZEcmFnZ2FibGVEYXRhQ29udGV4dFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogQ3JlYXRlQ29ubmVjdGlvbkZpbmFsaXplUmVxdWVzdCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5kcmFnZ2FibGVJdGVtcy5zb21lKFxuICAgICAgKHgpID0+IHggaW5zdGFuY2VvZiBDcmVhdGVDb25uZWN0aW9uRHJhZ0hhbmRsZXJcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,43 @@
1
+ import { __decorate } from "tslib";
2
+ import { Point } from '@foblex/2d';
3
+ import { Injectable } from '@angular/core';
4
+ import { CreateConnectionDragHandlerRequest } from './create-connection-drag-handler.request';
5
+ import { FExecutionRegister } from '@foblex/mediator';
6
+ import { CreateConnectionDragHandler } from '../../create-connection.drag-handler';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "../../../../../f-storage";
9
+ import * as i2 from "../../../../f-draggable-data-context";
10
+ import * as i3 from "@foblex/mediator";
11
+ export let CreateConnectionDragHandlerExecution = class CreateConnectionDragHandlerExecution {
12
+ get flowHost() {
13
+ return this.fComponentsStore.flowHost;
14
+ }
15
+ get transform() {
16
+ return this.fComponentsStore.fCanvas.transform;
17
+ }
18
+ constructor(fComponentsStore, fDraggableDataContext, fMediator) {
19
+ this.fComponentsStore = fComponentsStore;
20
+ this.fDraggableDataContext = fDraggableDataContext;
21
+ this.fMediator = fMediator;
22
+ }
23
+ handle(request) {
24
+ this.fDraggableDataContext.onPointerDownScale = this.transform.scale;
25
+ const positionRelativeToFlowComponent = Point.fromPoint(request.onPointerDownPosition)
26
+ .elementTransform(this.flowHost).div(this.transform.scale);
27
+ this.fDraggableDataContext.onPointerDownPosition = positionRelativeToFlowComponent;
28
+ const positionRelativeToCanvasComponent = Point.fromPoint(positionRelativeToFlowComponent).mult(this.transform.scale)
29
+ .sub(this.transform.position).sub(this.transform.scaledPosition).div(this.transform.scale);
30
+ this.fDraggableDataContext.draggableItems = [
31
+ new CreateConnectionDragHandler(this.fMediator, this.fComponentsStore, request.connector, positionRelativeToCanvasComponent)
32
+ ];
33
+ }
34
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionDragHandlerExecution, deps: [{ token: i1.FComponentsStore }, { token: i2.FDraggableDataContext }, { token: i3.FMediator }], target: i0.ɵɵFactoryTarget.Injectable }); }
35
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionDragHandlerExecution }); }
36
+ };
37
+ CreateConnectionDragHandlerExecution = __decorate([
38
+ FExecutionRegister(CreateConnectionDragHandlerRequest)
39
+ ], CreateConnectionDragHandlerExecution);
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionDragHandlerExecution, decorators: [{
41
+ type: Injectable
42
+ }], ctorParameters: function () { return [{ type: i1.FComponentsStore }, { type: i2.FDraggableDataContext }, { type: i3.FMediator }]; } });
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNvbm5lY3Rpb24tZHJhZy1oYW5kbGVyLmV4ZWN1dGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvY29ubmVjdGlvbnMvY3JlYXRlLWNvbm5lY3Rpb24vY3JlYXRlLWNvbm5lY3Rpb24tcHJlcGFyYXRpb24vY3JlYXRlLWNvbm5lY3Rpb24tZHJhZy1oYW5kbGVyL2NyZWF0ZS1jb25uZWN0aW9uLWRyYWctaGFuZGxlci5leGVjdXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBbUIsS0FBSyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRXBELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFOUYsT0FBTyxFQUFFLGtCQUFrQixFQUFhLE1BQU0sa0JBQWtCLENBQUM7QUFFakUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7O0FBSTVFLFdBQU0sb0NBQW9DLEdBQTFDLE1BQU0sb0NBQW9DO0lBRy9DLElBQVksUUFBUTtRQUNsQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUM7SUFDeEMsQ0FBQztJQUVELElBQVksU0FBUztRQUNuQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFRLENBQUMsU0FBUyxDQUFDO0lBQ2xELENBQUM7SUFFRCxZQUNVLGdCQUFrQyxFQUNsQyxxQkFBNEMsRUFDNUMsU0FBb0I7UUFGcEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLGNBQVMsR0FBVCxTQUFTLENBQVc7SUFFOUIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUEyQztRQUN2RCxJQUFJLENBQUMscUJBQXFCLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7UUFDckUsTUFBTSwrQkFBK0IsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQzthQUNuRixnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0QsSUFBSSxDQUFDLHFCQUFxQixDQUFDLHFCQUFxQixHQUFHLCtCQUErQixDQUFDO1FBRW5GLE1BQU0saUNBQWlDLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQzthQUNsSCxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUU3RixJQUFJLENBQUMscUJBQXFCLENBQUMsY0FBYyxHQUFHO1lBQzFDLElBQUksMkJBQTJCLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxpQ0FBaUMsQ0FBQztTQUM3SCxDQUFDO0lBQ0osQ0FBQzsrR0E5QlUsb0NBQW9DO21IQUFwQyxvQ0FBb0M7O0FBQXBDLG9DQUFvQztJQURoRCxrQkFBa0IsQ0FBQyxrQ0FBa0MsQ0FBQztHQUMxQyxvQ0FBb0MsQ0ErQmhEOzRGQS9CWSxvQ0FBb0M7a0JBRmhELFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJVHJhbnNmb3JtTW9kZWwsIFBvaW50IH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBJSGFuZGxlciB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ3JlYXRlQ29ubmVjdGlvbkRyYWdIYW5kbGVyUmVxdWVzdCB9IGZyb20gJy4vY3JlYXRlLWNvbm5lY3Rpb24tZHJhZy1oYW5kbGVyLnJlcXVlc3QnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgRkRyYWdnYWJsZURhdGFDb250ZXh0IH0gZnJvbSAnLi4vLi4vLi4vLi4vZi1kcmFnZ2FibGUtZGF0YS1jb250ZXh0JztcbmltcG9ydCB7IENyZWF0ZUNvbm5lY3Rpb25EcmFnSGFuZGxlciB9IGZyb20gJy4uLy4uL2NyZWF0ZS1jb25uZWN0aW9uLmRyYWctaGFuZGxlcic7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoQ3JlYXRlQ29ubmVjdGlvbkRyYWdIYW5kbGVyUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBDcmVhdGVDb25uZWN0aW9uRHJhZ0hhbmRsZXJFeGVjdXRpb25cbiAgaW1wbGVtZW50cyBJSGFuZGxlcjxDcmVhdGVDb25uZWN0aW9uRHJhZ0hhbmRsZXJSZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSBnZXQgZmxvd0hvc3QoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZmxvd0hvc3Q7XG4gIH1cblxuICBwcml2YXRlIGdldCB0cmFuc2Zvcm0oKTogSVRyYW5zZm9ybU1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhLnRyYW5zZm9ybTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZSxcbiAgICBwcml2YXRlIGZEcmFnZ2FibGVEYXRhQ29udGV4dDogRkRyYWdnYWJsZURhdGFDb250ZXh0LFxuICAgIHByaXZhdGUgZk1lZGlhdG9yOiBGTWVkaWF0b3IsXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBDcmVhdGVDb25uZWN0aW9uRHJhZ0hhbmRsZXJSZXF1ZXN0KTogdm9pZCB7XG4gICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQub25Qb2ludGVyRG93blNjYWxlID0gdGhpcy50cmFuc2Zvcm0uc2NhbGU7XG4gICAgY29uc3QgcG9zaXRpb25SZWxhdGl2ZVRvRmxvd0NvbXBvbmVudCA9IFBvaW50LmZyb21Qb2ludChyZXF1ZXN0Lm9uUG9pbnRlckRvd25Qb3NpdGlvbilcbiAgICAgIC5lbGVtZW50VHJhbnNmb3JtKHRoaXMuZmxvd0hvc3QpLmRpdih0aGlzLnRyYW5zZm9ybS5zY2FsZSk7XG4gICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQub25Qb2ludGVyRG93blBvc2l0aW9uID0gcG9zaXRpb25SZWxhdGl2ZVRvRmxvd0NvbXBvbmVudDtcblxuICAgIGNvbnN0IHBvc2l0aW9uUmVsYXRpdmVUb0NhbnZhc0NvbXBvbmVudCA9IFBvaW50LmZyb21Qb2ludChwb3NpdGlvblJlbGF0aXZlVG9GbG93Q29tcG9uZW50KS5tdWx0KHRoaXMudHJhbnNmb3JtLnNjYWxlKVxuICAgICAgLnN1Yih0aGlzLnRyYW5zZm9ybS5wb3NpdGlvbikuc3ViKHRoaXMudHJhbnNmb3JtLnNjYWxlZFBvc2l0aW9uKS5kaXYodGhpcy50cmFuc2Zvcm0uc2NhbGUpO1xuXG4gICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuZHJhZ2dhYmxlSXRlbXMgPSBbXG4gICAgICBuZXcgQ3JlYXRlQ29ubmVjdGlvbkRyYWdIYW5kbGVyKHRoaXMuZk1lZGlhdG9yLCB0aGlzLmZDb21wb25lbnRzU3RvcmUsIHJlcXVlc3QuY29ubmVjdG9yLCBwb3NpdGlvblJlbGF0aXZlVG9DYW52YXNDb21wb25lbnQpXG4gICAgXTtcbiAgfVxufVxuIl19
@@ -0,0 +1,52 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { CreateConnectionFromOutletPreparationRequest } from './create-connection-from-outlet-preparation.request';
4
+ import { FExecutionRegister } from '@foblex/mediator';
5
+ import { GetCanBeConnectedOutputByOutletRequest } from '../../get-can-be-connected-output-by-outlet';
6
+ import { RequiredOutput } from '../../../../../errors';
7
+ import { CreateConnectionDragHandlerRequest } from '../create-connection-drag-handler';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "../../../../../f-storage";
10
+ import * as i2 from "@foblex/mediator";
11
+ export let CreateConnectionFromOutletPreparationExecution = class CreateConnectionFromOutletPreparationExecution {
12
+ constructor(fComponentsStore, fMediator) {
13
+ this.fComponentsStore = fComponentsStore;
14
+ this.fMediator = fMediator;
15
+ }
16
+ handle(request) {
17
+ const { event } = request;
18
+ const node = this.fComponentsStore.findNode(event.targetElement);
19
+ const outlet = this.fComponentsStore.fOutlets.find((x) => {
20
+ return x.hostElement.contains(event.targetElement);
21
+ });
22
+ if (!outlet) {
23
+ throw new Error('Outlet not found');
24
+ }
25
+ const nodeOutputs = this.fComponentsStore.fOutputs.filter((x) => node.isContains(x.hostElement));
26
+ outlet.setOutputs(nodeOutputs);
27
+ if (outlet.canBeConnected) {
28
+ if (outlet.isConnectionFromOutlet) {
29
+ this.createDragHandler(event.getPosition(), outlet);
30
+ }
31
+ else {
32
+ const output = this.fMediator.send(new GetCanBeConnectedOutputByOutletRequest(outlet));
33
+ if (!output) {
34
+ throw RequiredOutput();
35
+ }
36
+ this.createDragHandler(event.getPosition(), output);
37
+ }
38
+ }
39
+ }
40
+ createDragHandler(position, output) {
41
+ this.fMediator.send(new CreateConnectionDragHandlerRequest(position, output));
42
+ }
43
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionFromOutletPreparationExecution, deps: [{ token: i1.FComponentsStore }, { token: i2.FMediator }], target: i0.ɵɵFactoryTarget.Injectable }); }
44
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionFromOutletPreparationExecution }); }
45
+ };
46
+ CreateConnectionFromOutletPreparationExecution = __decorate([
47
+ FExecutionRegister(CreateConnectionFromOutletPreparationRequest)
48
+ ], CreateConnectionFromOutletPreparationExecution);
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionFromOutletPreparationExecution, decorators: [{
50
+ type: Injectable
51
+ }], ctorParameters: function () { return [{ type: i1.FComponentsStore }, { type: i2.FMediator }]; } });
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNvbm5lY3Rpb24tZnJvbS1vdXRsZXQtcHJlcGFyYXRpb24uZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9jb25uZWN0aW9ucy9jcmVhdGUtY29ubmVjdGlvbi9jcmVhdGUtY29ubmVjdGlvbi1wcmVwYXJhdGlvbi9jcmVhdGUtY29ubmVjdGlvbi1mcm9tLW91dGxldC1wcmVwYXJhdGlvbi9jcmVhdGUtY29ubmVjdGlvbi1mcm9tLW91dGxldC1wcmVwYXJhdGlvbi5leGVjdXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUVBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLDRDQUE0QyxFQUFFLE1BQU0scURBQXFELENBQUM7QUFFbkgsT0FBTyxFQUFFLGtCQUFrQixFQUFhLE1BQU0sa0JBQWtCLENBQUM7QUFFakUsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDckcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7O0FBSWhGLFdBQU0sOENBQThDLEdBQXBELE1BQU0sOENBQThDO0lBR3pELFlBQ1UsZ0JBQWtDLEVBQ2xDLFNBQW9CO1FBRHBCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsY0FBUyxHQUFULFNBQVMsQ0FBVztJQUU5QixDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQXFEO1FBQ2pFLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFDMUIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFFLENBQUM7UUFFbEUsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUN2RCxPQUFPLENBQUMsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNyRCxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDWCxNQUFNLElBQUksS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7U0FDckM7UUFDRCxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNoRyxNQUEwQixDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUVwRCxJQUFJLE1BQU0sQ0FBQyxjQUFjLEVBQUU7WUFFekIsSUFBSyxNQUEwQixDQUFDLHNCQUFzQixFQUFFO2dCQUV0RCxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDO2FBQ3JEO2lCQUFNO2dCQUNMLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUNoQyxJQUFJLHNDQUFzQyxDQUFDLE1BQXlCLENBQUMsQ0FDdEUsQ0FBQztnQkFDRixJQUFJLENBQUMsTUFBTSxFQUFFO29CQUNYLE1BQU0sY0FBYyxFQUFFLENBQUM7aUJBQ3hCO2dCQUNELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUM7YUFDckQ7U0FDRjtJQUNILENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxRQUFnQixFQUFFLE1BQXNCO1FBQ2hFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksa0NBQWtDLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDaEYsQ0FBQzsrR0F6Q1UsOENBQThDO21IQUE5Qyw4Q0FBOEM7O0FBQTlDLDhDQUE4QztJQUQxRCxrQkFBa0IsQ0FBQyw0Q0FBNEMsQ0FBQztHQUNwRCw4Q0FBOEMsQ0EwQzFEOzRGQTFDWSw4Q0FBOEM7a0JBRjFELFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJSGFuZGxlciB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDcmVhdGVDb25uZWN0aW9uRnJvbU91dGxldFByZXBhcmF0aW9uUmVxdWVzdCB9IGZyb20gJy4vY3JlYXRlLWNvbm5lY3Rpb24tZnJvbS1vdXRsZXQtcHJlcGFyYXRpb24ucmVxdWVzdCc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBGQ29ubmVjdG9yQmFzZSwgRk5vZGVPdXRsZXRCYXNlLCBGTm9kZU91dHB1dEJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9mLWNvbm5lY3RvcnMnO1xuaW1wb3J0IHsgR2V0Q2FuQmVDb25uZWN0ZWRPdXRwdXRCeU91dGxldFJlcXVlc3QgfSBmcm9tICcuLi8uLi9nZXQtY2FuLWJlLWNvbm5lY3RlZC1vdXRwdXQtYnktb3V0bGV0JztcbmltcG9ydCB7IFJlcXVpcmVkT3V0cHV0IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZXJyb3JzJztcbmltcG9ydCB7IENyZWF0ZUNvbm5lY3Rpb25EcmFnSGFuZGxlclJlcXVlc3QgfSBmcm9tICcuLi9jcmVhdGUtY29ubmVjdGlvbi1kcmFnLWhhbmRsZXInO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKENyZWF0ZUNvbm5lY3Rpb25Gcm9tT3V0bGV0UHJlcGFyYXRpb25SZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIENyZWF0ZUNvbm5lY3Rpb25Gcm9tT3V0bGV0UHJlcGFyYXRpb25FeGVjdXRpb25cbiAgaW1wbGVtZW50cyBJSGFuZGxlcjxDcmVhdGVDb25uZWN0aW9uRnJvbU91dGxldFByZXBhcmF0aW9uUmVxdWVzdCwgdm9pZD4ge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZSxcbiAgICBwcml2YXRlIGZNZWRpYXRvcjogRk1lZGlhdG9yLFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogQ3JlYXRlQ29ubmVjdGlvbkZyb21PdXRsZXRQcmVwYXJhdGlvblJlcXVlc3QpOiB2b2lkIHtcbiAgICBjb25zdCB7IGV2ZW50IH0gPSByZXF1ZXN0O1xuICAgIGNvbnN0IG5vZGUgPSB0aGlzLmZDb21wb25lbnRzU3RvcmUuZmluZE5vZGUoZXZlbnQudGFyZ2V0RWxlbWVudCkhO1xuXG4gICAgY29uc3Qgb3V0bGV0ID0gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZPdXRsZXRzLmZpbmQoKHgpID0+IHtcbiAgICAgIHJldHVybiB4Lmhvc3RFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldEVsZW1lbnQpO1xuICAgIH0pO1xuICAgIGlmICghb3V0bGV0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ091dGxldCBub3QgZm91bmQnKTtcbiAgICB9XG4gICAgY29uc3Qgbm9kZU91dHB1dHMgPSB0aGlzLmZDb21wb25lbnRzU3RvcmUuZk91dHB1dHMuZmlsdGVyKCh4KSA9PiBub2RlLmlzQ29udGFpbnMoeC5ob3N0RWxlbWVudCkpO1xuICAgIChvdXRsZXQgYXMgRk5vZGVPdXRsZXRCYXNlKS5zZXRPdXRwdXRzKG5vZGVPdXRwdXRzKTtcblxuICAgIGlmIChvdXRsZXQuY2FuQmVDb25uZWN0ZWQpIHtcblxuICAgICAgaWYgKChvdXRsZXQgYXMgRk5vZGVPdXRsZXRCYXNlKS5pc0Nvbm5lY3Rpb25Gcm9tT3V0bGV0KSB7XG5cbiAgICAgICAgdGhpcy5jcmVhdGVEcmFnSGFuZGxlcihldmVudC5nZXRQb3NpdGlvbigpLCBvdXRsZXQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3Qgb3V0cHV0ID0gdGhpcy5mTWVkaWF0b3Iuc2VuZDxGTm9kZU91dHB1dEJhc2U+KFxuICAgICAgICAgIG5ldyBHZXRDYW5CZUNvbm5lY3RlZE91dHB1dEJ5T3V0bGV0UmVxdWVzdChvdXRsZXQgYXMgRk5vZGVPdXRsZXRCYXNlKVxuICAgICAgICApO1xuICAgICAgICBpZiAoIW91dHB1dCkge1xuICAgICAgICAgIHRocm93IFJlcXVpcmVkT3V0cHV0KCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jcmVhdGVEcmFnSGFuZGxlcihldmVudC5nZXRQb3NpdGlvbigpLCBvdXRwdXQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlRHJhZ0hhbmRsZXIocG9zaXRpb246IElQb2ludCwgb3V0cHV0OiBGQ29ubmVjdG9yQmFzZSk6IHZvaWQge1xuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQobmV3IENyZWF0ZUNvbm5lY3Rpb25EcmFnSGFuZGxlclJlcXVlc3QocG9zaXRpb24sIG91dHB1dCkpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,38 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { CreateConnectionFromOutputPreparationRequest } from './create-connection-from-output-preparation.request';
4
+ import { CreateConnectionDragHandlerRequest } from '../create-connection-drag-handler';
5
+ import { FExecutionRegister } from '@foblex/mediator';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../../../../../f-storage";
8
+ import * as i2 from "@foblex/mediator";
9
+ export let CreateConnectionFromOutputPreparationExecution = class CreateConnectionFromOutputPreparationExecution {
10
+ constructor(fComponentsStore, fMediator) {
11
+ this.fComponentsStore = fComponentsStore;
12
+ this.fMediator = fMediator;
13
+ }
14
+ handle(request) {
15
+ const { event } = request;
16
+ const output = this.fComponentsStore.fOutputs.find((x) => {
17
+ return x.hostElement.contains(event.targetElement);
18
+ });
19
+ if (!output) {
20
+ throw new Error('Output not found');
21
+ }
22
+ if (output.canBeConnected) {
23
+ this.createDragHandler(event.getPosition(), output);
24
+ }
25
+ }
26
+ createDragHandler(position, output) {
27
+ this.fMediator.send(new CreateConnectionDragHandlerRequest(position, output));
28
+ }
29
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionFromOutputPreparationExecution, deps: [{ token: i1.FComponentsStore }, { token: i2.FMediator }], target: i0.ɵɵFactoryTarget.Injectable }); }
30
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionFromOutputPreparationExecution }); }
31
+ };
32
+ CreateConnectionFromOutputPreparationExecution = __decorate([
33
+ FExecutionRegister(CreateConnectionFromOutputPreparationRequest)
34
+ ], CreateConnectionFromOutputPreparationExecution);
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionFromOutputPreparationExecution, decorators: [{
36
+ type: Injectable
37
+ }], ctorParameters: function () { return [{ type: i1.FComponentsStore }, { type: i2.FMediator }]; } });
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNvbm5lY3Rpb24tZnJvbS1vdXRwdXQtcHJlcGFyYXRpb24uZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9jb25uZWN0aW9ucy9jcmVhdGUtY29ubmVjdGlvbi9jcmVhdGUtY29ubmVjdGlvbi1wcmVwYXJhdGlvbi9jcmVhdGUtY29ubmVjdGlvbi1mcm9tLW91dHB1dC1wcmVwYXJhdGlvbi9jcmVhdGUtY29ubmVjdGlvbi1mcm9tLW91dHB1dC1wcmVwYXJhdGlvbi5leGVjdXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUVBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLDRDQUE0QyxFQUFFLE1BQU0scURBQXFELENBQUM7QUFFbkgsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFdkYsT0FBTyxFQUFFLGtCQUFrQixFQUFhLE1BQU0sa0JBQWtCLENBQUM7Ozs7QUFJMUQsV0FBTSw4Q0FBOEMsR0FBcEQsTUFBTSw4Q0FBOEM7SUFHekQsWUFDVSxnQkFBa0MsRUFDbEMsU0FBb0I7UUFEcEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxjQUFTLEdBQVQsU0FBUyxDQUFXO0lBRTlCLENBQUM7SUFFTSxNQUFNLENBQUMsT0FBcUQ7UUFDakUsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLE9BQU8sQ0FBQztRQUUxQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ3ZELE9BQU8sQ0FBQyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3JELENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNYLE1BQU0sSUFBSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztTQUNyQztRQUNELElBQUksTUFBTSxDQUFDLGNBQWMsRUFBRTtZQUN6QixJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1NBQ3JEO0lBQ0gsQ0FBQztJQUVPLGlCQUFpQixDQUFDLFFBQWdCLEVBQUUsTUFBc0I7UUFDaEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxrQ0FBa0MsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNoRixDQUFDOytHQXpCVSw4Q0FBOEM7bUhBQTlDLDhDQUE4Qzs7QUFBOUMsOENBQThDO0lBRDFELGtCQUFrQixDQUFDLDRDQUE0QyxDQUFDO0dBQ3BELDhDQUE4QyxDQTBCMUQ7NEZBMUJZLDhDQUE4QztrQkFGMUQsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElIYW5kbGVyIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENyZWF0ZUNvbm5lY3Rpb25Gcm9tT3V0cHV0UHJlcGFyYXRpb25SZXF1ZXN0IH0gZnJvbSAnLi9jcmVhdGUtY29ubmVjdGlvbi1mcm9tLW91dHB1dC1wcmVwYXJhdGlvbi5yZXF1ZXN0JztcbmltcG9ydCB7IEZDb25uZWN0b3JCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZi1jb25uZWN0b3JzJztcbmltcG9ydCB7IENyZWF0ZUNvbm5lY3Rpb25EcmFnSGFuZGxlclJlcXVlc3QgfSBmcm9tICcuLi9jcmVhdGUtY29ubmVjdGlvbi1kcmFnLWhhbmRsZXInO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKENyZWF0ZUNvbm5lY3Rpb25Gcm9tT3V0cHV0UHJlcGFyYXRpb25SZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIENyZWF0ZUNvbm5lY3Rpb25Gcm9tT3V0cHV0UHJlcGFyYXRpb25FeGVjdXRpb25cbiAgaW1wbGVtZW50cyBJSGFuZGxlcjxDcmVhdGVDb25uZWN0aW9uRnJvbU91dHB1dFByZXBhcmF0aW9uUmVxdWVzdCwgdm9pZD4ge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZSxcbiAgICBwcml2YXRlIGZNZWRpYXRvcjogRk1lZGlhdG9yLFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogQ3JlYXRlQ29ubmVjdGlvbkZyb21PdXRwdXRQcmVwYXJhdGlvblJlcXVlc3QpOiB2b2lkIHtcbiAgICBjb25zdCB7IGV2ZW50IH0gPSByZXF1ZXN0O1xuXG4gICAgY29uc3Qgb3V0cHV0ID0gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZPdXRwdXRzLmZpbmQoKHgpID0+IHtcbiAgICAgIHJldHVybiB4Lmhvc3RFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldEVsZW1lbnQpO1xuICAgIH0pO1xuICAgIGlmICghb3V0cHV0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ091dHB1dCBub3QgZm91bmQnKTtcbiAgICB9XG4gICAgaWYgKG91dHB1dC5jYW5CZUNvbm5lY3RlZCkge1xuICAgICAgdGhpcy5jcmVhdGVEcmFnSGFuZGxlcihldmVudC5nZXRQb3NpdGlvbigpLCBvdXRwdXQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlRHJhZ0hhbmRsZXIocG9zaXRpb246IElQb2ludCwgb3V0cHV0OiBGQ29ubmVjdG9yQmFzZSk6IHZvaWQge1xuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQobmV3IENyZWF0ZUNvbm5lY3Rpb25EcmFnSGFuZGxlclJlcXVlc3QocG9zaXRpb24sIG91dHB1dCkpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,33 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { CreateConnectionFromOutputPreparationRequest } from './create-connection-from-output-preparation.request';
4
+ import { FValidatorRegister } from '@foblex/mediator';
5
+ import { isNodeOutput } from '../../../../../f-connectors';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../../../../../f-storage";
8
+ export let CreateConnectionFromOutputPreparationValidator = class CreateConnectionFromOutputPreparationValidator {
9
+ constructor(fComponentsStore) {
10
+ this.fComponentsStore = fComponentsStore;
11
+ }
12
+ handle(request) {
13
+ return this.isNodeOutput(request.event.targetElement, this.getNode(request.event));
14
+ }
15
+ getNode(event) {
16
+ return this.fComponentsStore.findNode(event.targetElement);
17
+ }
18
+ isNodeOutput(targetElement, node) {
19
+ return isNodeOutput(targetElement) && !this.getOutlets(node).length;
20
+ }
21
+ getOutlets(node) {
22
+ return this.fComponentsStore.fOutlets.filter((x) => node.isContains(x.hostElement));
23
+ }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionFromOutputPreparationValidator, 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: CreateConnectionFromOutputPreparationValidator }); }
26
+ };
27
+ CreateConnectionFromOutputPreparationValidator = __decorate([
28
+ FValidatorRegister(CreateConnectionFromOutputPreparationRequest)
29
+ ], CreateConnectionFromOutputPreparationValidator);
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionFromOutputPreparationValidator, decorators: [{
31
+ type: Injectable
32
+ }], ctorParameters: function () { return [{ type: i1.FComponentsStore }]; } });
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNvbm5lY3Rpb24tZnJvbS1vdXRwdXQtcHJlcGFyYXRpb24udmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9jb25uZWN0aW9ucy9jcmVhdGUtY29ubmVjdGlvbi9jcmVhdGUtY29ubmVjdGlvbi1wcmVwYXJhdGlvbi9jcmVhdGUtY29ubmVjdGlvbi1mcm9tLW91dHB1dC1wcmVwYXJhdGlvbi9jcmVhdGUtY29ubmVjdGlvbi1mcm9tLW91dHB1dC1wcmVwYXJhdGlvbi52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLDRDQUE0QyxFQUFFLE1BQU0scURBQXFELENBQUM7QUFFbkgsT0FBTyxFQUFFLGtCQUFrQixFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFHbEUsT0FBTyxFQUFrQixZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7O0FBSXBFLFdBQU0sOENBQThDLEdBQXBELE1BQU0sOENBQThDO0lBRXpELFlBQ1UsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFFNUMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUFxRDtRQUNqRSxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNyRixDQUFDO0lBRU8sT0FBTyxDQUFDLEtBQW9CO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFFLENBQUM7SUFDOUQsQ0FBQztJQUVPLFlBQVksQ0FBQyxhQUEwQixFQUFFLElBQWU7UUFDOUQsT0FBTyxZQUFZLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUN0RSxDQUFDO0lBRU8sVUFBVSxDQUFDLElBQWU7UUFDaEMsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUN0RixDQUFDOytHQXJCVSw4Q0FBOEM7bUhBQTlDLDhDQUE4Qzs7QUFBOUMsOENBQThDO0lBRDFELGtCQUFrQixDQUFDLDRDQUE0QyxDQUFDO0dBQ3BELDhDQUE4QyxDQXNCMUQ7NEZBdEJZLDhDQUE4QztrQkFGMUQsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENyZWF0ZUNvbm5lY3Rpb25Gcm9tT3V0cHV0UHJlcGFyYXRpb25SZXF1ZXN0IH0gZnJvbSAnLi9jcmVhdGUtY29ubmVjdGlvbi1mcm9tLW91dHB1dC1wcmVwYXJhdGlvbi5yZXF1ZXN0JztcbmltcG9ydCB7IElQb2ludGVyRXZlbnQgfSBmcm9tICdAZm9ibGV4L2RyYWctdG9vbGtpdCc7XG5pbXBvcnQgeyBGVmFsaWRhdG9yUmVnaXN0ZXIsIElWYWxpZGF0b3IgfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgRk5vZGVCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZi1ub2RlJztcbmltcG9ydCB7IEZDb25uZWN0b3JCYXNlLCBpc05vZGVPdXRwdXQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9mLWNvbm5lY3RvcnMnO1xuXG5ASW5qZWN0YWJsZSgpXG5ARlZhbGlkYXRvclJlZ2lzdGVyKENyZWF0ZUNvbm5lY3Rpb25Gcm9tT3V0cHV0UHJlcGFyYXRpb25SZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIENyZWF0ZUNvbm5lY3Rpb25Gcm9tT3V0cHV0UHJlcGFyYXRpb25WYWxpZGF0b3IgaW1wbGVtZW50cyBJVmFsaWRhdG9yPENyZWF0ZUNvbm5lY3Rpb25Gcm9tT3V0cHV0UHJlcGFyYXRpb25SZXF1ZXN0PiB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBDcmVhdGVDb25uZWN0aW9uRnJvbU91dHB1dFByZXBhcmF0aW9uUmVxdWVzdCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmlzTm9kZU91dHB1dChyZXF1ZXN0LmV2ZW50LnRhcmdldEVsZW1lbnQsIHRoaXMuZ2V0Tm9kZShyZXF1ZXN0LmV2ZW50KSk7XG4gIH1cblxuICBwcml2YXRlIGdldE5vZGUoZXZlbnQ6IElQb2ludGVyRXZlbnQpOiBGTm9kZUJhc2Uge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZmluZE5vZGUoZXZlbnQudGFyZ2V0RWxlbWVudCkhO1xuICB9XG5cbiAgcHJpdmF0ZSBpc05vZGVPdXRwdXQodGFyZ2V0RWxlbWVudDogSFRNTEVsZW1lbnQsIG5vZGU6IEZOb2RlQmFzZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc05vZGVPdXRwdXQodGFyZ2V0RWxlbWVudCkgJiYgIXRoaXMuZ2V0T3V0bGV0cyhub2RlKS5sZW5ndGg7XG4gIH1cblxuICBwcml2YXRlIGdldE91dGxldHMobm9kZTogRk5vZGVCYXNlKTogRkNvbm5lY3RvckJhc2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mT3V0bGV0cy5maWx0ZXIoKHgpID0+IG5vZGUuaXNDb250YWlucyh4Lmhvc3RFbGVtZW50KSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,42 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { isNodeOutlet, isNodeOutput } from '../../../../f-connectors';
4
+ import { CreateConnectionPreparationRequest } from './create-connection-preparation.request';
5
+ import { FExecutionRegister } from '@foblex/mediator';
6
+ import { CreateConnectionFromOutletPreparationRequest } from './create-connection-from-outlet-preparation';
7
+ import { CreateConnectionFromOutputPreparationRequest } from './create-connection-from-output-preparation';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "../../../../f-storage";
10
+ import * as i2 from "@foblex/mediator";
11
+ export let CreateConnectionPreparationExecution = class CreateConnectionPreparationExecution {
12
+ constructor(fComponentsStore, fMediator) {
13
+ this.fComponentsStore = fComponentsStore;
14
+ this.fMediator = fMediator;
15
+ }
16
+ handle(request) {
17
+ if (isNodeOutlet(request.event.targetElement)) {
18
+ this.fMediator.send(new CreateConnectionFromOutletPreparationRequest(request.event));
19
+ }
20
+ else if (this.isNodeOutput(request.event.targetElement, this.getNode(request.event))) {
21
+ this.fMediator.send(new CreateConnectionFromOutputPreparationRequest(request.event));
22
+ }
23
+ }
24
+ getNode(event) {
25
+ return this.fComponentsStore.findNode(event.targetElement);
26
+ }
27
+ isNodeOutput(targetElement, node) {
28
+ return isNodeOutput(targetElement) && !this.getOutlets(node).length;
29
+ }
30
+ getOutlets(node) {
31
+ return this.fComponentsStore.fOutlets.filter((x) => node.isContains(x.hostElement));
32
+ }
33
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionPreparationExecution, deps: [{ token: i1.FComponentsStore }, { token: i2.FMediator }], target: i0.ɵɵFactoryTarget.Injectable }); }
34
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionPreparationExecution }); }
35
+ };
36
+ CreateConnectionPreparationExecution = __decorate([
37
+ FExecutionRegister(CreateConnectionPreparationRequest)
38
+ ], CreateConnectionPreparationExecution);
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionPreparationExecution, decorators: [{
40
+ type: Injectable
41
+ }], ctorParameters: function () { return [{ type: i1.FComponentsStore }, { type: i2.FMediator }]; } });
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNvbm5lY3Rpb24tcHJlcGFyYXRpb24uZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9jb25uZWN0aW9ucy9jcmVhdGUtY29ubmVjdGlvbi9jcmVhdGUtY29ubmVjdGlvbi1wcmVwYXJhdGlvbi9jcmVhdGUtY29ubmVjdGlvbi1wcmVwYXJhdGlvbi5leGVjdXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUVBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFrQixZQUFZLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFdEYsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDN0YsT0FBTyxFQUFFLGtCQUFrQixFQUFhLE1BQU0sa0JBQWtCLENBQUM7QUFDakUsT0FBTyxFQUFFLDRDQUE0QyxFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDM0csT0FBTyxFQUFFLDRDQUE0QyxFQUFFLE1BQU0sNkNBQTZDLENBQUM7Ozs7QUFJcEcsV0FBTSxvQ0FBb0MsR0FBMUMsTUFBTSxvQ0FBb0M7SUFHL0MsWUFDVSxnQkFBa0MsRUFDbEMsU0FBb0I7UUFEcEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxjQUFTLEdBQVQsU0FBUyxDQUFXO0lBRTlCLENBQUM7SUFFTSxNQUFNLENBQUMsT0FBMkM7UUFDdkQsSUFBSSxZQUFZLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUM3QyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBTyxJQUFJLDRDQUE0QyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1NBQzVGO2FBQU0sSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7WUFDdEYsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQU8sSUFBSSw0Q0FBNEMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUM1RjtJQUNILENBQUM7SUFFTyxPQUFPLENBQUMsS0FBb0I7UUFDbEMsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUUsQ0FBQztJQUM5RCxDQUFDO0lBRU8sWUFBWSxDQUFDLGFBQTBCLEVBQUUsSUFBZTtRQUM5RCxPQUFPLFlBQVksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ3RFLENBQUM7SUFFTyxVQUFVLENBQUMsSUFBZTtRQUNoQyxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ3RGLENBQUM7K0dBM0JVLG9DQUFvQzttSEFBcEMsb0NBQW9DOztBQUFwQyxvQ0FBb0M7SUFEaEQsa0JBQWtCLENBQUMsa0NBQWtDLENBQUM7R0FDMUMsb0NBQW9DLENBNEJoRDs0RkE1Qlksb0NBQW9DO2tCQUZoRCxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUhhbmRsZXIgfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IElQb2ludGVyRXZlbnQgfSBmcm9tICdAZm9ibGV4L2RyYWctdG9vbGtpdCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZDb25uZWN0b3JCYXNlLCBpc05vZGVPdXRsZXQsIGlzTm9kZU91dHB1dCB9IGZyb20gJy4uLy4uLy4uLy4uL2YtY29ubmVjdG9ycyc7XG5pbXBvcnQgeyBGTm9kZUJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi9mLW5vZGUnO1xuaW1wb3J0IHsgQ3JlYXRlQ29ubmVjdGlvblByZXBhcmF0aW9uUmVxdWVzdCB9IGZyb20gJy4vY3JlYXRlLWNvbm5lY3Rpb24tcHJlcGFyYXRpb24ucmVxdWVzdCc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgQ3JlYXRlQ29ubmVjdGlvbkZyb21PdXRsZXRQcmVwYXJhdGlvblJlcXVlc3QgfSBmcm9tICcuL2NyZWF0ZS1jb25uZWN0aW9uLWZyb20tb3V0bGV0LXByZXBhcmF0aW9uJztcbmltcG9ydCB7IENyZWF0ZUNvbm5lY3Rpb25Gcm9tT3V0cHV0UHJlcGFyYXRpb25SZXF1ZXN0IH0gZnJvbSAnLi9jcmVhdGUtY29ubmVjdGlvbi1mcm9tLW91dHB1dC1wcmVwYXJhdGlvbic7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoQ3JlYXRlQ29ubmVjdGlvblByZXBhcmF0aW9uUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBDcmVhdGVDb25uZWN0aW9uUHJlcGFyYXRpb25FeGVjdXRpb25cbiAgaW1wbGVtZW50cyBJSGFuZGxlcjxDcmVhdGVDb25uZWN0aW9uUHJlcGFyYXRpb25SZXF1ZXN0LCB2b2lkPiB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgIHByaXZhdGUgZk1lZGlhdG9yOiBGTWVkaWF0b3IsXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBDcmVhdGVDb25uZWN0aW9uUHJlcGFyYXRpb25SZXF1ZXN0KTogdm9pZCB7XG4gICAgaWYgKGlzTm9kZU91dGxldChyZXF1ZXN0LmV2ZW50LnRhcmdldEVsZW1lbnQpKSB7XG4gICAgICB0aGlzLmZNZWRpYXRvci5zZW5kPHZvaWQ+KG5ldyBDcmVhdGVDb25uZWN0aW9uRnJvbU91dGxldFByZXBhcmF0aW9uUmVxdWVzdChyZXF1ZXN0LmV2ZW50KSk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmlzTm9kZU91dHB1dChyZXF1ZXN0LmV2ZW50LnRhcmdldEVsZW1lbnQsIHRoaXMuZ2V0Tm9kZShyZXF1ZXN0LmV2ZW50KSkpIHtcbiAgICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQ8dm9pZD4obmV3IENyZWF0ZUNvbm5lY3Rpb25Gcm9tT3V0cHV0UHJlcGFyYXRpb25SZXF1ZXN0KHJlcXVlc3QuZXZlbnQpKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldE5vZGUoZXZlbnQ6IElQb2ludGVyRXZlbnQpOiBGTm9kZUJhc2Uge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZmluZE5vZGUoZXZlbnQudGFyZ2V0RWxlbWVudCkhO1xuICB9XG5cbiAgcHJpdmF0ZSBpc05vZGVPdXRwdXQodGFyZ2V0RWxlbWVudDogSFRNTEVsZW1lbnQsIG5vZGU6IEZOb2RlQmFzZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc05vZGVPdXRwdXQodGFyZ2V0RWxlbWVudCkgJiYgIXRoaXMuZ2V0T3V0bGV0cyhub2RlKS5sZW5ndGg7XG4gIH1cblxuICBwcml2YXRlIGdldE91dGxldHMobm9kZTogRk5vZGVCYXNlKTogRkNvbm5lY3RvckJhc2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mT3V0bGV0cy5maWx0ZXIoKHgpID0+IG5vZGUuaXNDb250YWlucyh4Lmhvc3RFbGVtZW50KSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,31 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { CreateConnectionPreparationRequest } from './create-connection-preparation.request';
4
+ import { FValidatorRegister } from '@foblex/mediator';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../../../f-storage";
7
+ import * as i2 from "../../../f-draggable-data-context";
8
+ export let CreateConnectionPreparationValidator = class CreateConnectionPreparationValidator {
9
+ constructor(fComponentsStore, fDraggableDataContext) {
10
+ this.fComponentsStore = fComponentsStore;
11
+ this.fDraggableDataContext = fDraggableDataContext;
12
+ }
13
+ handle(request) {
14
+ return !!this.getNode(request.event) && this.isValidConditions();
15
+ }
16
+ getNode(event) {
17
+ return this.fComponentsStore.findNode(event.targetElement);
18
+ }
19
+ isValidConditions() {
20
+ return !this.fDraggableDataContext.draggableItems.length && !!this.fComponentsStore.fTempConnection;
21
+ }
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionPreparationValidator, deps: [{ token: i1.FComponentsStore }, { token: i2.FDraggableDataContext }], target: i0.ɵɵFactoryTarget.Injectable }); }
23
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionPreparationValidator }); }
24
+ };
25
+ CreateConnectionPreparationValidator = __decorate([
26
+ FValidatorRegister(CreateConnectionPreparationRequest)
27
+ ], CreateConnectionPreparationValidator);
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateConnectionPreparationValidator, decorators: [{
29
+ type: Injectable
30
+ }], ctorParameters: function () { return [{ type: i1.FComponentsStore }, { type: i2.FDraggableDataContext }]; } });
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNvbm5lY3Rpb24tcHJlcGFyYXRpb24udmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9jb25uZWN0aW9ucy9jcmVhdGUtY29ubmVjdGlvbi9jcmVhdGUtY29ubmVjdGlvbi1wcmVwYXJhdGlvbi9jcmVhdGUtY29ubmVjdGlvbi1wcmVwYXJhdGlvbi52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDN0YsT0FBTyxFQUFFLGtCQUFrQixFQUFjLE1BQU0sa0JBQWtCLENBQUM7Ozs7QUFRM0QsV0FBTSxvQ0FBb0MsR0FBMUMsTUFBTSxvQ0FBb0M7SUFFL0MsWUFDVSxnQkFBa0MsRUFDbEMscUJBQTRDO1FBRDVDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtJQUV0RCxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQTJDO1FBQ3ZELE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQ25FLENBQUM7SUFFTyxPQUFPLENBQUMsS0FBb0I7UUFDbEMsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRU8saUJBQWlCO1FBQ3ZCLE9BQU8sQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsY0FBYyxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQztJQUN0RyxDQUFDOytHQWxCVSxvQ0FBb0M7bUhBQXBDLG9DQUFvQzs7QUFBcEMsb0NBQW9DO0lBRGhELGtCQUFrQixDQUFDLGtDQUFrQyxDQUFDO0dBQzFDLG9DQUFvQyxDQW1CaEQ7NEZBbkJZLG9DQUFvQztrQkFGaEQsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENyZWF0ZUNvbm5lY3Rpb25QcmVwYXJhdGlvblJlcXVlc3QgfSBmcm9tICcuL2NyZWF0ZS1jb25uZWN0aW9uLXByZXBhcmF0aW9uLnJlcXVlc3QnO1xuaW1wb3J0IHsgRlZhbGlkYXRvclJlZ2lzdGVyLCBJVmFsaWRhdG9yIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBGTm9kZUJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi9mLW5vZGUnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBJUG9pbnRlckV2ZW50IH0gZnJvbSAnQGZvYmxleC9kcmFnLXRvb2xraXQnO1xuaW1wb3J0IHsgRkRyYWdnYWJsZURhdGFDb250ZXh0IH0gZnJvbSAnLi4vLi4vLi4vZi1kcmFnZ2FibGUtZGF0YS1jb250ZXh0JztcblxuQEluamVjdGFibGUoKVxuQEZWYWxpZGF0b3JSZWdpc3RlcihDcmVhdGVDb25uZWN0aW9uUHJlcGFyYXRpb25SZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIENyZWF0ZUNvbm5lY3Rpb25QcmVwYXJhdGlvblZhbGlkYXRvciBpbXBsZW1lbnRzIElWYWxpZGF0b3I8Q3JlYXRlQ29ubmVjdGlvblByZXBhcmF0aW9uUmVxdWVzdD4ge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZSxcbiAgICBwcml2YXRlIGZEcmFnZ2FibGVEYXRhQ29udGV4dDogRkRyYWdnYWJsZURhdGFDb250ZXh0XG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBDcmVhdGVDb25uZWN0aW9uUHJlcGFyYXRpb25SZXF1ZXN0KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5nZXROb2RlKHJlcXVlc3QuZXZlbnQpICYmIHRoaXMuaXNWYWxpZENvbmRpdGlvbnMoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Tm9kZShldmVudDogSVBvaW50ZXJFdmVudCk6IEZOb2RlQmFzZSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5maW5kTm9kZShldmVudC50YXJnZXRFbGVtZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgaXNWYWxpZENvbmRpdGlvbnMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5kcmFnZ2FibGVJdGVtcy5sZW5ndGggJiYgISF0aGlzLmZDb21wb25lbnRzU3RvcmUuZlRlbXBDb25uZWN0aW9uO1xuICB9XG59XG4iXX0=
@@ -2,6 +2,12 @@ import { FindClosestInputUsingSnapThresholdRequest, GetAllCanBeConnectedInputPos
2
2
  import { EFConnectableSide } from '../../../f-connectors';
3
3
  import { RoundedRect, PointExtensions, RectExtensions, Point, } from '@foblex/2d';
4
4
  export class CreateConnectionDragHandler {
5
+ get fConnection() {
6
+ return this.fComponentsStore.fTempConnection;
7
+ }
8
+ get fSnapConnection() {
9
+ return this.fComponentsStore.fSnapConnection;
10
+ }
5
11
  constructor(fMediator, fComponentsStore, fOutput, onPointerDownPosition) {
6
12
  this.fMediator = fMediator;
7
13
  this.fComponentsStore = fComponentsStore;
@@ -10,12 +16,6 @@ export class CreateConnectionDragHandler {
10
16
  this.toConnectorRect = new RoundedRect();
11
17
  this.canBeConnectedInputs = [];
12
18
  }
13
- get fConnection() {
14
- return this.fComponentsStore.fTempConnection;
15
- }
16
- get fSnapConnection() {
17
- return this.fComponentsStore.fSnapConnection;
18
- }
19
19
  initialize() {
20
20
  if (this.fSnapConnection) {
21
21
  this.fSnapConnection.fOutputId = this.fOutput.id;
@@ -31,7 +31,9 @@ export class CreateConnectionDragHandler {
31
31
  }
32
32
  move(difference) {
33
33
  this.drawTempConnection(this.toConnectorRect.addPoint(difference));
34
- this.drawSnapConnection(this.getClosetInput(difference));
34
+ if (this.fSnapConnection) {
35
+ this.drawSnapConnection(this.getClosetInput(difference));
36
+ }
35
37
  }
36
38
  drawTempConnection(fInputRect) {
37
39
  const line = this.fMediator.send(new GetConnectionLineRequest(this.fOutputWithRect.fRect, fInputRect, this.fConnection.fBehavior, this.fOutputWithRect.fConnector.fConnectableSide, EFConnectableSide.TOP));
@@ -50,6 +52,9 @@ export class CreateConnectionDragHandler {
50
52
  }
51
53
  }
52
54
  getClosetInput(difference) {
55
+ if (!this.fSnapConnection) {
56
+ return undefined;
57
+ }
53
58
  return this.fMediator.send(new FindClosestInputUsingSnapThresholdRequest(Point.fromPoint(this.toConnectorRect).add(difference), this.canBeConnectedInputs, this.fSnapConnection.fSnapThreshold));
54
59
  }
55
60
  complete() {
@@ -58,4 +63,4 @@ export class CreateConnectionDragHandler {
58
63
  this.fSnapConnection?.hide();
59
64
  }
60
65
  }
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNvbm5lY3Rpb24uZHJhZy1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9jb25uZWN0aW9ucy9jcmVhdGUtY29ubmVjdGlvbi9jcmVhdGUtY29ubmVjdGlvbi5kcmFnLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLHlDQUF5QyxFQUN6Qyx5Q0FBeUMsRUFDekMsd0JBQXdCLEVBQ3hCLDJCQUEyQixFQUU1QixNQUFNLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFBRSxpQkFBaUIsRUFBa0IsTUFBTSx1QkFBdUIsQ0FBQztBQUUxRSxPQUFPLEVBQUUsV0FBVyxFQUFpQixlQUFlLEVBQUUsY0FBYyxFQUFFLEtBQUssR0FBRyxNQUFNLFlBQVksQ0FBQztBQUdqRyxNQUFNLE9BQU8sMkJBQTJCO0lBZ0J0QyxZQUNVLFNBQW9CLEVBQ3BCLGdCQUFrQyxFQUNsQyxPQUF1QixFQUN2QixxQkFBNkI7UUFIN0IsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNwQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLFlBQU8sR0FBUCxPQUFPLENBQWdCO1FBQ3ZCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBUTtRQWxCL0Isb0JBQWUsR0FBZ0IsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQVlqRCx5QkFBb0IsR0FBeUIsRUFBRSxDQUFDO0lBUXhELENBQUM7SUFsQkQsSUFBVyxXQUFXO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWdCLENBQUM7SUFDaEQsQ0FBQztJQUVELElBQVksZUFBZTtRQUN6QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUEyQyxDQUFDO0lBQzNFLENBQUM7SUFjTSxVQUFVO1FBQ2YsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ2pELElBQUksQ0FBQyxlQUFlLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDbEMsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUM3QyxJQUFJLHlDQUF5QyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQy9ELENBQUM7U0FDSDtRQUNELElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQzdDLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLENBQUM7UUFHOUIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBcUIsSUFBSSwyQkFBMkIsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUU5RyxJQUFJLENBQUMsZUFBZSxHQUFHLFdBQVcsQ0FBQyxRQUFRLENBQ3pDLGNBQWMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDLENBQ3RGLENBQUM7UUFFRixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVNLElBQUksQ0FBQyxVQUFrQjtRQUM1QixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUNuRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxVQUF1QjtRQUNoRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBUSxJQUFJLHdCQUF3QixDQUNoRSxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssRUFDMUIsVUFBVSxFQUNWLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUMxQixJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsRUFDaEQsaUJBQWlCLENBQUMsR0FBRyxDQUN0QixDQUNGLENBQUM7UUFFRixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsaUJBQWlCLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDNUgsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRU8sa0JBQWtCLENBQUMsY0FBOEM7UUFDdkUsSUFBSSxjQUFjLEVBQUU7WUFDbEIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQVEsSUFBSSx3QkFBd0IsQ0FDaEUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQzFCLGNBQWMsQ0FBQyxLQUFLLEVBQ3BCLElBQUksQ0FBQyxlQUFnQixDQUFDLFNBQVMsRUFDL0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLEVBQ2hELGNBQWMsQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLENBQzNDLENBQ0YsQ0FBQztZQUNGLElBQUksQ0FBQyxlQUFnQixDQUFDLElBQUksRUFBRSxDQUFDO1lBQzdCLElBQUksQ0FBQyxlQUFnQixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsY0FBYyxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1lBQ3RKLElBQUksQ0FBQyxlQUFnQixDQUFDLE1BQU0sRUFBRSxDQUFDO1NBQ2hDO2FBQU07WUFDTCxJQUFJLENBQUMsZUFBZSxFQUFFLElBQUksRUFBRSxDQUFDO1NBQzlCO0lBQ0gsQ0FBQztJQUVNLGNBQWMsQ0FBQyxVQUFrQjtRQUN0QyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUN4QixJQUFJLHlDQUF5QyxDQUMzQyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQ3JELElBQUksQ0FBQyxvQkFBb0IsRUFDekIsSUFBSSxDQUFDLGVBQWdCLENBQUMsY0FBYyxDQUNyQyxDQUNGLENBQUM7SUFDSixDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsZUFBZSxFQUFFLElBQUksRUFBRSxDQUFDO0lBQy9CLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElEcmFnZ2FibGVJdGVtIH0gZnJvbSAnLi4vLi4vaS1kcmFnZ2FibGUtaXRlbSc7XG5pbXBvcnQge1xuICBGaW5kQ2xvc2VzdElucHV0VXNpbmdTbmFwVGhyZXNob2xkUmVxdWVzdCxcbiAgR2V0QWxsQ2FuQmVDb25uZWN0ZWRJbnB1dFBvc2l0aW9uc1JlcXVlc3QsXG4gIEdldENvbm5lY3Rpb25MaW5lUmVxdWVzdCxcbiAgR2V0Q29ubmVjdG9yV2l0aFJlY3RSZXF1ZXN0LFxuICBJQ29ubmVjdG9yV2l0aFJlY3Rcbn0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IEZDb25uZWN0aW9uQmFzZSwgRlNuYXBDb25uZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vZi1jb25uZWN0aW9uJztcbmltcG9ydCB7IEVGQ29ubmVjdGFibGVTaWRlLCBGQ29ubmVjdG9yQmFzZSB9IGZyb20gJy4uLy4uLy4uL2YtY29ubmVjdG9ycyc7XG5pbXBvcnQgeyBGTWVkaWF0b3IgfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IFJvdW5kZWRSZWN0LCBJTGluZSwgSVBvaW50LCBQb2ludEV4dGVuc2lvbnMsIFJlY3RFeHRlbnNpb25zLCBQb2ludCwgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuXG5leHBvcnQgY2xhc3MgQ3JlYXRlQ29ubmVjdGlvbkRyYWdIYW5kbGVyIGltcGxlbWVudHMgSURyYWdnYWJsZUl0ZW0ge1xuXG4gIHByaXZhdGUgdG9Db25uZWN0b3JSZWN0OiBSb3VuZGVkUmVjdCA9IG5ldyBSb3VuZGVkUmVjdCgpO1xuXG4gIHB1YmxpYyBnZXQgZkNvbm5lY3Rpb24oKTogRkNvbm5lY3Rpb25CYXNlIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZUZW1wQ29ubmVjdGlvbiE7XG4gIH1cblxuICBwcml2YXRlIGdldCBmU25hcENvbm5lY3Rpb24oKTogRlNuYXBDb25uZWN0aW9uQ29tcG9uZW50IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZTbmFwQ29ubmVjdGlvbiBhcyBGU25hcENvbm5lY3Rpb25Db21wb25lbnQ7XG4gIH1cblxuICBwcml2YXRlIGZPdXRwdXRXaXRoUmVjdCE6IElDb25uZWN0b3JXaXRoUmVjdDtcblxuICBwcml2YXRlIGNhbkJlQ29ubmVjdGVkSW5wdXRzOiBJQ29ubmVjdG9yV2l0aFJlY3RbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZk1lZGlhdG9yOiBGTWVkaWF0b3IsXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgIHByaXZhdGUgZk91dHB1dDogRkNvbm5lY3RvckJhc2UsXG4gICAgcHJpdmF0ZSBvblBvaW50ZXJEb3duUG9zaXRpb246IElQb2ludCxcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaW5pdGlhbGl6ZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5mU25hcENvbm5lY3Rpb24pIHtcbiAgICAgIHRoaXMuZlNuYXBDb25uZWN0aW9uLmZPdXRwdXRJZCA9IHRoaXMuZk91dHB1dC5pZDtcbiAgICAgIHRoaXMuZlNuYXBDb25uZWN0aW9uLmluaXRpYWxpemUoKTtcbiAgICAgIHRoaXMuY2FuQmVDb25uZWN0ZWRJbnB1dHMgPSB0aGlzLmZNZWRpYXRvci5zZW5kPElDb25uZWN0b3JXaXRoUmVjdFtdPihcbiAgICAgICAgbmV3IEdldEFsbENhbkJlQ29ubmVjdGVkSW5wdXRQb3NpdGlvbnNSZXF1ZXN0KHRoaXMuZk91dHB1dC5pZClcbiAgICAgICk7XG4gICAgfVxuICAgIHRoaXMuZkNvbm5lY3Rpb24uZk91dHB1dElkID0gdGhpcy5mT3V0cHV0LmlkO1xuICAgIHRoaXMuZkNvbm5lY3Rpb24uaW5pdGlhbGl6ZSgpO1xuXG5cbiAgICB0aGlzLmZPdXRwdXRXaXRoUmVjdCA9IHRoaXMuZk1lZGlhdG9yLnNlbmQ8SUNvbm5lY3RvcldpdGhSZWN0PihuZXcgR2V0Q29ubmVjdG9yV2l0aFJlY3RSZXF1ZXN0KHRoaXMuZk91dHB1dCkpO1xuXG4gICAgdGhpcy50b0Nvbm5lY3RvclJlY3QgPSBSb3VuZGVkUmVjdC5mcm9tUmVjdChcbiAgICAgIFJlY3RFeHRlbnNpb25zLmluaXRpYWxpemUodGhpcy5vblBvaW50ZXJEb3duUG9zaXRpb24ueCwgdGhpcy5vblBvaW50ZXJEb3duUG9zaXRpb24ueSlcbiAgICApO1xuXG4gICAgdGhpcy5mQ29ubmVjdGlvbi5zaG93KCk7XG4gICAgdGhpcy5tb3ZlKFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCkpO1xuICB9XG5cbiAgcHVibGljIG1vdmUoZGlmZmVyZW5jZTogSVBvaW50KTogdm9pZCB7XG4gICAgdGhpcy5kcmF3VGVtcENvbm5lY3Rpb24odGhpcy50b0Nvbm5lY3RvclJlY3QuYWRkUG9pbnQoZGlmZmVyZW5jZSkpO1xuICAgIHRoaXMuZHJhd1NuYXBDb25uZWN0aW9uKHRoaXMuZ2V0Q2xvc2V0SW5wdXQoZGlmZmVyZW5jZSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBkcmF3VGVtcENvbm5lY3Rpb24oZklucHV0UmVjdDogUm91bmRlZFJlY3QpOiB2b2lkIHtcbiAgICBjb25zdCBsaW5lID0gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJTGluZT4obmV3IEdldENvbm5lY3Rpb25MaW5lUmVxdWVzdChcbiAgICAgICAgdGhpcy5mT3V0cHV0V2l0aFJlY3QuZlJlY3QsXG4gICAgICAgIGZJbnB1dFJlY3QsXG4gICAgICAgIHRoaXMuZkNvbm5lY3Rpb24uZkJlaGF2aW9yLFxuICAgICAgICB0aGlzLmZPdXRwdXRXaXRoUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsXG4gICAgICAgIEVGQ29ubmVjdGFibGVTaWRlLlRPUCxcbiAgICAgIClcbiAgICApO1xuXG4gICAgdGhpcy5mQ29ubmVjdGlvbi5zZXRMaW5lKGxpbmUucG9pbnQxLCB0aGlzLmZPdXRwdXRXaXRoUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsIGxpbmUucG9pbnQyLCBFRkNvbm5lY3RhYmxlU2lkZS5UT1ApO1xuICAgIHRoaXMuZkNvbm5lY3Rpb24ucmVkcmF3KCk7XG4gIH1cblxuICBwcml2YXRlIGRyYXdTbmFwQ29ubmVjdGlvbihmSW5wdXRXaXRoUmVjdDogSUNvbm5lY3RvcldpdGhSZWN0IHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgaWYgKGZJbnB1dFdpdGhSZWN0KSB7XG4gICAgICBjb25zdCBsaW5lID0gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJTGluZT4obmV3IEdldENvbm5lY3Rpb25MaW5lUmVxdWVzdChcbiAgICAgICAgICB0aGlzLmZPdXRwdXRXaXRoUmVjdC5mUmVjdCxcbiAgICAgICAgICBmSW5wdXRXaXRoUmVjdC5mUmVjdCxcbiAgICAgICAgICB0aGlzLmZTbmFwQ29ubmVjdGlvbiEuZkJlaGF2aW9yLFxuICAgICAgICAgIHRoaXMuZk91dHB1dFdpdGhSZWN0LmZDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSxcbiAgICAgICAgICBmSW5wdXRXaXRoUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGVcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICAgIHRoaXMuZlNuYXBDb25uZWN0aW9uIS5zaG93KCk7XG4gICAgICB0aGlzLmZTbmFwQ29ubmVjdGlvbiEuc2V0TGluZShsaW5lLnBvaW50MSwgdGhpcy5mT3V0cHV0V2l0aFJlY3QuZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlLCBsaW5lLnBvaW50MiwgZklucHV0V2l0aFJlY3QuZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlKTtcbiAgICAgIHRoaXMuZlNuYXBDb25uZWN0aW9uIS5yZWRyYXcoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5mU25hcENvbm5lY3Rpb24/LmhpZGUoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0Q2xvc2V0SW5wdXQoZGlmZmVyZW5jZTogSVBvaW50KTogSUNvbm5lY3RvcldpdGhSZWN0IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJQ29ubmVjdG9yV2l0aFJlY3QgfCB1bmRlZmluZWQ+KFxuICAgICAgbmV3IEZpbmRDbG9zZXN0SW5wdXRVc2luZ1NuYXBUaHJlc2hvbGRSZXF1ZXN0KFxuICAgICAgICBQb2ludC5mcm9tUG9pbnQodGhpcy50b0Nvbm5lY3RvclJlY3QpLmFkZChkaWZmZXJlbmNlKSxcbiAgICAgICAgdGhpcy5jYW5CZUNvbm5lY3RlZElucHV0cyxcbiAgICAgICAgdGhpcy5mU25hcENvbm5lY3Rpb24hLmZTbmFwVGhyZXNob2xkXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBjb21wbGV0ZSgpOiB2b2lkIHtcbiAgICB0aGlzLmZDb25uZWN0aW9uLnJlZHJhdygpO1xuICAgIHRoaXMuZkNvbm5lY3Rpb24uaGlkZSgpO1xuICAgIHRoaXMuZlNuYXBDb25uZWN0aW9uPy5oaWRlKCk7XG4gIH1cbn1cbiJdfQ==
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNvbm5lY3Rpb24uZHJhZy1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9jb25uZWN0aW9ucy9jcmVhdGUtY29ubmVjdGlvbi9jcmVhdGUtY29ubmVjdGlvbi5kcmFnLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLHlDQUF5QyxFQUN6Qyx5Q0FBeUMsRUFDekMsd0JBQXdCLEVBQ3hCLDJCQUEyQixFQUU1QixNQUFNLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFBRSxpQkFBaUIsRUFBa0IsTUFBTSx1QkFBdUIsQ0FBQztBQUUxRSxPQUFPLEVBQUUsV0FBVyxFQUFpQixlQUFlLEVBQUUsY0FBYyxFQUFFLEtBQUssR0FBRyxNQUFNLFlBQVksQ0FBQztBQUdqRyxNQUFNLE9BQU8sMkJBQTJCO0lBSXRDLElBQVcsV0FBVztRQUNwQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFnQixDQUFDO0lBQ2hELENBQUM7SUFFRCxJQUFZLGVBQWU7UUFDekIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZUFBMkMsQ0FBQztJQUMzRSxDQUFDO0lBTUQsWUFDVSxTQUFvQixFQUNwQixnQkFBa0MsRUFDbEMsT0FBdUIsRUFDdkIscUJBQTZCO1FBSDdCLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDcEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxZQUFPLEdBQVAsT0FBTyxDQUFnQjtRQUN2QiwwQkFBcUIsR0FBckIscUJBQXFCLENBQVE7UUFsQi9CLG9CQUFlLEdBQWdCLElBQUksV0FBVyxFQUFFLENBQUM7UUFZakQseUJBQW9CLEdBQXlCLEVBQUUsQ0FBQztJQVF4RCxDQUFDO0lBRU0sVUFBVTtRQUNmLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN4QixJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNqRCxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FDN0MsSUFBSSx5Q0FBeUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUMvRCxDQUFDO1NBQ0g7UUFDRCxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUM3QyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBRzlCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQXFCLElBQUksMkJBQTJCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFFOUcsSUFBSSxDQUFDLGVBQWUsR0FBRyxXQUFXLENBQUMsUUFBUSxDQUN6QyxjQUFjLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxDQUN0RixDQUFDO1FBRUYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFTSxJQUFJLENBQUMsVUFBa0I7UUFDNUIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDbkUsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7U0FDMUQ7SUFDSCxDQUFDO0lBRU8sa0JBQWtCLENBQUMsVUFBdUI7UUFDaEQsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQVEsSUFBSSx3QkFBd0IsQ0FDaEUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQzFCLFVBQVUsRUFDVixJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFDMUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLEVBQ2hELGlCQUFpQixDQUFDLEdBQUcsQ0FDdEIsQ0FDRixDQUFDO1FBRUYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzVILElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVPLGtCQUFrQixDQUFDLGNBQThDO1FBQ3ZFLElBQUksY0FBYyxFQUFFO1lBQ2xCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFRLElBQUksd0JBQXdCLENBQ2hFLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUMxQixjQUFjLENBQUMsS0FBSyxFQUNwQixJQUFJLENBQUMsZUFBZ0IsQ0FBQyxTQUFTLEVBQy9CLElBQUksQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLGdCQUFnQixFQUNoRCxjQUFjLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUMzQyxDQUNGLENBQUM7WUFDRixJQUFJLENBQUMsZUFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsZUFBZ0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLGNBQWMsQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUN0SixJQUFJLENBQUMsZUFBZ0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQztTQUNoQzthQUFNO1lBQ0wsSUFBSSxDQUFDLGVBQWUsRUFBRSxJQUFJLEVBQUUsQ0FBQztTQUM5QjtJQUNILENBQUM7SUFFTSxjQUFjLENBQUMsVUFBa0I7UUFDdEMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDekIsT0FBTyxTQUFTLENBQUM7U0FDbEI7UUFDRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUN4QixJQUFJLHlDQUF5QyxDQUMzQyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQ3JELElBQUksQ0FBQyxvQkFBb0IsRUFDekIsSUFBSSxDQUFDLGVBQWdCLENBQUMsY0FBYyxDQUNyQyxDQUNGLENBQUM7SUFDSixDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsZUFBZSxFQUFFLElBQUksRUFBRSxDQUFDO0lBQy9CLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElEcmFnZ2FibGVJdGVtIH0gZnJvbSAnLi4vLi4vaS1kcmFnZ2FibGUtaXRlbSc7XG5pbXBvcnQge1xuICBGaW5kQ2xvc2VzdElucHV0VXNpbmdTbmFwVGhyZXNob2xkUmVxdWVzdCxcbiAgR2V0QWxsQ2FuQmVDb25uZWN0ZWRJbnB1dFBvc2l0aW9uc1JlcXVlc3QsXG4gIEdldENvbm5lY3Rpb25MaW5lUmVxdWVzdCxcbiAgR2V0Q29ubmVjdG9yV2l0aFJlY3RSZXF1ZXN0LFxuICBJQ29ubmVjdG9yV2l0aFJlY3Rcbn0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IEZDb25uZWN0aW9uQmFzZSwgRlNuYXBDb25uZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vZi1jb25uZWN0aW9uJztcbmltcG9ydCB7IEVGQ29ubmVjdGFibGVTaWRlLCBGQ29ubmVjdG9yQmFzZSB9IGZyb20gJy4uLy4uLy4uL2YtY29ubmVjdG9ycyc7XG5pbXBvcnQgeyBGTWVkaWF0b3IgfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IFJvdW5kZWRSZWN0LCBJTGluZSwgSVBvaW50LCBQb2ludEV4dGVuc2lvbnMsIFJlY3RFeHRlbnNpb25zLCBQb2ludCwgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuXG5leHBvcnQgY2xhc3MgQ3JlYXRlQ29ubmVjdGlvbkRyYWdIYW5kbGVyIGltcGxlbWVudHMgSURyYWdnYWJsZUl0ZW0ge1xuXG4gIHByaXZhdGUgdG9Db25uZWN0b3JSZWN0OiBSb3VuZGVkUmVjdCA9IG5ldyBSb3VuZGVkUmVjdCgpO1xuXG4gIHB1YmxpYyBnZXQgZkNvbm5lY3Rpb24oKTogRkNvbm5lY3Rpb25CYXNlIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZUZW1wQ29ubmVjdGlvbiE7XG4gIH1cblxuICBwcml2YXRlIGdldCBmU25hcENvbm5lY3Rpb24oKTogRlNuYXBDb25uZWN0aW9uQ29tcG9uZW50IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZTbmFwQ29ubmVjdGlvbiBhcyBGU25hcENvbm5lY3Rpb25Db21wb25lbnQ7XG4gIH1cblxuICBwcml2YXRlIGZPdXRwdXRXaXRoUmVjdCE6IElDb25uZWN0b3JXaXRoUmVjdDtcblxuICBwcml2YXRlIGNhbkJlQ29ubmVjdGVkSW5wdXRzOiBJQ29ubmVjdG9yV2l0aFJlY3RbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZk1lZGlhdG9yOiBGTWVkaWF0b3IsXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgIHByaXZhdGUgZk91dHB1dDogRkNvbm5lY3RvckJhc2UsXG4gICAgcHJpdmF0ZSBvblBvaW50ZXJEb3duUG9zaXRpb246IElQb2ludCxcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaW5pdGlhbGl6ZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5mU25hcENvbm5lY3Rpb24pIHtcbiAgICAgIHRoaXMuZlNuYXBDb25uZWN0aW9uLmZPdXRwdXRJZCA9IHRoaXMuZk91dHB1dC5pZDtcbiAgICAgIHRoaXMuZlNuYXBDb25uZWN0aW9uLmluaXRpYWxpemUoKTtcbiAgICAgIHRoaXMuY2FuQmVDb25uZWN0ZWRJbnB1dHMgPSB0aGlzLmZNZWRpYXRvci5zZW5kPElDb25uZWN0b3JXaXRoUmVjdFtdPihcbiAgICAgICAgbmV3IEdldEFsbENhbkJlQ29ubmVjdGVkSW5wdXRQb3NpdGlvbnNSZXF1ZXN0KHRoaXMuZk91dHB1dC5pZClcbiAgICAgICk7XG4gICAgfVxuICAgIHRoaXMuZkNvbm5lY3Rpb24uZk91dHB1dElkID0gdGhpcy5mT3V0cHV0LmlkO1xuICAgIHRoaXMuZkNvbm5lY3Rpb24uaW5pdGlhbGl6ZSgpO1xuXG5cbiAgICB0aGlzLmZPdXRwdXRXaXRoUmVjdCA9IHRoaXMuZk1lZGlhdG9yLnNlbmQ8SUNvbm5lY3RvcldpdGhSZWN0PihuZXcgR2V0Q29ubmVjdG9yV2l0aFJlY3RSZXF1ZXN0KHRoaXMuZk91dHB1dCkpO1xuXG4gICAgdGhpcy50b0Nvbm5lY3RvclJlY3QgPSBSb3VuZGVkUmVjdC5mcm9tUmVjdChcbiAgICAgIFJlY3RFeHRlbnNpb25zLmluaXRpYWxpemUodGhpcy5vblBvaW50ZXJEb3duUG9zaXRpb24ueCwgdGhpcy5vblBvaW50ZXJEb3duUG9zaXRpb24ueSlcbiAgICApO1xuXG4gICAgdGhpcy5mQ29ubmVjdGlvbi5zaG93KCk7XG4gICAgdGhpcy5tb3ZlKFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCkpO1xuICB9XG5cbiAgcHVibGljIG1vdmUoZGlmZmVyZW5jZTogSVBvaW50KTogdm9pZCB7XG4gICAgdGhpcy5kcmF3VGVtcENvbm5lY3Rpb24odGhpcy50b0Nvbm5lY3RvclJlY3QuYWRkUG9pbnQoZGlmZmVyZW5jZSkpO1xuICAgIGlmICh0aGlzLmZTbmFwQ29ubmVjdGlvbikge1xuICAgICAgdGhpcy5kcmF3U25hcENvbm5lY3Rpb24odGhpcy5nZXRDbG9zZXRJbnB1dChkaWZmZXJlbmNlKSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBkcmF3VGVtcENvbm5lY3Rpb24oZklucHV0UmVjdDogUm91bmRlZFJlY3QpOiB2b2lkIHtcbiAgICBjb25zdCBsaW5lID0gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJTGluZT4obmV3IEdldENvbm5lY3Rpb25MaW5lUmVxdWVzdChcbiAgICAgICAgdGhpcy5mT3V0cHV0V2l0aFJlY3QuZlJlY3QsXG4gICAgICAgIGZJbnB1dFJlY3QsXG4gICAgICAgIHRoaXMuZkNvbm5lY3Rpb24uZkJlaGF2aW9yLFxuICAgICAgICB0aGlzLmZPdXRwdXRXaXRoUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsXG4gICAgICAgIEVGQ29ubmVjdGFibGVTaWRlLlRPUCxcbiAgICAgIClcbiAgICApO1xuXG4gICAgdGhpcy5mQ29ubmVjdGlvbi5zZXRMaW5lKGxpbmUucG9pbnQxLCB0aGlzLmZPdXRwdXRXaXRoUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsIGxpbmUucG9pbnQyLCBFRkNvbm5lY3RhYmxlU2lkZS5UT1ApO1xuICAgIHRoaXMuZkNvbm5lY3Rpb24ucmVkcmF3KCk7XG4gIH1cblxuICBwcml2YXRlIGRyYXdTbmFwQ29ubmVjdGlvbihmSW5wdXRXaXRoUmVjdDogSUNvbm5lY3RvcldpdGhSZWN0IHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgaWYgKGZJbnB1dFdpdGhSZWN0KSB7XG4gICAgICBjb25zdCBsaW5lID0gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJTGluZT4obmV3IEdldENvbm5lY3Rpb25MaW5lUmVxdWVzdChcbiAgICAgICAgICB0aGlzLmZPdXRwdXRXaXRoUmVjdC5mUmVjdCxcbiAgICAgICAgICBmSW5wdXRXaXRoUmVjdC5mUmVjdCxcbiAgICAgICAgICB0aGlzLmZTbmFwQ29ubmVjdGlvbiEuZkJlaGF2aW9yLFxuICAgICAgICAgIHRoaXMuZk91dHB1dFdpdGhSZWN0LmZDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSxcbiAgICAgICAgICBmSW5wdXRXaXRoUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGVcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICAgIHRoaXMuZlNuYXBDb25uZWN0aW9uIS5zaG93KCk7XG4gICAgICB0aGlzLmZTbmFwQ29ubmVjdGlvbiEuc2V0TGluZShsaW5lLnBvaW50MSwgdGhpcy5mT3V0cHV0V2l0aFJlY3QuZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlLCBsaW5lLnBvaW50MiwgZklucHV0V2l0aFJlY3QuZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlKTtcbiAgICAgIHRoaXMuZlNuYXBDb25uZWN0aW9uIS5yZWRyYXcoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5mU25hcENvbm5lY3Rpb24/LmhpZGUoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0Q2xvc2V0SW5wdXQoZGlmZmVyZW5jZTogSVBvaW50KTogSUNvbm5lY3RvcldpdGhSZWN0IHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoIXRoaXMuZlNuYXBDb25uZWN0aW9uKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJQ29ubmVjdG9yV2l0aFJlY3QgfCB1bmRlZmluZWQ+KFxuICAgICAgbmV3IEZpbmRDbG9zZXN0SW5wdXRVc2luZ1NuYXBUaHJlc2hvbGRSZXF1ZXN0KFxuICAgICAgICBQb2ludC5mcm9tUG9pbnQodGhpcy50b0Nvbm5lY3RvclJlY3QpLmFkZChkaWZmZXJlbmNlKSxcbiAgICAgICAgdGhpcy5jYW5CZUNvbm5lY3RlZElucHV0cyxcbiAgICAgICAgdGhpcy5mU25hcENvbm5lY3Rpb24hLmZTbmFwVGhyZXNob2xkXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBjb21wbGV0ZSgpOiB2b2lkIHtcbiAgICB0aGlzLmZDb25uZWN0aW9uLnJlZHJhdygpO1xuICAgIHRoaXMuZkNvbm5lY3Rpb24uaGlkZSgpO1xuICAgIHRoaXMuZlNuYXBDb25uZWN0aW9uPy5oaWRlKCk7XG4gIH1cbn1cbiJdfQ==