@foblex/flow 17.8.4 → 17.8.6
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/drag-rect-cache.d.ts +8 -0
- package/domain/f-background/providers.d.ts +1 -1
- package/domain/f-canvas/providers.d.ts +1 -1
- package/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior-request.d.ts +7 -7
- package/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior.d.ts +37 -3
- package/domain/f-connection/calculate-connection-line-by-behavior/index.d.ts +4 -3
- package/domain/f-connection/calculate-connection-line-by-behavior/models/calculate-behavior-request.d.ts +8 -0
- package/domain/f-connection/calculate-connection-line-by-behavior/{fixed-center-behavior.d.ts → utils/fixed-center-behavior.d.ts} +2 -2
- package/domain/f-connection/calculate-connection-line-by-behavior/{fixed-outbound-behavior.d.ts → utils/fixed-outbound-behavior.d.ts} +2 -2
- package/domain/f-connection/calculate-connection-line-by-behavior/{floating-behavior.d.ts → utils/floating-behavior.d.ts} +2 -2
- package/domain/f-connection/providers.d.ts +2 -2
- package/domain/f-connection/redraw-connections/index.d.ts +1 -1
- package/domain/f-connection/redraw-connections/{redraw-connections.execution.d.ts → redraw-connections.d.ts} +3 -3
- package/domain/f-connectors/calculate-source-connectors-to-connect/calculate-source-connectors-to-connect-request.d.ts +8 -0
- package/domain/f-connectors/calculate-source-connectors-to-connect/calculate-source-connectors-to-connect.d.ts +21 -0
- package/domain/f-connectors/calculate-source-connectors-to-connect/index.d.ts +2 -0
- package/domain/f-connectors/calculate-target-connectors-to-connect/calculate-target-connectors-to-connect-request.d.ts +8 -0
- package/domain/f-connectors/calculate-target-connectors-to-connect/calculate-target-connectors-to-connect.d.ts +20 -0
- package/domain/f-connectors/calculate-target-connectors-to-connect/index.d.ts +2 -0
- package/domain/f-connectors/index.d.ts +2 -2
- package/domain/f-connectors/providers.d.ts +3 -3
- package/domain/f-draggable/emit-selection-change-event/emit-selection-change-event.execution.d.ts +1 -1
- package/domain/f-event-trigger.d.ts +1 -1
- package/domain/f-line-alignment/add-line-alignment-to-store/add-line-alignment-to-store-request.d.ts +2 -2
- package/domain/f-line-alignment/add-line-alignment-to-store/{add-line-alignment-to-store.execution.d.ts → add-line-alignment-to-store.d.ts} +4 -4
- package/domain/f-line-alignment/add-line-alignment-to-store/index.d.ts +1 -1
- package/domain/f-line-alignment/providers.d.ts +3 -3
- package/domain/f-line-alignment/remove-line-alignment-from-store/index.d.ts +1 -1
- package/domain/f-line-alignment/remove-line-alignment-from-store/{remove-line-alignment-from-store.execution.d.ts → remove-line-alignment-from-store.d.ts} +4 -4
- package/domain/f-node/add-node-to-store/add-node-to-store-request.d.ts +2 -2
- package/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions-request.d.ts +8 -0
- package/domain/f-node/{calculate-node-connectors-connectable-sides → calculate-connectors-connectable-sides}/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions.d.ts +2 -28
- package/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position.d.ts +52 -0
- package/domain/f-node/calculate-connectors-connectable-sides/calculate-connectors-connectable-sides-request.d.ts +6 -0
- package/domain/f-node/calculate-connectors-connectable-sides/calculate-connectors-connectable-sides.d.ts +22 -0
- package/domain/f-node/calculate-connectors-connectable-sides/constants/calculatable-sides.d.ts +6 -0
- package/domain/f-node/calculate-connectors-connectable-sides/constants/index.d.ts +1 -0
- package/domain/f-node/calculate-connectors-connectable-sides/index.d.ts +7 -0
- package/domain/f-node/calculate-connectors-connectable-sides/models/index.d.ts +1 -0
- package/domain/f-node/calculate-connectors-connectable-sides/models/t-calculate-mode.d.ts +2 -0
- package/domain/f-node/calculate-connectors-connectable-sides/utils/determine-side.d.ts +10 -0
- package/domain/f-node/calculate-connectors-connectable-sides/utils/index.d.ts +2 -0
- package/domain/f-node/calculate-connectors-connectable-sides/utils/is-calculate-mode.d.ts +7 -0
- package/domain/f-node/calculate-input-connections/calculate-input-connections-request.d.ts +2 -2
- package/domain/f-node/calculate-input-connections/calculate-input-connections.d.ts +3 -3
- package/domain/f-node/calculate-nodes-bounding-box/calculate-nodes-bounding-box.d.ts +2 -3
- package/domain/f-node/calculate-output-connections/calculate-output-connections-request.d.ts +2 -2
- package/domain/f-node/calculate-output-connections/calculate-output-connections.d.ts +3 -3
- package/domain/f-node/get-parent-nodes/get-parent-nodes.d.ts +1 -1
- package/domain/f-node/get-parent-nodes/get-parent-nodes.request.d.ts +2 -2
- package/domain/f-node/index.d.ts +1 -2
- package/domain/f-node/providers.d.ts +2 -3
- package/domain/f-node/remove-node-from-store/remove-node-from-store-request.d.ts +2 -2
- package/domain/f-node/remove-node-from-store/remove-node-from-store.d.ts +1 -1
- package/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.execution.d.ts +2 -2
- package/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.request.d.ts +2 -2
- package/domain/index.d.ts +1 -0
- package/domain/providers.d.ts +4 -3
- package/domain/update-item-and-children-layers/move-front-elements-before-target-element/index.d.ts +2 -2
- package/domain/update-item-and-children-layers/move-front-elements-before-target-element/{move-front-elements-before-target-element.request.d.ts → move-front-elements-before-target-element-request.d.ts} +4 -4
- package/domain/update-item-and-children-layers/move-front-elements-before-target-element/{move-front-elements-before-target-element.execution.d.ts → move-front-elements-before-target-element.d.ts} +4 -4
- package/esm2022/domain/css-cls.mjs +2 -1
- package/esm2022/domain/drag-rect-cache.mjs +19 -0
- package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior-request.mjs +4 -4
- package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior.mjs +126 -13
- package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/index.mjs +5 -4
- package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/models/calculate-behavior-request.mjs +2 -0
- package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/utils/fixed-center-behavior.mjs +12 -0
- package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/utils/fixed-outbound-behavior.mjs +31 -0
- package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/utils/floating-behavior.mjs +22 -0
- package/esm2022/domain/f-connection/providers.mjs +3 -3
- package/esm2022/domain/f-connection/redraw-connections/index.mjs +2 -2
- package/esm2022/domain/f-connection/redraw-connections/redraw-connections.mjs +75 -0
- package/esm2022/domain/f-connectors/calculate-source-connectors-to-connect/calculate-source-connectors-to-connect-request.mjs +10 -0
- package/esm2022/domain/f-connectors/calculate-source-connectors-to-connect/calculate-source-connectors-to-connect.mjs +59 -0
- package/esm2022/domain/f-connectors/calculate-source-connectors-to-connect/index.mjs +3 -0
- package/esm2022/domain/f-connectors/calculate-target-connectors-to-connect/calculate-target-connectors-to-connect-request.mjs +10 -0
- package/esm2022/domain/f-connectors/calculate-target-connectors-to-connect/calculate-target-connectors-to-connect.mjs +64 -0
- package/esm2022/domain/f-connectors/calculate-target-connectors-to-connect/index.mjs +3 -0
- package/esm2022/domain/f-connectors/index.mjs +3 -3
- package/esm2022/domain/f-connectors/providers.mjs +5 -5
- package/esm2022/domain/f-draggable/emit-selection-change-event/emit-selection-change-event-request.mjs +1 -1
- package/esm2022/domain/f-draggable/emit-selection-change-event/emit-selection-change-event.execution.mjs +2 -2
- package/esm2022/domain/f-event-trigger.mjs +2 -2
- package/esm2022/domain/f-line-alignment/add-line-alignment-to-store/add-line-alignment-to-store-request.mjs +4 -4
- package/esm2022/domain/f-line-alignment/add-line-alignment-to-store/add-line-alignment-to-store.mjs +25 -0
- package/esm2022/domain/f-line-alignment/add-line-alignment-to-store/index.mjs +2 -2
- package/esm2022/domain/f-line-alignment/providers.mjs +4 -7
- package/esm2022/domain/f-line-alignment/remove-line-alignment-from-store/index.mjs +2 -2
- package/esm2022/domain/f-line-alignment/remove-line-alignment-from-store/remove-line-alignment-from-store.mjs +25 -0
- package/esm2022/domain/f-node/add-node-to-store/add-node-to-store-request.mjs +4 -4
- package/esm2022/domain/f-node/add-node-to-store/add-node-to-store.mjs +2 -2
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions-request.mjs +10 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions.mjs +59 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/index.mjs +3 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position-request.mjs +8 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position.mjs +132 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-internal-position/index.mjs +3 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectors-connectable-sides-request.mjs +8 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectors-connectable-sides.mjs +73 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/constants/calculatable-sides.mjs +12 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/constants/index.mjs +2 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/index.mjs +8 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/models/index.mjs +2 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/models/t-calculate-mode.mjs +2 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/utils/determine-side.mjs +124 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/utils/index.mjs +3 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/utils/is-calculate-mode.mjs +12 -0
- package/esm2022/domain/f-node/calculate-input-connections/calculate-input-connections-request.mjs +4 -4
- package/esm2022/domain/f-node/calculate-input-connections/calculate-input-connections.mjs +20 -7
- package/esm2022/domain/f-node/calculate-nodes-bounding-box/calculate-nodes-bounding-box.mjs +5 -8
- package/esm2022/domain/f-node/calculate-nodes-bounding-box-normalized-position/calculate-nodes-bounding-box-normalized-position.mjs +1 -1
- package/esm2022/domain/f-node/calculate-output-connections/calculate-output-connections-request.mjs +4 -4
- package/esm2022/domain/f-node/calculate-output-connections/calculate-output-connections.mjs +20 -7
- package/esm2022/domain/f-node/fit-to-child-nodes-and-groups/fit-to-child-nodes-and-groups-request.mjs +1 -1
- package/esm2022/domain/f-node/get-child-node-ids/get-child-node-ids.request.mjs +1 -1
- package/esm2022/domain/f-node/get-parent-nodes/get-parent-nodes.mjs +8 -8
- package/esm2022/domain/f-node/get-parent-nodes/get-parent-nodes.request.mjs +4 -4
- package/esm2022/domain/f-node/index.mjs +2 -3
- package/esm2022/domain/f-node/providers.mjs +3 -5
- package/esm2022/domain/f-node/remove-node-from-store/remove-node-from-store-request.mjs +4 -4
- package/esm2022/domain/f-node/remove-node-from-store/remove-node-from-store.mjs +3 -3
- package/esm2022/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed.mjs +3 -3
- package/esm2022/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.execution.mjs +5 -5
- package/esm2022/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.request.mjs +4 -4
- package/esm2022/domain/get-normalized-connector-rect/get-normalized-connector-rect-request.mjs +1 -1
- package/esm2022/domain/get-normalized-connector-rect/get-normalized-connector-rect.execution.mjs +2 -2
- package/esm2022/domain/get-normalized-element-rect/get-normalized-element-rect.execution.mjs +2 -14
- package/esm2022/domain/get-normalized-point/get-normalized-point.execution.mjs +4 -1
- package/esm2022/domain/index.mjs +2 -1
- package/esm2022/domain/is-mobile.mjs +5 -3
- package/esm2022/domain/providers.mjs +5 -5
- package/esm2022/domain/update-item-and-children-layers/move-front-elements-before-target-element/index.mjs +3 -3
- package/esm2022/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element-request.mjs +15 -0
- package/esm2022/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element.mjs +34 -0
- package/esm2022/f-connection/common/domain/adaptive-curve-builder.mjs +201 -0
- package/esm2022/f-connection/common/domain/index.mjs +2 -1
- package/esm2022/f-connection/common/e-f-connection-connectable-side.mjs +12 -0
- package/esm2022/f-connection/common/e-f-connection-type.mjs +2 -1
- package/esm2022/f-connection/common/f-connection-base.mjs +28 -5
- package/esm2022/f-connection/common/index.mjs +2 -1
- package/esm2022/f-connection/f-connection/f-connection.component.mjs +13 -3
- package/esm2022/f-connection/f-connection-builder/f-connection-factory.mjs +9 -17
- package/esm2022/f-connection/f-connection-content/f-connection-content.mjs +10 -4
- package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-content-layout-engine.mjs +4 -5
- package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-content-place.mjs +3 -2
- package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +14 -4
- package/esm2022/f-connection/f-snap-connection/f-snap-connection.component.mjs +14 -4
- package/esm2022/f-connectors/f-node-output/f-node-output.directive.mjs +1 -1
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/create-connection-preparation-request.mjs +10 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/create-connection-preparation.mjs +58 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/create-connection-from-output-preparation-request.mjs +10 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/create-connection-from-output-preparation.mjs +47 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/index.mjs +3 -3
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/index.mjs +3 -3
- package/esm2022/f-draggable/f-connection/f-create-connection/f-create-connection.drag-handler.mjs +12 -12
- package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-source.drag-handler.mjs +7 -7
- package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-target.drag-handler.mjs +10 -10
- package/esm2022/f-draggable/f-connection/providers.mjs +4 -4
- package/esm2022/f-draggable/f-draggable.directive.mjs +5 -4
- package/esm2022/f-draggable/f-drop-to-group/drop-to-group-preparation/drop-to-group-preparation-request.mjs +1 -1
- package/esm2022/f-draggable/f-drop-to-group/drop-to-group-preparation/drop-to-group-preparation.mjs +11 -13
- package/esm2022/f-draggable/f-node-move/connection-drag-handlers/base-connection.drag-handler.mjs +3 -3
- package/esm2022/f-draggable/f-node-move/move-preparation/f-node-move-preparation.execution.mjs +14 -12
- package/esm2022/f-draggable/f-node-move/move-preparation/f-node-move-preparation.request.mjs +1 -1
- package/esm2022/f-flow/f-flow.component.mjs +2 -2
- package/esm2022/f-node/f-group.directive.mjs +3 -3
- package/esm2022/f-node/f-node.directive.mjs +3 -3
- package/esm2022/f-storage/f-connectors-store.mjs +11 -0
- package/esm2022/f-storage/index.mjs +2 -1
- package/f-backgroud/providers.d.ts +1 -1
- package/f-connection/common/domain/adaptive-curve-builder.d.ts +102 -0
- package/f-connection/common/domain/index.d.ts +1 -0
- package/f-connection/common/e-f-connection-connectable-side.d.ts +10 -0
- package/f-connection/common/e-f-connection-type.d.ts +2 -1
- package/f-connection/common/f-connection-base.d.ts +14 -2
- package/f-connection/common/index.d.ts +1 -0
- package/f-connection/f-connection/f-connection.component.d.ts +4 -2
- package/f-connection/f-connection-builder/f-connection-factory.d.ts +2 -4
- package/f-connection/f-connection-content/f-connection-content.d.ts +2 -2
- package/f-connection/f-connection-for-create/f-connection-for-create.component.d.ts +4 -2
- package/f-connection/f-snap-connection/f-snap-connection.component.d.ts +4 -2
- package/f-connection/providers.d.ts +1 -1
- package/f-draggable/f-connection/f-create-connection/create-preparation/create-connection-preparation-request.d.ts +8 -0
- package/f-draggable/f-connection/f-create-connection/create-preparation/create-connection-preparation.d.ts +16 -0
- package/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/create-connection-from-output-preparation-request.d.ts +8 -0
- package/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/create-connection-from-output-preparation.d.ts +14 -0
- package/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/index.d.ts +2 -2
- package/f-draggable/f-connection/f-create-connection/create-preparation/index.d.ts +2 -2
- package/f-draggable/f-connection/providers.d.ts +2 -2
- package/f-draggable/f-drop-to-group/drop-to-group-preparation/drop-to-group-preparation-request.d.ts +2 -2
- package/f-draggable/f-drop-to-group/providers.d.ts +1 -1
- package/f-draggable/f-node-move/create-drag-model-from-selection/providers.d.ts +1 -1
- package/f-draggable/f-node-move/move-preparation/f-node-move-preparation.execution.d.ts +1 -1
- package/f-draggable/f-node-move/move-preparation/f-node-move-preparation.request.d.ts +1 -1
- package/f-draggable/f-node-move/providers.d.ts +1 -1
- package/f-draggable/providers.d.ts +1 -1
- package/f-minimap/domain/providers.d.ts +1 -1
- package/f-node/providers.d.ts +1 -1
- package/f-selection-area/domain/providers.d.ts +1 -1
- package/f-storage/f-connectors-store.d.ts +6 -0
- package/f-storage/index.d.ts +1 -0
- package/f-storage/providers.d.ts +1 -1
- package/fesm2022/foblex-flow.mjs +1741 -1235
- package/fesm2022/foblex-flow.mjs.map +1 -1
- package/package.json +1 -1
- package/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.execution.d.ts +0 -17
- package/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.request.d.ts +0 -6
- package/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/index.d.ts +0 -2
- package/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/get-all-can-be-connected-source-connectors-and-rects.execution.d.ts +0 -18
- package/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/get-all-can-be-connected-source-connectors-and-rects.request.d.ts +0 -6
- package/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/index.d.ts +0 -2
- package/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions-request.d.ts +0 -9
- package/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position.d.ts +0 -20
- package/domain/f-node/calculate-node-connectors-connectable-sides/calculate-node-connectors-connectable-sides-request.d.ts +0 -6
- package/domain/f-node/calculate-node-connectors-connectable-sides/calculate-node-connectors-connectable-sides.d.ts +0 -28
- package/domain/f-node/calculate-node-connectors-connectable-sides/index.d.ts +0 -4
- package/domain/f-node/get-nodes/get-nodes-request.d.ts +0 -3
- package/domain/f-node/get-nodes/get-nodes.d.ts +0 -13
- package/domain/f-node/get-nodes/index.d.ts +0 -2
- package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/fixed-center-behavior.mjs +0 -12
- package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/fixed-outbound-behavior.mjs +0 -31
- package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/floating-behavior.mjs +0 -22
- package/esm2022/domain/f-connection/redraw-connections/redraw-connections.execution.mjs +0 -73
- package/esm2022/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.execution.mjs +0 -48
- package/esm2022/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.request.mjs +0 -8
- package/esm2022/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/index.mjs +0 -3
- package/esm2022/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/get-all-can-be-connected-source-connectors-and-rects.execution.mjs +0 -43
- package/esm2022/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/get-all-can-be-connected-source-connectors-and-rects.request.mjs +0 -8
- package/esm2022/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/index.mjs +0 -3
- package/esm2022/domain/f-line-alignment/add-line-alignment-to-store/add-line-alignment-to-store.execution.mjs +0 -25
- package/esm2022/domain/f-line-alignment/remove-line-alignment-from-store/remove-line-alignment-from-store.execution.mjs +0 -25
- package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions-request.mjs +0 -16
- package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions.mjs +0 -181
- package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/index.mjs +0 -3
- package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position-request.mjs +0 -8
- package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position.mjs +0 -55
- package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-internal-position/index.mjs +0 -3
- package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-node-connectors-connectable-sides-request.mjs +0 -8
- package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-node-connectors-connectable-sides.mjs +0 -90
- package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/index.mjs +0 -5
- package/esm2022/domain/f-node/get-nodes/get-nodes-request.mjs +0 -4
- package/esm2022/domain/f-node/get-nodes/get-nodes.mjs +0 -25
- package/esm2022/domain/f-node/get-nodes/index.mjs +0 -3
- package/esm2022/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element.execution.mjs +0 -34
- package/esm2022/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element.request.mjs +0 -15
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/f-create-connection-preparation.execution.mjs +0 -52
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/f-create-connection-preparation.request.mjs +0 -10
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/f-create-connection-from-output-preparation.execution.mjs +0 -49
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/f-create-connection-from-output-preparation.request.mjs +0 -10
- package/f-draggable/f-connection/f-create-connection/create-preparation/f-create-connection-preparation.execution.d.ts +0 -16
- package/f-draggable/f-connection/f-create-connection/create-preparation/f-create-connection-preparation.request.d.ts +0 -8
- package/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/f-create-connection-from-output-preparation.execution.d.ts +0 -14
- package/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/f-create-connection-from-output-preparation.request.d.ts +0 -8
- /package/domain/f-node/{calculate-node-connectors-connectable-sides → calculate-connectors-connectable-sides}/calculate-connectable-side-by-connected-positions/index.d.ts +0 -0
- /package/domain/f-node/{calculate-node-connectors-connectable-sides → calculate-connectors-connectable-sides}/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position-request.d.ts +0 -0
- /package/domain/f-node/{calculate-node-connectors-connectable-sides → calculate-connectors-connectable-sides}/calculate-connectable-side-by-internal-position/index.d.ts +0 -0
|
@@ -1,181 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { inject, Injectable } from '@angular/core';
|
|
3
|
-
import { FExecutionRegister, FMediator } from '@foblex/mediator';
|
|
4
|
-
import { CalculateConnectableSideByConnectedPositionsRequest } from './calculate-connectable-side-by-connected-positions-request';
|
|
5
|
-
import { EFConnectableSide } from '../../../../f-connectors';
|
|
6
|
-
import { RectExtensions } from '@foblex/2d';
|
|
7
|
-
import { CalculateConnectableSideByInternalPositionRequest } from '../calculate-connectable-side-by-internal-position';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
const SNAP_EPS = 2;
|
|
10
|
-
const CALCULATE_SIDES = {
|
|
11
|
-
[EFConnectableSide.CALCULATE]: [
|
|
12
|
-
EFConnectableSide.TOP,
|
|
13
|
-
EFConnectableSide.BOTTOM,
|
|
14
|
-
EFConnectableSide.LEFT,
|
|
15
|
-
EFConnectableSide.RIGHT,
|
|
16
|
-
],
|
|
17
|
-
[EFConnectableSide.CALCULATE_HORIZONTAL]: [EFConnectableSide.LEFT, EFConnectableSide.RIGHT],
|
|
18
|
-
[EFConnectableSide.CALCULATE_VERTICAL]: [EFConnectableSide.TOP, EFConnectableSide.BOTTOM],
|
|
19
|
-
};
|
|
20
|
-
/**
|
|
21
|
-
* Execution that calculates the connectable side for a connector
|
|
22
|
-
* based on positions of connected connectors and allowed sides.
|
|
23
|
-
*/
|
|
24
|
-
let CalculateConnectableSideByConnectedPositions = class CalculateConnectableSideByConnectedPositions {
|
|
25
|
-
_mediator = inject(FMediator);
|
|
26
|
-
/**
|
|
27
|
-
* Entry point (hot path). Avoids intermediate arrays and redundant allocations.
|
|
28
|
-
*
|
|
29
|
-
* @param request - Contains the connector and optionally allowed sides.
|
|
30
|
-
* @returns {EFConnectableSide} - The chosen connectable side.
|
|
31
|
-
*/
|
|
32
|
-
handle({ connector, mode, }) {
|
|
33
|
-
const selfCenter = RectExtensions.fromElement(connector.hostElement).gravityCenter;
|
|
34
|
-
const acc = this._accumulateConnectedCenters(connector.hostElement, connector.toConnector);
|
|
35
|
-
if (acc.count === 0) {
|
|
36
|
-
return this._mediator.execute(new CalculateConnectableSideByInternalPositionRequest(connector));
|
|
37
|
-
}
|
|
38
|
-
const avgX = acc.sumX / acc.count;
|
|
39
|
-
const avgY = acc.sumY / acc.count;
|
|
40
|
-
const mask = this._toSideMask(CALCULATE_SIDES[mode]);
|
|
41
|
-
return this._determineSide(selfCenter.x, selfCenter.y, avgX, avgY, mask);
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Accumulates sum of gravity centers and count, excluding the current host.
|
|
45
|
-
* Single pass, minimal allocations.
|
|
46
|
-
*/
|
|
47
|
-
_accumulateConnectedCenters(selfHost, connected) {
|
|
48
|
-
let sumX = 0;
|
|
49
|
-
let sumY = 0;
|
|
50
|
-
let count = 0;
|
|
51
|
-
if (connected && connected.length) {
|
|
52
|
-
for (let i = 0; i < connected.length; i++) {
|
|
53
|
-
const el = connected[i]?.hostElement;
|
|
54
|
-
if (!el || el === selfHost)
|
|
55
|
-
continue;
|
|
56
|
-
const c = RectExtensions.fromElement(el).gravityCenter;
|
|
57
|
-
sumX += c.x;
|
|
58
|
-
sumY += c.y;
|
|
59
|
-
count++;
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
return { sumX, sumY, count };
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* Converts allowed sides array to a compact bit mask.
|
|
66
|
-
* If not provided or empty -> all sides allowed.
|
|
67
|
-
*/
|
|
68
|
-
_toSideMask(allowed) {
|
|
69
|
-
if (!allowed || allowed.length === 0)
|
|
70
|
-
return 15 /* SideMask.ALL */;
|
|
71
|
-
let mask = 0 /* SideMask.NONE */;
|
|
72
|
-
for (let i = 0; i < allowed.length; i++) {
|
|
73
|
-
switch (allowed[i]) {
|
|
74
|
-
case EFConnectableSide.LEFT:
|
|
75
|
-
mask |= 1 /* SideMask.LEFT */;
|
|
76
|
-
break;
|
|
77
|
-
case EFConnectableSide.RIGHT:
|
|
78
|
-
mask |= 2 /* SideMask.RIGHT */;
|
|
79
|
-
break;
|
|
80
|
-
case EFConnectableSide.TOP:
|
|
81
|
-
mask |= 4 /* SideMask.TOP */;
|
|
82
|
-
break;
|
|
83
|
-
case EFConnectableSide.BOTTOM:
|
|
84
|
-
mask |= 8 /* SideMask.BOTTOM */;
|
|
85
|
-
break;
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
return mask || 15 /* SideMask.ALL */;
|
|
89
|
-
}
|
|
90
|
-
/**
|
|
91
|
-
* Determines final side using ideal side first; if disallowed, picks best fallback.
|
|
92
|
-
* Inputs are numbers to avoid object wrappers on hot path.
|
|
93
|
-
*/
|
|
94
|
-
_determineSide(selfX, selfY, avgX, avgY, allowedMask) {
|
|
95
|
-
const dx = avgX - selfX;
|
|
96
|
-
const dy = avgY - selfY;
|
|
97
|
-
const ideal = this._pickIdealSide(dx, dy);
|
|
98
|
-
if (this._isAllowed(ideal, allowedMask)) {
|
|
99
|
-
return ideal;
|
|
100
|
-
}
|
|
101
|
-
return this._pickFallbackSide(dx, dy, allowedMask, ideal);
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* Picks the "ideal" side based on vector (dx, dy) with hysteresis.
|
|
105
|
-
*/
|
|
106
|
-
_pickIdealSide(dx, dy) {
|
|
107
|
-
const ax = dx < 0 ? -dx : dx;
|
|
108
|
-
const ay = dy < 0 ? -dy : dy;
|
|
109
|
-
if (ax - ay > SNAP_EPS) {
|
|
110
|
-
return dx < 0 ? EFConnectableSide.LEFT : EFConnectableSide.RIGHT;
|
|
111
|
-
}
|
|
112
|
-
if (ay - ax > SNAP_EPS) {
|
|
113
|
-
return dy < 0 ? EFConnectableSide.TOP : EFConnectableSide.BOTTOM;
|
|
114
|
-
}
|
|
115
|
-
return dy < 0 ? EFConnectableSide.TOP : EFConnectableSide.BOTTOM;
|
|
116
|
-
}
|
|
117
|
-
/**
|
|
118
|
-
* Quick membership check via bit mask.
|
|
119
|
-
*/
|
|
120
|
-
_isAllowed(side, mask) {
|
|
121
|
-
switch (side) {
|
|
122
|
-
case EFConnectableSide.LEFT:
|
|
123
|
-
return (mask & 1 /* SideMask.LEFT */) !== 0;
|
|
124
|
-
case EFConnectableSide.RIGHT:
|
|
125
|
-
return (mask & 2 /* SideMask.RIGHT */) !== 0;
|
|
126
|
-
case EFConnectableSide.TOP:
|
|
127
|
-
return (mask & 4 /* SideMask.TOP */) !== 0;
|
|
128
|
-
case EFConnectableSide.BOTTOM:
|
|
129
|
-
return (mask & 8 /* SideMask.BOTTOM */) !== 0;
|
|
130
|
-
default:
|
|
131
|
-
return true;
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
/**
|
|
135
|
-
* Picks the best available side from allowed mask by maximizing directional score.
|
|
136
|
-
* No intermediate objects, constant-time operations.
|
|
137
|
-
*/
|
|
138
|
-
_pickFallbackSide(dx, dy, allowedMask, ideal) {
|
|
139
|
-
let bestSide = ideal;
|
|
140
|
-
let bestScore = -Infinity;
|
|
141
|
-
if (allowedMask & 2 /* SideMask.RIGHT */) {
|
|
142
|
-
const s = dx;
|
|
143
|
-
if (s > bestScore) {
|
|
144
|
-
bestScore = s;
|
|
145
|
-
bestSide = EFConnectableSide.RIGHT;
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
if (allowedMask & 1 /* SideMask.LEFT */) {
|
|
149
|
-
const s = -dx;
|
|
150
|
-
if (s > bestScore) {
|
|
151
|
-
bestScore = s;
|
|
152
|
-
bestSide = EFConnectableSide.LEFT;
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
if (allowedMask & 8 /* SideMask.BOTTOM */) {
|
|
156
|
-
const s = dy;
|
|
157
|
-
if (s > bestScore) {
|
|
158
|
-
bestScore = s;
|
|
159
|
-
bestSide = EFConnectableSide.BOTTOM;
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
if (allowedMask & 4 /* SideMask.TOP */) {
|
|
163
|
-
const s = -dy;
|
|
164
|
-
if (s > bestScore) {
|
|
165
|
-
bestScore = s;
|
|
166
|
-
bestSide = EFConnectableSide.TOP;
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
return bestSide;
|
|
170
|
-
}
|
|
171
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateConnectableSideByConnectedPositions, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
172
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateConnectableSideByConnectedPositions });
|
|
173
|
-
};
|
|
174
|
-
CalculateConnectableSideByConnectedPositions = __decorate([
|
|
175
|
-
FExecutionRegister(CalculateConnectableSideByConnectedPositionsRequest)
|
|
176
|
-
], CalculateConnectableSideByConnectedPositions);
|
|
177
|
-
export { CalculateConnectableSideByConnectedPositions };
|
|
178
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateConnectableSideByConnectedPositions, decorators: [{
|
|
179
|
-
type: Injectable
|
|
180
|
-
}] });
|
|
181
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWNvbm5lY3RhYmxlLXNpZGUtYnktY29ubmVjdGVkLXBvc2l0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2Ytbm9kZS9jYWxjdWxhdGUtbm9kZS1jb25uZWN0b3JzLWNvbm5lY3RhYmxlLXNpZGVzL2NhbGN1bGF0ZS1jb25uZWN0YWJsZS1zaWRlLWJ5LWNvbm5lY3RlZC1wb3NpdGlvbnMvY2FsY3VsYXRlLWNvbm5lY3RhYmxlLXNpZGUtYnktY29ubmVjdGVkLXBvc2l0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxtREFBbUQsRUFBRSxNQUFNLDZEQUE2RCxDQUFDO0FBQ2xJLE9BQU8sRUFBRSxpQkFBaUIsRUFBa0IsTUFBTSwwQkFBMEIsQ0FBQztBQUM3RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxpREFBaUQsRUFBRSxNQUFNLG9EQUFvRCxDQUFDOztBQUV2SCxNQUFNLFFBQVEsR0FBRyxDQUFDLENBQUM7QUFXbkIsTUFBTSxlQUFlLEdBQUc7SUFDdEIsQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsRUFBRTtRQUM3QixpQkFBaUIsQ0FBQyxHQUFHO1FBQ3JCLGlCQUFpQixDQUFDLE1BQU07UUFDeEIsaUJBQWlCLENBQUMsSUFBSTtRQUN0QixpQkFBaUIsQ0FBQyxLQUFLO0tBQ3hCO0lBQ0QsQ0FBQyxpQkFBaUIsQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLGlCQUFpQixDQUFDLEtBQUssQ0FBQztJQUMzRixDQUFD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RnhELFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBDYWxjdWxhdGVDb25uZWN0YWJsZVNpZGVCeUNvbm5lY3RlZFBvc2l0aW9uc1JlcXVlc3QgfSBmcm9tICcuL2NhbGN1bGF0ZS1jb25uZWN0YWJsZS1zaWRlLWJ5LWNvbm5lY3RlZC1wb3NpdGlvbnMtcmVxdWVzdCc7XG5pbXBvcnQgeyBFRkNvbm5lY3RhYmxlU2lkZSwgRkNvbm5lY3RvckJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi9mLWNvbm5lY3RvcnMnO1xuaW1wb3J0IHsgUmVjdEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IENhbGN1bGF0ZUNvbm5lY3RhYmxlU2lkZUJ5SW50ZXJuYWxQb3NpdGlvblJlcXVlc3QgfSBmcm9tICcuLi9jYWxjdWxhdGUtY29ubmVjdGFibGUtc2lkZS1ieS1pbnRlcm5hbC1wb3NpdGlvbic7XG5cbmNvbnN0IFNOQVBfRVBTID0gMjtcblxuY29uc3QgZW51bSBTaWRlTWFzayB7XG4gIE5PTkUgPSAwLFxuICBMRUZUID0gMSA8PCAwLFxuICBSSUdIVCA9IDEgPDwgMSxcbiAgVE9QID0gMSA8PCAyLFxuICBCT1RUT00gPSAxIDw8IDMsXG4gIEFMTCA9ICgxIDw8IDQpIC0gMSxcbn1cblxuY29uc3QgQ0FMQ1VMQVRFX1NJREVTID0ge1xuICBbRUZDb25uZWN0YWJsZVNpZGUuQ0FMQ1VMQVRFXTogW1xuICAgIEVGQ29ubmVjdGFibGVTaWRlLlRPUCxcbiAgICBFRkNvbm5lY3RhYmxlU2lkZS5CT1RUT00sXG4gICAgRUZDb25uZWN0YWJsZVNpZGUuTEVGVCxcbiAgICBFRkNvbm5lY3RhYmxlU2lkZS5SSUdIVCxcbiAgXSxcbiAgW0VGQ29ubmVjdGFibGVTaWRlLkNBTENVTEFURV9IT1JJWk9OVEFMXTogW0VGQ29ubmVjdGFibGVTaWRlLkxFRlQsIEVGQ29ubmVjdGFibGVTaWRlLlJJR0hUXSxcbiAgW0VGQ29ubmVjdGFibGVTaWRlLkNBTENVTEFURV9WRVJUSUNBTF06IFtFRkNvbm5lY3RhYmxlU2lkZS5UT1AsIEVGQ29ubmVjdGFibGVTaWRlLkJPVFRPTV0sXG59O1xuXG4vKipcbiAqIEV4ZWN1dGlvbiB0aGF0IGNhbGN1bGF0ZXMgdGhlIGNvbm5lY3RhYmxlIHNpZGUgZm9yIGEgY29ubmVjdG9yXG4gKiBiYXNlZCBvbiBwb3NpdGlvbnMgb2YgY29ubmVjdGVkIGNvbm5lY3RvcnMgYW5kIGFsbG93ZWQgc2lkZXMuXG4gKi9cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoQ2FsY3VsYXRlQ29ubmVjdGFibGVTaWRlQnlDb25uZWN0ZWRQb3NpdGlvbnNSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIENhbGN1bGF0ZUNvbm5lY3RhYmxlU2lkZUJ5Q29ubmVjdGVkUG9zaXRpb25zXG4gIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxDYWxjdWxhdGVDb25uZWN0YWJsZVNpZGVCeUNvbm5lY3RlZFBvc2l0aW9uc1JlcXVlc3QsIEVGQ29ubmVjdGFibGVTaWRlPlxue1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuXG4gIC8qKlxuICAgKiBFbnRyeSBwb2ludCAoaG90IHBhdGgpLiBBdm9pZHMgaW50ZXJtZWRpYXRlIGFycmF5cyBhbmQgcmVkdW5kYW50IGFsbG9jYXRpb25zLlxuICAgKlxuICAgKiBAcGFyYW0gcmVxdWVzdCAtIENvbnRhaW5zIHRoZSBjb25uZWN0b3IgYW5kIG9wdGlvbmFsbHkgYWxsb3dlZCBzaWRlcy5cbiAgICogQHJldHVybnMge0VGQ29ubmVjdGFibGVTaWRlfSAtIFRoZSBjaG9zZW4gY29ubmVjdGFibGUgc2lkZS5cbiAgICovXG4gIHB1YmxpYyBoYW5kbGUoe1xuICAgIGNvbm5lY3RvcixcbiAgICBtb2RlLFxuICB9OiBDYWxjdWxhdGVDb25uZWN0YWJsZVNpZGVCeUNvbm5lY3RlZFBvc2l0aW9uc1JlcXVlc3QpOiBFRkNvbm5lY3RhYmxlU2lkZSB7XG4gICAgY29uc3Qgc2VsZkNlbnRlciA9IFJlY3RFeHRlbnNpb25zLmZyb21FbGVtZW50KGNvbm5lY3Rvci5ob3N0RWxlbWVudCkuZ3Jhdml0eUNlbnRlcjtcblxuICAgIGNvbnN0IGFjYyA9IHRoaXMuX2FjY3VtdWxhdGVDb25uZWN0ZWRDZW50ZXJzKGNvbm5lY3Rvci5ob3N0RWxlbWVudCwgY29ubmVjdG9yLnRvQ29ubmVjdG9yKTtcblxuICAgIGlmIChhY2MuY291bnQgPT09IDApIHtcbiAgICAgIHJldHVybiB0aGlzLl9tZWRpYXRvci5leGVjdXRlKFxuICAgICAgICBuZXcgQ2FsY3VsYXRlQ29ubmVjdGFibGVTaWRlQnlJbnRlcm5hbFBvc2l0aW9uUmVxdWVzdChjb25uZWN0b3IpLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBhdmdYID0gYWNjLnN1bVggLyBhY2MuY291bnQ7XG4gICAgY29uc3QgYXZnWSA9IGFjYy5zdW1ZIC8gYWNjLmNvdW50O1xuXG4gICAgY29uc3QgbWFzayA9IHRoaXMuX3RvU2lkZU1hc2soQ0FMQ1VMQVRFX1NJREVTW21vZGVdKTtcblxuICAgIHJldHVybiB0aGlzLl9kZXRlcm1pbmVTaWRlKHNlbGZDZW50ZXIueCwgc2VsZkNlbnRlci55LCBhdmdYLCBhdmdZLCBtYXNrKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBY2N1bXVsYXRlcyBzdW0gb2YgZ3Jhdml0eSBjZW50ZXJzIGFuZCBjb3VudCwgZXhjbHVkaW5nIHRoZSBjdXJyZW50IGhvc3QuXG4gICAqIFNpbmdsZSBwYXNzLCBtaW5pbWFsIGFsbG9jYXRpb25zLlxuICAgKi9cbiAgcHJpdmF0ZSBfYWNjdW11bGF0ZUNvbm5lY3RlZENlbnRlcnMoXG4gICAgc2VsZkhvc3Q6IEhUTUxFbGVtZW50IHwgU1ZHRWxlbWVudCxcbiAgICBjb25uZWN0ZWQ6IEZDb25uZWN0b3JCYXNlW10gfCBudWxsIHwgdW5kZWZpbmVkLFxuICApOiB7IHN1bVg6IG51bWJlcjsgc3VtWTogbnVtYmVyOyBjb3VudDogbnVtYmVyIH0ge1xuICAgIGxldCBzdW1YID0gMDtcbiAgICBsZXQgc3VtWSA9IDA7XG4gICAgbGV0IGNvdW50ID0gMDtcblxuICAgIGlmIChjb25uZWN0ZWQgJiYgY29ubmVjdGVkLmxlbmd0aCkge1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb25uZWN0ZWQubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgZWwgPSBjb25uZWN0ZWRbaV0/Lmhvc3RFbGVtZW50IGFzIEhUTUxFbGVtZW50IHwgU1ZHRWxlbWVudCB8IHVuZGVmaW5lZDtcbiAgICAgICAgaWYgKCFlbCB8fCBlbCA9PT0gc2VsZkhvc3QpIGNvbnRpbnVlO1xuXG4gICAgICAgIGNvbnN0IGMgPSBSZWN0RXh0ZW5zaW9ucy5mcm9tRWxlbWVudChlbCkuZ3Jhdml0eUNlbnRlcjtcbiAgICAgICAgc3VtWCArPSBjLng7XG4gICAgICAgIHN1bVkgKz0gYy55O1xuICAgICAgICBjb3VudCsrO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7IHN1bVgsIHN1bVksIGNvdW50IH07XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgYWxsb3dlZCBzaWRlcyBhcnJheSB0byBhIGNvbXBhY3QgYml0IG1hc2suXG4gICAqIElmIG5vdCBwcm92aWRlZCBvciBlbXB0eSAtPiBhbGwgc2lkZXMgYWxsb3dlZC5cbiAgICovXG4gIHByaXZhdGUgX3RvU2lkZU1hc2soYWxsb3dlZD86IEVGQ29ubmVjdGFibGVTaWRlW10pOiBTaWRlTWFzayB7XG4gICAgaWYgKCFhbGxvd2VkIHx8IGFsbG93ZWQubGVuZ3RoID09PSAwKSByZXR1cm4gU2lkZU1hc2suQUxMO1xuXG4gICAgbGV0IG1hc2sgPSBTaWRlTWFzay5OT05FO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYWxsb3dlZC5sZW5ndGg7IGkrKykge1xuICAgICAgc3dpdGNoIChhbGxvd2VkW2ldKSB7XG4gICAgICAgIGNhc2UgRUZDb25uZWN0YWJsZVNpZGUuTEVGVDpcbiAgICAgICAgICBtYXNrIHw9IFNpZGVNYXNrLkxFRlQ7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgRUZDb25uZWN0YWJsZVNpZGUuUklHSFQ6XG4gICAgICAgICAgbWFzayB8PSBTaWRlTWFzay5SSUdIVDtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRkNvbm5lY3RhYmxlU2lkZS5UT1A6XG4gICAgICAgICAgbWFzayB8PSBTaWRlTWFzay5UT1A7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgRUZDb25uZWN0YWJsZVNpZGUuQk9UVE9NOlxuICAgICAgICAgIG1hc2sgfD0gU2lkZU1hc2suQk9UVE9NO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBtYXNrIHx8IFNpZGVNYXNrLkFMTDtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGZpbmFsIHNpZGUgdXNpbmcgaWRlYWwgc2lkZSBmaXJzdDsgaWYgZGlzYWxsb3dlZCwgcGlja3MgYmVzdCBmYWxsYmFjay5cbiAgICogSW5wdXRzIGFyZSBudW1iZXJzIHRvIGF2b2lkIG9iamVjdCB3cmFwcGVycyBvbiBob3QgcGF0aC5cbiAgICovXG4gIHByaXZhdGUgX2RldGVybWluZVNpZGUoXG4gICAgc2VsZlg6IG51bWJlcixcbiAgICBzZWxmWTogbnVtYmVyLFxuICAgIGF2Z1g6IG51bWJlcixcbiAgICBhdmdZOiBudW1iZXIsXG4gICAgYWxsb3dlZE1hc2s6IFNpZGVNYXNrLFxuICApOiBFRkNvbm5lY3RhYmxlU2lkZSB7XG4gICAgY29uc3QgZHggPSBhdmdYIC0gc2VsZlg7XG4gICAgY29uc3QgZHkgPSBhdmdZIC0gc2VsZlk7XG5cbiAgICBjb25zdCBpZGVhbCA9IHRoaXMuX3BpY2tJZGVhbFNpZGUoZHgsIGR5KTtcblxuICAgIGlmICh0aGlzLl9pc0FsbG93ZWQoaWRlYWwsIGFsbG93ZWRNYXNrKSkge1xuICAgICAgcmV0dXJuIGlkZWFsO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9waWNrRmFsbGJhY2tTaWRlKGR4LCBkeSwgYWxsb3dlZE1hc2ssIGlkZWFsKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQaWNrcyB0aGUgXCJpZGVhbFwiIHNpZGUgYmFzZWQgb24gdmVjdG9yIChkeCwgZHkpIHdpdGggaHlzdGVyZXNpcy5cbiAgICovXG4gIHByaXZhdGUgX3BpY2tJZGVhbFNpZGUoZHg6IG51bWJlciwgZHk6IG51bWJlcik6IEVGQ29ubmVjdGFibGVTaWRlIHtcbiAgICBjb25zdCBheCA9IGR4IDwgMCA/IC1keCA6IGR4O1xuICAgIGNvbnN0IGF5ID0gZHkgPCAwID8gLWR5IDogZHk7XG5cbiAgICBpZiAoYXggLSBheSA+IFNOQVBfRVBTKSB7XG4gICAgICByZXR1cm4gZHggPCAwID8gRUZDb25uZWN0YWJsZVNpZGUuTEVGVCA6IEVGQ29ubmVjdGFibGVTaWRlLlJJR0hUO1xuICAgIH1cbiAgICBpZiAoYXkgLSBheCA+IFNOQVBfRVBTKSB7XG4gICAgICByZXR1cm4gZHkgPCAwID8gRUZDb25uZWN0YWJsZVNpZGUuVE9QIDogRUZDb25uZWN0YWJsZVNpZGUuQk9UVE9NO1xuICAgIH1cblxuICAgIHJldHVybiBkeSA8IDAgPyBFRkNvbm5lY3RhYmxlU2lkZS5UT1AgOiBFRkNvbm5lY3RhYmxlU2lkZS5CT1RUT007XG4gIH1cblxuICAvKipcbiAgICogUXVpY2sgbWVtYmVyc2hpcCBjaGVjayB2aWEgYml0IG1hc2suXG4gICAqL1xuICBwcml2YXRlIF9pc0FsbG93ZWQoc2lkZTogRUZDb25uZWN0YWJsZVNpZGUsIG1hc2s6IFNpZGVNYXNrKTogYm9vbGVhbiB7XG4gICAgc3dpdGNoIChzaWRlKSB7XG4gICAgICBjYXNlIEVGQ29ubmVjdGFibGVTaWRlLkxFRlQ6XG4gICAgICAgIHJldHVybiAobWFzayAmIFNpZGVNYXNrLkxFRlQpICE9PSAwO1xuICAgICAgY2FzZSBFRkNvbm5lY3RhYmxlU2lkZS5SSUdIVDpcbiAgICAgICAgcmV0dXJuIChtYXNrICYgU2lkZU1hc2suUklHSFQpICE9PSAwO1xuICAgICAgY2FzZSBFRkNvbm5lY3RhYmxlU2lkZS5UT1A6XG4gICAgICAgIHJldHVybiAobWFzayAmIFNpZGVNYXNrLlRPUCkgIT09IDA7XG4gICAgICBjYXNlIEVGQ29ubmVjdGFibGVTaWRlLkJPVFRPTTpcbiAgICAgICAgcmV0dXJuIChtYXNrICYgU2lkZU1hc2suQk9UVE9NKSAhPT0gMDtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBQaWNrcyB0aGUgYmVzdCBhdmFpbGFibGUgc2lkZSBmcm9tIGFsbG93ZWQgbWFzayBieSBtYXhpbWl6aW5nIGRpcmVjdGlvbmFsIHNjb3JlLlxuICAgKiBObyBpbnRlcm1lZGlhdGUgb2JqZWN0cywgY29uc3RhbnQtdGltZSBvcGVyYXRpb25zLlxuICAgKi9cbiAgcHJpdmF0ZSBfcGlja0ZhbGxiYWNrU2lkZShcbiAgICBkeDogbnVtYmVyLFxuICAgIGR5OiBudW1iZXIsXG4gICAgYWxsb3dlZE1hc2s6IFNpZGVNYXNrLFxuICAgIGlkZWFsOiBFRkNvbm5lY3RhYmxlU2lkZSxcbiAgKTogRUZDb25uZWN0YWJsZVNpZGUge1xuICAgIGxldCBiZXN0U2lkZTogRUZDb25uZWN0YWJsZVNpZGUgPSBpZGVhbDtcbiAgICBsZXQgYmVzdFNjb3JlID0gLUluZmluaXR5O1xuXG4gICAgaWYgKGFsbG93ZWRNYXNrICYgU2lkZU1hc2suUklHSFQpIHtcbiAgICAgIGNvbnN0IHMgPSBkeDtcbiAgICAgIGlmIChzID4gYmVzdFNjb3JlKSB7XG4gICAgICAgIGJlc3RTY29yZSA9IHM7XG4gICAgICAgIGJlc3RTaWRlID0gRUZDb25uZWN0YWJsZVNpZGUuUklHSFQ7XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChhbGxvd2VkTWFzayAmIFNpZGVNYXNrLkxFRlQpIHtcbiAgICAgIGNvbnN0IHMgPSAtZHg7XG4gICAgICBpZiAocyA+IGJlc3RTY29yZSkge1xuICAgICAgICBiZXN0U2NvcmUgPSBzO1xuICAgICAgICBiZXN0U2lkZSA9IEVGQ29ubmVjdGFibGVTaWRlLkxFRlQ7XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChhbGxvd2VkTWFzayAmIFNpZGVNYXNrLkJPVFRPTSkge1xuICAgICAgY29uc3QgcyA9IGR5O1xuICAgICAgaWYgKHMgPiBiZXN0U2NvcmUpIHtcbiAgICAgICAgYmVzdFNjb3JlID0gcztcbiAgICAgICAgYmVzdFNpZGUgPSBFRkNvbm5lY3RhYmxlU2lkZS5CT1RUT007XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChhbGxvd2VkTWFzayAmIFNpZGVNYXNrLlRPUCkge1xuICAgICAgY29uc3QgcyA9IC1keTtcbiAgICAgIGlmIChzID4gYmVzdFNjb3JlKSB7XG4gICAgICAgIGJlc3RTY29yZSA9IHM7XG4gICAgICAgIGJlc3RTaWRlID0gRUZDb25uZWN0YWJsZVNpZGUuVE9QO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBiZXN0U2lkZTtcbiAgfVxufVxuIl19
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './calculate-connectable-side-by-connected-positions';
|
|
2
|
-
export * from './calculate-connectable-side-by-connected-positions-request';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLW5vZGUvY2FsY3VsYXRlLW5vZGUtY29ubmVjdG9ycy1jb25uZWN0YWJsZS1zaWRlcy9jYWxjdWxhdGUtY29ubmVjdGFibGUtc2lkZS1ieS1jb25uZWN0ZWQtcG9zaXRpb25zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMscURBQXFELENBQUM7QUFFcEUsY0FBYyw2REFBNkQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2FsY3VsYXRlLWNvbm5lY3RhYmxlLXNpZGUtYnktY29ubmVjdGVkLXBvc2l0aW9ucyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vY2FsY3VsYXRlLWNvbm5lY3RhYmxlLXNpZGUtYnktY29ubmVjdGVkLXBvc2l0aW9ucy1yZXF1ZXN0JztcbiJdfQ==
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export class CalculateConnectableSideByInternalPositionRequest {
|
|
2
|
-
connector;
|
|
3
|
-
static fToken = Symbol('CalculateConnectableSideByInternalPositionRequest');
|
|
4
|
-
constructor(connector) {
|
|
5
|
-
this.connector = connector;
|
|
6
|
-
}
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWNvbm5lY3RhYmxlLXNpZGUtYnktaW50ZXJuYWwtcG9zaXRpb24tcmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2Ytbm9kZS9jYWxjdWxhdGUtbm9kZS1jb25uZWN0b3JzLWNvbm5lY3RhYmxlLXNpZGVzL2NhbGN1bGF0ZS1jb25uZWN0YWJsZS1zaWRlLWJ5LWludGVybmFsLXBvc2l0aW9uL2NhbGN1bGF0ZS1jb25uZWN0YWJsZS1zaWRlLWJ5LWludGVybmFsLXBvc2l0aW9uLXJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLGlEQUFpRDtJQUVoQztJQUQ1QixNQUFNLENBQVUsTUFBTSxHQUFHLE1BQU0sQ0FBQyxtREFBbUQsQ0FBQyxDQUFDO0lBQ3JGLFlBQTRCLFNBQXlCO1FBQXpCLGNBQVMsR0FBVCxTQUFTLENBQWdCO0lBQUcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZDb25uZWN0b3JCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZi1jb25uZWN0b3JzJztcblxuZXhwb3J0IGNsYXNzIENhbGN1bGF0ZUNvbm5lY3RhYmxlU2lkZUJ5SW50ZXJuYWxQb3NpdGlvblJlcXVlc3Qge1xuICBzdGF0aWMgcmVhZG9ubHkgZlRva2VuID0gU3ltYm9sKCdDYWxjdWxhdGVDb25uZWN0YWJsZVNpZGVCeUludGVybmFsUG9zaXRpb25SZXF1ZXN0Jyk7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSBjb25uZWN0b3I6IEZDb25uZWN0b3JCYXNlKSB7fVxufVxuIl19
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { Injectable } from '@angular/core';
|
|
3
|
-
import { FExecutionRegister } from '@foblex/mediator';
|
|
4
|
-
import { CalculateConnectableSideByInternalPositionRequest } from './calculate-connectable-side-by-internal-position-request';
|
|
5
|
-
import { EFConnectableSide } from '../../../../f-connectors';
|
|
6
|
-
import { RectExtensions } from '@foblex/2d';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
/**
|
|
9
|
-
* Execution that calculates the connectable side for a connector
|
|
10
|
-
* based on the internal position of the connector relative to its node host.
|
|
11
|
-
*/
|
|
12
|
-
let CalculateConnectableSideByInternalPosition = class CalculateConnectableSideByInternalPosition {
|
|
13
|
-
handle({ connector, }) {
|
|
14
|
-
return this._getSideByDelta(connector.hostElement, connector.fNodeHost);
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Determines the side of the connector relative to the node host based on the minimum distance.
|
|
18
|
-
* @param connectorHost
|
|
19
|
-
* @param nodeHost
|
|
20
|
-
* @private
|
|
21
|
-
*/
|
|
22
|
-
_getSideByDelta(connectorHost, nodeHost) {
|
|
23
|
-
let result;
|
|
24
|
-
const childRect = RectExtensions.fromElement(connectorHost);
|
|
25
|
-
const parentRect = nodeHost.getBoundingClientRect();
|
|
26
|
-
const deltaLeft = childRect.gravityCenter.x - parentRect.left;
|
|
27
|
-
const deltaRight = parentRect.right - childRect.gravityCenter.x;
|
|
28
|
-
const deltaTop = childRect.gravityCenter.y - parentRect.top;
|
|
29
|
-
const deltaBottom = parentRect.bottom - childRect.gravityCenter.y;
|
|
30
|
-
const minDelta = Math.min(deltaLeft, deltaRight, deltaTop, deltaBottom);
|
|
31
|
-
if (minDelta === deltaLeft) {
|
|
32
|
-
result = EFConnectableSide.LEFT;
|
|
33
|
-
}
|
|
34
|
-
else if (minDelta === deltaRight) {
|
|
35
|
-
result = EFConnectableSide.RIGHT;
|
|
36
|
-
}
|
|
37
|
-
else if (minDelta === deltaTop) {
|
|
38
|
-
result = EFConnectableSide.TOP;
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
result = EFConnectableSide.BOTTOM;
|
|
42
|
-
}
|
|
43
|
-
return result;
|
|
44
|
-
}
|
|
45
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateConnectableSideByInternalPosition, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
46
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateConnectableSideByInternalPosition });
|
|
47
|
-
};
|
|
48
|
-
CalculateConnectableSideByInternalPosition = __decorate([
|
|
49
|
-
FExecutionRegister(CalculateConnectableSideByInternalPositionRequest)
|
|
50
|
-
], CalculateConnectableSideByInternalPosition);
|
|
51
|
-
export { CalculateConnectableSideByInternalPosition };
|
|
52
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateConnectableSideByInternalPosition, decorators: [{
|
|
53
|
-
type: Injectable
|
|
54
|
-
}] });
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWNvbm5lY3RhYmxlLXNpZGUtYnktaW50ZXJuYWwtcG9zaXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLW5vZGUvY2FsY3VsYXRlLW5vZGUtY29ubmVjdG9ycy1jb25uZWN0YWJsZS1zaWRlcy9jYWxjdWxhdGUtY29ubmVjdGFibGUtc2lkZS1ieS1pbnRlcm5hbC1wb3NpdGlvbi9jYWxjdWxhdGUtY29ubmVjdGFibGUtc2lkZS1ieS1pbnRlcm5hbC1wb3NpdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsaURBQWlELEVBQUUsTUFBTSwyREFBMkQsQ0FBQztBQUM5SCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sWUFBWSxDQUFDOztBQUU1Qzs7O0dBR0c7QUFHSSxJQUFNLDBDQUEwQyxHQUFoRCxNQUFNLDBDQUEwQztJQUc5QyxNQUFNLENBQUMsRUFDWixTQUFTLEdBQ3lDO1FBQ2xELE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSyxlQUFlLENBQ3JCLGFBQXVDLEVBQ3ZDLFFBQWtDO1FBRWxDLElBQUksTUFBcUMsQ0FBQztRQUUxQyxNQUFNLFNBQVMsR0FBRyxjQUFjLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzVELE1BQU0sVUFBVSxHQUFHLFFBQVEsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBRXBELE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUM7UUFDOUQsTUFBTSxVQUFVLEdBQUcsVUFBVSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztRQUNoRSxNQUFNLFFBQVEsR0FBRyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDO1FBQzVELE1BQU0sV0FBVyxHQUFHLFVBQVUsQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7UUFFbEUsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUV4RSxJQUFJLFFBQVEsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUMzQixNQUFNLEdBQUcsaUJBQWlCLENBQUMsSUFBSSxDQUFDO1FBQ2xDLENBQUM7YUFBTSxJQUFJLFFBQVEsS0FBSyxVQUFVLEVBQUUsQ0FBQztZQUNuQyxNQUFNLEdBQUcsaUJBQWlCLENBQUMsS0FBSyxDQUFDO1FBQ25DLENBQUM7YUFBTSxJQUFJLFFBQVEsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUNqQyxNQUFNLEdBQUcsaUJBQWlCLENBQUMsR0FBRyxDQUFDO1FBQ2pDLENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQztRQUNwQyxDQUFDO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQzt3R0ExQ1UsMENBQTBDOzRHQUExQywwQ0FBMEM7O0FBQTFDLDBDQUEwQztJQUR0RCxrQkFBa0IsQ0FBQyxpREFBaUQsQ0FBQztHQUN6RCwwQ0FBMEMsQ0EyQ3REOzs0RkEzQ1ksMENBQTBDO2tCQUZ0RCxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBDYWxjdWxhdGVDb25uZWN0YWJsZVNpZGVCeUludGVybmFsUG9zaXRpb25SZXF1ZXN0IH0gZnJvbSAnLi9jYWxjdWxhdGUtY29ubmVjdGFibGUtc2lkZS1ieS1pbnRlcm5hbC1wb3NpdGlvbi1yZXF1ZXN0JztcbmltcG9ydCB7IEVGQ29ubmVjdGFibGVTaWRlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZi1jb25uZWN0b3JzJztcbmltcG9ydCB7IFJlY3RFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC8yZCc7XG5cbi8qKlxuICogRXhlY3V0aW9uIHRoYXQgY2FsY3VsYXRlcyB0aGUgY29ubmVjdGFibGUgc2lkZSBmb3IgYSBjb25uZWN0b3JcbiAqIGJhc2VkIG9uIHRoZSBpbnRlcm5hbCBwb3NpdGlvbiBvZiB0aGUgY29ubmVjdG9yIHJlbGF0aXZlIHRvIGl0cyBub2RlIGhvc3QuXG4gKi9cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoQ2FsY3VsYXRlQ29ubmVjdGFibGVTaWRlQnlJbnRlcm5hbFBvc2l0aW9uUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBDYWxjdWxhdGVDb25uZWN0YWJsZVNpZGVCeUludGVybmFsUG9zaXRpb25cbiAgaW1wbGVtZW50cyBJRXhlY3V0aW9uPENhbGN1bGF0ZUNvbm5lY3RhYmxlU2lkZUJ5SW50ZXJuYWxQb3NpdGlvblJlcXVlc3QsIEVGQ29ubmVjdGFibGVTaWRlPlxue1xuICBwdWJsaWMgaGFuZGxlKHtcbiAgICBjb25uZWN0b3IsXG4gIH06IENhbGN1bGF0ZUNvbm5lY3RhYmxlU2lkZUJ5SW50ZXJuYWxQb3NpdGlvblJlcXVlc3QpOiBFRkNvbm5lY3RhYmxlU2lkZSB7XG4gICAgcmV0dXJuIHRoaXMuX2dldFNpZGVCeURlbHRhKGNvbm5lY3Rvci5ob3N0RWxlbWVudCwgY29ubmVjdG9yLmZOb2RlSG9zdCk7XG4gIH1cblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB0aGUgc2lkZSBvZiB0aGUgY29ubmVjdG9yIHJlbGF0aXZlIHRvIHRoZSBub2RlIGhvc3QgYmFzZWQgb24gdGhlIG1pbmltdW0gZGlzdGFuY2UuXG4gICAqIEBwYXJhbSBjb25uZWN0b3JIb3N0XG4gICAqIEBwYXJhbSBub2RlSG9zdFxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgcHJpdmF0ZSBfZ2V0U2lkZUJ5RGVsdGEoXG4gICAgY29ubmVjdG9ySG9zdDogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50LFxuICAgIG5vZGVIb3N0OiBIVE1MRWxlbWVudCB8IFNWR0VsZW1lbnQsXG4gICk6IEVGQ29ubmVjdGFibGVTaWRlIHtcbiAgICBsZXQgcmVzdWx0OiBFRkNvbm5lY3RhYmxlU2lkZSB8IHVuZGVmaW5lZDtcblxuICAgIGNvbnN0IGNoaWxkUmVjdCA9IFJlY3RFeHRlbnNpb25zLmZyb21FbGVtZW50KGNvbm5lY3Rvckhvc3QpO1xuICAgIGNvbnN0IHBhcmVudFJlY3QgPSBub2RlSG9zdC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgIGNvbnN0IGRlbHRhTGVmdCA9IGNoaWxkUmVjdC5ncmF2aXR5Q2VudGVyLnggLSBwYXJlbnRSZWN0LmxlZnQ7XG4gICAgY29uc3QgZGVsdGFSaWdodCA9IHBhcmVudFJlY3QucmlnaHQgLSBjaGlsZFJlY3QuZ3Jhdml0eUNlbnRlci54O1xuICAgIGNvbnN0IGRlbHRhVG9wID0gY2hpbGRSZWN0LmdyYXZpdHlDZW50ZXIueSAtIHBhcmVudFJlY3QudG9wO1xuICAgIGNvbnN0IGRlbHRhQm90dG9tID0gcGFyZW50UmVjdC5ib3R0b20gLSBjaGlsZFJlY3QuZ3Jhdml0eUNlbnRlci55O1xuXG4gICAgY29uc3QgbWluRGVsdGEgPSBNYXRoLm1pbihkZWx0YUxlZnQsIGRlbHRhUmlnaHQsIGRlbHRhVG9wLCBkZWx0YUJvdHRvbSk7XG5cbiAgICBpZiAobWluRGVsdGEgPT09IGRlbHRhTGVmdCkge1xuICAgICAgcmVzdWx0ID0gRUZDb25uZWN0YWJsZVNpZGUuTEVGVDtcbiAgICB9IGVsc2UgaWYgKG1pbkRlbHRhID09PSBkZWx0YVJpZ2h0KSB7XG4gICAgICByZXN1bHQgPSBFRkNvbm5lY3RhYmxlU2lkZS5SSUdIVDtcbiAgICB9IGVsc2UgaWYgKG1pbkRlbHRhID09PSBkZWx0YVRvcCkge1xuICAgICAgcmVzdWx0ID0gRUZDb25uZWN0YWJsZVNpZGUuVE9QO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXN1bHQgPSBFRkNvbm5lY3RhYmxlU2lkZS5CT1RUT007XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxufVxuIl19
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './calculate-connectable-side-by-internal-position';
|
|
2
|
-
export * from './calculate-connectable-side-by-internal-position-request';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLW5vZGUvY2FsY3VsYXRlLW5vZGUtY29ubmVjdG9ycy1jb25uZWN0YWJsZS1zaWRlcy9jYWxjdWxhdGUtY29ubmVjdGFibGUtc2lkZS1ieS1pbnRlcm5hbC1wb3NpdGlvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1EQUFtRCxDQUFDO0FBRWxFLGNBQWMsMkRBQTJELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NhbGN1bGF0ZS1jb25uZWN0YWJsZS1zaWRlLWJ5LWludGVybmFsLXBvc2l0aW9uJztcblxuZXhwb3J0ICogZnJvbSAnLi9jYWxjdWxhdGUtY29ubmVjdGFibGUtc2lkZS1ieS1pbnRlcm5hbC1wb3NpdGlvbi1yZXF1ZXN0JztcbiJdfQ==
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export class CalculateNodeConnectorsConnectableSidesRequest {
|
|
2
|
-
node;
|
|
3
|
-
static fToken = Symbol('CalculateNodeConnectorsConnectableSidesRequest');
|
|
4
|
-
constructor(node) {
|
|
5
|
-
this.node = node;
|
|
6
|
-
}
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLW5vZGUtY29ubmVjdG9ycy1jb25uZWN0YWJsZS1zaWRlcy1yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1ub2RlL2NhbGN1bGF0ZS1ub2RlLWNvbm5lY3RvcnMtY29ubmVjdGFibGUtc2lkZXMvY2FsY3VsYXRlLW5vZGUtY29ubmVjdG9ycy1jb25uZWN0YWJsZS1zaWRlcy1yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyw4Q0FBOEM7SUFFN0I7SUFENUIsTUFBTSxDQUFVLE1BQU0sR0FBRyxNQUFNLENBQUMsZ0RBQWdELENBQUMsQ0FBQztJQUNsRixZQUE0QixJQUFlO1FBQWYsU0FBSSxHQUFKLElBQUksQ0FBVztJQUFHLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGTm9kZUJhc2UgfSBmcm9tICcuLi8uLi8uLi9mLW5vZGUnO1xuXG5leHBvcnQgY2xhc3MgQ2FsY3VsYXRlTm9kZUNvbm5lY3RvcnNDb25uZWN0YWJsZVNpZGVzUmVxdWVzdCB7XG4gIHN0YXRpYyByZWFkb25seSBmVG9rZW4gPSBTeW1ib2woJ0NhbGN1bGF0ZU5vZGVDb25uZWN0b3JzQ29ubmVjdGFibGVTaWRlc1JlcXVlc3QnKTtcbiAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IG5vZGU6IEZOb2RlQmFzZSkge31cbn1cbiJdfQ==
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { inject, Injectable } from '@angular/core';
|
|
3
|
-
import { FExecutionRegister, FMediator } from '@foblex/mediator';
|
|
4
|
-
import { CalculateNodeConnectorsConnectableSidesRequest } from './calculate-node-connectors-connectable-sides-request';
|
|
5
|
-
import { EFConnectableSide } from '../../../f-connectors';
|
|
6
|
-
import { CalculateConnectableSideByConnectedPositionsRequest, } from './calculate-connectable-side-by-connected-positions';
|
|
7
|
-
import { CalculateConnectableSideByInternalPositionRequest } from './calculate-connectable-side-by-internal-position';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
/** Fast predicate: whether the user side is a calculate mode. */
|
|
10
|
-
function isCalculateMode(side) {
|
|
11
|
-
return (side === EFConnectableSide.CALCULATE ||
|
|
12
|
-
side === EFConnectableSide.CALCULATE_HORIZONTAL ||
|
|
13
|
-
side === EFConnectableSide.CALCULATE_VERTICAL);
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Execution that calculates connectable sides for all connectors of a node.
|
|
17
|
-
*
|
|
18
|
-
* Performance goals:
|
|
19
|
-
* - Single-pass loops (no `forEach`).
|
|
20
|
-
* - Unique target recomputation (avoid repeated mediator calls for the same target).
|
|
21
|
-
* - Fast checks for "calculate" modes (bit mask instead of `includes`).
|
|
22
|
-
*/
|
|
23
|
-
let CalculateNodeConnectorsConnectableSides = class CalculateNodeConnectorsConnectableSides {
|
|
24
|
-
_mediator = inject(FMediator);
|
|
25
|
-
/**
|
|
26
|
-
* Orchestrates side calculation for all connectors of the given node.
|
|
27
|
-
* Two-phase approach:
|
|
28
|
-
* 1) Update each connector's own side.
|
|
29
|
-
* 2) Collect unique `toConnector` with calculate modes and recompute once.
|
|
30
|
-
*/
|
|
31
|
-
handle({ node }) {
|
|
32
|
-
const mediator = this._mediator;
|
|
33
|
-
const connectors = node.connectors;
|
|
34
|
-
const len = connectors.length;
|
|
35
|
-
for (let i = 0; i < len; i++) {
|
|
36
|
-
const connection = connectors[i];
|
|
37
|
-
connection.fConnectableSide = this._resolveSideForConnectorFast(mediator, connection);
|
|
38
|
-
}
|
|
39
|
-
const toRecalc = new Set();
|
|
40
|
-
for (let i = 0; i < len; i++) {
|
|
41
|
-
const source = connectors[i];
|
|
42
|
-
const outs = source.toConnector;
|
|
43
|
-
if (outs && outs.length) {
|
|
44
|
-
for (let j = 0, m = outs.length; j < m; j++) {
|
|
45
|
-
const target = outs[j];
|
|
46
|
-
const userSide = target.userFConnectableSide;
|
|
47
|
-
if (isCalculateMode(userSide)) {
|
|
48
|
-
toRecalc.add(target);
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
if (toRecalc.size > 0) {
|
|
54
|
-
toRecalc.forEach((target) => {
|
|
55
|
-
target.fConnectableSide = mediator.execute(new CalculateConnectableSideByConnectedPositionsRequest(target, userSideToTCalculateMode(target.userFConnectableSide)));
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* Fast resolver for a single connector.
|
|
61
|
-
* Uses switch and avoids array operations.
|
|
62
|
-
*/
|
|
63
|
-
_resolveSideForConnectorFast(mediator, connector) {
|
|
64
|
-
const preference = connector.userFConnectableSide;
|
|
65
|
-
if (preference !== EFConnectableSide.AUTO && !isCalculateMode(preference)) {
|
|
66
|
-
return preference;
|
|
67
|
-
}
|
|
68
|
-
if (preference === EFConnectableSide.AUTO) {
|
|
69
|
-
return mediator.execute(new CalculateConnectableSideByInternalPositionRequest(connector));
|
|
70
|
-
}
|
|
71
|
-
return mediator.execute(new CalculateConnectableSideByConnectedPositionsRequest(connector, userSideToTCalculateMode(preference)));
|
|
72
|
-
}
|
|
73
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateNodeConnectorsConnectableSides, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
74
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateNodeConnectorsConnectableSides });
|
|
75
|
-
};
|
|
76
|
-
CalculateNodeConnectorsConnectableSides = __decorate([
|
|
77
|
-
FExecutionRegister(CalculateNodeConnectorsConnectableSidesRequest)
|
|
78
|
-
], CalculateNodeConnectorsConnectableSides);
|
|
79
|
-
export { CalculateNodeConnectorsConnectableSides };
|
|
80
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateNodeConnectorsConnectableSides, decorators: [{
|
|
81
|
-
type: Injectable
|
|
82
|
-
}] });
|
|
83
|
-
/**
|
|
84
|
-
* Utility: maps EFConnectableSide user value to TCalculateMode safely.
|
|
85
|
-
* If your enums are distinct, implement the exact mapping here.
|
|
86
|
-
*/
|
|
87
|
-
function userSideToTCalculateMode(side) {
|
|
88
|
-
return side;
|
|
89
|
-
}
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLW5vZGUtY29ubmVjdG9ycy1jb25uZWN0YWJsZS1zaWRlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2Ytbm9kZS9jYWxjdWxhdGUtbm9kZS1jb25uZWN0b3JzLWNvbm5lY3RhYmxlLXNpZGVzL2NhbGN1bGF0ZS1ub2RlLWNvbm5lY3RvcnMtY29ubmVjdGFibGUtc2lkZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxTQUFTLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsOENBQThDLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUN2SCxPQUFPLEVBQUUsaUJBQWlCLEVBQWtCLE1BQU0sdUJBQXVCLENBQUM7QUFDMUUsT0FBTyxFQUNMLG1EQUFtRCxHQUVwRCxNQUFNLHFEQUFxRCxDQUFDO0FBQzdELE9BQU8sRUFBRSxpREFBaUQsRUFBRSxNQUFNLG1EQUFtRCxDQUFDOztBQUV0SCxpRUFBaUU7QUFDakUsU0FBUyxlQUFlLENBQUMsSUFBdUI7SUFDOUMsT0FBTyxDQUNMLElBQUksS0FBSyxpQkFBaUIsQ0FBQyxTQUFTO1FBQ3BDLElBQUksS0FBSyxpQkFBaUIsQ0FBQyxvQkFBb0I7UUFDL0MsSUFBSSxLQUFLLGlCQUFpQixDQUFDLGtCQUFrQixDQUM5QyxDQUFDO0FBQ0osQ0FBQztBQUVEOzs7Ozs7O0dBT0c7QUFHSSxJQUFNLHVDQUF1QyxHQUE3QyxNQUFNLHVDQUF1QztJQUdqQyxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRS9DOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFrRDtRQUNwRSxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsU0FB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Y3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgQ2FsY3VsYXRlTm9kZUNvbm5lY3RvcnNDb25uZWN0YWJsZVNpZGVzUmVxdWVzdCB9IGZyb20gJy4vY2FsY3VsYXRlLW5vZGUtY29ubmVjdG9ycy1jb25uZWN0YWJsZS1zaWRlcy1yZXF1ZXN0JztcbmltcG9ydCB7IEVGQ29ubmVjdGFibGVTaWRlLCBGQ29ubmVjdG9yQmFzZSB9IGZyb20gJy4uLy4uLy4uL2YtY29ubmVjdG9ycyc7XG5pbXBvcnQge1xuICBDYWxjdWxhdGVDb25uZWN0YWJsZVNpZGVCeUNvbm5lY3RlZFBvc2l0aW9uc1JlcXVlc3QsXG4gIFRDYWxjdWxhdGVNb2RlLFxufSBmcm9tICcuL2NhbGN1bGF0ZS1jb25uZWN0YWJsZS1zaWRlLWJ5LWNvbm5lY3RlZC1wb3NpdGlvbnMnO1xuaW1wb3J0IHsgQ2FsY3VsYXRlQ29ubmVjdGFibGVTaWRlQnlJbnRlcm5hbFBvc2l0aW9uUmVxdWVzdCB9IGZyb20gJy4vY2FsY3VsYXRlLWNvbm5lY3RhYmxlLXNpZGUtYnktaW50ZXJuYWwtcG9zaXRpb24nO1xuXG4vKiogRmFzdCBwcmVkaWNhdGU6IHdoZXRoZXIgdGhlIHVzZXIgc2lkZSBpcyBhIGNhbGN1bGF0ZSBtb2RlLiAqL1xuZnVuY3Rpb24gaXNDYWxjdWxhdGVNb2RlKHNpZGU6IEVGQ29ubmVjdGFibGVTaWRlKTogYm9vbGVhbiB7XG4gIHJldHVybiAoXG4gICAgc2lkZSA9PT0gRUZDb25uZWN0YWJsZVNpZGUuQ0FMQ1VMQVRFIHx8XG4gICAgc2lkZSA9PT0gRUZDb25uZWN0YWJsZVNpZGUuQ0FMQ1VMQVRFX0hPUklaT05UQUwgfHxcbiAgICBzaWRlID09PSBFRkNvbm5lY3RhYmxlU2lkZS5DQUxDVUxBVEVfVkVSVElDQUxcbiAgKTtcbn1cblxuLyoqXG4gKiBFeGVjdXRpb24gdGhhdCBjYWxjdWxhdGVzIGNvbm5lY3RhYmxlIHNpZGVzIGZvciBhbGwgY29ubmVjdG9ycyBvZiBhIG5vZGUuXG4gKlxuICogUGVyZm9ybWFuY2UgZ29hbHM6XG4gKiAtIFNpbmdsZS1wYXNzIGxvb3BzIChubyBgZm9yRWFjaGApLlxuICogLSBVbmlxdWUgdGFyZ2V0IHJlY29tcHV0YXRpb24gKGF2b2lkIHJlcGVhdGVkIG1lZGlhdG9yIGNhbGxzIGZvciB0aGUgc2FtZSB0YXJnZXQpLlxuICogLSBGYXN0IGNoZWNrcyBmb3IgXCJjYWxjdWxhdGVcIiBtb2RlcyAoYml0IG1hc2sgaW5zdGVhZCBvZiBgaW5jbHVkZXNgKS5cbiAqL1xuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihDYWxjdWxhdGVOb2RlQ29ubmVjdG9yc0Nvbm5lY3RhYmxlU2lkZXNSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIENhbGN1bGF0ZU5vZGVDb25uZWN0b3JzQ29ubmVjdGFibGVTaWRlc1xuICBpbXBsZW1lbnRzIElFeGVjdXRpb248Q2FsY3VsYXRlTm9kZUNvbm5lY3RvcnNDb25uZWN0YWJsZVNpZGVzUmVxdWVzdCwgdm9pZD5cbntcbiAgcHJpdmF0ZSByZWFkb25seSBfbWVkaWF0b3IgPSBpbmplY3QoRk1lZGlhdG9yKTtcblxuICAvKipcbiAgICogT3JjaGVzdHJhdGVzIHNpZGUgY2FsY3VsYXRpb24gZm9yIGFsbCBjb25uZWN0b3JzIG9mIHRoZSBnaXZlbiBub2RlLlxuICAgKiBUd28tcGhhc2UgYXBwcm9hY2g6XG4gICAqICAxKSBVcGRhdGUgZWFjaCBjb25uZWN0b3IncyBvd24gc2lkZS5cbiAgICogIDIpIENvbGxlY3QgdW5pcXVlIGB0b0Nvbm5lY3RvcmAgd2l0aCBjYWxjdWxhdGUgbW9kZXMgYW5kIHJlY29tcHV0ZSBvbmNlLlxuICAgKi9cbiAgcHVibGljIGhhbmRsZSh7IG5vZGUgfTogQ2FsY3VsYXRlTm9kZUNvbm5lY3RvcnNDb25uZWN0YWJsZVNpZGVzUmVxdWVzdCk6IHZvaWQge1xuICAgIGNvbnN0IG1lZGlhdG9yID0gdGhpcy5fbWVkaWF0b3I7XG4gICAgY29uc3QgY29ubmVjdG9ycyA9IG5vZGUuY29ubmVjdG9ycztcbiAgICBjb25zdCBsZW4gPSBjb25uZWN0b3JzLmxlbmd0aDtcblxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGVuOyBpKyspIHtcbiAgICAgIGNvbnN0IGNvbm5lY3Rpb24gPSBjb25uZWN0b3JzW2ldO1xuICAgICAgY29ubmVjdGlvbi5mQ29ubmVjdGFibGVTaWRlID0gdGhpcy5fcmVzb2x2ZVNpZGVGb3JDb25uZWN0b3JGYXN0KG1lZGlhdG9yLCBjb25uZWN0aW9uKTtcbiAgICB9XG5cbiAgICBjb25zdCB0b1JlY2FsYyA9IG5ldyBTZXQ8RkNvbm5lY3RvckJhc2U+KCk7XG5cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICBjb25zdCBzb3VyY2UgPSBjb25uZWN0b3JzW2ldO1xuICAgICAgY29uc3Qgb3V0cyA9IHNvdXJjZS50b0Nvbm5lY3RvcjtcbiAgICAgIGlmIChvdXRzICYmIG91dHMubGVuZ3RoKSB7XG4gICAgICAgIGZvciAobGV0IGogPSAwLCBtID0gb3V0cy5sZW5ndGg7IGogPCBtOyBqKyspIHtcbiAgICAgICAgICBjb25zdCB0YXJnZXQgPSBvdXRzW2pdO1xuICAgICAgICAgIGNvbnN0IHVzZXJTaWRlID0gdGFyZ2V0LnVzZXJGQ29ubmVjdGFibGVTaWRlO1xuICAgICAgICAgIGlmIChpc0NhbGN1bGF0ZU1vZGUodXNlclNpZGUpKSB7XG4gICAgICAgICAgICB0b1JlY2FsYy5hZGQodGFyZ2V0KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodG9SZWNhbGMuc2l6ZSA+IDApIHtcbiAgICAgIHRvUmVjYWxjLmZvckVhY2goKHRhcmdldCkgPT4ge1xuICAgICAgICB0YXJnZXQuZkNvbm5lY3RhYmxlU2lkZSA9IG1lZGlhdG9yLmV4ZWN1dGUoXG4gICAgICAgICAgbmV3IENhbGN1bGF0ZUNvbm5lY3RhYmxlU2lkZUJ5Q29ubmVjdGVkUG9zaXRpb25zUmVxdWVzdChcbiAgICAgICAgICAgIHRhcmdldCxcbiAgICAgICAgICAgIHVzZXJTaWRlVG9UQ2FsY3VsYXRlTW9kZSh0YXJnZXQudXNlckZDb25uZWN0YWJsZVNpZGUpLFxuICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRmFzdCByZXNvbHZlciBmb3IgYSBzaW5nbGUgY29ubmVjdG9yLlxuICAgKiBVc2VzIHN3aXRjaCBhbmQgYXZvaWRzIGFycmF5IG9wZXJhdGlvbnMuXG4gICAqL1xuICBwcml2YXRlIF9yZXNvbHZlU2lkZUZvckNvbm5lY3RvckZhc3QoXG4gICAgbWVkaWF0b3I6IEZNZWRpYXRvcixcbiAgICBjb25uZWN0b3I6IEZDb25uZWN0b3JCYXNlLFxuICApOiBFRkNvbm5lY3RhYmxlU2lkZSB7XG4gICAgY29uc3QgcHJlZmVyZW5jZSA9IGNvbm5lY3Rvci51c2VyRkNvbm5lY3RhYmxlU2lkZTtcblxuICAgIGlmIChwcmVmZXJlbmNlICE9PSBFRkNvbm5lY3RhYmxlU2lkZS5BVVRPICYmICFpc0NhbGN1bGF0ZU1vZGUocHJlZmVyZW5jZSkpIHtcbiAgICAgIHJldHVybiBwcmVmZXJlbmNlO1xuICAgIH1cblxuICAgIGlmIChwcmVmZXJlbmNlID09PSBFRkNvbm5lY3RhYmxlU2lkZS5BVVRPKSB7XG4gICAgICByZXR1cm4gbWVkaWF0b3IuZXhlY3V0ZShuZXcgQ2FsY3VsYXRlQ29ubmVjdGFibGVTaWRlQnlJbnRlcm5hbFBvc2l0aW9uUmVxdWVzdChjb25uZWN0b3IpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbWVkaWF0b3IuZXhlY3V0ZShcbiAgICAgIG5ldyBDYWxjdWxhdGVDb25uZWN0YWJsZVNpZGVCeUNvbm5lY3RlZFBvc2l0aW9uc1JlcXVlc3QoXG4gICAgICAgIGNvbm5lY3RvcixcbiAgICAgICAgdXNlclNpZGVUb1RDYWxjdWxhdGVNb2RlKHByZWZlcmVuY2UpLFxuICAgICAgKSxcbiAgICApO1xuICB9XG59XG5cbi8qKlxuICogVXRpbGl0eTogbWFwcyBFRkNvbm5lY3RhYmxlU2lkZSB1c2VyIHZhbHVlIHRvIFRDYWxjdWxhdGVNb2RlIHNhZmVseS5cbiAqIElmIHlvdXIgZW51bXMgYXJlIGRpc3RpbmN0LCBpbXBsZW1lbnQgdGhlIGV4YWN0IG1hcHBpbmcgaGVyZS5cbiAqL1xuZnVuY3Rpb24gdXNlclNpZGVUb1RDYWxjdWxhdGVNb2RlKHNpZGU6IEVGQ29ubmVjdGFibGVTaWRlKTogVENhbGN1bGF0ZU1vZGUge1xuICByZXR1cm4gc2lkZSBhcyB1bmtub3duIGFzIFRDYWxjdWxhdGVNb2RlO1xufVxuIl19
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export * from './calculate-connectable-side-by-connected-positions';
|
|
2
|
-
export * from './calculate-connectable-side-by-internal-position';
|
|
3
|
-
export * from './calculate-node-connectors-connectable-sides';
|
|
4
|
-
export * from './calculate-node-connectors-connectable-sides-request';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLW5vZGUvY2FsY3VsYXRlLW5vZGUtY29ubmVjdG9ycy1jb25uZWN0YWJsZS1zaWRlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHFEQUFxRCxDQUFDO0FBRXBFLGNBQWMsbURBQW1ELENBQUM7QUFFbEUsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLHVEQUF1RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jYWxjdWxhdGUtY29ubmVjdGFibGUtc2lkZS1ieS1jb25uZWN0ZWQtcG9zaXRpb25zJztcblxuZXhwb3J0ICogZnJvbSAnLi9jYWxjdWxhdGUtY29ubmVjdGFibGUtc2lkZS1ieS1pbnRlcm5hbC1wb3NpdGlvbic7XG5cbmV4cG9ydCAqIGZyb20gJy4vY2FsY3VsYXRlLW5vZGUtY29ubmVjdG9ycy1jb25uZWN0YWJsZS1zaWRlcyc7XG5leHBvcnQgKiBmcm9tICcuL2NhbGN1bGF0ZS1ub2RlLWNvbm5lY3RvcnMtY29ubmVjdGFibGUtc2lkZXMtcmVxdWVzdCc7XG4iXX0=
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export class GetNodesRequest {
|
|
2
|
-
static fToken = Symbol('GetNodesRequest');
|
|
3
|
-
}
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LW5vZGVzLXJlcXVlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLW5vZGUvZ2V0LW5vZGVzL2dldC1ub2Rlcy1yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxlQUFlO0lBQzFCLE1BQU0sQ0FBVSxNQUFNLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgR2V0Tm9kZXNSZXF1ZXN0IHtcbiAgc3RhdGljIHJlYWRvbmx5IGZUb2tlbiA9IFN5bWJvbCgnR2V0Tm9kZXNSZXF1ZXN0Jyk7XG5cbn1cbiJdfQ==
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { inject, Injectable } from '@angular/core';
|
|
3
|
-
import { FExecutionRegister } from '@foblex/mediator';
|
|
4
|
-
import { GetNodesRequest } from './get-nodes-request';
|
|
5
|
-
import { FComponentsStore } from '../../../f-storage';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
/**
|
|
8
|
-
* Execution that retrieves all nodes from the FComponentsStore.
|
|
9
|
-
*/
|
|
10
|
-
let GetNodes = class GetNodes {
|
|
11
|
-
_store = inject(FComponentsStore);
|
|
12
|
-
handle(request) {
|
|
13
|
-
return this._store.fNodes;
|
|
14
|
-
}
|
|
15
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GetNodes, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
16
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GetNodes });
|
|
17
|
-
};
|
|
18
|
-
GetNodes = __decorate([
|
|
19
|
-
FExecutionRegister(GetNodesRequest)
|
|
20
|
-
], GetNodes);
|
|
21
|
-
export { GetNodes };
|
|
22
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GetNodes, decorators: [{
|
|
23
|
-
type: Injectable
|
|
24
|
-
}] });
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LW5vZGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1ub2RlL2dldC1ub2Rlcy9nZXQtbm9kZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFHdEQ7O0dBRUc7QUFHSSxJQUFNLFFBQVEsR0FBZCxNQUFNLFFBQVE7SUFFRixNQUFNLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFFNUMsTUFBTSxDQUFDLE9BQXdCO1FBQ3BDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDNUIsQ0FBQzt3R0FOVSxRQUFROzRHQUFSLFFBQVE7O0FBQVIsUUFBUTtJQURwQixrQkFBa0IsQ0FBQyxlQUFlLENBQUM7R0FDdkIsUUFBUSxDQU9wQjs7NEZBUFksUUFBUTtrQkFGcEIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBHZXROb2Rlc1JlcXVlc3QgfSBmcm9tICcuL2dldC1ub2Rlcy1yZXF1ZXN0JztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgRk5vZGVCYXNlIH0gZnJvbSAnLi4vLi4vLi4vZi1ub2RlJztcblxuLyoqXG4gKiBFeGVjdXRpb24gdGhhdCByZXRyaWV2ZXMgYWxsIG5vZGVzIGZyb20gdGhlIEZDb21wb25lbnRzU3RvcmUuXG4gKi9cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoR2V0Tm9kZXNSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIEdldE5vZGVzIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxHZXROb2Rlc1JlcXVlc3QsIEZOb2RlQmFzZVtdPiB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfc3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSk7XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBHZXROb2Rlc1JlcXVlc3QpOiBGTm9kZUJhc2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuX3N0b3JlLmZOb2RlcztcbiAgfVxufVxuIl19
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './get-nodes';
|
|
2
|
-
export * from './get-nodes-request';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLW5vZGUvZ2V0LW5vZGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsYUFBYSxDQUFDO0FBRTVCLGNBQWMscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2dldC1ub2Rlcyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZ2V0LW5vZGVzLXJlcXVlc3QnO1xuIl19
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { MoveFrontElementsBeforeTargetElementRequest } from './move-front-elements-before-target-element.request';
|
|
3
|
-
import { Injectable } from '@angular/core';
|
|
4
|
-
import { FExecutionRegister } from '@foblex/mediator';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
/**
|
|
7
|
-
* Execution that moves elements in the FItemsContainer before a target element.
|
|
8
|
-
* It removes elements that should not be in front and inserts them before the target element.
|
|
9
|
-
*/
|
|
10
|
-
let MoveFrontElementsBeforeTargetElementExecution = class MoveFrontElementsBeforeTargetElementExecution {
|
|
11
|
-
handle(request) {
|
|
12
|
-
const elementsToMove = [];
|
|
13
|
-
for (let i = request.targetIndex + 1; i < request.allElements.length; i++) {
|
|
14
|
-
const element = request.allElements[i];
|
|
15
|
-
if (!request.elementsThatShouldBeInFront.includes(element)) {
|
|
16
|
-
elementsToMove.push(element);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
elementsToMove.forEach((x) => {
|
|
20
|
-
request.fItemsContainer.removeChild(x);
|
|
21
|
-
request.fItemsContainer.insertBefore(x, request.allElements[request.targetIndex]);
|
|
22
|
-
});
|
|
23
|
-
}
|
|
24
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MoveFrontElementsBeforeTargetElementExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
25
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MoveFrontElementsBeforeTargetElementExecution });
|
|
26
|
-
};
|
|
27
|
-
MoveFrontElementsBeforeTargetElementExecution = __decorate([
|
|
28
|
-
FExecutionRegister(MoveFrontElementsBeforeTargetElementRequest)
|
|
29
|
-
], MoveFrontElementsBeforeTargetElementExecution);
|
|
30
|
-
export { MoveFrontElementsBeforeTargetElementExecution };
|
|
31
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MoveFrontElementsBeforeTargetElementExecution, decorators: [{
|
|
32
|
-
type: Injectable
|
|
33
|
-
}] });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW92ZS1mcm9udC1lbGVtZW50cy1iZWZvcmUtdGFyZ2V0LWVsZW1lbnQuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vdXBkYXRlLWl0ZW0tYW5kLWNoaWxkcmVuLWxheWVycy9tb3ZlLWZyb250LWVsZW1lbnRzLWJlZm9yZS10YXJnZXQtZWxlbWVudC9tb3ZlLWZyb250LWVsZW1lbnRzLWJlZm9yZS10YXJnZXQtZWxlbWVudC5leGVjdXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSwyQ0FBMkMsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ2xILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGtCQUFrQixFQUFjLE1BQU0sa0JBQWtCLENBQUM7O0FBRWxFOzs7R0FHRztBQUdJLElBQU0sNkNBQTZDLEdBQW5ELE1BQU0sNkNBQTZDO0lBRWpELE1BQU0sQ0FBQyxPQUFvRDtRQUNoRSxNQUFNLGNBQWMsR0FBYyxFQUFFLENBQUM7UUFDckMsS0FBSyxJQUFJLENBQUMsR0FBRyxPQUFPLENBQUMsV0FBVyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUMxRSxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFFLENBQUMsQ0FBRSxDQUFDO1lBQ3pDLElBQUksQ0FBQyxPQUFPLENBQUMsMkJBQTJCLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQzNELGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDL0IsQ0FBQztRQUNILENBQUM7UUFDRCxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDM0IsT0FBTyxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdkMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxXQUFXLENBQUUsT0FBTyxDQUFDLFdBQVcsQ0FBRSxDQUFDLENBQUM7UUFDdEYsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3dHQWRVLDZDQUE2Qzs0R0FBN0MsNkNBQTZDOztBQUE3Qyw2Q0FBNkM7SUFEekQsa0JBQWtCLENBQUMsMkNBQTJDLENBQUM7R0FDbkQsNkNBQTZDLENBZXpEOzs0RkFmWSw2Q0FBNkM7a0JBRnpELFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb3ZlRnJvbnRFbGVtZW50c0JlZm9yZVRhcmdldEVsZW1lbnRSZXF1ZXN0IH0gZnJvbSAnLi9tb3ZlLWZyb250LWVsZW1lbnRzLWJlZm9yZS10YXJnZXQtZWxlbWVudC5yZXF1ZXN0JztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuXG4vKipcbiAqIEV4ZWN1dGlvbiB0aGF0IG1vdmVzIGVsZW1lbnRzIGluIHRoZSBGSXRlbXNDb250YWluZXIgYmVmb3JlIGEgdGFyZ2V0IGVsZW1lbnQuXG4gKiBJdCByZW1vdmVzIGVsZW1lbnRzIHRoYXQgc2hvdWxkIG5vdCBiZSBpbiBmcm9udCBhbmQgaW5zZXJ0cyB0aGVtIGJlZm9yZSB0aGUgdGFyZ2V0IGVsZW1lbnQuXG4gKi9cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoTW92ZUZyb250RWxlbWVudHNCZWZvcmVUYXJnZXRFbGVtZW50UmVxdWVzdClcbmV4cG9ydCBjbGFzcyBNb3ZlRnJvbnRFbGVtZW50c0JlZm9yZVRhcmdldEVsZW1lbnRFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPE1vdmVGcm9udEVsZW1lbnRzQmVmb3JlVGFyZ2V0RWxlbWVudFJlcXVlc3QsIHZvaWQ+IHtcblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IE1vdmVGcm9udEVsZW1lbnRzQmVmb3JlVGFyZ2V0RWxlbWVudFJlcXVlc3QpOiB2b2lkIHtcbiAgICBjb25zdCBlbGVtZW50c1RvTW92ZTogRWxlbWVudFtdID0gW107XG4gICAgZm9yIChsZXQgaSA9IHJlcXVlc3QudGFyZ2V0SW5kZXggKyAxOyBpIDwgcmVxdWVzdC5hbGxFbGVtZW50cy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgZWxlbWVudCA9IHJlcXVlc3QuYWxsRWxlbWVudHNbIGkgXTtcbiAgICAgIGlmICghcmVxdWVzdC5lbGVtZW50c1RoYXRTaG91bGRCZUluRnJvbnQuaW5jbHVkZXMoZWxlbWVudCkpIHtcbiAgICAgICAgZWxlbWVudHNUb01vdmUucHVzaChlbGVtZW50KTtcbiAgICAgIH1cbiAgICB9XG4gICAgZWxlbWVudHNUb01vdmUuZm9yRWFjaCgoeCkgPT4ge1xuICAgICAgcmVxdWVzdC5mSXRlbXNDb250YWluZXIucmVtb3ZlQ2hpbGQoeCk7XG4gICAgICByZXF1ZXN0LmZJdGVtc0NvbnRhaW5lci5pbnNlcnRCZWZvcmUoeCwgcmVxdWVzdC5hbGxFbGVtZW50c1sgcmVxdWVzdC50YXJnZXRJbmRleCBdKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export class MoveFrontElementsBeforeTargetElementRequest {
|
|
2
|
-
fItemsContainer;
|
|
3
|
-
allElements;
|
|
4
|
-
elementsThatShouldBeInFront;
|
|
5
|
-
targetIndex;
|
|
6
|
-
static fToken = Symbol('MoveFrontElementsBeforeTargetElementRequest');
|
|
7
|
-
constructor(fItemsContainer, // fGroupsContainer || fNodesContainer || fConnectionsContainer
|
|
8
|
-
allElements, elementsThatShouldBeInFront, targetIndex) {
|
|
9
|
-
this.fItemsContainer = fItemsContainer;
|
|
10
|
-
this.allElements = allElements;
|
|
11
|
-
this.elementsThatShouldBeInFront = elementsThatShouldBeInFront;
|
|
12
|
-
this.targetIndex = targetIndex;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW92ZS1mcm9udC1lbGVtZW50cy1iZWZvcmUtdGFyZ2V0LWVsZW1lbnQucmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL3VwZGF0ZS1pdGVtLWFuZC1jaGlsZHJlbi1sYXllcnMvbW92ZS1mcm9udC1lbGVtZW50cy1iZWZvcmUtdGFyZ2V0LWVsZW1lbnQvbW92ZS1mcm9udC1lbGVtZW50cy1iZWZvcmUtdGFyZ2V0LWVsZW1lbnQucmVxdWVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sMkNBQTJDO0lBRzdDO0lBQ0E7SUFDQTtJQUNBO0lBTFQsTUFBTSxDQUFVLE1BQU0sR0FBRyxNQUFNLENBQUMsNkNBQTZDLENBQUMsQ0FBQztJQUMvRSxZQUNTLGVBQTRCLEVBQUUsK0RBQStEO0lBQzdGLFdBQXNCLEVBQ3RCLDJCQUFzQyxFQUN0QyxXQUFtQjtRQUhuQixvQkFBZSxHQUFmLGVBQWUsQ0FBYTtRQUM1QixnQkFBVyxHQUFYLFdBQVcsQ0FBVztRQUN0QixnQ0FBMkIsR0FBM0IsMkJBQTJCLENBQVc7UUFDdEMsZ0JBQVcsR0FBWCxXQUFXLENBQVE7SUFFNUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBNb3ZlRnJvbnRFbGVtZW50c0JlZm9yZVRhcmdldEVsZW1lbnRSZXF1ZXN0IHtcbiAgc3RhdGljIHJlYWRvbmx5IGZUb2tlbiA9IFN5bWJvbCgnTW92ZUZyb250RWxlbWVudHNCZWZvcmVUYXJnZXRFbGVtZW50UmVxdWVzdCcpO1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZkl0ZW1zQ29udGFpbmVyOiBIVE1MRWxlbWVudCwgLy8gZkdyb3Vwc0NvbnRhaW5lciB8fCBmTm9kZXNDb250YWluZXIgfHwgZkNvbm5lY3Rpb25zQ29udGFpbmVyXG4gICAgcHVibGljIGFsbEVsZW1lbnRzOiBFbGVtZW50W10sXG4gICAgcHVibGljIGVsZW1lbnRzVGhhdFNob3VsZEJlSW5Gcm9udDogRWxlbWVudFtdLFxuICAgIHB1YmxpYyB0YXJnZXRJbmRleDogbnVtYmVyLFxuICApIHtcbiAgfVxufVxuIl19
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { inject, Injectable } from '@angular/core';
|
|
3
|
-
import { FComponentsStore } from '../../../../f-storage';
|
|
4
|
-
import { isNodeOutlet, isNodeOutput } from '../../../../f-connectors';
|
|
5
|
-
import { FCreateConnectionPreparationRequest } from './f-create-connection-preparation.request';
|
|
6
|
-
import { FExecutionRegister, FMediator } from '@foblex/mediator';
|
|
7
|
-
import { FCreateConnectionFromOutletPreparationRequest } from './from-outlet-preparation';
|
|
8
|
-
import { FCreateConnectionFromOutputPreparationRequest } from './from-output-preparation';
|
|
9
|
-
import { FDraggableDataContext } from '../../../f-draggable-data-context';
|
|
10
|
-
import { isValidEventTrigger } from '../../../../domain';
|
|
11
|
-
import * as i0 from "@angular/core";
|
|
12
|
-
let FCreateConnectionPreparationExecution = class FCreateConnectionPreparationExecution {
|
|
13
|
-
_fMediator = inject(FMediator);
|
|
14
|
-
_store = inject(FComponentsStore);
|
|
15
|
-
_dragContext = inject(FDraggableDataContext);
|
|
16
|
-
_fNode;
|
|
17
|
-
handle(request) {
|
|
18
|
-
if (!this._isValid(request) || !this._isValidTrigger(request)) {
|
|
19
|
-
return;
|
|
20
|
-
}
|
|
21
|
-
if (isNodeOutlet(request.event.targetElement)) {
|
|
22
|
-
this._fMediator.execute(new FCreateConnectionFromOutletPreparationRequest(request.event, this._fNode));
|
|
23
|
-
}
|
|
24
|
-
else if (isNodeOutput(request.event.targetElement)) {
|
|
25
|
-
this._fMediator.execute(new FCreateConnectionFromOutputPreparationRequest(request.event, this._fNode));
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
_isValid(request) {
|
|
29
|
-
return !!this._getNode(request.event) && this._isValidConditions();
|
|
30
|
-
}
|
|
31
|
-
_getNode(event) {
|
|
32
|
-
this._fNode = this._store
|
|
33
|
-
.fNodes.find(n => n.isContains(event.targetElement));
|
|
34
|
-
return this._fNode;
|
|
35
|
-
}
|
|
36
|
-
_isValidConditions() {
|
|
37
|
-
return this._dragContext.isEmpty() && !!this._store.fTempConnection;
|
|
38
|
-
}
|
|
39
|
-
_isValidTrigger(request) {
|
|
40
|
-
return isValidEventTrigger(request.event.originalEvent, request.fTrigger);
|
|
41
|
-
}
|
|
42
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FCreateConnectionPreparationExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
43
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FCreateConnectionPreparationExecution });
|
|
44
|
-
};
|
|
45
|
-
FCreateConnectionPreparationExecution = __decorate([
|
|
46
|
-
FExecutionRegister(FCreateConnectionPreparationRequest)
|
|
47
|
-
], FCreateConnectionPreparationExecution);
|
|
48
|
-
export { FCreateConnectionPreparationExecution };
|
|
49
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FCreateConnectionPreparationExecution, decorators: [{
|
|
50
|
-
type: Injectable
|
|
51
|
-
}] });
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jcmVhdGUtY29ubmVjdGlvbi1wcmVwYXJhdGlvbi5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2YtY29ubmVjdGlvbi9mLWNyZWF0ZS1jb25uZWN0aW9uL2NyZWF0ZS1wcmVwYXJhdGlvbi9mLWNyZWF0ZS1jb25uZWN0aW9uLXByZXBhcmF0aW9uLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUV0RSxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNoRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakUsT0FBTyxFQUFFLDZDQUE2QyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUYsT0FBTyxFQUFFLDZDQUE2QyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFMUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBS2xELElBQU0scUNBQXFDLEdBQTNDLE1BQU0scUNBQXFDO0lBR3hDLFVBQVUsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0IsTUFBTSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ2xDLFlBQVksR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUU3QyxNQUFNLENBQXdCO0lBRS9CLE1BQU0sQ0FBQyxPQUE0QztRQUN4RCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUM5RCxPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksWUFBWSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztZQUM5QyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FDckIsSUFBSSw2Q0FBNkMsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFPLENBQUMsQ0FDL0UsQ0FBQztRQUNKLENBQUM7YUFBTSxJQUFJLFlBQVksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7WUFDckQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQ3JCLElBQUksNkNBQTZDLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTyxDQUFDLENBQy9FLENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQztJQUVPLFFBQVEsQ0FBQyxPQUE0QztRQUMzRCxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUNyRSxDQUFDO0lBRU8sUUFBUSxDQUFDLEtBQW9CO1FBQ25DLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU07YUFDdEIsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7UUFFdkQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFTyxrQkFBa0I7UUFDeEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQztJQUN0RSxDQUFDO0lBRU8sZUFBZSxDQUFDLE9BQThDO1FBQ3BFLE9BQU8sbUJBQW1CLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzVFLENBQUM7d0dBMUNVLHFDQUFxQzs0R0FBckMscUNBQXFDOztBQUFyQyxxQ0FBcUM7SUFEakQsa0JBQWtCLENBQUMsbUNBQW1DLENBQUM7R0FDM0MscUNBQXFDLENBMkNqRDs7NEZBM0NZLHFDQUFxQztrQkFGakQsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElIYW5kbGVyIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgaXNOb2RlT3V0bGV0LCBpc05vZGVPdXRwdXQgfSBmcm9tICcuLi8uLi8uLi8uLi9mLWNvbm5lY3RvcnMnO1xuaW1wb3J0IHsgRk5vZGVCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZi1ub2RlJztcbmltcG9ydCB7IEZDcmVhdGVDb25uZWN0aW9uUHJlcGFyYXRpb25SZXF1ZXN0IH0gZnJvbSAnLi9mLWNyZWF0ZS1jb25uZWN0aW9uLXByZXBhcmF0aW9uLnJlcXVlc3QnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBGTWVkaWF0b3IgfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IEZDcmVhdGVDb25uZWN0aW9uRnJvbU91dGxldFByZXBhcmF0aW9uUmVxdWVzdCB9IGZyb20gJy4vZnJvbS1vdXRsZXQtcHJlcGFyYXRpb24nO1xuaW1wb3J0IHsgRkNyZWF0ZUNvbm5lY3Rpb25Gcm9tT3V0cHV0UHJlcGFyYXRpb25SZXF1ZXN0IH0gZnJvbSAnLi9mcm9tLW91dHB1dC1wcmVwYXJhdGlvbic7XG5pbXBvcnQgeyBGRHJhZ2dhYmxlRGF0YUNvbnRleHQgfSBmcm9tICcuLi8uLi8uLi9mLWRyYWdnYWJsZS1kYXRhLWNvbnRleHQnO1xuaW1wb3J0IHsgRlJlYXNzaWduQ29ubmVjdGlvblByZXBhcmF0aW9uUmVxdWVzdCB9IGZyb20gJy4uLy4uL2YtcmVhc3NpZ24tY29ubmVjdGlvbic7XG5pbXBvcnQgeyBpc1ZhbGlkRXZlbnRUcmlnZ2VyIH0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IElQb2ludGVyRXZlbnQgfSBmcm9tIFwiLi4vLi4vLi4vLi4vZHJhZy10b29sa2l0XCI7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoRkNyZWF0ZUNvbm5lY3Rpb25QcmVwYXJhdGlvblJlcXVlc3QpXG5leHBvcnQgY2xhc3MgRkNyZWF0ZUNvbm5lY3Rpb25QcmVwYXJhdGlvbkV4ZWN1dGlvblxuICBpbXBsZW1lbnRzIElIYW5kbGVyPEZDcmVhdGVDb25uZWN0aW9uUHJlcGFyYXRpb25SZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSBfZk1lZGlhdG9yID0gaW5qZWN0KEZNZWRpYXRvcik7XG4gIHByaXZhdGUgX3N0b3JlID0gaW5qZWN0KEZDb21wb25lbnRzU3RvcmUpO1xuICBwcml2YXRlIF9kcmFnQ29udGV4dCA9IGluamVjdChGRHJhZ2dhYmxlRGF0YUNvbnRleHQpO1xuXG4gIHByaXZhdGUgX2ZOb2RlOiBGTm9kZUJhc2UgfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBGQ3JlYXRlQ29ubmVjdGlvblByZXBhcmF0aW9uUmVxdWVzdCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5faXNWYWxpZChyZXF1ZXN0KSB8fCAhdGhpcy5faXNWYWxpZFRyaWdnZXIocmVxdWVzdCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoaXNOb2RlT3V0bGV0KHJlcXVlc3QuZXZlbnQudGFyZ2V0RWxlbWVudCkpIHtcbiAgICAgIHRoaXMuX2ZNZWRpYXRvci5leGVjdXRlPHZvaWQ+KFxuICAgICAgICBuZXcgRkNyZWF0ZUNvbm5lY3Rpb25Gcm9tT3V0bGV0UHJlcGFyYXRpb25SZXF1ZXN0KHJlcXVlc3QuZXZlbnQsIHRoaXMuX2ZOb2RlISksXG4gICAgICApO1xuICAgIH0gZWxzZSBpZiAoaXNOb2RlT3V0cHV0KHJlcXVlc3QuZXZlbnQudGFyZ2V0RWxlbWVudCkpIHtcbiAgICAgIHRoaXMuX2ZNZWRpYXRvci5leGVjdXRlPHZvaWQ+KFxuICAgICAgICBuZXcgRkNyZWF0ZUNvbm5lY3Rpb25Gcm9tT3V0cHV0UHJlcGFyYXRpb25SZXF1ZXN0KHJlcXVlc3QuZXZlbnQsIHRoaXMuX2ZOb2RlISksXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2lzVmFsaWQocmVxdWVzdDogRkNyZWF0ZUNvbm5lY3Rpb25QcmVwYXJhdGlvblJlcXVlc3QpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLl9nZXROb2RlKHJlcXVlc3QuZXZlbnQpICYmIHRoaXMuX2lzVmFsaWRDb25kaXRpb25zKCk7XG4gIH1cblxuICBwcml2YXRlIF9nZXROb2RlKGV2ZW50OiBJUG9pbnRlckV2ZW50KTogRk5vZGVCYXNlIHwgdW5kZWZpbmVkIHtcbiAgICB0aGlzLl9mTm9kZSA9IHRoaXMuX3N0b3JlXG4gICAgICAuZk5vZGVzLmZpbmQobiA9PiBuLmlzQ29udGFpbnMoZXZlbnQudGFyZ2V0RWxlbWVudCkpO1xuXG4gICAgcmV0dXJuIHRoaXMuX2ZOb2RlO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNWYWxpZENvbmRpdGlvbnMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2RyYWdDb250ZXh0LmlzRW1wdHkoKSAmJiAhIXRoaXMuX3N0b3JlLmZUZW1wQ29ubmVjdGlvbjtcbiAgfVxuXG4gIHByaXZhdGUgX2lzVmFsaWRUcmlnZ2VyKHJlcXVlc3Q6IEZSZWFzc2lnbkNvbm5lY3Rpb25QcmVwYXJhdGlvblJlcXVlc3QpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXNWYWxpZEV2ZW50VHJpZ2dlcihyZXF1ZXN0LmV2ZW50Lm9yaWdpbmFsRXZlbnQsIHJlcXVlc3QuZlRyaWdnZXIpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export class FCreateConnectionPreparationRequest {
|
|
2
|
-
event;
|
|
3
|
-
fTrigger;
|
|
4
|
-
static fToken = Symbol('FCreateConnectionPreparationRequest');
|
|
5
|
-
constructor(event, fTrigger) {
|
|
6
|
-
this.event = event;
|
|
7
|
-
this.fTrigger = fTrigger;
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jcmVhdGUtY29ubmVjdGlvbi1wcmVwYXJhdGlvbi5yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLWNvbm5lY3Rpb24vZi1jcmVhdGUtY29ubmVjdGlvbi9jcmVhdGUtcHJlcGFyYXRpb24vZi1jcmVhdGUtY29ubmVjdGlvbi1wcmVwYXJhdGlvbi5yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sT0FBTyxtQ0FBbUM7SUFHckM7SUFDQTtJQUhULE1BQU0sQ0FBVSxNQUFNLEdBQUcsTUFBTSxDQUFDLHFDQUFxQyxDQUFDLENBQUM7SUFDdkUsWUFDUyxLQUFvQixFQUNwQixRQUF1QjtRQUR2QixVQUFLLEdBQUwsS0FBSyxDQUFlO1FBQ3BCLGFBQVEsR0FBUixRQUFRLENBQWU7SUFFaEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZFdmVudFRyaWdnZXIgfSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgSVBvaW50ZXJFdmVudCB9IGZyb20gXCIuLi8uLi8uLi8uLi9kcmFnLXRvb2xraXRcIjtcblxuZXhwb3J0IGNsYXNzIEZDcmVhdGVDb25uZWN0aW9uUHJlcGFyYXRpb25SZXF1ZXN0IHtcbiAgc3RhdGljIHJlYWRvbmx5IGZUb2tlbiA9IFN5bWJvbCgnRkNyZWF0ZUNvbm5lY3Rpb25QcmVwYXJhdGlvblJlcXVlc3QnKTtcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGV2ZW50OiBJUG9pbnRlckV2ZW50LFxuICAgIHB1YmxpYyBmVHJpZ2dlcjogRkV2ZW50VHJpZ2dlcixcbiAgKSB7XG4gIH1cbn1cbiJdfQ==
|