@foblex/flow 17.1.1 → 17.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/domain/f-connection/redraw-connections/redraw-connections.execution.d.ts +7 -7
- package/domain/f-connectors/find-input-at-position/find-input-at-position.execution.d.ts +3 -2
- package/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.request.d.ts +3 -3
- package/domain/f-draggable/end-drag-sequence/end-drag-sequence.execution.d.ts +1 -0
- package/domain/f-draggable/providers.d.ts +1 -1
- package/domain/f-draggable/start-drag-sequence/start-drag-sequence.execution.d.ts +2 -1
- package/domain/f-event-trigger.d.ts +4 -0
- package/domain/f-selection/clear-selection/clear-selection.execution.d.ts +1 -3
- package/domain/f-selection/get-can-be-selected-items/get-can-be-selected-items.execution.d.ts +4 -6
- package/domain/f-selection/get-can-be-selected-items/i-can-be-selected-element-and-rect.d.ts +6 -0
- package/domain/f-selection/get-can-be-selected-items/index.d.ts +1 -1
- package/domain/f-selection/get-current-selection/i-current-selection.d.ts +3 -3
- package/domain/f-selection/providers.d.ts +1 -1
- package/domain/index.d.ts +1 -0
- package/domain/providers.d.ts +1 -1
- package/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.execution.d.ts +4 -4
- package/domain/update-item-and-children-layers/update-item-and-children-layers.request.d.ts +3 -3
- package/esm2022/domain/f-canvas/center-group-or-node/center-group-or-node.execution.mjs +2 -2
- package/esm2022/domain/f-canvas/fit-to-flow/fit-to-flow.execution.mjs +3 -3
- package/esm2022/domain/f-canvas/reset-scale-and-center/reset-scale-and-center.execution.mjs +3 -3
- package/esm2022/domain/f-connection/redraw-connections/redraw-connections.execution.mjs +42 -37
- package/esm2022/domain/f-connectors/find-input-at-position/find-input-at-position.execution.mjs +13 -10
- package/esm2022/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.execution.mjs +9 -9
- package/esm2022/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.request.mjs +4 -4
- package/esm2022/domain/f-connectors/get-connector-and-rect/get-connector-and-rect.execution.mjs +2 -2
- package/esm2022/domain/f-draggable/emit-selection-change-event/emit-selection-change-event.execution.mjs +4 -4
- package/esm2022/domain/f-draggable/end-drag-sequence/end-drag-sequence.execution.mjs +5 -1
- package/esm2022/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence.execution.mjs +2 -2
- package/esm2022/domain/f-draggable/start-drag-sequence/start-drag-sequence.execution.mjs +10 -3
- package/esm2022/domain/f-event-trigger.mjs +7 -0
- package/esm2022/domain/f-flow/get-flow-state/get-flow-state.execution.mjs +4 -4
- package/esm2022/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed.execution.mjs +2 -2
- package/esm2022/domain/f-selection/clear-selection/clear-selection.execution.mjs +9 -12
- package/esm2022/domain/f-selection/get-can-be-selected-items/get-can-be-selected-items.execution.mjs +8 -11
- package/esm2022/domain/f-selection/get-can-be-selected-items/i-can-be-selected-element-and-rect.mjs +2 -0
- package/esm2022/domain/f-selection/get-can-be-selected-items/index.mjs +2 -2
- package/esm2022/domain/f-selection/get-current-selection/get-current-selection.execution.mjs +4 -4
- package/esm2022/domain/f-selection/get-current-selection/i-current-selection.mjs +1 -1
- package/esm2022/domain/f-selection/select/select.execution.mjs +4 -4
- package/esm2022/domain/f-selection/select-all/select-all.execution.mjs +4 -4
- package/esm2022/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.execution.mjs +3 -3
- package/esm2022/domain/f-zoom/set-zoom/set-zoom.execution.mjs +1 -1
- package/esm2022/domain/get-normalized-element-rect/get-normalized-element-rect.execution.mjs +2 -2
- package/esm2022/domain/index.mjs +2 -1
- package/esm2022/domain/sort-item-layers/sort-item-layers.execution.mjs +4 -4
- package/esm2022/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.execution.mjs +14 -14
- package/esm2022/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.execution.mjs +2 -2
- package/esm2022/domain/update-item-and-children-layers/update-item-and-children-layers.execution.mjs +3 -3
- package/esm2022/domain/update-item-and-children-layers/update-item-and-children-layers.request.mjs +1 -1
- package/esm2022/f-backgroud/f-background.component.mjs +4 -4
- package/esm2022/f-canvas/f-canvas.component.mjs +13 -13
- package/esm2022/f-connection/common/f-connection-base.mjs +3 -3
- package/esm2022/f-connection/common/f-connection-text/f-connection-text-path.directive.mjs +4 -2
- package/esm2022/f-connection/common/f-connection-text/f-connection-text.component.mjs +2 -1
- package/esm2022/f-connection/f-connection/f-connection.component.mjs +4 -4
- package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +4 -4
- package/esm2022/f-connection/f-marker/f-marker.directive.mjs +3 -3
- package/esm2022/f-connection/f-snap-connection/f-snap-connection.component.mjs +4 -4
- package/esm2022/f-connectors/f-node-input/f-node-input.directive.mjs +3 -3
- package/esm2022/f-connectors/f-node-outlet/f-node-outlet-base.mjs +1 -1
- package/esm2022/f-connectors/f-node-outlet/f-node-outlet.directive.mjs +3 -3
- package/esm2022/f-connectors/f-node-output/f-node-output-base.mjs +1 -1
- package/esm2022/f-connectors/f-node-output/f-node-output.directive.mjs +3 -3
- package/esm2022/f-draggable/domain/f-drag-started-event.mjs +9 -0
- package/esm2022/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.execution.mjs +3 -3
- package/esm2022/f-draggable/domain/index.mjs +2 -1
- package/esm2022/f-draggable/domain/is-connection-under-node/is-connection-under-node.execution.mjs +2 -2
- package/esm2022/f-draggable/f-canvas/f-canvas.drag-handler.mjs +19 -0
- package/esm2022/f-draggable/f-canvas/index.mjs +5 -0
- package/esm2022/f-draggable/f-canvas/move-finalize/f-canvas-move-finalize.execution.mjs +29 -0
- package/esm2022/f-draggable/f-canvas/move-finalize/f-canvas-move-finalize.request.mjs +7 -0
- package/esm2022/f-draggable/f-canvas/move-finalize/index.mjs +3 -0
- package/esm2022/f-draggable/f-canvas/move-preparation/f-canvas-move-preparation.execution.mjs +53 -0
- package/esm2022/f-draggable/f-canvas/move-preparation/f-canvas-move-preparation.request.mjs +7 -0
- package/esm2022/f-draggable/f-canvas/move-preparation/index.mjs +3 -0
- package/esm2022/f-draggable/f-canvas/providers.mjs +7 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-finalize/f-create-connection-finalize.execution.mjs +61 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-finalize/f-create-connection-finalize.request.mjs +7 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-finalize/index.mjs +3 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/drag-handler-preparation/f-create-connection-drag-handler-preparation.execution.mjs +40 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/drag-handler-preparation/f-create-connection-drag-handler-preparation.request.mjs +9 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/drag-handler-preparation/index.mjs +3 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/f-create-connection-preparation.execution.mjs +48 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/f-create-connection-preparation.request.mjs +9 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-outlet-preparation/f-create-connection-from-outlet-preparation.execution.mjs +54 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-outlet-preparation/f-create-connection-from-outlet-preparation.request.mjs +9 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-outlet-preparation/index.mjs +3 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/f-create-connection-from-output-preparation.execution.mjs +49 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/f-create-connection-from-output-preparation.request.mjs +9 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/index.mjs +3 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/index.mjs +6 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/f-create-connection.drag-handler.mjs +95 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/f-create-connection.event.mjs +11 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/get-first-connectable-output/get-first-connectable-output.execution.mjs +47 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/get-first-connectable-output/get-first-connectable-output.request.mjs +7 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/get-first-connectable-output/index.mjs +3 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/i-f-create-connection-drag-result.mjs +2 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/index.mjs +7 -0
- package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-connection.drag-handler.mjs +105 -0
- package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-connection.event.mjs +15 -0
- package/esm2022/f-draggable/f-connection/f-reassign-connection/i-f-reassign-connection-drag-result.mjs +2 -0
- package/esm2022/f-draggable/f-connection/f-reassign-connection/index.mjs +6 -0
- package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-connection-finalize/f-reassign-connection-finalize.execution.mjs +63 -0
- package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-connection-finalize/f-reassign-connection-finalize.request.mjs +7 -0
- package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-connection-finalize/index.mjs +3 -0
- package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-connection-preparation/f-reassign-connection-preparation.execution.mjs +72 -0
- package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-connection-preparation/f-reassign-connection-preparation.request.mjs +9 -0
- package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-connection-preparation/index.mjs +3 -0
- package/esm2022/f-draggable/f-connection/index.mjs +4 -0
- package/esm2022/f-draggable/f-connection/providers.mjs +13 -0
- package/esm2022/f-draggable/f-drag-handler/f-drag-handler-result.mjs +20 -0
- package/esm2022/f-draggable/f-drag-handler/i-f-drag-handler.mjs +2 -0
- package/esm2022/f-draggable/f-drag-handler/index.mjs +3 -0
- package/esm2022/f-draggable/f-draggable-base.mjs +1 -1
- package/esm2022/f-draggable/f-draggable-data-context.mjs +1 -1
- package/esm2022/f-draggable/f-draggable.directive.mjs +68 -32
- package/esm2022/f-draggable/f-injector.mjs +19 -0
- package/esm2022/f-draggable/f-selection-change-event.mjs +8 -8
- package/esm2022/f-draggable/f-single-select/f-single-select.execution.mjs +137 -0
- package/esm2022/f-draggable/f-single-select/f-single-select.request.mjs +9 -0
- package/esm2022/f-draggable/f-single-select/index.mjs +4 -0
- package/esm2022/f-draggable/f-single-select/providers.mjs +5 -0
- package/esm2022/f-draggable/index.mjs +6 -6
- package/esm2022/f-draggable/node/connection-drag-handlers/base-connection.drag-handler.mjs +56 -0
- package/esm2022/f-draggable/node/connection-drag-handlers/index.mjs +5 -0
- package/esm2022/f-draggable/node/connection-drag-handlers/source-connection.drag-handler.mjs +11 -0
- package/esm2022/f-draggable/node/connection-drag-handlers/source-target-connection.drag-handler.mjs +22 -0
- package/esm2022/f-draggable/node/connection-drag-handlers/target-connection.drag-handler.mjs +11 -0
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.mjs +47 -45
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/calculate-common-node-move-limits.execution.mjs +69 -0
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/calculate-common-node-move-limits.request.mjs +7 -0
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/index.mjs +3 -0
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/calculate-node-move-limits.execution.mjs +49 -0
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/calculate-node-move-limits.request.mjs +9 -0
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/index.mjs +3 -0
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.execution.mjs +27 -35
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.request.mjs +4 -4
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.execution.mjs +33 -46
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.request.mjs +4 -4
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/i-node-move-limits-and-position.mjs +2 -0
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/i-node-move-limits.mjs +2 -0
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/index.mjs +5 -4
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/providers.mjs +5 -5
- package/esm2022/f-draggable/node/index.mjs +4 -6
- package/esm2022/f-draggable/node/line-alignment-preparation/line-alignment-preparation.execution.mjs +7 -18
- package/esm2022/f-draggable/node/line-alignment-preparation/line-alignment-preparation.request.mjs +7 -1
- package/esm2022/f-draggable/node/line-alignment.drag-handler.mjs +6 -4
- package/esm2022/f-draggable/node/node-drag-to-parent-finalize/node-drag-to-parent-finalize.execution.mjs +3 -3
- package/esm2022/f-draggable/node/node-drag-to-parent-preparation/index.mjs +1 -3
- package/esm2022/f-draggable/node/node-drag-to-parent-preparation/node-drag-to-parent-preparation.execution.mjs +13 -6
- package/esm2022/f-draggable/node/node-drag-to-parent.drag-handler.mjs +2 -1
- package/esm2022/f-draggable/node/node-move-finalize/node-move-finalize.execution.mjs +13 -9
- package/esm2022/f-draggable/node/node-move-preparation/node-move-preparation.execution.mjs +5 -4
- package/esm2022/f-draggable/node/node.drag-handler.mjs +13 -29
- package/esm2022/f-draggable/node/point-bounds-limiter.mjs +41 -0
- package/esm2022/f-draggable/node/providers.mjs +3 -3
- package/esm2022/f-draggable/node/summary-node.drag-handler.mjs +41 -0
- package/esm2022/f-draggable/node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.execution.mjs +26 -22
- package/esm2022/f-draggable/node-resize/calculate-changed-size/calculate-changed-size.execution.mjs +1 -1
- package/esm2022/f-draggable/node-resize/get-node-resize-restrictions/get-node-resize-restrictions.execution.mjs +18 -18
- package/esm2022/f-draggable/node-resize/get-node-resize-restrictions/i-node-resize-restrictions.mjs +1 -1
- package/esm2022/f-draggable/node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.execution.mjs +3 -3
- package/esm2022/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.execution.mjs +8 -11
- package/esm2022/f-draggable/node-resize/node-resize-preparation/index.mjs +1 -3
- package/esm2022/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.execution.mjs +46 -34
- package/esm2022/f-draggable/node-resize/node-resize.drag-handler.mjs +52 -34
- package/esm2022/f-draggable/node-resize/providers.mjs +3 -3
- package/esm2022/f-draggable/node-resize/resize-direction.mjs +5 -1
- package/esm2022/f-draggable/providers.mjs +4 -4
- package/esm2022/f-external-item/domain/create-placeholder/f-external-item-create-placeholder.execution.mjs +41 -0
- package/esm2022/f-external-item/domain/create-placeholder/f-external-item-create-placeholder.request.mjs +7 -0
- package/esm2022/f-external-item/domain/create-placeholder/index.mjs +3 -0
- package/esm2022/f-external-item/domain/create-preview/f-external-item-create-preview.execution.mjs +52 -0
- package/esm2022/f-external-item/domain/create-preview/f-external-item-create-preview.request.mjs +7 -0
- package/esm2022/f-external-item/domain/create-preview/index.mjs +3 -0
- package/esm2022/f-external-item/domain/f-external-item.drag-handler.mjs +71 -0
- package/esm2022/f-external-item/domain/finalize/f-external-item-finalize.execution.mjs +62 -0
- package/esm2022/f-external-item/domain/finalize/f-external-item-finalize.request.mjs +7 -0
- package/esm2022/f-external-item/domain/finalize/index.mjs +3 -0
- package/esm2022/f-external-item/domain/i-f-external-item-drag-result.mjs +2 -0
- package/esm2022/f-external-item/domain/index.mjs +7 -4
- package/esm2022/f-external-item/domain/preparation/f-external-item-preparation.execution.mjs +47 -0
- package/esm2022/f-external-item/domain/preparation/f-external-item-preparation.request.mjs +7 -0
- package/esm2022/f-external-item/domain/preparation/index.mjs +3 -0
- package/esm2022/f-external-item/domain/providers.mjs +9 -5
- package/esm2022/f-external-item/f-external-item-base.mjs +2 -3
- package/esm2022/f-external-item/f-external-item-placeholder.directive.mjs +26 -0
- package/esm2022/f-external-item/f-external-item-preview.directive.mjs +26 -0
- package/esm2022/f-external-item/f-external-item-token.mjs +3 -0
- package/esm2022/f-external-item/f-external-item.directive.mjs +25 -17
- package/esm2022/f-external-item/f-external-item.service.mjs +6 -6
- package/esm2022/f-external-item/index.mjs +6 -4
- package/esm2022/f-flow/f-flow.component.mjs +15 -15
- package/esm2022/f-flow.module.mjs +13 -17
- package/esm2022/f-minimap/domain/f-minimap.drag-handler.mjs +3 -2
- package/esm2022/f-minimap/domain/minimap-calculate-svg-scale-and-view-box/minimap-calculate-svg-scale-and-view-box.execution.mjs +2 -2
- package/esm2022/f-minimap/domain/minimap-drag-finalize/index.mjs +1 -2
- package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.mjs +8 -1
- package/esm2022/f-minimap/domain/minimap-drag-finalize/providers.mjs +1 -3
- package/esm2022/f-minimap/domain/minimap-drag-preparation/index.mjs +1 -2
- package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.mjs +10 -2
- package/esm2022/f-minimap/domain/minimap-drag-preparation/providers.mjs +1 -3
- package/esm2022/f-minimap/f-minimap-canvas.directive.mjs +2 -2
- package/esm2022/f-minimap/f-minimap-flow.directive.mjs +2 -2
- package/esm2022/f-minimap/f-minimap-view.directive.mjs +2 -2
- package/esm2022/f-minimap/f-minimap.component.mjs +4 -4
- package/esm2022/f-node/f-group.directive.mjs +16 -10
- package/esm2022/f-node/f-node-base.mjs +1 -1
- package/esm2022/f-node/f-node.directive.mjs +16 -10
- package/esm2022/f-node/f-resize-handle/e-f-resize-handle-type.mjs +6 -2
- package/esm2022/f-node/f-resize-handle/f-resize-handle.directive.mjs +3 -3
- package/esm2022/f-selection-area/domain/providers.mjs +5 -5
- package/esm2022/f-selection-area/domain/selection-area-finalize/index.mjs +1 -3
- package/esm2022/f-selection-area/domain/selection-area-finalize/selection-area-finalize.execution.mjs +14 -10
- package/esm2022/f-selection-area/domain/selection-area-preparation/index.mjs +1 -3
- package/esm2022/f-selection-area/domain/selection-area-preparation/selection-area-preparation.execution.mjs +25 -23
- package/esm2022/f-selection-area/domain/selection-area-preparation/selection-area-preparation.request.mjs +4 -2
- package/esm2022/f-selection-area/domain/selection-area.drag-handle.mjs +33 -29
- package/esm2022/f-selection-area/f-selection-area.component.mjs +11 -6
- package/esm2022/f-zoom/f-zoom.directive.mjs +7 -1
- package/esm2022/mixins/change-selection/change-selection.mjs +7 -7
- package/esm2022/mixins/change-selection/i-selectable.mjs +2 -0
- package/esm2022/mixins/change-selection/index.mjs +2 -2
- package/f-connection/common/f-connection-base.d.ts +5 -5
- package/f-connection/common/f-connection-text/f-connection-text-path.directive.d.ts +1 -0
- package/f-connectors/f-node-outlet/f-node-outlet-base.d.ts +1 -0
- package/f-connectors/f-node-output/f-node-output-base.d.ts +1 -0
- package/f-draggable/domain/f-drag-started-event.d.ts +5 -0
- package/f-draggable/domain/index.d.ts +1 -0
- package/f-draggable/f-canvas/f-canvas.drag-handler.d.ts +10 -0
- package/f-draggable/f-canvas/index.d.ts +4 -0
- package/f-draggable/f-canvas/move-finalize/f-canvas-move-finalize.execution.d.ts +10 -0
- package/f-draggable/{single-select/single-select.request.d.ts → f-canvas/move-finalize/f-canvas-move-finalize.request.d.ts} +1 -1
- package/f-draggable/f-canvas/move-finalize/index.d.ts +2 -0
- package/f-draggable/f-canvas/move-preparation/f-canvas-move-preparation.execution.d.ts +15 -0
- package/f-draggable/{canvas/canvas-move-preparation/canvas-move-preparation.request.d.ts → f-canvas/move-preparation/f-canvas-move-preparation.request.d.ts} +1 -1
- package/f-draggable/f-canvas/move-preparation/index.d.ts +2 -0
- package/f-draggable/f-canvas/providers.d.ts +3 -0
- package/f-draggable/f-connection/f-create-connection/create-finalize/f-create-connection-finalize.execution.d.ts +19 -0
- package/f-draggable/f-connection/f-create-connection/create-finalize/f-create-connection-finalize.request.d.ts +5 -0
- package/f-draggable/f-connection/f-create-connection/create-finalize/index.d.ts +2 -0
- package/f-draggable/f-connection/f-create-connection/create-preparation/drag-handler-preparation/f-create-connection-drag-handler-preparation.execution.d.ts +12 -0
- package/f-draggable/f-connection/f-create-connection/create-preparation/drag-handler-preparation/f-create-connection-drag-handler-preparation.request.d.ts +7 -0
- package/f-draggable/f-connection/f-create-connection/create-preparation/drag-handler-preparation/index.d.ts +2 -0
- package/f-draggable/f-connection/f-create-connection/create-preparation/f-create-connection-preparation.execution.d.ts +15 -0
- package/f-draggable/f-connection/f-create-connection/create-preparation/f-create-connection-preparation.request.d.ts +7 -0
- package/f-draggable/f-connection/f-create-connection/create-preparation/from-outlet-preparation/f-create-connection-from-outlet-preparation.execution.d.ts +14 -0
- package/f-draggable/f-connection/f-create-connection/create-preparation/from-outlet-preparation/f-create-connection-from-outlet-preparation.request.d.ts +7 -0
- package/f-draggable/f-connection/f-create-connection/create-preparation/from-outlet-preparation/index.d.ts +2 -0
- package/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/f-create-connection-from-output-preparation.execution.d.ts +14 -0
- package/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/f-create-connection-from-output-preparation.request.d.ts +7 -0
- package/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/index.d.ts +2 -0
- package/f-draggable/f-connection/f-create-connection/create-preparation/index.d.ts +5 -0
- package/f-draggable/f-connection/f-create-connection/f-create-connection.drag-handler.d.ts +27 -0
- package/f-draggable/f-connection/f-create-connection/get-first-connectable-output/get-first-connectable-output.execution.d.ts +16 -0
- package/f-draggable/f-connection/f-create-connection/get-first-connectable-output/get-first-connectable-output.request.d.ts +5 -0
- package/f-draggable/f-connection/f-create-connection/get-first-connectable-output/index.d.ts +2 -0
- package/f-draggable/{connections/i-create-reassign-connection-drag-data.d.ts → f-connection/f-create-connection/i-f-create-connection-drag-result.d.ts} +2 -2
- package/f-draggable/f-connection/f-create-connection/index.d.ts +6 -0
- package/f-draggable/{connections/reassign-connection/reassign-connection.drag-handler.d.ts → f-connection/f-reassign-connection/f-reassign-connection.drag-handler.d.ts} +7 -9
- package/f-draggable/f-connection/f-reassign-connection/i-f-reassign-connection-drag-result.d.ts +8 -0
- package/f-draggable/{connections/reassign-connection → f-connection/f-reassign-connection}/index.d.ts +2 -1
- package/f-draggable/f-connection/f-reassign-connection/reassign-connection-finalize/f-reassign-connection-finalize.execution.d.ts +20 -0
- package/f-draggable/{connections/create-connection/create-connection-preparation/create-connection-preparation.request.d.ts → f-connection/f-reassign-connection/reassign-connection-finalize/f-reassign-connection-finalize.request.d.ts} +1 -1
- package/f-draggable/f-connection/f-reassign-connection/reassign-connection-finalize/index.d.ts +2 -0
- package/f-draggable/{connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.execution.d.ts → f-connection/f-reassign-connection/reassign-connection-preparation/f-reassign-connection-preparation.execution.d.ts} +5 -5
- package/f-draggable/f-connection/f-reassign-connection/reassign-connection-preparation/f-reassign-connection-preparation.request.d.ts +7 -0
- package/f-draggable/f-connection/f-reassign-connection/reassign-connection-preparation/index.d.ts +2 -0
- package/f-draggable/f-connection/index.d.ts +3 -0
- package/f-draggable/f-connection/providers.d.ts +3 -0
- package/f-draggable/f-drag-handler/f-drag-handler-result.d.ts +9 -0
- package/f-draggable/{i-draggable-item.d.ts → f-drag-handler/i-f-drag-handler.d.ts} +3 -2
- package/f-draggable/f-drag-handler/index.d.ts +2 -0
- package/f-draggable/f-draggable-base.d.ts +6 -3
- package/f-draggable/f-draggable-data-context.d.ts +4 -4
- package/f-draggable/f-draggable.directive.d.ts +19 -5
- package/f-draggable/f-injector.d.ts +8 -0
- package/f-draggable/f-selection-change-event.d.ts +4 -4
- package/f-draggable/f-single-select/f-single-select.execution.d.ts +62 -0
- package/f-draggable/f-single-select/f-single-select.request.d.ts +7 -0
- package/f-draggable/f-single-select/index.d.ts +3 -0
- package/f-draggable/f-single-select/providers.d.ts +2 -0
- package/f-draggable/index.d.ts +5 -5
- package/f-draggable/node/connection-drag-handlers/base-connection.drag-handler.d.ts +21 -0
- package/f-draggable/node/connection-drag-handlers/index.d.ts +4 -0
- package/f-draggable/node/connection-drag-handlers/source-connection.drag-handler.d.ts +7 -0
- package/f-draggable/node/connection-drag-handlers/source-target-connection.drag-handler.d.ts +10 -0
- package/f-draggable/node/connection-drag-handlers/target-connection.drag-handler.d.ts +7 -0
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.d.ts +14 -13
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/calculate-common-node-move-limits.execution.d.ts +19 -0
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/calculate-common-node-move-limits.request.d.ts +5 -0
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-limits/index.d.ts +2 -0
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/calculate-node-move-limits.execution.d.ts +15 -0
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/{calculate-node-move-restrictions/calculate-node-move-restrictions.request.d.ts → calculate-node-move-limits/calculate-node-move-limits.request.d.ts} +1 -1
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-limits/index.d.ts +2 -0
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.execution.d.ts +5 -10
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.request.d.ts +4 -4
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.execution.d.ts +8 -13
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.request.d.ts +4 -4
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/i-node-move-limits-and-position.d.ts +5 -0
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/i-node-move-limits.d.ts +3 -0
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/index.d.ts +4 -3
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/providers.d.ts +3 -3
- package/f-draggable/node/index.d.ts +3 -5
- package/f-draggable/node/line-alignment-preparation/line-alignment-preparation.execution.d.ts +0 -2
- package/f-draggable/node/line-alignment-preparation/line-alignment-preparation.request.d.ts +5 -0
- package/f-draggable/node/line-alignment.drag-handler.d.ts +5 -5
- package/f-draggable/node/node-drag-to-parent-preparation/index.d.ts +0 -2
- package/f-draggable/node/node-drag-to-parent-preparation/node-drag-to-parent-preparation.execution.d.ts +1 -0
- package/f-draggable/node/node-drag-to-parent.drag-handler.d.ts +3 -2
- package/f-draggable/node/node-move-finalize/node-move-finalize.execution.d.ts +2 -0
- package/f-draggable/node/node.drag-handler.d.ts +9 -11
- package/f-draggable/node/point-bounds-limiter.d.ts +15 -0
- package/f-draggable/node/providers.d.ts +2 -1
- package/f-draggable/node/summary-node.drag-handler.d.ts +16 -0
- package/f-draggable/node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.execution.d.ts +5 -5
- package/f-draggable/node-resize/get-node-resize-restrictions/get-node-resize-restrictions.execution.d.ts +5 -4
- package/f-draggable/node-resize/get-node-resize-restrictions/i-node-resize-restrictions.d.ts +3 -3
- package/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.execution.d.ts +1 -3
- package/f-draggable/node-resize/node-resize-preparation/index.d.ts +0 -2
- package/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.execution.d.ts +13 -11
- package/f-draggable/node-resize/node-resize.drag-handler.d.ts +20 -14
- package/f-draggable/node-resize/providers.d.ts +2 -1
- package/f-draggable/node-resize/resize-direction.d.ts +16 -0
- package/f-draggable/providers.d.ts +1 -1
- package/f-external-item/domain/create-placeholder/f-external-item-create-placeholder.execution.d.ts +13 -0
- package/f-external-item/domain/create-placeholder/f-external-item-create-placeholder.request.d.ts +5 -0
- package/f-external-item/domain/create-placeholder/index.d.ts +2 -0
- package/f-external-item/domain/create-preview/f-external-item-create-preview.execution.d.ts +14 -0
- package/f-external-item/domain/create-preview/f-external-item-create-preview.request.d.ts +5 -0
- package/f-external-item/domain/create-preview/index.d.ts +2 -0
- package/f-external-item/domain/f-external-item.drag-handler.d.ts +24 -0
- package/f-external-item/domain/finalize/f-external-item-finalize.execution.d.ts +21 -0
- package/{f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.request.d.ts → f-external-item/domain/finalize/f-external-item-finalize.request.d.ts} +1 -1
- package/f-external-item/domain/finalize/index.d.ts +2 -0
- package/f-external-item/domain/i-f-external-item-drag-result.d.ts +5 -0
- package/f-external-item/domain/index.d.ts +6 -3
- package/f-external-item/domain/preparation/f-external-item-preparation.execution.d.ts +15 -0
- package/{f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.request.d.ts → f-external-item/domain/preparation/f-external-item-preparation.request.d.ts} +1 -1
- package/f-external-item/domain/preparation/index.d.ts +2 -0
- package/f-external-item/domain/providers.d.ts +5 -1
- package/f-external-item/f-external-item-base.d.ts +4 -2
- package/f-external-item/f-external-item-placeholder.directive.d.ts +10 -0
- package/f-external-item/f-external-item-preview.directive.d.ts +10 -0
- package/f-external-item/f-external-item-token.d.ts +3 -0
- package/f-external-item/f-external-item.directive.d.ts +9 -6
- package/f-external-item/f-external-item.service.d.ts +1 -1
- package/f-external-item/index.d.ts +5 -3
- package/f-flow.module.d.ts +14 -15
- package/f-minimap/domain/f-minimap.drag-handler.d.ts +3 -2
- package/f-minimap/domain/minimap-drag-finalize/index.d.ts +0 -1
- package/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.d.ts +1 -0
- package/f-minimap/domain/minimap-drag-finalize/providers.d.ts +1 -2
- package/f-minimap/domain/minimap-drag-preparation/index.d.ts +0 -1
- package/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.d.ts +1 -0
- package/f-minimap/domain/minimap-drag-preparation/providers.d.ts +1 -2
- package/f-minimap/domain/providers.d.ts +1 -1
- package/f-node/f-node-base.d.ts +3 -3
- package/f-node/f-resize-handle/e-f-resize-handle-type.d.ts +6 -2
- package/f-selection-area/domain/providers.d.ts +3 -1
- package/f-selection-area/domain/selection-area-finalize/index.d.ts +0 -2
- package/f-selection-area/domain/selection-area-finalize/selection-area-finalize.execution.d.ts +2 -3
- package/f-selection-area/domain/selection-area-preparation/index.d.ts +0 -2
- package/f-selection-area/domain/selection-area-preparation/selection-area-preparation.execution.d.ts +6 -8
- package/f-selection-area/domain/selection-area-preparation/selection-area-preparation.request.d.ts +3 -1
- package/f-selection-area/domain/selection-area.drag-handle.d.ts +10 -8
- package/f-selection-area/f-selection-area.component.d.ts +3 -1
- package/f-storage/providers.d.ts +1 -1
- package/f-zoom/f-zoom.directive.d.ts +3 -0
- package/fesm2022/foblex-flow.mjs +2492 -2273
- package/fesm2022/foblex-flow.mjs.map +1 -1
- package/mixins/change-selection/change-selection.d.ts +2 -2
- package/mixins/change-selection/i-selectable.d.ts +10 -0
- package/mixins/change-selection/index.d.ts +1 -1
- package/package.json +3 -3
- package/domain/f-selection/get-can-be-selected-items/i-can-be-selected.d.ts +0 -6
- package/esm2022/domain/f-selection/get-can-be-selected-items/i-can-be-selected.mjs +0 -2
- package/esm2022/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.execution.mjs +0 -29
- package/esm2022/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.request.mjs +0 -7
- package/esm2022/f-draggable/canvas/canvas-move-finalize/index.mjs +0 -3
- package/esm2022/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.execution.mjs +0 -55
- package/esm2022/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.request.mjs +0 -7
- package/esm2022/f-draggable/canvas/canvas-move-preparation/index.mjs +0 -3
- package/esm2022/f-draggable/canvas/canvas.drag-handler.mjs +0 -19
- package/esm2022/f-draggable/canvas/index.mjs +0 -5
- package/esm2022/f-draggable/canvas/providers.mjs +0 -7
- package/esm2022/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.execution.mjs +0 -68
- package/esm2022/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.request.mjs +0 -7
- package/esm2022/f-draggable/connections/create-connection/create-connection-finalize/index.mjs +0 -3
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.execution.mjs +0 -47
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.request.mjs +0 -9
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/index.mjs +0 -3
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.execution.mjs +0 -56
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.request.mjs +0 -7
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/index.mjs +0 -3
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.execution.mjs +0 -41
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.request.mjs +0 -7
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.validator.mjs +0 -36
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/index.mjs +0 -4
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.execution.mjs +0 -52
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.request.mjs +0 -7
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/index.mjs +0 -6
- package/esm2022/f-draggable/connections/create-connection/create-connection.drag-handler.mjs +0 -89
- package/esm2022/f-draggable/connections/create-connection/f-create-connection.event.mjs +0 -11
- package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.execution.mjs +0 -44
- package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.request.mjs +0 -7
- package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.validator.mjs +0 -28
- package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/index.mjs +0 -4
- package/esm2022/f-draggable/connections/create-connection/index.mjs +0 -6
- package/esm2022/f-draggable/connections/i-create-reassign-connection-drag-data.mjs +0 -2
- package/esm2022/f-draggable/connections/index.mjs +0 -5
- package/esm2022/f-draggable/connections/providers.mjs +0 -15
- package/esm2022/f-draggable/connections/reassign-connection/f-reassign-connection.event.mjs +0 -15
- package/esm2022/f-draggable/connections/reassign-connection/index.mjs +0 -5
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/index.mjs +0 -3
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.execution.mjs +0 -64
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.request.mjs +0 -7
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/index.mjs +0 -3
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.execution.mjs +0 -72
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.request.mjs +0 -7
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.mjs +0 -102
- package/esm2022/f-draggable/i-draggable-item.mjs +0 -2
- package/esm2022/f-draggable/node/connection-base-drag-handler.mjs +0 -55
- package/esm2022/f-draggable/node/connection-source.drag-handler.mjs +0 -17
- package/esm2022/f-draggable/node/connection-target.drag-handler.mjs +0 -17
- package/esm2022/f-draggable/node/connection.drag-handler.mjs +0 -23
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/calculate-common-node-move-restrictions.execution.mjs +0 -40
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/calculate-common-node-move-restrictions.request.mjs +0 -7
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/index.mjs +0 -3
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-restrictions/calculate-node-move-restrictions.execution.mjs +0 -42
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-restrictions/calculate-node-move-restrictions.request.mjs +0 -9
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-restrictions/index.mjs +0 -3
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/i-node-with-distance-restrictions.mjs +0 -2
- package/esm2022/f-draggable/node/node-drag-to-parent-preparation/node-drag-to-parent-preparation.validator.mjs +0 -26
- package/esm2022/f-draggable/node/node-drag-to-parent-preparation/providers.mjs +0 -7
- package/esm2022/f-draggable/node/node-resize-by-child.drag-handler.mjs +0 -16
- package/esm2022/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.validator.mjs +0 -44
- package/esm2022/f-draggable/node-resize/node-resize-preparation/providers.mjs +0 -7
- package/esm2022/f-draggable/single-select/index.mjs +0 -4
- package/esm2022/f-draggable/single-select/providers.mjs +0 -5
- package/esm2022/f-draggable/single-select/single-select.execution.mjs +0 -106
- package/esm2022/f-draggable/single-select/single-select.request.mjs +0 -7
- package/esm2022/f-external-item/domain/external-item-finalize/external-item-finalize.execution.mjs +0 -68
- package/esm2022/f-external-item/domain/external-item-finalize/external-item-finalize.request.mjs +0 -7
- package/esm2022/f-external-item/domain/external-item-finalize/index.mjs +0 -4
- package/esm2022/f-external-item/domain/external-item-finalize/providers.mjs +0 -5
- package/esm2022/f-external-item/domain/external-item-preparation/external-item-preparation.execution.mjs +0 -47
- package/esm2022/f-external-item/domain/external-item-preparation/external-item-preparation.request.mjs +0 -7
- package/esm2022/f-external-item/domain/external-item-preparation/external-item-preparation.validator.mjs +0 -30
- package/esm2022/f-external-item/domain/external-item-preparation/index.mjs +0 -5
- package/esm2022/f-external-item/domain/external-item-preparation/providers.mjs +0 -7
- package/esm2022/f-external-item/domain/external-item.drag-handler.mjs +0 -39
- package/esm2022/f-external-item/providers.mjs +0 -5
- package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.validator.mjs +0 -26
- package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.validator.mjs +0 -30
- package/esm2022/f-selection-area/domain/selection-area-finalize/providers.mjs +0 -7
- package/esm2022/f-selection-area/domain/selection-area-finalize/selection-area-finalize.validator.mjs +0 -26
- package/esm2022/f-selection-area/domain/selection-area-preparation/providers.mjs +0 -7
- package/esm2022/f-selection-area/domain/selection-area-preparation/selection-area-preparation.validator.mjs +0 -32
- package/esm2022/mixins/change-selection/i-can-change-selection.mjs +0 -2
- package/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.execution.d.ts +0 -10
- package/f-draggable/canvas/canvas-move-finalize/index.d.ts +0 -2
- package/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.execution.d.ts +0 -15
- package/f-draggable/canvas/canvas-move-preparation/index.d.ts +0 -2
- package/f-draggable/canvas/canvas.drag-handler.d.ts +0 -11
- package/f-draggable/canvas/index.d.ts +0 -4
- package/f-draggable/canvas/providers.d.ts +0 -3
- package/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.execution.d.ts +0 -23
- package/f-draggable/connections/create-connection/create-connection-finalize/index.d.ts +0 -2
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.execution.d.ts +0 -17
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.request.d.ts +0 -7
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/index.d.ts +0 -2
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.execution.d.ts +0 -14
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.request.d.ts +0 -5
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/index.d.ts +0 -2
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.execution.d.ts +0 -14
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.request.d.ts +0 -5
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.validator.d.ts +0 -14
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/index.d.ts +0 -3
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.execution.d.ts +0 -16
- package/f-draggable/connections/create-connection/create-connection-preparation/index.d.ts +0 -5
- package/f-draggable/connections/create-connection/create-connection.drag-handler.d.ts +0 -28
- package/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.execution.d.ts +0 -16
- package/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.request.d.ts +0 -5
- package/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.validator.d.ts +0 -12
- package/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/index.d.ts +0 -3
- package/f-draggable/connections/create-connection/index.d.ts +0 -5
- package/f-draggable/connections/index.d.ts +0 -4
- package/f-draggable/connections/providers.d.ts +0 -3
- package/f-draggable/connections/reassign-connection/reassign-connection-finalize/index.d.ts +0 -2
- package/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.execution.d.ts +0 -20
- package/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.request.d.ts +0 -5
- package/f-draggable/connections/reassign-connection/reassign-connection-preparation/index.d.ts +0 -2
- package/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.request.d.ts +0 -5
- package/f-draggable/node/connection-base-drag-handler.d.ts +0 -24
- package/f-draggable/node/connection-source.drag-handler.d.ts +0 -11
- package/f-draggable/node/connection-target.drag-handler.d.ts +0 -11
- package/f-draggable/node/connection.drag-handler.d.ts +0 -14
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/calculate-common-node-move-restrictions.execution.d.ts +0 -13
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/calculate-common-node-move-restrictions.request.d.ts +0 -5
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/index.d.ts +0 -2
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-restrictions/calculate-node-move-restrictions.execution.d.ts +0 -12
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-restrictions/index.d.ts +0 -2
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/i-node-with-distance-restrictions.d.ts +0 -6
- package/f-draggable/node/node-drag-to-parent-preparation/node-drag-to-parent-preparation.validator.d.ts +0 -11
- package/f-draggable/node/node-drag-to-parent-preparation/providers.d.ts +0 -3
- package/f-draggable/node/node-resize-by-child.drag-handler.d.ts +0 -11
- package/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.validator.d.ts +0 -17
- package/f-draggable/node-resize/node-resize-preparation/providers.d.ts +0 -3
- package/f-draggable/single-select/index.d.ts +0 -3
- package/f-draggable/single-select/providers.d.ts +0 -2
- package/f-draggable/single-select/single-select.execution.d.ts +0 -28
- package/f-external-item/domain/external-item-finalize/external-item-finalize.execution.d.ts +0 -24
- package/f-external-item/domain/external-item-finalize/external-item-finalize.request.d.ts +0 -5
- package/f-external-item/domain/external-item-finalize/index.d.ts +0 -3
- package/f-external-item/domain/external-item-finalize/providers.d.ts +0 -2
- package/f-external-item/domain/external-item-preparation/external-item-preparation.execution.d.ts +0 -19
- package/f-external-item/domain/external-item-preparation/external-item-preparation.request.d.ts +0 -5
- package/f-external-item/domain/external-item-preparation/external-item-preparation.validator.d.ts +0 -12
- package/f-external-item/domain/external-item-preparation/index.d.ts +0 -4
- package/f-external-item/domain/external-item-preparation/providers.d.ts +0 -3
- package/f-external-item/domain/external-item.drag-handler.d.ts +0 -17
- package/f-external-item/providers.d.ts +0 -2
- package/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.validator.d.ts +0 -11
- package/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.validator.d.ts +0 -13
- package/f-selection-area/domain/selection-area-finalize/providers.d.ts +0 -3
- package/f-selection-area/domain/selection-area-finalize/selection-area-finalize.validator.d.ts +0 -11
- package/f-selection-area/domain/selection-area-preparation/providers.d.ts +0 -3
- package/f-selection-area/domain/selection-area-preparation/selection-area-preparation.validator.d.ts +0 -13
- package/mixins/change-selection/i-can-change-selection.d.ts +0 -10
- /package/f-draggable/{connections/create-connection → f-connection/f-create-connection}/f-create-connection.event.d.ts +0 -0
- /package/f-draggable/{connections/reassign-connection → f-connection/f-reassign-connection}/f-reassign-connection.event.d.ts +0 -0
package/esm2022/f-draggable/node/connection-drag-handlers/source-target-connection.drag-handler.mjs
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { BaseConnectionDragHandler } from './base-connection.drag-handler';
|
|
2
|
+
export class SourceTargetConnectionDragHandler extends BaseConnectionDragHandler {
|
|
3
|
+
_callTracker = new Map();
|
|
4
|
+
constructor(fConnection) {
|
|
5
|
+
super(fConnection);
|
|
6
|
+
}
|
|
7
|
+
setSourceDifference(difference) {
|
|
8
|
+
super.setSourceDifference(difference);
|
|
9
|
+
this._checkAndTriggerAction();
|
|
10
|
+
}
|
|
11
|
+
setTargetDifference(difference) {
|
|
12
|
+
super.setTargetDifference(difference);
|
|
13
|
+
this._checkAndTriggerAction();
|
|
14
|
+
}
|
|
15
|
+
_checkAndTriggerAction() {
|
|
16
|
+
if ([...this._callTracker.values()].every(Boolean)) {
|
|
17
|
+
this._callTracker.clear();
|
|
18
|
+
this.redraw();
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291cmNlLXRhcmdldC1jb25uZWN0aW9uLmRyYWctaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvbm9kZS9jb25uZWN0aW9uLWRyYWctaGFuZGxlcnMvc291cmNlLXRhcmdldC1jb25uZWN0aW9uLmRyYWctaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUkzRSxNQUFNLE9BQU8saUNBQWtDLFNBQVEseUJBQXlCO0lBRXRFLFlBQVksR0FBRyxJQUFJLEdBQUcsRUFBbUIsQ0FBQztJQUVsRCxZQUFZLFdBQTRCO1FBQ3RDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRWUsbUJBQW1CLENBQUMsVUFBa0I7UUFDcEQsS0FBSyxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFZSxtQkFBbUIsQ0FBQyxVQUFrQjtRQUNwRCxLQUFLLENBQUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVPLHNCQUFzQjtRQUM1QixJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDbkQsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDaEIsQ0FBQztJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VDb25uZWN0aW9uRHJhZ0hhbmRsZXIgfSBmcm9tICcuL2Jhc2UtY29ubmVjdGlvbi5kcmFnLWhhbmRsZXInO1xuaW1wb3J0IHsgRkNvbm5lY3Rpb25CYXNlIH0gZnJvbSAnLi4vLi4vLi4vZi1jb25uZWN0aW9uJztcbmltcG9ydCB7IElQb2ludCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuXG5leHBvcnQgY2xhc3MgU291cmNlVGFyZ2V0Q29ubmVjdGlvbkRyYWdIYW5kbGVyIGV4dGVuZHMgQmFzZUNvbm5lY3Rpb25EcmFnSGFuZGxlciB7XG5cbiAgcHJpdmF0ZSBfY2FsbFRyYWNrZXIgPSBuZXcgTWFwPHN0cmluZywgYm9vbGVhbj4oKTtcblxuICBjb25zdHJ1Y3RvcihmQ29ubmVjdGlvbjogRkNvbm5lY3Rpb25CYXNlKSB7XG4gICAgc3VwZXIoZkNvbm5lY3Rpb24pO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIHNldFNvdXJjZURpZmZlcmVuY2UoZGlmZmVyZW5jZTogSVBvaW50KSB7XG4gICAgc3VwZXIuc2V0U291cmNlRGlmZmVyZW5jZShkaWZmZXJlbmNlKTtcbiAgICB0aGlzLl9jaGVja0FuZFRyaWdnZXJBY3Rpb24oKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBzZXRUYXJnZXREaWZmZXJlbmNlKGRpZmZlcmVuY2U6IElQb2ludCkge1xuICAgIHN1cGVyLnNldFRhcmdldERpZmZlcmVuY2UoZGlmZmVyZW5jZSk7XG4gICAgdGhpcy5fY2hlY2tBbmRUcmlnZ2VyQWN0aW9uKCk7XG4gIH1cblxuICBwcml2YXRlIF9jaGVja0FuZFRyaWdnZXJBY3Rpb24oKSB7XG4gICAgaWYgKFsuLi50aGlzLl9jYWxsVHJhY2tlci52YWx1ZXMoKV0uZXZlcnkoQm9vbGVhbikpIHtcbiAgICAgIHRoaXMuX2NhbGxUcmFja2VyLmNsZWFyKCk7XG4gICAgICB0aGlzLnJlZHJhdygpO1xuICAgIH1cbiAgfVxufVxuXG4iXX0=
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { BaseConnectionDragHandler } from './base-connection.drag-handler';
|
|
2
|
+
export class TargetConnectionDragHandler extends BaseConnectionDragHandler {
|
|
3
|
+
constructor(fConnection) {
|
|
4
|
+
super(fConnection);
|
|
5
|
+
}
|
|
6
|
+
setTargetDifference(difference) {
|
|
7
|
+
super.setTargetDifference(difference);
|
|
8
|
+
this.redraw();
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFyZ2V0LWNvbm5lY3Rpb24uZHJhZy1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9ub2RlL2Nvbm5lY3Rpb24tZHJhZy1oYW5kbGVycy90YXJnZXQtY29ubmVjdGlvbi5kcmFnLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFHM0UsTUFBTSxPQUFPLDJCQUE0QixTQUFRLHlCQUF5QjtJQUV4RSxZQUFZLFdBQTRCO1FBQ3RDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRWUsbUJBQW1CLENBQUMsVUFBa0I7UUFDcEQsS0FBSyxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNoQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGQ29ubmVjdGlvbkJhc2UgfSBmcm9tICcuLi8uLi8uLi9mLWNvbm5lY3Rpb24nO1xuaW1wb3J0IHsgQmFzZUNvbm5lY3Rpb25EcmFnSGFuZGxlciB9IGZyb20gJy4vYmFzZS1jb25uZWN0aW9uLmRyYWctaGFuZGxlcic7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdAZm9ibGV4LzJkJztcblxuZXhwb3J0IGNsYXNzIFRhcmdldENvbm5lY3Rpb25EcmFnSGFuZGxlciBleHRlbmRzIEJhc2VDb25uZWN0aW9uRHJhZ0hhbmRsZXIge1xuXG4gIGNvbnN0cnVjdG9yKGZDb25uZWN0aW9uOiBGQ29ubmVjdGlvbkJhc2UpIHtcbiAgICBzdXBlcihmQ29ubmVjdGlvbik7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgc2V0VGFyZ2V0RGlmZmVyZW5jZShkaWZmZXJlbmNlOiBJUG9pbnQpIHtcbiAgICBzdXBlci5zZXRUYXJnZXREaWZmZXJlbmNlKGRpZmZlcmVuY2UpO1xuICAgIHRoaXMucmVkcmF3KCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -5,22 +5,27 @@ import { FExecutionRegister, FMediator } from '@foblex/mediator';
|
|
|
5
5
|
import { FComponentsStore } from '../../../f-storage';
|
|
6
6
|
import { FDraggableDataContext } from '../../f-draggable-data-context';
|
|
7
7
|
import { NodeDragHandler } from '../node.drag-handler';
|
|
8
|
-
import {
|
|
8
|
+
import { CalculateNodeMoveLimitsRequest } from './domain/calculate-node-move-limits';
|
|
9
9
|
import { PutOutputConnectionHandlersToArrayRequest } from './domain/put-output-connection-handlers-to-array';
|
|
10
10
|
import { PutInputConnectionHandlersToArrayRequest } from './domain/put-input-connection-handlers-to-array';
|
|
11
|
-
import { NodeResizeByChildDragHandler } from '../node-resize-by-child.drag-handler';
|
|
12
11
|
import { IsArrayHasParentNodeRequest } from '../../domain';
|
|
13
|
-
import { GetDeepChildrenNodesAndGroupsRequest, GetParentNodesRequest } from '../../../domain';
|
|
12
|
+
import { GetDeepChildrenNodesAndGroupsRequest, GetNormalizedElementRectRequest, GetParentNodesRequest } from '../../../domain';
|
|
14
13
|
import { flatMap } from '@foblex/utils';
|
|
15
|
-
import {
|
|
14
|
+
import { CalculateCommonNodeMoveLimitsRequest } from './domain/calculate-common-node-move-limits';
|
|
15
|
+
import { RectExtensions } from '@foblex/2d';
|
|
16
|
+
import { SummaryNodeDragHandler } from '../summary-node.drag-handler';
|
|
16
17
|
import * as i0 from "@angular/core";
|
|
17
18
|
let CreateMoveNodesDragModelFromSelectionExecution = class CreateMoveNodesDragModelFromSelectionExecution {
|
|
18
19
|
_fMediator = inject(FMediator);
|
|
19
20
|
_fComponentsStore = inject(FComponentsStore);
|
|
20
21
|
_fDraggableDataContext = inject(FDraggableDataContext);
|
|
21
22
|
handle(request) {
|
|
22
|
-
const
|
|
23
|
-
|
|
23
|
+
const fDraggedNodes = this._getDraggedNodes(request.nodeWithDisabledSelection);
|
|
24
|
+
const fNodesToDrag = this._getNodesToDragWithCommonLimits(fDraggedNodes);
|
|
25
|
+
const fDragHandlers = this._mapToNodeDragHandlers(fNodesToDrag);
|
|
26
|
+
this._setConnectionsHandlersToNodes(fDragHandlers, this._getAllOutputIds(fNodesToDrag), this._getAllInputIds(fNodesToDrag));
|
|
27
|
+
const commonLimits = this._calculateCommonLimits(this._getNodesMoveLimits(fNodesToDrag, [], fDraggedNodes));
|
|
28
|
+
return new SummaryNodeDragHandler(commonLimits, fDragHandlers, this._getDraggedNodesBoundingRect(fNodesToDrag));
|
|
24
29
|
}
|
|
25
30
|
_getDraggedNodes(nodeWithDisabledSelection) {
|
|
26
31
|
const result = this._getNodesFromSelection();
|
|
@@ -38,61 +43,58 @@ let CreateMoveNodesDragModelFromSelectionExecution = class CreateMoveNodesDragMo
|
|
|
38
43
|
return this._fComponentsStore.fNodes
|
|
39
44
|
.find(n => n.isContains(hostElement));
|
|
40
45
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
46
|
+
_getNodesToDragWithCommonLimits(fDraggedNodes) {
|
|
47
|
+
return fDraggedNodes.reduce((result, x) => {
|
|
48
|
+
result.push(x);
|
|
49
|
+
return result.concat(this._getChildrenNodes(x.fId));
|
|
50
|
+
}, []);
|
|
51
|
+
}
|
|
52
|
+
_getNodesMoveLimits(fNodes, fParentNodes, fDraggedNodes) {
|
|
53
|
+
return fDraggedNodes.map((x) => {
|
|
44
54
|
const fParentNodes = this._fMediator.execute(new GetParentNodesRequest(x));
|
|
45
|
-
|
|
46
|
-
result.push({ fDraggedNode: x, fParentNodes, ...restrictions }, ...this._getChildrenItemsToDrag(x, restrictions));
|
|
55
|
+
return { position: x.position, ...this._getNodeMoveLimits(x, fParentNodes, fDraggedNodes) };
|
|
47
56
|
});
|
|
48
|
-
this._applyCommonRestrictions(result);
|
|
49
|
-
return result;
|
|
50
57
|
}
|
|
51
|
-
|
|
52
|
-
return this._fMediator.execute(new
|
|
58
|
+
_getNodeMoveLimits(fNode, fParentNodes, fDraggedNodes) {
|
|
59
|
+
return this._fMediator.execute(new CalculateNodeMoveLimitsRequest(fNode, this._isParentNodeInArray(fParentNodes, fDraggedNodes)));
|
|
53
60
|
}
|
|
54
61
|
_isParentNodeInArray(fParentNodes, fDraggedNodes) {
|
|
55
62
|
return this._fMediator.execute(new IsArrayHasParentNodeRequest(fParentNodes, fDraggedNodes));
|
|
56
63
|
}
|
|
57
|
-
_getChildrenItemsToDrag(node, restrictions) {
|
|
58
|
-
return this._getChildrenNodes(node.fId).map((x) => ({ fDraggedNode: x, ...restrictions }));
|
|
59
|
-
}
|
|
60
64
|
_getChildrenNodes(fId) {
|
|
61
65
|
return this._fMediator.execute(new GetDeepChildrenNodesAndGroupsRequest(fId));
|
|
62
66
|
}
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
restrictions.forEach((x) => {
|
|
66
|
-
x.min = commonRestrictions.min;
|
|
67
|
-
x.max = commonRestrictions.max;
|
|
68
|
-
});
|
|
67
|
+
_calculateCommonLimits(limits) {
|
|
68
|
+
return this._fMediator.execute(new CalculateCommonNodeMoveLimitsRequest(limits));
|
|
69
69
|
}
|
|
70
|
-
|
|
71
|
-
return flatMap(
|
|
70
|
+
_getAllOutputIds(fNodes) {
|
|
71
|
+
return flatMap(fNodes, (fNode) => this._getNodeOutputIds(fNode));
|
|
72
72
|
}
|
|
73
|
-
|
|
74
|
-
return this._fComponentsStore.fOutputs.filter((x) =>
|
|
73
|
+
_getNodeOutputIds(fNode) {
|
|
74
|
+
return this._fComponentsStore.fOutputs.filter((x) => fNode.fId === x.fNodeId)
|
|
75
|
+
.map((x) => x.fId);
|
|
75
76
|
}
|
|
76
|
-
|
|
77
|
-
return flatMap(
|
|
77
|
+
_getAllInputIds(fNodes) {
|
|
78
|
+
return flatMap(fNodes, (fNode) => this._getNodeInputIds(fNode));
|
|
78
79
|
}
|
|
79
|
-
|
|
80
|
-
return this._fComponentsStore.fInputs.filter((x) =>
|
|
80
|
+
_getNodeInputIds(fNode) {
|
|
81
|
+
return this._fComponentsStore.fInputs.filter((x) => fNode.fId === x.fNodeId)
|
|
82
|
+
.map((x) => x.fId);
|
|
81
83
|
}
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
items.forEach((node) => {
|
|
85
|
-
result.push(new NodeDragHandler(this._fComponentsStore, node.fDraggedNode, { min: node.min, max: node.max }), ...(node.fParentNodes || []).map(() => new NodeResizeByChildDragHandler(this._fDraggableDataContext)));
|
|
86
|
-
});
|
|
87
|
-
return result;
|
|
84
|
+
_mapToNodeDragHandlers(items) {
|
|
85
|
+
return items.map((x) => new NodeDragHandler(x));
|
|
88
86
|
}
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
handlers.
|
|
92
|
-
this._fMediator.execute(new PutOutputConnectionHandlersToArrayRequest(
|
|
93
|
-
this._fMediator.execute(new PutInputConnectionHandlersToArrayRequest(
|
|
87
|
+
_setConnectionsHandlersToNodes(handlers, outputIds, inputIds) {
|
|
88
|
+
const fConnectionHandlers = [];
|
|
89
|
+
handlers.forEach((fNodeHandler) => {
|
|
90
|
+
this._fMediator.execute(new PutOutputConnectionHandlersToArrayRequest(fNodeHandler, inputIds, fConnectionHandlers));
|
|
91
|
+
this._fMediator.execute(new PutInputConnectionHandlersToArrayRequest(fNodeHandler, outputIds, fConnectionHandlers));
|
|
94
92
|
});
|
|
95
|
-
|
|
93
|
+
}
|
|
94
|
+
_getDraggedNodesBoundingRect(fNodes) {
|
|
95
|
+
return RectExtensions.union(fNodes.map((x) => {
|
|
96
|
+
return this._fMediator.execute(new GetNormalizedElementRectRequest(x.hostElement, false));
|
|
97
|
+
})) || RectExtensions.initialize();
|
|
96
98
|
}
|
|
97
99
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CreateMoveNodesDragModelFromSelectionExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
98
100
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CreateMoveNodesDragModelFromSelectionExecution });
|
|
@@ -104,4 +106,4 @@ export { CreateMoveNodesDragModelFromSelectionExecution };
|
|
|
104
106
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CreateMoveNodesDragModelFromSelectionExecution, decorators: [{
|
|
105
107
|
type: Injectable
|
|
106
108
|
}] });
|
|
107
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW1vdmUtbm9kZXMtZHJhZy1tb2RlbC1mcm9tLXNlbGVjdGlvbi5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL25vZGUvY3JlYXRlLW1vdmUtbm9kZXMtZHJhZy1tb2RlbC1mcm9tLXNlbGVjdGlvbi9jcmVhdGUtbW92ZS1ub2Rlcy1kcmFnLW1vZGVsLWZyb20tc2VsZWN0aW9uLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLDRDQUE0QyxFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDckgsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXZFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUl2RCxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNqRyxPQUFPLEVBQUUseUNBQXlDLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUM3RyxPQUFPLEVBQ0wsd0NBQXdDLEVBQ3pDLE1BQU0saURBQWlELENBQUM7QUFDekQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDcEYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzNELE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEMs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O0lBRU8sOEJBQThCLENBQ3BDLFFBQTBCLEVBQUUsU0FBbUIsRUFBRSxRQUFrQjtRQUVuRSxJQUFJLE1BQU0sR0FBcUIsUUFBUSxDQUFDO1FBQ3hDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsWUFBWSxlQUFlLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNqRSxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLHlDQUF5QyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUM1RixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLHdDQUF3QyxDQUFDLENBQUMsRUFBRSxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUM5RixDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7dUdBbkhVLDhDQUE4QzsyR0FBOUMsOENBQThDOztBQUE5Qyw4Q0FBOEM7SUFEMUQsa0JBQWtCLENBQUMsNENBQTRDLENBQUM7R0FDcEQsOENBQThDLENBb0gxRDs7MkZBcEhZLDhDQUE4QztrQkFGMUQsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ3JlYXRlTW92ZU5vZGVzRHJhZ01vZGVsRnJvbVNlbGVjdGlvblJlcXVlc3QgfSBmcm9tICcuL2NyZWF0ZS1tb3ZlLW5vZGVzLWRyYWctbW9kZWwtZnJvbS1zZWxlY3Rpb24ucmVxdWVzdCc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGRHJhZ2dhYmxlRGF0YUNvbnRleHQgfSBmcm9tICcuLi8uLi9mLWRyYWdnYWJsZS1kYXRhLWNvbnRleHQnO1xuaW1wb3J0IHsgSURyYWdnYWJsZUl0ZW0gfSBmcm9tICcuLi8uLi9pLWRyYWdnYWJsZS1pdGVtJztcbmltcG9ydCB7IE5vZGVEcmFnSGFuZGxlciB9IGZyb20gJy4uL25vZGUuZHJhZy1oYW5kbGVyJztcbmltcG9ydCB7IEZOb2RlQmFzZSB9IGZyb20gJy4uLy4uLy4uL2Ytbm9kZSc7XG5pbXBvcnQgeyBGQ29ubmVjdG9yQmFzZSB9IGZyb20gJy4uLy4uLy4uL2YtY29ubmVjdG9ycyc7XG5pbXBvcnQgeyBJTm9kZVdpdGhEaXN0YW5jZVJlc3RyaWN0aW9ucyB9IGZyb20gJy4vaS1ub2RlLXdpdGgtZGlzdGFuY2UtcmVzdHJpY3Rpb25zJztcbmltcG9ydCB7IENhbGN1bGF0ZU5vZGVNb3ZlUmVzdHJpY3Rpb25zUmVxdWVzdCB9IGZyb20gJy4vZG9tYWluL2NhbGN1bGF0ZS1ub2RlLW1vdmUtcmVzdHJpY3Rpb25zJztcbmltcG9ydCB7IFB1dE91dHB1dENvbm5lY3Rpb25IYW5kbGVyc1RvQXJyYXlSZXF1ZXN0IH0gZnJvbSAnLi9kb21haW4vcHV0LW91dHB1dC1jb25uZWN0aW9uLWhhbmRsZXJzLXRvLWFycmF5JztcbmltcG9ydCB7XG4gIFB1dElucHV0Q29ubmVjdGlvbkhhbmRsZXJzVG9BcnJheVJlcXVlc3Rcbn0gZnJvbSAnLi9kb21haW4vcHV0LWlucHV0LWNvbm5lY3Rpb24taGFuZGxlcnMtdG8tYXJyYXknO1xuaW1wb3J0IHsgTm9kZVJlc2l6ZUJ5Q2hpbGREcmFnSGFuZGxlciB9IGZyb20gJy4uL25vZGUtcmVzaXplLWJ5LWNoaWxkLmRyYWctaGFuZGxlcic7XG5pbXBvcnQgeyBJc0FycmF5SGFzUGFyZW50Tm9kZVJlcXVlc3QgfSBmcm9tICcuLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgR2V0RGVlcENoaWxkcmVuTm9kZXNBbmRHcm91cHNSZXF1ZXN0LCBHZXRQYXJlbnROb2Rlc1JlcXVlc3QgfSBmcm9tICcuLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgZmxhdE1hcCB9IGZyb20gJ0Bmb2JsZXgvdXRpbHMnO1xuaW1wb3J0IHsgQ2FsY3VsYXRlQ29tbW9uTm9kZU1vdmVSZXN0cmljdGlvbnNSZXF1ZXN0IH0gZnJvbSAnLi9kb21haW4vY2FsY3VsYXRlLWNvbW1vbi1ub2RlLW1vdmUtcmVzdHJpY3Rpb25zJztcbmltcG9ydCB7IElNaW5NYXhQb2ludCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKENyZWF0ZU1vdmVOb2Rlc0RyYWdNb2RlbEZyb21TZWxlY3Rpb25SZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIENyZWF0ZU1vdmVOb2Rlc0RyYWdNb2RlbEZyb21TZWxlY3Rpb25FeGVjdXRpb25cbiAgaW1wbGVtZW50cyBJRXhlY3V0aW9uPENyZWF0ZU1vdmVOb2Rlc0RyYWdNb2RlbEZyb21TZWxlY3Rpb25SZXF1ZXN0LCBJRHJhZ2dhYmxlSXRlbVtdPiB7XG5cbiAgcHJpdmF0ZSBfZk1lZGlhdG9yID0gaW5qZWN0KEZNZWRpYXRvcik7XG4gIHByaXZhdGUgX2ZDb21wb25lbnRzU3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSk7XG4gIHByaXZhdGUgX2ZEcmFnZ2FibGVEYXRhQ29udGV4dCA9IGluamVjdChGRHJhZ2dhYmxlRGF0YUNvbnRleHQpO1xuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogQ3JlYXRlTW92ZU5vZGVzRHJhZ01vZGVsRnJvbVNlbGVjdGlvblJlcXVlc3QpOiBJRHJhZ2dhYmxlSXRlbVtdIHtcbiAgICBjb25zdCBmSXRlbXNUb0RyYWcgPSB0aGlzLl9nZXROb2Rlc1dpdGhSZXN0cmljdGlvbnMoXG4gICAgICB0aGlzLl9nZXREcmFnZ2VkTm9kZXMocmVxdWVzdC5ub2RlV2l0aERpc2FibGVkU2VsZWN0aW9uKVxuICAgICk7XG4gICAgcmV0dXJuIHRoaXMuZ2V0RHJhZ0hhbmRsZXJzV2l0aENvbm5lY3Rpb25zKFxuICAgICAgdGhpcy5nZXREcmFnSGFuZGxlcnNGcm9tTm9kZXMoZkl0ZW1zVG9EcmFnKSxcbiAgICAgIHRoaXMuZ2V0QWxsT3V0cHV0SWRzKGZJdGVtc1RvRHJhZyksXG4gICAgICB0aGlzLmdldEFsbElucHV0SWRzKGZJdGVtc1RvRHJhZylcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0RHJhZ2dlZE5vZGVzKG5vZGVXaXRoRGlzYWJsZWRTZWxlY3Rpb24/OiBGTm9kZUJhc2UpOiBGTm9kZUJhc2VbXSB7XG4gICAgY29uc3QgcmVzdWx0ID0gdGhpcy5fZ2V0Tm9kZXNGcm9tU2VsZWN0aW9uKCk7XG4gICAgaWYgKG5vZGVXaXRoRGlzYWJsZWRTZWxlY3Rpb24pIHtcbiAgICAgIHJlc3VsdC5wdXNoKG5vZGVXaXRoRGlzYWJsZWRTZWxlY3Rpb24pO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Tm9kZXNGcm9tU2VsZWN0aW9uKCk6IEZOb2RlQmFzZVtdIHtcbiAgICByZXR1cm4gdGhpcy5fZkRyYWdnYWJsZURhdGFDb250ZXh0LnNlbGVjdGVkSXRlbXNcbiAgICAgIC5tYXAoKHgpID0+IHRoaXMuX2ZpbmROb2RlKHguaG9zdEVsZW1lbnQpKVxuICAgICAgLmZpbHRlcigoeCk6IHggaXMgRk5vZGVCYXNlID0+ICEheCk7XG4gIH1cblxuICBwcml2YXRlIF9maW5kTm9kZShob3N0RWxlbWVudDogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50KTogRk5vZGVCYXNlIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fZkNvbXBvbmVudHNTdG9yZS5mTm9kZXNcbiAgICAgIC5maW5kKG4gPT4gbi5pc0NvbnRhaW5zKGhvc3RFbGVtZW50KSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXROb2Rlc1dpdGhSZXN0cmljdGlvbnMoZkRyYWdnZWROb2RlczogRk5vZGVCYXNlW10pOiBJTm9kZVdpdGhEaXN0YW5jZVJlc3RyaWN0aW9uc1tdIHtcbiAgICBjb25zdCByZXN1bHQ6IElOb2RlV2l0aERpc3RhbmNlUmVzdHJpY3Rpb25zW10gPSBbXTtcblxuICAgIGZEcmFnZ2VkTm9kZXMuZm9yRWFjaCgoeCkgPT4ge1xuICAgICAgY29uc3QgZlBhcmVudE5vZGVzID0gdGhpcy5fZk1lZGlhdG9yLmV4ZWN1dGU8Rk5vZGVCYXNlW10+KG5ldyBHZXRQYXJlbnROb2Rlc1JlcXVlc3QoeCkpO1xuICAgICAgY29uc3QgcmVzdHJpY3Rpb25zID0gdGhpcy5fZ2V0Tm9kZU1vdmVSZXN0cmljdGlvbnMoeCwgZlBhcmVudE5vZGVzLCBmRHJhZ2dlZE5vZGVzKTtcbiAgICAgIHJlc3VsdC5wdXNoKHsgZkRyYWdnZWROb2RlOiB4LCBmUGFyZW50Tm9kZXMsIC4uLnJlc3RyaWN0aW9ucyB9LCAuLi50aGlzLl9nZXRDaGlsZHJlbkl0ZW1zVG9EcmFnKHgsIHJlc3RyaWN0aW9ucykpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5fYXBwbHlDb21tb25SZXN0cmljdGlvbnMocmVzdWx0KTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Tm9kZU1vdmVSZXN0cmljdGlvbnMoZk5vZGU6IEZOb2RlQmFzZSwgZlBhcmVudE5vZGVzOiBGTm9kZUJhc2VbXSwgZkRyYWdnZWROb2RlczogRk5vZGVCYXNlW10pOiBJTWluTWF4UG9pbnQge1xuICAgIHJldHVybiB0aGlzLl9mTWVkaWF0b3IuZXhlY3V0ZTxJTWluTWF4UG9pbnQ+KFxuICAgICAgbmV3IENhbGN1bGF0ZU5vZGVNb3ZlUmVzdHJpY3Rpb25zUmVxdWVzdChmTm9kZSwgdGhpcy5faXNQYXJlbnROb2RlSW5BcnJheShmUGFyZW50Tm9kZXMsIGZEcmFnZ2VkTm9kZXMpKVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9pc1BhcmVudE5vZGVJbkFycmF5KGZQYXJlbnROb2RlczogRk5vZGVCYXNlW10sIGZEcmFnZ2VkTm9kZXM6IEZOb2RlQmFzZVtdKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2ZNZWRpYXRvci5leGVjdXRlPGJvb2xlYW4+KG5ldyBJc0FycmF5SGFzUGFyZW50Tm9kZVJlcXVlc3QoZlBhcmVudE5vZGVzLCBmRHJhZ2dlZE5vZGVzKSlcbiAgfVxuXG4gIHByaXZhdGUgX2dldENoaWxkcmVuSXRlbXNUb0RyYWcobm9kZTogRk5vZGVCYXNlLCByZXN0cmljdGlvbnM6IElNaW5NYXhQb2ludCk6IElOb2RlV2l0aERpc3RhbmNlUmVzdHJpY3Rpb25zW10ge1xuICAgIHJldHVybiB0aGlzLl9nZXRDaGlsZHJlbk5vZGVzKG5vZGUuZklkKS5tYXAoKHgpID0+ICh7IGZEcmFnZ2VkTm9kZTogeCwgLi4ucmVzdHJpY3Rpb25zIH0pKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldENoaWxkcmVuTm9kZXMoZklkOiBzdHJpbmcpOiBGTm9kZUJhc2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZNZWRpYXRvci5leGVjdXRlPEZOb2RlQmFzZVtdPihuZXcgR2V0RGVlcENoaWxkcmVuTm9kZXNBbmRHcm91cHNSZXF1ZXN0KGZJZCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfYXBwbHlDb21tb25SZXN0cmljdGlvbnMocmVzdHJpY3Rpb25zOiBJTm9kZVdpdGhEaXN0YW5jZVJlc3RyaWN0aW9uc1tdKTogdm9pZCB7XG4gICAgY29uc3QgY29tbW9uUmVzdHJpY3Rpb25zID0gdGhpcy5fZk1lZGlhdG9yLmV4ZWN1dGU8SU1pbk1heFBvaW50PihcbiAgICAgIG5ldyBDYWxjdWxhdGVDb21tb25Ob2RlTW92ZVJlc3RyaWN0aW9uc1JlcXVlc3QocmVzdHJpY3Rpb25zKVxuICAgICk7XG4gICAgcmVzdHJpY3Rpb25zLmZvckVhY2goKHgpID0+IHtcbiAgICAgIHgubWluID0gY29tbW9uUmVzdHJpY3Rpb25zLm1pbjtcbiAgICAgIHgubWF4ID0gY29tbW9uUmVzdHJpY3Rpb25zLm1heDtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0QWxsT3V0cHV0SWRzKGl0ZW1zOiBJTm9kZVdpdGhEaXN0YW5jZVJlc3RyaWN0aW9uc1tdKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBmbGF0TWFwKGl0ZW1zLCAoaXRlbTogSU5vZGVXaXRoRGlzdGFuY2VSZXN0cmljdGlvbnMpID0+IHRoaXMuZ2V0T3V0cHV0c0Zvck5vZGUoaXRlbS5mRHJhZ2dlZE5vZGUpLm1hcCgoeCkgPT4geC5mSWQpKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0T3V0cHV0c0Zvck5vZGUobm9kZTogRk5vZGVCYXNlKTogRkNvbm5lY3RvckJhc2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZDb21wb25lbnRzU3RvcmUuZk91dHB1dHMuZmlsdGVyKCh4KSA9PiBub2RlLmlzQ29udGFpbnMoeC5ob3N0RWxlbWVudCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRBbGxJbnB1dElkcyhpdGVtczogSU5vZGVXaXRoRGlzdGFuY2VSZXN0cmljdGlvbnNbXSk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gZmxhdE1hcChpdGVtcywgKGl0ZW06IElOb2RlV2l0aERpc3RhbmNlUmVzdHJpY3Rpb25zKSA9PiB0aGlzLmdldElucHV0c0Zvck5vZGUoaXRlbS5mRHJhZ2dlZE5vZGUpLm1hcCgoeCkgPT4geC5mSWQpKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0SW5wdXRzRm9yTm9kZShub2RlOiBGTm9kZUJhc2UpOiBGQ29ubmVjdG9yQmFzZVtdIHtcbiAgICByZXR1cm4gdGhpcy5fZkNvbXBvbmVudHNTdG9yZS5mSW5wdXRzLmZpbHRlcigoeCkgPT4gbm9kZS5pc0NvbnRhaW5zKHguaG9zdEVsZW1lbnQpKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RHJhZ0hhbmRsZXJzRnJvbU5vZGVzKGl0ZW1zOiBJTm9kZVdpdGhEaXN0YW5jZVJlc3RyaWN0aW9uc1tdKTogSURyYWdnYWJsZUl0ZW1bXSB7XG4gICAgbGV0IHJlc3VsdDogSURyYWdnYWJsZUl0ZW1bXSA9IFtdO1xuXG4gICAgaXRlbXMuZm9yRWFjaCgobm9kZSkgPT4ge1xuICAgICAgcmVzdWx0LnB1c2goXG4gICAgICAgIG5ldyBOb2RlRHJhZ0hhbmRsZXIodGhpcy5fZkNvbXBvbmVudHNTdG9yZSwgbm9kZS5mRHJhZ2dlZE5vZGUsIHsgbWluOiBub2RlLm1pbiwgbWF4OiBub2RlLm1heCB9KSxcbiAgICAgICAgLi4uKG5vZGUuZlBhcmVudE5vZGVzIHx8IFtdKS5tYXAoKCkgPT4gbmV3IE5vZGVSZXNpemVCeUNoaWxkRHJhZ0hhbmRsZXIodGhpcy5fZkRyYWdnYWJsZURhdGFDb250ZXh0KSlcbiAgICAgICk7XG4gICAgfSk7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RHJhZ0hhbmRsZXJzV2l0aENvbm5lY3Rpb25zKFxuICAgIGhhbmRsZXJzOiBJRHJhZ2dhYmxlSXRlbVtdLCBvdXRwdXRJZHM6IHN0cmluZ1tdLCBpbnB1dElkczogc3RyaW5nW11cbiAgKTogSURyYWdnYWJsZUl0ZW1bXSB7XG4gICAgbGV0IHJlc3VsdDogSURyYWdnYWJsZUl0ZW1bXSA9IGhhbmRsZXJzO1xuICAgIGhhbmRsZXJzLmZpbHRlcigoeCkgPT4geCBpbnN0YW5jZW9mIE5vZGVEcmFnSGFuZGxlcikuZm9yRWFjaCgoeCkgPT4ge1xuICAgICAgdGhpcy5fZk1lZGlhdG9yLmV4ZWN1dGUobmV3IFB1dE91dHB1dENvbm5lY3Rpb25IYW5kbGVyc1RvQXJyYXlSZXF1ZXN0KHgsIGlucHV0SWRzLCByZXN1bHQpKTtcbiAgICAgIHRoaXMuX2ZNZWRpYXRvci5leGVjdXRlKG5ldyBQdXRJbnB1dENvbm5lY3Rpb25IYW5kbGVyc1RvQXJyYXlSZXF1ZXN0KHgsIG91dHB1dElkcywgcmVzdWx0KSk7XG4gICAgfSk7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxufVxuIl19
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW1vdmUtbm9kZXMtZHJhZy1tb2RlbC1mcm9tLXNlbGVjdGlvbi5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL25vZGUvY3JlYXRlLW1vdmUtbm9kZXMtZHJhZy1tb2RlbC1mcm9tLXNlbGVjdGlvbi9jcmVhdGUtbW92ZS1ub2Rlcy1kcmFnLW1vZGVsLWZyb20tc2VsZWN0aW9uLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLDRDQUE0QyxFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDckgsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXZFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUV2RCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRixPQUFPLEVBQUUseUNBQXlDLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUM3RyxPQUFPLEVBQ0wsd0NBQXdDLEVBQ3pDLE1BQU0saURBQWlELENBQUM7QUFDekQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzNELE9BQU8sRUFDTCxvQ0FBb0MsRUFDcEMsK0JBQStCLEVBQy9CLHFCQUFxQixFQUN0QixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sNENB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LENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLDRCQUE0QixDQUFDLE1BQW1CO1FBQ3RELE9BQU8sY0FBYyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDM0MsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBUSxJQUFJLCtCQUErQixDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNuRyxDQUFDLENBQUMsQ0FBQyxJQUFJLGNBQWMsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNyQyxDQUFDO3VHQWxIVSw4Q0FBOEM7MkdBQTlDLDhDQUE4Qzs7QUFBOUMsOENBQThDO0lBRDFELGtCQUFrQixDQUFDLDRDQUE0QyxDQUFDO0dBQ3BELDhDQUE4QyxDQW1IMUQ7OzJGQW5IWSw4Q0FBOEM7a0JBRjFELFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENyZWF0ZU1vdmVOb2Rlc0RyYWdNb2RlbEZyb21TZWxlY3Rpb25SZXF1ZXN0IH0gZnJvbSAnLi9jcmVhdGUtbW92ZS1ub2Rlcy1kcmFnLW1vZGVsLWZyb20tc2VsZWN0aW9uLnJlcXVlc3QnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBGTWVkaWF0b3IsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgRkRyYWdnYWJsZURhdGFDb250ZXh0IH0gZnJvbSAnLi4vLi4vZi1kcmFnZ2FibGUtZGF0YS1jb250ZXh0JztcbmltcG9ydCB7IElGRHJhZ0hhbmRsZXIgfSBmcm9tICcuLi8uLi9mLWRyYWctaGFuZGxlci9pLWYtZHJhZy1oYW5kbGVyJztcbmltcG9ydCB7IE5vZGVEcmFnSGFuZGxlciB9IGZyb20gJy4uL25vZGUuZHJhZy1oYW5kbGVyJztcbmltcG9ydCB7IEZOb2RlQmFzZSB9IGZyb20gJy4uLy4uLy4uL2Ytbm9kZSc7XG5pbXBvcnQgeyBDYWxjdWxhdGVOb2RlTW92ZUxpbWl0c1JlcXVlc3QgfSBmcm9tICcuL2RvbWFpbi9jYWxjdWxhdGUtbm9kZS1tb3ZlLWxpbWl0cyc7XG5pbXBvcnQgeyBQdXRPdXRwdXRDb25uZWN0aW9uSGFuZGxlcnNUb0FycmF5UmVxdWVzdCB9IGZyb20gJy4vZG9tYWluL3B1dC1vdXRwdXQtY29ubmVjdGlvbi1oYW5kbGVycy10by1hcnJheSc7XG5pbXBvcnQge1xuICBQdXRJbnB1dENvbm5lY3Rpb25IYW5kbGVyc1RvQXJyYXlSZXF1ZXN0XG59IGZyb20gJy4vZG9tYWluL3B1dC1pbnB1dC1jb25uZWN0aW9uLWhhbmRsZXJzLXRvLWFycmF5JztcbmltcG9ydCB7IElzQXJyYXlIYXNQYXJlbnROb2RlUmVxdWVzdCB9IGZyb20gJy4uLy4uL2RvbWFpbic7XG5pbXBvcnQge1xuICBHZXREZWVwQ2hpbGRyZW5Ob2Rlc0FuZEdyb3Vwc1JlcXVlc3QsXG4gIEdldE5vcm1hbGl6ZWRFbGVtZW50UmVjdFJlcXVlc3QsXG4gIEdldFBhcmVudE5vZGVzUmVxdWVzdFxufSBmcm9tICcuLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgZmxhdE1hcCB9IGZyb20gJ0Bmb2JsZXgvdXRpbHMnO1xuaW1wb3J0IHsgQ2FsY3VsYXRlQ29tbW9uTm9kZU1vdmVMaW1pdHNSZXF1ZXN0IH0gZnJvbSAnLi9kb21haW4vY2FsY3VsYXRlLWNvbW1vbi1ub2RlLW1vdmUtbGltaXRzJztcbmltcG9ydCB7IElNaW5NYXhQb2ludCwgSVJlY3QsIFJlY3RFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBCYXNlQ29ubmVjdGlvbkRyYWdIYW5kbGVyIH0gZnJvbSAnLi4vY29ubmVjdGlvbi1kcmFnLWhhbmRsZXJzJztcbmltcG9ydCB7IFN1bW1hcnlOb2RlRHJhZ0hhbmRsZXIgfSBmcm9tICcuLi9zdW1tYXJ5LW5vZGUuZHJhZy1oYW5kbGVyJztcbmltcG9ydCB7IElOb2RlTW92ZUxpbWl0c0FuZFBvc2l0aW9uIH0gZnJvbSAnLi9pLW5vZGUtbW92ZS1saW1pdHMtYW5kLXBvc2l0aW9uJztcbmltcG9ydCB7IElOb2RlTW92ZUxpbWl0cyB9IGZyb20gJy4vaS1ub2RlLW1vdmUtbGltaXRzJztcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihDcmVhdGVNb3ZlTm9kZXNEcmFnTW9kZWxGcm9tU2VsZWN0aW9uUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBDcmVhdGVNb3ZlTm9kZXNEcmFnTW9kZWxGcm9tU2VsZWN0aW9uRXhlY3V0aW9uXG4gIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxDcmVhdGVNb3ZlTm9kZXNEcmFnTW9kZWxGcm9tU2VsZWN0aW9uUmVxdWVzdCwgU3VtbWFyeU5vZGVEcmFnSGFuZGxlcj4ge1xuXG4gIHByaXZhdGUgX2ZNZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuICBwcml2YXRlIF9mQ29tcG9uZW50c1N0b3JlID0gaW5qZWN0KEZDb21wb25lbnRzU3RvcmUpO1xuICBwcml2YXRlIF9mRHJhZ2dhYmxlRGF0YUNvbnRleHQgPSBpbmplY3QoRkRyYWdnYWJsZURhdGFDb250ZXh0KTtcblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IENyZWF0ZU1vdmVOb2Rlc0RyYWdNb2RlbEZyb21TZWxlY3Rpb25SZXF1ZXN0KTogU3VtbWFyeU5vZGVEcmFnSGFuZGxlciB7XG4gICAgY29uc3QgZkRyYWdnZWROb2RlcyA9IHRoaXMuX2dldERyYWdnZWROb2RlcyhyZXF1ZXN0Lm5vZGVXaXRoRGlzYWJsZWRTZWxlY3Rpb24pO1xuXG4gICAgY29uc3QgZk5vZGVzVG9EcmFnID0gdGhpcy5fZ2V0Tm9kZXNUb0RyYWdXaXRoQ29tbW9uTGltaXRzKGZEcmFnZ2VkTm9kZXMpO1xuXG4gICAgY29uc3QgZkRyYWdIYW5kbGVycyA9IHRoaXMuX21hcFRvTm9kZURyYWdIYW5kbGVycyhmTm9kZXNUb0RyYWcpO1xuXG4gICAgdGhpcy5fc2V0Q29ubmVjdGlvbnNIYW5kbGVyc1RvTm9kZXMoZkRyYWdIYW5kbGVycywgdGhpcy5fZ2V0QWxsT3V0cHV0SWRzKGZOb2Rlc1RvRHJhZyksIHRoaXMuX2dldEFsbElucHV0SWRzKGZOb2Rlc1RvRHJhZykpO1xuXG4gICAgY29uc3QgY29tbW9uTGltaXRzID0gdGhpcy5fY2FsY3VsYXRlQ29tbW9uTGltaXRzKFxuICAgICAgdGhpcy5fZ2V0Tm9kZXNNb3ZlTGltaXRzKGZOb2Rlc1RvRHJhZywgW10sIGZEcmFnZ2VkTm9kZXMpXG4gICAgKTtcblxuICAgIHJldHVybiBuZXcgU3VtbWFyeU5vZGVEcmFnSGFuZGxlcihcbiAgICAgIGNvbW1vbkxpbWl0cywgZkRyYWdIYW5kbGVycywgdGhpcy5fZ2V0RHJhZ2dlZE5vZGVzQm91bmRpbmdSZWN0KGZOb2Rlc1RvRHJhZylcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0RHJhZ2dlZE5vZGVzKG5vZGVXaXRoRGlzYWJsZWRTZWxlY3Rpb24/OiBGTm9kZUJhc2UpOiBGTm9kZUJhc2VbXSB7XG4gICAgY29uc3QgcmVzdWx0ID0gdGhpcy5fZ2V0Tm9kZXNGcm9tU2VsZWN0aW9uKCk7XG4gICAgaWYgKG5vZGVXaXRoRGlzYWJsZWRTZWxlY3Rpb24pIHtcbiAgICAgIHJlc3VsdC5wdXNoKG5vZGVXaXRoRGlzYWJsZWRTZWxlY3Rpb24pO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Tm9kZXNGcm9tU2VsZWN0aW9uKCk6IEZOb2RlQmFzZVtdIHtcbiAgICByZXR1cm4gdGhpcy5fZkRyYWdnYWJsZURhdGFDb250ZXh0LnNlbGVjdGVkSXRlbXNcbiAgICAgIC5tYXAoKHgpID0+IHRoaXMuX2ZpbmROb2RlKHguaG9zdEVsZW1lbnQpKVxuICAgICAgLmZpbHRlcigoeCk6IHggaXMgRk5vZGVCYXNlID0+ICEheCk7XG4gIH1cblxuICBwcml2YXRlIF9maW5kTm9kZShob3N0RWxlbWVudDogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50KTogRk5vZGVCYXNlIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fZkNvbXBvbmVudHNTdG9yZS5mTm9kZXNcbiAgICAgIC5maW5kKG4gPT4gbi5pc0NvbnRhaW5zKGhvc3RFbGVtZW50KSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXROb2Rlc1RvRHJhZ1dpdGhDb21tb25MaW1pdHMoZkRyYWdnZWROb2RlczogRk5vZGVCYXNlW10pOiBGTm9kZUJhc2VbXSB7XG4gICAgcmV0dXJuIGZEcmFnZ2VkTm9kZXMucmVkdWNlKChyZXN1bHQ6IEZOb2RlQmFzZVtdLCB4OiBGTm9kZUJhc2UpID0+IHtcbiAgICAgIHJlc3VsdC5wdXNoKHgpO1xuICAgICAgcmV0dXJuIHJlc3VsdC5jb25jYXQodGhpcy5fZ2V0Q2hpbGRyZW5Ob2Rlcyh4LmZJZCkpO1xuICAgIH0sIFtdKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldE5vZGVzTW92ZUxpbWl0cyhmTm9kZXM6IEZOb2RlQmFzZVtdLCBmUGFyZW50Tm9kZXM6IEZOb2RlQmFzZVtdLCBmRHJhZ2dlZE5vZGVzOiBGTm9kZUJhc2VbXSk6IElOb2RlTW92ZUxpbWl0c0FuZFBvc2l0aW9uW10ge1xuICAgIHJldHVybiBmRHJhZ2dlZE5vZGVzLm1hcCgoeCkgPT4ge1xuICAgICAgY29uc3QgZlBhcmVudE5vZGVzID0gdGhpcy5fZk1lZGlhdG9yLmV4ZWN1dGU8Rk5vZGVCYXNlW10+KG5ldyBHZXRQYXJlbnROb2Rlc1JlcXVlc3QoeCkpO1xuICAgICAgcmV0dXJuIHsgcG9zaXRpb246IHgucG9zaXRpb24sIC4uLnRoaXMuX2dldE5vZGVNb3ZlTGltaXRzKHgsIGZQYXJlbnROb2RlcywgZkRyYWdnZWROb2RlcykgfTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldE5vZGVNb3ZlTGltaXRzKGZOb2RlOiBGTm9kZUJhc2UsIGZQYXJlbnROb2RlczogRk5vZGVCYXNlW10sIGZEcmFnZ2VkTm9kZXM6IEZOb2RlQmFzZVtdKTogSU5vZGVNb3ZlTGltaXRzIHtcbiAgICByZXR1cm4gdGhpcy5fZk1lZGlhdG9yLmV4ZWN1dGU8SU1pbk1heFBvaW50PihcbiAgICAgIG5ldyBDYWxjdWxhdGVOb2RlTW92ZUxpbWl0c1JlcXVlc3QoZk5vZGUsIHRoaXMuX2lzUGFyZW50Tm9kZUluQXJyYXkoZlBhcmVudE5vZGVzLCBmRHJhZ2dlZE5vZGVzKSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNQYXJlbnROb2RlSW5BcnJheShmUGFyZW50Tm9kZXM6IEZOb2RlQmFzZVtdLCBmRHJhZ2dlZE5vZGVzOiBGTm9kZUJhc2VbXSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9mTWVkaWF0b3IuZXhlY3V0ZTxib29sZWFuPihuZXcgSXNBcnJheUhhc1BhcmVudE5vZGVSZXF1ZXN0KGZQYXJlbnROb2RlcywgZkRyYWdnZWROb2RlcykpXG4gIH1cblxuICBwcml2YXRlIF9nZXRDaGlsZHJlbk5vZGVzKGZJZDogc3RyaW5nKTogRk5vZGVCYXNlW10ge1xuICAgIHJldHVybiB0aGlzLl9mTWVkaWF0b3IuZXhlY3V0ZTxGTm9kZUJhc2VbXT4obmV3IEdldERlZXBDaGlsZHJlbk5vZGVzQW5kR3JvdXBzUmVxdWVzdChmSWQpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NhbGN1bGF0ZUNvbW1vbkxpbWl0cyhsaW1pdHM6IElOb2RlTW92ZUxpbWl0c0FuZFBvc2l0aW9uW10pOiBJTWluTWF4UG9pbnQge1xuICAgIHJldHVybiB0aGlzLl9mTWVkaWF0b3IuZXhlY3V0ZTxJTWluTWF4UG9pbnQ+KFxuICAgICAgbmV3IENhbGN1bGF0ZUNvbW1vbk5vZGVNb3ZlTGltaXRzUmVxdWVzdChsaW1pdHMpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldEFsbE91dHB1dElkcyhmTm9kZXM6IEZOb2RlQmFzZVtdKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBmbGF0TWFwKGZOb2RlcywgKGZOb2RlKSA9PiB0aGlzLl9nZXROb2RlT3V0cHV0SWRzKGZOb2RlKSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXROb2RlT3V0cHV0SWRzKGZOb2RlOiBGTm9kZUJhc2UpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZDb21wb25lbnRzU3RvcmUuZk91dHB1dHMuZmlsdGVyKCh4KSA9PiBmTm9kZS5mSWQgPT09IHguZk5vZGVJZClcbiAgICAgIC5tYXAoKHgpID0+IHguZklkKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldEFsbElucHV0SWRzKGZOb2RlczogRk5vZGVCYXNlW10pOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIGZsYXRNYXAoZk5vZGVzLCAoZk5vZGUpID0+IHRoaXMuX2dldE5vZGVJbnB1dElkcyhmTm9kZSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Tm9kZUlucHV0SWRzKGZOb2RlOiBGTm9kZUJhc2UpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZDb21wb25lbnRzU3RvcmUuZklucHV0cy5maWx0ZXIoKHgpID0+IGZOb2RlLmZJZCA9PT0geC5mTm9kZUlkKVxuICAgICAgLm1hcCgoeCkgPT4geC5mSWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBfbWFwVG9Ob2RlRHJhZ0hhbmRsZXJzKGl0ZW1zOiBGTm9kZUJhc2VbXSk6IE5vZGVEcmFnSGFuZGxlcltdIHtcbiAgICByZXR1cm4gaXRlbXMubWFwKCh4KSA9PiBuZXcgTm9kZURyYWdIYW5kbGVyKHgpKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NldENvbm5lY3Rpb25zSGFuZGxlcnNUb05vZGVzKFxuICAgIGhhbmRsZXJzOiBOb2RlRHJhZ0hhbmRsZXJbXSwgb3V0cHV0SWRzOiBzdHJpbmdbXSwgaW5wdXRJZHM6IHN0cmluZ1tdXG4gICk6IHZvaWQge1xuICAgIGNvbnN0IGZDb25uZWN0aW9uSGFuZGxlcnM6IEJhc2VDb25uZWN0aW9uRHJhZ0hhbmRsZXJbXSA9IFtdO1xuICAgIGhhbmRsZXJzLmZvckVhY2goKGZOb2RlSGFuZGxlcikgPT4ge1xuICAgICAgdGhpcy5fZk1lZGlhdG9yLmV4ZWN1dGUobmV3IFB1dE91dHB1dENvbm5lY3Rpb25IYW5kbGVyc1RvQXJyYXlSZXF1ZXN0KGZOb2RlSGFuZGxlciwgaW5wdXRJZHMsIGZDb25uZWN0aW9uSGFuZGxlcnMpKTtcbiAgICAgIHRoaXMuX2ZNZWRpYXRvci5leGVjdXRlKG5ldyBQdXRJbnB1dENvbm5lY3Rpb25IYW5kbGVyc1RvQXJyYXlSZXF1ZXN0KGZOb2RlSGFuZGxlciwgb3V0cHV0SWRzLCBmQ29ubmVjdGlvbkhhbmRsZXJzKSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXREcmFnZ2VkTm9kZXNCb3VuZGluZ1JlY3QoZk5vZGVzOiBGTm9kZUJhc2VbXSk6IElSZWN0IHtcbiAgICByZXR1cm4gUmVjdEV4dGVuc2lvbnMudW5pb24oZk5vZGVzLm1hcCgoeCkgPT4ge1xuICAgICAgcmV0dXJuIHRoaXMuX2ZNZWRpYXRvci5leGVjdXRlPElSZWN0PihuZXcgR2V0Tm9ybWFsaXplZEVsZW1lbnRSZWN0UmVxdWVzdCh4Lmhvc3RFbGVtZW50LCBmYWxzZSkpO1xuICAgIH0pKSB8fCBSZWN0RXh0ZW5zaW9ucy5pbml0aWFsaXplKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { inject, Injectable } from '@angular/core';
|
|
3
|
+
import { CalculateCommonNodeMoveLimitsRequest } from './calculate-common-node-move-limits.request';
|
|
4
|
+
import { FExecutionRegister } from '@foblex/mediator';
|
|
5
|
+
import { FComponentsStore } from '../../../../../f-storage';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
let CalculateCommonNodeMoveLimitsExecution = class CalculateCommonNodeMoveLimitsExecution {
|
|
8
|
+
_fComponentsStore = inject(FComponentsStore);
|
|
9
|
+
get _vCellSize() {
|
|
10
|
+
return this._fComponentsStore.fDraggable.vCellSize;
|
|
11
|
+
}
|
|
12
|
+
get _hCellSize() {
|
|
13
|
+
return this._fComponentsStore.fDraggable.hCellSize;
|
|
14
|
+
}
|
|
15
|
+
handle(request) {
|
|
16
|
+
return this._calculateCommonLimits(request.limits);
|
|
17
|
+
}
|
|
18
|
+
_calculateCommonLimits(limits) {
|
|
19
|
+
this._snapLimitToGrid(limits[0]);
|
|
20
|
+
return limits.reduce((result, x) => {
|
|
21
|
+
this._snapLimitToGrid(x);
|
|
22
|
+
return this._clampRestrictions(result, x);
|
|
23
|
+
}, limits[0]);
|
|
24
|
+
}
|
|
25
|
+
_clampRestrictions(common, x) {
|
|
26
|
+
common.min = this._clampMinRestrictions(common.min, x.min);
|
|
27
|
+
common.max = this._clampMaxRestrictions(common.max, x.max);
|
|
28
|
+
return common;
|
|
29
|
+
}
|
|
30
|
+
_clampMinRestrictions(common, node) {
|
|
31
|
+
return {
|
|
32
|
+
x: Math.max(common.x, node.x),
|
|
33
|
+
y: Math.max(common.y, node.y),
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
_clampMaxRestrictions(common, node) {
|
|
37
|
+
return {
|
|
38
|
+
x: Math.min(common.x, node.x),
|
|
39
|
+
y: Math.min(common.y, node.y),
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
_snapLimitToGrid(restriction) {
|
|
43
|
+
const { min, max, position } = restriction;
|
|
44
|
+
restriction.min = {
|
|
45
|
+
x: this._snapLimitToGridMinimum(position.x + min.x, this._hCellSize) - position.x,
|
|
46
|
+
y: this._snapLimitToGridMinimum(position.y + min.y, this._vCellSize) - position.y,
|
|
47
|
+
};
|
|
48
|
+
restriction.max = {
|
|
49
|
+
x: this._snapLimitToGridMaximum(position.x + max.x, this._hCellSize) - position.x,
|
|
50
|
+
y: this._snapLimitToGridMaximum(position.y + max.y, this._vCellSize) - position.y,
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
_snapLimitToGridMinimum(value, cellSize) {
|
|
54
|
+
return Math.ceil(value / cellSize) * cellSize;
|
|
55
|
+
}
|
|
56
|
+
_snapLimitToGridMaximum(value, cellSize) {
|
|
57
|
+
return Math.floor(value / cellSize) * cellSize;
|
|
58
|
+
}
|
|
59
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CalculateCommonNodeMoveLimitsExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
60
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CalculateCommonNodeMoveLimitsExecution });
|
|
61
|
+
};
|
|
62
|
+
CalculateCommonNodeMoveLimitsExecution = __decorate([
|
|
63
|
+
FExecutionRegister(CalculateCommonNodeMoveLimitsRequest)
|
|
64
|
+
], CalculateCommonNodeMoveLimitsExecution);
|
|
65
|
+
export { CalculateCommonNodeMoveLimitsExecution };
|
|
66
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CalculateCommonNodeMoveLimitsExecution, decorators: [{
|
|
67
|
+
type: Injectable
|
|
68
|
+
}] });
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWNvbW1vbi1ub2RlLW1vdmUtbGltaXRzLmV4ZWN1dGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvbm9kZS9jcmVhdGUtbW92ZS1ub2Rlcy1kcmFnLW1vZGVsLWZyb20tc2VsZWN0aW9uL2RvbWFpbi9jYWxjdWxhdGUtY29tbW9uLW5vZGUtbW92ZS1saW1pdHMvY2FsY3VsYXRlLWNvbW1vbi1ub2RlLW1vdmUtbGltaXRzLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFFbkcsT0FBTyxFQUFFLGtCQUFrQixFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBTXJELElBQU0sc0NBQXNDLEdBQTVDLE1BQU0sc0NBQXNDO0lBR3pDLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBRXJELElBQVksVUFBVTtRQUNwQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFXLENBQUMsU0FBUyxDQUFDO0lBQ3RELENBQUM7SUFFRCxJQUFZLFVBQVU7UUFDcEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVyxDQUFDLFNBQVMsQ0FBQztJQUN0RCxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQTZDO1FBQ3pELE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRU8sc0JBQXNCLENBQUMsTUFBb0M7UUFDakUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQXVCLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDbEQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3pCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM1QyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDaEIsQ0FBQztJQUVPLGtCQUFrQixDQUFDLE1BQXVCLEVBQUUsQ0FBNkI7UUFDL0UsTUFBTSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDM0QsTUFBTSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDM0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVPLHFCQUFxQixDQUFDLE1BQWMsRUFBRSxJQUFZO1FBQ3hELE9BQU87WUFDTCxDQUFDLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDN0IsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1NBQzlCLENBQUE7SUFDSCxDQUFDO0lBRU8scUJBQXFCLENBQUMsTUFBYyxFQUFFLElBQVk7UUFDeEQsT0FBTztZQUNMLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUM3QixDQUFDLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7U0FDOUIsQ0FBQTtJQUNILENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxXQUF1QztRQUM5RCxNQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxXQUFXLENBQUM7UUFDM0MsV0FBVyxDQUFDLEdBQUcsR0FBRztZQUNoQixDQUFDLEVBQUUsSUFBSSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUM7WUFDakYsQ0FBQyxFQUFFLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDO1NBQ2xGLENBQUM7UUFDRixXQUFXLENBQUMsR0FBRyxHQUFHO1lBQ2hCLENBQUMsRUFBRSxJQUFJLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQztZQUNqRixDQUFDLEVBQUUsSUFBSSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUM7U0FDbEYsQ0FBQztJQUNKLENBQUM7SUFFTyx1QkFBdUIsQ0FBQyxLQUFhLEVBQUUsUUFBZ0I7UUFDN0QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUMsR0FBRyxRQUFRLENBQUM7SUFDaEQsQ0FBQztJQUVPLHVCQUF1QixDQUFDLEtBQWEsRUFBRSxRQUFnQjtRQUM3RCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxHQUFHLFFBQVEsQ0FBQztJQUNqRCxDQUFDO3VHQS9EVSxzQ0FBc0M7MkdBQXRDLHNDQUFzQzs7QUFBdEMsc0NBQXNDO0lBRGxELGtCQUFrQixDQUFDLG9DQUFvQyxDQUFDO0dBQzVDLHNDQUFzQyxDQWdFbEQ7OzJGQWhFWSxzQ0FBc0M7a0JBRmxELFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhbGN1bGF0ZUNvbW1vbk5vZGVNb3ZlTGltaXRzUmVxdWVzdCB9IGZyb20gJy4vY2FsY3VsYXRlLWNvbW1vbi1ub2RlLW1vdmUtbGltaXRzLnJlcXVlc3QnO1xuaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgSU5vZGVNb3ZlTGltaXRzQW5kUG9zaXRpb24gfSBmcm9tICcuLi8uLi9pLW5vZGUtbW92ZS1saW1pdHMtYW5kLXBvc2l0aW9uJztcbmltcG9ydCB7IElOb2RlTW92ZUxpbWl0cyB9IGZyb20gJy4uLy4uL2ktbm9kZS1tb3ZlLWxpbWl0cyc7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoQ2FsY3VsYXRlQ29tbW9uTm9kZU1vdmVMaW1pdHNSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIENhbGN1bGF0ZUNvbW1vbk5vZGVNb3ZlTGltaXRzRXhlY3V0aW9uXG4gIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxDYWxjdWxhdGVDb21tb25Ob2RlTW92ZUxpbWl0c1JlcXVlc3QsIElOb2RlTW92ZUxpbWl0cz4ge1xuXG4gIHByaXZhdGUgX2ZDb21wb25lbnRzU3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSk7XG5cbiAgcHJpdmF0ZSBnZXQgX3ZDZWxsU2l6ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9mQ29tcG9uZW50c1N0b3JlLmZEcmFnZ2FibGUhLnZDZWxsU2l6ZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF9oQ2VsbFNpemUoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fZkNvbXBvbmVudHNTdG9yZS5mRHJhZ2dhYmxlIS5oQ2VsbFNpemU7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IENhbGN1bGF0ZUNvbW1vbk5vZGVNb3ZlTGltaXRzUmVxdWVzdCk6IElOb2RlTW92ZUxpbWl0cyB7XG4gICAgcmV0dXJuIHRoaXMuX2NhbGN1bGF0ZUNvbW1vbkxpbWl0cyhyZXF1ZXN0LmxpbWl0cyk7XG4gIH1cblxuICBwcml2YXRlIF9jYWxjdWxhdGVDb21tb25MaW1pdHMobGltaXRzOiBJTm9kZU1vdmVMaW1pdHNBbmRQb3NpdGlvbltdKTogSU5vZGVNb3ZlTGltaXRzIHtcbiAgICB0aGlzLl9zbmFwTGltaXRUb0dyaWQobGltaXRzWzBdKTtcbiAgICByZXR1cm4gbGltaXRzLnJlZHVjZSgocmVzdWx0OiBJTm9kZU1vdmVMaW1pdHMsIHgpID0+IHtcbiAgICAgIHRoaXMuX3NuYXBMaW1pdFRvR3JpZCh4KTtcbiAgICAgIHJldHVybiB0aGlzLl9jbGFtcFJlc3RyaWN0aW9ucyhyZXN1bHQsIHgpO1xuICAgIH0sIGxpbWl0c1swXSk7XG4gIH1cblxuICBwcml2YXRlIF9jbGFtcFJlc3RyaWN0aW9ucyhjb21tb246IElOb2RlTW92ZUxpbWl0cywgeDogSU5vZGVNb3ZlTGltaXRzQW5kUG9zaXRpb24pOiBJTm9kZU1vdmVMaW1pdHMge1xuICAgIGNvbW1vbi5taW4gPSB0aGlzLl9jbGFtcE1pblJlc3RyaWN0aW9ucyhjb21tb24ubWluLCB4Lm1pbik7XG4gICAgY29tbW9uLm1heCA9IHRoaXMuX2NsYW1wTWF4UmVzdHJpY3Rpb25zKGNvbW1vbi5tYXgsIHgubWF4KTtcbiAgICByZXR1cm4gY29tbW9uO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2xhbXBNaW5SZXN0cmljdGlvbnMoY29tbW9uOiBJUG9pbnQsIG5vZGU6IElQb2ludCk6IElQb2ludCB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHg6IE1hdGgubWF4KGNvbW1vbi54LCBub2RlLngpLFxuICAgICAgeTogTWF0aC5tYXgoY29tbW9uLnksIG5vZGUueSksXG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfY2xhbXBNYXhSZXN0cmljdGlvbnMoY29tbW9uOiBJUG9pbnQsIG5vZGU6IElQb2ludCk6IElQb2ludCB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHg6IE1hdGgubWluKGNvbW1vbi54LCBub2RlLngpLFxuICAgICAgeTogTWF0aC5taW4oY29tbW9uLnksIG5vZGUueSksXG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfc25hcExpbWl0VG9HcmlkKHJlc3RyaWN0aW9uOiBJTm9kZU1vdmVMaW1pdHNBbmRQb3NpdGlvbik6IHZvaWQge1xuICAgIGNvbnN0IHsgbWluLCBtYXgsIHBvc2l0aW9uIH0gPSByZXN0cmljdGlvbjtcbiAgICByZXN0cmljdGlvbi5taW4gPSB7XG4gICAgICB4OiB0aGlzLl9zbmFwTGltaXRUb0dyaWRNaW5pbXVtKHBvc2l0aW9uLnggKyBtaW4ueCwgdGhpcy5faENlbGxTaXplKSAtIHBvc2l0aW9uLngsXG4gICAgICB5OiB0aGlzLl9zbmFwTGltaXRUb0dyaWRNaW5pbXVtKHBvc2l0aW9uLnkgKyBtaW4ueSwgdGhpcy5fdkNlbGxTaXplKSAtIHBvc2l0aW9uLnksXG4gICAgfTtcbiAgICByZXN0cmljdGlvbi5tYXggPSB7XG4gICAgICB4OiB0aGlzLl9zbmFwTGltaXRUb0dyaWRNYXhpbXVtKHBvc2l0aW9uLnggKyBtYXgueCwgdGhpcy5faENlbGxTaXplKSAtIHBvc2l0aW9uLngsXG4gICAgICB5OiB0aGlzLl9zbmFwTGltaXRUb0dyaWRNYXhpbXVtKHBvc2l0aW9uLnkgKyBtYXgueSwgdGhpcy5fdkNlbGxTaXplKSAtIHBvc2l0aW9uLnksXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgX3NuYXBMaW1pdFRvR3JpZE1pbmltdW0odmFsdWU6IG51bWJlciwgY2VsbFNpemU6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIE1hdGguY2VpbCh2YWx1ZSAvIGNlbGxTaXplKSAqIGNlbGxTaXplO1xuICB9XG5cbiAgcHJpdmF0ZSBfc25hcExpbWl0VG9HcmlkTWF4aW11bSh2YWx1ZTogbnVtYmVyLCBjZWxsU2l6ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gTWF0aC5mbG9vcih2YWx1ZSAvIGNlbGxTaXplKSAqIGNlbGxTaXplO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export class CalculateCommonNodeMoveLimitsRequest {
|
|
2
|
+
limits;
|
|
3
|
+
constructor(limits) {
|
|
4
|
+
this.limits = limits;
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWNvbW1vbi1ub2RlLW1vdmUtbGltaXRzLnJlcXVlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL25vZGUvY3JlYXRlLW1vdmUtbm9kZXMtZHJhZy1tb2RlbC1mcm9tLXNlbGVjdGlvbi9kb21haW4vY2FsY3VsYXRlLWNvbW1vbi1ub2RlLW1vdmUtbGltaXRzL2NhbGN1bGF0ZS1jb21tb24tbm9kZS1tb3ZlLWxpbWl0cy5yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxvQ0FBb0M7SUFHdEM7SUFEVCxZQUNTLE1BQW9DO1FBQXBDLFdBQU0sR0FBTixNQUFNLENBQThCO0lBRTdDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElOb2RlTW92ZUxpbWl0c0FuZFBvc2l0aW9uIH0gZnJvbSAnLi4vLi4vaS1ub2RlLW1vdmUtbGltaXRzLWFuZC1wb3NpdGlvbic7XG5cbmV4cG9ydCBjbGFzcyBDYWxjdWxhdGVDb21tb25Ob2RlTW92ZUxpbWl0c1JlcXVlc3Qge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBsaW1pdHM6IElOb2RlTW92ZUxpbWl0c0FuZFBvc2l0aW9uW11cbiAgKSB7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './calculate-common-node-move-limits.execution';
|
|
2
|
+
export * from './calculate-common-node-move-limits.request';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL25vZGUvY3JlYXRlLW1vdmUtbm9kZXMtZHJhZy1tb2RlbC1mcm9tLXNlbGVjdGlvbi9kb21haW4vY2FsY3VsYXRlLWNvbW1vbi1ub2RlLW1vdmUtbGltaXRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsK0NBQStDLENBQUM7QUFFOUQsY0FBYyw2Q0FBNkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2FsY3VsYXRlLWNvbW1vbi1ub2RlLW1vdmUtbGltaXRzLmV4ZWN1dGlvbic7XG5cbmV4cG9ydCAqIGZyb20gJy4vY2FsY3VsYXRlLWNvbW1vbi1ub2RlLW1vdmUtbGltaXRzLnJlcXVlc3QnO1xuIl19
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { inject, Injectable } from '@angular/core';
|
|
3
|
+
import { CalculateNodeMoveLimitsRequest } from './calculate-node-move-limits.request';
|
|
4
|
+
import { PointExtensions } from '@foblex/2d';
|
|
5
|
+
import { FExecutionRegister, FMediator } from '@foblex/mediator';
|
|
6
|
+
import { GetNormalizedParentNodeRectRequest } from '../../../../domain';
|
|
7
|
+
import { GetNormalizedElementRectRequest } from '../../../../../domain';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
let CalculateNodeMoveLimitsExecution = class CalculateNodeMoveLimitsExecution {
|
|
10
|
+
_fMediator = inject(FMediator);
|
|
11
|
+
handle(request) {
|
|
12
|
+
if (!request.fNode.fParentId || request.hasParentNodeInSelected) {
|
|
13
|
+
return { ...DEFAULT_LIMITS };
|
|
14
|
+
}
|
|
15
|
+
return this._calculateDifference(this._fParentRect(request.fNode), this._fNodeRect(request.fNode));
|
|
16
|
+
}
|
|
17
|
+
_fNodeRect(fNode) {
|
|
18
|
+
return this._fMediator.execute(new GetNormalizedElementRectRequest(fNode.hostElement, false));
|
|
19
|
+
}
|
|
20
|
+
_fParentRect(fNode) {
|
|
21
|
+
return this._fMediator.execute(new GetNormalizedParentNodeRectRequest(fNode));
|
|
22
|
+
}
|
|
23
|
+
_calculateDifference(fParentRect, fRect) {
|
|
24
|
+
return {
|
|
25
|
+
min: this._calculateMinimumDifference(fParentRect, fRect),
|
|
26
|
+
max: this._calculateMaximumDifference(fParentRect, fRect)
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
_calculateMinimumDifference(fParentRect, fRect) {
|
|
30
|
+
return PointExtensions.initialize(fParentRect.x - fRect.x, fParentRect.y - fRect.y);
|
|
31
|
+
}
|
|
32
|
+
_calculateMaximumDifference(fParentRect, fRect) {
|
|
33
|
+
return PointExtensions.initialize((fParentRect.x + fParentRect.width) - (fRect.x + fRect.width), (fParentRect.y + fParentRect.height) - (fRect.y + fRect.height));
|
|
34
|
+
}
|
|
35
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CalculateNodeMoveLimitsExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
36
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CalculateNodeMoveLimitsExecution });
|
|
37
|
+
};
|
|
38
|
+
CalculateNodeMoveLimitsExecution = __decorate([
|
|
39
|
+
FExecutionRegister(CalculateNodeMoveLimitsRequest)
|
|
40
|
+
], CalculateNodeMoveLimitsExecution);
|
|
41
|
+
export { CalculateNodeMoveLimitsExecution };
|
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CalculateNodeMoveLimitsExecution, decorators: [{
|
|
43
|
+
type: Injectable
|
|
44
|
+
}] });
|
|
45
|
+
const DEFAULT_LIMITS = {
|
|
46
|
+
min: PointExtensions.initialize(-Infinity, -Infinity),
|
|
47
|
+
max: PointExtensions.initialize(Infinity, Infinity)
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLW5vZGUtbW92ZS1saW1pdHMuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9ub2RlL2NyZWF0ZS1tb3ZlLW5vZGVzLWRyYWctbW9kZWwtZnJvbS1zZWxlY3Rpb24vZG9tYWluL2NhbGN1bGF0ZS1ub2RlLW1vdmUtbGltaXRzL2NhbGN1bGF0ZS1ub2RlLW1vdmUtbGltaXRzLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDdEYsT0FBTyxFQUFpQixlQUFlLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDNUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXhFLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQUtqRSxJQUFNLGdDQUFnQyxHQUF0QyxNQUFNLGdDQUFnQztJQUduQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRWhDLE1BQU0sQ0FBQyxPQUF1QztRQUNuRCxJQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxTQUFTLElBQUksT0FBTyxDQUFDLHVCQUF1QixFQUFFLENBQUM7WUFDL0QsT0FBTyxFQUFFLEdBQUcsY0FBYyxFQUFFLENBQUM7UUFDL0IsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUM5QixJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FDakUsQ0FBQztJQUNKLENBQUM7SUFFTyxVQUFVLENBQUMsS0FBZ0I7UUFDakMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBUSxJQUFJLCtCQUErQixDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN2RyxDQUFDO0lBRU8sWUFBWSxDQUFDLEtBQWdCO1FBQ25DLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQVEsSUFBSSxrQ0FBa0MsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7SUFFTyxvQkFBb0IsQ0FBQyxXQUFrQixFQUFFLEtBQVk7UUFDM0QsT0FBTztZQUNMLEdBQUcsRUFBRSxJQUFJLENBQUMsMkJBQTJCLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQztZQUN6RCxHQUFHLEVBQUUsSUFBSSxDQUFDLDJCQUEyQixDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUM7U0FDMUQsQ0FBQztJQUNKLENBQUM7SUFFTywyQkFBMkIsQ0FBQyxXQUFrQixFQUFFLEtBQVk7UUFDbEUsT0FBTyxlQUFlLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN0RixDQUFDO0lBRU8sMkJBQTJCLENBQUMsV0FBa0IsRUFBRSxLQUFZO1FBQ2xFLE9BQU8sZUFBZSxDQUFDLFVBQVUsQ0FDL0IsQ0FBQyxXQUFXLENBQUMsQ0FBQyxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUM3RCxDQUFDLFdBQVcsQ0FBQyxDQUFDLEdBQUcsV0FBVyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQ2hFLENBQUM7SUFDSixDQUFDO3VHQXZDVSxnQ0FBZ0M7MkdBQWhDLGdDQUFnQzs7QUFBaEMsZ0NBQWdDO0lBRDVDLGtCQUFrQixDQUFDLDhCQUE4QixDQUFDO0dBQ3RDLGdDQUFnQyxDQXdDNUM7OzJGQXhDWSxnQ0FBZ0M7a0JBRjVDLFVBQVU7O0FBNENYLE1BQU0sY0FBYyxHQUFvQjtJQUN0QyxHQUFHLEVBQUUsZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQztJQUNyRCxHQUFHLEVBQUUsZUFBZSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDO0NBQ3BELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhbGN1bGF0ZU5vZGVNb3ZlTGltaXRzUmVxdWVzdCB9IGZyb20gJy4vY2FsY3VsYXRlLW5vZGUtbW92ZS1saW1pdHMucmVxdWVzdCc7XG5pbXBvcnQgeyBJUG9pbnQsIElSZWN0LCBQb2ludEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBHZXROb3JtYWxpemVkUGFyZW50Tm9kZVJlY3RSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IEZOb2RlQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2Ytbm9kZSc7XG5pbXBvcnQgeyBHZXROb3JtYWxpemVkRWxlbWVudFJlY3RSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IElOb2RlTW92ZUxpbWl0cyB9IGZyb20gJy4uLy4uL2ktbm9kZS1tb3ZlLWxpbWl0cyc7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoQ2FsY3VsYXRlTm9kZU1vdmVMaW1pdHNSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIENhbGN1bGF0ZU5vZGVNb3ZlTGltaXRzRXhlY3V0aW9uXG4gIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxDYWxjdWxhdGVOb2RlTW92ZUxpbWl0c1JlcXVlc3QsIElOb2RlTW92ZUxpbWl0cz4ge1xuXG4gIHByaXZhdGUgX2ZNZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogQ2FsY3VsYXRlTm9kZU1vdmVMaW1pdHNSZXF1ZXN0KTogSU5vZGVNb3ZlTGltaXRzIHtcbiAgICBpZighcmVxdWVzdC5mTm9kZS5mUGFyZW50SWQgfHwgcmVxdWVzdC5oYXNQYXJlbnROb2RlSW5TZWxlY3RlZCkge1xuICAgICAgcmV0dXJuIHsgLi4uREVGQVVMVF9MSU1JVFMgfTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fY2FsY3VsYXRlRGlmZmVyZW5jZShcbiAgICAgIHRoaXMuX2ZQYXJlbnRSZWN0KHJlcXVlc3QuZk5vZGUpLCB0aGlzLl9mTm9kZVJlY3QocmVxdWVzdC5mTm9kZSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfZk5vZGVSZWN0KGZOb2RlOiBGTm9kZUJhc2UpOiBJUmVjdCB7XG4gICAgcmV0dXJuIHRoaXMuX2ZNZWRpYXRvci5leGVjdXRlPElSZWN0PihuZXcgR2V0Tm9ybWFsaXplZEVsZW1lbnRSZWN0UmVxdWVzdChmTm9kZS5ob3N0RWxlbWVudCwgZmFsc2UpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2ZQYXJlbnRSZWN0KGZOb2RlOiBGTm9kZUJhc2UpOiBJUmVjdCB7XG4gICAgcmV0dXJuIHRoaXMuX2ZNZWRpYXRvci5leGVjdXRlPElSZWN0PihuZXcgR2V0Tm9ybWFsaXplZFBhcmVudE5vZGVSZWN0UmVxdWVzdChmTm9kZSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlRGlmZmVyZW5jZShmUGFyZW50UmVjdDogSVJlY3QsIGZSZWN0OiBJUmVjdCk6IElOb2RlTW92ZUxpbWl0cyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG1pbjogdGhpcy5fY2FsY3VsYXRlTWluaW11bURpZmZlcmVuY2UoZlBhcmVudFJlY3QsIGZSZWN0KSxcbiAgICAgIG1heDogdGhpcy5fY2FsY3VsYXRlTWF4aW11bURpZmZlcmVuY2UoZlBhcmVudFJlY3QsIGZSZWN0KVxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIF9jYWxjdWxhdGVNaW5pbXVtRGlmZmVyZW5jZShmUGFyZW50UmVjdDogSVJlY3QsIGZSZWN0OiBJUmVjdCk6IElQb2ludCB7XG4gICAgcmV0dXJuIFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKGZQYXJlbnRSZWN0LnggLSBmUmVjdC54LCBmUGFyZW50UmVjdC55IC0gZlJlY3QueSk7XG4gIH1cblxuICBwcml2YXRlIF9jYWxjdWxhdGVNYXhpbXVtRGlmZmVyZW5jZShmUGFyZW50UmVjdDogSVJlY3QsIGZSZWN0OiBJUmVjdCk6IElQb2ludCB7XG4gICAgcmV0dXJuIFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKFxuICAgICAgKGZQYXJlbnRSZWN0LnggKyBmUGFyZW50UmVjdC53aWR0aCkgLSAoZlJlY3QueCArIGZSZWN0LndpZHRoKSxcbiAgICAgIChmUGFyZW50UmVjdC55ICsgZlBhcmVudFJlY3QuaGVpZ2h0KSAtIChmUmVjdC55ICsgZlJlY3QuaGVpZ2h0KSxcbiAgICApO1xuICB9XG59XG5cbmNvbnN0IERFRkFVTFRfTElNSVRTOiBJTm9kZU1vdmVMaW1pdHMgPSB7XG4gIG1pbjogUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoLUluZmluaXR5LCAtSW5maW5pdHkpLFxuICBtYXg6IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKEluZmluaXR5LCBJbmZpbml0eSlcbn07XG4iXX0=
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export class CalculateNodeMoveLimitsRequest {
|
|
2
|
+
fNode;
|
|
3
|
+
hasParentNodeInSelected;
|
|
4
|
+
constructor(fNode, hasParentNodeInSelected) {
|
|
5
|
+
this.fNode = fNode;
|
|
6
|
+
this.hasParentNodeInSelected = hasParentNodeInSelected;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLW5vZGUtbW92ZS1saW1pdHMucmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvbm9kZS9jcmVhdGUtbW92ZS1ub2Rlcy1kcmFnLW1vZGVsLWZyb20tc2VsZWN0aW9uL2RvbWFpbi9jYWxjdWxhdGUtbm9kZS1tb3ZlLWxpbWl0cy9jYWxjdWxhdGUtbm9kZS1tb3ZlLWxpbWl0cy5yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyw4QkFBOEI7SUFHaEM7SUFDQTtJQUZULFlBQ1MsS0FBZ0IsRUFDaEIsdUJBQWdDO1FBRGhDLFVBQUssR0FBTCxLQUFLLENBQVc7UUFDaEIsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUFTO0lBRXpDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZOb2RlQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2Ytbm9kZSc7XG5cbmV4cG9ydCBjbGFzcyBDYWxjdWxhdGVOb2RlTW92ZUxpbWl0c1JlcXVlc3Qge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBmTm9kZTogRk5vZGVCYXNlLFxuICAgIHB1YmxpYyBoYXNQYXJlbnROb2RlSW5TZWxlY3RlZDogYm9vbGVhblxuICApIHtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './calculate-node-move-limits.execution';
|
|
2
|
+
export * from './calculate-node-move-limits.request';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL25vZGUvY3JlYXRlLW1vdmUtbm9kZXMtZHJhZy1tb2RlbC1mcm9tLXNlbGVjdGlvbi9kb21haW4vY2FsY3VsYXRlLW5vZGUtbW92ZS1saW1pdHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx3Q0FBd0MsQ0FBQztBQUV2RCxjQUFjLHNDQUFzQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jYWxjdWxhdGUtbm9kZS1tb3ZlLWxpbWl0cy5leGVjdXRpb24nO1xuXG5leHBvcnQgKiBmcm9tICcuL2NhbGN1bGF0ZS1ub2RlLW1vdmUtbGltaXRzLnJlcXVlc3QnO1xuIl19
|
|
@@ -2,58 +2,50 @@ import { __decorate } from "tslib";
|
|
|
2
2
|
import { inject, Injectable } from '@angular/core';
|
|
3
3
|
import { PutInputConnectionHandlersToArrayRequest } from './put-input-connection-handlers-to-array.request';
|
|
4
4
|
import { FComponentsStore } from '../../../../../f-storage';
|
|
5
|
-
import { FExecutionRegister
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
5
|
+
import { FExecutionRegister } from '@foblex/mediator';
|
|
6
|
+
import { SourceTargetConnectionDragHandler } from '../../../connection-drag-handlers/source-target-connection.drag-handler';
|
|
7
|
+
import { TargetConnectionDragHandler } from '../../../connection-drag-handlers/target-connection.drag-handler';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
9
9
|
let PutInputConnectionHandlersToArrayExecution = class PutInputConnectionHandlersToArrayExecution {
|
|
10
|
-
_fMediator = inject(FMediator);
|
|
11
10
|
_fComponentsStore = inject(FComponentsStore);
|
|
12
11
|
get _fConnections() {
|
|
13
12
|
return this._fComponentsStore.fConnections;
|
|
14
13
|
}
|
|
15
14
|
handle(request) {
|
|
16
|
-
this.
|
|
17
|
-
|
|
18
|
-
if (index !== -1) {
|
|
19
|
-
this.updateExistingConnectionHandler(request.result, index, request.nodeDragHandler);
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
22
|
-
request.result.push(this.createNewConnectionHandler(request.nodeDragHandler, request.outputIds, connection));
|
|
23
|
-
}
|
|
15
|
+
this._getInputConnections(request.fDragHandler.fNode).forEach((fConnection) => {
|
|
16
|
+
this._createAndSetConnectionToNodeHandler(fConnection, request);
|
|
24
17
|
});
|
|
25
18
|
}
|
|
26
|
-
|
|
27
|
-
const
|
|
28
|
-
return this._fConnections.filter((x) =>
|
|
19
|
+
_getInputConnections(fNode) {
|
|
20
|
+
const ids = new Set(this._getNodeInputIds(fNode));
|
|
21
|
+
return this._fConnections.filter((x) => ids.has(x.fInputId));
|
|
29
22
|
}
|
|
30
|
-
|
|
31
|
-
return this._fComponentsStore.fInputs
|
|
23
|
+
_getNodeInputIds(fNode) {
|
|
24
|
+
return this._fComponentsStore.fInputs
|
|
25
|
+
.filter((x) => fNode.isContains(x.hostElement))
|
|
26
|
+
.map((x) => x.fId);
|
|
32
27
|
}
|
|
33
|
-
|
|
34
|
-
|
|
28
|
+
_createAndSetConnectionToNodeHandler(fConnection, request) {
|
|
29
|
+
let fHandler = this._getExistingConnectionHandler(request.result, fConnection);
|
|
30
|
+
if (!fHandler) {
|
|
31
|
+
fHandler = this._createConnectionHandler(request.outputIds, fConnection);
|
|
32
|
+
request.result.push(fHandler);
|
|
33
|
+
}
|
|
34
|
+
request.fDragHandler.fTargetHandlers.push(fHandler);
|
|
35
|
+
}
|
|
36
|
+
_getExistingConnectionHandler(fHandlers, fConnection) {
|
|
37
|
+
return fHandlers.find((x) => x.fConnection.fId === fConnection.fId);
|
|
35
38
|
}
|
|
36
|
-
|
|
39
|
+
_createConnectionHandler(outputIds, fConnection) {
|
|
37
40
|
let result;
|
|
38
|
-
if (outputIds.includes(
|
|
39
|
-
result =
|
|
41
|
+
if (outputIds.includes(fConnection.fOutputId)) {
|
|
42
|
+
result = new SourceTargetConnectionDragHandler(fConnection);
|
|
40
43
|
}
|
|
41
44
|
else {
|
|
42
|
-
result =
|
|
45
|
+
result = new TargetConnectionDragHandler(fConnection);
|
|
43
46
|
}
|
|
44
47
|
return result;
|
|
45
48
|
}
|
|
46
|
-
getNewConnectionHandler(connection, nodeDragHandler) {
|
|
47
|
-
const handler = new ConnectionDragHandler(this._fMediator, this._fComponentsStore, connection);
|
|
48
|
-
handler.setInputRestrictions(nodeDragHandler.restrictions);
|
|
49
|
-
return handler;
|
|
50
|
-
}
|
|
51
|
-
updateExistingConnectionHandler(result, index, nodeDragHandler) {
|
|
52
|
-
result[index].setInputRestrictions(nodeDragHandler.restrictions);
|
|
53
|
-
}
|
|
54
|
-
getNewSourceConnectionHandler(connection, nodeDragHandler) {
|
|
55
|
-
return new ConnectionTargetDragHandler(this._fMediator, this._fComponentsStore, connection, nodeDragHandler.restrictions);
|
|
56
|
-
}
|
|
57
49
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: PutInputConnectionHandlersToArrayExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
58
50
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: PutInputConnectionHandlersToArrayExecution });
|
|
59
51
|
};
|
|
@@ -64,4 +56,4 @@ export { PutInputConnectionHandlersToArrayExecution };
|
|
|
64
56
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: PutInputConnectionHandlersToArrayExecution, decorators: [{
|
|
65
57
|
type: Injectable
|
|
66
58
|
}] });
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHV0LWlucHV0LWNvbm5lY3Rpb24taGFuZGxlcnMtdG8tYXJyYXkuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9ub2RlL2NyZWF0ZS1tb3ZlLW5vZGVzLWRyYWctbW9kZWwtZnJvbS1zZWxlY3Rpb24vZG9tYWluL3B1dC1pbnB1dC1jb25uZWN0aW9uLWhhbmRsZXJzLXRvLWFycmF5L3B1dC1pbnB1dC1jb25uZWN0aW9uLWhhbmRsZXJzLXRvLWFycmF5LmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLHdDQUF3QyxFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDNUcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGtCQUFrQixFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFJbEUsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0seUVBQXlFLENBQUM7QUFDNUgsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sa0VBQWtFLENBQUM7O0FBSXhHLElBQU0sMENBQTBDLEdBQWhELE1BQU0sMENBQTBDO0lBRzdDLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBRXJELElBQVksYUFBYTtRQUN2QixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLENBQUM7SUFDN0MsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUFpRDtRQUM3RCxJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRTtZQUM1RSxJQUFJLENBQUMsb0NBQW9DLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2xFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLG9CQUFvQixDQUFDLEtBQWdCO1FBQzNDLE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ2xELE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVPLGdCQUFnQixDQUFDLEtBQWdCO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU87YUFDbEMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQzthQUM5QyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBRU8sb0NBQW9DLENBQUMsV0FBNEIsRUFBRSxPQUFpRDtRQUMxSCxJQUFJLFFBQVEsR0FBRyxJQUFJLENBQUMsNkJBQTZCLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxXQUFXLENBQUMsQ0FBQztRQUMvRSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDZCxRQUFRLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsV0FBVyxDQUFDLENBQUM7WUFDekUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEMsQ0FBQztRQUNELE9BQU8sQ0FBQyxZQUFZLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRU8sNkJBQTZCLENBQUMsU0FBc0MsRUFBRSxXQUE0QjtRQUN4RyxPQUFPLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsR0FBRyxLQUFLLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRU8sd0JBQXdCLENBQUMsU0FBbUIsRUFBRSxXQUE0QjtRQUNoRixJQUFJLE1BQTZDLENBQUM7UUFDbEQsSUFBSSxTQUFTLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQzlDLE1BQU0sR0FBRyxJQUFJLGlDQUFpQyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzlELENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxHQUFHLElBQUksMkJBQTJCLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDeEQsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7dUdBL0NVLDBDQUEwQzsyR0FBMUMsMENBQTBDOztBQUExQywwQ0FBMEM7SUFEdEQsa0JBQWtCLENBQUMsd0NBQXdDLENBQUM7R0FDaEQsMENBQTBDLENBZ0R0RDs7MkZBaERZLDBDQUEwQztrQkFGdEQsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUHV0SW5wdXRDb25uZWN0aW9uSGFuZGxlcnNUb0FycmF5UmVxdWVzdCB9IGZyb20gJy4vcHV0LWlucHV0LWNvbm5lY3Rpb24taGFuZGxlcnMtdG8tYXJyYXkucmVxdWVzdCc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgRk5vZGVCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZi1ub2RlJztcbmltcG9ydCB7IEZDb25uZWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2YtY29ubmVjdGlvbic7XG5pbXBvcnQgeyBCYXNlQ29ubmVjdGlvbkRyYWdIYW5kbGVyIH0gZnJvbSAnLi4vLi4vLi4vY29ubmVjdGlvbi1kcmFnLWhhbmRsZXJzL2Jhc2UtY29ubmVjdGlvbi5kcmFnLWhhbmRsZXInO1xuaW1wb3J0IHsgU291cmNlVGFyZ2V0Q29ubmVjdGlvbkRyYWdIYW5kbGVyIH0gZnJvbSAnLi4vLi4vLi4vY29ubmVjdGlvbi1kcmFnLWhhbmRsZXJzL3NvdXJjZS10YXJnZXQtY29ubmVjdGlvbi5kcmFnLWhhbmRsZXInO1xuaW1wb3J0IHsgVGFyZ2V0Q29ubmVjdGlvbkRyYWdIYW5kbGVyIH0gZnJvbSAnLi4vLi4vLi4vY29ubmVjdGlvbi1kcmFnLWhhbmRsZXJzL3RhcmdldC1jb25uZWN0aW9uLmRyYWctaGFuZGxlcic7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoUHV0SW5wdXRDb25uZWN0aW9uSGFuZGxlcnNUb0FycmF5UmVxdWVzdClcbmV4cG9ydCBjbGFzcyBQdXRJbnB1dENvbm5lY3Rpb25IYW5kbGVyc1RvQXJyYXlFeGVjdXRpb25cbiAgaW1wbGVtZW50cyBJRXhlY3V0aW9uPFB1dElucHV0Q29ubmVjdGlvbkhhbmRsZXJzVG9BcnJheVJlcXVlc3QsIHZvaWQ+IHtcblxuICBwcml2YXRlIF9mQ29tcG9uZW50c1N0b3JlID0gaW5qZWN0KEZDb21wb25lbnRzU3RvcmUpO1xuXG4gIHByaXZhdGUgZ2V0IF9mQ29ubmVjdGlvbnMoKTogRkNvbm5lY3Rpb25CYXNlW10ge1xuICAgIHJldHVybiB0aGlzLl9mQ29tcG9uZW50c1N0b3JlLmZDb25uZWN0aW9ucztcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogUHV0SW5wdXRDb25uZWN0aW9uSGFuZGxlcnNUb0FycmF5UmVxdWVzdCk6IHZvaWQge1xuICAgIHRoaXMuX2dldElucHV0Q29ubmVjdGlvbnMocmVxdWVzdC5mRHJhZ0hhbmRsZXIuZk5vZGUpLmZvckVhY2goKGZDb25uZWN0aW9uKSA9PiB7XG4gICAgICB0aGlzLl9jcmVhdGVBbmRTZXRDb25uZWN0aW9uVG9Ob2RlSGFuZGxlcihmQ29ubmVjdGlvbiwgcmVxdWVzdCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRJbnB1dENvbm5lY3Rpb25zKGZOb2RlOiBGTm9kZUJhc2UpOiBGQ29ubmVjdGlvbkJhc2VbXSB7XG4gICAgY29uc3QgaWRzID0gbmV3IFNldCh0aGlzLl9nZXROb2RlSW5wdXRJZHMoZk5vZGUpKTtcbiAgICByZXR1cm4gdGhpcy5fZkNvbm5lY3Rpb25zLmZpbHRlcigoeCkgPT4gaWRzLmhhcyh4LmZJbnB1dElkKSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXROb2RlSW5wdXRJZHMoZk5vZGU6IEZOb2RlQmFzZSk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy5fZkNvbXBvbmVudHNTdG9yZS5mSW5wdXRzXG4gICAgICAuZmlsdGVyKCh4KSA9PiBmTm9kZS5pc0NvbnRhaW5zKHguaG9zdEVsZW1lbnQpKVxuICAgICAgLm1hcCgoeCkgPT4geC5mSWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY3JlYXRlQW5kU2V0Q29ubmVjdGlvblRvTm9kZUhhbmRsZXIoZkNvbm5lY3Rpb246IEZDb25uZWN0aW9uQmFzZSwgcmVxdWVzdDogUHV0SW5wdXRDb25uZWN0aW9uSGFuZGxlcnNUb0FycmF5UmVxdWVzdCk6IHZvaWQge1xuICAgIGxldCBmSGFuZGxlciA9IHRoaXMuX2dldEV4aXN0aW5nQ29ubmVjdGlvbkhhbmRsZXIocmVxdWVzdC5yZXN1bHQsIGZDb25uZWN0aW9uKTtcbiAgICBpZiAoIWZIYW5kbGVyKSB7XG4gICAgICBmSGFuZGxlciA9IHRoaXMuX2NyZWF0ZUNvbm5lY3Rpb25IYW5kbGVyKHJlcXVlc3Qub3V0cHV0SWRzLCBmQ29ubmVjdGlvbik7XG4gICAgICByZXF1ZXN0LnJlc3VsdC5wdXNoKGZIYW5kbGVyKTtcbiAgICB9XG4gICAgcmVxdWVzdC5mRHJhZ0hhbmRsZXIuZlRhcmdldEhhbmRsZXJzLnB1c2goZkhhbmRsZXIpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0RXhpc3RpbmdDb25uZWN0aW9uSGFuZGxlcihmSGFuZGxlcnM6IEJhc2VDb25uZWN0aW9uRHJhZ0hhbmRsZXJbXSwgZkNvbm5lY3Rpb246IEZDb25uZWN0aW9uQmFzZSk6IEJhc2VDb25uZWN0aW9uRHJhZ0hhbmRsZXIgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiBmSGFuZGxlcnMuZmluZCgoeCkgPT4geC5mQ29ubmVjdGlvbi5mSWQgPT09IGZDb25uZWN0aW9uLmZJZCk7XG4gIH1cblxuICBwcml2YXRlIF9jcmVhdGVDb25uZWN0aW9uSGFuZGxlcihvdXRwdXRJZHM6IHN0cmluZ1tdLCBmQ29ubmVjdGlvbjogRkNvbm5lY3Rpb25CYXNlKTogQmFzZUNvbm5lY3Rpb25EcmFnSGFuZGxlciB7XG4gICAgbGV0IHJlc3VsdDogQmFzZUNvbm5lY3Rpb25EcmFnSGFuZGxlciB8IHVuZGVmaW5lZDtcbiAgICBpZiAob3V0cHV0SWRzLmluY2x1ZGVzKGZDb25uZWN0aW9uLmZPdXRwdXRJZCkpIHtcbiAgICAgIHJlc3VsdCA9IG5ldyBTb3VyY2VUYXJnZXRDb25uZWN0aW9uRHJhZ0hhbmRsZXIoZkNvbm5lY3Rpb24pO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXN1bHQgPSBuZXcgVGFyZ2V0Q29ubmVjdGlvbkRyYWdIYW5kbGVyKGZDb25uZWN0aW9uKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxufVxuXG4iXX0=
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
export class PutInputConnectionHandlersToArrayRequest {
|
|
2
|
-
|
|
2
|
+
fDragHandler;
|
|
3
3
|
outputIds;
|
|
4
4
|
result;
|
|
5
|
-
constructor(
|
|
6
|
-
this.
|
|
5
|
+
constructor(fDragHandler, outputIds, result) {
|
|
6
|
+
this.fDragHandler = fDragHandler;
|
|
7
7
|
this.outputIds = outputIds;
|
|
8
8
|
this.result = result;
|
|
9
9
|
}
|
|
10
10
|
}
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHV0LWlucHV0LWNvbm5lY3Rpb24taGFuZGxlcnMtdG8tYXJyYXkucmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvbm9kZS9jcmVhdGUtbW92ZS1ub2Rlcy1kcmFnLW1vZGVsLWZyb20tc2VsZWN0aW9uL2RvbWFpbi9wdXQtaW5wdXQtY29ubmVjdGlvbi1oYW5kbGVycy10by1hcnJheS9wdXQtaW5wdXQtY29ubmVjdGlvbi1oYW5kbGVycy10by1hcnJheS5yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sT0FBTyx3Q0FBd0M7SUFHMUM7SUFDQTtJQUNBO0lBSFQsWUFDUyxZQUE2QixFQUM3QixTQUFtQixFQUNuQixNQUFtQztRQUZuQyxpQkFBWSxHQUFaLFlBQVksQ0FBaUI7UUFDN0IsY0FBUyxHQUFULFNBQVMsQ0FBVTtRQUNuQixXQUFNLEdBQU4sTUFBTSxDQUE2QjtJQUU1QyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOb2RlRHJhZ0hhbmRsZXIgfSBmcm9tICcuLi8uLi8uLi9ub2RlLmRyYWctaGFuZGxlcic7XG5pbXBvcnQgeyBCYXNlQ29ubmVjdGlvbkRyYWdIYW5kbGVyIH0gZnJvbSAnLi4vLi4vLi4vY29ubmVjdGlvbi1kcmFnLWhhbmRsZXJzL2Jhc2UtY29ubmVjdGlvbi5kcmFnLWhhbmRsZXInO1xuXG5leHBvcnQgY2xhc3MgUHV0SW5wdXRDb25uZWN0aW9uSGFuZGxlcnNUb0FycmF5UmVxdWVzdCB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGZEcmFnSGFuZGxlcjogTm9kZURyYWdIYW5kbGVyLFxuICAgIHB1YmxpYyBvdXRwdXRJZHM6IHN0cmluZ1tdLFxuICAgIHB1YmxpYyByZXN1bHQ6IEJhc2VDb25uZWN0aW9uRHJhZ0hhbmRsZXJbXVxuICApIHtcbiAgfVxufVxuIl19
|