@foblex/flow 17.6.0 → 17.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (223) hide show
  1. package/domain/f-background/add-background-to-store/add-background-to-store.execution.d.ts +4 -1
  2. package/domain/f-background/add-pattern-to-background/add-pattern-to-background.execution.d.ts +4 -1
  3. package/domain/f-background/providers.d.ts +4 -0
  4. package/domain/f-background/remove-background-from-store/remove-background-from-store.execution.d.ts +4 -1
  5. package/domain/f-background/set-background-transform/set-background-transform.execution.d.ts +4 -1
  6. package/domain/f-canvas/add-canvas-to-store/add-canvas-to-store.execution.d.ts +4 -1
  7. package/domain/f-canvas/center-group-or-node/center-group-or-node.execution.d.ts +4 -1
  8. package/domain/f-canvas/fit-to-flow/fit-to-flow.execution.d.ts +4 -1
  9. package/domain/f-canvas/get-canvas/get-canvas.execution.d.ts +4 -1
  10. package/domain/f-canvas/input-canvas-position/input-canvas-position.execution.d.ts +4 -1
  11. package/domain/f-canvas/input-canvas-scale/input-canvas-scale.execution.d.ts +5 -1
  12. package/domain/f-canvas/providers.d.ts +3 -0
  13. package/domain/f-canvas/redraw-canvas-with-animation/redraw-canvas-with-animation.execution.d.ts +6 -1
  14. package/domain/f-canvas/remove-canvas-from-store/remove-canvas-from-store.execution.d.ts +4 -1
  15. package/domain/f-canvas/reset-scale/reset-scale.execution.d.ts +4 -1
  16. package/domain/f-canvas/reset-scale-and-center/reset-scale-and-center.execution.d.ts +4 -1
  17. package/domain/f-canvas/update-scale/update-scale.execution.d.ts +5 -1
  18. package/domain/f-connection/add-connection-for-create-to-store/add-connection-for-create-to-store.execution.d.ts +4 -1
  19. package/domain/f-connection/add-connection-marker-to-store/add-connection-marker-to-store.execution.d.ts +4 -1
  20. package/domain/f-connection/add-connection-to-store/add-connection-to-store.execution.d.ts +4 -1
  21. package/domain/f-connection/add-snap-connection-to-store/add-snap-connection-to-store.execution.d.ts +4 -1
  22. package/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior.execution.d.ts +3 -0
  23. package/domain/f-connection/calculate-connection-line-by-behavior/fixed-center-behavior.d.ts +5 -0
  24. package/domain/f-connection/calculate-connection-line-by-behavior/fixed-outbound-behavior.d.ts +5 -0
  25. package/domain/f-connection/calculate-connection-line-by-behavior/floating-behavior.d.ts +5 -0
  26. package/domain/f-connection/create-connection-markers/create-connection-markers.execution.d.ts +4 -1
  27. package/domain/f-connection/providers.d.ts +3 -0
  28. package/domain/f-connection/redraw-connections/redraw-connections.execution.d.ts +6 -1
  29. package/domain/f-connection/remove-connection-for-create-from-store/remove-connection-for-create-from-store.execution.d.ts +4 -1
  30. package/domain/f-connection/remove-connection-from-store/remove-connection-from-store.execution.d.ts +4 -1
  31. package/domain/f-connection/remove-connection-marker-from-store/remove-connection-marker-from-store.execution.d.ts +4 -1
  32. package/domain/f-connection/remove-snap-connection-from-store/remove-snap-connection-from-store.execution.d.ts +4 -1
  33. package/domain/f-connectors/add-input-to-store/add-input-to-store.execution.d.ts +4 -1
  34. package/domain/f-connectors/add-outlet-to-store/add-outlet-to-store.execution.d.ts +3 -0
  35. package/domain/f-connectors/add-output-to-store/add-output-to-store.execution.d.ts +3 -0
  36. package/domain/f-connectors/find-closest-connector/find-closest-connector.execution.d.ts +5 -0
  37. package/domain/f-connectors/find-connectable-connector-using-priority-and-position/find-connectable-connector-using-priority-and-position.execution.d.ts +5 -0
  38. package/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.execution.d.ts +4 -1
  39. package/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/get-all-can-be-connected-source-connectors-and-rects.execution.d.ts +6 -1
  40. package/domain/f-connectors/get-connector-and-rect/get-connector-and-rect.execution.d.ts +4 -1
  41. package/domain/f-connectors/i-closest-connector.d.ts +3 -0
  42. package/domain/f-connectors/mark-connectable-connectors/mark-connectable-connectors.execution.d.ts +3 -0
  43. package/domain/f-connectors/remove-input-from-store/remove-input-from-store.execution.d.ts +4 -1
  44. package/domain/f-connectors/remove-outlet-from-store/remove-outlet-from-store.execution.d.ts +4 -1
  45. package/domain/f-connectors/remove-output-from-store/remove-output-from-store.execution.d.ts +4 -1
  46. package/domain/f-connectors/unmark-connectable-connectors/unmark-connectable-connectors.execution.d.ts +3 -0
  47. package/domain/f-draggable/add-dnd-to-store/add-dnd-to-store.execution.d.ts +4 -1
  48. package/domain/f-draggable/emit-selection-change-event/emit-selection-change-event.execution.d.ts +7 -3
  49. package/domain/f-draggable/end-drag-sequence/end-drag-sequence.execution.d.ts +4 -1
  50. package/domain/f-draggable/initialize-drag-sequence/initialize-drag-sequence.execution.d.ts +3 -0
  51. package/domain/f-draggable/is-drag-started/is-drag-started.execution.d.ts +4 -1
  52. package/domain/f-draggable/on-pointer-move/on-pointer-move.execution.d.ts +6 -1
  53. package/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence.execution.d.ts +4 -1
  54. package/domain/f-draggable/providers.d.ts +4 -1
  55. package/domain/f-draggable/remove-dnd-from-store/remove-dnd-from-store.execution.d.ts +4 -1
  56. package/domain/f-draggable/start-drag-sequence/start-drag-sequence.execution.d.ts +5 -2
  57. package/domain/f-flow/add-flow-to-store/add-flow-to-store.execution.d.ts +4 -1
  58. package/domain/f-flow/get-flow/get-flow.execution.d.ts +4 -1
  59. package/domain/f-flow/get-flow-host-element/get-flow-host-element.execution.d.ts +4 -1
  60. package/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.d.ts +4 -1
  61. package/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.d.ts +4 -3
  62. package/domain/f-flow/get-flow-state/get-flow-state.execution.d.ts +5 -2
  63. package/domain/f-flow/get-flow-state/providers.d.ts +3 -0
  64. package/domain/f-flow/providers.d.ts +5 -0
  65. package/domain/f-flow/remove-flow-from-store/remove-flow-from-store.execution.d.ts +4 -1
  66. package/domain/f-line-alignment/add-line-alignment-to-store/add-line-alignment-to-store.execution.d.ts +4 -1
  67. package/domain/f-line-alignment/providers.d.ts +5 -0
  68. package/domain/f-line-alignment/remove-line-alignment-from-store/remove-line-alignment-from-store.execution.d.ts +4 -1
  69. package/domain/f-node/add-node-to-store/add-node-to-store.execution.d.ts +4 -1
  70. package/domain/f-node/calculate-input-connections/calculate-input-connections.execution.d.ts +4 -1
  71. package/domain/f-node/calculate-nodes-bounding-box/calculate-nodes-bounding-box.execution.d.ts +5 -1
  72. package/domain/f-node/calculate-nodes-bounding-box-normalized-position/calculate-nodes-bounding-box-normalized-position.execution.d.ts +6 -1
  73. package/domain/f-node/calculate-output-connections/calculate-output-connections.execution.d.ts +4 -1
  74. package/domain/f-node/get-node-padding/get-node-padding.execution.d.ts +4 -0
  75. package/domain/f-node/get-nodes/get-nodes.execution.d.ts +4 -1
  76. package/domain/f-node/get-parent-nodes/get-parent-nodes.execution.d.ts +4 -1
  77. package/domain/f-node/providers.d.ts +3 -0
  78. package/domain/f-node/remove-node-from-store/remove-node-from-store.execution.d.ts +4 -1
  79. package/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed.execution.d.ts +28 -1
  80. package/domain/f-selection/clear-selection/clear-selection.execution.d.ts +3 -0
  81. package/domain/f-selection/get-can-be-selected-items/get-can-be-selected-items.execution.d.ts +14 -2
  82. package/domain/f-selection/get-current-selection/get-current-selection.execution.d.ts +3 -0
  83. package/domain/f-selection/providers.d.ts +3 -0
  84. package/domain/f-selection/select/select.execution.d.ts +4 -1
  85. package/domain/f-selection/select-all/select-all.execution.d.ts +5 -1
  86. package/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.execution.d.ts +7 -5
  87. package/domain/f-zoom/add-zoom-to-store/add-zoom-to-store.execution.d.ts +4 -1
  88. package/domain/f-zoom/providers.d.ts +5 -0
  89. package/domain/f-zoom/remove-zoom-from-store/remove-zoom-from-store.execution.d.ts +4 -1
  90. package/domain/f-zoom/reset-zoom/reset-zoom.execution.d.ts +4 -1
  91. package/domain/f-zoom/set-zoom/set-zoom.execution.d.ts +6 -2
  92. package/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.execution.d.ts +5 -1
  93. package/domain/get-element-rounded-rect/get-element-rounded-rect.execution.d.ts +5 -1
  94. package/domain/get-normalized-connector-rect/get-normalized-connector-rect.execution.d.ts +7 -2
  95. package/domain/get-normalized-element-rect/get-normalized-element-rect.execution.d.ts +7 -2
  96. package/domain/get-normalized-point/get-normalized-point.execution.d.ts +6 -1
  97. package/domain/providers.d.ts +7 -1
  98. package/domain/sort-item-layers/sort-item-layers.execution.d.ts +9 -2
  99. package/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.execution.d.ts +8 -3
  100. package/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.execution.d.ts +8 -3
  101. package/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element.execution.d.ts +4 -0
  102. package/domain/update-item-and-children-layers/update-item-and-children-layers.execution.d.ts +6 -2
  103. package/drag-toolkit/drag-and-drop-base.d.ts +60 -0
  104. package/esm2022/domain/f-background/add-background-to-store/add-background-to-store.execution.mjs +6 -3
  105. package/esm2022/domain/f-background/add-pattern-to-background/add-pattern-to-background.execution.mjs +7 -4
  106. package/esm2022/domain/f-background/providers.mjs +5 -1
  107. package/esm2022/domain/f-background/remove-background-from-store/remove-background-from-store.execution.mjs +6 -3
  108. package/esm2022/domain/f-background/set-background-transform/set-background-transform.execution.mjs +6 -3
  109. package/esm2022/domain/f-canvas/add-canvas-to-store/add-canvas-to-store.execution.mjs +6 -3
  110. package/esm2022/domain/f-canvas/center-group-or-node/center-group-or-node.execution.mjs +8 -5
  111. package/esm2022/domain/f-canvas/fit-to-flow/fit-to-flow.execution.mjs +7 -4
  112. package/esm2022/domain/f-canvas/get-canvas/get-canvas.execution.mjs +6 -3
  113. package/esm2022/domain/f-canvas/input-canvas-position/input-canvas-position.execution.mjs +6 -3
  114. package/esm2022/domain/f-canvas/input-canvas-scale/input-canvas-scale.execution.mjs +7 -3
  115. package/esm2022/domain/f-canvas/providers.mjs +4 -1
  116. package/esm2022/domain/f-canvas/redraw-canvas-with-animation/redraw-canvas-with-animation.execution.mjs +13 -8
  117. package/esm2022/domain/f-canvas/remove-canvas-from-store/remove-canvas-from-store.execution.mjs +6 -3
  118. package/esm2022/domain/f-canvas/reset-scale/reset-scale.execution.mjs +6 -3
  119. package/esm2022/domain/f-canvas/reset-scale-and-center/reset-scale-and-center.execution.mjs +7 -4
  120. package/esm2022/domain/f-canvas/update-scale/update-scale.execution.mjs +7 -3
  121. package/esm2022/domain/f-connection/add-connection-for-create-to-store/add-connection-for-create-to-store.execution.mjs +6 -3
  122. package/esm2022/domain/f-connection/add-connection-marker-to-store/add-connection-marker-to-store.execution.mjs +6 -3
  123. package/esm2022/domain/f-connection/add-connection-to-store/add-connection-to-store.execution.mjs +7 -4
  124. package/esm2022/domain/f-connection/add-snap-connection-to-store/add-snap-connection-to-store.execution.mjs +6 -3
  125. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior.execution.mjs +4 -1
  126. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/fixed-center-behavior.mjs +6 -1
  127. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/fixed-outbound-behavior.mjs +6 -1
  128. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/floating-behavior.mjs +6 -1
  129. package/esm2022/domain/f-connection/create-connection-markers/create-connection-markers.execution.mjs +6 -3
  130. package/esm2022/domain/f-connection/providers.mjs +4 -1
  131. package/esm2022/domain/f-connection/redraw-connections/redraw-connections.execution.mjs +16 -11
  132. package/esm2022/domain/f-connection/remove-connection-for-create-from-store/remove-connection-for-create-from-store.execution.mjs +6 -3
  133. package/esm2022/domain/f-connection/remove-connection-from-store/remove-connection-from-store.execution.mjs +8 -5
  134. package/esm2022/domain/f-connection/remove-connection-marker-from-store/remove-connection-marker-from-store.execution.mjs +6 -3
  135. package/esm2022/domain/f-connection/remove-snap-connection-from-store/remove-snap-connection-from-store.execution.mjs +6 -3
  136. package/esm2022/domain/f-connectors/add-input-to-store/add-input-to-store.execution.mjs +6 -3
  137. package/esm2022/domain/f-connectors/add-outlet-to-store/add-outlet-to-store.execution.mjs +4 -1
  138. package/esm2022/domain/f-connectors/add-output-to-store/add-output-to-store.execution.mjs +4 -1
  139. package/esm2022/domain/f-connectors/find-closest-connector/find-closest-connector.execution.mjs +6 -1
  140. package/esm2022/domain/f-connectors/find-connectable-connector-using-priority-and-position/find-connectable-connector-using-priority-and-position.execution.mjs +6 -1
  141. package/esm2022/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.execution.mjs +6 -3
  142. package/esm2022/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/get-all-can-be-connected-source-connectors-and-rects.execution.mjs +8 -3
  143. package/esm2022/domain/f-connectors/get-connector-and-rect/get-connector-and-rect.execution.mjs +6 -3
  144. package/esm2022/domain/f-connectors/i-closest-connector.mjs +1 -1
  145. package/esm2022/domain/f-connectors/mark-connectable-connectors/mark-connectable-connectors.execution.mjs +4 -1
  146. package/esm2022/domain/f-connectors/providers.mjs +4 -1
  147. package/esm2022/domain/f-connectors/remove-input-from-store/remove-input-from-store.execution.mjs +6 -3
  148. package/esm2022/domain/f-connectors/remove-outlet-from-store/remove-outlet-from-store.execution.mjs +6 -3
  149. package/esm2022/domain/f-connectors/remove-output-from-store/remove-output-from-store.execution.mjs +6 -3
  150. package/esm2022/domain/f-connectors/unmark-connectable-connectors/unmark-connectable-connectors.execution.mjs +4 -1
  151. package/esm2022/domain/f-draggable/add-dnd-to-store/add-dnd-to-store.execution.mjs +6 -3
  152. package/esm2022/domain/f-draggable/emit-selection-change-event/emit-selection-change-event.execution.mjs +10 -6
  153. package/esm2022/domain/f-draggable/end-drag-sequence/end-drag-sequence.execution.mjs +7 -4
  154. package/esm2022/domain/f-draggable/initialize-drag-sequence/initialize-drag-sequence.execution.mjs +4 -1
  155. package/esm2022/domain/f-draggable/is-drag-started/is-drag-started.execution.mjs +6 -3
  156. package/esm2022/domain/f-draggable/on-pointer-move/on-pointer-move.execution.mjs +8 -3
  157. package/esm2022/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence.execution.mjs +6 -3
  158. package/esm2022/domain/f-draggable/providers.mjs +4 -1
  159. package/esm2022/domain/f-draggable/remove-dnd-from-store/remove-dnd-from-store.execution.mjs +6 -3
  160. package/esm2022/domain/f-draggable/start-drag-sequence/start-drag-sequence.execution.mjs +9 -6
  161. package/esm2022/domain/f-flow/add-flow-to-store/add-flow-to-store.execution.mjs +6 -3
  162. package/esm2022/domain/f-flow/get-flow/get-flow.execution.mjs +6 -3
  163. package/esm2022/domain/f-flow/get-flow-host-element/get-flow-host-element.execution.mjs +6 -3
  164. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.mjs +6 -3
  165. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.mjs +12 -12
  166. package/esm2022/domain/f-flow/get-flow-state/get-flow-state.execution.mjs +11 -8
  167. package/esm2022/domain/f-flow/get-flow-state/providers.mjs +4 -1
  168. package/esm2022/domain/f-flow/providers.mjs +6 -1
  169. package/esm2022/domain/f-flow/remove-flow-from-store/remove-flow-from-store.execution.mjs +6 -3
  170. package/esm2022/domain/f-line-alignment/add-line-alignment-to-store/add-line-alignment-to-store.execution.mjs +6 -3
  171. package/esm2022/domain/f-line-alignment/providers.mjs +6 -1
  172. package/esm2022/domain/f-line-alignment/remove-line-alignment-from-store/remove-line-alignment-from-store.execution.mjs +6 -3
  173. package/esm2022/domain/f-node/add-node-to-store/add-node-to-store.execution.mjs +6 -3
  174. package/esm2022/domain/f-node/calculate-input-connections/calculate-input-connections.execution.mjs +7 -4
  175. package/esm2022/domain/f-node/calculate-nodes-bounding-box/calculate-nodes-bounding-box.execution.mjs +7 -3
  176. package/esm2022/domain/f-node/calculate-nodes-bounding-box-normalized-position/calculate-nodes-bounding-box-normalized-position.execution.mjs +8 -3
  177. package/esm2022/domain/f-node/calculate-output-connections/calculate-output-connections.execution.mjs +7 -4
  178. package/esm2022/domain/f-node/get-node-padding/get-node-padding.execution.mjs +5 -1
  179. package/esm2022/domain/f-node/get-nodes/get-nodes.execution.mjs +6 -3
  180. package/esm2022/domain/f-node/get-parent-nodes/get-parent-nodes.execution.mjs +6 -3
  181. package/esm2022/domain/f-node/providers.mjs +4 -1
  182. package/esm2022/domain/f-node/remove-node-from-store/remove-node-from-store.execution.mjs +6 -3
  183. package/esm2022/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed.execution.mjs +30 -3
  184. package/esm2022/domain/f-selection/clear-selection/clear-selection.execution.mjs +4 -1
  185. package/esm2022/domain/f-selection/get-can-be-selected-items/get-can-be-selected-items.execution.mjs +20 -8
  186. package/esm2022/domain/f-selection/get-current-selection/get-current-selection.execution.mjs +4 -1
  187. package/esm2022/domain/f-selection/providers.mjs +4 -1
  188. package/esm2022/domain/f-selection/select/select.execution.mjs +7 -4
  189. package/esm2022/domain/f-selection/select-all/select-all.execution.mjs +8 -4
  190. package/esm2022/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.execution.mjs +17 -17
  191. package/esm2022/domain/f-zoom/add-zoom-to-store/add-zoom-to-store.execution.mjs +6 -3
  192. package/esm2022/domain/f-zoom/providers.mjs +6 -1
  193. package/esm2022/domain/f-zoom/remove-zoom-from-store/remove-zoom-from-store.execution.mjs +6 -3
  194. package/esm2022/domain/f-zoom/reset-zoom/reset-zoom.execution.mjs +6 -3
  195. package/esm2022/domain/f-zoom/set-zoom/set-zoom.execution.mjs +11 -7
  196. package/esm2022/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.execution.mjs +7 -3
  197. package/esm2022/domain/get-element-rounded-rect/get-element-rounded-rect.execution.mjs +8 -4
  198. package/esm2022/domain/get-normalized-connector-rect/get-normalized-connector-rect.execution.mjs +11 -6
  199. package/esm2022/domain/get-normalized-element-rect/get-normalized-element-rect.execution.mjs +10 -5
  200. package/esm2022/domain/get-normalized-point/get-normalized-point.execution.mjs +9 -4
  201. package/esm2022/domain/providers.mjs +7 -1
  202. package/esm2022/domain/sort-item-layers/sort-item-layers.execution.mjs +15 -8
  203. package/esm2022/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.execution.mjs +12 -7
  204. package/esm2022/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.execution.mjs +13 -8
  205. package/esm2022/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element.execution.mjs +5 -1
  206. package/esm2022/domain/update-item-and-children-layers/update-item-and-children-layers.execution.mjs +10 -6
  207. package/esm2022/drag-toolkit/drag-and-drop-base.mjs +55 -1
  208. package/esm2022/f-canvas/f-canvas.component.mjs +67 -20
  209. package/esm2022/f-zoom/f-zoom.directive.mjs +8 -2
  210. package/f-canvas/f-canvas.component.d.ts +51 -3
  211. package/f-connection/providers.d.ts +1 -1
  212. package/f-draggable/f-connection/providers.d.ts +1 -1
  213. package/f-draggable/f-node-move/create-move-nodes-drag-model-from-selection/providers.d.ts +1 -1
  214. package/f-draggable/f-node-move/providers.d.ts +1 -1
  215. package/f-draggable/providers.d.ts +1 -1
  216. package/f-external-item/domain/providers.d.ts +1 -1
  217. package/f-minimap/providers.d.ts +1 -1
  218. package/f-node/providers.d.ts +2 -2
  219. package/f-storage/providers.d.ts +1 -1
  220. package/f-zoom/f-zoom.directive.d.ts +1 -0
  221. package/fesm2022/foblex-flow.mjs +756 -259
  222. package/fesm2022/foblex-flow.mjs.map +1 -1
  223. package/package.json +1 -1
