@foblex/flow 12.6.1 → 12.6.3

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 (727) hide show
  1. package/bundles/foblex-flow.umd.js +9635 -0
  2. package/bundles/foblex-flow.umd.js.map +1 -0
  3. package/domain/create-connection-markers/create-connection-markers.execution.d.ts +3 -0
  4. package/domain/create-dom-element.d.ts +2 -0
  5. package/domain/deep-clone-node.d.ts +1 -0
  6. package/domain/get-element-rect-in-flow/get-element-rect-in-flow.execution.d.ts +3 -1
  7. package/domain/index.d.ts +2 -0
  8. package/domain/intersections/rounded-rect/rounded-rect.d.ts +2 -2
  9. package/domain/providers.d.ts +1 -1
  10. package/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.execution.d.ts +3 -3
  11. package/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.execution.d.ts +3 -3
  12. package/domain/update-item-and-children-layers/update-item-and-children-layers.execution.d.ts +1 -3
  13. package/esm2015/domain/cast-to-enum.js +12 -0
  14. package/esm2015/domain/clear-selection/clear-selection.execution.js +26 -0
  15. package/{esm2022/domain/create-connection-markers/create-connection-markers-request.mjs → esm2015/domain/create-connection-markers/create-connection-markers-request.js} +1 -2
  16. package/esm2015/domain/create-connection-markers/create-connection-markers.execution.js +61 -0
  17. package/esm2015/domain/create-dom-element.js +4 -0
  18. package/esm2015/domain/deep-clone-node.js +47 -0
  19. package/esm2015/domain/emit-transform-changes/emit-transform-changes.execution.js +24 -0
  20. package/esm2015/domain/get-can-be-selected-items/get-can-be-selected-items.execution.js +57 -0
  21. package/esm2015/domain/get-connection-line/get-connection-line.execution.js +68 -0
  22. package/esm2015/domain/get-connection-line/get-connection-line.request.js +10 -0
  23. package/esm2015/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.execution.js +35 -0
  24. package/{esm2022/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.request.mjs → esm2015/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.request.js} +1 -2
  25. package/{esm2022/domain/get-element-rect-in-flow/get-element-rect-in-flow-request.mjs → esm2015/domain/get-element-rect-in-flow/get-element-rect-in-flow-request.js} +1 -2
  26. package/esm2015/domain/get-element-rect-in-flow/get-element-rect-in-flow.execution.js +43 -0
  27. package/{esm2022/domain/get-input-rect-in-flow/get-input-rect-in-flow-request.mjs → esm2015/domain/get-input-rect-in-flow/get-input-rect-in-flow-request.js} +1 -2
  28. package/esm2015/domain/get-input-rect-in-flow/get-input-rect-in-flow-response.js +7 -0
  29. package/esm2015/domain/get-input-rect-in-flow/get-input-rect-in-flow.execution.js +33 -0
  30. package/esm2015/domain/get-nodes-rect/get-nodes-rect.execution.js +31 -0
  31. package/{esm2022/domain/get-output-rect-in-flow/get-output-rect-in-flow-request.mjs → esm2015/domain/get-output-rect-in-flow/get-output-rect-in-flow-request.js} +1 -2
  32. package/esm2015/domain/get-output-rect-in-flow/get-output-rect-in-flow-response.js +7 -0
  33. package/esm2015/domain/get-output-rect-in-flow/get-output-rect-in-flow.execution.js +37 -0
  34. package/{esm2022/domain/get-position-in-flow/get-position-in-flow-request.mjs → esm2015/domain/get-position-in-flow/get-position-in-flow-request.js} +1 -2
  35. package/esm2015/domain/get-position-in-flow/get-position-in-flow.execution.js +32 -0
  36. package/esm2015/domain/get-scaled-node-rects-with-flow-position/get-scaled-node-rects-with-flow-position.execution.js +34 -0
  37. package/esm2015/domain/get-selection/get-selection.execution.js +35 -0
  38. package/esm2015/domain/get-value-from-data-attr.js +7 -0
  39. package/{esm2022/domain/index.mjs → esm2015/domain/index.js} +3 -1
  40. package/esm2015/domain/intersections/f-connector-shape.extensions.js +46 -0
  41. package/esm2015/domain/intersections/intersection-finder.js +156 -0
  42. package/esm2015/domain/intersections/rounded-rect/rounded-rect.js +46 -0
  43. package/esm2015/domain/is-connection-under-node/is-connection-under-node.execution.js +76 -0
  44. package/esm2015/domain/redraw-connections/redraw-connections.execution.js +60 -0
  45. package/esm2015/domain/select/select.execution.js +44 -0
  46. package/esm2015/domain/select/select.request.js +7 -0
  47. package/esm2015/domain/select-all/select-all.execution.js +38 -0
  48. package/esm2015/domain/select-and-update-node-layer/select-and-update-node-layer.execution.js +35 -0
  49. package/{esm2022/domain/select-and-update-node-layer/select-and-update-node-layer.request.mjs → esm2015/domain/select-and-update-node-layer/select-and-update-node-layer.request.js} +1 -2
  50. package/esm2015/domain/sort-item-layers/sort-item-layers.execution.js +30 -0
  51. package/esm2015/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.execution.js +57 -0
  52. package/{esm2022/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.request.mjs → esm2015/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.request.js} +1 -2
  53. package/esm2015/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.execution.js +59 -0
  54. package/esm2015/domain/subscribe-on-transform-changes/subscribe-on-transform-changes.execution.js +26 -0
  55. package/esm2015/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element.execution.js +30 -0
  56. package/{esm2022/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element.request.mjs → esm2015/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element.request.js} +1 -5
  57. package/esm2015/domain/update-item-and-children-layers/update-item-and-children-layers.execution.js +94 -0
  58. package/{esm2022/domain/update-item-and-children-layers/update-item-and-children-layers.request.mjs → esm2015/domain/update-item-and-children-layers/update-item-and-children-layers.request.js} +1 -3
  59. package/{esm2022/f-backgroud/f-background-base.mjs → esm2015/f-backgroud/f-background-base.js} +4 -4
  60. package/esm2015/f-backgroud/f-background.component.js +71 -0
  61. package/esm2015/f-backgroud/f-circle-pattern/f-circle-pattern.component.js +104 -0
  62. package/esm2015/f-backgroud/f-rect-pattern/f-rect-pattern.component.js +122 -0
  63. package/esm2015/f-canvas/domain/f-canvas-change.event.js +7 -0
  64. package/esm2015/f-canvas/f-canvas-base.js +27 -0
  65. package/esm2015/f-canvas/f-canvas.component.js +111 -0
  66. package/{esm2022/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points-request.mjs → esm2015/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points-request.js} +1 -3
  67. package/{esm2022/f-connection/common/domain/calculate-connection-center/calculate-connection-center-request.mjs → esm2015/f-connection/common/domain/calculate-connection-center/calculate-connection-center-request.js} +1 -2
  68. package/esm2015/f-connection/common/domain/calculate-connection-center/calculate-connection-center.handler.js +35 -0
  69. package/esm2015/f-connection/common/domain/f-bezier.path-builder.js +37 -0
  70. package/esm2015/f-connection/common/domain/f-segment.path-builder.js +142 -0
  71. package/esm2015/f-connection/common/f-connection-base.js +62 -0
  72. package/esm2015/f-connection/common/f-connection-identifiers.js +27 -0
  73. package/esm2015/f-connection/common/f-connection-text/f-connection-text-path.directive.js +70 -0
  74. package/esm2015/f-connection/common/f-connection-text/f-connection-text.component.js +72 -0
  75. package/esm2015/f-connection/common/f-drag-handle/f-connection-drag-handle.component.js +38 -0
  76. package/esm2015/f-connection/common/f-gradient/f-connection-gradient.component.js +69 -0
  77. package/esm2015/f-connection/common/f-path/f-connection-path.component.js +59 -0
  78. package/esm2015/f-connection/common/f-path/get-path-marker-id.js +19 -0
  79. package/esm2015/f-connection/common/f-selection/f-connection-selection.component.js +37 -0
  80. package/esm2015/f-connection/common/mixins/change-connection-selection.mixin.js +26 -0
  81. package/esm2015/f-connection/f-connection/f-connection.component.js +184 -0
  82. package/esm2015/f-connection/f-connection-builder/f-connection-factory.js +34 -0
  83. package/{esm2022/f-connection/f-connection-center/f-connection-center.directive.mjs → esm2015/f-connection/f-connection-center/f-connection-center.directive.js} +4 -4
  84. package/esm2015/f-connection/f-connection-for-create/f-connection-for-create.component.js +151 -0
  85. package/{esm2022/f-connection/f-marker/f-marker-base.mjs → esm2015/f-connection/f-marker/f-marker-base.js} +4 -4
  86. package/esm2015/f-connection/f-marker/f-marker.directive.js +58 -0
  87. package/esm2015/f-connectors/domain/calculate-connector-connectable-side/calculate-connector-connectable-side-request.js +7 -0
  88. package/esm2015/f-connectors/domain/calculate-connector-connectable-side/calculate-connector-connectable-side.handler.js +38 -0
  89. package/esm2015/f-connectors/f-connector-base.js +17 -0
  90. package/esm2015/f-connectors/f-node-input/f-node-input-base.js +19 -0
  91. package/esm2015/f-connectors/f-node-input/f-node-input.directive.js +88 -0
  92. package/esm2015/f-connectors/f-node-outlet/f-node-outlet-base.js +23 -0
  93. package/esm2015/f-connectors/f-node-outlet/f-node-outlet.directive.js +71 -0
  94. package/esm2015/f-connectors/f-node-output/f-node-output-base.js +19 -0
  95. package/esm2015/f-connectors/f-node-output/f-node-output.directive.js +95 -0
  96. package/esm2015/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.execution.js +24 -0
  97. package/{esm2022/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.request.mjs → esm2015/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.request.js} +1 -2
  98. package/esm2015/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.validator.js +25 -0
  99. package/esm2015/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.execution.js +36 -0
  100. package/{esm2022/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.request.mjs → esm2015/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.request.js} +1 -2
  101. package/esm2015/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.validator.js +49 -0
  102. package/esm2015/f-draggable/canvas/canvas.drag-handler.js +18 -0
  103. package/esm2015/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.execution.js +56 -0
  104. package/{esm2022/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.request.mjs → esm2015/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.request.js} +1 -2
  105. package/esm2015/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.validator.js +25 -0
  106. package/esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.execution.js +45 -0
  107. package/{esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.request.mjs → esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.request.js} +1 -3
  108. package/esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.execution.js +53 -0
  109. package/{esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.request.mjs → esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.request.js} +1 -2
  110. package/esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.execution.js +39 -0
  111. package/{esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.request.mjs → esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.request.js} +1 -2
  112. package/esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.validator.js +34 -0
  113. package/esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.execution.js +43 -0
  114. package/{esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.request.mjs → esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.request.js} +1 -2
  115. package/esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.validator.js +32 -0
  116. package/esm2015/f-draggable/connections/create-connection/create-connection.drag-handler.js +33 -0
  117. package/esm2015/f-draggable/connections/create-connection/f-create-connection.event.js +8 -0
  118. package/esm2015/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.execution.js +43 -0
  119. package/{esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.request.mjs → esm2015/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.request.js} +1 -2
  120. package/esm2015/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.validator.js +27 -0
  121. package/esm2015/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.execution.js +74 -0
  122. package/esm2015/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.request.js +7 -0
  123. package/esm2015/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.validator.js +35 -0
  124. package/esm2015/f-draggable/connections/reassign-connection/f-reassign-connection.event.js +9 -0
  125. package/esm2015/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.execution.js +50 -0
  126. package/{esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.request.mjs → esm2015/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.request.js} +1 -2
  127. package/esm2015/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.validator.js +25 -0
  128. package/esm2015/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.execution.js +64 -0
  129. package/{esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.request.mjs → esm2015/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.request.js} +1 -2
  130. package/esm2015/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.validator.js +44 -0
  131. package/esm2015/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.js +33 -0
  132. package/esm2015/f-draggable/domain/get-node-padding/get-node-padding.execution.js +33 -0
  133. package/esm2015/f-draggable/domain/get-node-padding/get-node-padding.request.js +7 -0
  134. package/esm2015/f-draggable/domain/get-normalized-node-rect/get-normalized-node-rect.execution.js +29 -0
  135. package/{esm2022/f-draggable/domain/get-normalized-node-rect/get-normalized-node-rect.request.mjs → esm2015/f-draggable/domain/get-normalized-node-rect/get-normalized-node-rect.request.js} +1 -2
  136. package/esm2015/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.execution.js +48 -0
  137. package/{esm2022/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.request.mjs → esm2015/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.request.js} +1 -2
  138. package/esm2015/f-draggable/domain/get-parent-nodes/get-parent-nodes.execution.js +36 -0
  139. package/{esm2022/f-draggable/domain/get-parent-nodes/get-parent-nodes.request.mjs → esm2015/f-draggable/domain/get-parent-nodes/get-parent-nodes.request.js} +1 -2
  140. package/esm2015/f-draggable/domain/index.js +7 -0
  141. package/esm2015/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.execution.js +34 -0
  142. package/{esm2022/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.request.mjs → esm2015/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.request.js} +1 -3
  143. package/esm2015/f-draggable/domain/providers.js +13 -0
  144. package/esm2015/f-draggable/f-draggable-base.js +174 -0
  145. package/esm2015/f-draggable/f-draggable-data-context.js +26 -0
  146. package/esm2015/f-draggable/f-draggable.directive.js +170 -0
  147. package/esm2015/f-draggable/f-selection-change-event.js +7 -0
  148. package/esm2015/f-draggable/node/connection-base-drag-handler.js +40 -0
  149. package/esm2015/f-draggable/node/connection-source.drag-handler.js +16 -0
  150. package/esm2015/f-draggable/node/connection-target.drag-handler.js +16 -0
  151. package/esm2015/f-draggable/node/connection.drag-handler.js +20 -0
  152. package/esm2015/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.js +90 -0
  153. package/esm2015/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/get-node-move-restrictions.execution.js +44 -0
  154. package/{esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/get-node-move-restrictions.request.mjs → esm2015/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/get-node-move-restrictions.request.js} +1 -3
  155. package/esm2015/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.execution.js +70 -0
  156. package/{esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.request.mjs → esm2015/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.request.js} +1 -4
  157. package/esm2015/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.execution.js +70 -0
  158. package/{esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.request.mjs → esm2015/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.request.js} +1 -4
  159. package/esm2015/f-draggable/node/node-move-finalize/node-move-finalize.execution.js +54 -0
  160. package/{esm2022/f-draggable/node/node-move-finalize/node-move-finalize.request.mjs → esm2015/f-draggable/node/node-move-finalize/node-move-finalize.request.js} +1 -2
  161. package/esm2015/f-draggable/node/node-move-finalize/node-move-finalize.validator.js +25 -0
  162. package/esm2015/f-draggable/node/node-move-preparation/node-move-preparation.execution.js +60 -0
  163. package/{esm2022/f-draggable/node/node-move-preparation/node-move-preparation.request.mjs → esm2015/f-draggable/node/node-move-preparation/node-move-preparation.request.js} +1 -2
  164. package/esm2015/f-draggable/node/node-move-preparation/node-move-preparation.validator.js +41 -0
  165. package/esm2015/f-draggable/node/node-resize-by-child.drag-handler.js +12 -0
  166. package/esm2015/f-draggable/node/node.drag-handler.js +34 -0
  167. package/esm2015/f-draggable/node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.execution.js +49 -0
  168. package/{esm2022/f-draggable/node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.request.mjs → esm2015/f-draggable/node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.request.js} +1 -3
  169. package/esm2015/f-draggable/node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.execution.js +49 -0
  170. package/{esm2022/f-draggable/node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.request.mjs → esm2015/f-draggable/node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.request.js} +1 -3
  171. package/esm2015/f-draggable/node-resize/calculate-changed-position/calculate-changed-position.execution.js +25 -0
  172. package/esm2015/f-draggable/node-resize/calculate-changed-position/calculate-changed-position.request.js +9 -0
  173. package/esm2015/f-draggable/node-resize/calculate-changed-size/calculate-changed-size.execution.js +34 -0
  174. package/esm2015/f-draggable/node-resize/calculate-changed-size/calculate-changed-size.request.js +8 -0
  175. package/esm2015/f-draggable/node-resize/get-node-resize-restrictions/get-node-resize-restrictions.execution.js +31 -0
  176. package/{esm2022/f-draggable/node-resize/get-node-resize-restrictions/get-node-resize-restrictions.request.mjs → esm2015/f-draggable/node-resize/get-node-resize-restrictions/get-node-resize-restrictions.request.js} +1 -3
  177. package/esm2015/f-draggable/node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.execution.js +41 -0
  178. package/esm2015/f-draggable/node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.request.js +7 -0
  179. package/esm2015/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.execution.js +27 -0
  180. package/{esm2022/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.request.mjs → esm2015/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.request.js} +1 -2
  181. package/esm2015/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.validator.js +25 -0
  182. package/esm2015/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.execution.js +52 -0
  183. package/{esm2022/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.request.mjs → esm2015/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.request.js} +1 -2
  184. package/esm2015/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.validator.js +41 -0
  185. package/esm2015/f-draggable/node-resize/node-resize.drag-handler.js +48 -0
  186. package/esm2015/f-draggable/single-select/single-select.execution.js +89 -0
  187. package/{esm2022/f-draggable/single-select/single-select.request.mjs → esm2015/f-draggable/single-select/single-select.request.js} +1 -2
  188. package/esm2015/f-draggable/single-select/single-select.validator.js +27 -0
  189. package/esm2015/f-external-item/domain/external-item-finalize/external-item-finalize.execution.js +57 -0
  190. package/{esm2022/f-external-item/domain/external-item-finalize/external-item-finalize.request.mjs → esm2015/f-external-item/domain/external-item-finalize/external-item-finalize.request.js} +1 -2
  191. package/esm2015/f-external-item/domain/external-item-finalize/external-item-finalize.validator.js +25 -0
  192. package/esm2015/f-external-item/domain/external-item-preparation/external-item-preparation.execution.js +43 -0
  193. package/{esm2022/f-external-item/domain/external-item-preparation/external-item-preparation.request.mjs → esm2015/f-external-item/domain/external-item-preparation/external-item-preparation.request.js} +1 -2
  194. package/esm2015/f-external-item/domain/external-item-preparation/external-item-preparation.validator.js +29 -0
  195. package/esm2015/f-external-item/domain/external-item.drag-handler.js +36 -0
  196. package/{esm2022/f-external-item/domain/f-create-node.event.mjs → esm2015/f-external-item/domain/f-create-node.event.js} +1 -3
  197. package/{esm2022/f-external-item/f-external-item-base.mjs → esm2015/f-external-item/f-external-item-base.js} +4 -4
  198. package/esm2015/f-external-item/f-external-item.directive.js +55 -0
  199. package/esm2015/f-external-item/f-external-item.service.js +28 -0
  200. package/esm2015/f-flow/f-flow.component.js +122 -0
  201. package/{esm2022/f-flow.module.mjs → esm2015/f-flow.module.js} +7 -5
  202. package/esm2015/f-line-alignment/domain/line-element.js +22 -0
  203. package/esm2015/f-line-alignment/domain/line-service.js +35 -0
  204. package/esm2015/f-line-alignment/domain/nearest-coordinate.js +101 -0
  205. package/{esm2022/f-line-alignment/f-line-alignment-base.mjs → esm2015/f-line-alignment/f-line-alignment-base.js} +4 -4
  206. package/esm2015/f-line-alignment/f-line-alignment.component.js +99 -0
  207. package/esm2015/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.execution.js +42 -0
  208. package/esm2015/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.request.js +9 -0
  209. package/esm2015/f-minimap/domain/check-rect-is-finite.js +8 -0
  210. package/esm2015/f-minimap/domain/f-minimap-data.js +9 -0
  211. package/esm2015/f-minimap/domain/f-minimap.drag-handler.js +37 -0
  212. package/esm2015/f-minimap/domain/index.js +8 -0
  213. package/esm2015/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.js +27 -0
  214. package/{esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.request.mjs → esm2015/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.request.js} +1 -2
  215. package/esm2015/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.validator.js +25 -0
  216. package/esm2015/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.js +49 -0
  217. package/{esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.request.mjs → esm2015/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.request.js} +1 -3
  218. package/esm2015/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.validator.js +28 -0
  219. package/esm2015/f-minimap/f-minimap-canvas.directive.js +66 -0
  220. package/esm2015/f-minimap/f-minimap-flow.directive.js +76 -0
  221. package/esm2015/f-minimap/f-minimap-view.directive.js +40 -0
  222. package/esm2015/f-minimap/f-minimap.component.js +76 -0
  223. package/esm2015/f-node/f-drag-handle/f-drag-handle.directive.js +24 -0
  224. package/esm2015/f-node/f-group.directive.js +149 -0
  225. package/esm2015/f-node/f-node-base.js +38 -0
  226. package/esm2015/f-node/f-node.directive.js +150 -0
  227. package/esm2015/f-node/f-resize-handle/f-resize-handle.directive.js +43 -0
  228. package/esm2015/f-node/f-rotate-handle/f-rotate-handle.directive.js +27 -0
  229. package/esm2015/f-selection-area/domain/selection-area-finalize/selection-area-finalize.execution.js +27 -0
  230. package/{esm2022/f-selection-area/domain/selection-area-finalize/selection-area-finalize.request.mjs → esm2015/f-selection-area/domain/selection-area-finalize/selection-area-finalize.request.js} +1 -2
  231. package/esm2015/f-selection-area/domain/selection-area-finalize/selection-area-finalize.validator.js +25 -0
  232. package/esm2015/f-selection-area/domain/selection-area-preparation/selection-area-preparation.execution.js +38 -0
  233. package/esm2015/f-selection-area/domain/selection-area-preparation/selection-area-preparation.request.js +7 -0
  234. package/esm2015/f-selection-area/domain/selection-area-preparation/selection-area-preparation.validator.js +31 -0
  235. package/esm2015/f-selection-area/domain/selection-area.drag-handle.js +48 -0
  236. package/{esm2022/f-selection-area/f-selection-area-base.mjs → esm2015/f-selection-area/f-selection-area-base.js} +4 -4
  237. package/esm2015/f-selection-area/f-selection-area.component.js +57 -0
  238. package/esm2015/f-storage/f-components-store.js +52 -0
  239. package/esm2015/f-storage/f-transform-store.js +14 -0
  240. package/esm2015/f-zoom/f-zoom-base.js +98 -0
  241. package/esm2015/f-zoom/f-zoom.directive.js +59 -0
  242. package/esm2015/infrastructure/f-mediator/f-flow-mediator.js +29 -0
  243. package/esm2015/infrastructure/pipeline/pipeline.js +19 -0
  244. package/f-backgroud/f-background-base.d.ts +1 -1
  245. package/f-backgroud/f-background.component.d.ts +4 -2
  246. package/f-backgroud/f-circle-pattern/f-circle-pattern.component.d.ts +4 -2
  247. package/f-backgroud/f-rect-pattern/f-rect-pattern.component.d.ts +4 -2
  248. package/f-canvas/f-canvas-base.d.ts +1 -1
  249. package/f-canvas/f-canvas.component.d.ts +1 -1
  250. package/f-connection/common/f-connection-base.d.ts +1 -1
  251. package/f-connection/common/f-connection-text/f-connection-text-path.directive.d.ts +4 -2
  252. package/f-connection/common/f-connection-text/f-connection-text.component.d.ts +1 -1
  253. package/f-connection/common/f-drag-handle/f-connection-drag-handle.component.d.ts +1 -1
  254. package/f-connection/common/f-gradient/f-connection-gradient.component.d.ts +1 -1
  255. package/f-connection/common/f-path/f-connection-path.component.d.ts +1 -1
  256. package/f-connection/common/f-selection/f-connection-selection.component.d.ts +1 -1
  257. package/f-connection/common/mixins/change-connection-selection.mixin.d.ts +1 -1
  258. package/f-connection/common/mixins/change-connection-visibility.mixin.d.ts +1 -1
  259. package/f-connection/f-connection/f-connection.component.d.ts +1 -1
  260. package/f-connection/f-connection-center/f-connection-center.directive.d.ts +1 -1
  261. package/f-connection/f-connection-for-create/f-connection-for-create.component.d.ts +1 -1
  262. package/f-connection/f-marker/f-marker-base.d.ts +1 -1
  263. package/f-connection/f-marker/f-marker.directive.d.ts +1 -1
  264. package/f-connectors/f-node-input/f-node-input-base.d.ts +1 -1
  265. package/f-connectors/f-node-input/f-node-input.directive.d.ts +1 -1
  266. package/f-connectors/f-node-outlet/f-node-outlet-base.d.ts +1 -1
  267. package/f-connectors/f-node-outlet/f-node-outlet.directive.d.ts +1 -1
  268. package/f-connectors/f-node-output/f-node-output-base.d.ts +1 -1
  269. package/f-connectors/f-node-output/f-node-output.directive.d.ts +1 -1
  270. package/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.execution.d.ts +3 -1
  271. package/f-draggable/connections/providers.d.ts +1 -1
  272. package/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.execution.d.ts +3 -1
  273. package/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.validator.d.ts +3 -1
  274. package/f-draggable/domain/get-node-padding/get-node-padding.execution.d.ts +4 -4
  275. package/f-draggable/domain/index.d.ts +0 -1
  276. package/f-draggable/domain/providers.d.ts +1 -2
  277. package/f-draggable/f-draggable-base.d.ts +3 -3
  278. package/f-draggable/f-draggable.directive.d.ts +4 -3
  279. package/f-draggable/node/connection-base-drag-handler.d.ts +1 -1
  280. package/f-draggable/node/create-move-nodes-drag-model-from-selection/providers.d.ts +1 -1
  281. package/f-draggable/node/providers.d.ts +1 -1
  282. package/f-draggable/providers.d.ts +1 -1
  283. package/f-draggable/single-select/single-select.execution.d.ts +5 -3
  284. package/f-external-item/domain/external-item-finalize/external-item-finalize.execution.d.ts +3 -1
  285. package/f-external-item/domain/external-item-preparation/external-item-preparation.execution.d.ts +3 -1
  286. package/f-external-item/domain/external-item.drag-handler.d.ts +3 -1
  287. package/f-external-item/f-external-item-base.d.ts +1 -1
  288. package/f-external-item/f-external-item.directive.d.ts +1 -1
  289. package/f-flow/f-flow.component.d.ts +4 -2
  290. package/f-line-alignment/domain/line-element.d.ts +2 -1
  291. package/f-line-alignment/domain/line-service.d.ts +2 -1
  292. package/f-line-alignment/f-line-alignment-base.d.ts +1 -1
  293. package/f-line-alignment/f-line-alignment.component.d.ts +3 -2
  294. package/f-minimap/domain/check-rect-is-finite.d.ts +2 -0
  295. package/f-minimap/domain/index.d.ts +1 -0
  296. package/f-minimap/domain/providers.d.ts +1 -1
  297. package/f-minimap/f-minimap-canvas.directive.d.ts +4 -2
  298. package/f-minimap/f-minimap-flow.directive.d.ts +1 -1
  299. package/f-minimap/f-minimap-view.directive.d.ts +1 -1
  300. package/f-minimap/f-minimap.component.d.ts +1 -1
  301. package/f-node/f-drag-handle/f-drag-handle.directive.d.ts +1 -1
  302. package/f-node/f-group.directive.d.ts +4 -2
  303. package/f-node/f-node.directive.d.ts +4 -2
  304. package/f-node/f-resize-handle/f-resize-handle.directive.d.ts +1 -1
  305. package/f-selection-area/domain/selection-area-preparation/selection-area-preparation.validator.d.ts +1 -0
  306. package/f-selection-area/f-selection-area-base.d.ts +1 -1
  307. package/f-selection-area/f-selection-area.component.d.ts +1 -1
  308. package/f-zoom/f-zoom.directive.d.ts +1 -1
  309. package/{fesm2022/foblex-flow.mjs → fesm2015/foblex-flow.js} +1815 -2054
  310. package/fesm2015/foblex-flow.js.map +1 -0
  311. package/infrastructure/f-mediator/f-execution-register.d.ts +1 -1
  312. package/infrastructure/f-mediator/f-validator-register.d.ts +1 -1
  313. package/package.json +9 -16
  314. package/esm2022/domain/cast-to-enum.mjs +0 -12
  315. package/esm2022/domain/clear-selection/clear-selection.execution.mjs +0 -27
  316. package/esm2022/domain/create-connection-markers/create-connection-markers.execution.mjs +0 -49
  317. package/esm2022/domain/emit-transform-changes/emit-transform-changes.execution.mjs +0 -25
  318. package/esm2022/domain/get-can-be-selected-items/get-can-be-selected-items.execution.mjs +0 -60
  319. package/esm2022/domain/get-connection-line/get-connection-line.execution.mjs +0 -66
  320. package/esm2022/domain/get-connection-line/get-connection-line.request.mjs +0 -15
  321. package/esm2022/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.execution.mjs +0 -36
  322. package/esm2022/domain/get-element-rect-in-flow/get-element-rect-in-flow.execution.mjs +0 -42
  323. package/esm2022/domain/get-input-rect-in-flow/get-input-rect-in-flow-response.mjs +0 -9
  324. package/esm2022/domain/get-input-rect-in-flow/get-input-rect-in-flow.execution.mjs +0 -35
  325. package/esm2022/domain/get-nodes-rect/get-nodes-rect.execution.mjs +0 -32
  326. package/esm2022/domain/get-output-rect-in-flow/get-output-rect-in-flow-response.mjs +0 -9
  327. package/esm2022/domain/get-output-rect-in-flow/get-output-rect-in-flow.execution.mjs +0 -39
  328. package/esm2022/domain/get-position-in-flow/get-position-in-flow.execution.mjs +0 -33
  329. package/esm2022/domain/get-scaled-node-rects-with-flow-position/get-scaled-node-rects-with-flow-position.execution.mjs +0 -35
  330. package/esm2022/domain/get-selection/get-selection.execution.mjs +0 -36
  331. package/esm2022/domain/get-value-from-data-attr.mjs +0 -7
  332. package/esm2022/domain/intersections/f-connector-shape.extensions.mjs +0 -46
  333. package/esm2022/domain/intersections/intersection-finder.mjs +0 -156
  334. package/esm2022/domain/intersections/rounded-rect/rounded-rect.mjs +0 -79
  335. package/esm2022/domain/is-connection-under-node/is-connection-under-node.execution.mjs +0 -79
  336. package/esm2022/domain/redraw-connections/redraw-connections.execution.mjs +0 -62
  337. package/esm2022/domain/select/select.execution.mjs +0 -46
  338. package/esm2022/domain/select/select.request.mjs +0 -9
  339. package/esm2022/domain/select-all/select-all.execution.mjs +0 -40
  340. package/esm2022/domain/select-and-update-node-layer/select-and-update-node-layer.execution.mjs +0 -37
  341. package/esm2022/domain/sort-item-layers/sort-item-layers.execution.mjs +0 -32
  342. package/esm2022/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.execution.mjs +0 -61
  343. package/esm2022/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.execution.mjs +0 -62
  344. package/esm2022/domain/subscribe-on-transform-changes/subscribe-on-transform-changes.execution.mjs +0 -28
  345. package/esm2022/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element.execution.mjs +0 -30
  346. package/esm2022/domain/update-item-and-children-layers/update-item-and-children-layers.execution.mjs +0 -99
  347. package/esm2022/f-backgroud/f-background.component.mjs +0 -62
  348. package/esm2022/f-backgroud/f-circle-pattern/f-circle-pattern.component.mjs +0 -103
  349. package/esm2022/f-backgroud/f-rect-pattern/f-rect-pattern.component.mjs +0 -122
  350. package/esm2022/f-canvas/domain/f-canvas-change.event.mjs +0 -9
  351. package/esm2022/f-canvas/f-canvas-base.mjs +0 -28
  352. package/esm2022/f-canvas/f-canvas.component.mjs +0 -107
  353. package/esm2022/f-connection/common/domain/calculate-connection-center/calculate-connection-center.handler.mjs +0 -35
  354. package/esm2022/f-connection/common/domain/f-bezier.path-builder.mjs +0 -37
  355. package/esm2022/f-connection/common/domain/f-segment.path-builder.mjs +0 -142
  356. package/esm2022/f-connection/common/f-connection-base.mjs +0 -62
  357. package/esm2022/f-connection/common/f-connection-identifiers.mjs +0 -22
  358. package/esm2022/f-connection/common/f-connection-text/f-connection-text-path.directive.mjs +0 -64
  359. package/esm2022/f-connection/common/f-connection-text/f-connection-text.component.mjs +0 -69
  360. package/esm2022/f-connection/common/f-drag-handle/f-connection-drag-handle.component.mjs +0 -39
  361. package/esm2022/f-connection/common/f-gradient/f-connection-gradient.component.mjs +0 -65
  362. package/esm2022/f-connection/common/f-path/f-connection-path.component.mjs +0 -61
  363. package/esm2022/f-connection/common/f-path/get-path-marker-id.mjs +0 -15
  364. package/esm2022/f-connection/common/f-selection/f-connection-selection.component.mjs +0 -39
  365. package/esm2022/f-connection/common/mixins/change-connection-selection.mixin.mjs +0 -25
  366. package/esm2022/f-connection/f-connection/f-connection.component.mjs +0 -187
  367. package/esm2022/f-connection/f-connection-builder/f-connection-factory.mjs +0 -34
  368. package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +0 -155
  369. package/esm2022/f-connection/f-marker/f-marker.directive.mjs +0 -60
  370. package/esm2022/f-connectors/domain/calculate-connector-connectable-side/calculate-connector-connectable-side-request.mjs +0 -9
  371. package/esm2022/f-connectors/domain/calculate-connector-connectable-side/calculate-connector-connectable-side.handler.mjs +0 -38
  372. package/esm2022/f-connectors/f-connector-base.mjs +0 -15
  373. package/esm2022/f-connectors/f-node-input/f-node-input-base.mjs +0 -16
  374. package/esm2022/f-connectors/f-node-input/f-node-input.directive.mjs +0 -91
  375. package/esm2022/f-connectors/f-node-outlet/f-node-outlet-base.mjs +0 -20
  376. package/esm2022/f-connectors/f-node-outlet/f-node-outlet.directive.mjs +0 -74
  377. package/esm2022/f-connectors/f-node-output/f-node-output-base.mjs +0 -16
  378. package/esm2022/f-connectors/f-node-output/f-node-output.directive.mjs +0 -98
  379. package/esm2022/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.execution.mjs +0 -25
  380. package/esm2022/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.validator.mjs +0 -26
  381. package/esm2022/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.execution.mjs +0 -38
  382. package/esm2022/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.validator.mjs +0 -50
  383. package/esm2022/f-draggable/canvas/canvas.drag-handler.mjs +0 -19
  384. package/esm2022/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.execution.mjs +0 -58
  385. package/esm2022/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.validator.mjs +0 -26
  386. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.execution.mjs +0 -48
  387. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.execution.mjs +0 -55
  388. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.execution.mjs +0 -41
  389. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.validator.mjs +0 -35
  390. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.execution.mjs +0 -45
  391. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.validator.mjs +0 -34
  392. package/esm2022/f-draggable/connections/create-connection/create-connection.drag-handler.mjs +0 -36
  393. package/esm2022/f-draggable/connections/create-connection/f-create-connection.event.mjs +0 -11
  394. package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.execution.mjs +0 -44
  395. package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.validator.mjs +0 -28
  396. package/esm2022/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.execution.mjs +0 -73
  397. package/esm2022/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.request.mjs +0 -9
  398. package/esm2022/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.validator.mjs +0 -36
  399. package/esm2022/f-draggable/connections/reassign-connection/f-reassign-connection.event.mjs +0 -13
  400. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.execution.mjs +0 -53
  401. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.validator.mjs +0 -26
  402. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.execution.mjs +0 -65
  403. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.validator.mjs +0 -44
  404. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.mjs +0 -35
  405. package/esm2022/f-draggable/domain/convert-computed-to-pixels/convert-computed-to-pixels-request.mjs +0 -13
  406. package/esm2022/f-draggable/domain/convert-computed-to-pixels/convert-computed-to-pixels.execution.mjs +0 -49
  407. package/esm2022/f-draggable/domain/convert-computed-to-pixels/index.mjs +0 -3
  408. package/esm2022/f-draggable/domain/get-node-padding/get-node-padding.execution.mjs +0 -38
  409. package/esm2022/f-draggable/domain/get-node-padding/get-node-padding.request.mjs +0 -9
  410. package/esm2022/f-draggable/domain/get-normalized-node-rect/get-normalized-node-rect.execution.mjs +0 -30
  411. package/esm2022/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.execution.mjs +0 -50
  412. package/esm2022/f-draggable/domain/get-parent-nodes/get-parent-nodes.execution.mjs +0 -37
  413. package/esm2022/f-draggable/domain/index.mjs +0 -8
  414. package/esm2022/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.execution.mjs +0 -35
  415. package/esm2022/f-draggable/domain/providers.mjs +0 -15
  416. package/esm2022/f-draggable/f-draggable-base.mjs +0 -169
  417. package/esm2022/f-draggable/f-draggable-data-context.mjs +0 -25
  418. package/esm2022/f-draggable/f-draggable.directive.mjs +0 -174
  419. package/esm2022/f-draggable/f-selection-change-event.mjs +0 -9
  420. package/esm2022/f-draggable/node/connection-base-drag-handler.mjs +0 -42
  421. package/esm2022/f-draggable/node/connection-source.drag-handler.mjs +0 -18
  422. package/esm2022/f-draggable/node/connection-target.drag-handler.mjs +0 -18
  423. package/esm2022/f-draggable/node/connection.drag-handler.mjs +0 -22
  424. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.mjs +0 -87
  425. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/get-node-move-restrictions.execution.mjs +0 -45
  426. 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 +0 -72
  427. 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 +0 -72
  428. package/esm2022/f-draggable/node/node-move-finalize/node-move-finalize.execution.mjs +0 -54
  429. package/esm2022/f-draggable/node/node-move-finalize/node-move-finalize.validator.mjs +0 -26
  430. package/esm2022/f-draggable/node/node-move-preparation/node-move-preparation.execution.mjs +0 -62
  431. package/esm2022/f-draggable/node/node-move-preparation/node-move-preparation.validator.mjs +0 -43
  432. package/esm2022/f-draggable/node/node-resize-by-child.drag-handler.mjs +0 -13
  433. package/esm2022/f-draggable/node/node.drag-handler.mjs +0 -37
  434. package/esm2022/f-draggable/node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.execution.mjs +0 -49
  435. package/esm2022/f-draggable/node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.execution.mjs +0 -49
  436. package/esm2022/f-draggable/node-resize/calculate-changed-position/calculate-changed-position.execution.mjs +0 -25
  437. package/esm2022/f-draggable/node-resize/calculate-changed-position/calculate-changed-position.request.mjs +0 -13
  438. package/esm2022/f-draggable/node-resize/calculate-changed-size/calculate-changed-size.execution.mjs +0 -34
  439. package/esm2022/f-draggable/node-resize/calculate-changed-size/calculate-changed-size.request.mjs +0 -11
  440. package/esm2022/f-draggable/node-resize/get-node-resize-restrictions/get-node-resize-restrictions.execution.mjs +0 -32
  441. package/esm2022/f-draggable/node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.execution.mjs +0 -42
  442. package/esm2022/f-draggable/node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.request.mjs +0 -9
  443. package/esm2022/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.execution.mjs +0 -27
  444. package/esm2022/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.validator.mjs +0 -26
  445. package/esm2022/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.execution.mjs +0 -55
  446. package/esm2022/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.validator.mjs +0 -43
  447. package/esm2022/f-draggable/node-resize/node-resize.drag-handler.mjs +0 -53
  448. package/esm2022/f-draggable/single-select/single-select.execution.mjs +0 -87
  449. package/esm2022/f-draggable/single-select/single-select.validator.mjs +0 -29
  450. package/esm2022/f-external-item/domain/external-item-finalize/external-item-finalize.execution.mjs +0 -58
  451. package/esm2022/f-external-item/domain/external-item-finalize/external-item-finalize.validator.mjs +0 -26
  452. package/esm2022/f-external-item/domain/external-item-preparation/external-item-preparation.execution.mjs +0 -44
  453. package/esm2022/f-external-item/domain/external-item-preparation/external-item-preparation.validator.mjs +0 -30
  454. package/esm2022/f-external-item/domain/external-item.drag-handler.mjs +0 -36
  455. package/esm2022/f-external-item/f-external-item.directive.mjs +0 -58
  456. package/esm2022/f-external-item/f-external-item.service.mjs +0 -26
  457. package/esm2022/f-flow/f-flow.component.mjs +0 -112
  458. package/esm2022/f-line-alignment/domain/line-element.mjs +0 -24
  459. package/esm2022/f-line-alignment/domain/line-service.mjs +0 -38
  460. package/esm2022/f-line-alignment/domain/nearest-coordinate.mjs +0 -104
  461. package/esm2022/f-line-alignment/f-line-alignment.component.mjs +0 -96
  462. package/esm2022/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.execution.mjs +0 -43
  463. package/esm2022/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.request.mjs +0 -13
  464. package/esm2022/f-minimap/domain/f-minimap-data.mjs +0 -12
  465. package/esm2022/f-minimap/domain/f-minimap.drag-handler.mjs +0 -41
  466. package/esm2022/f-minimap/domain/index.mjs +0 -7
  467. package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.mjs +0 -27
  468. package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.validator.mjs +0 -26
  469. package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.mjs +0 -52
  470. package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.validator.mjs +0 -30
  471. package/esm2022/f-minimap/f-minimap-canvas.directive.mjs +0 -63
  472. package/esm2022/f-minimap/f-minimap-flow.directive.mjs +0 -79
  473. package/esm2022/f-minimap/f-minimap-view.directive.mjs +0 -40
  474. package/esm2022/f-minimap/f-minimap.component.mjs +0 -72
  475. package/esm2022/f-node/f-drag-handle/f-drag-handle.directive.mjs +0 -25
  476. package/esm2022/f-node/f-group.directive.mjs +0 -147
  477. package/esm2022/f-node/f-node-base.mjs +0 -37
  478. package/esm2022/f-node/f-node.directive.mjs +0 -148
  479. package/esm2022/f-node/f-resize-handle/f-resize-handle.directive.mjs +0 -44
  480. package/esm2022/f-node/f-rotate-handle/f-rotate-handle.directive.mjs +0 -28
  481. package/esm2022/f-selection-area/domain/selection-area-finalize/selection-area-finalize.execution.mjs +0 -27
  482. package/esm2022/f-selection-area/domain/selection-area-finalize/selection-area-finalize.validator.mjs +0 -26
  483. package/esm2022/f-selection-area/domain/selection-area-preparation/selection-area-preparation.execution.mjs +0 -41
  484. package/esm2022/f-selection-area/domain/selection-area-preparation/selection-area-preparation.request.mjs +0 -9
  485. package/esm2022/f-selection-area/domain/selection-area-preparation/selection-area-preparation.validator.mjs +0 -30
  486. package/esm2022/f-selection-area/domain/selection-area.drag-handle.mjs +0 -52
  487. package/esm2022/f-selection-area/f-selection-area.component.mjs +0 -53
  488. package/esm2022/f-storage/f-components-store.mjs +0 -53
  489. package/esm2022/f-storage/f-transform-store.mjs +0 -12
  490. package/esm2022/f-zoom/f-zoom-base.mjs +0 -97
  491. package/esm2022/f-zoom/f-zoom.directive.mjs +0 -59
  492. package/esm2022/infrastructure/f-mediator/f-flow-mediator.mjs +0 -30
  493. package/esm2022/infrastructure/pipeline/pipeline.mjs +0 -21
  494. package/f-draggable/domain/convert-computed-to-pixels/convert-computed-to-pixels-request.d.ts +0 -7
  495. package/f-draggable/domain/convert-computed-to-pixels/convert-computed-to-pixels.execution.d.ts +0 -12
  496. package/f-draggable/domain/convert-computed-to-pixels/index.d.ts +0 -2
  497. package/fesm2022/foblex-flow.mjs.map +0 -1
  498. /package/{esm2022/domain/clear-selection/clear-selection.request.mjs → esm2015/domain/clear-selection/clear-selection.request.js} +0 -0
  499. /package/{esm2022/domain/clear-selection/index.mjs → esm2015/domain/clear-selection/index.js} +0 -0
  500. /package/{esm2022/domain/create-connection-markers/index.mjs → esm2015/domain/create-connection-markers/index.js} +0 -0
  501. /package/{esm2022/domain/emit-transform-changes/emit-transform-changes.request.mjs → esm2015/domain/emit-transform-changes/emit-transform-changes.request.js} +0 -0
  502. /package/{esm2022/domain/emit-transform-changes/index.mjs → esm2015/domain/emit-transform-changes/index.js} +0 -0
  503. /package/{esm2022/domain/get-can-be-selected-items/get-can-be-selected-items-request.mjs → esm2015/domain/get-can-be-selected-items/get-can-be-selected-items-request.js} +0 -0
  504. /package/{esm2022/domain/get-can-be-selected-items/i-selectable-with-rect.mjs → esm2015/domain/get-can-be-selected-items/i-selectable-with-rect.js} +0 -0
  505. /package/{esm2022/domain/get-can-be-selected-items/index.mjs → esm2015/domain/get-can-be-selected-items/index.js} +0 -0
  506. /package/{esm2022/domain/get-connection-line/index.mjs → esm2015/domain/get-connection-line/index.js} +0 -0
  507. /package/{esm2022/domain/get-deep-children-nodes-and-groups/index.mjs → esm2015/domain/get-deep-children-nodes-and-groups/index.js} +0 -0
  508. /package/{esm2022/domain/get-element-rect-in-flow/index.mjs → esm2015/domain/get-element-rect-in-flow/index.js} +0 -0
  509. /package/{esm2022/domain/get-input-rect-in-flow/index.mjs → esm2015/domain/get-input-rect-in-flow/index.js} +0 -0
  510. /package/{esm2022/domain/get-nodes-rect/get-nodes-rect.request.mjs → esm2015/domain/get-nodes-rect/get-nodes-rect.request.js} +0 -0
  511. /package/{esm2022/domain/get-nodes-rect/index.mjs → esm2015/domain/get-nodes-rect/index.js} +0 -0
  512. /package/{esm2022/domain/get-output-rect-in-flow/index.mjs → esm2015/domain/get-output-rect-in-flow/index.js} +0 -0
  513. /package/{esm2022/domain/get-position-in-flow/index.mjs → esm2015/domain/get-position-in-flow/index.js} +0 -0
  514. /package/{esm2022/domain/get-scaled-node-rects-with-flow-position/get-scaled-node-rects-with-flow-position.request.mjs → esm2015/domain/get-scaled-node-rects-with-flow-position/get-scaled-node-rects-with-flow-position.request.js} +0 -0
  515. /package/{esm2022/domain/get-scaled-node-rects-with-flow-position/index.mjs → esm2015/domain/get-scaled-node-rects-with-flow-position/index.js} +0 -0
  516. /package/{esm2022/domain/get-selection/get-selection.request.mjs → esm2015/domain/get-selection/get-selection.request.js} +0 -0
  517. /package/{esm2022/domain/get-selection/index.mjs → esm2015/domain/get-selection/index.js} +0 -0
  518. /package/{esm2022/domain/intersections/e-f-connector-shape.mjs → esm2015/domain/intersections/e-f-connector-shape.js} +0 -0
  519. /package/{esm2022/domain/intersections/i-connector-shape.mjs → esm2015/domain/intersections/i-connector-shape.js} +0 -0
  520. /package/{esm2022/domain/intersections/index.mjs → esm2015/domain/intersections/index.js} +0 -0
  521. /package/{esm2022/domain/intersections/rounded-rect/i-rounded-rect.mjs → esm2015/domain/intersections/rounded-rect/i-rounded-rect.js} +0 -0
  522. /package/{esm2022/domain/intersections/rounded-rect/index.mjs → esm2015/domain/intersections/rounded-rect/index.js} +0 -0
  523. /package/{esm2022/domain/is-connection-under-node/index.mjs → esm2015/domain/is-connection-under-node/index.js} +0 -0
  524. /package/{esm2022/domain/is-connection-under-node/is-connection-under-node.request.mjs → esm2015/domain/is-connection-under-node/is-connection-under-node.request.js} +0 -0
  525. /package/{esm2022/domain/is-element-with-class.mjs → esm2015/domain/is-element-with-class.js} +0 -0
  526. /package/{esm2022/domain/providers.mjs → esm2015/domain/providers.js} +0 -0
  527. /package/{esm2022/domain/redraw-connections/index.mjs → esm2015/domain/redraw-connections/index.js} +0 -0
  528. /package/{esm2022/domain/redraw-connections/redraw-connections-request.mjs → esm2015/domain/redraw-connections/redraw-connections-request.js} +0 -0
  529. /package/{esm2022/domain/select/index.mjs → esm2015/domain/select/index.js} +0 -0
  530. /package/{esm2022/domain/select-all/index.mjs → esm2015/domain/select-all/index.js} +0 -0
  531. /package/{esm2022/domain/select-all/select-all.request.mjs → esm2015/domain/select-all/select-all.request.js} +0 -0
  532. /package/{esm2022/domain/select-and-update-node-layer/index.mjs → esm2015/domain/select-and-update-node-layer/index.js} +0 -0
  533. /package/{esm2022/domain/sort-item-layers/index.mjs → esm2015/domain/sort-item-layers/index.js} +0 -0
  534. /package/{esm2022/domain/sort-item-layers/sort-item-layers.request.mjs → esm2015/domain/sort-item-layers/sort-item-layers.request.js} +0 -0
  535. /package/{esm2022/domain/sort-item-layers/sort-items-by-parent/index.mjs → esm2015/domain/sort-item-layers/sort-items-by-parent/index.js} +0 -0
  536. /package/{esm2022/domain/sort-item-layers/sort-node-layers-by-groups/index.mjs → esm2015/domain/sort-item-layers/sort-node-layers-by-groups/index.js} +0 -0
  537. /package/{esm2022/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.request.mjs → esm2015/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.request.js} +0 -0
  538. /package/{esm2022/domain/subscribe-on-transform-changes/index.mjs → esm2015/domain/subscribe-on-transform-changes/index.js} +0 -0
  539. /package/{esm2022/domain/subscribe-on-transform-changes/subscribe-on-transform-changes.request.mjs → esm2015/domain/subscribe-on-transform-changes/subscribe-on-transform-changes.request.js} +0 -0
  540. /package/{esm2022/domain/update-item-and-children-layers/index.mjs → esm2015/domain/update-item-and-children-layers/index.js} +0 -0
  541. /package/{esm2022/domain/update-item-and-children-layers/move-front-elements-before-target-element/index.mjs → esm2015/domain/update-item-and-children-layers/move-front-elements-before-target-element/index.js} +0 -0
  542. /package/{esm2022/errors/conflict-error.mjs → esm2015/errors/conflict-error.js} +0 -0
  543. /package/{esm2022/errors/create-error-class.mjs → esm2015/errors/create-error-class.js} +0 -0
  544. /package/{esm2022/errors/errors.mjs → esm2015/errors/errors.js} +0 -0
  545. /package/{esm2022/errors/index.mjs → esm2015/errors/index.js} +0 -0
  546. /package/{esm2022/errors/not-found-error.mjs → esm2015/errors/not-found-error.js} +0 -0
  547. /package/{esm2022/f-backgroud/domain/i-f-background-pattern.mjs → esm2015/f-backgroud/domain/i-f-background-pattern.js} +0 -0
  548. /package/{esm2022/f-backgroud/domain/index.mjs → esm2015/f-backgroud/domain/index.js} +0 -0
  549. /package/{esm2022/f-backgroud/f-circle-pattern/index.mjs → esm2015/f-backgroud/f-circle-pattern/index.js} +0 -0
  550. /package/{esm2022/f-backgroud/f-rect-pattern/index.mjs → esm2015/f-backgroud/f-rect-pattern/index.js} +0 -0
  551. /package/{esm2022/f-backgroud/index.mjs → esm2015/f-backgroud/index.js} +0 -0
  552. /package/{esm2022/f-backgroud/providers.mjs → esm2015/f-backgroud/providers.js} +0 -0
  553. /package/{esm2022/f-canvas/domain/index.mjs → esm2015/f-canvas/domain/index.js} +0 -0
  554. /package/{esm2022/f-canvas/index.mjs → esm2015/f-canvas/index.js} +0 -0
  555. /package/{esm2022/f-canvas/providers.mjs → esm2015/f-canvas/providers.js} +0 -0
  556. /package/{esm2022/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points.handler.mjs → esm2015/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points.handler.js} +0 -0
  557. /package/{esm2022/f-connection/common/domain/calculate-center-between-points/index.mjs → esm2015/f-connection/common/domain/calculate-center-between-points/index.js} +0 -0
  558. /package/{esm2022/f-connection/common/domain/calculate-connection-center/index.mjs → esm2015/f-connection/common/domain/calculate-connection-center/index.js} +0 -0
  559. /package/{esm2022/f-connection/common/domain/f-straight.path-builder.mjs → esm2015/f-connection/common/domain/f-straight.path-builder.js} +0 -0
  560. /package/{esm2022/f-connection/common/domain/index.mjs → esm2015/f-connection/common/domain/index.js} +0 -0
  561. /package/{esm2022/f-connection/common/e-f-connection-behavior.mjs → esm2015/f-connection/common/e-f-connection-behavior.js} +0 -0
  562. /package/{esm2022/f-connection/common/e-f-connection-type.mjs → esm2015/f-connection/common/e-f-connection-type.js} +0 -0
  563. /package/{esm2022/f-connection/common/f-connection-text/i-connection-text.mjs → esm2015/f-connection/common/f-connection-text/i-connection-text.js} +0 -0
  564. /package/{esm2022/f-connection/common/f-connection-text/index.mjs → esm2015/f-connection/common/f-connection-text/index.js} +0 -0
  565. /package/{esm2022/f-connection/common/f-connection.injection-token.mjs → esm2015/f-connection/common/f-connection.injection-token.js} +0 -0
  566. /package/{esm2022/f-connection/common/f-drag-handle/index.mjs → esm2015/f-connection/common/f-drag-handle/index.js} +0 -0
  567. /package/{esm2022/f-connection/common/f-gradient/i-connection-gradient.mjs → esm2015/f-connection/common/f-gradient/i-connection-gradient.js} +0 -0
  568. /package/{esm2022/f-connection/common/f-gradient/index.mjs → esm2015/f-connection/common/f-gradient/index.js} +0 -0
  569. /package/{esm2022/f-connection/common/f-path/i-connection-path.mjs → esm2015/f-connection/common/f-path/i-connection-path.js} +0 -0
  570. /package/{esm2022/f-connection/common/f-path/index.mjs → esm2015/f-connection/common/f-path/index.js} +0 -0
  571. /package/{esm2022/f-connection/common/f-selection/index.mjs → esm2015/f-connection/common/f-selection/index.js} +0 -0
  572. /package/{esm2022/f-connection/common/i-has-connection-color.mjs → esm2015/f-connection/common/i-has-connection-color.js} +0 -0
  573. /package/{esm2022/f-connection/common/i-has-connection-from-to.mjs → esm2015/f-connection/common/i-has-connection-from-to.js} +0 -0
  574. /package/{esm2022/f-connection/common/i-has-connection-text.mjs → esm2015/f-connection/common/i-has-connection-text.js} +0 -0
  575. /package/{esm2022/f-connection/common/index.mjs → esm2015/f-connection/common/index.js} +0 -0
  576. /package/{esm2022/f-connection/common/mixins/change-connection-visibility.mixin.mjs → esm2015/f-connection/common/mixins/change-connection-visibility.mixin.js} +0 -0
  577. /package/{esm2022/f-connection/common/mixins/index.mjs → esm2015/f-connection/common/mixins/index.js} +0 -0
  578. /package/{esm2022/f-connection/f-connection/index.mjs → esm2015/f-connection/f-connection/index.js} +0 -0
  579. /package/{esm2022/f-connection/f-connection-builder/f-connection-builders.mjs → esm2015/f-connection/f-connection-builder/f-connection-builders.js} +0 -0
  580. /package/{esm2022/f-connection/f-connection-builder/i-f-connection-builder-request.mjs → esm2015/f-connection/f-connection-builder/i-f-connection-builder-request.js} +0 -0
  581. /package/{esm2022/f-connection/f-connection-builder/i-f-connection-builder-response.mjs → esm2015/f-connection/f-connection-builder/i-f-connection-builder-response.js} +0 -0
  582. /package/{esm2022/f-connection/f-connection-builder/i-f-connection-builder.mjs → esm2015/f-connection/f-connection-builder/i-f-connection-builder.js} +0 -0
  583. /package/{esm2022/f-connection/f-connection-builder/i-f-connection-factory-request.mjs → esm2015/f-connection/f-connection-builder/i-f-connection-factory-request.js} +0 -0
  584. /package/{esm2022/f-connection/f-connection-builder/index.mjs → esm2015/f-connection/f-connection-builder/index.js} +0 -0
  585. /package/{esm2022/f-connection/f-connection-center/index.mjs → esm2015/f-connection/f-connection-center/index.js} +0 -0
  586. /package/{esm2022/f-connection/f-connection-for-create/index.mjs → esm2015/f-connection/f-connection-for-create/index.js} +0 -0
  587. /package/{esm2022/f-connection/f-marker/e-f-marker-type.mjs → esm2015/f-connection/f-marker/e-f-marker-type.js} +0 -0
  588. /package/{esm2022/f-connection/f-marker/index.mjs → esm2015/f-connection/f-marker/index.js} +0 -0
  589. /package/{esm2022/f-connection/index.mjs → esm2015/f-connection/index.js} +0 -0
  590. /package/{esm2022/f-connection/providers.mjs → esm2015/f-connection/providers.js} +0 -0
  591. /package/{esm2022/f-connectors/domain/calculate-connector-connectable-side/index.mjs → esm2015/f-connectors/domain/calculate-connector-connectable-side/index.js} +0 -0
  592. /package/{esm2022/f-connectors/domain/index.mjs → esm2015/f-connectors/domain/index.js} +0 -0
  593. /package/{esm2022/f-connectors/e-f-connectable-side.mjs → esm2015/f-connectors/e-f-connectable-side.js} +0 -0
  594. /package/{esm2022/f-connectors/f-node-input/index.mjs → esm2015/f-connectors/f-node-input/index.js} +0 -0
  595. /package/{esm2022/f-connectors/f-node-input/is-node-input.mjs → esm2015/f-connectors/f-node-input/is-node-input.js} +0 -0
  596. /package/{esm2022/f-connectors/f-node-outlet/index.mjs → esm2015/f-connectors/f-node-outlet/index.js} +0 -0
  597. /package/{esm2022/f-connectors/f-node-outlet/is-node-outlet.mjs → esm2015/f-connectors/f-node-outlet/is-node-outlet.js} +0 -0
  598. /package/{esm2022/f-connectors/f-node-output/index.mjs → esm2015/f-connectors/f-node-output/index.js} +0 -0
  599. /package/{esm2022/f-connectors/f-node-output/is-node-output.mjs → esm2015/f-connectors/f-node-output/is-node-output.js} +0 -0
  600. /package/{esm2022/f-connectors/index.mjs → esm2015/f-connectors/index.js} +0 -0
  601. /package/{esm2022/f-connectors/providers.mjs → esm2015/f-connectors/providers.js} +0 -0
  602. /package/{esm2022/f-draggable/canvas/canvas-move-finalize/index.mjs → esm2015/f-draggable/canvas/canvas-move-finalize/index.js} +0 -0
  603. /package/{esm2022/f-draggable/canvas/canvas-move-finalize/providers.mjs → esm2015/f-draggable/canvas/canvas-move-finalize/providers.js} +0 -0
  604. /package/{esm2022/f-draggable/canvas/canvas-move-preparation/index.mjs → esm2015/f-draggable/canvas/canvas-move-preparation/index.js} +0 -0
  605. /package/{esm2022/f-draggable/canvas/canvas-move-preparation/providers.mjs → esm2015/f-draggable/canvas/canvas-move-preparation/providers.js} +0 -0
  606. /package/{esm2022/f-draggable/canvas/index.mjs → esm2015/f-draggable/canvas/index.js} +0 -0
  607. /package/{esm2022/f-draggable/canvas/providers.mjs → esm2015/f-draggable/canvas/providers.js} +0 -0
  608. /package/{esm2022/f-draggable/connections/create-connection/create-connection-finalize/index.mjs → esm2015/f-draggable/connections/create-connection/create-connection-finalize/index.js} +0 -0
  609. /package/{esm2022/f-draggable/connections/create-connection/create-connection-finalize/providers.mjs → esm2015/f-draggable/connections/create-connection/create-connection-finalize/providers.js} +0 -0
  610. /package/{esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/index.mjs → esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/index.js} +0 -0
  611. /package/{esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/providers.mjs → esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/providers.js} +0 -0
  612. /package/{esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/index.mjs → esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/index.js} +0 -0
  613. /package/{esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/providers.mjs → esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/providers.js} +0 -0
  614. /package/{esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/index.mjs → esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/index.js} +0 -0
  615. /package/{esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/providers.mjs → esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/providers.js} +0 -0
  616. /package/{esm2022/f-draggable/connections/create-connection/create-connection-preparation/index.mjs → esm2015/f-draggable/connections/create-connection/create-connection-preparation/index.js} +0 -0
  617. /package/{esm2022/f-draggable/connections/create-connection/create-connection-preparation/providers.mjs → esm2015/f-draggable/connections/create-connection/create-connection-preparation/providers.js} +0 -0
  618. /package/{esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/index.mjs → esm2015/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/index.js} +0 -0
  619. /package/{esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/providers.mjs → esm2015/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/providers.js} +0 -0
  620. /package/{esm2022/f-draggable/connections/create-connection/index.mjs → esm2015/f-draggable/connections/create-connection/index.js} +0 -0
  621. /package/{esm2022/f-draggable/connections/get-input-under-pointer/index.mjs → esm2015/f-draggable/connections/get-input-under-pointer/index.js} +0 -0
  622. /package/{esm2022/f-draggable/connections/get-input-under-pointer/providers.mjs → esm2015/f-draggable/connections/get-input-under-pointer/providers.js} +0 -0
  623. /package/{esm2022/f-draggable/connections/index.mjs → esm2015/f-draggable/connections/index.js} +0 -0
  624. /package/{esm2022/f-draggable/connections/providers.mjs → esm2015/f-draggable/connections/providers.js} +0 -0
  625. /package/{esm2022/f-draggable/connections/reassign-connection/index.mjs → esm2015/f-draggable/connections/reassign-connection/index.js} +0 -0
  626. /package/{esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/index.mjs → esm2015/f-draggable/connections/reassign-connection/reassign-connection-finalize/index.js} +0 -0
  627. /package/{esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/providers.mjs → esm2015/f-draggable/connections/reassign-connection/reassign-connection-finalize/providers.js} +0 -0
  628. /package/{esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/index.mjs → esm2015/f-draggable/connections/reassign-connection/reassign-connection-preparation/index.js} +0 -0
  629. /package/{esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/providers.mjs → esm2015/f-draggable/connections/reassign-connection/reassign-connection-preparation/providers.js} +0 -0
  630. /package/{esm2022/f-draggable/domain/get-node-padding/index.mjs → esm2015/f-draggable/domain/get-node-padding/index.js} +0 -0
  631. /package/{esm2022/f-draggable/domain/get-normalized-node-rect/index.mjs → esm2015/f-draggable/domain/get-normalized-node-rect/index.js} +0 -0
  632. /package/{esm2022/f-draggable/domain/get-normalized-parent-node-rect/index.mjs → esm2015/f-draggable/domain/get-normalized-parent-node-rect/index.js} +0 -0
  633. /package/{esm2022/f-draggable/domain/get-parent-nodes/index.mjs → esm2015/f-draggable/domain/get-parent-nodes/index.js} +0 -0
  634. /package/{esm2022/f-draggable/domain/is-array-has-parent-node/index.mjs → esm2015/f-draggable/domain/is-array-has-parent-node/index.js} +0 -0
  635. /package/{esm2022/f-draggable/i-can-run-outside-angular.mjs → esm2015/f-draggable/i-can-run-outside-angular.js} +0 -0
  636. /package/{esm2022/f-draggable/i-draggable-item.mjs → esm2015/f-draggable/i-draggable-item.js} +0 -0
  637. /package/{esm2022/f-draggable/i-f-drag-and-drop-plugin.mjs → esm2015/f-draggable/i-f-drag-and-drop-plugin.js} +0 -0
  638. /package/{esm2022/f-draggable/index.mjs → esm2015/f-draggable/index.js} +0 -0
  639. /package/{esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.request.mjs → esm2015/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.request.js} +0 -0
  640. /package/{esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/i-node-move-restrictions.mjs → esm2015/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/i-node-move-restrictions.js} +0 -0
  641. /package/{esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/index.mjs → esm2015/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/index.js} +0 -0
  642. /package/{esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/index.mjs → esm2015/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/index.js} +0 -0
  643. /package/{esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/index.mjs → esm2015/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/index.js} +0 -0
  644. /package/{esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/i-node-with-distance-restrictions.mjs → esm2015/f-draggable/node/create-move-nodes-drag-model-from-selection/i-node-with-distance-restrictions.js} +0 -0
  645. /package/{esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/index.mjs → esm2015/f-draggable/node/create-move-nodes-drag-model-from-selection/index.js} +0 -0
  646. /package/{esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/providers.mjs → esm2015/f-draggable/node/create-move-nodes-drag-model-from-selection/providers.js} +0 -0
  647. /package/{esm2022/f-draggable/node/index.mjs → esm2015/f-draggable/node/index.js} +0 -0
  648. /package/{esm2022/f-draggable/node/node-move-finalize/index.mjs → esm2015/f-draggable/node/node-move-finalize/index.js} +0 -0
  649. /package/{esm2022/f-draggable/node/node-move-finalize/providers.mjs → esm2015/f-draggable/node/node-move-finalize/providers.js} +0 -0
  650. /package/{esm2022/f-draggable/node/node-move-preparation/index.mjs → esm2015/f-draggable/node/node-move-preparation/index.js} +0 -0
  651. /package/{esm2022/f-draggable/node/node-move-preparation/providers.mjs → esm2015/f-draggable/node/node-move-preparation/providers.js} +0 -0
  652. /package/{esm2022/f-draggable/node/providers.mjs → esm2015/f-draggable/node/providers.js} +0 -0
  653. /package/{esm2022/f-draggable/node-resize/apply-child-resize-restrictions/index.mjs → esm2015/f-draggable/node-resize/apply-child-resize-restrictions/index.js} +0 -0
  654. /package/{esm2022/f-draggable/node-resize/apply-parent-resize-restrictions/index.mjs → esm2015/f-draggable/node-resize/apply-parent-resize-restrictions/index.js} +0 -0
  655. /package/{esm2022/f-draggable/node-resize/calculate-changed-position/index.mjs → esm2015/f-draggable/node-resize/calculate-changed-position/index.js} +0 -0
  656. /package/{esm2022/f-draggable/node-resize/calculate-changed-size/index.mjs → esm2015/f-draggable/node-resize/calculate-changed-size/index.js} +0 -0
  657. /package/{esm2022/f-draggable/node-resize/get-node-resize-restrictions/i-node-resize-restrictions.mjs → esm2015/f-draggable/node-resize/get-node-resize-restrictions/i-node-resize-restrictions.js} +0 -0
  658. /package/{esm2022/f-draggable/node-resize/get-node-resize-restrictions/index.mjs → esm2015/f-draggable/node-resize/get-node-resize-restrictions/index.js} +0 -0
  659. /package/{esm2022/f-draggable/node-resize/get-normalized-children-nodes-rect/index.mjs → esm2015/f-draggable/node-resize/get-normalized-children-nodes-rect/index.js} +0 -0
  660. /package/{esm2022/f-draggable/node-resize/index.mjs → esm2015/f-draggable/node-resize/index.js} +0 -0
  661. /package/{esm2022/f-draggable/node-resize/node-resize-finalize/index.mjs → esm2015/f-draggable/node-resize/node-resize-finalize/index.js} +0 -0
  662. /package/{esm2022/f-draggable/node-resize/node-resize-finalize/providers.mjs → esm2015/f-draggable/node-resize/node-resize-finalize/providers.js} +0 -0
  663. /package/{esm2022/f-draggable/node-resize/node-resize-preparation/index.mjs → esm2015/f-draggable/node-resize/node-resize-preparation/index.js} +0 -0
  664. /package/{esm2022/f-draggable/node-resize/node-resize-preparation/providers.mjs → esm2015/f-draggable/node-resize/node-resize-preparation/providers.js} +0 -0
  665. /package/{esm2022/f-draggable/node-resize/providers.mjs → esm2015/f-draggable/node-resize/providers.js} +0 -0
  666. /package/{esm2022/f-draggable/node-resize/resize-direction.mjs → esm2015/f-draggable/node-resize/resize-direction.js} +0 -0
  667. /package/{esm2022/f-draggable/providers.mjs → esm2015/f-draggable/providers.js} +0 -0
  668. /package/{esm2022/f-draggable/single-select/index.mjs → esm2015/f-draggable/single-select/index.js} +0 -0
  669. /package/{esm2022/f-draggable/single-select/providers.mjs → esm2015/f-draggable/single-select/providers.js} +0 -0
  670. /package/{esm2022/f-external-item/domain/external-item-finalize/index.mjs → esm2015/f-external-item/domain/external-item-finalize/index.js} +0 -0
  671. /package/{esm2022/f-external-item/domain/external-item-finalize/providers.mjs → esm2015/f-external-item/domain/external-item-finalize/providers.js} +0 -0
  672. /package/{esm2022/f-external-item/domain/external-item-preparation/index.mjs → esm2015/f-external-item/domain/external-item-preparation/index.js} +0 -0
  673. /package/{esm2022/f-external-item/domain/external-item-preparation/providers.mjs → esm2015/f-external-item/domain/external-item-preparation/providers.js} +0 -0
  674. /package/{esm2022/f-external-item/domain/index.mjs → esm2015/f-external-item/domain/index.js} +0 -0
  675. /package/{esm2022/f-external-item/domain/providers.mjs → esm2015/f-external-item/domain/providers.js} +0 -0
  676. /package/{esm2022/f-external-item/index.mjs → esm2015/f-external-item/index.js} +0 -0
  677. /package/{esm2022/f-external-item/is-external-item.mjs → esm2015/f-external-item/is-external-item.js} +0 -0
  678. /package/{esm2022/f-external-item/providers.mjs → esm2015/f-external-item/providers.js} +0 -0
  679. /package/{esm2022/f-flow/f-flow-base.mjs → esm2015/f-flow/f-flow-base.js} +0 -0
  680. /package/{esm2022/f-flow/index.mjs → esm2015/f-flow/index.js} +0 -0
  681. /package/{esm2022/f-flow/providers.mjs → esm2015/f-flow/providers.js} +0 -0
  682. /package/{esm2022/f-line-alignment/domain/i-line-alignment-rect.mjs → esm2015/f-line-alignment/domain/i-line-alignment-rect.js} +0 -0
  683. /package/{esm2022/f-line-alignment/domain/i-line-alignment-result.mjs → esm2015/f-line-alignment/domain/i-line-alignment-result.js} +0 -0
  684. /package/{esm2022/f-line-alignment/domain/i-nearest-coordinate-result.mjs → esm2015/f-line-alignment/domain/i-nearest-coordinate-result.js} +0 -0
  685. /package/{esm2022/f-line-alignment/domain/index.mjs → esm2015/f-line-alignment/domain/index.js} +0 -0
  686. /package/{esm2022/f-line-alignment/index.mjs → esm2015/f-line-alignment/index.js} +0 -0
  687. /package/{esm2022/f-line-alignment/providers.mjs → esm2015/f-line-alignment/providers.js} +0 -0
  688. /package/{esm2022/f-minimap/domain/calculate-flow-point-from-minimap-point/index.mjs → esm2015/f-minimap/domain/calculate-flow-point-from-minimap-point/index.js} +0 -0
  689. /package/{esm2022/f-minimap/domain/minimap-drag-finalize/index.mjs → esm2015/f-minimap/domain/minimap-drag-finalize/index.js} +0 -0
  690. /package/{esm2022/f-minimap/domain/minimap-drag-finalize/providers.mjs → esm2015/f-minimap/domain/minimap-drag-finalize/providers.js} +0 -0
  691. /package/{esm2022/f-minimap/domain/minimap-drag-preparation/index.mjs → esm2015/f-minimap/domain/minimap-drag-preparation/index.js} +0 -0
  692. /package/{esm2022/f-minimap/domain/minimap-drag-preparation/providers.mjs → esm2015/f-minimap/domain/minimap-drag-preparation/providers.js} +0 -0
  693. /package/{esm2022/f-minimap/domain/providers.mjs → esm2015/f-minimap/domain/providers.js} +0 -0
  694. /package/{esm2022/f-minimap/index.mjs → esm2015/f-minimap/index.js} +0 -0
  695. /package/{esm2022/f-minimap/providers.mjs → esm2015/f-minimap/providers.js} +0 -0
  696. /package/{esm2022/f-node/domain/index.mjs → esm2015/f-node/domain/index.js} +0 -0
  697. /package/{esm2022/f-node/domain/is-group.mjs → esm2015/f-node/domain/is-group.js} +0 -0
  698. /package/{esm2022/f-node/domain/is-node.mjs → esm2015/f-node/domain/is-node.js} +0 -0
  699. /package/{esm2022/f-node/f-drag-handle/index.mjs → esm2015/f-node/f-drag-handle/index.js} +0 -0
  700. /package/{esm2022/f-node/f-resize-handle/e-f-resize-handle-type.mjs → esm2015/f-node/f-resize-handle/e-f-resize-handle-type.js} +0 -0
  701. /package/{esm2022/f-node/f-resize-handle/index.mjs → esm2015/f-node/f-resize-handle/index.js} +0 -0
  702. /package/{esm2022/f-node/f-resize-observer.mjs → esm2015/f-node/f-resize-observer.js} +0 -0
  703. /package/{esm2022/f-node/f-rotate-handle/index.mjs → esm2015/f-node/f-rotate-handle/index.js} +0 -0
  704. /package/{esm2022/f-node/index.mjs → esm2015/f-node/index.js} +0 -0
  705. /package/{esm2022/f-node/providers.mjs → esm2015/f-node/providers.js} +0 -0
  706. /package/{esm2022/f-selection-area/domain/index.mjs → esm2015/f-selection-area/domain/index.js} +0 -0
  707. /package/{esm2022/f-selection-area/domain/providers.mjs → esm2015/f-selection-area/domain/providers.js} +0 -0
  708. /package/{esm2022/f-selection-area/domain/selection-area-finalize/index.mjs → esm2015/f-selection-area/domain/selection-area-finalize/index.js} +0 -0
  709. /package/{esm2022/f-selection-area/domain/selection-area-finalize/providers.mjs → esm2015/f-selection-area/domain/selection-area-finalize/providers.js} +0 -0
  710. /package/{esm2022/f-selection-area/domain/selection-area-preparation/index.mjs → esm2015/f-selection-area/domain/selection-area-preparation/index.js} +0 -0
  711. /package/{esm2022/f-selection-area/domain/selection-area-preparation/providers.mjs → esm2015/f-selection-area/domain/selection-area-preparation/providers.js} +0 -0
  712. /package/{esm2022/f-selection-area/index.mjs → esm2015/f-selection-area/index.js} +0 -0
  713. /package/{esm2022/f-selection-area/providers.mjs → esm2015/f-selection-area/providers.js} +0 -0
  714. /package/{esm2022/f-storage/index.mjs → esm2015/f-storage/index.js} +0 -0
  715. /package/{esm2022/f-zoom/index.mjs → esm2015/f-zoom/index.js} +0 -0
  716. /package/{esm2022/f-zoom/providers.mjs → esm2015/f-zoom/providers.js} +0 -0
  717. /package/{esm2022/foblex-flow.mjs → esm2015/foblex-flow.js} +0 -0
  718. /package/{esm2022/i-has-state-changes.mjs → esm2015/i-has-state-changes.js} +0 -0
  719. /package/{esm2022/infrastructure/f-mediator/f-execution-register.mjs → esm2015/infrastructure/f-mediator/f-execution-register.js} +0 -0
  720. /package/{esm2022/infrastructure/f-mediator/f-validator-register.mjs → esm2015/infrastructure/f-mediator/f-validator-register.js} +0 -0
  721. /package/{esm2022/infrastructure/f-mediator/index.mjs → esm2015/infrastructure/f-mediator/index.js} +0 -0
  722. /package/{esm2022/infrastructure/index.mjs → esm2015/infrastructure/index.js} +0 -0
  723. /package/{esm2022/infrastructure/pipeline/i-execution.mjs → esm2015/infrastructure/pipeline/i-execution.js} +0 -0
  724. /package/{esm2022/infrastructure/pipeline/i-validator.mjs → esm2015/infrastructure/pipeline/i-validator.js} +0 -0
  725. /package/{esm2022/infrastructure/pipeline/index.mjs → esm2015/infrastructure/pipeline/index.js} +0 -0
  726. /package/{esm2022/public-api.mjs → esm2015/public-api.js} +0 -0
  727. /package/{index.d.ts → foblex-flow.d.ts} +0 -0