@@ -5,10 +5,15 @@ import { GetNormalizedPointRequest } from './get-normalized-point-request';
5
5
  import { FComponentsStore } from '../../f-storage';
6
6
  import { FExecutionRegister } from '@foblex/mediator';
7
7
  import * as i0 from "@angular/core";
8
+ /**
9
+ * Execution that retrieves the normalized point of a position.
10
+ * It calculates the point based on the position's transformation
11
+ * and the canvas transformation.
12
+ */
8
13
  let GetNormalizedPointExecution = class GetNormalizedPointExecution {
9
- _fComponentsStore = inject(FComponentsStore);
14
+ _store = inject(FComponentsStore);
10
15
  get _transform() {
11
- return this._fComponentsStore.fCanvas.transform;
16
+ return this._store.fCanvas.transform;
12
17
  }
13
18
  // BrowserWindow
14
19
  // +------------------------------------------+
@@ -30,7 +35,7 @@ let GetNormalizedPointExecution = class GetNormalizedPointExecution {
30
35
  // Transform from the browser window to the canvas coordinates:
31
36
  handle(request) {
32
37
  return Point.fromPoint(request.position)
33
- .elementTransform(this._fComponentsStore.flowHost)
38
+ .elementTransform(this._store.flowHost)
34
39
  .sub(this._transform.scaledPosition)
35
40
  .sub(this._transform.position)
36
41
  .div(this._transform.scale);
@@ -45,4 +50,4 @@ export { GetNormalizedPointExecution };
45
50
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GetNormalizedPointExecution, decorators: [{
46
51
  type: Injectable
47
52
  }] });
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LW5vcm1hbGl6ZWQtcG9pbnQuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZ2V0LW5vcm1hbGl6ZWQtcG9pbnQvZ2V0LW5vcm1hbGl6ZWQtcG9pbnQuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQTJCLEtBQUssRUFBRSxNQUFNLFlBQVksQ0FBQztBQUM1RCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQzs7QUFJM0QsSUFBTSwyQkFBMkIsR0FBakMsTUFBTSwyQkFBMkI7SUFFckIsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFFOUQsSUFBWSxVQUFVO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQVEsQ0FBQyxTQUFTLENBQUM7SUFDbkQsQ0FBQztJQUNELGdCQUFnQjtJQUNoQiwrQ0FBK0M7SUFDL0MsK0NBQStDO0lBQy9DLCtDQUErQztJQUMvQywrQ0FBK0M7SUFDL0MsK0NBQStDO0lBQy9DLCtDQUErQztJQUMvQywrQ0FBK0M7SUFDL0MsK0NBQStDO0lBQy9DLCtDQUErQztJQUMvQywrQ0FBK0M7SUFDL0MsK0NBQStDO0lBQy9DLCtDQUErQztJQUMvQywrQ0FBK0M7SUFDL0MsK0NBQStDO0lBQy9DLCtDQUErQztJQUMvQywrQ0FBK0M7SUFDL0MsK0RBQStEO0lBQ3hELE1BQU0sQ0FBQyxPQUFrQztRQUM5QyxPQUFPLEtBQUssQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQzthQUNyQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDO2FBQ2pELEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQzthQUNuQyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUM7YUFDN0IsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEMsQ0FBQzt3R0EvQlUsMkJBQTJCOzRHQUEzQiwyQkFBMkI7O0FBQTNCLDJCQUEyQjtJQUR2QyxrQkFBa0IsQ0FBQyx5QkFBeUIsQ0FBQztHQUNqQywyQkFBMkIsQ0FnQ3ZDOzs0RkFoQ1ksMkJBQTJCO2tCQUZ2QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVBvaW50LCBJVHJhbnNmb3JtTW9kZWwsIFBvaW50IH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEdldE5vcm1hbGl6ZWRQb2ludFJlcXVlc3QgfSBmcm9tICcuL2dldC1ub3JtYWxpemVkLXBvaW50LXJlcXVlc3QnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihHZXROb3JtYWxpemVkUG9pbnRSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIEdldE5vcm1hbGl6ZWRQb2ludEV4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248R2V0Tm9ybWFsaXplZFBvaW50UmVxdWVzdCwgSVBvaW50PiB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZkNvbXBvbmVudHNTdG9yZSA9IGluamVjdChGQ29tcG9uZW50c1N0b3JlKTtcblxuICBwcml2YXRlIGdldCBfdHJhbnNmb3JtKCk6IElUcmFuc2Zvcm1Nb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuX2ZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyEudHJhbnNmb3JtO1xuICB9XG4gIC8vIEJyb3dzZXJXaW5kb3dcbiAgLy8gKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgLy8gfCAgRi1GbG93ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbiAgLy8gfCAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rICAgIHxcbiAgLy8gfCAgfCAgRi1DYW52YXMgKHNjYWxlOiAwLjUpICAgICAgICAgICB8ICAgIHxcbiAgLy8gfCAgfCAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rICAgICB8ICAgIHxcbiAgLy8gfCAgfCAgfCAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICB8ICAgIHxcbiAgLy8gfCAgfCAgfCAgIEVsZW1lbnQgICAgICAgICAgICAgICB8ICAgICB8ICAgIHxcbiAgLy8gfCAgfCAgfCAgIFN5c3RlbTogKDUwMCwzMDApICAgICB8ICAgICB8ICAgIHxcbiAgLy8gfCAgfCAgfCAgIE5vcm1hbGl6ZTogKDIwMCwxNTApICB8ICAgICB8ICAgIHxcbiAgLy8gfCAgfCAgfCAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICB8ICAgIHxcbiAgLy8gfCAgfCAgfCAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICB8ICAgIHxcbiAgLy8gfCAgfCAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rICAgICB8ICAgIHxcbiAgLy8gfCAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIHxcbiAgLy8gfCAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rICAgIHxcbiAgLy8gfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbiAgLy8gKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgLy8gVHJhbnNmb3JtIGZyb20gdGhlIGJyb3dzZXIgd2luZG93IHRvIHRoZSBjYW52YXMgY29vcmRpbmF0ZXM6XG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogR2V0Tm9ybWFsaXplZFBvaW50UmVxdWVzdCk6IElQb2ludCB7XG4gICAgcmV0dXJuIFBvaW50LmZyb21Qb2ludChyZXF1ZXN0LnBvc2l0aW9uKVxuICAgICAgLmVsZW1lbnRUcmFuc2Zvcm0odGhpcy5fZkNvbXBvbmVudHNTdG9yZS5mbG93SG9zdClcbiAgICAgIC5zdWIodGhpcy5fdHJhbnNmb3JtLnNjYWxlZFBvc2l0aW9uKVxuICAgICAgLnN1Yih0aGlzLl90cmFuc2Zvcm0ucG9zaXRpb24pXG4gICAgICAuZGl2KHRoaXMuX3RyYW5zZm9ybS5zY2FsZSk7XG4gIH1cbn1cbiJdfQ==
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LW5vcm1hbGl6ZWQtcG9pbnQuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZ2V0LW5vcm1hbGl6ZWQtcG9pbnQvZ2V0LW5vcm1hbGl6ZWQtcG9pbnQuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQTJCLEtBQUssRUFBRSxNQUFNLFlBQVksQ0FBQztBQUM1RCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsa0JBQWtCLEVBQXdCLE1BQU0sa0JBQWtCLENBQUM7O0FBRTNFOzs7O0dBSUc7QUFHSSxJQUFNLDJCQUEyQixHQUFqQyxNQUFNLDJCQUEyQjtJQUVyQixNQUFNLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFFbkQsSUFBWSxVQUFVO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFRLENBQUMsU0FBUyxDQUFDO0lBQ3hDLENBQUM7SUFDRCxnQkFBZ0I7SUFDaEIsK0NBQStDO0lBQy9DLCtDQUErQztJQUMvQywrQ0FBK0M7SUFDL0MsK0NBQStDO0lBQy9DLCtDQUErQztJQUMvQywrQ0FBK0M7SUFDL0MsK0NBQStDO0lBQy9DLCtDQUErQztJQUMvQywrQ0FBK0M7SUFDL0MsK0NBQStDO0lBQy9DLCtDQUErQztJQUMvQywrQ0FBK0M7SUFDL0MsK0NBQStDO0lBQy9DLCtDQUErQztJQUMvQywrQ0FBK0M7SUFDL0MsK0NBQStDO0lBQy9DLCtEQUErRDtJQUN4RCxNQUFNLENBQUMsT0FBa0M7UUFDOUMsT0FBTyxLQUFLLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7YUFDckMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUM7YUFDdEMsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDO2FBQ25DLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQzthQUM3QixHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDO3dHQS9CVSwyQkFBMkI7NEdBQTNCLDJCQUEyQjs7QUFBM0IsMkJBQTJCO0lBRHZDLGtCQUFrQixDQUFDLHlCQUF5QixDQUFDO0dBQ2pDLDJCQUEyQixDQWdDdkM7OzRGQWhDWSwyQkFBMkI7a0JBRnZDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJUG9pbnQsIElUcmFuc2Zvcm1Nb2RlbCwgUG9pbnQgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR2V0Tm9ybWFsaXplZFBvaW50UmVxdWVzdCB9IGZyb20gJy4vZ2V0LW5vcm1hbGl6ZWQtcG9pbnQtcmVxdWVzdCc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7RkV4ZWN1dGlvblJlZ2lzdGVyLCBGTWVkaWF0b3IsIElFeGVjdXRpb259IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuXG4vKipcbiAqIEV4ZWN1dGlvbiB0aGF0IHJldHJpZXZlcyB0aGUgbm9ybWFsaXplZCBwb2ludCBvZiBhIHBvc2l0aW9uLlxuICogSXQgY2FsY3VsYXRlcyB0aGUgcG9pbnQgYmFzZWQgb24gdGhlIHBvc2l0aW9uJ3MgdHJhbnNmb3JtYXRpb25cbiAqIGFuZCB0aGUgY2FudmFzIHRyYW5zZm9ybWF0aW9uLlxuICovXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKEdldE5vcm1hbGl6ZWRQb2ludFJlcXVlc3QpXG5leHBvcnQgY2xhc3MgR2V0Tm9ybWFsaXplZFBvaW50RXhlY3V0aW9uIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxHZXROb3JtYWxpemVkUG9pbnRSZXF1ZXN0LCBJUG9pbnQ+IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9zdG9yZSA9IGluamVjdChGQ29tcG9uZW50c1N0b3JlKTtcblxuICBwcml2YXRlIGdldCBfdHJhbnNmb3JtKCk6IElUcmFuc2Zvcm1Nb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuX3N0b3JlLmZDYW52YXMhLnRyYW5zZm9ybTtcbiAgfVxuICAvLyBCcm93c2VyV2luZG93XG4gIC8vICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gIC8vIHwgIEYtRmxvdyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gIC8vIHwgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKyAgICB8XG4gIC8vIHwgIHwgIEYtQ2FudmFzIChzY2FsZTogMC41KSAgICAgICAgICAgfCAgICB8XG4gIC8vIHwgIHwgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKyAgICAgfCAgICB8XG4gIC8vIHwgIHwgIHwgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgfCAgICB8XG4gIC8vIHwgIHwgIHwgICBFbGVtZW50ICAgICAgICAgICAgICAgfCAgICAgfCAgICB8XG4gIC8vIHwgIHwgIHwgICBTeXN0ZW06ICg1MDAsMzAwKSAgICAgfCAgICAgfCAgICB8XG4gIC8vIHwgIHwgIHwgICBOb3JtYWxpemU6ICgyMDAsMTUwKSAgfCAgICAgfCAgICB8XG4gIC8vIHwgIHwgIHwgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgfCAgICB8XG4gIC8vIHwgIHwgIHwgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgfCAgICB8XG4gIC8vIHwgIHwgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKyAgICAgfCAgICB8XG4gIC8vIHwgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICB8XG4gIC8vIHwgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKyAgICB8XG4gIC8vIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gIC8vICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gIC8vIFRyYW5zZm9ybSBmcm9tIHRoZSBicm93c2VyIHdpbmRvdyB0byB0aGUgY2FudmFzIGNvb3JkaW5hdGVzOlxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IEdldE5vcm1hbGl6ZWRQb2ludFJlcXVlc3QpOiBJUG9pbnQge1xuICAgIHJldHVybiBQb2ludC5mcm9tUG9pbnQocmVxdWVzdC5wb3NpdGlvbilcbiAgICAgIC5lbGVtZW50VHJhbnNmb3JtKHRoaXMuX3N0b3JlLmZsb3dIb3N0KVxuICAgICAgLnN1Yih0aGlzLl90cmFuc2Zvcm0uc2NhbGVkUG9zaXRpb24pXG4gICAgICAuc3ViKHRoaXMuX3RyYW5zZm9ybS5wb3NpdGlvbilcbiAgICAgIC5kaXYodGhpcy5fdHJhbnNmb3JtLnNjYWxlKTtcbiAgfVxufVxuIl19
@@ -15,6 +15,12 @@ import { F_NODE_FEATURES } from './f-node';
15
15
  import { F_LINE_ALIGNMENT_FEATURES } from './f-line-alignment';
16
16
  import { F_ZOOM_FEATURES } from './f-zoom';
17
17
  import { GetNormalizedConnectorRectExecution } from "./get-normalized-connector-rect";
18
+ /**
19
+ * This module provides a collection of common providers for the FFlow domain.
20
+ * It includes features related to canvas, connections, background, connectors,
21
+ * draggable elements, flow, line alignment, nodes, selection, zoom,
22
+ * and various utility executions.
23
+ */
18
24
  export const COMMON_PROVIDERS = [
19
25
  ...F_CANVAS_FEATURES,
20
26
  ...F_CONNECTION_FEATURES,
@@ -37,4 +43,4 @@ export const COMMON_PROVIDERS = [
37
43
  UpdateItemAndChildrenLayersExecution,
38
44
  MoveFrontElementsBeforeTargetElementExecution,
39
45
  ];
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vcHJvdmlkZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxpQ0FBaUMsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ2hGLE9BQU8sRUFDTCw2Q0FBNkMsRUFDN0Msb0NBQW9DLEVBQ3JDLE1BQU0sbUNBQW1DLENBQUM7QUFDM0MsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDbkUsT0FBTyxFQUFDLHVCQUF1QixFQUFFLDBCQUEwQixFQUFFLHVCQUF1QixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDaEgsT0FBTyxFQUFDLHNDQUFzQyxFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDNUYsT0FBTyxFQUFDLDhCQUE4QixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDMUUsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLFlBQVksQ0FBQztBQUM3QyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sVUFBVSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sVUFBVSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQzdELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFDekMsT0FBTyxFQUFDLG1DQUFtQyxFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFFcEYsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUc7SUFFOUIsR0FBRyxpQkFBaUI7SUFFcEIsR0FBRyxxQkFBcUI7SUFFeEIsR0FBRyxxQkFBcUI7SUFFeEIsR0FBRyxxQkFBcUI7SUFFeEIsR0FBRyxvQkFBb0I7SUFFdkIsR0FBRyxlQUFlO0lBRWxCLEdBQUcseUJBQXlCO0lBRTVCLEdBQUcsZUFBZTtJQUVsQiw4QkFBOEI7SUFFOUIsR0FBRyxvQkFBb0I7SUFFdkIsR0FBRyxlQUFlO0lBRWxCLHNDQUFzQztJQUV0QyxtQ0FBbUM7SUFFbkMsaUNBQWlDO0lBRWpDLDJCQUEyQjtJQUUzQix1QkFBdUI7SUFFdkIsMEJBQTBCO0lBRTFCLHVCQUF1QjtJQUV2QixvQ0FBb0M7SUFFcEMsNkNBQTZDO0NBQzlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0dldE5vcm1hbGl6ZWRFbGVtZW50UmVjdEV4ZWN1dGlvbn0gZnJvbSAnLi9nZXQtbm9ybWFsaXplZC1lbGVtZW50LXJlY3QnO1xuaW1wb3J0IHtcbiAgTW92ZUZyb250RWxlbWVudHNCZWZvcmVUYXJnZXRFbGVtZW50RXhlY3V0aW9uLFxuICBVcGRhdGVJdGVtQW5kQ2hpbGRyZW5MYXllcnNFeGVjdXRpb25cbn0gZnJvbSAnLi91cGRhdGUtaXRlbS1hbmQtY2hpbGRyZW4tbGF5ZXJzJztcbmltcG9ydCB7R2V0Tm9ybWFsaXplZFBvaW50RXhlY3V0aW9ufSBmcm9tICcuL2dldC1ub3JtYWxpemVkLXBvaW50JztcbmltcG9ydCB7U29ydEl0ZW1MYXllcnNFeGVjdXRpb24sIFNvcnRJdGVtc0J5UGFyZW50RXhlY3V0aW9uLCBTb3J0Tm9kZUxheWVyc0V4ZWN1dGlvbn0gZnJvbSAnLi9zb3J0LWl0ZW0tbGF5ZXJzJztcbmltcG9ydCB7R2V0RGVlcENoaWxkcmVuTm9kZXNBbmRHcm91cHNFeGVjdXRpb259IGZyb20gJy4vZ2V0LWRlZXAtY2hpbGRyZW4tbm9kZXMtYW5kLWdyb3Vwcyc7XG5pbXBvcnQge0dldEVsZW1lbnRSb3VuZGVkUmVjdEV4ZWN1dGlvbn0gZnJvbSAnLi9nZXQtZWxlbWVudC1yb3VuZGVkLXJlY3QnO1xuaW1wb3J0IHtGX1NFTEVDVElPTl9GRUFUVVJFU30gZnJvbSAnLi9mLXNlbGVjdGlvbic7XG5pbXBvcnQge0ZfQkFDS0dST1VORF9GRUFUVVJFU30gZnJvbSAnLi9mLWJhY2tncm91bmQnO1xuaW1wb3J0IHtGX0NBTlZBU19GRUFUVVJFU30gZnJvbSAnLi9mLWNhbnZhcyc7XG5pbXBvcnQge0ZfQ09OTkVDVElPTl9GRUFUVVJFU30gZnJvbSAnLi9mLWNvbm5lY3Rpb24nO1xuaW1wb3J0IHtGX0NPTk5FQ1RPUlNfRkVBVFVSRVN9IGZyb20gJy4vZi1jb25uZWN0b3JzJztcbmltcG9ydCB7Rl9GTE9XX0ZFQVRVUkVTfSBmcm9tICcuL2YtZmxvdyc7XG5pbXBvcnQge0ZfRFJBR0dBQkxFX0ZFQVRVUkVTfSBmcm9tICcuL2YtZHJhZ2dhYmxlJztcbmltcG9ydCB7Rl9OT0RFX0ZFQVRVUkVTfSBmcm9tICcuL2Ytbm9kZSc7XG5pbXBvcnQge0ZfTElORV9BTElHTk1FTlRfRkVBVFVSRVN9IGZyb20gJy4vZi1saW5lLWFsaWdubWVudCc7XG5pbXBvcnQge0ZfWk9PTV9GRUFUVVJFU30gZnJvbSAnLi9mLXpvb20nO1xuaW1wb3J0IHtHZXROb3JtYWxpemVkQ29ubmVjdG9yUmVjdEV4ZWN1dGlvbn0gZnJvbSBcIi4vZ2V0LW5vcm1hbGl6ZWQtY29ubmVjdG9yLXJlY3RcIjtcblxuZXhwb3J0IGNvbnN0IENPTU1PTl9QUk9WSURFUlMgPSBbXG5cbiAgLi4uRl9DQU5WQVNfRkVBVFVSRVMsXG5cbiAgLi4uRl9DT05ORUNUSU9OX0ZFQVRVUkVTLFxuXG4gIC4uLkZfQkFDS0dST1VORF9GRUFUVVJFUyxcblxuICAuLi5GX0NPTk5FQ1RPUlNfRkVBVFVSRVMsXG5cbiAgLi4uRl9EUkFHR0FCTEVfRkVBVFVSRVMsXG5cbiAgLi4uRl9GTE9XX0ZFQVRVUkVTLFxuXG4gIC4uLkZfTElORV9BTElHTk1FTlRfRkVBVFVSRVMsXG5cbiAgLi4uRl9OT0RFX0ZFQVRVUkVTLFxuXG4gIEdldEVsZW1lbnRSb3VuZGVkUmVjdEV4ZWN1dGlvbixcblxuICAuLi5GX1NFTEVDVElPTl9GRUFUVVJFUyxcblxuICAuLi5GX1pPT01fRkVBVFVSRVMsXG5cbiAgR2V0RGVlcENoaWxkcmVuTm9kZXNBbmRHcm91cHNFeGVjdXRpb24sXG5cbiAgR2V0Tm9ybWFsaXplZENvbm5lY3RvclJlY3RFeGVjdXRpb24sXG5cbiAgR2V0Tm9ybWFsaXplZEVsZW1lbnRSZWN0RXhlY3V0aW9uLFxuXG4gIEdldE5vcm1hbGl6ZWRQb2ludEV4ZWN1dGlvbixcblxuICBTb3J0SXRlbUxheWVyc0V4ZWN1dGlvbixcblxuICBTb3J0SXRlbXNCeVBhcmVudEV4ZWN1dGlvbixcblxuICBTb3J0Tm9kZUxheWVyc0V4ZWN1dGlvbixcblxuICBVcGRhdGVJdGVtQW5kQ2hpbGRyZW5MYXllcnNFeGVjdXRpb24sXG5cbiAgTW92ZUZyb250RWxlbWVudHNCZWZvcmVUYXJnZXRFbGVtZW50RXhlY3V0aW9uLFxuXTtcbiJdfQ==
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vcHJvdmlkZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxpQ0FBaUMsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ2hGLE9BQU8sRUFDTCw2Q0FBNkMsRUFDN0Msb0NBQW9DLEVBQ3JDLE1BQU0sbUNBQW1DLENBQUM7QUFDM0MsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDbkUsT0FBTyxFQUFDLHVCQUF1QixFQUFFLDBCQUEwQixFQUFFLHVCQUF1QixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDaEgsT0FBTyxFQUFDLHNDQUFzQyxFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDNUYsT0FBTyxFQUFDLDhCQUE4QixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDMUUsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLFlBQVksQ0FBQztBQUM3QyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sVUFBVSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sVUFBVSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQzdELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFDekMsT0FBTyxFQUFDLG1DQUFtQyxFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFFcEY7Ozs7O0dBS0c7QUFDSCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRztJQUU5QixHQUFHLGlCQUFpQjtJQUVwQixHQUFHLHFCQUFxQjtJQUV4QixHQUFHLHFCQUFxQjtJQUV4QixHQUFHLHFCQUFxQjtJQUV4QixHQUFHLG9CQUFvQjtJQUV2QixHQUFHLGVBQWU7SUFFbEIsR0FBRyx5QkFBeUI7SUFFNUIsR0FBRyxlQUFlO0lBRWxCLDhCQUE4QjtJQUU5QixHQUFHLG9CQUFvQjtJQUV2QixHQUFHLGVBQWU7SUFFbEIsc0NBQXNDO0lBRXRDLG1DQUFtQztJQUVuQyxpQ0FBaUM7SUFFakMsMkJBQTJCO0lBRTNCLHVCQUF1QjtJQUV2QiwwQkFBMEI7SUFFMUIsdUJBQXVCO0lBRXZCLG9DQUFvQztJQUVwQyw2Q0FBNkM7Q0FDOUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7R2V0Tm9ybWFsaXplZEVsZW1lbnRSZWN0RXhlY3V0aW9ufSBmcm9tICcuL2dldC1ub3JtYWxpemVkLWVsZW1lbnQtcmVjdCc7XG5pbXBvcnQge1xuICBNb3ZlRnJvbnRFbGVtZW50c0JlZm9yZVRhcmdldEVsZW1lbnRFeGVjdXRpb24sXG4gIFVwZGF0ZUl0ZW1BbmRDaGlsZHJlbkxheWVyc0V4ZWN1dGlvblxufSBmcm9tICcuL3VwZGF0ZS1pdGVtLWFuZC1jaGlsZHJlbi1sYXllcnMnO1xuaW1wb3J0IHtHZXROb3JtYWxpemVkUG9pbnRFeGVjdXRpb259IGZyb20gJy4vZ2V0LW5vcm1hbGl6ZWQtcG9pbnQnO1xuaW1wb3J0IHtTb3J0SXRlbUxheWVyc0V4ZWN1dGlvbiwgU29ydEl0ZW1zQnlQYXJlbnRFeGVjdXRpb24sIFNvcnROb2RlTGF5ZXJzRXhlY3V0aW9ufSBmcm9tICcuL3NvcnQtaXRlbS1sYXllcnMnO1xuaW1wb3J0IHtHZXREZWVwQ2hpbGRyZW5Ob2Rlc0FuZEdyb3Vwc0V4ZWN1dGlvbn0gZnJvbSAnLi9nZXQtZGVlcC1jaGlsZHJlbi1ub2Rlcy1hbmQtZ3JvdXBzJztcbmltcG9ydCB7R2V0RWxlbWVudFJvdW5kZWRSZWN0RXhlY3V0aW9ufSBmcm9tICcuL2dldC1lbGVtZW50LXJvdW5kZWQtcmVjdCc7XG5pbXBvcnQge0ZfU0VMRUNUSU9OX0ZFQVRVUkVTfSBmcm9tICcuL2Ytc2VsZWN0aW9uJztcbmltcG9ydCB7Rl9CQUNLR1JPVU5EX0ZFQVRVUkVTfSBmcm9tICcuL2YtYmFja2dyb3VuZCc7XG5pbXBvcnQge0ZfQ0FOVkFTX0ZFQVRVUkVTfSBmcm9tICcuL2YtY2FudmFzJztcbmltcG9ydCB7Rl9DT05ORUNUSU9OX0ZFQVRVUkVTfSBmcm9tICcuL2YtY29ubmVjdGlvbic7XG5pbXBvcnQge0ZfQ09OTkVDVE9SU19GRUFUVVJFU30gZnJvbSAnLi9mLWNvbm5lY3RvcnMnO1xuaW1wb3J0IHtGX0ZMT1dfRkVBVFVSRVN9IGZyb20gJy4vZi1mbG93JztcbmltcG9ydCB7Rl9EUkFHR0FCTEVfRkVBVFVSRVN9IGZyb20gJy4vZi1kcmFnZ2FibGUnO1xuaW1wb3J0IHtGX05PREVfRkVBVFVSRVN9IGZyb20gJy4vZi1ub2RlJztcbmltcG9ydCB7Rl9MSU5FX0FMSUdOTUVOVF9GRUFUVVJFU30gZnJvbSAnLi9mLWxpbmUtYWxpZ25tZW50JztcbmltcG9ydCB7Rl9aT09NX0ZFQVRVUkVTfSBmcm9tICcuL2Ytem9vbSc7XG5pbXBvcnQge0dldE5vcm1hbGl6ZWRDb25uZWN0b3JSZWN0RXhlY3V0aW9ufSBmcm9tIFwiLi9nZXQtbm9ybWFsaXplZC1jb25uZWN0b3ItcmVjdFwiO1xuXG4vKipcbiAqIFRoaXMgbW9kdWxlIHByb3ZpZGVzIGEgY29sbGVjdGlvbiBvZiBjb21tb24gcHJvdmlkZXJzIGZvciB0aGUgRkZsb3cgZG9tYWluLlxuICogSXQgaW5jbHVkZXMgZmVhdHVyZXMgcmVsYXRlZCB0byBjYW52YXMsIGNvbm5lY3Rpb25zLCBiYWNrZ3JvdW5kLCBjb25uZWN0b3JzLFxuICogZHJhZ2dhYmxlIGVsZW1lbnRzLCBmbG93LCBsaW5lIGFsaWdubWVudCwgbm9kZXMsIHNlbGVjdGlvbiwgem9vbSxcbiAqIGFuZCB2YXJpb3VzIHV0aWxpdHkgZXhlY3V0aW9ucy5cbiAqL1xuZXhwb3J0IGNvbnN0IENPTU1PTl9QUk9WSURFUlMgPSBbXG5cbiAgLi4uRl9DQU5WQVNfRkVBVFVSRVMsXG5cbiAgLi4uRl9DT05ORUNUSU9OX0ZFQVRVUkVTLFxuXG4gIC4uLkZfQkFDS0dST1VORF9GRUFUVVJFUyxcblxuICAuLi5GX0NPTk5FQ1RPUlNfRkVBVFVSRVMsXG5cbiAgLi4uRl9EUkFHR0FCTEVfRkVBVFVSRVMsXG5cbiAgLi4uRl9GTE9XX0ZFQVRVUkVTLFxuXG4gIC4uLkZfTElORV9BTElHTk1FTlRfRkVBVFVSRVMsXG5cbiAgLi4uRl9OT0RFX0ZFQVRVUkVTLFxuXG4gIEdldEVsZW1lbnRSb3VuZGVkUmVjdEV4ZWN1dGlvbixcblxuICAuLi5GX1NFTEVDVElPTl9GRUFUVVJFUyxcblxuICAuLi5GX1pPT01fRkVBVFVSRVMsXG5cbiAgR2V0RGVlcENoaWxkcmVuTm9kZXNBbmRHcm91cHNFeGVjdXRpb24sXG5cbiAgR2V0Tm9ybWFsaXplZENvbm5lY3RvclJlY3RFeGVjdXRpb24sXG5cbiAgR2V0Tm9ybWFsaXplZEVsZW1lbnRSZWN0RXhlY3V0aW9uLFxuXG4gIEdldE5vcm1hbGl6ZWRQb2ludEV4ZWN1dGlvbixcblxuICBTb3J0SXRlbUxheWVyc0V4ZWN1dGlvbixcblxuICBTb3J0SXRlbXNCeVBhcmVudEV4ZWN1dGlvbixcblxuICBTb3J0Tm9kZUxheWVyc0V4ZWN1dGlvbixcblxuICBVcGRhdGVJdGVtQW5kQ2hpbGRyZW5MYXllcnNFeGVjdXRpb24sXG5cbiAgTW92ZUZyb250RWxlbWVudHNCZWZvcmVUYXJnZXRFbGVtZW50RXhlY3V0aW9uLFxuXTtcbiJdfQ==
@@ -6,19 +6,26 @@ import { SortNodeLayersRequest } from './sort-node-layers-by-groups';
6
6
  import { SortItemsByParentRequest } from './sort-items-by-parent';
7
7
  import { FComponentsStore } from '../../f-storage';
8
8
  import * as i0 from "@angular/core";
9
+ /**
10
+ * Execution that sorts item layers in the FCanvas by their parent nodes.
11
+ * This execution is registered to handle SortItemLayersRequest and
12
+ * ensures that items are sorted correctly within their parent nodes.
13
+ * It first sorts items by their parent nodes in the groups container,
14
+ * then sorts the node layers, and finally sorts items by their parent nodes in the nodes container.
15
+ */
9
16
  let SortItemLayersExecution = class SortItemLayersExecution {
10
- _fMediator = inject(FMediator);
11
- _fComponentsStore = inject(FComponentsStore);
17
+ _store = inject(FComponentsStore);
18
+ _mediator = inject(FMediator);
12
19
  get _fCanvas() {
13
- return this._fComponentsStore.fCanvas;
20
+ return this._store.fCanvas;
14
21
  }
15
22
  handle(request) {
16
- if (!this._fComponentsStore.fCanvas) {
23
+ if (!this._store.fCanvas) {
17
24
  return;
18
25
  }
19
- this._fMediator.execute(new SortItemsByParentRequest(this._fCanvas.fGroupsContainer().nativeElement));
20
- this._fMediator.execute(new SortNodeLayersRequest());
21
- this._fMediator.execute(new SortItemsByParentRequest(this._fCanvas.fNodesContainer().nativeElement));
26
+ this._mediator.execute(new SortItemsByParentRequest(this._fCanvas.fGroupsContainer().nativeElement));
27
+ this._mediator.execute(new SortNodeLayersRequest());
28
+ this._mediator.execute(new SortItemsByParentRequest(this._fCanvas.fNodesContainer().nativeElement));
22
29
  }
23
30
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SortItemLayersExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
24
31
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SortItemLayersExecution });
@@ -30,4 +37,4 @@ export { SortItemLayersExecution };
30
37
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SortItemLayersExecution, decorators: [{
31
38
  type: Injectable
32
39
  }] });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1pdGVtLWxheWVycy5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9zb3J0LWl0ZW0tbGF5ZXJzL3NvcnQtaXRlbS1sYXllcnMuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDN0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDckUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBSzVDLElBQU0sdUJBQXVCLEdBQTdCLE1BQU0sdUJBQXVCO0lBRWpCLFVBQVUsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0IsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFFOUQsSUFBWSxRQUFRO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQVEsQ0FBQztJQUN6QyxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQThCO1FBQzFDLElBQUcsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbkMsT0FBTztRQUNULENBQUM7UUFDRCxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLHdCQUF3QixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO1FBQ3RHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUkscUJBQXFCLEVBQUUsQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksd0JBQXdCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQ3ZHLENBQUM7d0dBaEJVLHVCQUF1Qjs0R0FBdkIsdUJBQXVCOztBQUF2Qix1QkFBdUI7SUFEbkMsa0JBQWtCLENBQUMscUJBQXFCLENBQUM7R0FDN0IsdUJBQXVCLENBaUJuQzs7NEZBakJZLHVCQUF1QjtrQkFGbkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNvcnRJdGVtTGF5ZXJzUmVxdWVzdCB9IGZyb20gJy4vc29ydC1pdGVtLWxheWVycy5yZXF1ZXN0JztcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBGTWVkaWF0b3IsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IFNvcnROb2RlTGF5ZXJzUmVxdWVzdCB9IGZyb20gJy4vc29ydC1ub2RlLWxheWVycy1ieS1ncm91cHMnO1xuaW1wb3J0IHsgU29ydEl0ZW1zQnlQYXJlbnRSZXF1ZXN0IH0gZnJvbSAnLi9zb3J0LWl0ZW1zLWJ5LXBhcmVudCc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZDYW52YXNCYXNlIH0gZnJvbSAnLi4vLi4vZi1jYW52YXMnO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKFNvcnRJdGVtTGF5ZXJzUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBTb3J0SXRlbUxheWVyc0V4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248U29ydEl0ZW1MYXllcnNSZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZk1lZGlhdG9yID0gaW5qZWN0KEZNZWRpYXRvcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2ZDb21wb25lbnRzU3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSk7XG5cbiAgcHJpdmF0ZSBnZXQgX2ZDYW52YXMoKTogRkNhbnZhc0Jhc2Uge1xuICAgIHJldHVybiB0aGlzLl9mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhO1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBTb3J0SXRlbUxheWVyc1JlcXVlc3QpOiB2b2lkIHtcbiAgICBpZighdGhpcy5fZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX2ZNZWRpYXRvci5leGVjdXRlKG5ldyBTb3J0SXRlbXNCeVBhcmVudFJlcXVlc3QodGhpcy5fZkNhbnZhcy5mR3JvdXBzQ29udGFpbmVyKCkubmF0aXZlRWxlbWVudCkpO1xuICAgIHRoaXMuX2ZNZWRpYXRvci5leGVjdXRlKG5ldyBTb3J0Tm9kZUxheWVyc1JlcXVlc3QoKSk7XG4gICAgdGhpcy5fZk1lZGlhdG9yLmV4ZWN1dGUobmV3IFNvcnRJdGVtc0J5UGFyZW50UmVxdWVzdCh0aGlzLl9mQ2FudmFzLmZOb2Rlc0NvbnRhaW5lcigpLm5hdGl2ZUVsZW1lbnQpKTtcbiAgfVxufVxuIl19
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1pdGVtLWxheWVycy5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9zb3J0LWl0ZW0tbGF5ZXJzL3NvcnQtaXRlbS1sYXllcnMuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDN0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDckUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBR25EOzs7Ozs7R0FNRztBQUdJLElBQU0sdUJBQXVCLEdBQTdCLE1BQU0sdUJBQXVCO0lBRWpCLE1BQU0sR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNsQyxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRS9DLElBQVksUUFBUTtRQUNsQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBUSxDQUFDO0lBQzlCLENBQUM7SUFFTSxNQUFNLENBQUMsT0FBOEI7UUFDMUMsSUFBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDeEIsT0FBTztRQUNULENBQUM7UUFDRCxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLHdCQUF3QixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO1FBQ3JHLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUkscUJBQXFCLEVBQUUsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksd0JBQXdCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQ3RHLENBQUM7d0dBaEJVLHVCQUF1Qjs0R0FBdkIsdUJBQXVCOztBQUF2Qix1QkFBdUI7SUFEbkMsa0JBQWtCLENBQUMscUJBQXFCLENBQUM7R0FDN0IsdUJBQXVCLENBaUJuQzs7NEZBakJZLHVCQUF1QjtrQkFGbkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNvcnRJdGVtTGF5ZXJzUmVxdWVzdCB9IGZyb20gJy4vc29ydC1pdGVtLWxheWVycy5yZXF1ZXN0JztcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBGTWVkaWF0b3IsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IFNvcnROb2RlTGF5ZXJzUmVxdWVzdCB9IGZyb20gJy4vc29ydC1ub2RlLWxheWVycy1ieS1ncm91cHMnO1xuaW1wb3J0IHsgU29ydEl0ZW1zQnlQYXJlbnRSZXF1ZXN0IH0gZnJvbSAnLi9zb3J0LWl0ZW1zLWJ5LXBhcmVudCc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZDYW52YXNCYXNlIH0gZnJvbSAnLi4vLi4vZi1jYW52YXMnO1xuXG4vKipcbiAqIEV4ZWN1dGlvbiB0aGF0IHNvcnRzIGl0ZW0gbGF5ZXJzIGluIHRoZSBGQ2FudmFzIGJ5IHRoZWlyIHBhcmVudCBub2Rlcy5cbiAqIFRoaXMgZXhlY3V0aW9uIGlzIHJlZ2lzdGVyZWQgdG8gaGFuZGxlIFNvcnRJdGVtTGF5ZXJzUmVxdWVzdCBhbmRcbiAqIGVuc3VyZXMgdGhhdCBpdGVtcyBhcmUgc29ydGVkIGNvcnJlY3RseSB3aXRoaW4gdGhlaXIgcGFyZW50IG5vZGVzLlxuICogSXQgZmlyc3Qgc29ydHMgaXRlbXMgYnkgdGhlaXIgcGFyZW50IG5vZGVzIGluIHRoZSBncm91cHMgY29udGFpbmVyLFxuICogdGhlbiBzb3J0cyB0aGUgbm9kZSBsYXllcnMsIGFuZCBmaW5hbGx5IHNvcnRzIGl0ZW1zIGJ5IHRoZWlyIHBhcmVudCBub2RlcyBpbiB0aGUgbm9kZXMgY29udGFpbmVyLlxuICovXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKFNvcnRJdGVtTGF5ZXJzUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBTb3J0SXRlbUxheWVyc0V4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248U29ydEl0ZW1MYXllcnNSZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfc3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX21lZGlhdG9yID0gaW5qZWN0KEZNZWRpYXRvcik7XG5cbiAgcHJpdmF0ZSBnZXQgX2ZDYW52YXMoKTogRkNhbnZhc0Jhc2Uge1xuICAgIHJldHVybiB0aGlzLl9zdG9yZS5mQ2FudmFzITtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogU29ydEl0ZW1MYXllcnNSZXF1ZXN0KTogdm9pZCB7XG4gICAgaWYoIXRoaXMuX3N0b3JlLmZDYW52YXMpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgU29ydEl0ZW1zQnlQYXJlbnRSZXF1ZXN0KHRoaXMuX2ZDYW52YXMuZkdyb3Vwc0NvbnRhaW5lcigpLm5hdGl2ZUVsZW1lbnQpKTtcbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBTb3J0Tm9kZUxheWVyc1JlcXVlc3QoKSk7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgU29ydEl0ZW1zQnlQYXJlbnRSZXF1ZXN0KHRoaXMuX2ZDYW52YXMuZk5vZGVzQ29udGFpbmVyKCkubmF0aXZlRWxlbWVudCkpO1xuICB9XG59XG4iXX0=
@@ -6,10 +6,15 @@ import { FComponentsStore } from '../../../f-storage';
6
6
  import { GetDeepChildrenNodesAndGroupsRequest } from '../../get-deep-children-nodes-and-groups';
7
7
  import { BrowserService } from '@foblex/platform';
8
8
  import * as i0 from "@angular/core";
9
+ /**
10
+ * Execution that sorts items by their parent nodes in the FItemsContainer.
11
+ * It retrieves all items within the container, sorts their children based on their current order,
12
+ * and moves them to maintain the correct hierarchy.
13
+ */
9
14
  let SortItemsByParentExecution = class SortItemsByParentExecution {
10
- _fMediator = inject(FMediator);
11
- _fComponentsStore = inject(FComponentsStore);
12
- _fBrowser = inject(BrowserService);
15
+ _store = inject(FComponentsStore);
16
+ _mediator = inject(FMediator);
17
+ _browser = inject(BrowserService);
13
18
  _fItemsContainer;
14
19
  get _fItemElements() {
15
20
  return Array.from(this._fItemsContainer.children);
@@ -21,7 +26,7 @@ let SortItemsByParentExecution = class SortItemsByParentExecution {
21
26
  });
22
27
  }
23
28
  _getItemsOfContainer() {
24
- return this._fComponentsStore.fNodes
29
+ return this._store.fNodes
25
30
  .filter((x) => this._fItemsContainer.contains(x.hostElement));
26
31
  }
27
32
  _getSortedChildrenItems(fItem) {
@@ -31,12 +36,12 @@ let SortItemsByParentExecution = class SortItemsByParentExecution {
31
36
  .sort((a, b) => this._fItemElements.indexOf(a) - this._fItemElements.indexOf(b));
32
37
  }
33
38
  _getChildrenItems(fId) {
34
- return this._fMediator.execute(new GetDeepChildrenNodesAndGroupsRequest(fId))
39
+ return this._mediator.execute(new GetDeepChildrenNodesAndGroupsRequest(fId))
35
40
  .filter((x) => this._fItemsContainer.contains(x.hostElement)).map((x) => x.hostElement);
36
41
  }
37
42
  _moveChildrenItems(sortedChildrenItems, parent) {
38
43
  let nextSibling = parent.hostElement.nextElementSibling;
39
- const fragment = this._fBrowser.document.createDocumentFragment();
44
+ const fragment = this._browser.document.createDocumentFragment();
40
45
  sortedChildrenItems.forEach((child) => {
41
46
  fragment.appendChild(child); // Append automatically removes the element from its current position
42
47
  });
@@ -52,4 +57,4 @@ export { SortItemsByParentExecution };
52
57
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SortItemsByParentExecution, decorators: [{
53
58
  type: Injectable
54
59
  }] });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1pdGVtcy1ieS1wYXJlbnQuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vc29ydC1pdGVtLWxheWVycy9zb3J0LWl0ZW1zLWJ5LXBhcmVudC9zb3J0LWl0ZW1zLWJ5LXBhcmVudC5leGVjdXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxTQUFTLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUV0RCxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNoRyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBSTNDLElBQU0sMEJBQTBCLEdBQWhDLE1BQU0sMEJBQTBCO0lBRXBCLFVBQVUsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0IsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDN0MsU0FBUyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUU1QyxnQkFBZ0IsQ0FBZTtJQUV2QyxJQUFZLGNBQWM7UUFDeEIsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQWtCLENBQUM7SUFDckUsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUFpQztRQUM3QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQztRQUNoRCxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFnQixFQUFFLEVBQUU7WUFDdkQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN0RSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxvQkFBb0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTTthQUNqQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVPLHVCQUF1QixDQUM3QixLQUFnQjtRQUVoQixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN4RSxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUM7YUFDdkMsTUFBTSxDQUFDLENBQUMsS0FBa0IsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsZ0JBQWdCLENBQUM7YUFDckYsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNyRixDQUFDO0lBRU8saUJBQWlCLENBQUMsR0FBVztRQUNuQyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFjLElBQUksb0NBQW9DLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDdkYsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzVGLENBQUM7SUFFTyxrQkFBa0IsQ0FDeEIsbUJBQWtDLEVBQ2xDLE1BQWlCO1FBRWpCLElBQUksV0FBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsa0JBQWtCLENBQUM7UUFFeEQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztRQUVsRSxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFrQixFQUFFLEVBQUU7WUFDakQsUUFBUSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLHFFQUFxRTtRQUNwRyxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQzVELENBQUM7d0dBbERVLDBCQUEwQjs0R0FBMUIsMEJBQTBCOztBQUExQiwwQkFBMEI7SUFEdEMsa0JBQWtCLENBQUMsd0JBQXdCLENBQUM7R0FDaEMsMEJBQTBCLENBbUR0Qzs7NEZBbkRZLDBCQUEwQjtrQkFGdEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNvcnRJdGVtc0J5UGFyZW50UmVxdWVzdCB9IGZyb20gJy4vc29ydC1pdGVtcy1ieS1wYXJlbnQucmVxdWVzdCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZOb2RlQmFzZSB9IGZyb20gJy4uLy4uLy4uL2Ytbm9kZSc7XG5pbXBvcnQgeyBHZXREZWVwQ2hpbGRyZW5Ob2Rlc0FuZEdyb3Vwc1JlcXVlc3QgfSBmcm9tICcuLi8uLi9nZXQtZGVlcC1jaGlsZHJlbi1ub2Rlcy1hbmQtZ3JvdXBzJztcbmltcG9ydCB7IEJyb3dzZXJTZXJ2aWNlIH0gZnJvbSAnQGZvYmxleC9wbGF0Zm9ybSc7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoU29ydEl0ZW1zQnlQYXJlbnRSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIFNvcnRJdGVtc0J5UGFyZW50RXhlY3V0aW9uIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxTb3J0SXRlbXNCeVBhcmVudFJlcXVlc3QsIHZvaWQ+IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9mTWVkaWF0b3IgPSBpbmplY3QoRk1lZGlhdG9yKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZkNvbXBvbmVudHNTdG9yZSA9IGluamVjdChGQ29tcG9uZW50c1N0b3JlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZkJyb3dzZXIgPSBpbmplY3QoQnJvd3NlclNlcnZpY2UpO1xuXG4gIHByaXZhdGUgX2ZJdGVtc0NvbnRhaW5lciE6IEhUTUxFbGVtZW50O1xuXG4gIHByaXZhdGUgZ2V0IF9mSXRlbUVsZW1lbnRzKCk6IEhUTUxFbGVtZW50W10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuX2ZJdGVtc0NvbnRhaW5lci5jaGlsZHJlbikgYXMgSFRNTEVsZW1lbnRbXTtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogU29ydEl0ZW1zQnlQYXJlbnRSZXF1ZXN0KTogdm9pZCB7XG4gICAgdGhpcy5fZkl0ZW1zQ29udGFpbmVyID0gcmVxdWVzdC5mSXRlbXNDb250YWluZXI7XG4gICAgdGhpcy5fZ2V0SXRlbXNPZkNvbnRhaW5lcigpLmZvckVhY2goKGZJdGVtOiBGTm9kZUJhc2UpID0+IHtcbiAgICAgIHRoaXMuX21vdmVDaGlsZHJlbkl0ZW1zKHRoaXMuX2dldFNvcnRlZENoaWxkcmVuSXRlbXMoZkl0ZW0pLCBmSXRlbSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRJdGVtc09mQ29udGFpbmVyKCk6IEZOb2RlQmFzZVtdIHtcbiAgICByZXR1cm4gdGhpcy5fZkNvbXBvbmVudHNTdG9yZS5mTm9kZXNcbiAgICAgIC5maWx0ZXIoKHgpID0+IHRoaXMuX2ZJdGVtc0NvbnRhaW5lci5jb250YWlucyh4Lmhvc3RFbGVtZW50KSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRTb3J0ZWRDaGlsZHJlbkl0ZW1zKFxuICAgIGZJdGVtOiBGTm9kZUJhc2UsXG4gICk6IEhUTUxFbGVtZW50W10ge1xuICAgIGNvbnN0IGluZGV4SW5Db250YWluZXIgPSB0aGlzLl9mSXRlbUVsZW1lbnRzLmluZGV4T2YoZkl0ZW0uaG9zdEVsZW1lbnQpO1xuICAgIHJldHVybiB0aGlzLl9nZXRDaGlsZHJlbkl0ZW1zKGZJdGVtLmZJZCgpKVxuICAgICAgLmZpbHRlcigoY2hpbGQ6IEhUTUxFbGVtZW50KSA9PiB0aGlzLl9mSXRlbUVsZW1lbnRzLmluZGV4T2YoY2hpbGQpIDwgaW5kZXhJbkNvbnRhaW5lcilcbiAgICAgIC5zb3J0KChhLCBiKSA9PiB0aGlzLl9mSXRlbUVsZW1lbnRzLmluZGV4T2YoYSkgLSB0aGlzLl9mSXRlbUVsZW1lbnRzLmluZGV4T2YoYikpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Q2hpbGRyZW5JdGVtcyhmSWQ6IHN0cmluZyk6IEhUTUxFbGVtZW50W10ge1xuICAgIHJldHVybiB0aGlzLl9mTWVkaWF0b3IuZXhlY3V0ZTxGTm9kZUJhc2VbXT4obmV3IEdldERlZXBDaGlsZHJlbk5vZGVzQW5kR3JvdXBzUmVxdWVzdChmSWQpKVxuICAgICAgLmZpbHRlcigoeCkgPT4gdGhpcy5fZkl0ZW1zQ29udGFpbmVyLmNvbnRhaW5zKHguaG9zdEVsZW1lbnQpKS5tYXAoKHgpID0+IHguaG9zdEVsZW1lbnQpO1xuICB9XG5cbiAgcHJpdmF0ZSBfbW92ZUNoaWxkcmVuSXRlbXMoXG4gICAgc29ydGVkQ2hpbGRyZW5JdGVtczogSFRNTEVsZW1lbnRbXSxcbiAgICBwYXJlbnQ6IEZOb2RlQmFzZSxcbiAgKTogdm9pZCB7XG4gICAgbGV0IG5leHRTaWJsaW5nID0gcGFyZW50Lmhvc3RFbGVtZW50Lm5leHRFbGVtZW50U2libGluZztcblxuICAgIGNvbnN0IGZyYWdtZW50ID0gdGhpcy5fZkJyb3dzZXIuZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpO1xuXG4gICAgc29ydGVkQ2hpbGRyZW5JdGVtcy5mb3JFYWNoKChjaGlsZDogSFRNTEVsZW1lbnQpID0+IHtcbiAgICAgIGZyYWdtZW50LmFwcGVuZENoaWxkKGNoaWxkKTsgLy8gQXBwZW5kIGF1dG9tYXRpY2FsbHkgcmVtb3ZlcyB0aGUgZWxlbWVudCBmcm9tIGl0cyBjdXJyZW50IHBvc2l0aW9uXG4gICAgfSk7XG4gICAgdGhpcy5fZkl0ZW1zQ29udGFpbmVyLmluc2VydEJlZm9yZShmcmFnbWVudCwgbmV4dFNpYmxpbmcpO1xuICB9XG59XG4iXX0=
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1pdGVtcy1ieS1wYXJlbnQuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vc29ydC1pdGVtLWxheWVycy9zb3J0LWl0ZW1zLWJ5LXBhcmVudC9zb3J0LWl0ZW1zLWJ5LXBhcmVudC5leGVjdXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxTQUFTLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUV0RCxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNoRyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBRWxEOzs7O0dBSUc7QUFHSSxJQUFNLDBCQUEwQixHQUFoQyxNQUFNLDBCQUEwQjtJQUVwQixNQUFNLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDbEMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM5QixRQUFRLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBRTNDLGdCQUFnQixDQUFlO0lBRXZDLElBQVksY0FBYztRQUN4QixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBa0IsQ0FBQztJQUNyRSxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQWlDO1FBQzdDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDO1FBQ2hELElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQWdCLEVBQUUsRUFBRTtZQUN2RCxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3RFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLG9CQUFvQjtRQUMxQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTTthQUN0QixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVPLHVCQUF1QixDQUM3QixLQUFnQjtRQUVoQixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN4RSxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUM7YUFDdkMsTUFBTSxDQUFDLENBQUMsS0FBa0IsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsZ0JBQWdCLENBQUM7YUFDckYsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNyRixDQUFDO0lBRU8saUJBQWlCLENBQUMsR0FBVztRQUNuQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFjLElBQUksb0NBQW9DLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDdEYsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzVGLENBQUM7SUFFTyxrQkFBa0IsQ0FDeEIsbUJBQWtDLEVBQ2xDLE1BQWlCO1FBRWpCLElBQUksV0FBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsa0JBQWtCLENBQUM7UUFFeEQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztRQUVqRSxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFrQixFQUFFLEVBQUU7WUFDakQsUUFBUSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLHFFQUFxRTtRQUNwRyxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQzVELENBQUM7d0dBbERVLDBCQUEwQjs0R0FBMUIsMEJBQTBCOztBQUExQiwwQkFBMEI7SUFEdEMsa0JBQWtCLENBQUMsd0JBQXdCLENBQUM7R0FDaEMsMEJBQTBCLENBbUR0Qzs7NEZBbkRZLDBCQUEwQjtrQkFGdEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNvcnRJdGVtc0J5UGFyZW50UmVxdWVzdCB9IGZyb20gJy4vc29ydC1pdGVtcy1ieS1wYXJlbnQucmVxdWVzdCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZOb2RlQmFzZSB9IGZyb20gJy4uLy4uLy4uL2Ytbm9kZSc7XG5pbXBvcnQgeyBHZXREZWVwQ2hpbGRyZW5Ob2Rlc0FuZEdyb3Vwc1JlcXVlc3QgfSBmcm9tICcuLi8uLi9nZXQtZGVlcC1jaGlsZHJlbi1ub2Rlcy1hbmQtZ3JvdXBzJztcbmltcG9ydCB7IEJyb3dzZXJTZXJ2aWNlIH0gZnJvbSAnQGZvYmxleC9wbGF0Zm9ybSc7XG5cbi8qKlxuICogRXhlY3V0aW9uIHRoYXQgc29ydHMgaXRlbXMgYnkgdGhlaXIgcGFyZW50IG5vZGVzIGluIHRoZSBGSXRlbXNDb250YWluZXIuXG4gKiBJdCByZXRyaWV2ZXMgYWxsIGl0ZW1zIHdpdGhpbiB0aGUgY29udGFpbmVyLCBzb3J0cyB0aGVpciBjaGlsZHJlbiBiYXNlZCBvbiB0aGVpciBjdXJyZW50IG9yZGVyLFxuICogYW5kIG1vdmVzIHRoZW0gdG8gbWFpbnRhaW4gdGhlIGNvcnJlY3QgaGllcmFyY2h5LlxuICovXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKFNvcnRJdGVtc0J5UGFyZW50UmVxdWVzdClcbmV4cG9ydCBjbGFzcyBTb3J0SXRlbXNCeVBhcmVudEV4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248U29ydEl0ZW1zQnlQYXJlbnRSZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfc3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX21lZGlhdG9yID0gaW5qZWN0KEZNZWRpYXRvcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Jyb3dzZXIgPSBpbmplY3QoQnJvd3NlclNlcnZpY2UpO1xuXG4gIHByaXZhdGUgX2ZJdGVtc0NvbnRhaW5lciE6IEhUTUxFbGVtZW50O1xuXG4gIHByaXZhdGUgZ2V0IF9mSXRlbUVsZW1lbnRzKCk6IEhUTUxFbGVtZW50W10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuX2ZJdGVtc0NvbnRhaW5lci5jaGlsZHJlbikgYXMgSFRNTEVsZW1lbnRbXTtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogU29ydEl0ZW1zQnlQYXJlbnRSZXF1ZXN0KTogdm9pZCB7XG4gICAgdGhpcy5fZkl0ZW1zQ29udGFpbmVyID0gcmVxdWVzdC5mSXRlbXNDb250YWluZXI7XG4gICAgdGhpcy5fZ2V0SXRlbXNPZkNvbnRhaW5lcigpLmZvckVhY2goKGZJdGVtOiBGTm9kZUJhc2UpID0+IHtcbiAgICAgIHRoaXMuX21vdmVDaGlsZHJlbkl0ZW1zKHRoaXMuX2dldFNvcnRlZENoaWxkcmVuSXRlbXMoZkl0ZW0pLCBmSXRlbSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRJdGVtc09mQ29udGFpbmVyKCk6IEZOb2RlQmFzZVtdIHtcbiAgICByZXR1cm4gdGhpcy5fc3RvcmUuZk5vZGVzXG4gICAgICAuZmlsdGVyKCh4KSA9PiB0aGlzLl9mSXRlbXNDb250YWluZXIuY29udGFpbnMoeC5ob3N0RWxlbWVudCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0U29ydGVkQ2hpbGRyZW5JdGVtcyhcbiAgICBmSXRlbTogRk5vZGVCYXNlLFxuICApOiBIVE1MRWxlbWVudFtdIHtcbiAgICBjb25zdCBpbmRleEluQ29udGFpbmVyID0gdGhpcy5fZkl0ZW1FbGVtZW50cy5pbmRleE9mKGZJdGVtLmhvc3RFbGVtZW50KTtcbiAgICByZXR1cm4gdGhpcy5fZ2V0Q2hpbGRyZW5JdGVtcyhmSXRlbS5mSWQoKSlcbiAgICAgIC5maWx0ZXIoKGNoaWxkOiBIVE1MRWxlbWVudCkgPT4gdGhpcy5fZkl0ZW1FbGVtZW50cy5pbmRleE9mKGNoaWxkKSA8IGluZGV4SW5Db250YWluZXIpXG4gICAgICAuc29ydCgoYSwgYikgPT4gdGhpcy5fZkl0ZW1FbGVtZW50cy5pbmRleE9mKGEpIC0gdGhpcy5fZkl0ZW1FbGVtZW50cy5pbmRleE9mKGIpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldENoaWxkcmVuSXRlbXMoZklkOiBzdHJpbmcpOiBIVE1MRWxlbWVudFtdIHtcbiAgICByZXR1cm4gdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTxGTm9kZUJhc2VbXT4obmV3IEdldERlZXBDaGlsZHJlbk5vZGVzQW5kR3JvdXBzUmVxdWVzdChmSWQpKVxuICAgICAgLmZpbHRlcigoeCkgPT4gdGhpcy5fZkl0ZW1zQ29udGFpbmVyLmNvbnRhaW5zKHguaG9zdEVsZW1lbnQpKS5tYXAoKHgpID0+IHguaG9zdEVsZW1lbnQpO1xuICB9XG5cbiAgcHJpdmF0ZSBfbW92ZUNoaWxkcmVuSXRlbXMoXG4gICAgc29ydGVkQ2hpbGRyZW5JdGVtczogSFRNTEVsZW1lbnRbXSxcbiAgICBwYXJlbnQ6IEZOb2RlQmFzZSxcbiAgKTogdm9pZCB7XG4gICAgbGV0IG5leHRTaWJsaW5nID0gcGFyZW50Lmhvc3RFbGVtZW50Lm5leHRFbGVtZW50U2libGluZztcblxuICAgIGNvbnN0IGZyYWdtZW50ID0gdGhpcy5fYnJvd3Nlci5kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7XG5cbiAgICBzb3J0ZWRDaGlsZHJlbkl0ZW1zLmZvckVhY2goKGNoaWxkOiBIVE1MRWxlbWVudCkgPT4ge1xuICAgICAgZnJhZ21lbnQuYXBwZW5kQ2hpbGQoY2hpbGQpOyAvLyBBcHBlbmQgYXV0b21hdGljYWxseSByZW1vdmVzIHRoZSBlbGVtZW50IGZyb20gaXRzIGN1cnJlbnQgcG9zaXRpb25cbiAgICB9KTtcbiAgICB0aGlzLl9mSXRlbXNDb250YWluZXIuaW5zZXJ0QmVmb3JlKGZyYWdtZW50LCBuZXh0U2libGluZyk7XG4gIH1cbn1cbiJdfQ==
@@ -6,12 +6,17 @@ import { FComponentsStore } from '../../../f-storage';
6
6
  import { GetDeepChildrenNodesAndGroupsRequest } from '../../get-deep-children-nodes-and-groups';