@@ -1,44 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { Injectable } from '@angular/core';
3
- import { ExternalItemPreparationRequest } from './external-item-preparation.request';
4
- import { Point } from '@foblex/core';
5
- import { FExecutionRegister } from '../../../infrastructure';
6
- import { getExternalItem } from '../../../f-external-item';
7
- import { ExternalItemDragHandler } from '../external-item.drag-handler';
8
- import * as i0 from "@angular/core";
9
- import * as i1 from "../../../f-storage";
10
- import * as i2 from "../../../f-draggable";
11
- import * as i3 from "../../../f-external-item";
12
- let ExternalItemPreparationExecution = class ExternalItemPreparationExecution {
13
- fComponentsStore;
14
- fDraggableDataContext;
15
- fExternalItemService;
16
- get flowHost() {
17
- return this.fComponentsStore.fFlow.hostElement;
18
- }
19
- constructor(fComponentsStore, fDraggableDataContext, fExternalItemService) {
20
- this.fComponentsStore = fComponentsStore;
21
- this.fDraggableDataContext = fDraggableDataContext;
22
- this.fExternalItemService = fExternalItemService;
23
- }
24
- handle(request) {
25
- this.fDraggableDataContext.onPointerDownScale = 1;
26
- this.fDraggableDataContext.onPointerDownPosition = Point.fromPoint(request.event.getPosition()).elementTransform(this.flowHost);
27
- this.fDraggableDataContext.draggableItems = [
28
- new ExternalItemDragHandler(this.getExternalItem(request.event.targetElement))
29
- ];
30
- }
31
- getExternalItem(targetElement) {
32
- return this.fExternalItemService.getItem(getExternalItem(targetElement));
33
- }
34
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: ExternalItemPreparationExecution, deps: [{ token: i1.FComponentsStore }, { token: i2.FDraggableDataContext }, { token: i3.FExternalItemService }], target: i0.ɵɵFactoryTarget.Injectable });
35
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: ExternalItemPreparationExecution });
36
- };
37
- ExternalItemPreparationExecution = __decorate([
38
- FExecutionRegister(ExternalItemPreparationRequest)
39
- ], ExternalItemPreparationExecution);
40
- export { ExternalItemPreparationExecution };
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: ExternalItemPreparationExecution, decorators: [{
42
- type: Injectable
43
- }], ctorParameters: () => [{ type: i1.FComponentsStore }, { type: i2.FDraggableDataContext }, { type: i3.FExternalItemService }] });
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtaXRlbS1wcmVwYXJhdGlvbi5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZXh0ZXJuYWwtaXRlbS9kb21haW4vZXh0ZXJuYWwtaXRlbS1wcmVwYXJhdGlvbi9leHRlcm5hbC1pdGVtLXByZXBhcmF0aW9uLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLHlCQUF5QixDQUFDO0FBRXpFLE9BQU8sRUFBMkMsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDcEcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0JBQStCLENBQUM7Ozs7O0FBS2pFLElBQU0sZ0NBQWdDLEdBQXRDLE1BQU0sZ0NBQWdDO0lBT2pDO0lBQ0E7SUFDQTtJQVBWLElBQVksUUFBUTtRQUNsQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFNLENBQUMsV0FBVyxDQUFDO0lBQ2xELENBQUM7SUFFRCxZQUNVLGdCQUFrQyxFQUNsQyxxQkFBNEMsRUFDNUMsb0JBQTBDO1FBRjFDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO0lBRXBELENBQUM7SUFFTSxNQUFNLENBQUMsT0FBdUM7UUFDbkQsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGtCQUFrQixHQUFHLENBQUMsQ0FBQztRQUVsRCxJQUFJLENBQUMscUJBQXFCLENBQUMscUJBQXFCLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRWhJLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxjQUFjLEdBQUc7WUFDMUMsSUFBSSx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDL0UsQ0FBQztJQUNKLENBQUM7SUFFTyxlQUFlLENBQUMsYUFBMEI7UUFDaEQsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsQ0FBRSxDQUFDO0lBQzVFLENBQUM7dUdBekJVLGdDQUFnQzsyR0FBaEMsZ0NBQWdDOztBQUFoQyxnQ0FBZ0M7SUFENUMsa0JBQWtCLENBQUMsOEJBQThCLENBQUM7R0FDdEMsZ0NBQWdDLENBMEI1Qzs7MkZBMUJZLGdDQUFnQztrQkFGNUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEV4dGVybmFsSXRlbVByZXBhcmF0aW9uUmVxdWVzdCB9IGZyb20gJy4vZXh0ZXJuYWwtaXRlbS1wcmVwYXJhdGlvbi5yZXF1ZXN0JztcbmltcG9ydCB7IFBvaW50IH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbiB9IGZyb20gJy4uLy4uLy4uL2luZnJhc3RydWN0dXJlJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgRkV4dGVybmFsSXRlbUJhc2UsIEZFeHRlcm5hbEl0ZW1TZXJ2aWNlLCBnZXRFeHRlcm5hbEl0ZW0gfSBmcm9tICcuLi8uLi8uLi9mLWV4dGVybmFsLWl0ZW0nO1xuaW1wb3J0IHsgRXh0ZXJuYWxJdGVtRHJhZ0hhbmRsZXIgfSBmcm9tICcuLi9leHRlcm5hbC1pdGVtLmRyYWctaGFuZGxlcic7XG5pbXBvcnQgeyBGRHJhZ2dhYmxlRGF0YUNvbnRleHQgfSBmcm9tICcuLi8uLi8uLi9mLWRyYWdnYWJsZSc7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoRXh0ZXJuYWxJdGVtUHJlcGFyYXRpb25SZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIEV4dGVybmFsSXRlbVByZXBhcmF0aW9uRXhlY3V0aW9uIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxFeHRlcm5hbEl0ZW1QcmVwYXJhdGlvblJlcXVlc3QsIHZvaWQ+IHtcblxuICBwcml2YXRlIGdldCBmbG93SG9zdCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mRmxvdyEuaG9zdEVsZW1lbnQ7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmUsXG4gICAgcHJpdmF0ZSBmRHJhZ2dhYmxlRGF0YUNvbnRleHQ6IEZEcmFnZ2FibGVEYXRhQ29udGV4dCxcbiAgICBwcml2YXRlIGZFeHRlcm5hbEl0ZW1TZXJ2aWNlOiBGRXh0ZXJuYWxJdGVtU2VydmljZVxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogRXh0ZXJuYWxJdGVtUHJlcGFyYXRpb25SZXF1ZXN0KTogdm9pZCB7XG4gICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQub25Qb2ludGVyRG93blNjYWxlID0gMTtcblxuICAgIHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0Lm9uUG9pbnRlckRvd25Qb3NpdGlvbiA9IFBvaW50LmZyb21Qb2ludChyZXF1ZXN0LmV2ZW50LmdldFBvc2l0aW9uKCkpLmVsZW1lbnRUcmFuc2Zvcm0odGhpcy5mbG93SG9zdCk7XG5cbiAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5kcmFnZ2FibGVJdGVtcyA9IFtcbiAgICAgIG5ldyBFeHRlcm5hbEl0ZW1EcmFnSGFuZGxlcih0aGlzLmdldEV4dGVybmFsSXRlbShyZXF1ZXN0LmV2ZW50LnRhcmdldEVsZW1lbnQpKVxuICAgIF07XG4gIH1cblxuICBwcml2YXRlIGdldEV4dGVybmFsSXRlbSh0YXJnZXRFbGVtZW50OiBIVE1MRWxlbWVudCk6IEZFeHRlcm5hbEl0ZW1CYXNlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmZFeHRlcm5hbEl0ZW1TZXJ2aWNlLmdldEl0ZW0oZ2V0RXh0ZXJuYWxJdGVtKHRhcmdldEVsZW1lbnQpKSE7XG4gIH1cbn1cbiJdfQ==
@@ -1,30 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { Injectable } from '@angular/core';
3
- import { ExternalItemPreparationRequest } from './external-item-preparation.request';
4
- import { FValidatorRegister } from '../../../infrastructure';
5
- import { getExternalItem, isExternalItem } from '../../../f-external-item';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "../../../f-external-item";
8
- let ExternalItemPreparationValidator = class ExternalItemPreparationValidator {
9
- fExternalItemService;
10
- constructor(fExternalItemService) {
11
- this.fExternalItemService = fExternalItemService;
12
- }
13
- handle(request) {
14
- const externalItem = this.getExternalItem(request.event.targetElement);
15
- return isExternalItem(request.event.targetElement) && !!externalItem && !externalItem.fDisabled;
16
- }
17
- getExternalItem(targetElement) {
18
- return this.fExternalItemService.getItem(getExternalItem(targetElement));
19
- }
20
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: ExternalItemPreparationValidator, deps: [{ token: i1.FExternalItemService }], target: i0.ɵɵFactoryTarget.Injectable });
21
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: ExternalItemPreparationValidator });
22
- };
23
- ExternalItemPreparationValidator = __decorate([
24
- FValidatorRegister(ExternalItemPreparationRequest)
25
- ], ExternalItemPreparationValidator);
26
- export { ExternalItemPreparationValidator };
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: ExternalItemPreparationValidator, decorators: [{
28
- type: Injectable
29
- }], ctorParameters: () => [{ type: i1.FExternalItemService }] });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtaXRlbS1wcmVwYXJhdGlvbi52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZXh0ZXJuYWwtaXRlbS9kb21haW4vZXh0ZXJuYWwtaXRlbS1wcmVwYXJhdGlvbi9leHRlcm5hbC1pdGVtLXByZXBhcmF0aW9uLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRixPQUFPLEVBQUUsa0JBQWtCLEVBQWMsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RSxPQUFPLEVBQTJDLGVBQWUsRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7O0FBSTdHLElBQU0sZ0NBQWdDLEdBQXRDLE1BQU0sZ0NBQWdDO0lBSWpDO0lBRFYsWUFDVSxvQkFBMEM7UUFBMUMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtJQUVwRCxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQXVDO1FBQ25ELE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN2RSxPQUFPLGNBQWMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxZQUFZLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDO0lBQ2xHLENBQUM7SUFFTyxlQUFlLENBQUMsYUFBMEI7UUFDaEQsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQzNFLENBQUM7dUdBZlUsZ0NBQWdDOzJHQUFoQyxnQ0FBZ0M7O0FBQWhDLGdDQUFnQztJQUQ1QyxrQkFBa0IsQ0FBQyw4QkFBOEIsQ0FBQztHQUN0QyxnQ0FBZ0MsQ0FnQjVDOzsyRkFoQlksZ0NBQWdDO2tCQUY1QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRXh0ZXJuYWxJdGVtUHJlcGFyYXRpb25SZXF1ZXN0IH0gZnJvbSAnLi9leHRlcm5hbC1pdGVtLXByZXBhcmF0aW9uLnJlcXVlc3QnO1xuaW1wb3J0IHsgRlZhbGlkYXRvclJlZ2lzdGVyLCBJVmFsaWRhdG9yIH0gZnJvbSAnLi4vLi4vLi4vaW5mcmFzdHJ1Y3R1cmUnO1xuaW1wb3J0IHsgRkV4dGVybmFsSXRlbUJhc2UsIEZFeHRlcm5hbEl0ZW1TZXJ2aWNlLCBnZXRFeHRlcm5hbEl0ZW0sIGlzRXh0ZXJuYWxJdGVtIH0gZnJvbSAnLi4vLi4vLi4vZi1leHRlcm5hbC1pdGVtJztcblxuQEluamVjdGFibGUoKVxuQEZWYWxpZGF0b3JSZWdpc3RlcihFeHRlcm5hbEl0ZW1QcmVwYXJhdGlvblJlcXVlc3QpXG5leHBvcnQgY2xhc3MgRXh0ZXJuYWxJdGVtUHJlcGFyYXRpb25WYWxpZGF0b3IgaW1wbGVtZW50cyBJVmFsaWRhdG9yPEV4dGVybmFsSXRlbVByZXBhcmF0aW9uUmVxdWVzdD4ge1xuXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmRXh0ZXJuYWxJdGVtU2VydmljZTogRkV4dGVybmFsSXRlbVNlcnZpY2VcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IEV4dGVybmFsSXRlbVByZXBhcmF0aW9uUmVxdWVzdCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGV4dGVybmFsSXRlbSA9IHRoaXMuZ2V0RXh0ZXJuYWxJdGVtKHJlcXVlc3QuZXZlbnQudGFyZ2V0RWxlbWVudCk7XG4gICAgcmV0dXJuIGlzRXh0ZXJuYWxJdGVtKHJlcXVlc3QuZXZlbnQudGFyZ2V0RWxlbWVudCkgJiYgISFleHRlcm5hbEl0ZW0gJiYgIWV4dGVybmFsSXRlbS5mRGlzYWJsZWQ7XG4gIH1cblxuICBwcml2YXRlIGdldEV4dGVybmFsSXRlbSh0YXJnZXRFbGVtZW50OiBIVE1MRWxlbWVudCk6IEZFeHRlcm5hbEl0ZW1CYXNlPGFueT4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmZFeHRlcm5hbEl0ZW1TZXJ2aWNlLmdldEl0ZW0oZ2V0RXh0ZXJuYWxJdGVtKHRhcmdldEVsZW1lbnQpKTtcbiAgfVxufVxuIl19
@@ -1,36 +0,0 @@
1
- import { DomElementExtensions, Point, PointExtensions, RectExtensions } from '@foblex/core';
2
- export class ExternalItemDragHandler {
3
- externalItem;
4
- placeholder;
5
- onPointerDownRect = RectExtensions.initialize();
6
- difference = PointExtensions.initialize();
7
- constructor(externalItem) {
8
- this.externalItem = externalItem;
9
- }
10
- getStyle(position) {
11
- return `position: absolute; left: 0; top: 0; transform: translate(${position.x}px, ${position.y}px)`;
12
- }
13
- initialize() {
14
- this.onPointerDownRect = this.getExternalItemRect();
15
- this.placeholder = DomElementExtensions.deepCloneNode(this.externalItem.hostElement);
16
- this.placeholder.setAttribute('style', this.getStyle(Point.fromPoint(this.onPointerDownRect)));
17
- document.body.appendChild(this.placeholder);
18
- }
19
- getExternalItemRect() {
20
- const rect = this.externalItem.hostElement.getBoundingClientRect();
21
- const scrollTop = window.pageYOffset || document.documentElement.scrollTop;
22
- const scrollLeft = window.pageXOffset || document.documentElement.scrollLeft;
23
- const offsetTop = rect.top + scrollTop;
24
- const offsetLeft = rect.left + scrollLeft;
25
- return RectExtensions.initialize(offsetLeft, offsetTop, rect.width, rect.height);
26
- }
27
- move(difference) {
28
- this.difference = difference;
29
- const position = Point.fromPoint(this.onPointerDownRect).add(this.difference);
30
- this.placeholder.setAttribute('style', this.getStyle(position));
31
- }
32
- complete() {
33
- document.body.removeChild(this.placeholder);
34
- }
35
- }
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtaXRlbS5kcmFnLWhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZXh0ZXJuYWwtaXRlbS9kb21haW4vZXh0ZXJuYWwtaXRlbS5kcmFnLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFpQixLQUFLLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUkzRyxNQUFNLE9BQU8sdUJBQXVCO0lBU3pCO0lBUEYsV0FBVyxDQUF1QztJQUVqRCxpQkFBaUIsR0FBVSxjQUFjLENBQUMsVUFBVSxFQUFFLENBQUM7SUFFdkQsVUFBVSxHQUFXLGVBQWUsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUUxRCxZQUNTLFlBQStCO1FBQS9CLGlCQUFZLEdBQVosWUFBWSxDQUFtQjtJQUV4QyxDQUFDO0lBRU8sUUFBUSxDQUFDLFFBQWdCO1FBQy9CLE9BQU8sNkRBQThELFFBQVEsQ0FBQyxDQUFFLE9BQVEsUUFBUSxDQUFDLENBQUUsS0FBSyxDQUFDO0lBQzNHLENBQUM7SUFFTSxVQUFVO1FBQ2YsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQ3BELElBQUksQ0FBQyxXQUFXLEdBQUcsb0JBQW9CLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDckYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDL0YsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFTyxtQkFBbUI7UUFDekIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUNuRSxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsV0FBVyxJQUFJLFFBQVEsQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDO1FBQzNFLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxXQUFXLElBQUksUUFBUSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUM7UUFDN0UsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEdBQUcsR0FBRyxTQUFTLENBQUM7UUFDdkMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxVQUFVLENBQUM7UUFDMUMsT0FBTyxjQUFjLENBQUMsVUFBVSxDQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVNLElBQUksQ0FBQyxVQUFrQjtRQUM1QixJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUM3QixNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDOUUsSUFBSSxDQUFDLFdBQVksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRU0sUUFBUTtRQUNiLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFZLENBQUMsQ0FBQztJQUMvQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEb21FbGVtZW50RXh0ZW5zaW9ucywgSVBvaW50LCBJUmVjdCwgUG9pbnQsIFBvaW50RXh0ZW5zaW9ucywgUmVjdEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuaW1wb3J0IHsgRkV4dGVybmFsSXRlbUJhc2UgfSBmcm9tICcuLi8uLi9mLWV4dGVybmFsLWl0ZW0nO1xuaW1wb3J0IHsgSURyYWdnYWJsZUl0ZW0gfSBmcm9tICcuLi8uLi9mLWRyYWdnYWJsZSc7XG5cbmV4cG9ydCBjbGFzcyBFeHRlcm5hbEl0ZW1EcmFnSGFuZGxlciBpbXBsZW1lbnRzIElEcmFnZ2FibGVJdGVtIHtcblxuICBwdWJsaWMgcGxhY2Vob2xkZXI6IEhUTUxFbGVtZW50IHwgU1ZHRWxlbWVudCB8IHVuZGVmaW5lZDtcblxuICBwcml2YXRlIG9uUG9pbnRlckRvd25SZWN0OiBJUmVjdCA9IFJlY3RFeHRlbnNpb25zLmluaXRpYWxpemUoKTtcblxuICBwcml2YXRlIGRpZmZlcmVuY2U6IElQb2ludCA9IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGV4dGVybmFsSXRlbTogRkV4dGVybmFsSXRlbUJhc2VcbiAgKSB7XG4gIH1cblxuICBwcml2YXRlIGdldFN0eWxlKHBvc2l0aW9uOiBJUG9pbnQpOiBzdHJpbmcge1xuICAgIHJldHVybiBgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAwOyB0b3A6IDA7IHRyYW5zZm9ybTogdHJhbnNsYXRlKCR7IHBvc2l0aW9uLnggfXB4LCAkeyBwb3NpdGlvbi55IH1weClgO1xuICB9XG5cbiAgcHVibGljIGluaXRpYWxpemUoKTogdm9pZCB7XG4gICAgdGhpcy5vblBvaW50ZXJEb3duUmVjdCA9IHRoaXMuZ2V0RXh0ZXJuYWxJdGVtUmVjdCgpO1xuICAgIHRoaXMucGxhY2Vob2xkZXIgPSBEb21FbGVtZW50RXh0ZW5zaW9ucy5kZWVwQ2xvbmVOb2RlKHRoaXMuZXh0ZXJuYWxJdGVtLmhvc3RFbGVtZW50KTtcbiAgICB0aGlzLnBsYWNlaG9sZGVyLnNldEF0dHJpYnV0ZSgnc3R5bGUnLCB0aGlzLmdldFN0eWxlKFBvaW50LmZyb21Qb2ludCh0aGlzLm9uUG9pbnRlckRvd25SZWN0KSkpO1xuICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodGhpcy5wbGFjZWhvbGRlcik7XG4gIH1cblxuICBwcml2YXRlIGdldEV4dGVybmFsSXRlbVJlY3QoKTogSVJlY3Qge1xuICAgIGNvbnN0IHJlY3QgPSB0aGlzLmV4dGVybmFsSXRlbS5ob3N0RWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCBzY3JvbGxUb3AgPSB3aW5kb3cucGFnZVlPZmZzZXQgfHwgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcDtcbiAgICBjb25zdCBzY3JvbGxMZWZ0ID0gd2luZG93LnBhZ2VYT2Zmc2V0IHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxMZWZ0O1xuICAgIGNvbnN0IG9mZnNldFRvcCA9IHJlY3QudG9wICsgc2Nyb2xsVG9wO1xuICAgIGNvbnN0IG9mZnNldExlZnQgPSByZWN0LmxlZnQgKyBzY3JvbGxMZWZ0O1xuICAgIHJldHVybiBSZWN0RXh0ZW5zaW9ucy5pbml0aWFsaXplKG9mZnNldExlZnQsIG9mZnNldFRvcCwgcmVjdC53aWR0aCwgcmVjdC5oZWlnaHQpO1xuICB9XG5cbiAgcHVibGljIG1vdmUoZGlmZmVyZW5jZTogSVBvaW50KTogdm9pZCB7XG4gICAgdGhpcy5kaWZmZXJlbmNlID0gZGlmZmVyZW5jZTtcbiAgICBjb25zdCBwb3NpdGlvbiA9IFBvaW50LmZyb21Qb2ludCh0aGlzLm9uUG9pbnRlckRvd25SZWN0KS5hZGQodGhpcy5kaWZmZXJlbmNlKTtcbiAgICB0aGlzLnBsYWNlaG9sZGVyIS5zZXRBdHRyaWJ1dGUoJ3N0eWxlJywgdGhpcy5nZXRTdHlsZShwb3NpdGlvbikpO1xuICB9XG5cbiAgcHVibGljIGNvbXBsZXRlKCk6IHZvaWQge1xuICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQodGhpcy5wbGFjZWhvbGRlciEpO1xuICB9XG59XG4iXX0=
@@ -1,58 +0,0 @@
1
- import { Directive, Input } from '@angular/core';
2
- import { FExternalItemBase, F_EXTERNAL_ITEM } from './f-external-item-base';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "./f-external-item.service";
5
- let uniqueId = 0;
6
- export class FExternalItemDirective extends FExternalItemBase {
7
- elementReference;
8
- fExternalItemService;
9
- fExternalItemId = `f-external-item-${uniqueId++}`;
10
- get hostElement() {
11
- return this.elementReference.nativeElement;
12
- }
13
- fData;
14
- fDisabled = false;
15
- constructor(elementReference, fExternalItemService) {
16
- super();
17
- this.elementReference = elementReference;
18
- this.fExternalItemService = fExternalItemService;
19
- }
20
- ngOnInit() {
21
- this.fExternalItemService.registerItem(this);
22
- this.disablePointerEvents(Array.from(this.hostElement.children));
23
- }
24
- disablePointerEvents(children) {
25
- children.forEach((x) => {
26
- x.style.pointerEvents = 'none';
27
- this.disablePointerEvents(Array.from(x.children));
28
- });
29
- }
30
- ngOnDestroy() {
31
- this.fExternalItemService.removeItem(this);
32
- }
33
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: FExternalItemDirective, deps: [{ token: i0.ElementRef }, { token: i1.FExternalItemService }], target: i0.ɵɵFactoryTarget.Directive });
34
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.3", type: FExternalItemDirective, selector: "[fExternalItem]", inputs: { fExternalItemId: "fExternalItemId", fData: "fData", fDisabled: "fDisabled" }, host: { properties: { "attr.id": "fExternalItemId", "class.f-external-item-disabled": "fDisabled" }, classAttribute: "f-component f-external-item" }, providers: [
35
- { provide: F_EXTERNAL_ITEM, useExisting: FExternalItemDirective }
36
- ], usesInheritance: true, ngImport: i0 });
37
- }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: FExternalItemDirective, decorators: [{
39
- type: Directive,
40
- args: [{
41
- selector: "[fExternalItem]",
42
- host: {
43
- '[attr.id]': 'fExternalItemId',
44
- class: "f-component f-external-item",
45
- '[class.f-external-item-disabled]': 'fDisabled',
46
- },
47
- providers: [
48
- { provide: F_EXTERNAL_ITEM, useExisting: FExternalItemDirective }
49
- ],
50
- }]
51
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.FExternalItemService }], propDecorators: { fExternalItemId: [{
52
- type: Input
53
- }], fData: [{
54
- type: Input
55
- }], fDisabled: [{
56
- type: Input
57
- }] } });
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1leHRlcm5hbC1pdGVtLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1leHRlcm5hbC1pdGVtL2YtZXh0ZXJuYWwtaXRlbS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBRzVFLElBQUksUUFBUSxHQUFXLENBQUMsQ0FBQztBQWF6QixNQUFNLE9BQU8sc0JBQThCLFNBQVEsaUJBQXdCO0lBZ0IvRDtJQUNBO0lBZE0sZUFBZSxHQUFXLG1CQUFvQixRQUFRLEVBQUcsRUFBRSxDQUFDO0lBRTVFLElBQW9CLFdBQVc7UUFDN0IsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDO0lBQzdDLENBQUM7SUFHZSxLQUFLLENBQW9CO0lBR3pCLFNBQVMsR0FBWSxLQUFLLENBQUM7SUFFM0MsWUFDVSxnQkFBeUMsRUFDekMsb0JBQTBDO1FBRWxELEtBQUssRUFBRSxDQUFDO1FBSEEscUJBQWdCLEdBQWhCLGdCQUFnQixDQUF5QjtRQUN6Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO0lBR3BELENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBa0IsQ0FBQyxDQUFDO0lBQ3BGLENBQUM7SUFFTyxvQkFBb0IsQ0FBQyxRQUF1QjtRQUNsRCxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDckIsQ0FBQyxDQUFDLEtBQUssQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDO1lBQy9CLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQWtCLENBQUMsQ0FBQztRQUNyRSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0MsQ0FBQzt1R0FwQ1Usc0JBQXNCOzJGQUF0QixzQkFBc0Isd1JBSnRCO1lBQ1QsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxzQkFBc0IsRUFBRTtTQUNsRTs7MkZBRVUsc0JBQXNCO2tCQVhsQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLElBQUksRUFBRTt3QkFDSixXQUFXLEVBQUUsaUJBQWlCO3dCQUM5QixLQUFLLEVBQUUsNkJBQTZCO3dCQUNwQyxrQ0FBa0MsRUFBRSxXQUFXO3FCQUNoRDtvQkFDRCxTQUFTLEVBQUU7d0JBQ1QsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsd0JBQXdCLEVBQUU7cUJBQ2xFO2lCQUNGO2tIQUlpQixlQUFlO3NCQUQ5QixLQUFLO2dCQVFVLEtBQUs7c0JBRHBCLEtBQUs7Z0JBSVUsU0FBUztzQkFEeEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGRXh0ZXJuYWxJdGVtQmFzZSwgRl9FWFRFUk5BTF9JVEVNIH0gZnJvbSAnLi9mLWV4dGVybmFsLWl0ZW0tYmFzZSc7XG5pbXBvcnQgeyBGRXh0ZXJuYWxJdGVtU2VydmljZSB9IGZyb20gJy4vZi1leHRlcm5hbC1pdGVtLnNlcnZpY2UnO1xuXG5sZXQgdW5pcXVlSWQ6IG51bWJlciA9IDA7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogXCJbZkV4dGVybmFsSXRlbV1cIixcbiAgaG9zdDoge1xuICAgICdbYXR0ci5pZF0nOiAnZkV4dGVybmFsSXRlbUlkJyxcbiAgICBjbGFzczogXCJmLWNvbXBvbmVudCBmLWV4dGVybmFsLWl0ZW1cIixcbiAgICAnW2NsYXNzLmYtZXh0ZXJuYWwtaXRlbS1kaXNhYmxlZF0nOiAnZkRpc2FibGVkJyxcbiAgfSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgeyBwcm92aWRlOiBGX0VYVEVSTkFMX0lURU0sIHVzZUV4aXN0aW5nOiBGRXh0ZXJuYWxJdGVtRGlyZWN0aXZlIH1cbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRkV4dGVybmFsSXRlbURpcmVjdGl2ZTxURGF0YT4gZXh0ZW5kcyBGRXh0ZXJuYWxJdGVtQmFzZTxURGF0YT4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgQElucHV0KClcbiAgcHVibGljIG92ZXJyaWRlIGZFeHRlcm5hbEl0ZW1JZDogc3RyaW5nID0gYGYtZXh0ZXJuYWwtaXRlbS0keyB1bmlxdWVJZCsrIH1gO1xuXG4gIHB1YmxpYyBvdmVycmlkZSBnZXQgaG9zdEVsZW1lbnQoKTogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmZXJlbmNlLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZkRhdGE6IFREYXRhIHwgdW5kZWZpbmVkO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBvdmVycmlkZSBmRGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsZW1lbnRSZWZlcmVuY2U6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgZkV4dGVybmFsSXRlbVNlcnZpY2U6IEZFeHRlcm5hbEl0ZW1TZXJ2aWNlLFxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZkV4dGVybmFsSXRlbVNlcnZpY2UucmVnaXN0ZXJJdGVtKHRoaXMpO1xuICAgIHRoaXMuZGlzYWJsZVBvaW50ZXJFdmVudHMoQXJyYXkuZnJvbSh0aGlzLmhvc3RFbGVtZW50LmNoaWxkcmVuKSBhcyBIVE1MRWxlbWVudFtdKTtcbiAgfVxuXG4gIHByaXZhdGUgZGlzYWJsZVBvaW50ZXJFdmVudHMoY2hpbGRyZW46IEhUTUxFbGVtZW50W10pOiB2b2lkIHtcbiAgICBjaGlsZHJlbi5mb3JFYWNoKCh4KSA9PiB7XG4gICAgICB4LnN0eWxlLnBvaW50ZXJFdmVudHMgPSAnbm9uZSc7XG4gICAgICB0aGlzLmRpc2FibGVQb2ludGVyRXZlbnRzKEFycmF5LmZyb20oeC5jaGlsZHJlbikgYXMgSFRNTEVsZW1lbnRbXSk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5mRXh0ZXJuYWxJdGVtU2VydmljZS5yZW1vdmVJdGVtKHRoaXMpO1xuICB9XG59XG4iXX0=
@@ -1,26 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class FExternalItemService {
4
- items = [];
5
- registerItem(item) {
6
- this.items.push(item);
7
- }
8
- getItem(element) {
9
- return this.items.find(item => item.hostElement === element);
10
- }
11
- removeItem(item) {
12
- const index = this.items.indexOf(item);
13
- if (index !== -1) {
14
- this.items.splice(index, 1);
15
- }
16
- }
17
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: FExternalItemService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
18
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: FExternalItemService, providedIn: 'root' });
19
- }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: FExternalItemService, decorators: [{
21
- type: Injectable,
22
- args: [{
23
- providedIn: 'root'
24
- }]
25
- }] });
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1leHRlcm5hbC1pdGVtLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZXh0ZXJuYWwtaXRlbS9mLWV4dGVybmFsLWl0ZW0uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU0zQyxNQUFNLE9BQU8sb0JBQW9CO0lBRXZCLEtBQUssR0FBd0IsRUFBRSxDQUFDO0lBRWpDLFlBQVksQ0FBQyxJQUF1QjtRQUN6QyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRU0sT0FBTyxDQUFDLE9BQWlDO1FBQzlDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxLQUFLLE9BQU8sQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFTSxVQUFVLENBQUMsSUFBdUI7UUFDdkMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkMsSUFBSSxLQUFLLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDOUIsQ0FBQztJQUNILENBQUM7dUdBakJVLG9CQUFvQjsyR0FBcEIsb0JBQW9CLGNBRm5CLE1BQU07OzJGQUVQLG9CQUFvQjtrQkFIaEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGRXh0ZXJuYWxJdGVtQmFzZSB9IGZyb20gJy4vZi1leHRlcm5hbC1pdGVtLWJhc2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBGRXh0ZXJuYWxJdGVtU2VydmljZSB7XG5cbiAgcHJpdmF0ZSBpdGVtczogRkV4dGVybmFsSXRlbUJhc2VbXSA9IFtdO1xuXG4gIHB1YmxpYyByZWdpc3Rlckl0ZW0oaXRlbTogRkV4dGVybmFsSXRlbUJhc2UpOiB2b2lkIHtcbiAgICB0aGlzLml0ZW1zLnB1c2goaXRlbSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0SXRlbShlbGVtZW50OiBIVE1MRWxlbWVudCB8IFNWR0VsZW1lbnQpOiBGRXh0ZXJuYWxJdGVtQmFzZSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMuZmluZChpdGVtID0+IGl0ZW0uaG9zdEVsZW1lbnQgPT09IGVsZW1lbnQpO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZUl0ZW0oaXRlbTogRkV4dGVybmFsSXRlbUJhc2UpOiB2b2lkIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuaXRlbXMuaW5kZXhPZihpdGVtKTtcbiAgICBpZiAoaW5kZXggIT09IC0xKSB7XG4gICAgICB0aGlzLml0ZW1zLnNwbGljZShpbmRleCwgMSk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1,112 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
2
- import { F_FLOW, FFlowBase } from './f-flow-base';
3
- import { debounceTime, startWith, Subscription } from 'rxjs';
4
- import { ClearSelectionRequest, COMMON_PROVIDERS, GetScaledNodeRectsWithFlowPositionRequest, GetPositionInFlowRequest, GetSelectionRequest, RedrawConnectionsRequest, SelectAllRequest, SelectRequest, SortItemLayersRequest, } from '../domain';
5
- import { FFlowMediator } from '../infrastructure';
6
- import { F_DRAGGABLE_PROVIDERS, FDraggableDataContext } from '../f-draggable';
7
- import { FConnectionFactory } from '../f-connection';
8
- import { FComponentsStore, FTransformStore } from '../f-storage';
9
- import * as i0 from "@angular/core";
10
- import * as i1 from "../f-storage";
11
- import * as i2 from "../infrastructure";
12
- let uniqueId = 0;
13
- export class FFlowComponent extends FFlowBase {
14
- elementReference;
15
- fComponentsStore;
16
- fMediator;
17
- subscription$ = new Subscription();
18
- fFlowId = `f-flow-${uniqueId++}`;
19
- get hostElement() {
20
- return this.elementReference.nativeElement;
21
- }
22
- fLoaded = new EventEmitter();
23
- isLoaded = false;
24
- constructor(elementReference, fComponentsStore, fMediator) {
25
- super();
26
- this.elementReference = elementReference;
27
- this.fComponentsStore = fComponentsStore;
28
- this.fMediator = fMediator;
29
- }
30
- ngOnInit() {
31
- this.fComponentsStore.fFlow = this;
32
- }
33
- ngAfterContentInit() {
34
- this.subscription$.add(this.subscribeOnElementsChanges());
35
- this.subscription$.add(this.subscribeOnComponentsCountChanges());
36
- }
37
- subscribeOnComponentsCountChanges() {
38
- return this.fComponentsStore.componentsCount$.pipe(startWith(null), debounceTime(20)).subscribe(() => {
39
- this.fMediator.send(new SortItemLayersRequest());
40
- });
41
- }
42
- subscribeOnElementsChanges() {
43
- return this.fComponentsStore.componentsData$.pipe(startWith(null), debounceTime(20)).subscribe(() => {
44
- this.fMediator.send(new RedrawConnectionsRequest());
45
- if (!this.isLoaded) {
46
- this.isLoaded = true;
47
- setTimeout(() => {
48
- this.fLoaded.emit();
49
- });
50
- }
51
- });
52
- }
53
- redraw() {
54
- this.fComponentsStore.componentDataChanged();
55
- }
56
- reset() {
57
- this.isLoaded = false;
58
- }
59
- getAllNodesRect() {
60
- return this.fMediator.send(new GetScaledNodeRectsWithFlowPositionRequest());
61
- }
62
- getSelection() {
63
- return this.fMediator.send(new GetSelectionRequest());
64
- }
65
- getPositionInFlow(position) {
66
- return this.fMediator.send(new GetPositionInFlowRequest(position));
67
- }
68
- selectAll() {
69
- this.fMediator.send(new SelectAllRequest());
70
- }
71
- select(nodes, connections) {
72
- this.fMediator.send(new SelectRequest(nodes, connections));
73
- }
74
- clearSelection() {
75
- this.fMediator.send(new ClearSelectionRequest());
76
- }
77
- ngOnDestroy() {
78
- this.subscription$.unsubscribe();
79
- }
80
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: FFlowComponent, deps: [{ token: i0.ElementRef }, { token: i1.FComponentsStore }, { token: i2.FFlowMediator }], target: i0.ɵɵFactoryTarget.Component });
81
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.3", type: FFlowComponent, selector: "f-flow", inputs: { fFlowId: "fFlowId" }, outputs: { fLoaded: "fLoaded" }, host: { properties: { "attr.id": "fFlowId" }, classAttribute: "f-component f-flow" }, providers: [
82
- FFlowMediator,
83
- FComponentsStore,
84
- FTransformStore,
85
- FDraggableDataContext,
86
- FConnectionFactory,
87
- ...F_DRAGGABLE_PROVIDERS,
88
- ...COMMON_PROVIDERS,
89
- { provide: F_FLOW, useExisting: FFlowComponent },
90
- ], usesInheritance: true, ngImport: i0, template: "<ng-container>\n <ng-content select=\"[fDefinitions]\"></ng-content>\n\n <ng-content select=\"f-background\"></ng-content>\n\n <ng-content select=\"f-line-alignment\"></ng-content>\n\n <ng-content select=\"f-canvas\"></ng-content>\n\n <ng-content select=\"f-selection-area\"></ng-content>\n\n <ng-content select=\"f-minimap\"></ng-content>\n</ng-container>\n", styles: [":host{display:block;position:relative;width:100%;height:100%;overflow:hidden;pointer-events:all;-webkit-user-select:none;user-select:none;touch-action:none}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
91
- }
92
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: FFlowComponent, decorators: [{
93
- type: Component,
94
- args: [{ selector: 'f-flow', host: {
95
- '[attr.id]': 'fFlowId',
96
- class: "f-component f-flow",
97
- }, providers: [
98
- FFlowMediator,
99
- FComponentsStore,
100
- FTransformStore,
101
- FDraggableDataContext,
102
- FConnectionFactory,
103
- ...F_DRAGGABLE_PROVIDERS,
104
- ...COMMON_PROVIDERS,
105
- { provide: F_FLOW, useExisting: FFlowComponent },
106
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container>\n <ng-content select=\"[fDefinitions]\"></ng-content>\n\n <ng-content select=\"f-background\"></ng-content>\n\n <ng-content select=\"f-line-alignment\"></ng-content>\n\n <ng-content select=\"f-canvas\"></ng-content>\n\n <ng-content select=\"f-selection-area\"></ng-content>\n\n <ng-content select=\"f-minimap\"></ng-content>\n</ng-container>\n", styles: [":host{display:block;position:relative;width:100%;height:100%;overflow:hidden;pointer-events:all;-webkit-user-select:none;user-select:none;touch-action:none}\n"] }]
107
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.FComponentsStore }, { type: i2.FFlowMediator }], propDecorators: { fFlowId: [{
108
- type: Input
109
- }], fLoaded: [{
110
- type: Output
111
- }] } });
112
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1mbG93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1mbG93L2YtZmxvdy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZmxvdy9mLWZsb3cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixTQUFTLEVBQWMsWUFBWSxFQUNuQyxLQUFLLEVBQXFCLE1BQU0sRUFDakMsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdELE9BQU8sRUFDTCxxQkFBcUIsRUFDckIsZ0JBQWdCLEVBQUUseUNBQXlDLEVBQUUsd0JBQXdCLEVBQ3JGLG1CQUFtQixFQUNuQix3QkFBd0IsRUFDeEIsZ0JBQWdCLEVBQUUsYUFBYSxFQUFFLHFCQUFxQixHQUN2RCxNQUFNLFdBQVcsQ0FBQztBQUVuQixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUNMLHFCQUFxQixFQUNyQixxQkFBcUIsRUFDdEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLE1BQU0sY0FBYyxDQUFDOzs7O0FBRWpFLElBQUksUUFBUSxHQUFXLENBQUMsQ0FBQztBQXNCekIsTUFBTSxPQUFPLGNBQWUsU0FBUSxTQUFTO0lBaUJqQztJQUNBO0lBQ0E7SUFqQkYsYUFBYSxHQUFpQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBR3pDLE9BQU8sR0FBVyxVQUFXLFFBQVEsRUFBRyxFQUFFLENBQUM7SUFFM0QsSUFBb0IsV0FBVztRQUM3QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7SUFDN0MsQ0FBQztJQUdlLE9BQU8sR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQUUvRCxRQUFRLEdBQVksS0FBSyxDQUFDO0lBRWxDLFlBQ1UsZ0JBQXlDLEVBQ3pDLGdCQUFrQyxFQUNsQyxTQUF3QjtRQUVoQyxLQUFLLEVBQUUsQ0FBQztRQUpBLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBeUI7UUFDekMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxjQUFTLEdBQVQsU0FBUyxDQUFlO0lBR2xDLENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7SUFDckMsQ0FBQztJQUVNLGtCQUFrQjtRQUN2QixJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FDcEIsSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQ2xDLENBQUM7UUFDRixJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FDcEIsSUFBSSxDQUFDLGlDQUFpQyxFQUFFLENBQ3pDLENBQUM7SUFDSixDQUFDO0lBRU8saUNBQWlDO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNuRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLHFCQUFxQixFQUFFLENBQUMsQ0FBQztRQUNuRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTywwQkFBMEI7UUFDaEMsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNsRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLHdCQUF3QixFQUFFLENBQUMsQ0FBQztZQUVwRCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNuQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztnQkFDckIsVUFBVSxDQUFDLEdBQUcsRUFBRTtvQkFDZCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUN0QixDQUFDLENBQUMsQ0FBQTtZQUNKLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxNQUFNO1FBQ1gsSUFBSSxDQUFDLGdCQUFnQixDQUFDLG9CQUFvQixFQUFFLENBQUM7SUFDL0MsQ0FBQztJQUVNLEtBQUs7UUFDVixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUN4QixDQUFDO0lBRU0sZUFBZTtRQUNwQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFlLElBQUkseUNBQXlDLEVBQUUsQ0FBQyxDQUFDO0lBQzVGLENBQUM7SUFFTSxZQUFZO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQXdCLElBQUksbUJBQW1CLEVBQUUsQ0FBQyxDQUFDO0lBQy9FLENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxRQUFnQjtRQUN2QyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksd0JBQXdCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRU0sU0FBUztRQUNkLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFPLElBQUksZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFTSxNQUFNLENBQUMsS0FBZSxFQUFFLFdBQXFCO1FBQ2xELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFPLElBQUksYUFBYSxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFTSxjQUFjO1FBQ25CLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFPLElBQUkscUJBQXFCLEVBQUUsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbkMsQ0FBQzt1R0ExRlUsY0FBYzsyRkFBZCxjQUFjLHdMQVpkO1lBQ1QsYUFBYTtZQUNiLGdCQUFnQjtZQUNoQixlQUFlO1lBQ2YscUJBQXFCO1lBQ3JCLGtCQUFrQjtZQUNsQixHQUFHLHFCQUFxQjtZQUN4QixHQUFHLGdCQUFnQjtZQUNuQixFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBRTtTQUNqRCxpREMzQ0gsOFdBYUE7OzJGRGlDYSxjQUFjO2tCQXBCMUIsU0FBUzsrQkFDRSxRQUFRLFFBR1o7d0JBQ0osV0FBVyxFQUFFLFNBQVM7d0JBQ3RCLEtBQUssRUFBRSxvQkFBb0I7cUJBQzVCLGFBQ1U7d0JBQ1QsYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YscUJBQXFCO3dCQUNyQixrQkFBa0I7d0JBQ2xCLEdBQUcscUJBQXFCO3dCQUN4QixHQUFHLGdCQUFnQjt3QkFDbkIsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFdBQVcsZ0JBQWdCLEVBQUU7cUJBQ2pELG1CQUNnQix1QkFBdUIsQ0FBQyxNQUFNOzBJQU8vQixPQUFPO3NCQUR0QixLQUFLO2dCQVFVLE9BQU87c0JBRHRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsXG4gIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRl9GTE9XLCBGRmxvd0Jhc2UgfSBmcm9tICcuL2YtZmxvdy1iYXNlJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgc3RhcnRXaXRoLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIENsZWFyU2VsZWN0aW9uUmVxdWVzdCxcbiAgQ09NTU9OX1BST1ZJREVSUywgR2V0U2NhbGVkTm9kZVJlY3RzV2l0aEZsb3dQb3NpdGlvblJlcXVlc3QsIEdldFBvc2l0aW9uSW5GbG93UmVxdWVzdCxcbiAgR2V0U2VsZWN0aW9uUmVxdWVzdCxcbiAgUmVkcmF3Q29ubmVjdGlvbnNSZXF1ZXN0LFxuICBTZWxlY3RBbGxSZXF1ZXN0LCBTZWxlY3RSZXF1ZXN0LCBTb3J0SXRlbUxheWVyc1JlcXVlc3QsXG59IGZyb20gJy4uL2RvbWFpbic7XG5pbXBvcnQgeyBJUG9pbnQsIElSZWN0IH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IEZGbG93TWVkaWF0b3IgfSBmcm9tICcuLi9pbmZyYXN0cnVjdHVyZSc7XG5pbXBvcnQge1xuICBGX0RSQUdHQUJMRV9QUk9WSURFUlMsXG4gIEZEcmFnZ2FibGVEYXRhQ29udGV4dCwgRlNlbGVjdGlvbkNoYW5nZUV2ZW50XG59IGZyb20gJy4uL2YtZHJhZ2dhYmxlJztcbmltcG9ydCB7IEZDb25uZWN0aW9uRmFjdG9yeSB9IGZyb20gJy4uL2YtY29ubmVjdGlvbic7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlLCBGVHJhbnNmb3JtU3RvcmUgfSBmcm9tICcuLi9mLXN0b3JhZ2UnO1xuXG5sZXQgdW5pcXVlSWQ6IG51bWJlciA9IDA7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2YtZmxvdycsXG4gIHRlbXBsYXRlVXJsOiAnLi9mLWZsb3cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsgJy4vZi1mbG93LmNvbXBvbmVudC5zY3NzJyBdLFxuICBob3N0OiB7XG4gICAgJ1thdHRyLmlkXSc6ICdmRmxvd0lkJyxcbiAgICBjbGFzczogXCJmLWNvbXBvbmVudCBmLWZsb3dcIixcbiAgfSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgRkZsb3dNZWRpYXRvcixcbiAgICBGQ29tcG9uZW50c1N0b3JlLFxuICAgIEZUcmFuc2Zvcm1TdG9yZSxcbiAgICBGRHJhZ2dhYmxlRGF0YUNvbnRleHQsXG4gICAgRkNvbm5lY3Rpb25GYWN0b3J5LFxuICAgIC4uLkZfRFJBR0dBQkxFX1BST1ZJREVSUyxcbiAgICAuLi5DT01NT05fUFJPVklERVJTLFxuICAgIHsgcHJvdmlkZTogRl9GTE9XLCB1c2VFeGlzdGluZzogRkZsb3dDb21wb25lbnQgfSxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEZGbG93Q29tcG9uZW50IGV4dGVuZHMgRkZsb3dCYXNlIGltcGxlbWVudHMgT25Jbml0LCBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3kge1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uJDogU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBvdmVycmlkZSBmRmxvd0lkOiBzdHJpbmcgPSBgZi1mbG93LSR7IHVuaXF1ZUlkKysgfWA7XG5cbiAgcHVibGljIG92ZXJyaWRlIGdldCBob3N0RWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZmVyZW5jZS5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBvdmVycmlkZSBmTG9hZGVkOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgcHJpdmF0ZSBpc0xvYWRlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZWxlbWVudFJlZmVyZW5jZTogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgIHByaXZhdGUgZk1lZGlhdG9yOiBGRmxvd01lZGlhdG9yLFxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mRmxvdyA9IHRoaXM7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uJC5hZGQoXG4gICAgICB0aGlzLnN1YnNjcmliZU9uRWxlbWVudHNDaGFuZ2VzKClcbiAgICApO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uJC5hZGQoXG4gICAgICB0aGlzLnN1YnNjcmliZU9uQ29tcG9uZW50c0NvdW50Q2hhbmdlcygpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgc3Vic2NyaWJlT25Db21wb25lbnRzQ291bnRDaGFuZ2VzKCk6IFN1YnNjcmlwdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5jb21wb25lbnRzQ291bnQkLnBpcGUoc3RhcnRXaXRoKG51bGwpLCBkZWJvdW5jZVRpbWUoMjApKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5mTWVkaWF0b3Iuc2VuZChuZXcgU29ydEl0ZW1MYXllcnNSZXF1ZXN0KCkpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBzdWJzY3JpYmVPbkVsZW1lbnRzQ2hhbmdlcygpOiBTdWJzY3JpcHRpb24ge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuY29tcG9uZW50c0RhdGEkLnBpcGUoc3RhcnRXaXRoKG51bGwpLCBkZWJvdW5jZVRpbWUoMjApKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5mTWVkaWF0b3Iuc2VuZChuZXcgUmVkcmF3Q29ubmVjdGlvbnNSZXF1ZXN0KCkpO1xuXG4gICAgICBpZiAoIXRoaXMuaXNMb2FkZWQpIHtcbiAgICAgICAgdGhpcy5pc0xvYWRlZCA9IHRydWU7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuZkxvYWRlZC5lbWl0KCk7XG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgcmVkcmF3KCk6IHZvaWQge1xuICAgIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5jb21wb25lbnREYXRhQ2hhbmdlZCgpO1xuICB9XG5cbiAgcHVibGljIHJlc2V0KCk6IHZvaWQge1xuICAgIHRoaXMuaXNMb2FkZWQgPSBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRBbGxOb2Rlc1JlY3QoKTogSVJlY3QgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJUmVjdCB8IG51bGw+KG5ldyBHZXRTY2FsZWROb2RlUmVjdHNXaXRoRmxvd1Bvc2l0aW9uUmVxdWVzdCgpKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRTZWxlY3Rpb24oKTogRlNlbGVjdGlvbkNoYW5nZUV2ZW50IHtcbiAgICByZXR1cm4gdGhpcy5mTWVkaWF0b3Iuc2VuZDxGU2VsZWN0aW9uQ2hhbmdlRXZlbnQ+KG5ldyBHZXRTZWxlY3Rpb25SZXF1ZXN0KCkpO1xuICB9XG5cbiAgcHVibGljIGdldFBvc2l0aW9uSW5GbG93KHBvc2l0aW9uOiBJUG9pbnQpOiBJUmVjdCB7XG4gICAgcmV0dXJuIHRoaXMuZk1lZGlhdG9yLnNlbmQobmV3IEdldFBvc2l0aW9uSW5GbG93UmVxdWVzdChwb3NpdGlvbikpO1xuICB9XG5cbiAgcHVibGljIHNlbGVjdEFsbCgpOiB2b2lkIHtcbiAgICB0aGlzLmZNZWRpYXRvci5zZW5kPHZvaWQ+KG5ldyBTZWxlY3RBbGxSZXF1ZXN0KCkpO1xuICB9XG5cbiAgcHVibGljIHNlbGVjdChub2Rlczogc3RyaW5nW10sIGNvbm5lY3Rpb25zOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQ8dm9pZD4obmV3IFNlbGVjdFJlcXVlc3Qobm9kZXMsIGNvbm5lY3Rpb25zKSk7XG4gIH1cblxuICBwdWJsaWMgY2xlYXJTZWxlY3Rpb24oKTogdm9pZCB7XG4gICAgdGhpcy5mTWVkaWF0b3Iuc2VuZDx2b2lkPihuZXcgQ2xlYXJTZWxlY3Rpb25SZXF1ZXN0KCkpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uJC51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJbZkRlZmluaXRpb25zXVwiPjwvbmctY29udGVudD5cblxuICA8bmctY29udGVudCBzZWxlY3Q9XCJmLWJhY2tncm91bmRcIj48L25nLWNvbnRlbnQ+XG5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZi1saW5lLWFsaWdubWVudFwiPjwvbmctY29udGVudD5cblxuICA8bmctY29udGVudCBzZWxlY3Q9XCJmLWNhbnZhc1wiPjwvbmctY29udGVudD5cblxuICA8bmctY29udGVudCBzZWxlY3Q9XCJmLXNlbGVjdGlvbi1hcmVhXCI+PC9uZy1jb250ZW50PlxuXG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImYtbWluaW1hcFwiPjwvbmctY29udGVudD5cbjwvbmctY29udGFpbmVyPlxuIl19
@@ -1,24 +0,0 @@
1
- import { DomElementExtensions } from '@foblex/core';
2
- export class LineElement {
3
- hostElement;
4
- element = DomElementExtensions.createHtmlElement('div');
5
- constructor(hostElement) {
6
- this.hostElement = hostElement;
7
- this.hostElement.appendChild(this.element);
8
- this.element.classList.add('f-line');
9
- }
10
- hide() {
11
- this.element.style.display = 'none';
12
- }
13
- show() {
14
- this.element.style.display = 'block';
15
- }
16
- draw(object) {
17
- this.element.style.position = 'absolute';
18
- Object.keys(object).forEach((key) => {
19
- // @ts-ignore
20
- this.element.style[key] = object[key] + 'px';
21
- });
22
- }
23
- }
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1lbGVtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWxpbmUtYWxpZ25tZW50L2RvbWFpbi9saW5lLWVsZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBR3BELE1BQU0sT0FBTyxXQUFXO0lBS0Q7SUFISixPQUFPLEdBQWdCLG9CQUFvQixDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRXRGLFlBQ3FCLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBRTNDLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMzQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVNLElBQUk7UUFDVCxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO0lBQ3RDLENBQUM7SUFFTSxJQUFJO1FBQ1QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQTtJQUN0QyxDQUFDO0lBRU0sSUFBSSxDQUFDLE1BQW1DO1FBQzdDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUM7UUFDekMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFXLEVBQUUsRUFBRTtZQUMxQyxhQUFhO1lBQ2IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUUsR0FBRyxDQUFFLEdBQUcsTUFBTSxDQUFFLEdBQUcsQ0FBRSxHQUFHLElBQUksQ0FBQztRQUNuRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERvbUVsZW1lbnRFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IElMaW5lQWxpZ25tZW50UmVjdCB9IGZyb20gJy4vaS1saW5lLWFsaWdubWVudC1yZWN0JztcblxuZXhwb3J0IGNsYXNzIExpbmVFbGVtZW50IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnQ6IEhUTUxFbGVtZW50ID0gRG9tRWxlbWVudEV4dGVuc2lvbnMuY3JlYXRlSHRtbEVsZW1lbnQoJ2RpdicpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSByZWFkb25seSBob3N0RWxlbWVudDogSFRNTEVsZW1lbnQsXG4gICkge1xuICAgIHRoaXMuaG9zdEVsZW1lbnQuYXBwZW5kQ2hpbGQodGhpcy5lbGVtZW50KTtcbiAgICB0aGlzLmVsZW1lbnQuY2xhc3NMaXN0LmFkZCgnZi1saW5lJyk7XG4gIH1cblxuICBwdWJsaWMgaGlkZSgpOiB2b2lkIHtcbiAgICB0aGlzLmVsZW1lbnQuc3R5bGUuZGlzcGxheSA9ICdub25lJztcbiAgfVxuXG4gIHB1YmxpYyBzaG93KCk6IHZvaWQge1xuICAgIHRoaXMuZWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gJ2Jsb2NrJ1xuICB9XG5cbiAgcHVibGljIGRyYXcob2JqZWN0OiBQYXJ0aWFsPElMaW5lQWxpZ25tZW50UmVjdD4pOiB2b2lkIHtcbiAgICB0aGlzLmVsZW1lbnQuc3R5bGUucG9zaXRpb24gPSAnYWJzb2x1dGUnO1xuICAgIE9iamVjdC5rZXlzKG9iamVjdCkuZm9yRWFjaCgoa2V5OiBzdHJpbmcpID0+IHtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIHRoaXMuZWxlbWVudC5zdHlsZVsga2V5IF0gPSBvYmplY3RbIGtleSBdICsgJ3B4JztcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -1,38 +0,0 @@
1
- import { LineElement } from './line-element';
2
- export class LineService {
3
- hostElement;
4
- fHorizontalLine;
5
- fVerticalLine;
6
- constructor(hostElement) {
7
- this.hostElement = hostElement;
8
- this.fHorizontalLine = new LineElement(this.hostElement);
9
- this.fVerticalLine = new LineElement(this.hostElement);
10
- this.fHorizontalLine.hide();
11
- this.fVerticalLine.hide();
12
- }
13
- drawVerticalLine(x, size, transform) {
14
- this.fVerticalLine.show();
15
- this.fVerticalLine.draw({
16
- left: x * transform.scale + transform.position.x + transform.scaledPosition.x,
17
- top: 0,
18
- width: 1,
19
- height: size.height
20
- });
21
- }
22
- drawHorizontalLine(y, size, transform) {
23
- this.fHorizontalLine.show();
24
- this.fHorizontalLine.draw({
25
- left: 0,
26
- top: y * transform.scale + transform.position.y + transform.scaledPosition.y,
27
- width: size.width,
28
- height: 1
29
- });
30
- }
31
- hideVerticalLine() {
32
- this.fVerticalLine.hide();
33
- }
34
- hideHorizontalLine() {
35
- this.fHorizontalLine.hide();
36
- }
37
- }
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWxpbmUtYWxpZ25tZW50L2RvbWFpbi9saW5lLXNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE1BQU0sT0FBTyxXQUFXO0lBS0Y7SUFIWixlQUFlLENBQWM7SUFDN0IsYUFBYSxDQUFjO0lBRW5DLFlBQW9CLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQzFDLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3pELElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRU0sZ0JBQWdCLENBQUMsQ0FBUyxFQUFFLElBQVcsRUFBRSxTQUEwQjtRQUN4RSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDO1lBQ3RCLElBQUksRUFBRSxDQUFDLEdBQUcsU0FBUyxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxTQUFTLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDN0UsR0FBRyxFQUFFLENBQUM7WUFDTixLQUFLLEVBQUUsQ0FBQztZQUNSLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtTQUNwQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sa0JBQWtCLENBQUMsQ0FBUyxFQUFFLElBQVcsRUFBRSxTQUEwQjtRQUMxRSxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDO1lBQ3hCLElBQUksRUFBRSxDQUFDO1lBQ1AsR0FBRyxFQUFFLENBQUMsR0FBRyxTQUFTLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUM1RSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsTUFBTSxFQUFFLENBQUM7U0FDVixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sZ0JBQWdCO1FBQ3JCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVNLGtCQUFrQjtRQUN2QixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzlCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElTaXplLCBJVHJhbnNmb3JtTW9kZWwgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuaW1wb3J0IHsgTGluZUVsZW1lbnQgfSBmcm9tICcuL2xpbmUtZWxlbWVudCc7XG5cbmV4cG9ydCBjbGFzcyBMaW5lU2VydmljZSB7XG5cbiAgcHJpdmF0ZSBmSG9yaXpvbnRhbExpbmU6IExpbmVFbGVtZW50O1xuICBwcml2YXRlIGZWZXJ0aWNhbExpbmU6IExpbmVFbGVtZW50O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaG9zdEVsZW1lbnQ6IEhUTUxFbGVtZW50KSB7XG4gICAgdGhpcy5mSG9yaXpvbnRhbExpbmUgPSBuZXcgTGluZUVsZW1lbnQodGhpcy5ob3N0RWxlbWVudCk7XG4gICAgdGhpcy5mVmVydGljYWxMaW5lID0gbmV3IExpbmVFbGVtZW50KHRoaXMuaG9zdEVsZW1lbnQpO1xuICAgIHRoaXMuZkhvcml6b250YWxMaW5lLmhpZGUoKTtcbiAgICB0aGlzLmZWZXJ0aWNhbExpbmUuaGlkZSgpO1xuICB9XG5cbiAgcHVibGljIGRyYXdWZXJ0aWNhbExpbmUoeDogbnVtYmVyLCBzaXplOiBJU2l6ZSwgdHJhbnNmb3JtOiBJVHJhbnNmb3JtTW9kZWwpOiB2b2lkIHtcbiAgICB0aGlzLmZWZXJ0aWNhbExpbmUuc2hvdygpO1xuICAgIHRoaXMuZlZlcnRpY2FsTGluZS5kcmF3KHtcbiAgICAgIGxlZnQ6IHggKiB0cmFuc2Zvcm0uc2NhbGUgKyB0cmFuc2Zvcm0ucG9zaXRpb24ueCArIHRyYW5zZm9ybS5zY2FsZWRQb3NpdGlvbi54LFxuICAgICAgdG9wOiAwLFxuICAgICAgd2lkdGg6IDEsXG4gICAgICBoZWlnaHQ6IHNpemUuaGVpZ2h0XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZHJhd0hvcml6b250YWxMaW5lKHk6IG51bWJlciwgc2l6ZTogSVNpemUsIHRyYW5zZm9ybTogSVRyYW5zZm9ybU1vZGVsKTogdm9pZCB7XG4gICAgdGhpcy5mSG9yaXpvbnRhbExpbmUuc2hvdygpO1xuICAgIHRoaXMuZkhvcml6b250YWxMaW5lLmRyYXcoe1xuICAgICAgbGVmdDogMCxcbiAgICAgIHRvcDogeSAqIHRyYW5zZm9ybS5zY2FsZSArIHRyYW5zZm9ybS5wb3NpdGlvbi55ICsgdHJhbnNmb3JtLnNjYWxlZFBvc2l0aW9uLnksXG4gICAgICB3aWR0aDogc2l6ZS53aWR0aCxcbiAgICAgIGhlaWdodDogMVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGhpZGVWZXJ0aWNhbExpbmUoKTogdm9pZCB7XG4gICAgdGhpcy5mVmVydGljYWxMaW5lLmhpZGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBoaWRlSG9yaXpvbnRhbExpbmUoKTogdm9pZCB7XG4gICAgdGhpcy5mSG9yaXpvbnRhbExpbmUuaGlkZSgpO1xuICB9XG59XG4iXX0=
@@ -1,104 +0,0 @@
1
- /**
2
- * A class to find the nearest coordinate.
3
- */
4
- export class NearestCoordinateFinder {
5
- alignThreshold;
6
- elements;
7
- target;
8
- /**
9
- * Constructor to initialize the NearestCoordinateFinder.
10
- * @param elements - The array of IRect elements.
11
- * @param target - The target IRect element.
12
- * @param alignThreshold - The threshold to align the elements.
13
- */
14
- constructor(elements, target, alignThreshold = 10) {
15
- this.alignThreshold = alignThreshold;
16
- this.elements = elements;
17
- this.target = target;
18
- }
19
- /**
20
- * Finds the nearest coordinate on a specified axis.
21
- * @returns The nearest coordinate and its distance.
22
- */
23
- findNearestCoordinateByX() {
24
- let nearest;
25
- let minDistance;
26
- for (const element of this.elements) {
27
- const distanceLeftLeft = this.target.x - element.x;
28
- const distanceLeftRight = this.target.x - (element.x + element.width);
29
- const distanceCenterCenter = this.target.gravityCenter.x - element.gravityCenter.x;
30
- const distanceRightLeft = (this.target.x + this.target.width) - element.x;
31
- const distanceRightRight = (this.target.x + this.target.width) - (element.x + element.width);
32
- if (Math.abs(distanceLeftLeft) <= this.alignThreshold ||
33
- Math.abs(distanceLeftRight) <= this.alignThreshold ||
34
- Math.abs(distanceCenterCenter) <= this.alignThreshold ||
35
- Math.abs(distanceRightLeft) <= this.alignThreshold ||
36
- Math.abs(distanceRightRight) <= this.alignThreshold) {
37
- if (minDistance === undefined || Math.abs(distanceCenterCenter) < Math.abs(minDistance)) {
38
- minDistance = distanceCenterCenter;
39
- nearest = element.gravityCenter.x;
40
- }
41
- if (Math.abs(distanceLeftLeft) < Math.abs(minDistance)) {
42
- minDistance = distanceLeftLeft;
43
- nearest = element.x;
44
- }
45
- if (Math.abs(distanceRightRight) < Math.abs(minDistance)) {
46
- minDistance = distanceRightRight;
47
- nearest = element.x + element.width;
48
- }
49
- if (Math.abs(distanceLeftRight) < Math.abs(minDistance)) {
50
- minDistance = distanceLeftRight;
51
- nearest = element.x + element.width;
52
- }
53
- if (Math.abs(distanceRightLeft) < Math.abs(minDistance)) {
54
- minDistance = distanceRightLeft;
55
- nearest = element.x;
56
- }
57
- }
58
- }
59
- return { value: nearest, distance: minDistance };
60
- }
61
- /**
62
- * Finds the nearest coordinate on a specified axis.
63
- * @returns The nearest coordinate and its distance.
64
- */
65
- findNearestCoordinateByY() {
66
- let nearest;
67
- let minDistance;
68
- for (const element of this.elements) {
69
- const distanceTopTop = this.target.y - element.y;
70
- const distanceTopBottom = this.target.y - (element.y + element.height);
71
- const distanceCenterCenter = this.target.gravityCenter.y - element.gravityCenter.y;
72
- const distanceBottomTop = (this.target.y + this.target.height) - element.y;
73
- const distanceBottomBottom = (this.target.y + this.target.height) - (element.y + element.height);
74
- if (Math.abs(distanceTopTop) <= this.alignThreshold ||
75
- Math.abs(distanceTopBottom) <= this.alignThreshold ||
76
- Math.abs(distanceCenterCenter) <= this.alignThreshold ||
77
- Math.abs(distanceBottomTop) <= this.alignThreshold ||
78
- Math.abs(distanceBottomBottom) <= this.alignThreshold) {
79
- if (minDistance === undefined || Math.abs(distanceCenterCenter) < Math.abs(minDistance)) {
80
- minDistance = distanceCenterCenter;
81
- nearest = element.gravityCenter.y;
82
- }
83
- if (Math.abs(distanceTopTop) < Math.abs(minDistance)) {
84
- minDistance = distanceTopTop;
85
- nearest = element.y;
86
- }
87
- if (Math.abs(distanceBottomBottom) < Math.abs(minDistance)) {
88
- minDistance = distanceBottomBottom;
89
- nearest = element.y + element.height;
90
- }
91
- if (Math.abs(distanceTopBottom) < Math.abs(minDistance)) {
92
- minDistance = distanceTopBottom;
93
- nearest = element.y + element.height;
94
- }
95
- if (Math.abs(distanceBottomTop) < Math.abs(minDistance)) {
96
- minDistance = distanceBottomTop;
97
- nearest = element.y;
98
- }
99
- }
100
- }
101
- return { value: nearest, distance: minDistance };
102
- }
103
- }
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVhcmVzdC1jb29yZGluYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWxpbmUtYWxpZ25tZW50L2RvbWFpbi9uZWFyZXN0LWNvb3JkaW5hdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0E7O0dBRUc7QUFDSCxNQUFNLE9BQU8sdUJBQXVCO0lBWW9CO0lBVDlDLFFBQVEsQ0FBVTtJQUNsQixNQUFNLENBQVE7SUFFdEI7Ozs7O09BS0c7SUFDSCxZQUFZLFFBQWlCLEVBQUUsTUFBYSxFQUFVLGlCQUF5QixFQUFFO1FBQTNCLG1CQUFjLEdBQWQsY0FBYyxDQUFhO1FBQy9FLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFRDs7O09BR0c7SUFDSSx3QkFBd0I7UUFDN0IsSUFBSSxPQUEyQixDQUFDO1FBQ2hDLElBQUksV0FBK0IsQ0FBQztRQUVwQyxLQUFLLE1BQU0sT0FBTyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNwQyxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUM7WUFDbkQsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3RFLE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO1lBQ25GLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUM7WUFDMUUsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUU3RixJQUNJLElBQUksQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxJQUFJLENBQUMsY0FBYztnQkFDakQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLElBQUksQ0FBQyxjQUFjO2dCQUNsRCxJQUFJLENBQUMsR0FBRyxDQUFDLG9CQUFvQixDQUFDLElBQUksSUFBSSxDQUFDLGNBQWM7Z0JBQ3JELElBQUksQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsSUFBSSxJQUFJLENBQUMsY0FBYztnQkFDbEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQ3JELENBQUM7Z0JBQ0QsSUFBSSxXQUFXLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7b0JBQ3hGLFdBQVcsR0FBRyxvQkFBb0IsQ0FBQztvQkFDbkMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO2dCQUNwQyxDQUFDO2dCQUNELElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztvQkFDdkQsV0FBVyxHQUFHLGdCQUFnQixDQUFDO29CQUMvQixPQUFPLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQztnQkFDdEIsQ0FBQztnQkFDRCxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7b0JBQ3pELFdBQVcsR0FBRyxrQkFBa0IsQ0FBQztvQkFDakMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztnQkFDdEMsQ0FBQztnQkFDRCxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7b0JBQ3hELFdBQVcsR0FBRyxpQkFBaUIsQ0FBQztvQkFDaEMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztnQkFDdEMsQ0FBQztnQkFDRCxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7b0JBQ3hELFdBQVcsR0FBRyxpQkFBaUIsQ0FBQztvQkFDaEMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUM7Z0JBQ3RCLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUNuRCxDQUFDO0lBR0Q7OztPQUdHO0lBQ0ksd0JBQXdCO1FBQzdCLElBQUksT0FBMkIsQ0FBQztRQUNoQyxJQUFJLFdBQStCLENBQUM7UUFFcEMsS0FBSyxNQUFNLE9BQU8sSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDcEMsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQztZQUNqRCxNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDdkUsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7WUFDbkYsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQztZQUMzRSxNQUFNLG9CQUFvQixHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBRWpHLElBQ0ksSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsSUFBSSxJQUFJLENBQUMsY0FBYztnQkFDL0MsSUFBSSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLElBQUksQ0FBQyxjQUFjO2dCQUNsRCxJQUFJLENBQUMsR0FBRyxDQUFDLG9CQUFvQixDQUFDLElBQUksSUFBSSxDQUFDLGNBQWM7Z0JBQ3JELElBQUksQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsSUFBSSxJQUFJLENBQUMsY0FBYztnQkFDbEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQ3ZELENBQUM7Z0JBQ0QsSUFBSSxXQUFXLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7b0JBQ3hGLFdBQVcsR0FBRyxvQkFBb0IsQ0FBQztvQkFDbkMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO2dCQUNwQyxDQUFDO2dCQUNELElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7b0JBQ3JELFdBQVcsR0FBRyxjQUFjLENBQUM7b0JBQzdCLE9BQU8sR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDO2dCQUN0QixDQUFDO2dCQUNELElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztvQkFDM0QsV0FBVyxHQUFHLG9CQUFvQixDQUFDO29CQUNuQyxPQUFPLEdBQUcsT0FBTyxDQUFDLENBQUMsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDO2dCQUN2QyxDQUFDO2dCQUNELElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztvQkFDeEQsV0FBVyxHQUFHLGlCQUFpQixDQUFDO29CQUNoQyxPQUFPLEdBQUcsT0FBTyxDQUFDLENBQUMsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDO2dCQUN2QyxDQUFDO2dCQUNELElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztvQkFDeEQsV0FBVyxHQUFHLGlCQUFpQixDQUFDO29CQUNoQyxPQUFPLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQztnQkFDdEIsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQ25ELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElSZWN0IH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IElOZWFyZXN0Q29vcmRpbmF0ZVJlc3VsdCB9IGZyb20gJy4vaS1uZWFyZXN0LWNvb3JkaW5hdGUtcmVzdWx0JztcblxuLyoqXG4gKiBBIGNsYXNzIHRvIGZpbmQgdGhlIG5lYXJlc3QgY29vcmRpbmF0ZS5cbiAqL1xuZXhwb3J0IGNsYXNzIE5lYXJlc3RDb29yZGluYXRlRmluZGVyIHtcblxuXG4gIHByaXZhdGUgZWxlbWVudHM6IElSZWN0W107XG4gIHByaXZhdGUgdGFyZ2V0OiBJUmVjdDtcblxuICAvKipcbiAgICogQ29uc3RydWN0b3IgdG8gaW5pdGlhbGl6ZSB0aGUgTmVhcmVzdENvb3JkaW5hdGVGaW5kZXIuXG4gICAqIEBwYXJhbSBlbGVtZW50cyAtIFRoZSBhcnJheSBvZiBJUmVjdCBlbGVtZW50cy5cbiAgICogQHBhcmFtIHRhcmdldCAtIFRoZSB0YXJnZXQgSVJlY3QgZWxlbWVudC5cbiAgICogQHBhcmFtIGFsaWduVGhyZXNob2xkIC0gVGhlIHRocmVzaG9sZCB0byBhbGlnbiB0aGUgZWxlbWVudHMuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihlbGVtZW50czogSVJlY3RbXSwgdGFyZ2V0OiBJUmVjdCwgcHJpdmF0ZSBhbGlnblRocmVzaG9sZDogbnVtYmVyID0gMTApIHtcbiAgICB0aGlzLmVsZW1lbnRzID0gZWxlbWVudHM7XG4gICAgdGhpcy50YXJnZXQgPSB0YXJnZXQ7XG4gIH1cblxuICAvKipcbiAgICogRmluZHMgdGhlIG5lYXJlc3QgY29vcmRpbmF0ZSBvbiBhIHNwZWNpZmllZCBheGlzLlxuICAgKiBAcmV0dXJucyBUaGUgbmVhcmVzdCBjb29yZGluYXRlIGFuZCBpdHMgZGlzdGFuY2UuXG4gICAqL1xuICBwdWJsaWMgZmluZE5lYXJlc3RDb29yZGluYXRlQnlYKCk6IElOZWFyZXN0Q29vcmRpbmF0ZVJlc3VsdCB7XG4gICAgbGV0IG5lYXJlc3Q6IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICBsZXQgbWluRGlzdGFuY2U6IG51bWJlciB8IHVuZGVmaW5lZDtcblxuICAgIGZvciAoY29uc3QgZWxlbWVudCBvZiB0aGlzLmVsZW1lbnRzKSB7XG4gICAgICBjb25zdCBkaXN0YW5jZUxlZnRMZWZ0ID0gdGhpcy50YXJnZXQueCAtIGVsZW1lbnQueDtcbiAgICAgIGNvbnN0IGRpc3RhbmNlTGVmdFJpZ2h0ID0gdGhpcy50YXJnZXQueCAtIChlbGVtZW50LnggKyBlbGVtZW50LndpZHRoKTtcbiAgICAgIGNvbnN0IGRpc3RhbmNlQ2VudGVyQ2VudGVyID0gdGhpcy50YXJnZXQuZ3Jhdml0eUNlbnRlci54IC0gZWxlbWVudC5ncmF2aXR5Q2VudGVyLng7XG4gICAgICBjb25zdCBkaXN0YW5jZVJpZ2h0TGVmdCA9ICh0aGlzLnRhcmdldC54ICsgdGhpcy50YXJnZXQud2lkdGgpIC0gZWxlbWVudC54O1xuICAgICAgY29uc3QgZGlzdGFuY2VSaWdodFJpZ2h0ID0gKHRoaXMudGFyZ2V0LnggKyB0aGlzLnRhcmdldC53aWR0aCkgLSAoZWxlbWVudC54ICsgZWxlbWVudC53aWR0aCk7XG5cbiAgICAgIGlmIChcbiAgICAgICAgICBNYXRoLmFicyhkaXN0YW5jZUxlZnRMZWZ0KSA8PSB0aGlzLmFsaWduVGhyZXNob2xkIHx8XG4gICAgICAgICAgTWF0aC5hYnMoZGlzdGFuY2VMZWZ0UmlnaHQpIDw9IHRoaXMuYWxpZ25UaHJlc2hvbGQgfHxcbiAgICAgICAgICBNYXRoLmFicyhkaXN0YW5jZUNlbnRlckNlbnRlcikgPD0gdGhpcy5hbGlnblRocmVzaG9sZCB8fFxuICAgICAgICAgIE1hdGguYWJzKGRpc3RhbmNlUmlnaHRMZWZ0KSA8PSB0aGlzLmFsaWduVGhyZXNob2xkIHx8XG4gICAgICAgICAgTWF0aC5hYnMoZGlzdGFuY2VSaWdodFJpZ2h0KSA8PSB0aGlzLmFsaWduVGhyZXNob2xkXG4gICAgICApIHtcbiAgICAgICAgaWYgKG1pbkRpc3RhbmNlID09PSB1bmRlZmluZWQgfHwgTWF0aC5hYnMoZGlzdGFuY2VDZW50ZXJDZW50ZXIpIDwgTWF0aC5hYnMobWluRGlzdGFuY2UpKSB7XG4gICAgICAgICAgbWluRGlzdGFuY2UgPSBkaXN0YW5jZUNlbnRlckNlbnRlcjtcbiAgICAgICAgICBuZWFyZXN0ID0gZWxlbWVudC5ncmF2aXR5Q2VudGVyLng7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKE1hdGguYWJzKGRpc3RhbmNlTGVmdExlZnQpIDwgTWF0aC5hYnMobWluRGlzdGFuY2UpKSB7XG4gICAgICAgICAgbWluRGlzdGFuY2UgPSBkaXN0YW5jZUxlZnRMZWZ0O1xuICAgICAgICAgIG5lYXJlc3QgPSBlbGVtZW50Lng7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKE1hdGguYWJzKGRpc3RhbmNlUmlnaHRSaWdodCkgPCBNYXRoLmFicyhtaW5EaXN0YW5jZSkpIHtcbiAgICAgICAgICBtaW5EaXN0YW5jZSA9IGRpc3RhbmNlUmlnaHRSaWdodDtcbiAgICAgICAgICBuZWFyZXN0ID0gZWxlbWVudC54ICsgZWxlbWVudC53aWR0aDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoTWF0aC5hYnMoZGlzdGFuY2VMZWZ0UmlnaHQpIDwgTWF0aC5hYnMobWluRGlzdGFuY2UpKSB7XG4gICAgICAgICAgbWluRGlzdGFuY2UgPSBkaXN0YW5jZUxlZnRSaWdodDtcbiAgICAgICAgICBuZWFyZXN0ID0gZWxlbWVudC54ICsgZWxlbWVudC53aWR0aDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoTWF0aC5hYnMoZGlzdGFuY2VSaWdodExlZnQpIDwgTWF0aC5hYnMobWluRGlzdGFuY2UpKSB7XG4gICAgICAgICAgbWluRGlzdGFuY2UgPSBkaXN0YW5jZVJpZ2h0TGVmdDtcbiAgICAgICAgICBuZWFyZXN0ID0gZWxlbWVudC54O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB7IHZhbHVlOiBuZWFyZXN0LCBkaXN0YW5jZTogbWluRGlzdGFuY2UgfTtcbiAgfVxuXG5cbiAgLyoqXG4gICAqIEZpbmRzIHRoZSBuZWFyZXN0IGNvb3JkaW5hdGUgb24gYSBzcGVjaWZpZWQgYXhpcy5cbiAgICogQHJldHVybnMgVGhlIG5lYXJlc3QgY29vcmRpbmF0ZSBhbmQgaXRzIGRpc3RhbmNlLlxuICAgKi9cbiAgcHVibGljIGZpbmROZWFyZXN0Q29vcmRpbmF0ZUJ5WSgpOiBJTmVhcmVzdENvb3JkaW5hdGVSZXN1bHQge1xuICAgIGxldCBuZWFyZXN0OiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gICAgbGV0IG1pbkRpc3RhbmNlOiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cbiAgICBmb3IgKGNvbnN0IGVsZW1lbnQgb2YgdGhpcy5lbGVtZW50cykge1xuICAgICAgY29uc3QgZGlzdGFuY2VUb3BUb3AgPSB0aGlzLnRhcmdldC55IC0gZWxlbWVudC55O1xuICAgICAgY29uc3QgZGlzdGFuY2VUb3BCb3R0b20gPSB0aGlzLnRhcmdldC55IC0gKGVsZW1lbnQueSArIGVsZW1lbnQuaGVpZ2h0KTtcbiAgICAgIGNvbnN0IGRpc3RhbmNlQ2VudGVyQ2VudGVyID0gdGhpcy50YXJnZXQuZ3Jhdml0eUNlbnRlci55IC0gZWxlbWVudC5ncmF2aXR5Q2VudGVyLnk7XG4gICAgICBjb25zdCBkaXN0YW5jZUJvdHRvbVRvcCA9ICh0aGlzLnRhcmdldC55ICsgdGhpcy50YXJnZXQuaGVpZ2h0KSAtIGVsZW1lbnQueTtcbiAgICAgIGNvbnN0IGRpc3RhbmNlQm90dG9tQm90dG9tID0gKHRoaXMudGFyZ2V0LnkgKyB0aGlzLnRhcmdldC5oZWlnaHQpIC0gKGVsZW1lbnQueSArIGVsZW1lbnQuaGVpZ2h0KTtcblxuICAgICAgaWYgKFxuICAgICAgICAgIE1hdGguYWJzKGRpc3RhbmNlVG9wVG9wKSA8PSB0aGlzLmFsaWduVGhyZXNob2xkIHx8XG4gICAgICAgICAgTWF0aC5hYnMoZGlzdGFuY2VUb3BCb3R0b20pIDw9IHRoaXMuYWxpZ25UaHJlc2hvbGQgfHxcbiAgICAgICAgICBNYXRoLmFicyhkaXN0YW5jZUNlbnRlckNlbnRlcikgPD0gdGhpcy5hbGlnblRocmVzaG9sZCB8fFxuICAgICAgICAgIE1hdGguYWJzKGRpc3RhbmNlQm90dG9tVG9wKSA8PSB0aGlzLmFsaWduVGhyZXNob2xkIHx8XG4gICAgICAgICAgTWF0aC5hYnMoZGlzdGFuY2VCb3R0b21Cb3R0b20pIDw9IHRoaXMuYWxpZ25UaHJlc2hvbGRcbiAgICAgICkge1xuICAgICAgICBpZiAobWluRGlzdGFuY2UgPT09IHVuZGVmaW5lZCB8fCBNYXRoLmFicyhkaXN0YW5jZUNlbnRlckNlbnRlcikgPCBNYXRoLmFicyhtaW5EaXN0YW5jZSkpIHtcbiAgICAgICAgICBtaW5EaXN0YW5jZSA9IGRpc3RhbmNlQ2VudGVyQ2VudGVyO1xuICAgICAgICAgIG5lYXJlc3QgPSBlbGVtZW50LmdyYXZpdHlDZW50ZXIueTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoTWF0aC5hYnMoZGlzdGFuY2VUb3BUb3ApIDwgTWF0aC5hYnMobWluRGlzdGFuY2UpKSB7XG4gICAgICAgICAgbWluRGlzdGFuY2UgPSBkaXN0YW5jZVRvcFRvcDtcbiAgICAgICAgICBuZWFyZXN0ID0gZWxlbWVudC55O1xuICAgICAgICB9XG4gICAgICAgIGlmIChNYXRoLmFicyhkaXN0YW5jZUJvdHRvbUJvdHRvbSkgPCBNYXRoLmFicyhtaW5EaXN0YW5jZSkpIHtcbiAgICAgICAgICBtaW5EaXN0YW5jZSA9IGRpc3RhbmNlQm90dG9tQm90dG9tO1xuICAgICAgICAgIG5lYXJlc3QgPSBlbGVtZW50LnkgKyBlbGVtZW50LmhlaWdodDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoTWF0aC5hYnMoZGlzdGFuY2VUb3BCb3R0b20pIDwgTWF0aC5hYnMobWluRGlzdGFuY2UpKSB7XG4gICAgICAgICAgbWluRGlzdGFuY2UgPSBkaXN0YW5jZVRvcEJvdHRvbTtcbiAgICAgICAgICBuZWFyZXN0ID0gZWxlbWVudC55ICsgZWxlbWVudC5oZWlnaHQ7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKE1hdGguYWJzKGRpc3RhbmNlQm90dG9tVG9wKSA8IE1hdGguYWJzKG1pbkRpc3RhbmNlKSkge1xuICAgICAgICAgIG1pbkRpc3RhbmNlID0gZGlzdGFuY2VCb3R0b21Ub3A7XG4gICAgICAgICAgbmVhcmVzdCA9IGVsZW1lbnQueTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7IHZhbHVlOiBuZWFyZXN0LCBkaXN0YW5jZTogbWluRGlzdGFuY2UgfTtcbiAgfVxufVxuXG4iXX0=