7
7
  import { BrowserService } from '@foblex/platform';
8
8
  import * as i0 from "@angular/core";
9
+ /**
10
+ * Execution that sorts node layers by their parent nodes in the FCanvas.
11
+ * It retrieves all groups, sorts their children nodes based on their current order,
12
+ * and moves them to maintain the correct hierarchy.
13
+ */
9
14
  let SortNodeLayersExecution = class SortNodeLayersExecution {
10
- _fMediator = inject(FMediator);
11
- _fComponentsStore = inject(FComponentsStore);
12
- _fBrowser = inject(BrowserService);
15
+ _store = inject(FComponentsStore);
16
+ _mediator = inject(FMediator);
17
+ _browser = inject(BrowserService);
13
18
  get _fCanvas() {
14
- return this._fComponentsStore.fCanvas;
19
+ return this._store.fCanvas;
15
20
  }
16
21
  get _fGroupsContainer() {
17
22
  return this._fCanvas.fGroupsContainer().nativeElement;
@@ -28,7 +33,7 @@ let SortNodeLayersExecution = class SortNodeLayersExecution {
28
33
  });
29
34
  }
30
35
  _getGroups() {
31
- return this._fComponentsStore.fNodes
36
+ return this._store.fNodes
32
37
  .filter((x) => this._fGroupsContainer.contains(x.hostElement));
33
38
  }
34
39
  _getSortedChildrenNodes(parent) {
@@ -37,11 +42,11 @@ let SortNodeLayersExecution = class SortNodeLayersExecution {
37
42
  .sort((a, b) => allElements.indexOf(a) - allElements.indexOf(b));
38
43
  }
39
44
  _getChildrenNodes(fId) {
40
- return this._fMediator.execute(new GetDeepChildrenNodesAndGroupsRequest(fId))
45
+ return this._mediator.execute(new GetDeepChildrenNodesAndGroupsRequest(fId))
41
46
  .filter((x) => this._fNodesContainer.contains(x.hostElement)).map((x) => x.hostElement);
42
47
  }
43
48
  _moveChildrenNodes(sortedChildrenGroups) {
44
- const fragment = this._fBrowser.document.createDocumentFragment();
49
+ const fragment = this._browser.document.createDocumentFragment();
45
50
  sortedChildrenGroups.forEach((childGroup) => {
46
51
  fragment.appendChild(childGroup); // Append automatically removes the element from its current position
47
52
  });
@@ -57,4 +62,4 @@ export { SortNodeLayersExecution };
57
62
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SortNodeLayersExecution, decorators: [{
58
63
  type: Injectable
59
64
  }] });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1ub2RlLWxheWVycy5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9zb3J0LWl0ZW0tbGF5ZXJzL3NvcnQtbm9kZS1sYXllcnMtYnktZ3JvdXBzL3NvcnQtbm9kZS1sYXllcnMuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDN0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFdEQsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDaEcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQUszQyxJQUFNLHVCQUF1QixHQUE3QixNQUFNLHVCQUF1QjtJQUVqQixVQUFVLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQy9CLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQzdDLFNBQVMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFFcEQsSUFBWSxRQUFRO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQVEsQ0FBQztJQUN6QyxDQUFDO0lBRUQsSUFBWSxpQkFBaUI7UUFDM0IsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixFQUFFLENBQUMsYUFBYSxDQUFDO0lBQ3hELENBQUM7SUFFRCxJQUFZLGdCQUFnQjtRQUMxQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBZSxFQUFFLENBQUMsYUFBYSxDQUFDO0lBQ3ZELENBQUM7SUFFRCxJQUFZLGNBQWM7UUFDeEIsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQWtCLENBQUM7SUFDckUsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUE4QjtRQUMxQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBaUIsRUFBRSxFQUFFO1lBQzlDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUNoRSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxVQUFVO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU07YUFDakMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFTyx1QkFBdUIsQ0FDN0IsTUFBaUI7UUFFakIsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztRQUN4QyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUM7YUFDeEMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVPLGlCQUFpQixDQUFDLEdBQVc7UUFDbkMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBYyxJQUFJLG9DQUFvQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ3ZGLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM1RixDQUFDO0lBRU8sa0JBQWtCLENBQ3hCLG9CQUFtQztRQUVuQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBQ2xFLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQXVCLEVBQUUsRUFBRTtZQUN2RCxRQUFRLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMscUVBQXFFO1FBQ3pHLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM5QyxDQUFDO3dHQXREVSx1QkFBdUI7NEdBQXZCLHVCQUF1Qjs7QUFBdkIsdUJBQXVCO0lBRG5DLGtCQUFrQixDQUFDLHFCQUFxQixDQUFDO0dBQzdCLHVCQUF1QixDQXVEbkM7OzRGQXZEWSx1QkFBdUI7a0JBRm5DLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTb3J0Tm9kZUxheWVyc1JlcXVlc3QgfSBmcm9tICcuL3NvcnQtbm9kZS1sYXllcnMucmVxdWVzdCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZOb2RlQmFzZSB9IGZyb20gJy4uLy4uLy4uL2Ytbm9kZSc7XG5pbXBvcnQgeyBHZXREZWVwQ2hpbGRyZW5Ob2Rlc0FuZEdyb3Vwc1JlcXVlc3QgfSBmcm9tICcuLi8uLi9nZXQtZGVlcC1jaGlsZHJlbi1ub2Rlcy1hbmQtZ3JvdXBzJztcbmltcG9ydCB7IEJyb3dzZXJTZXJ2aWNlIH0gZnJvbSAnQGZvYmxleC9wbGF0Zm9ybSc7XG5pbXBvcnQgeyBGQ2FudmFzQmFzZSB9IGZyb20gJy4uLy4uLy4uL2YtY2FudmFzJztcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihTb3J0Tm9kZUxheWVyc1JlcXVlc3QpXG5leHBvcnQgY2xhc3MgU29ydE5vZGVMYXllcnNFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPFNvcnROb2RlTGF5ZXJzUmVxdWVzdCwgdm9pZD4ge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2ZNZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9mQ29tcG9uZW50c1N0b3JlID0gaW5qZWN0KEZDb21wb25lbnRzU3RvcmUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9mQnJvd3NlciA9IGluamVjdChCcm93c2VyU2VydmljZSk7XG5cbiAgcHJpdmF0ZSBnZXQgX2ZDYW52YXMoKTogRkNhbnZhc0Jhc2Uge1xuICAgIHJldHVybiB0aGlzLl9mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgX2ZHcm91cHNDb250YWluZXIoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLl9mQ2FudmFzLmZHcm91cHNDb250YWluZXIoKS5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgX2ZOb2Rlc0NvbnRhaW5lcigpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuX2ZDYW52YXMuZk5vZGVzQ29udGFpbmVyKCkubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF9mTm9kZUVsZW1lbnRzKCk6IEhUTUxFbGVtZW50W10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuX2ZOb2Rlc0NvbnRhaW5lci5jaGlsZHJlbikgYXMgSFRNTEVsZW1lbnRbXTtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogU29ydE5vZGVMYXllcnNSZXF1ZXN0KTogdm9pZCB7XG4gICAgdGhpcy5fZ2V0R3JvdXBzKCkuZm9yRWFjaCgocGFyZW50OiBGTm9kZUJhc2UpID0+IHtcbiAgICAgIHRoaXMuX21vdmVDaGlsZHJlbk5vZGVzKHRoaXMuX2dldFNvcnRlZENoaWxkcmVuTm9kZXMocGFyZW50KSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRHcm91cHMoKTogRk5vZGVCYXNlW10ge1xuICAgIHJldHVybiB0aGlzLl9mQ29tcG9uZW50c1N0b3JlLmZOb2Rlc1xuICAgICAgLmZpbHRlcigoeCkgPT4gdGhpcy5fZkdyb3Vwc0NvbnRhaW5lci5jb250YWlucyh4Lmhvc3RFbGVtZW50KSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRTb3J0ZWRDaGlsZHJlbk5vZGVzKFxuICAgIHBhcmVudDogRk5vZGVCYXNlLFxuICApOiBIVE1MRWxlbWVudFtdIHtcbiAgICBjb25zdCBhbGxFbGVtZW50cyA9IHRoaXMuX2ZOb2RlRWxlbWVudHM7XG4gICAgcmV0dXJuIHRoaXMuX2dldENoaWxkcmVuTm9kZXMocGFyZW50LmZJZCgpKVxuICAgICAgLnNvcnQoKGEsIGIpID0+IGFsbEVsZW1lbnRzLmluZGV4T2YoYSkgLSBhbGxFbGVtZW50cy5pbmRleE9mKGIpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldENoaWxkcmVuTm9kZXMoZklkOiBzdHJpbmcpOiBIVE1MRWxlbWVudFtdIHtcbiAgICByZXR1cm4gdGhpcy5fZk1lZGlhdG9yLmV4ZWN1dGU8Rk5vZGVCYXNlW10+KG5ldyBHZXREZWVwQ2hpbGRyZW5Ob2Rlc0FuZEdyb3Vwc1JlcXVlc3QoZklkKSlcbiAgICAgIC5maWx0ZXIoKHgpID0+IHRoaXMuX2ZOb2Rlc0NvbnRhaW5lci5jb250YWlucyh4Lmhvc3RFbGVtZW50KSkubWFwKCh4KSA9PiB4Lmhvc3RFbGVtZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgX21vdmVDaGlsZHJlbk5vZGVzKFxuICAgIHNvcnRlZENoaWxkcmVuR3JvdXBzOiBIVE1MRWxlbWVudFtdLFxuICApOiB2b2lkIHtcbiAgICBjb25zdCBmcmFnbWVudCA9IHRoaXMuX2ZCcm93c2VyLmRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTtcbiAgICBzb3J0ZWRDaGlsZHJlbkdyb3Vwcy5mb3JFYWNoKChjaGlsZEdyb3VwOiBIVE1MRWxlbWVudCkgPT4ge1xuICAgICAgZnJhZ21lbnQuYXBwZW5kQ2hpbGQoY2hpbGRHcm91cCk7IC8vIEFwcGVuZCBhdXRvbWF0aWNhbGx5IHJlbW92ZXMgdGhlIGVsZW1lbnQgZnJvbSBpdHMgY3VycmVudCBwb3NpdGlvblxuICAgIH0pO1xuICAgIHRoaXMuX2ZOb2Rlc0NvbnRhaW5lci5hcHBlbmRDaGlsZChmcmFnbWVudCk7XG4gIH1cbn1cbiJdfQ==
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1ub2RlLWxheWVycy5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9zb3J0LWl0ZW0tbGF5ZXJzL3NvcnQtbm9kZS1sYXllcnMtYnktZ3JvdXBzL3NvcnQtbm9kZS1sYXllcnMuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDN0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFdEQsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDaEcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQUdsRDs7OztHQUlHO0FBR0ksSUFBTSx1QkFBdUIsR0FBN0IsTUFBTSx1QkFBdUI7SUFFakIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ2xDLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDOUIsUUFBUSxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUVuRCxJQUFZLFFBQVE7UUFDbEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQVEsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBWSxpQkFBaUI7UUFDM0IsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixFQUFFLENBQUMsYUFBYSxDQUFDO0lBQ3hELENBQUM7SUFFRCxJQUFZLGdCQUFnQjtRQUMxQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBZSxFQUFFLENBQUMsYUFBYSxDQUFDO0lBQ3ZELENBQUM7SUFFRCxJQUFZLGNBQWM7UUFDeEIsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQWtCLENBQUM7SUFDckUsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUE4QjtRQUMxQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBaUIsRUFBRSxFQUFFO1lBQzlDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUNoRSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxVQUFVO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNO2FBQ3RCLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRU8sdUJBQXVCLENBQzdCLE1BQWlCO1FBRWpCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUM7UUFDeEMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDO2FBQ3hDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxHQUFXO1FBQ25DLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQWMsSUFBSSxvQ0FBb0MsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUN0RixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDNUYsQ0FBQztJQUVPLGtCQUFrQixDQUN4QixvQkFBbUM7UUFFbkMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztRQUNqRSxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxVQUF1QixFQUFFLEVBQUU7WUFDdkQsUUFBUSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLHFFQUFxRTtRQUN6RyxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDOUMsQ0FBQzt3R0F0RFUsdUJBQXVCOzRHQUF2Qix1QkFBdUI7O0FBQXZCLHVCQUF1QjtJQURuQyxrQkFBa0IsQ0FBQyxxQkFBcUIsQ0FBQztHQUM3Qix1QkFBdUIsQ0F1RG5DOzs0RkF2RFksdUJBQXVCO2tCQUZuQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU29ydE5vZGVMYXllcnNSZXF1ZXN0IH0gZnJvbSAnLi9zb3J0LW5vZGUtbGF5ZXJzLnJlcXVlc3QnO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGTm9kZUJhc2UgfSBmcm9tICcuLi8uLi8uLi9mLW5vZGUnO1xuaW1wb3J0IHsgR2V0RGVlcENoaWxkcmVuTm9kZXNBbmRHcm91cHNSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vZ2V0LWRlZXAtY2hpbGRyZW4tbm9kZXMtYW5kLWdyb3Vwcyc7XG5pbXBvcnQgeyBCcm93c2VyU2VydmljZSB9IGZyb20gJ0Bmb2JsZXgvcGxhdGZvcm0nO1xuaW1wb3J0IHsgRkNhbnZhc0Jhc2UgfSBmcm9tICcuLi8uLi8uLi9mLWNhbnZhcyc7XG5cbi8qKlxuICogRXhlY3V0aW9uIHRoYXQgc29ydHMgbm9kZSBsYXllcnMgYnkgdGhlaXIgcGFyZW50IG5vZGVzIGluIHRoZSBGQ2FudmFzLlxuICogSXQgcmV0cmlldmVzIGFsbCBncm91cHMsIHNvcnRzIHRoZWlyIGNoaWxkcmVuIG5vZGVzIGJhc2VkIG9uIHRoZWlyIGN1cnJlbnQgb3JkZXIsXG4gKiBhbmQgbW92ZXMgdGhlbSB0byBtYWludGFpbiB0aGUgY29ycmVjdCBoaWVyYXJjaHkuXG4gKi9cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoU29ydE5vZGVMYXllcnNSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIFNvcnROb2RlTGF5ZXJzRXhlY3V0aW9uIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxTb3J0Tm9kZUxheWVyc1JlcXVlc3QsIHZvaWQ+IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9zdG9yZSA9IGluamVjdChGQ29tcG9uZW50c1N0b3JlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfbWVkaWF0b3IgPSBpbmplY3QoRk1lZGlhdG9yKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfYnJvd3NlciA9IGluamVjdChCcm93c2VyU2VydmljZSk7XG5cbiAgcHJpdmF0ZSBnZXQgX2ZDYW52YXMoKTogRkNhbnZhc0Jhc2Uge1xuICAgIHJldHVybiB0aGlzLl9zdG9yZS5mQ2FudmFzITtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF9mR3JvdXBzQ29udGFpbmVyKCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5fZkNhbnZhcy5mR3JvdXBzQ29udGFpbmVyKCkubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF9mTm9kZXNDb250YWluZXIoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLl9mQ2FudmFzLmZOb2Rlc0NvbnRhaW5lcigpLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBwcml2YXRlIGdldCBfZk5vZGVFbGVtZW50cygpOiBIVE1MRWxlbWVudFtdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLl9mTm9kZXNDb250YWluZXIuY2hpbGRyZW4pIGFzIEhUTUxFbGVtZW50W107XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IFNvcnROb2RlTGF5ZXJzUmVxdWVzdCk6IHZvaWQge1xuICAgIHRoaXMuX2dldEdyb3VwcygpLmZvckVhY2goKHBhcmVudDogRk5vZGVCYXNlKSA9PiB7XG4gICAgICB0aGlzLl9tb3ZlQ2hpbGRyZW5Ob2Rlcyh0aGlzLl9nZXRTb3J0ZWRDaGlsZHJlbk5vZGVzKHBhcmVudCkpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0R3JvdXBzKCk6IEZOb2RlQmFzZVtdIHtcbiAgICByZXR1cm4gdGhpcy5fc3RvcmUuZk5vZGVzXG4gICAgICAuZmlsdGVyKCh4KSA9PiB0aGlzLl9mR3JvdXBzQ29udGFpbmVyLmNvbnRhaW5zKHguaG9zdEVsZW1lbnQpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldFNvcnRlZENoaWxkcmVuTm9kZXMoXG4gICAgcGFyZW50OiBGTm9kZUJhc2UsXG4gICk6IEhUTUxFbGVtZW50W10ge1xuICAgIGNvbnN0IGFsbEVsZW1lbnRzID0gdGhpcy5fZk5vZGVFbGVtZW50cztcbiAgICByZXR1cm4gdGhpcy5fZ2V0Q2hpbGRyZW5Ob2RlcyhwYXJlbnQuZklkKCkpXG4gICAgICAuc29ydCgoYSwgYikgPT4gYWxsRWxlbWVudHMuaW5kZXhPZihhKSAtIGFsbEVsZW1lbnRzLmluZGV4T2YoYikpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Q2hpbGRyZW5Ob2RlcyhmSWQ6IHN0cmluZyk6IEhUTUxFbGVtZW50W10ge1xuICAgIHJldHVybiB0aGlzLl9tZWRpYXRvci5leGVjdXRlPEZOb2RlQmFzZVtdPihuZXcgR2V0RGVlcENoaWxkcmVuTm9kZXNBbmRHcm91cHNSZXF1ZXN0KGZJZCkpXG4gICAgICAuZmlsdGVyKCh4KSA9PiB0aGlzLl9mTm9kZXNDb250YWluZXIuY29udGFpbnMoeC5ob3N0RWxlbWVudCkpLm1hcCgoeCkgPT4geC5ob3N0RWxlbWVudCk7XG4gIH1cblxuICBwcml2YXRlIF9tb3ZlQ2hpbGRyZW5Ob2RlcyhcbiAgICBzb3J0ZWRDaGlsZHJlbkdyb3VwczogSFRNTEVsZW1lbnRbXSxcbiAgKTogdm9pZCB7XG4gICAgY29uc3QgZnJhZ21lbnQgPSB0aGlzLl9icm93c2VyLmRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTtcbiAgICBzb3J0ZWRDaGlsZHJlbkdyb3Vwcy5mb3JFYWNoKChjaGlsZEdyb3VwOiBIVE1MRWxlbWVudCkgPT4ge1xuICAgICAgZnJhZ21lbnQuYXBwZW5kQ2hpbGQoY2hpbGRHcm91cCk7IC8vIEFwcGVuZCBhdXRvbWF0aWNhbGx5IHJlbW92ZXMgdGhlIGVsZW1lbnQgZnJvbSBpdHMgY3VycmVudCBwb3NpdGlvblxuICAgIH0pO1xuICAgIHRoaXMuX2ZOb2Rlc0NvbnRhaW5lci5hcHBlbmRDaGlsZChmcmFnbWVudCk7XG4gIH1cbn1cbiJdfQ==
@@ -3,6 +3,10 @@ import { MoveFrontElementsBeforeTargetElementRequest } from './move-front-elemen
3
3
  import { Injectable } from '@angular/core';
4
4
  import { FExecutionRegister } from '@foblex/mediator';
5
5
  import * as i0 from "@angular/core";
6
+ /**
7
+ * Execution that moves elements in the FItemsContainer before a target element.
8
+ * It removes elements that should not be in front and inserts them before the target element.
9
+ */
6
10
  let MoveFrontElementsBeforeTargetElementExecution = class MoveFrontElementsBeforeTargetElementExecution {
7
11
  handle(request) {
8
12
  const elementsToMove = [];
@@ -27,4 +31,4 @@ export { MoveFrontElementsBeforeTargetElementExecution };
27
31
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MoveFrontElementsBeforeTargetElementExecution, decorators: [{
28
32
  type: Injectable
29
33
  }] });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW92ZS1mcm9udC1lbGVtZW50cy1iZWZvcmUtdGFyZ2V0LWVsZW1lbnQuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vdXBkYXRlLWl0ZW0tYW5kLWNoaWxkcmVuLWxheWVycy9tb3ZlLWZyb250LWVsZW1lbnRzLWJlZm9yZS10YXJnZXQtZWxlbWVudC9tb3ZlLWZyb250LWVsZW1lbnRzLWJlZm9yZS10YXJnZXQtZWxlbWVudC5leGVjdXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSwyQ0FBMkMsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ2xILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGtCQUFrQixFQUFjLE1BQU0sa0JBQWtCLENBQUM7O0FBSTNELElBQU0sNkNBQTZDLEdBQW5ELE1BQU0sNkNBQTZDO0lBRWpELE1BQU0sQ0FBQyxPQUFvRDtRQUNoRSxNQUFNLGNBQWMsR0FBYyxFQUFFLENBQUM7UUFDckMsS0FBSyxJQUFJLENBQUMsR0FBRyxPQUFPLENBQUMsV0FBVyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUMxRSxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFFLENBQUMsQ0FBRSxDQUFDO1lBQ3pDLElBQUksQ0FBQyxPQUFPLENBQUMsMkJBQTJCLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQzNELGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDL0IsQ0FBQztRQUNILENBQUM7UUFDRCxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDM0IsT0FBTyxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdkMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxXQUFXLENBQUUsT0FBTyxDQUFDLFdBQVcsQ0FBRSxDQUFDLENBQUM7UUFDdEYsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3dHQWRVLDZDQUE2Qzs0R0FBN0MsNkNBQTZDOztBQUE3Qyw2Q0FBNkM7SUFEekQsa0JBQWtCLENBQUMsMkNBQTJDLENBQUM7R0FDbkQsNkNBQTZDLENBZXpEOzs0RkFmWSw2Q0FBNkM7a0JBRnpELFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb3ZlRnJvbnRFbGVtZW50c0JlZm9yZVRhcmdldEVsZW1lbnRSZXF1ZXN0IH0gZnJvbSAnLi9tb3ZlLWZyb250LWVsZW1lbnRzLWJlZm9yZS10YXJnZXQtZWxlbWVudC5yZXF1ZXN0JztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKE1vdmVGcm9udEVsZW1lbnRzQmVmb3JlVGFyZ2V0RWxlbWVudFJlcXVlc3QpXG5leHBvcnQgY2xhc3MgTW92ZUZyb250RWxlbWVudHNCZWZvcmVUYXJnZXRFbGVtZW50RXhlY3V0aW9uIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxNb3ZlRnJvbnRFbGVtZW50c0JlZm9yZVRhcmdldEVsZW1lbnRSZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBNb3ZlRnJvbnRFbGVtZW50c0JlZm9yZVRhcmdldEVsZW1lbnRSZXF1ZXN0KTogdm9pZCB7XG4gICAgY29uc3QgZWxlbWVudHNUb01vdmU6IEVsZW1lbnRbXSA9IFtdO1xuICAgIGZvciAobGV0IGkgPSByZXF1ZXN0LnRhcmdldEluZGV4ICsgMTsgaSA8IHJlcXVlc3QuYWxsRWxlbWVudHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IGVsZW1lbnQgPSByZXF1ZXN0LmFsbEVsZW1lbnRzWyBpIF07XG4gICAgICBpZiAoIXJlcXVlc3QuZWxlbWVudHNUaGF0U2hvdWxkQmVJbkZyb250LmluY2x1ZGVzKGVsZW1lbnQpKSB7XG4gICAgICAgIGVsZW1lbnRzVG9Nb3ZlLnB1c2goZWxlbWVudCk7XG4gICAgICB9XG4gICAgfVxuICAgIGVsZW1lbnRzVG9Nb3ZlLmZvckVhY2goKHgpID0+IHtcbiAgICAgIHJlcXVlc3QuZkl0ZW1zQ29udGFpbmVyLnJlbW92ZUNoaWxkKHgpO1xuICAgICAgcmVxdWVzdC5mSXRlbXNDb250YWluZXIuaW5zZXJ0QmVmb3JlKHgsIHJlcXVlc3QuYWxsRWxlbWVudHNbIHJlcXVlc3QudGFyZ2V0SW5kZXggXSk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW92ZS1mcm9udC1lbGVtZW50cy1iZWZvcmUtdGFyZ2V0LWVsZW1lbnQuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vdXBkYXRlLWl0ZW0tYW5kLWNoaWxkcmVuLWxheWVycy9tb3ZlLWZyb250LWVsZW1lbnRzLWJlZm9yZS10YXJnZXQtZWxlbWVudC9tb3ZlLWZyb250LWVsZW1lbnRzLWJlZm9yZS10YXJnZXQtZWxlbWVudC5leGVjdXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSwyQ0FBMkMsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ2xILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGtCQUFrQixFQUFjLE1BQU0sa0JBQWtCLENBQUM7O0FBRWxFOzs7R0FHRztBQUdJLElBQU0sNkNBQTZDLEdBQW5ELE1BQU0sNkNBQTZDO0lBRWpELE1BQU0sQ0FBQyxPQUFvRDtRQUNoRSxNQUFNLGNBQWMsR0FBYyxFQUFFLENBQUM7UUFDckMsS0FBSyxJQUFJLENBQUMsR0FBRyxPQUFPLENBQUMsV0FBVyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUMxRSxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFFLENBQUMsQ0FBRSxDQUFDO1lBQ3pDLElBQUksQ0FBQyxPQUFPLENBQUMsMkJBQTJCLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQzNELGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDL0IsQ0FBQztRQUNILENBQUM7UUFDRCxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDM0IsT0FBTyxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdkMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxXQUFXLENBQUUsT0FBTyxDQUFDLFdBQVcsQ0FBRSxDQUFDLENBQUM7UUFDdEYsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3dHQWRVLDZDQUE2Qzs0R0FBN0MsNkNBQTZDOztBQUE3Qyw2Q0FBNkM7SUFEekQsa0JBQWtCLENBQUMsMkNBQTJDLENBQUM7R0FDbkQsNkNBQTZDLENBZXpEOzs0RkFmWSw2Q0FBNkM7a0JBRnpELFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb3ZlRnJvbnRFbGVtZW50c0JlZm9yZVRhcmdldEVsZW1lbnRSZXF1ZXN0IH0gZnJvbSAnLi9tb3ZlLWZyb250LWVsZW1lbnRzLWJlZm9yZS10YXJnZXQtZWxlbWVudC5yZXF1ZXN0JztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuXG4vKipcbiAqIEV4ZWN1dGlvbiB0aGF0IG1vdmVzIGVsZW1lbnRzIGluIHRoZSBGSXRlbXNDb250YWluZXIgYmVmb3JlIGEgdGFyZ2V0IGVsZW1lbnQuXG4gKiBJdCByZW1vdmVzIGVsZW1lbnRzIHRoYXQgc2hvdWxkIG5vdCBiZSBpbiBmcm9udCBhbmQgaW5zZXJ0cyB0aGVtIGJlZm9yZSB0aGUgdGFyZ2V0IGVsZW1lbnQuXG4gKi9cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoTW92ZUZyb250RWxlbWVudHNCZWZvcmVUYXJnZXRFbGVtZW50UmVxdWVzdClcbmV4cG9ydCBjbGFzcyBNb3ZlRnJvbnRFbGVtZW50c0JlZm9yZVRhcmdldEVsZW1lbnRFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPE1vdmVGcm9udEVsZW1lbnRzQmVmb3JlVGFyZ2V0RWxlbWVudFJlcXVlc3QsIHZvaWQ+IHtcblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IE1vdmVGcm9udEVsZW1lbnRzQmVmb3JlVGFyZ2V0RWxlbWVudFJlcXVlc3QpOiB2b2lkIHtcbiAgICBjb25zdCBlbGVtZW50c1RvTW92ZTogRWxlbWVudFtdID0gW107XG4gICAgZm9yIChsZXQgaSA9IHJlcXVlc3QudGFyZ2V0SW5kZXggKyAxOyBpIDwgcmVxdWVzdC5hbGxFbGVtZW50cy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgZWxlbWVudCA9IHJlcXVlc3QuYWxsRWxlbWVudHNbIGkgXTtcbiAgICAgIGlmICghcmVxdWVzdC5lbGVtZW50c1RoYXRTaG91bGRCZUluRnJvbnQuaW5jbHVkZXMoZWxlbWVudCkpIHtcbiAgICAgICAgZWxlbWVudHNUb01vdmUucHVzaChlbGVtZW50KTtcbiAgICAgIH1cbiAgICB9XG4gICAgZWxlbWVudHNUb01vdmUuZm9yRWFjaCgoeCkgPT4ge1xuICAgICAgcmVxdWVzdC5mSXRlbXNDb250YWluZXIucmVtb3ZlQ2hpbGQoeCk7XG4gICAgICByZXF1ZXN0LmZJdGVtc0NvbnRhaW5lci5pbnNlcnRCZWZvcmUoeCwgcmVxdWVzdC5hbGxFbGVtZW50c1sgcmVxdWVzdC50YXJnZXRJbmRleCBdKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -6,11 +6,15 @@ import { FComponentsStore } from '../../f-storage';
6
6
  import { GetDeepChildrenNodesAndGroupsRequest } from '../get-deep-children-nodes-and-groups';
7
7
  import { MoveFrontElementsBeforeTargetElementRequest } from './move-front-elements-before-target-element';
8
8
  import * as i0 from "@angular/core";
9
+ /**
10
+ * Execution that updates the layers of an item and its children in the FCanvas.
11
+ * It handles different item containers (groups, nodes, connections) and updates their layers accordingly.
12
+ */
9
13
  let UpdateItemAndChildrenLayersExecution = class UpdateItemAndChildrenLayersExecution {
10
- _fMediator = inject(FMediator);
11
- _fComponentsStore = inject(FComponentsStore);
14
+ _store = inject(FComponentsStore);
15
+ _mediator = inject(FMediator);
12
16
  get _fCanvas() {
13
- return this._fComponentsStore.fCanvas;
17
+ return this._store.fCanvas;
14
18
  }
15
19
  get _fGroupsContainer() {
16
20
  return this._fCanvas.fGroupsContainer().nativeElement;
@@ -57,7 +61,7 @@ let UpdateItemAndChildrenLayersExecution = class UpdateItemAndChildrenLayersExec
57
61
  const allElements = Array.from(itemContainer.children);
58
62
  const targetIndex = allElements.findIndex((x) => x === item);
59
63
  if (this._isAnythingNeedToBeMoved(allElements, targetIndex, elementsThatShouldBeInFront)) {
60
- this._fMediator.execute(new MoveFrontElementsBeforeTargetElementRequest(itemContainer, allElements, elementsThatShouldBeInFront, targetIndex));
64
+ this._mediator.execute(new MoveFrontElementsBeforeTargetElementRequest(itemContainer, allElements, elementsThatShouldBeInFront, targetIndex));
61
65
  }
62
66
  }
63
67
  _isAnythingNeedToBeMoved(allElements, targetIndex, elementsThatShouldBeInFront) {
@@ -79,7 +83,7 @@ let UpdateItemAndChildrenLayersExecution = class UpdateItemAndChildrenLayersExec
79
83
  .sort((a, b) => allElements.indexOf(a) - allElements.indexOf(b));
80
84
  }
81
85
  _getChildrenNodesAndGroups(fId) {
82
- return this._fMediator.execute(new GetDeepChildrenNodesAndGroupsRequest(fId)).map((x) => x.hostElement);
86
+ return this._mediator.execute(new GetDeepChildrenNodesAndGroupsRequest(fId)).map((x) => x.hostElement);
83
87
  }
84
88
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UpdateItemAndChildrenLayersExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
85
89
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UpdateItemAndChildrenLayersExecution });
@@ -91,4 +95,4 @@ export { UpdateItemAndChildrenLayersExecution };
91
95
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UpdateItemAndChildrenLayersExecution, decorators: [{
92
96
  type: Injectable
93
97
  }] });
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLWl0ZW0tYW5kLWNoaWxkcmVuLWxheWVycy5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi91cGRhdGUtaXRlbS1hbmQtY2hpbGRyZW4tbGF5ZXJzL3VwZGF0ZS1pdGVtLWFuZC1jaGlsZHJlbi1sYXllcnMuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUMvRixPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDN0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFbkQsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0YsT0FBTyxFQUFFLDJDQUEyQyxFQUFFLE1BQU0sNkNBQTZDLENBQUM7O0FBS25HLElBQU0sb0NBQW9DLEdBQTFDLE1BQU0sb0NBQW9DO0lBRTlCLFVBQVUsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0IsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFFOUQsSUFBWSxRQUFRO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQVEsQ0FBQztJQUN6QyxDQUFDO0lBRUQsSUFBWSxpQkFBaUI7UUFDM0IsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixFQUFFLENBQUMsYUFBYSxDQUFDO0lBQ3hELENBQUM7SUFFRCxJQUFZLGdCQUFnQjtRQUMxQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBZSxFQUFFLENBQUMsYUFBYSxDQUFDO0lBQ3ZELENBQUM7SUFFRCxJQUFZLHNC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QVc7UUFDNUMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBYyxJQUFJLG9DQUFvQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdkgsQ0FBQzt3R0EzRlUsb0NBQW9DOzRHQUFwQyxvQ0FBb0M7O0FBQXBDLG9DQUFvQztJQURoRCxrQkFBa0IsQ0FBQyxrQ0FBa0MsQ0FBQztHQUMxQyxvQ0FBb0MsQ0E0RmhEOzs0RkE1Rlksb0NBQW9DO2tCQUZoRCxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVXBkYXRlSXRlbUFuZENoaWxkcmVuTGF5ZXJzUmVxdWVzdCB9IGZyb20gJy4vdXBkYXRlLWl0ZW0tYW5kLWNoaWxkcmVuLWxheWVycy5yZXF1ZXN0JztcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBGTWVkaWF0b3IsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgRk5vZGVCYXNlIH0gZnJvbSAnLi4vLi4vZi1ub2RlJztcbmltcG9ydCB7IEdldERlZXBDaGlsZHJlbk5vZGVzQW5kR3JvdXBzUmVxdWVzdCB9IGZyb20gJy4uL2dldC1kZWVwLWNoaWxkcmVuLW5vZGVzLWFuZC1ncm91cHMnO1xuaW1wb3J0IHsgTW92ZUZyb250RWxlbWVudHNCZWZvcmVUYXJnZXRFbGVtZW50UmVxdWVzdCB9IGZyb20gJy4vbW92ZS1mcm9udC1lbGVtZW50cy1iZWZvcmUtdGFyZ2V0LWVsZW1lbnQnO1xuaW1wb3J0IHsgRkNhbnZhc0Jhc2UgfSBmcm9tICcuLi8uLi9mLWNhbnZhcyc7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoVXBkYXRlSXRlbUFuZENoaWxkcmVuTGF5ZXJzUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBVcGRhdGVJdGVtQW5kQ2hpbGRyZW5MYXllcnNFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPFVwZGF0ZUl0ZW1BbmRDaGlsZHJlbkxheWVyc1JlcXVlc3QsIHZvaWQ+IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9mTWVkaWF0b3IgPSBpbmplY3QoRk1lZGlhdG9yKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZkNvbXBvbmVudHNTdG9yZSA9IGluamVjdChGQ29tcG9uZW50c1N0b3JlKTtcblxuICBwcml2YXRlIGdldCBfZkNhbnZhcygpOiBGQ2FudmFzQmFzZSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyE7XG4gIH1cblxuICBwcml2YXRlIGdldCBfZkdyb3Vwc0NvbnRhaW5lcigpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuX2ZDYW52YXMuZkdyb3Vwc0NvbnRhaW5lcigpLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBwcml2YXRlIGdldCBfZk5vZGVzQ29udGFpbmVyKCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5fZkNhbnZhcy5mTm9kZXNDb250YWluZXIoKS5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgX2ZDb25uZWN0aW9uc0NvbnRhaW5lcigpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuX2ZDYW52YXMuZkNvbm5lY3Rpb25zQ29udGFpbmVyKCkubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogVXBkYXRlSXRlbUFuZENoaWxkcmVuTGF5ZXJzUmVxdWVzdCk6IHZvaWQge1xuXG4gICAgc3dpdGNoIChyZXF1ZXN0Lml0ZW1Db250YWluZXIpIHtcbiAgICAgIGNhc2UgdGhpcy5fZkdyb3Vwc0NvbnRhaW5lcjpcbiAgICAgICAgdGhpcy5faGFuZGxlR3JvdXAocmVxdWVzdCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSB0aGlzLl9mTm9kZXNDb250YWluZXI6XG4gICAgICAgIHRoaXMuX2hhbmRsZU5vZGUocmVxdWVzdCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSB0aGlzLl9mQ29ubmVjdGlvbnNDb250YWluZXI6XG4gICAgICAgIHRoaXMuX2hhbmRsZUNvbm5lY3Rpb24ocmVxdWVzdCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbmtub3duIGNvbnRhaW5lcicpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZUdyb3VwKHJlcXVlc3Q6IFVwZGF0ZUl0ZW1BbmRDaGlsZHJlbkxheWVyc1JlcXVlc3QpOiB2b2lkIHtcbiAgICBjb25zdCBjaGlsZHJlbk5vZGVzQW5kR3JvdXBzID0gdGhpcy5fZ2V0Q2hpbGRyZW5Ob2Rlc0FuZEdyb3VwcyhyZXF1ZXN0Lml0ZW0uZklkKCkpO1xuICAgIGNvbnN0IGNoaWxkcmVuR3JvdXBzID0gdGhpcy5fZ2V0Q2hpbGRyZW5Hcm91cHMoY2hpbGRyZW5Ob2Rlc0FuZEdyb3Vwcyk7XG4gICAgdGhpcy5fdXBkYXRlTGF5ZXJzKHRoaXMuX2ZHcm91cHNDb250YWluZXIsIHJlcXVlc3QuaXRlbS5ob3N0RWxlbWVudCBhcyBIVE1MRWxlbWVudCwgY2hpbGRyZW5Hcm91cHMpO1xuICAgIGNvbnN0IGNoaWxkcmVuTm9kZXMgPSB0aGlzLl9nZXRDaGlsZHJlbk5vZGVzKGNoaWxkcmVuTm9kZXNBbmRHcm91cHMpO1xuICAgIGlmIChjaGlsZHJlbk5vZGVzLmxlbmd0aCkge1xuICAgICAgdGhpcy5fdXBkYXRlTGF5ZXJzKHRoaXMuX2ZOb2Rlc0NvbnRhaW5lciwgY2hpbGRyZW5Ob2Rlc1sgMCBdLCBjaGlsZHJlbk5vZGVzKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVOb2RlKHJlcXVlc3Q6IFVwZGF0ZUl0ZW1BbmRDaGlsZHJlbkxheWVyc1JlcXVlc3QpOiB2b2lkIHtcbiAgICBjb25zdCBjaGlsZHJlbk5vZGVzQW5kR3JvdXBzID0gdGhpcy5fZ2V0Q2hpbGRyZW5Ob2Rlc0FuZEdyb3VwcyhyZXF1ZXN0Lml0ZW0uZklkKCkpO1xuICAgIGNvbnN0IGNoaWxkcmVuTm9kZXMgPSB0aGlzLl9nZXRDaGlsZHJlbk5vZGVzKGNoaWxkcmVuTm9kZXNBbmRHcm91cHMpO1xuICAgIHRoaXMuX3VwZGF0ZUxheWVycyhyZXF1ZXN0Lml0ZW1Db250YWluZXIsIHJlcXVlc3QuaXRlbS5ob3N0RWxlbWVudCBhcyBIVE1MRWxlbWVudCwgY2hpbGRyZW5Ob2Rlcyk7XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVDb25uZWN0aW9uKHJlcXVlc3Q6IFVwZGF0ZUl0ZW1BbmRDaGlsZHJlbkxheWVyc1JlcXVlc3QpOiB2b2lkIHtcbiAgICB0aGlzLl91cGRhdGVMYXllcnMocmVxdWVzdC5pdGVtQ29udGFpbmVyLCByZXF1ZXN0Lml0ZW0uaG9zdEVsZW1lbnQgYXMgSFRNTEVsZW1lbnQsIFtdKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZUxheWVycyhpdGVtQ29udGFpbmVyOiBIVE1MRWxlbWVudCwgaXRlbTogSFRNTEVsZW1lbnQsIGVsZW1lbnRzVGhhdFNob3VsZEJlSW5Gcm9udDogSFRNTEVsZW1lbnRbXSk6IHZvaWQge1xuICAgIGNvbnN0IGFsbEVsZW1lbnRzID0gQXJyYXkuZnJvbShpdGVtQ29udGFpbmVyLmNoaWxkcmVuKSBhcyBIVE1MRWxlbWVudFtdO1xuICAgIGNvbnN0IHRhcmdldEluZGV4ID0gYWxsRWxlbWVudHMuZmluZEluZGV4KCh4KSA9PiB4ID09PSBpdGVtKTtcbiAgICBpZiAodGhpcy5faXNBbnl0aGluZ05lZWRUb0JlTW92ZWQoYWxsRWxlbWVudHMsIHRhcmdldEluZGV4LCBlbGVtZW50c1RoYXRTaG91bGRCZUluRnJvbnQpKSB7XG4gICAgICB0aGlzLl9mTWVkaWF0b3IuZXhlY3V0ZShcbiAgICAgICAgbmV3IE1vdmVGcm9udEVsZW1lbnRzQmVmb3JlVGFyZ2V0RWxlbWVudFJlcXVlc3QoaXRlbUNvbnRhaW5lciwgYWxsRWxlbWVudHMsIGVsZW1lbnRzVGhhdFNob3VsZEJlSW5Gcm9udCwgdGFyZ2V0SW5kZXgpXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2lzQW55dGhpbmdOZWVkVG9CZU1vdmVkKGFsbEVsZW1lbnRzOiBIVE1MRWxlbWVudFtdLCB0YXJnZXRJbmRleDogbnVtYmVyLCBlbGVtZW50c1RoYXRTaG91bGRCZUluRnJvbnQ6IEhUTUxFbGVtZW50W10pOiBib29sZWFuIHtcbiAgICBmb3IgKGxldCBpID0gdGFyZ2V0SW5kZXggKyAxOyBpIDwgYWxsRWxlbWVudHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGlmICghZWxlbWVudHNUaGF0U2hvdWxkQmVJbkZyb250LmluY2x1ZGVzKGFsbEVsZW1lbnRzWyBpIF0pKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIF9nZXRDaGlsZHJlbkdyb3VwcyhlbGVtZW50czogSFRNTEVsZW1lbnRbXSk6IEhUTUxFbGVtZW50W10ge1xuICAgIGNvbnN0IGFsbEVsZW1lbnRzID0gQXJyYXkuZnJvbSh0aGlzLl9mR3JvdXBzQ29udGFpbmVyLmNoaWxkcmVuKSBhcyBIVE1MRWxlbWVudFtdO1xuICAgIHJldHVybiBlbGVtZW50cy5maWx0ZXIoKHgpID0+IHRoaXMuX2ZHcm91cHNDb250YWluZXIuY29udGFpbnMoeCkpXG4gICAgICAuc29ydCgoYSwgYikgPT4gYWxsRWxlbWVudHMuaW5kZXhPZihhKSAtIGFsbEVsZW1lbnRzLmluZGV4T2YoYikpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Q2hpbGRyZW5Ob2RlcyhlbGVtZW50czogSFRNTEVsZW1lbnRbXSk6IEhUTUxFbGVtZW50W10ge1xuICAgIGNvbnN0IGFsbEVsZW1lbnRzID0gQXJyYXkuZnJvbSh0aGlzLl9mTm9kZXNDb250YWluZXIuY2hpbGRyZW4pIGFzIEhUTUxFbGVtZW50W107XG4gICAgcmV0dXJuIGVsZW1lbnRzLmZpbHRlcigoeCkgPT4gdGhpcy5fZk5vZGVzQ29udGFpbmVyLmNvbnRhaW5zKHgpKVxuICAgICAgLnNvcnQoKGEsIGIpID0+IGFsbEVsZW1lbnRzLmluZGV4T2YoYSkgLSBhbGxFbGVtZW50cy5pbmRleE9mKGIpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldENoaWxkcmVuTm9kZXNBbmRHcm91cHMoZklkOiBzdHJpbmcpOiBIVE1MRWxlbWVudFtdIHtcbiAgICByZXR1cm4gdGhpcy5fZk1lZGlhdG9yLmV4ZWN1dGU8Rk5vZGVCYXNlW10+KG5ldyBHZXREZWVwQ2hpbGRyZW5Ob2Rlc0FuZEdyb3Vwc1JlcXVlc3QoZklkKSkubWFwKCh4KSA9PiB4Lmhvc3RFbGVtZW50KTtcbiAgfVxufVxuIl19
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLWl0ZW0tYW5kLWNoaWxkcmVuLWxheWVycy5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi91cGRhdGUtaXRlbS1hbmQtY2hpbGRyZW4tbGF5ZXJzL3VwZGF0ZS1pdGVtLWFuZC1jaGlsZHJlbi1sYXllcnMuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUMvRixPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDN0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFbkQsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0YsT0FBTyxFQUFFLDJDQUEyQyxFQUFFLE1BQU0sNkNBQTZDLENBQUM7O0FBRzFHOzs7R0FHRztBQUdJLElBQU0sb0NBQW9DLEdBQTFDLE1BQU0sb0NBQW9DO0lBRTlCLE1BQU0sR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNsQyxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRS9DLElBQVksUUFBUTtRQUNsQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBUSxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUFZLGlCQUFpQjtRQUMzQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxhQUFhLENBQUM7SUFDeEQsQ0FBQztJQUVELElBQVksZ0JBQWdCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxhQUFhLENBQUM7SUFDdkQsQ0FBQztJQUVE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LENBQUMsR0FBVztRQUM1QyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFjLElBQUksb0NBQW9DLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0SCxDQUFDO3dHQTNGVSxvQ0FBb0M7NEdBQXBDLG9DQUFvQzs7QUFBcEMsb0NBQW9DO0lBRGhELGtCQUFrQixDQUFDLGtDQUFrQyxDQUFDO0dBQzFDLG9DQUFvQyxDQTRGaEQ7OzRGQTVGWSxvQ0FBb0M7a0JBRmhELFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVcGRhdGVJdGVtQW5kQ2hpbGRyZW5MYXllcnNSZXF1ZXN0IH0gZnJvbSAnLi91cGRhdGUtaXRlbS1hbmQtY2hpbGRyZW4tbGF5ZXJzLnJlcXVlc3QnO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGTm9kZUJhc2UgfSBmcm9tICcuLi8uLi9mLW5vZGUnO1xuaW1wb3J0IHsgR2V0RGVlcENoaWxkcmVuTm9kZXNBbmRHcm91cHNSZXF1ZXN0IH0gZnJvbSAnLi4vZ2V0LWRlZXAtY2hpbGRyZW4tbm9kZXMtYW5kLWdyb3Vwcyc7XG5pbXBvcnQgeyBNb3ZlRnJvbnRFbGVtZW50c0JlZm9yZVRhcmdldEVsZW1lbnRSZXF1ZXN0IH0gZnJvbSAnLi9tb3ZlLWZyb250LWVsZW1lbnRzLWJlZm9yZS10YXJnZXQtZWxlbWVudCc7XG5pbXBvcnQgeyBGQ2FudmFzQmFzZSB9IGZyb20gJy4uLy4uL2YtY2FudmFzJztcblxuLyoqXG4gKiBFeGVjdXRpb24gdGhhdCB1cGRhdGVzIHRoZSBsYXllcnMgb2YgYW4gaXRlbSBhbmQgaXRzIGNoaWxkcmVuIGluIHRoZSBGQ2FudmFzLlxuICogSXQgaGFuZGxlcyBkaWZmZXJlbnQgaXRlbSBjb250YWluZXJzIChncm91cHMsIG5vZGVzLCBjb25uZWN0aW9ucykgYW5kIHVwZGF0ZXMgdGhlaXIgbGF5ZXJzIGFjY29yZGluZ2x5LlxuICovXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKFVwZGF0ZUl0ZW1BbmRDaGlsZHJlbkxheWVyc1JlcXVlc3QpXG5leHBvcnQgY2xhc3MgVXBkYXRlSXRlbUFuZENoaWxkcmVuTGF5ZXJzRXhlY3V0aW9uIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxVcGRhdGVJdGVtQW5kQ2hpbGRyZW5MYXllcnNSZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfc3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX21lZGlhdG9yID0gaW5qZWN0KEZNZWRpYXRvcik7XG5cbiAgcHJpdmF0ZSBnZXQgX2ZDYW52YXMoKTogRkNhbnZhc0Jhc2Uge1xuICAgIHJldHVybiB0aGlzLl9zdG9yZS5mQ2FudmFzITtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF9mR3JvdXBzQ29udGFpbmVyKCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5fZkNhbnZhcy5mR3JvdXBzQ29udGFpbmVyKCkubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF9mTm9kZXNDb250YWluZXIoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLl9mQ2FudmFzLmZOb2Rlc0NvbnRhaW5lcigpLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBwcml2YXRlIGdldCBfZkNvbm5lY3Rpb25zQ29udGFpbmVyKCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5fZkNhbnZhcy5mQ29ubmVjdGlvbnNDb250YWluZXIoKS5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBVcGRhdGVJdGVtQW5kQ2hpbGRyZW5MYXllcnNSZXF1ZXN0KTogdm9pZCB7XG5cbiAgICBzd2l0Y2ggKHJlcXVlc3QuaXRlbUNvbnRhaW5lcikge1xuICAgICAgY2FzZSB0aGlzLl9mR3JvdXBzQ29udGFpbmVyOlxuICAgICAgICB0aGlzLl9oYW5kbGVHcm91cChyZXF1ZXN0KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIHRoaXMuX2ZOb2Rlc0NvbnRhaW5lcjpcbiAgICAgICAgdGhpcy5faGFuZGxlTm9kZShyZXF1ZXN0KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIHRoaXMuX2ZDb25uZWN0aW9uc0NvbnRhaW5lcjpcbiAgICAgICAgdGhpcy5faGFuZGxlQ29ubmVjdGlvbihyZXF1ZXN0KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Vua25vd24gY29udGFpbmVyJyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlR3JvdXAocmVxdWVzdDogVXBkYXRlSXRlbUFuZENoaWxkcmVuTGF5ZXJzUmVxdWVzdCk6IHZvaWQge1xuICAgIGNvbnN0IGNoaWxkcmVuTm9kZXNBbmRHcm91cHMgPSB0aGlzLl9nZXRDaGlsZHJlbk5vZGVzQW5kR3JvdXBzKHJlcXVlc3QuaXRlbS5mSWQoKSk7XG4gICAgY29uc3QgY2hpbGRyZW5Hcm91cHMgPSB0aGlzLl9nZXRDaGlsZHJlbkdyb3VwcyhjaGlsZHJlbk5vZGVzQW5kR3JvdXBzKTtcbiAgICB0aGlzLl91cGRhdGVMYXllcnModGhpcy5fZkdyb3Vwc0NvbnRhaW5lciwgcmVxdWVzdC5pdGVtLmhvc3RFbGVtZW50IGFzIEhUTUxFbGVtZW50LCBjaGlsZHJlbkdyb3Vwcyk7XG4gICAgY29uc3QgY2hpbGRyZW5Ob2RlcyA9IHRoaXMuX2dldENoaWxkcmVuTm9kZXMoY2hpbGRyZW5Ob2Rlc0FuZEdyb3Vwcyk7XG4gICAgaWYgKGNoaWxkcmVuTm9kZXMubGVuZ3RoKSB7XG4gICAgICB0aGlzLl91cGRhdGVMYXllcnModGhpcy5fZk5vZGVzQ29udGFpbmVyLCBjaGlsZHJlbk5vZGVzWyAwIF0sIGNoaWxkcmVuTm9kZXMpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZU5vZGUocmVxdWVzdDogVXBkYXRlSXRlbUFuZENoaWxkcmVuTGF5ZXJzUmVxdWVzdCk6IHZvaWQge1xuICAgIGNvbnN0IGNoaWxkcmVuTm9kZXNBbmRHcm91cHMgPSB0aGlzLl9nZXRDaGlsZHJlbk5vZGVzQW5kR3JvdXBzKHJlcXVlc3QuaXRlbS5mSWQoKSk7XG4gICAgY29uc3QgY2hpbGRyZW5Ob2RlcyA9IHRoaXMuX2dldENoaWxkcmVuTm9kZXMoY2hpbGRyZW5Ob2Rlc0FuZEdyb3Vwcyk7XG4gICAgdGhpcy5fdXBkYXRlTGF5ZXJzKHJlcXVlc3QuaXRlbUNvbnRhaW5lciwgcmVxdWVzdC5pdGVtLmhvc3RFbGVtZW50IGFzIEhUTUxFbGVtZW50LCBjaGlsZHJlbk5vZGVzKTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZUNvbm5lY3Rpb24ocmVxdWVzdDogVXBkYXRlSXRlbUFuZENoaWxkcmVuTGF5ZXJzUmVxdWVzdCk6IHZvaWQge1xuICAgIHRoaXMuX3VwZGF0ZUxheWVycyhyZXF1ZXN0Lml0ZW1Db250YWluZXIsIHJlcXVlc3QuaXRlbS5ob3N0RWxlbWVudCBhcyBIVE1MRWxlbWVudCwgW10pO1xuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlTGF5ZXJzKGl0ZW1Db250YWluZXI6IEhUTUxFbGVtZW50LCBpdGVtOiBIVE1MRWxlbWVudCwgZWxlbWVudHNUaGF0U2hvdWxkQmVJbkZyb250OiBIVE1MRWxlbWVudFtdKTogdm9pZCB7XG4gICAgY29uc3QgYWxsRWxlbWVudHMgPSBBcnJheS5mcm9tKGl0ZW1Db250YWluZXIuY2hpbGRyZW4pIGFzIEhUTUxFbGVtZW50W107XG4gICAgY29uc3QgdGFyZ2V0SW5kZXggPSBhbGxFbGVtZW50cy5maW5kSW5kZXgoKHgpID0+IHggPT09IGl0ZW0pO1xuICAgIGlmICh0aGlzLl9pc0FueXRoaW5nTmVlZFRvQmVNb3ZlZChhbGxFbGVtZW50cywgdGFyZ2V0SW5kZXgsIGVsZW1lbnRzVGhhdFNob3VsZEJlSW5Gcm9udCkpIHtcbiAgICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUoXG4gICAgICAgIG5ldyBNb3ZlRnJvbnRFbGVtZW50c0JlZm9yZVRhcmdldEVsZW1lbnRSZXF1ZXN0KGl0ZW1Db250YWluZXIsIGFsbEVsZW1lbnRzLCBlbGVtZW50c1RoYXRTaG91bGRCZUluRnJvbnQsIHRhcmdldEluZGV4KVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9pc0FueXRoaW5nTmVlZFRvQmVNb3ZlZChhbGxFbGVtZW50czogSFRNTEVsZW1lbnRbXSwgdGFyZ2V0SW5kZXg6IG51bWJlciwgZWxlbWVudHNUaGF0U2hvdWxkQmVJbkZyb250OiBIVE1MRWxlbWVudFtdKTogYm9vbGVhbiB7XG4gICAgZm9yIChsZXQgaSA9IHRhcmdldEluZGV4ICsgMTsgaSA8IGFsbEVsZW1lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBpZiAoIWVsZW1lbnRzVGhhdFNob3VsZEJlSW5Gcm9udC5pbmNsdWRlcyhhbGxFbGVtZW50c1sgaSBdKSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Q2hpbGRyZW5Hcm91cHMoZWxlbWVudHM6IEhUTUxFbGVtZW50W10pOiBIVE1MRWxlbWVudFtdIHtcbiAgICBjb25zdCBhbGxFbGVtZW50cyA9IEFycmF5LmZyb20odGhpcy5fZkdyb3Vwc0NvbnRhaW5lci5jaGlsZHJlbikgYXMgSFRNTEVsZW1lbnRbXTtcbiAgICByZXR1cm4gZWxlbWVudHMuZmlsdGVyKCh4KSA9PiB0aGlzLl9mR3JvdXBzQ29udGFpbmVyLmNvbnRhaW5zKHgpKVxuICAgICAgLnNvcnQoKGEsIGIpID0+IGFsbEVsZW1lbnRzLmluZGV4T2YoYSkgLSBhbGxFbGVtZW50cy5pbmRleE9mKGIpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldENoaWxkcmVuTm9kZXMoZWxlbWVudHM6IEhUTUxFbGVtZW50W10pOiBIVE1MRWxlbWVudFtdIHtcbiAgICBjb25zdCBhbGxFbGVtZW50cyA9IEFycmF5LmZyb20odGhpcy5fZk5vZGVzQ29udGFpbmVyLmNoaWxkcmVuKSBhcyBIVE1MRWxlbWVudFtdO1xuICAgIHJldHVybiBlbGVtZW50cy5maWx0ZXIoKHgpID0+IHRoaXMuX2ZOb2Rlc0NvbnRhaW5lci5jb250YWlucyh4KSlcbiAgICAgIC5zb3J0KChhLCBiKSA9PiBhbGxFbGVtZW50cy5pbmRleE9mKGEpIC0gYWxsRWxlbWVudHMuaW5kZXhPZihiKSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRDaGlsZHJlbk5vZGVzQW5kR3JvdXBzKGZJZDogc3RyaW5nKTogSFRNTEVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8Rk5vZGVCYXNlW10+KG5ldyBHZXREZWVwQ2hpbGRyZW5Ob2Rlc0FuZEdyb3Vwc1JlcXVlc3QoZklkKSkubWFwKCh4KSA9PiB4Lmhvc3RFbGVtZW50KTtcbiAgfVxufVxuIl19