@foblex/flow 12.2.3 → 12.3.5
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/LICENSE +0 -7
- package/README.md +33 -7
- package/domain/cast-to-enum.d.ts +1 -0
- package/domain/clear-selection/{clear-selection.handler.d.ts → clear-selection.execution.d.ts} +4 -4
- package/domain/clear-selection/index.d.ts +1 -1
- package/domain/create-connection-markers/{create-connection-markers.handler.d.ts → create-connection-markers.execution.d.ts} +4 -4
- package/domain/create-connection-markers/index.d.ts +1 -1
- package/domain/get-can-be-selected-items/get-can-be-selected-items-request.d.ts +2 -0
- package/{f-draggable/selection-area/get-can-be-selected-items/get-can-be-selected-items.handler.d.ts → domain/get-can-be-selected-items/get-can-be-selected-items.execution.d.ts} +6 -7
- package/{f-draggable/selection-area → domain}/get-can-be-selected-items/i-selectable-with-rect.d.ts +1 -1
- package/domain/get-can-be-selected-items/index.d.ts +2 -0
- package/domain/get-connection-line/get-connection-line.execution.d.ts +13 -0
- package/domain/get-connection-line/get-connection-line.request.d.ts +11 -0
- package/domain/get-connection-line/index.d.ts +2 -0
- package/domain/get-element-rect-in-flow/{get-element-rect-in-flow.handler.d.ts → get-element-rect-in-flow.execution.d.ts} +8 -5
- package/domain/get-element-rect-in-flow/index.d.ts +1 -1
- package/domain/get-input-rect-in-flow/get-input-rect-in-flow-response.d.ts +3 -3
- package/domain/get-input-rect-in-flow/{get-input-rect-in-flow.handler.d.ts → get-input-rect-in-flow.execution.d.ts} +4 -5
- package/domain/get-input-rect-in-flow/index.d.ts +1 -1
- package/domain/get-nodes-rect/get-nodes-rect.execution.d.ts +12 -0
- package/domain/get-nodes-rect/index.d.ts +1 -1
- package/domain/get-output-rect-in-flow/get-output-rect-in-flow-response.d.ts +3 -3
- package/domain/get-output-rect-in-flow/{get-output-rect-in-flow.handler.d.ts → get-output-rect-in-flow.execution.d.ts} +4 -5
- package/domain/get-output-rect-in-flow/index.d.ts +1 -1
- package/domain/get-position-in-flow/{get-position-in-flow.handler.d.ts → get-position-in-flow.execution.d.ts} +5 -4
- package/domain/get-position-in-flow/index.d.ts +1 -1
- package/domain/get-selection/{get-selection.handler.d.ts → get-selection.execution.d.ts} +4 -4
- package/domain/get-selection/index.d.ts +1 -1
- package/domain/get-value-from-data-attr.d.ts +1 -0
- package/domain/index.d.ts +8 -1
- package/domain/intersections/e-f-connector-shape.d.ts +3 -0
- package/domain/intersections/f-connector-shape.extensions.d.ts +11 -0
- package/domain/intersections/i-connector-shape.d.ts +6 -0
- package/domain/intersections/index.d.ts +5 -0
- package/domain/intersections/intersection-finder.d.ts +67 -0
- package/domain/intersections/rounded-rect/i-rounded-rect.d.ts +8 -0
- package/domain/intersections/rounded-rect/index.d.ts +2 -0
- package/domain/intersections/rounded-rect/rounded-rect.d.ts +22 -0
- package/domain/is-connection-under-node/index.d.ts +1 -0
- package/{f-draggable/node/domain/is-connection-under-node/is-connection-under-node.handler.d.ts → domain/is-connection-under-node/is-connection-under-node.execution.d.ts} +9 -8
- package/domain/is-connection-under-node/is-connection-under-node.request.d.ts +2 -0
- package/domain/is-element-with-class.d.ts +1 -0
- package/domain/providers.d.ts +17 -14
- package/domain/redraw-connections/index.d.ts +1 -1
- package/domain/redraw-connections/{redraw-connections.handler.d.ts → redraw-connections.execution.d.ts} +5 -6
- package/domain/select/index.d.ts +1 -1
- package/domain/select/{select.handler.d.ts → select.execution.d.ts} +4 -4
- package/domain/select-all/index.d.ts +1 -1
- package/domain/select-all/{select-all.handler.d.ts → select-all.execution.d.ts} +4 -4
- package/domain/select-and-update-node-layer/index.d.ts +2 -0
- package/domain/select-and-update-node-layer/select-and-update-node-layer.execution.d.ts +16 -0
- package/domain/select-and-update-node-layer/select-and-update-node-layer.request.d.ts +5 -0
- package/domain/update-item-layer/index.d.ts +1 -1
- package/domain/update-item-layer/update-item-layer.execution.d.ts +8 -0
- package/esm2022/domain/cast-to-enum.mjs +31 -0
- package/esm2022/domain/clear-selection/clear-selection.execution.mjs +28 -0
- package/esm2022/domain/clear-selection/index.mjs +2 -2
- package/esm2022/domain/create-connection-markers/create-connection-markers.execution.mjs +49 -0
- package/esm2022/domain/create-connection-markers/index.mjs +2 -2
- package/esm2022/domain/get-can-be-selected-items/get-can-be-selected-items-request.mjs +3 -0
- package/esm2022/domain/get-can-be-selected-items/get-can-be-selected-items.execution.mjs +57 -0
- package/esm2022/domain/get-can-be-selected-items/i-selectable-with-rect.mjs +2 -0
- package/esm2022/domain/get-can-be-selected-items/index.mjs +3 -0
- package/esm2022/domain/get-connection-line/get-connection-line.execution.mjs +68 -0
- package/esm2022/domain/get-connection-line/get-connection-line.request.mjs +10 -0
- package/esm2022/domain/get-connection-line/index.mjs +3 -0
- package/esm2022/domain/get-connection.handler.mjs +5 -5
- package/esm2022/domain/get-element-rect-in-flow/get-element-rect-in-flow.execution.mjs +41 -0
- package/esm2022/domain/get-element-rect-in-flow/index.mjs +2 -2
- package/esm2022/domain/get-incoming-connections.handler.mjs +4 -4
- package/esm2022/domain/get-input-rect-in-flow/get-input-rect-in-flow-response.mjs +1 -1
- package/esm2022/domain/get-input-rect-in-flow/get-input-rect-in-flow.execution.mjs +33 -0
- package/esm2022/domain/get-input-rect-in-flow/index.mjs +2 -2
- package/esm2022/domain/get-nodes-rect/get-nodes-rect.execution.mjs +29 -0
- package/esm2022/domain/get-nodes-rect/index.mjs +2 -2
- package/esm2022/domain/get-outgoing-connections.handler.mjs +4 -4
- package/esm2022/domain/get-output-rect-in-flow/get-output-rect-in-flow-response.mjs +1 -1
- package/esm2022/domain/get-output-rect-in-flow/get-output-rect-in-flow.execution.mjs +37 -0
- package/esm2022/domain/get-output-rect-in-flow/index.mjs +2 -2
- package/esm2022/domain/get-position-in-flow/get-position-in-flow.execution.mjs +32 -0
- package/esm2022/domain/get-position-in-flow/index.mjs +2 -2
- package/esm2022/domain/get-selection/get-selection.execution.mjs +35 -0
- package/esm2022/domain/get-selection/index.mjs +2 -2
- package/esm2022/domain/get-value-from-data-attr.mjs +7 -0
- package/esm2022/domain/index.mjs +9 -2
- package/esm2022/domain/intersections/e-f-connector-shape.mjs +5 -0
- package/esm2022/domain/intersections/f-connector-shape.extensions.mjs +46 -0
- package/esm2022/domain/intersections/i-connector-shape.mjs +2 -0
- package/esm2022/domain/intersections/index.mjs +6 -0
- package/esm2022/domain/intersections/intersection-finder.mjs +156 -0
- package/esm2022/domain/intersections/rounded-rect/i-rounded-rect.mjs +2 -0
- package/esm2022/domain/intersections/rounded-rect/index.mjs +3 -0
- package/esm2022/domain/intersections/rounded-rect/rounded-rect.mjs +45 -0
- package/esm2022/domain/is-connection-under-node/index.mjs +2 -0
- package/esm2022/domain/is-connection-under-node/is-connection-under-node.execution.mjs +80 -0
- package/esm2022/domain/is-connection-under-node/is-connection-under-node.request.mjs +3 -0
- package/esm2022/domain/is-element-with-class.mjs +8 -0
- package/esm2022/domain/providers.mjs +33 -27
- package/esm2022/domain/redraw-connections/index.mjs +2 -2
- package/esm2022/domain/redraw-connections/redraw-connections.execution.mjs +60 -0
- package/esm2022/domain/select/index.mjs +2 -2
- package/esm2022/domain/select/select.execution.mjs +44 -0
- package/esm2022/domain/select-all/index.mjs +2 -2
- package/esm2022/domain/select-all/select-all.execution.mjs +38 -0
- package/esm2022/domain/select-and-update-node-layer/index.mjs +3 -0
- package/esm2022/domain/select-and-update-node-layer/select-and-update-node-layer.execution.mjs +37 -0
- package/esm2022/domain/select-and-update-node-layer/select-and-update-node-layer.request.mjs +6 -0
- package/esm2022/domain/update-item-layer/index.mjs +2 -2
- package/esm2022/domain/update-item-layer/update-item-layer.execution.mjs +29 -0
- package/esm2022/errors/create-error-class.mjs +1 -2
- package/esm2022/f-backgroud/f-background-base.mjs +4 -4
- package/esm2022/f-backgroud/f-background.component.mjs +5 -5
- package/esm2022/f-backgroud/f-circle-pattern/f-circle-pattern.component.mjs +4 -4
- package/esm2022/f-backgroud/f-rect-pattern/f-rect-pattern.component.mjs +4 -4
- package/esm2022/f-backgroud/index.mjs +2 -1
- package/esm2022/f-backgroud/providers.mjs +9 -0
- package/esm2022/f-canvas/f-canvas-base.mjs +8 -6
- package/esm2022/f-canvas/f-canvas.component.mjs +5 -5
- package/esm2022/f-canvas/f-zoom/f-zoom.directive.mjs +4 -4
- package/esm2022/f-canvas/index.mjs +2 -1
- package/esm2022/f-canvas/providers.mjs +7 -0
- package/esm2022/f-connection/common/f-connection-base.mjs +25 -25
- package/esm2022/f-connection/common/f-connection-text/f-connection-text-path.directive.mjs +4 -4
- package/esm2022/f-connection/common/f-connection-text/f-connection-text.component.mjs +11 -11
- package/esm2022/f-connection/common/f-connection-text/i-connection-text.mjs +1 -1
- package/esm2022/f-connection/common/f-drag-handle/f-connection-drag-handle.component.mjs +4 -4
- package/esm2022/f-connection/common/f-gradient/f-connection-gradient.component.mjs +7 -7
- package/esm2022/f-connection/common/f-gradient/i-connection-gradient.mjs +1 -1
- package/esm2022/f-connection/common/f-path/f-connection-path.component.mjs +4 -4
- package/esm2022/f-connection/common/f-selection/f-connection-selection.component.mjs +4 -4
- package/esm2022/f-connection/common/index.mjs +1 -3
- package/esm2022/f-connection/f-connection/f-connection.component.mjs +13 -12
- package/esm2022/f-connection/f-connection-builder/f-connection-factory.mjs +4 -4
- package/esm2022/f-connection/f-connection-center/f-connection-center.directive.mjs +4 -4
- package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +12 -11
- package/esm2022/f-connection/f-marker/f-marker-base.mjs +4 -4
- package/esm2022/f-connection/f-marker/f-marker.directive.mjs +4 -4
- package/esm2022/f-connection/index.mjs +2 -1
- package/esm2022/f-connection/providers.mjs +18 -0
- package/esm2022/f-connectors/f-node-input/f-node-input-base.mjs +4 -4
- package/esm2022/f-connectors/f-node-input/f-node-input.directive.mjs +4 -4
- package/esm2022/f-connectors/f-node-outlet/f-node-outlet-base.mjs +4 -4
- package/esm2022/f-connectors/f-node-outlet/f-node-outlet.directive.mjs +4 -4
- package/esm2022/f-connectors/f-node-output/f-node-output-base.mjs +4 -4
- package/esm2022/f-connectors/f-node-output/f-node-output.directive.mjs +4 -4
- package/esm2022/f-connectors/index.mjs +2 -1
- package/esm2022/f-connectors/providers.mjs +9 -0
- package/esm2022/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.execution.mjs +26 -0
- package/esm2022/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.request.mjs +6 -0
- package/esm2022/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.validator.mjs +25 -0
- package/esm2022/f-draggable/canvas/canvas-move-finalize/index.mjs +5 -0
- package/esm2022/f-draggable/canvas/canvas-move-finalize/providers.mjs +7 -0
- package/esm2022/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.execution.mjs +36 -0
- package/esm2022/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.request.mjs +6 -0
- package/esm2022/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.validator.mjs +43 -0
- package/esm2022/f-draggable/canvas/canvas-move-preparation/index.mjs +5 -0
- package/esm2022/f-draggable/canvas/canvas-move-preparation/providers.mjs +7 -0
- package/esm2022/f-draggable/canvas/index.mjs +3 -3
- package/esm2022/f-draggable/canvas/providers.mjs +5 -5
- package/esm2022/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.execution.mjs +55 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.request.mjs +6 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.validator.mjs +25 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-finalize/index.mjs +5 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-finalize/providers.mjs +7 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.execution.mjs +39 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.request.mjs +8 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/index.mjs +4 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/providers.mjs +5 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.execution.mjs +60 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.request.mjs +6 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/index.mjs +4 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/providers.mjs +5 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.execution.mjs +46 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.request.mjs +6 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.validator.mjs +34 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/index.mjs +5 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/providers.mjs +7 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.execution.mjs +43 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.request.mjs +6 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.validator.mjs +32 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/index.mjs +8 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/providers.mjs +13 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection.drag-handler.mjs +11 -9
- package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.execution.mjs +43 -0
- package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.request.mjs +6 -0
- package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.validator.mjs +27 -0
- package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/index.mjs +5 -0
- package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/providers.mjs +7 -0
- package/esm2022/f-draggable/connections/create-connection/index.mjs +4 -4
- package/esm2022/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.execution.mjs +72 -0
- package/esm2022/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.request.mjs +7 -0
- package/esm2022/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.validator.mjs +35 -0
- package/esm2022/f-draggable/connections/get-input-under-pointer/index.mjs +5 -0
- package/esm2022/f-draggable/connections/get-input-under-pointer/providers.mjs +7 -0
- package/esm2022/f-draggable/connections/index.mjs +2 -2
- package/esm2022/f-draggable/connections/providers.mjs +10 -11
- package/esm2022/f-draggable/connections/reassign-connection/index.mjs +3 -3
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/index.mjs +5 -0
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/providers.mjs +7 -0
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.execution.mjs +50 -0
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.request.mjs +6 -0
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.validator.mjs +25 -0
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/index.mjs +5 -0
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/providers.mjs +7 -0
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.execution.mjs +59 -0
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.request.mjs +6 -0
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.validator.mjs +42 -0
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.mjs +10 -11
- package/esm2022/f-draggable/e-f-draggable-type.mjs +3 -1
- package/esm2022/f-draggable/external-item/external-item-finalize/external-item-finalize.execution.mjs +55 -0
- package/esm2022/f-draggable/external-item/external-item-finalize/external-item-finalize.request.mjs +6 -0
- package/esm2022/f-draggable/external-item/external-item-finalize/external-item-finalize.validator.mjs +25 -0
- package/esm2022/f-draggable/external-item/external-item-finalize/index.mjs +5 -0
- package/esm2022/f-draggable/external-item/external-item-finalize/providers.mjs +7 -0
- package/esm2022/f-draggable/external-item/external-item-preparation/external-item-preparation.execution.mjs +41 -0
- package/esm2022/f-draggable/external-item/external-item-preparation/external-item-preparation.request.mjs +6 -0
- package/esm2022/f-draggable/external-item/external-item-preparation/external-item-preparation.validator.mjs +29 -0
- package/esm2022/f-draggable/external-item/external-item-preparation/index.mjs +5 -0
- package/esm2022/f-draggable/external-item/external-item-preparation/providers.mjs +7 -0
- package/esm2022/f-draggable/external-item/index.mjs +3 -3
- package/esm2022/f-draggable/external-item/providers.mjs +5 -5
- package/esm2022/f-draggable/f-draggable-base.mjs +6 -7
- package/esm2022/f-draggable/f-draggable-data-context.mjs +4 -4
- package/esm2022/f-draggable/f-draggable.directive.mjs +31 -29
- package/esm2022/f-draggable/i-can-run-outside-angular.mjs +2 -0
- package/esm2022/f-draggable/index.mjs +4 -1
- package/esm2022/f-draggable/node/connection-source.drag-handler.mjs +8 -10
- package/esm2022/f-draggable/node/connection-target.drag-handler.mjs +8 -10
- package/esm2022/f-draggable/node/connection.drag-handler.mjs +8 -8
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.mjs +92 -0
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.request.mjs +3 -0
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/index.mjs +4 -0
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/providers.mjs +5 -0
- package/esm2022/f-draggable/node/index.mjs +4 -4
- package/esm2022/f-draggable/node/node-move-finalize/index.mjs +5 -0
- package/esm2022/f-draggable/node/node-move-finalize/node-move-finalize.execution.mjs +51 -0
- package/esm2022/f-draggable/node/node-move-finalize/node-move-finalize.request.mjs +6 -0
- package/esm2022/f-draggable/node/node-move-finalize/node-move-finalize.validator.mjs +25 -0
- package/esm2022/f-draggable/node/node-move-finalize/providers.mjs +7 -0
- package/esm2022/f-draggable/node/node-move-preparation/index.mjs +5 -0
- package/esm2022/f-draggable/node/node-move-preparation/node-move-preparation.execution.mjs +60 -0
- package/esm2022/f-draggable/node/node-move-preparation/node-move-preparation.request.mjs +6 -0
- package/esm2022/f-draggable/node/node-move-preparation/node-move-preparation.validator.mjs +41 -0
- package/esm2022/f-draggable/node/node-move-preparation/providers.mjs +7 -0
- package/esm2022/f-draggable/node/node.drag-handler.mjs +2 -2
- package/esm2022/f-draggable/node/providers.mjs +7 -7
- package/esm2022/f-draggable/node-resize/index.mjs +5 -0
- package/esm2022/f-draggable/node-resize/node-resize-finalize/index.mjs +5 -0
- package/esm2022/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.execution.mjs +26 -0
- package/esm2022/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.request.mjs +6 -0
- package/esm2022/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.validator.mjs +25 -0
- package/esm2022/f-draggable/node-resize/node-resize-finalize/providers.mjs +7 -0
- package/esm2022/f-draggable/node-resize/node-resize-preparation/index.mjs +5 -0
- package/esm2022/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.execution.mjs +52 -0
- package/esm2022/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.request.mjs +6 -0
- package/esm2022/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.validator.mjs +41 -0
- package/esm2022/f-draggable/node-resize/node-resize-preparation/providers.mjs +7 -0
- package/esm2022/f-draggable/node-resize/node-resize.drag-handler.mjs +49 -0
- package/esm2022/f-draggable/node-resize/providers.mjs +7 -0
- package/esm2022/f-draggable/providers.mjs +17 -0
- package/esm2022/f-draggable/selection-area/index.mjs +3 -4
- package/esm2022/f-draggable/selection-area/providers.mjs +5 -7
- package/esm2022/f-draggable/selection-area/selection-area-finalize/index.mjs +5 -0
- package/esm2022/f-draggable/selection-area/selection-area-finalize/providers.mjs +7 -0
- package/esm2022/f-draggable/selection-area/selection-area-finalize/selection-area-finalize.execution.mjs +26 -0
- package/esm2022/f-draggable/selection-area/selection-area-finalize/selection-area-finalize.request.mjs +6 -0
- package/esm2022/f-draggable/selection-area/selection-area-finalize/selection-area-finalize.validator.mjs +25 -0
- package/esm2022/f-draggable/selection-area/selection-area-preparation/index.mjs +5 -0
- package/esm2022/f-draggable/selection-area/selection-area-preparation/providers.mjs +7 -0
- package/esm2022/f-draggable/selection-area/selection-area-preparation/selection-area-preparation.execution.mjs +38 -0
- package/esm2022/f-draggable/selection-area/selection-area-preparation/selection-area-preparation.request.mjs +6 -0
- package/esm2022/f-draggable/selection-area/selection-area-preparation/selection-area-preparation.validator.mjs +30 -0
- package/esm2022/f-draggable/selection-area/selection-area.drag-handle.mjs +5 -5
- package/esm2022/f-draggable/single-select/index.mjs +4 -2
- package/esm2022/f-draggable/single-select/providers.mjs +5 -3
- package/esm2022/f-draggable/single-select/single-select.execution.mjs +80 -0
- package/esm2022/f-draggable/single-select/single-select.request.mjs +6 -0
- package/esm2022/f-draggable/single-select/single-select.validator.mjs +24 -0
- package/esm2022/f-external-item/f-external-item-base.mjs +4 -4
- package/esm2022/f-external-item/f-external-item.directive.mjs +4 -4
- package/esm2022/f-external-item/f-external-item.service.mjs +4 -4
- package/esm2022/f-external-item/index.mjs +2 -1
- package/esm2022/f-external-item/providers.mjs +5 -0
- package/esm2022/f-flow/f-flow.component.mjs +9 -19
- package/esm2022/f-flow/index.mjs +2 -1
- package/esm2022/f-flow/providers.mjs +5 -0
- package/esm2022/f-flow.module.mjs +58 -107
- package/esm2022/f-line-alignment/domain/nearest-coordinate.mjs +14 -13
- package/esm2022/f-line-alignment/f-line-alignment-base.mjs +4 -4
- package/esm2022/f-line-alignment/f-line-alignment.component.mjs +12 -12
- package/esm2022/f-line-alignment/index.mjs +2 -1
- package/esm2022/f-line-alignment/providers.mjs +5 -0
- package/esm2022/f-node/f-drag-handle/f-drag-handle.directive.mjs +8 -26
- package/esm2022/f-node/f-drag-handle/index.mjs +1 -2
- package/esm2022/f-node/f-node-base.mjs +8 -4
- package/esm2022/f-node/f-node.directive.mjs +24 -7
- package/esm2022/f-node/f-resize-handle/e-f-resize-handle-type.mjs +8 -0
- package/esm2022/f-node/f-resize-handle/f-resize-handle.directive.mjs +55 -0
- package/esm2022/f-node/f-resize-handle/index.mjs +3 -0
- package/esm2022/f-node/f-rotate-handle/f-rotate-handle.directive.mjs +27 -0
- package/esm2022/f-node/f-rotate-handle/index.mjs +2 -0
- package/esm2022/f-node/index.mjs +4 -1
- package/esm2022/f-node/providers.mjs +10 -0
- package/esm2022/f-selection-area/f-selection-area-base.mjs +4 -4
- package/esm2022/f-selection-area/f-selection-area.component.mjs +4 -4
- package/esm2022/f-selection-area/index.mjs +2 -1
- package/esm2022/f-selection-area/providers.mjs +5 -0
- package/esm2022/f-storage/f-components-store.mjs +4 -5
- package/esm2022/infrastructure/f-mediator/f-execution-register.mjs +7 -0
- package/esm2022/infrastructure/f-mediator/f-flow-mediator.mjs +29 -0
- package/esm2022/infrastructure/f-mediator/f-validator-register.mjs +7 -0
- package/esm2022/infrastructure/f-mediator/index.mjs +4 -0
- package/esm2022/infrastructure/index.mjs +3 -0
- package/esm2022/infrastructure/pipeline/i-execution.mjs +2 -0
- package/esm2022/infrastructure/pipeline/i-validator.mjs +2 -0
- package/esm2022/infrastructure/pipeline/index.mjs +4 -0
- package/esm2022/infrastructure/pipeline/pipeline.mjs +19 -0
- package/esm2022/public-api.mjs +2 -3
- package/f-backgroud/index.d.ts +1 -0
- package/f-backgroud/providers.d.ts +4 -0
- package/f-canvas/f-canvas-base.d.ts +1 -0
- package/f-canvas/f-canvas.component.d.ts +1 -1
- package/f-canvas/index.d.ts +1 -0
- package/f-canvas/providers.d.ts +3 -0
- package/f-connection/common/f-connection-base.d.ts +8 -6
- package/f-connection/common/f-connection-text/f-connection-text.component.d.ts +2 -2
- package/f-connection/common/f-connection-text/i-connection-text.d.ts +2 -2
- package/f-connection/common/f-gradient/f-connection-gradient.component.d.ts +2 -2
- package/f-connection/common/f-gradient/i-connection-gradient.d.ts +2 -2
- package/f-connection/common/index.d.ts +0 -2
- package/f-connection/f-connection/f-connection.component.d.ts +1 -1
- package/f-connection/f-connection-for-create/f-connection-for-create.component.d.ts +1 -1
- package/f-connection/index.d.ts +1 -0
- package/f-connection/providers.d.ts +6 -0
- package/f-connectors/index.d.ts +1 -0
- package/f-connectors/providers.d.ts +4 -0
- package/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.execution.d.ts +11 -0
- package/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.request.d.ts +5 -0
- package/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.validator.d.ts +11 -0
- package/f-draggable/canvas/canvas-move-finalize/index.d.ts +4 -0
- package/f-draggable/canvas/canvas-move-finalize/providers.d.ts +3 -0
- package/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.execution.d.ts +14 -0
- package/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.request.d.ts +5 -0
- package/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.validator.d.ts +17 -0
- package/f-draggable/canvas/canvas-move-preparation/index.d.ts +4 -0
- package/f-draggable/canvas/canvas-move-preparation/providers.d.ts +3 -0
- package/f-draggable/canvas/index.d.ts +2 -2
- package/f-draggable/canvas/providers.d.ts +1 -3
- package/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.execution.d.ts +21 -0
- package/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.request.d.ts +5 -0
- package/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.validator.d.ts +11 -0
- package/f-draggable/connections/create-connection/create-connection-finalize/index.d.ts +4 -0
- package/f-draggable/connections/create-connection/create-connection-finalize/providers.d.ts +3 -0
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.execution.d.ts +16 -0
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.request.d.ts +8 -0
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/index.d.ts +3 -0
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/providers.d.ts +2 -0
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.execution.d.ts +15 -0
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.request.d.ts +5 -0
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/index.d.ts +3 -0
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/providers.d.ts +2 -0
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.execution.d.ts +15 -0
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.request.d.ts +5 -0
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.validator.d.ts +14 -0
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/index.d.ts +4 -0
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/providers.d.ts +3 -0
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.execution.d.ts +16 -0
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.request.d.ts +5 -0
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.validator.d.ts +15 -0
- package/f-draggable/connections/create-connection/create-connection-preparation/index.d.ts +7 -0
- package/f-draggable/connections/create-connection/create-connection-preparation/providers.d.ts +3 -0
- package/f-draggable/connections/create-connection/create-connection.drag-handler.d.ts +1 -1
- package/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.execution.d.ts +16 -0
- package/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.request.d.ts +5 -0
- package/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.validator.d.ts +12 -0
- package/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/index.d.ts +4 -0
- package/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/providers.d.ts +3 -0
- package/f-draggable/connections/create-connection/index.d.ts +3 -3
- package/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.execution.d.ts +22 -0
- package/f-draggable/connections/{find-inputs-under-pointer/find-inputs-under-pointer.request.d.ts → get-input-under-pointer/get-input-under-pointer.request.d.ts} +1 -1
- package/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.validator.d.ts +13 -0
- package/f-draggable/connections/get-input-under-pointer/index.d.ts +4 -0
- package/f-draggable/connections/get-input-under-pointer/providers.d.ts +3 -0
- package/f-draggable/connections/index.d.ts +1 -1
- package/f-draggable/connections/providers.d.ts +1 -4
- package/f-draggable/connections/reassign-connection/index.d.ts +2 -2
- package/f-draggable/connections/reassign-connection/reassign-connection-finalize/index.d.ts +4 -0
- package/f-draggable/connections/reassign-connection/reassign-connection-finalize/providers.d.ts +3 -0
- package/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.execution.d.ts +19 -0
- package/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.request.d.ts +5 -0
- package/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.validator.d.ts +11 -0
- package/f-draggable/connections/reassign-connection/reassign-connection-preparation/index.d.ts +4 -0
- package/f-draggable/connections/reassign-connection/reassign-connection-preparation/providers.d.ts +3 -0
- package/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.execution.d.ts +21 -0
- package/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.request.d.ts +5 -0
- package/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.validator.d.ts +18 -0
- package/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.d.ts +1 -1
- package/f-draggable/e-f-draggable-type.d.ts +2 -0
- package/f-draggable/external-item/external-item-finalize/external-item-finalize.execution.d.ts +21 -0
- package/f-draggable/external-item/external-item-finalize/external-item-finalize.request.d.ts +5 -0
- package/f-draggable/external-item/external-item-finalize/external-item-finalize.validator.d.ts +11 -0
- package/f-draggable/external-item/external-item-finalize/index.d.ts +4 -0
- package/f-draggable/external-item/external-item-finalize/providers.d.ts +3 -0
- package/f-draggable/external-item/external-item-preparation/external-item-preparation.execution.d.ts +17 -0
- package/f-draggable/external-item/external-item-preparation/external-item-preparation.request.d.ts +5 -0
- package/f-draggable/external-item/external-item-preparation/external-item-preparation.validator.d.ts +12 -0
- package/f-draggable/external-item/external-item-preparation/index.d.ts +4 -0
- package/f-draggable/external-item/external-item-preparation/providers.d.ts +3 -0
- package/f-draggable/external-item/index.d.ts +2 -2
- package/f-draggable/external-item/providers.d.ts +1 -3
- package/f-draggable/f-draggable-base.d.ts +2 -3
- package/f-draggable/f-draggable.directive.d.ts +3 -4
- package/f-draggable/i-can-run-outside-angular.d.ts +3 -0
- package/f-draggable/index.d.ts +3 -0
- package/f-draggable/node/connection-source.drag-handler.d.ts +1 -1
- package/f-draggable/node/connection-target.drag-handler.d.ts +1 -1
- package/f-draggable/node/connection.drag-handler.d.ts +2 -2
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.d.ts +27 -0
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.request.d.ts +2 -0
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/index.d.ts +3 -0
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/providers.d.ts +2 -0
- package/f-draggable/node/index.d.ts +3 -3
- package/f-draggable/node/node-move-finalize/index.d.ts +4 -0
- package/f-draggable/node/node-move-finalize/node-move-finalize.execution.d.ts +17 -0
- package/f-draggable/node/node-move-finalize/node-move-finalize.request.d.ts +5 -0
- package/f-draggable/node/node-move-finalize/node-move-finalize.validator.d.ts +11 -0
- package/f-draggable/node/node-move-finalize/providers.d.ts +3 -0
- package/f-draggable/node/node-move-preparation/index.d.ts +4 -0
- package/f-draggable/node/node-move-preparation/node-move-preparation.execution.d.ts +21 -0
- package/f-draggable/node/node-move-preparation/node-move-preparation.request.d.ts +5 -0
- package/f-draggable/node/node-move-preparation/node-move-preparation.validator.d.ts +17 -0
- package/f-draggable/node/node-move-preparation/providers.d.ts +3 -0
- package/f-draggable/node/providers.d.ts +1 -4
- package/f-draggable/node-resize/index.d.ts +4 -0
- package/f-draggable/node-resize/node-resize-finalize/index.d.ts +4 -0
- package/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.execution.d.ts +11 -0
- package/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.request.d.ts +5 -0
- package/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.validator.d.ts +11 -0
- package/f-draggable/node-resize/node-resize-finalize/providers.d.ts +3 -0
- package/f-draggable/node-resize/node-resize-preparation/index.d.ts +4 -0
- package/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.execution.d.ts +18 -0
- package/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.request.d.ts +5 -0
- package/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.validator.d.ts +17 -0
- package/f-draggable/node-resize/node-resize-preparation/providers.d.ts +3 -0
- package/f-draggable/node-resize/node-resize.drag-handler.d.ts +19 -0
- package/f-draggable/node-resize/providers.d.ts +1 -0
- package/f-draggable/providers.d.ts +1 -0
- package/f-draggable/selection-area/index.d.ts +2 -3
- package/f-draggable/selection-area/providers.d.ts +1 -4
- package/f-draggable/selection-area/selection-area-finalize/index.d.ts +4 -0
- package/f-draggable/selection-area/selection-area-finalize/providers.d.ts +3 -0
- package/f-draggable/selection-area/selection-area-finalize/selection-area-finalize.execution.d.ts +11 -0
- package/f-draggable/selection-area/selection-area-finalize/selection-area-finalize.request.d.ts +5 -0
- package/f-draggable/selection-area/selection-area-finalize/selection-area-finalize.validator.d.ts +11 -0
- package/f-draggable/selection-area/selection-area-preparation/index.d.ts +4 -0
- package/f-draggable/selection-area/selection-area-preparation/providers.d.ts +3 -0
- package/f-draggable/selection-area/selection-area-preparation/selection-area-preparation.execution.d.ts +15 -0
- package/f-draggable/selection-area/selection-area-preparation/selection-area-preparation.request.d.ts +5 -0
- package/f-draggable/selection-area/selection-area-preparation/selection-area-preparation.validator.d.ts +12 -0
- package/f-draggable/selection-area/selection-area.drag-handle.d.ts +3 -3
- package/f-draggable/single-select/index.d.ts +3 -1
- package/f-draggable/single-select/providers.d.ts +3 -2
- package/f-draggable/single-select/{single-select.on-pointer-down.d.ts → single-select.execution.d.ts} +7 -7
- package/f-draggable/single-select/single-select.request.d.ts +5 -0
- package/f-draggable/single-select/single-select.validator.d.ts +11 -0
- package/f-external-item/index.d.ts +1 -0
- package/f-external-item/providers.d.ts +2 -0
- package/f-flow/f-flow.component.d.ts +1 -1
- package/f-flow/index.d.ts +1 -0
- package/f-flow/providers.d.ts +2 -0
- package/f-flow.module.d.ts +26 -26
- package/f-line-alignment/domain/nearest-coordinate.d.ts +3 -1
- package/f-line-alignment/f-line-alignment.component.d.ts +3 -2
- package/f-line-alignment/index.d.ts +1 -0
- package/f-line-alignment/providers.d.ts +2 -0
- package/f-node/f-drag-handle/f-drag-handle.directive.d.ts +4 -9
- package/f-node/f-drag-handle/index.d.ts +0 -1
- package/f-node/f-node-base.d.ts +6 -2
- package/f-node/f-node.directive.d.ts +6 -2
- package/f-node/f-resize-handle/e-f-resize-handle-type.d.ts +6 -0
- package/f-node/f-resize-handle/f-resize-handle.directive.d.ts +19 -0
- package/f-node/f-resize-handle/index.d.ts +2 -0
- package/f-node/f-rotate-handle/f-rotate-handle.directive.d.ts +9 -0
- package/f-node/f-rotate-handle/index.d.ts +1 -0
- package/f-node/index.d.ts +3 -0
- package/f-node/providers.d.ts +4 -0
- package/f-selection-area/index.d.ts +1 -0
- package/f-selection-area/providers.d.ts +2 -0
- package/f-storage/f-components-store.d.ts +0 -2
- package/fesm2022/foblex-flow.mjs +3934 -2802
- package/fesm2022/foblex-flow.mjs.map +1 -1
- package/infrastructure/f-mediator/f-execution-register.d.ts +5 -0
- package/{f-mediator → infrastructure/f-mediator}/f-flow-mediator.d.ts +3 -3
- package/infrastructure/f-mediator/f-validator-register.d.ts +5 -0
- package/infrastructure/f-mediator/index.d.ts +3 -0
- package/infrastructure/index.d.ts +2 -0
- package/infrastructure/pipeline/i-execution.d.ts +3 -0
- package/infrastructure/pipeline/i-validator.d.ts +3 -0
- package/infrastructure/pipeline/index.d.ts +3 -0
- package/infrastructure/pipeline/pipeline.d.ts +11 -0
- package/package.json +2 -2
- package/public-api.d.ts +1 -2
- package/domain/get-connection-vector/get-connection-vector.handler.d.ts +0 -12
- package/domain/get-connection-vector/get-connection-vector.request.d.ts +0 -11
- package/domain/get-connection-vector/index.d.ts +0 -2
- package/domain/get-nodes-rect/get-nodes-rect.handler.d.ts +0 -11
- package/domain/update-item-layer/update-item-layer.handler.d.ts +0 -8
- package/esm2022/domain/clear-selection/clear-selection.handler.mjs +0 -28
- package/esm2022/domain/create-connection-markers/create-connection-markers.handler.mjs +0 -49
- package/esm2022/domain/get-connection-vector/get-connection-vector.handler.mjs +0 -79
- package/esm2022/domain/get-connection-vector/get-connection-vector.request.mjs +0 -10
- package/esm2022/domain/get-connection-vector/index.mjs +0 -3
- package/esm2022/domain/get-element-rect-in-flow/get-element-rect-in-flow.handler.mjs +0 -34
- package/esm2022/domain/get-input-rect-in-flow/get-input-rect-in-flow.handler.mjs +0 -34
- package/esm2022/domain/get-nodes-rect/get-nodes-rect.handler.mjs +0 -30
- package/esm2022/domain/get-output-rect-in-flow/get-output-rect-in-flow.handler.mjs +0 -37
- package/esm2022/domain/get-position-in-flow/get-position-in-flow.handler.mjs +0 -32
- package/esm2022/domain/get-selection/get-selection.handler.mjs +0 -35
- package/esm2022/domain/redraw-connections/redraw-connections.handler.mjs +0 -60
- package/esm2022/domain/select/select.handler.mjs +0 -44
- package/esm2022/domain/select-all/select-all.handler.mjs +0 -38
- package/esm2022/domain/update-item-layer/update-item-layer.handler.mjs +0 -29
- package/esm2022/f-connection/common/cast-to-connection-behavior.mjs +0 -9
- package/esm2022/f-connection/common/cast-to-connection-type.mjs +0 -9
- package/esm2022/f-draggable/canvas/canvas.on-pointer-up.mjs +0 -23
- package/esm2022/f-draggable/canvas/canvas.prepare-drag-sequence.mjs +0 -37
- package/esm2022/f-draggable/connections/create-connection/create-connection.on-pointer-up.mjs +0 -48
- package/esm2022/f-draggable/connections/create-connection/create-connection.prepare-drag-sequence.mjs +0 -85
- package/esm2022/f-draggable/connections/create-connection/find-first-can-be-connected-output-by-outlet/find-first-can-be-connected-output-by-outlet.handler.mjs +0 -34
- package/esm2022/f-draggable/connections/create-connection/find-first-can-be-connected-output-by-outlet/index.mjs +0 -2
- package/esm2022/f-draggable/connections/find-inputs-under-pointer/find-inputs-under-pointer.handler.mjs +0 -54
- package/esm2022/f-draggable/connections/find-inputs-under-pointer/find-inputs-under-pointer.request.mjs +0 -7
- package/esm2022/f-draggable/connections/find-inputs-under-pointer/first-not-connected-input-of-node-under-pointer/first-not-connected-input-of-node-under-pointer.handler.mjs +0 -34
- package/esm2022/f-draggable/connections/find-inputs-under-pointer/first-not-connected-input-of-node-under-pointer/index.mjs +0 -2
- package/esm2022/f-draggable/connections/find-inputs-under-pointer/index.mjs +0 -4
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection.on-pointer-up.mjs +0 -36
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection.prepare-drag-sequence.mjs +0 -53
- package/esm2022/f-draggable/external-item/external-item.on-pointer-up.mjs +0 -45
- package/esm2022/f-draggable/external-item/external-item.prepare-drag-sequence.mjs +0 -44
- package/esm2022/f-draggable/node/domain/is-connection-under-node/index.mjs +0 -2
- package/esm2022/f-draggable/node/domain/is-connection-under-node/is-connection-under-node.handler.mjs +0 -73
- package/esm2022/f-draggable/node/node.on-pointer-up.mjs +0 -41
- package/esm2022/f-draggable/node/node.prepare-drag-sequence.mjs +0 -101
- package/esm2022/f-draggable/selection-area/get-can-be-selected-items/get-can-be-selected-items.handler.mjs +0 -55
- package/esm2022/f-draggable/selection-area/get-can-be-selected-items/i-selectable-with-rect.mjs +0 -2
- package/esm2022/f-draggable/selection-area/get-can-be-selected-items/index.mjs +0 -3
- package/esm2022/f-draggable/selection-area/selection-area.on-pointer-up.mjs +0 -23
- package/esm2022/f-draggable/selection-area/selection-area.prepare-drag-sequence.mjs +0 -32
- package/esm2022/f-draggable/single-select/single-select.on-pointer-down.mjs +0 -75
- package/esm2022/f-group/f-group-base.mjs +0 -6
- package/esm2022/f-group/f-group.directive.mjs +0 -110
- package/esm2022/f-group/index.mjs +0 -4
- package/esm2022/f-group/is-group.mjs +0 -4
- package/esm2022/f-mediator/f-flow-mediator.mjs +0 -24
- package/esm2022/f-mediator/f-handler-register.mjs +0 -7
- package/esm2022/f-mediator/index.mjs +0 -3
- package/esm2022/f-node/f-drag-handle/is-drag-handle.mjs +0 -20
- package/f-connection/common/cast-to-connection-behavior.d.ts +0 -2
- package/f-connection/common/cast-to-connection-type.d.ts +0 -2
- package/f-draggable/canvas/canvas.on-pointer-up.d.ts +0 -10
- package/f-draggable/canvas/canvas.prepare-drag-sequence.d.ts +0 -13
- package/f-draggable/connections/create-connection/create-connection.on-pointer-up.d.ts +0 -16
- package/f-draggable/connections/create-connection/create-connection.prepare-drag-sequence.d.ts +0 -20
- package/f-draggable/connections/create-connection/find-first-can-be-connected-output-by-outlet/find-first-can-be-connected-output-by-outlet.handler.d.ts +0 -13
- package/f-draggable/connections/create-connection/find-first-can-be-connected-output-by-outlet/index.d.ts +0 -1
- package/f-draggable/connections/find-inputs-under-pointer/find-inputs-under-pointer.handler.d.ts +0 -18
- package/f-draggable/connections/find-inputs-under-pointer/first-not-connected-input-of-node-under-pointer/first-not-connected-input-of-node-under-pointer.handler.d.ts +0 -13
- package/f-draggable/connections/find-inputs-under-pointer/first-not-connected-input-of-node-under-pointer/index.d.ts +0 -1
- package/f-draggable/connections/find-inputs-under-pointer/index.d.ts +0 -3
- package/f-draggable/connections/reassign-connection/reassign-connection.on-pointer-up.d.ts +0 -15
- package/f-draggable/connections/reassign-connection/reassign-connection.prepare-drag-sequence.d.ts +0 -18
- package/f-draggable/external-item/external-item.on-pointer-up.d.ts +0 -16
- package/f-draggable/external-item/external-item.prepare-drag-sequence.d.ts +0 -16
- package/f-draggable/node/domain/is-connection-under-node/index.d.ts +0 -1
- package/f-draggable/node/node.on-pointer-up.d.ts +0 -15
- package/f-draggable/node/node.prepare-drag-sequence.d.ts +0 -22
- package/f-draggable/selection-area/get-can-be-selected-items/index.d.ts +0 -2
- package/f-draggable/selection-area/selection-area.on-pointer-up.d.ts +0 -10
- package/f-draggable/selection-area/selection-area.prepare-drag-sequence.d.ts +0 -15
- package/f-group/f-group-base.d.ts +0 -6
- package/f-group/f-group.directive.d.ts +0 -31
- package/f-group/index.d.ts +0 -3
- package/f-group/is-group.d.ts +0 -1
- package/f-mediator/f-handler-register.d.ts +0 -5
- package/f-mediator/index.d.ts +0 -2
- package/f-node/f-drag-handle/is-drag-handle.d.ts +0 -1
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { Injectable } from '@angular/core';
|
|
3
|
+
import { FExecutionRegister } from '../../infrastructure';
|
|
4
|
+
import { GetInputRectInFlowRequest } from './get-input-rect-in-flow-request';
|
|
5
|
+
import { GetInputRectInFlowResponse } from './get-input-rect-in-flow-response';
|
|
6
|
+
import { InputNotFound } from '../../errors';
|
|
7
|
+
import { GetElementRectInFlowRequest } from '../get-element-rect-in-flow';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "../../f-storage";
|
|
10
|
+
import * as i2 from "../../infrastructure";
|
|
11
|
+
let GetInputRectInFlowExecution = class GetInputRectInFlowExecution {
|
|
12
|
+
constructor(fComponentsStore, fMediator) {
|
|
13
|
+
this.fComponentsStore = fComponentsStore;
|
|
14
|
+
this.fMediator = fMediator;
|
|
15
|
+
}
|
|
16
|
+
handle(request) {
|
|
17
|
+
const input = this.fComponentsStore.fInputs.find((x) => x.id === request.fInputId);
|
|
18
|
+
if (!input) {
|
|
19
|
+
throw InputNotFound(request.fInputId);
|
|
20
|
+
}
|
|
21
|
+
return new GetInputRectInFlowResponse(this.fMediator.send(new GetElementRectInFlowRequest(input.hostElement)), input.fConnectableSide);
|
|
22
|
+
}
|
|
23
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: GetInputRectInFlowExecution, deps: [{ token: i1.FComponentsStore }, { token: i2.FFlowMediator }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
24
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: GetInputRectInFlowExecution }); }
|
|
25
|
+
};
|
|
26
|
+
GetInputRectInFlowExecution = __decorate([
|
|
27
|
+
FExecutionRegister(GetInputRectInFlowRequest)
|
|
28
|
+
], GetInputRectInFlowExecution);
|
|
29
|
+
export { GetInputRectInFlowExecution };
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: GetInputRectInFlowExecution, decorators: [{
|
|
31
|
+
type: Injectable
|
|
32
|
+
}], ctorParameters: () => [{ type: i1.FComponentsStore }, { type: i2.FFlowMediator }] });
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWlucHV0LXJlY3QtaW4tZmxvdy5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9nZXQtaW5wdXQtcmVjdC1pbi1mbG93L2dldC1pbnB1dC1yZWN0LWluLWZsb3cuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxrQkFBa0IsRUFBNkIsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUU3RSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzdDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7O0FBS25FLElBQU0sMkJBQTJCLEdBQWpDLE1BQU0sMkJBQTJCO0lBRXRDLFlBQ1ksZ0JBQWtDLEVBQ2xDLFNBQXdCO1FBRHhCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsY0FBUyxHQUFULFNBQVMsQ0FBZTtJQUVwQyxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQWtDO1FBRTlDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVuRixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDWCxNQUFNLGFBQWEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDeEMsQ0FBQztRQUVELE9BQU8sSUFBSSwwQkFBMEIsQ0FDbkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQWUsSUFBSSwyQkFBMkIsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUMsRUFDckYsS0FBSyxDQUFDLGdCQUFnQixDQUN2QixDQUFDO0lBQ0osQ0FBQzsrR0FwQlUsMkJBQTJCO21IQUEzQiwyQkFBMkI7O0FBQTNCLDJCQUEyQjtJQUR2QyxrQkFBa0IsQ0FBQyx5QkFBeUIsQ0FBQztHQUNqQywyQkFBMkIsQ0FxQnZDOzs0RkFyQlksMkJBQTJCO2tCQUZ2QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBGRmxvd01lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnLi4vLi4vaW5mcmFzdHJ1Y3R1cmUnO1xuaW1wb3J0IHsgR2V0SW5wdXRSZWN0SW5GbG93UmVxdWVzdCB9IGZyb20gJy4vZ2V0LWlucHV0LXJlY3QtaW4tZmxvdy1yZXF1ZXN0JztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgR2V0SW5wdXRSZWN0SW5GbG93UmVzcG9uc2UgfSBmcm9tICcuL2dldC1pbnB1dC1yZWN0LWluLWZsb3ctcmVzcG9uc2UnO1xuaW1wb3J0IHsgSW5wdXROb3RGb3VuZCB9IGZyb20gJy4uLy4uL2Vycm9ycyc7XG5pbXBvcnQgeyBHZXRFbGVtZW50UmVjdEluRmxvd1JlcXVlc3QgfSBmcm9tICcuLi9nZXQtZWxlbWVudC1yZWN0LWluLWZsb3cnO1xuaW1wb3J0IHsgSVJvdW5kZWRSZWN0IH0gZnJvbSAnLi4vaW50ZXJzZWN0aW9ucyc7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoR2V0SW5wdXRSZWN0SW5GbG93UmVxdWVzdClcbmV4cG9ydCBjbGFzcyBHZXRJbnB1dFJlY3RJbkZsb3dFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPEdldElucHV0UmVjdEluRmxvd1JlcXVlc3QsIEdldElucHV0UmVjdEluRmxvd1Jlc3BvbnNlPiB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgICBwcml2YXRlIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmUsXG4gICAgICBwcml2YXRlIGZNZWRpYXRvcjogRkZsb3dNZWRpYXRvcixcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IEdldElucHV0UmVjdEluRmxvd1JlcXVlc3QpOiBHZXRJbnB1dFJlY3RJbkZsb3dSZXNwb25zZSB7XG5cbiAgICBjb25zdCBpbnB1dCA9IHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mSW5wdXRzLmZpbmQoKHgpID0+IHguaWQgPT09IHJlcXVlc3QuZklucHV0SWQpO1xuXG4gICAgaWYgKCFpbnB1dCkge1xuICAgICAgdGhyb3cgSW5wdXROb3RGb3VuZChyZXF1ZXN0LmZJbnB1dElkKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3IEdldElucHV0UmVjdEluRmxvd1Jlc3BvbnNlKFxuICAgICAgdGhpcy5mTWVkaWF0b3Iuc2VuZDxJUm91bmRlZFJlY3Q+KG5ldyBHZXRFbGVtZW50UmVjdEluRmxvd1JlcXVlc3QoaW5wdXQuaG9zdEVsZW1lbnQpKSxcbiAgICAgIGlucHV0LmZDb25uZWN0YWJsZVNpZGVcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from './get-input-rect-in-flow.
|
|
1
|
+
export * from './get-input-rect-in-flow.execution';
|
|
2
2
|
export * from './get-input-rect-in-flow-request';
|
|
3
3
|
export * from './get-input-rect-in-flow-response';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9nZXQtaW5wdXQtcmVjdC1pbi1mbG93L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0NBQW9DLENBQUM7QUFFbkQsY0FBYyxrQ0FBa0MsQ0FBQztBQUVqRCxjQUFjLG1DQUFtQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9nZXQtaW5wdXQtcmVjdC1pbi1mbG93LmV4ZWN1dGlvbic7XG5cbmV4cG9ydCAqIGZyb20gJy4vZ2V0LWlucHV0LXJlY3QtaW4tZmxvdy1yZXF1ZXN0JztcblxuZXhwb3J0ICogZnJvbSAnLi9nZXQtaW5wdXQtcmVjdC1pbi1mbG93LXJlc3BvbnNlJztcbiJdfQ==
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { RectExtensions } from '@foblex/core';
|
|
3
|
+
import { GetNodesRectRequest } from './get-nodes-rect.request';
|
|
4
|
+
import { Injectable } from '@angular/core';
|
|
5
|
+
import { FExecutionRegister } from '../../infrastructure';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "../../f-storage";
|
|
8
|
+
let GetNodesRectExecution = class GetNodesRectExecution {
|
|
9
|
+
constructor(fComponentsStore) {
|
|
10
|
+
this.fComponentsStore = fComponentsStore;
|
|
11
|
+
}
|
|
12
|
+
handle(request) {
|
|
13
|
+
const fNodes = this.fComponentsStore.fNodes;
|
|
14
|
+
const rects = fNodes.map((x) => {
|
|
15
|
+
return RectExtensions.fromElement(x.hostElement);
|
|
16
|
+
});
|
|
17
|
+
return RectExtensions.union(rects);
|
|
18
|
+
}
|
|
19
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: GetNodesRectExecution, deps: [{ token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
20
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: GetNodesRectExecution }); }
|
|
21
|
+
};
|
|
22
|
+
GetNodesRectExecution = __decorate([
|
|
23
|
+
FExecutionRegister(GetNodesRectRequest)
|
|
24
|
+
], GetNodesRectExecution);
|
|
25
|
+
export { GetNodesRectExecution };
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: GetNodesRectExecution, decorators: [{
|
|
27
|
+
type: Injectable
|
|
28
|
+
}], ctorParameters: () => [{ type: i1.FComponentsStore }] });
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LW5vZGVzLXJlY3QuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZ2V0LW5vZGVzLXJlY3QvZ2V0LW5vZGVzLXJlY3QuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQVMsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3JELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGtCQUFrQixFQUFjLE1BQU0sc0JBQXNCLENBQUM7OztBQUkvRCxJQUFNLHFCQUFxQixHQUEzQixNQUFNLHFCQUFxQjtJQUVoQyxZQUNVLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBRTVDLENBQUM7SUFFTSxNQUFNLENBQUMsT0FBNEI7UUFDeEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQztRQUM1QyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDN0IsT0FBTyxjQUFjLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuRCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sY0FBYyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDOytHQWJVLHFCQUFxQjttSEFBckIscUJBQXFCOztBQUFyQixxQkFBcUI7SUFEakMsa0JBQWtCLENBQUMsbUJBQW1CLENBQUM7R0FDM0IscUJBQXFCLENBY2pDOzs0RkFkWSxxQkFBcUI7a0JBRmpDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJUmVjdCwgUmVjdEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuaW1wb3J0IHsgR2V0Tm9kZXNSZWN0UmVxdWVzdCB9IGZyb20gJy4vZ2V0LW5vZGVzLXJlY3QucmVxdWVzdCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbiB9IGZyb20gJy4uLy4uL2luZnJhc3RydWN0dXJlJztcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihHZXROb2Rlc1JlY3RSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIEdldE5vZGVzUmVjdEV4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248R2V0Tm9kZXNSZWN0UmVxdWVzdCwgSVJlY3Q+IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmUsXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBHZXROb2Rlc1JlY3RSZXF1ZXN0KTogSVJlY3Qge1xuICAgIGNvbnN0IGZOb2RlcyA9IHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mTm9kZXM7XG4gICAgY29uc3QgcmVjdHMgPSBmTm9kZXMubWFwKCh4KSA9PiB7XG4gICAgICByZXR1cm4gUmVjdEV4dGVuc2lvbnMuZnJvbUVsZW1lbnQoeC5ob3N0RWxlbWVudCk7XG4gICAgfSk7XG4gICAgcmV0dXJuIFJlY3RFeHRlbnNpb25zLnVuaW9uKHJlY3RzKTtcbiAgfVxufVxuIl19
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export * from './get-nodes-rect.
|
|
1
|
+
export * from './get-nodes-rect.execution';
|
|
2
2
|
export * from './get-nodes-rect.request';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9nZXQtbm9kZXMtcmVjdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFDO0FBRTNDLGNBQWMsMEJBQTBCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2dldC1ub2Rlcy1yZWN0LmV4ZWN1dGlvbic7XG5cbmV4cG9ydCAqIGZyb20gJy4vZ2V0LW5vZGVzLXJlY3QucmVxdWVzdCc7XG4iXX0=
|
|
@@ -14,10 +14,10 @@ export class GetOutgoingConnectionsHandler {
|
|
|
14
14
|
return outputsIds.includes(x.fOutputId);
|
|
15
15
|
});
|
|
16
16
|
}
|
|
17
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
18
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.
|
|
17
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: GetOutgoingConnectionsHandler, deps: [{ token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
18
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: GetOutgoingConnectionsHandler }); }
|
|
19
19
|
}
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: GetOutgoingConnectionsHandler, decorators: [{
|
|
21
21
|
type: Injectable
|
|
22
22
|
}], ctorParameters: () => [{ type: i1.FComponentsStore }] });
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LW91dGdvaW5nLWNvbm5lY3Rpb25zLmhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9nZXQtb3V0Z29pbmctY29ubmVjdGlvbnMuaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFNM0MsTUFBTSxPQUFPLDZCQUE2QjtJQUV4QyxJQUFZLFlBQVk7UUFDdEIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDO0lBQzVDLENBQUM7SUFFRCxZQUNZLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBRTlDLENBQUM7SUFFTSxNQUFNLENBQUMsT0FBeUI7UUFDckMsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzVDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNwQyxPQUFPLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzFDLENBQUMsQ0FBRSxDQUFDO0lBQ04sQ0FBQzsrR0FoQlUsNkJBQTZCO21IQUE3Qiw2QkFBNkI7OzRGQUE3Qiw2QkFBNkI7a0JBRHpDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJSGFuZGxlciB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZDb25uZWN0aW9uQmFzZSB9IGZyb20gJy4uL2YtY29ubmVjdGlvbic7XG5pbXBvcnQgeyBGQ29ubmVjdG9yQmFzZSB9IGZyb20gJy4uL2YtY29ubmVjdG9ycyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBHZXRPdXRnb2luZ0Nvbm5lY3Rpb25zSGFuZGxlciBpbXBsZW1lbnRzIElIYW5kbGVyPEZDb25uZWN0b3JCYXNlW10sIEZDb25uZWN0aW9uQmFzZVtdPiB7XG5cbiAgcHJpdmF0ZSBnZXQgZkNvbm5lY3Rpb25zKCk6IEZDb25uZWN0aW9uQmFzZVtdIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDb25uZWN0aW9ucztcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUob3V0cHV0czogRkNvbm5lY3RvckJhc2VbXSk6IEZDb25uZWN0aW9uQmFzZVtdIHtcbiAgICBjb25zdCBvdXRwdXRzSWRzID0gb3V0cHV0cy5tYXAoKHgpID0+IHguaWQpO1xuICAgIHJldHVybiB0aGlzLmZDb25uZWN0aW9ucy5maWx0ZXIoKHgpID0+IHtcbiAgICAgIHJldHVybiBvdXRwdXRzSWRzLmluY2x1ZGVzKHguZk91dHB1dElkKTtcbiAgICB9KSE7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -4,4 +4,4 @@ export class GetOutputRectInFlowResponse {
|
|
|
4
4
|
this.fConnectableSide = fConnectableSide;
|
|
5
5
|
}
|
|
6
6
|
}
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LW91dHB1dC1yZWN0LWluLWZsb3ctcmVzcG9uc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9nZXQtb3V0cHV0LXJlY3QtaW4tZmxvdy9nZXQtb3V0cHV0LXJlY3QtaW4tZmxvdy1yZXNwb25zZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLE9BQU8sMkJBQTJCO0lBQ3RDLFlBQ1csSUFBa0IsRUFDbEIsZ0JBQW1DO1FBRG5DLFNBQUksR0FBSixJQUFJLENBQWM7UUFDbEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFtQjtJQUU5QyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFRkNvbm5lY3RhYmxlU2lkZSB9IGZyb20gJy4uLy4uL2YtY29ubmVjdG9ycyc7XG5pbXBvcnQgeyBJUm91bmRlZFJlY3QgfSBmcm9tICcuLi9pbnRlcnNlY3Rpb25zJztcblxuZXhwb3J0IGNsYXNzIEdldE91dHB1dFJlY3RJbkZsb3dSZXNwb25zZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHVibGljIHJlY3Q6IElSb3VuZGVkUmVjdCxcbiAgICAgIHB1YmxpYyBmQ29ubmVjdGFibGVTaWRlOiBFRkNvbm5lY3RhYmxlU2lkZVxuICApIHtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { Injectable } from '@angular/core';
|
|
3
|
+
import { FExecutionRegister } from '../../infrastructure';
|
|
4
|
+
import { GetOutputRectInFlowRequest } from './get-output-rect-in-flow-request';
|
|
5
|
+
import { GetOutputRectInFlowResponse } from './get-output-rect-in-flow-response';
|
|
6
|
+
import { OutputNotFound } from '../../errors';
|
|
7
|
+
import { GetElementRectInFlowRequest } from '../get-element-rect-in-flow';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "../../f-storage";
|
|
10
|
+
import * as i2 from "../../infrastructure";
|
|
11
|
+
let GetOutputRectInFlowExecution = class GetOutputRectInFlowExecution {
|
|
12
|
+
constructor(fComponentsStore, fMediator) {
|
|
13
|
+
this.fComponentsStore = fComponentsStore;
|
|
14
|
+
this.fMediator = fMediator;
|
|
15
|
+
}
|
|
16
|
+
handle(request) {
|
|
17
|
+
let output = this.fComponentsStore.fOutputs.find((x) => x.id === request.fOutputId);
|
|
18
|
+
if (!output) {
|
|
19
|
+
output = this.fComponentsStore.fOutlets.find((x) => x.id === request.fOutputId);
|
|
20
|
+
}
|
|
21
|
+
if (!output) {
|
|
22
|
+
throw OutputNotFound(request.fOutputId);
|
|
23
|
+
}
|
|
24
|
+
const result = this.fMediator.send(new GetElementRectInFlowRequest(output.hostElement));
|
|
25
|
+
return new GetOutputRectInFlowResponse(result, output.fConnectableSide);
|
|
26
|
+
}
|
|
27
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: GetOutputRectInFlowExecution, deps: [{ token: i1.FComponentsStore }, { token: i2.FFlowMediator }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
28
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: GetOutputRectInFlowExecution }); }
|
|
29
|
+
};
|
|
30
|
+
GetOutputRectInFlowExecution = __decorate([
|
|
31
|
+
FExecutionRegister(GetOutputRectInFlowRequest)
|
|
32
|
+
], GetOutputRectInFlowExecution);
|
|
33
|
+
export { GetOutputRectInFlowExecution };
|
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: GetOutputRectInFlowExecution, decorators: [{
|
|
35
|
+
type: Injectable
|
|
36
|
+
}], ctorParameters: () => [{ type: i1.FComponentsStore }, { type: i2.FFlowMediator }] });
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LW91dHB1dC1yZWN0LWluLWZsb3cuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZ2V0LW91dHB1dC1yZWN0LWluLWZsb3cvZ2V0LW91dHB1dC1yZWN0LWluLWZsb3cuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxrQkFBa0IsRUFBNkIsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUUvRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNqRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzlDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7O0FBS25FLElBQU0sNEJBQTRCLEdBQWxDLE1BQU0sNEJBQTRCO0lBRXZDLFlBQ1ksZ0JBQWtDLEVBQ2xDLFNBQXdCO1FBRHhCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsY0FBUyxHQUFULFNBQVMsQ0FBZTtJQUVwQyxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQW1DO1FBRS9DLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUVwRixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDWixNQUFNLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2xGLENBQUM7UUFFRCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDWixNQUFNLGNBQWMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDMUMsQ0FBQztRQUVELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFlLElBQUksMkJBQTJCLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDdEcsT0FBTyxJQUFJLDJCQUEyQixDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUMxRSxDQUFDOytHQXRCVSw0QkFBNEI7bUhBQTVCLDRCQUE0Qjs7QUFBNUIsNEJBQTRCO0lBRHhDLGtCQUFrQixDQUFDLDBCQUEwQixDQUFDO0dBQ2xDLDRCQUE0QixDQXVCeEM7OzRGQXZCWSw0QkFBNEI7a0JBRnhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZGbG93TWVkaWF0b3IsIElFeGVjdXRpb24gfSBmcm9tICcuLi8uLi9pbmZyYXN0cnVjdHVyZSc7XG5pbXBvcnQgeyBHZXRPdXRwdXRSZWN0SW5GbG93UmVxdWVzdCB9IGZyb20gJy4vZ2V0LW91dHB1dC1yZWN0LWluLWZsb3ctcmVxdWVzdCc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEdldE91dHB1dFJlY3RJbkZsb3dSZXNwb25zZSB9IGZyb20gJy4vZ2V0LW91dHB1dC1yZWN0LWluLWZsb3ctcmVzcG9uc2UnO1xuaW1wb3J0IHsgT3V0cHV0Tm90Rm91bmQgfSBmcm9tICcuLi8uLi9lcnJvcnMnO1xuaW1wb3J0IHsgR2V0RWxlbWVudFJlY3RJbkZsb3dSZXF1ZXN0IH0gZnJvbSAnLi4vZ2V0LWVsZW1lbnQtcmVjdC1pbi1mbG93JztcbmltcG9ydCB7IElSb3VuZGVkUmVjdCB9IGZyb20gJy4uL2ludGVyc2VjdGlvbnMnO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKEdldE91dHB1dFJlY3RJbkZsb3dSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIEdldE91dHB1dFJlY3RJbkZsb3dFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPEdldE91dHB1dFJlY3RJbkZsb3dSZXF1ZXN0LCBHZXRPdXRwdXRSZWN0SW5GbG93UmVzcG9uc2U+IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAgIHByaXZhdGUgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZSxcbiAgICAgIHByaXZhdGUgZk1lZGlhdG9yOiBGRmxvd01lZGlhdG9yLFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogR2V0T3V0cHV0UmVjdEluRmxvd1JlcXVlc3QpOiBHZXRPdXRwdXRSZWN0SW5GbG93UmVzcG9uc2Uge1xuXG4gICAgbGV0IG91dHB1dCA9IHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mT3V0cHV0cy5maW5kKCh4KSA9PiB4LmlkID09PSByZXF1ZXN0LmZPdXRwdXRJZCk7XG5cbiAgICBpZiAoIW91dHB1dCkge1xuICAgICAgb3V0cHV0ID0gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZPdXRsZXRzLmZpbmQoKHgpID0+IHguaWQgPT09IHJlcXVlc3QuZk91dHB1dElkKTtcbiAgICB9XG5cbiAgICBpZiAoIW91dHB1dCkge1xuICAgICAgdGhyb3cgT3V0cHV0Tm90Rm91bmQocmVxdWVzdC5mT3V0cHV0SWQpO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuZk1lZGlhdG9yLnNlbmQ8SVJvdW5kZWRSZWN0PihuZXcgR2V0RWxlbWVudFJlY3RJbkZsb3dSZXF1ZXN0KG91dHB1dC5ob3N0RWxlbWVudCkpO1xuICAgIHJldHVybiBuZXcgR2V0T3V0cHV0UmVjdEluRmxvd1Jlc3BvbnNlKHJlc3VsdCwgb3V0cHV0LmZDb25uZWN0YWJsZVNpZGUpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from './get-output-rect-in-flow.
|
|
1
|
+
export * from './get-output-rect-in-flow.execution';
|
|
2
2
|
export * from './get-output-rect-in-flow-request';
|
|
3
3
|
export * from './get-output-rect-in-flow-response';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9nZXQtb3V0cHV0LXJlY3QtaW4tZmxvdy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHFDQUFxQyxDQUFDO0FBRXBELGNBQWMsbUNBQW1DLENBQUM7QUFFbEQsY0FBYyxvQ0FBb0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZ2V0LW91dHB1dC1yZWN0LWluLWZsb3cuZXhlY3V0aW9uJztcblxuZXhwb3J0ICogZnJvbSAnLi9nZXQtb3V0cHV0LXJlY3QtaW4tZmxvdy1yZXF1ZXN0JztcblxuZXhwb3J0ICogZnJvbSAnLi9nZXQtb3V0cHV0LXJlY3QtaW4tZmxvdy1yZXNwb25zZSc7XG4iXX0=
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { Point } from '@foblex/core';
|
|
3
|
+
import { Injectable } from '@angular/core';
|
|
4
|
+
import { GetPositionInFlowRequest } from './get-position-in-flow-request';
|
|
5
|
+
import { FExecutionRegister } from '../../infrastructure';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "../../f-storage";
|
|
8
|
+
let GetPositionInFlowExecution = class GetPositionInFlowExecution {
|
|
9
|
+
get transform() {
|
|
10
|
+
return this.fComponentsStore.transform;
|
|
11
|
+
}
|
|
12
|
+
get flowHost() {
|
|
13
|
+
return this.fComponentsStore.flowHost;
|
|
14
|
+
}
|
|
15
|
+
constructor(fComponentsStore) {
|
|
16
|
+
this.fComponentsStore = fComponentsStore;
|
|
17
|
+
}
|
|
18
|
+
handle(request) {
|
|
19
|
+
return Point.fromPoint(request.position).elementTransform(this.flowHost)
|
|
20
|
+
.sub(this.transform.scaledPosition).sub(this.transform.position).div(this.transform.scale);
|
|
21
|
+
}
|
|
22
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: GetPositionInFlowExecution, deps: [{ token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
23
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: GetPositionInFlowExecution }); }
|
|
24
|
+
};
|
|
25
|
+
GetPositionInFlowExecution = __decorate([
|
|
26
|
+
FExecutionRegister(GetPositionInFlowRequest)
|
|
27
|
+
], GetPositionInFlowExecution);
|
|
28
|
+
export { GetPositionInFlowExecution };
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: GetPositionInFlowExecution, decorators: [{
|
|
30
|
+
type: Injectable
|
|
31
|
+
}], ctorParameters: () => [{ type: i1.FComponentsStore }] });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXBvc2l0aW9uLWluLWZsb3cuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZ2V0LXBvc2l0aW9uLWluLWZsb3cvZ2V0LXBvc2l0aW9uLWluLWZsb3cuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQXFDLEtBQUssRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRTFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLHNCQUFzQixDQUFDOzs7QUFJL0QsSUFBTSwwQkFBMEIsR0FBaEMsTUFBTSwwQkFBMEI7SUFFckMsSUFBWSxTQUFTO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsSUFBWSxRQUFRO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQztJQUN4QyxDQUFDO0lBRUQsWUFDVSxnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUU1QyxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQWlDO1FBQzdDLE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQzthQUNyRSxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvRixDQUFDOytHQWxCVSwwQkFBMEI7bUhBQTFCLDBCQUEwQjs7QUFBMUIsMEJBQTBCO0lBRHRDLGtCQUFrQixDQUFDLHdCQUF3QixDQUFDO0dBQ2hDLDBCQUEwQixDQW1CdEM7OzRGQW5CWSwwQkFBMEI7a0JBRnRDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJSGFuZGxlciwgSVBvaW50LCBJVHJhbnNmb3JtTW9kZWwsIFBvaW50IH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEdldFBvc2l0aW9uSW5GbG93UmVxdWVzdCB9IGZyb20gJy4vZ2V0LXBvc2l0aW9uLWluLWZsb3ctcmVxdWVzdCc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbiB9IGZyb20gJy4uLy4uL2luZnJhc3RydWN0dXJlJztcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihHZXRQb3NpdGlvbkluRmxvd1JlcXVlc3QpXG5leHBvcnQgY2xhc3MgR2V0UG9zaXRpb25JbkZsb3dFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPEdldFBvc2l0aW9uSW5GbG93UmVxdWVzdCwgSVBvaW50PiB7XG5cbiAgcHJpdmF0ZSBnZXQgdHJhbnNmb3JtKCk6IElUcmFuc2Zvcm1Nb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS50cmFuc2Zvcm07XG4gIH1cblxuICBwcml2YXRlIGdldCBmbG93SG9zdCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mbG93SG9zdDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZSxcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IEdldFBvc2l0aW9uSW5GbG93UmVxdWVzdCk6IElQb2ludCB7XG4gICAgcmV0dXJuIFBvaW50LmZyb21Qb2ludChyZXF1ZXN0LnBvc2l0aW9uKS5lbGVtZW50VHJhbnNmb3JtKHRoaXMuZmxvd0hvc3QpXG4gICAgICAuc3ViKHRoaXMudHJhbnNmb3JtLnNjYWxlZFBvc2l0aW9uKS5zdWIodGhpcy50cmFuc2Zvcm0ucG9zaXRpb24pLmRpdih0aGlzLnRyYW5zZm9ybS5zY2FsZSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export * from './get-position-in-flow.
|
|
1
|
+
export * from './get-position-in-flow.execution';
|
|
2
2
|
export * from './get-position-in-flow-request';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9nZXQtcG9zaXRpb24taW4tZmxvdy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtDQUFrQyxDQUFDO0FBRWpELGNBQWMsZ0NBQWdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2dldC1wb3NpdGlvbi1pbi1mbG93LmV4ZWN1dGlvbic7XG5cbmV4cG9ydCAqIGZyb20gJy4vZ2V0LXBvc2l0aW9uLWluLWZsb3ctcmVxdWVzdCc7XG4iXX0=
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { GetSelectionRequest } from './get-selection.request';
|
|
3
|
+
import { Injectable } from '@angular/core';
|
|
4
|
+
import { FExecutionRegister } from '../../infrastructure';
|
|
5
|
+
import { FSelectionChangeEvent } from '../../f-draggable';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "../../f-draggable";
|
|
8
|
+
let GetSelectionExecution = class GetSelectionExecution {
|
|
9
|
+
constructor(fDraggableDataContext) {
|
|
10
|
+
this.fDraggableDataContext = fDraggableDataContext;
|
|
11
|
+
}
|
|
12
|
+
handle() {
|
|
13
|
+
let selectedNodes = [];
|
|
14
|
+
let selectedConnections = [];
|
|
15
|
+
this.fDraggableDataContext.selectedItems.forEach((x) => {
|
|
16
|
+
if (x.hostElement.classList.contains('f-node')) {
|
|
17
|
+
selectedNodes.push(x.hostElement.dataset['fNodeId']);
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
selectedConnections.push(x.hostElement.id);
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
return new FSelectionChangeEvent(selectedNodes, selectedConnections);
|
|
24
|
+
}
|
|
25
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: GetSelectionExecution, deps: [{ token: i1.FDraggableDataContext }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
26
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: GetSelectionExecution }); }
|
|
27
|
+
};
|
|
28
|
+
GetSelectionExecution = __decorate([
|
|
29
|
+
FExecutionRegister(GetSelectionRequest)
|
|
30
|
+
], GetSelectionExecution);
|
|
31
|
+
export { GetSelectionExecution };
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: GetSelectionExecution, decorators: [{
|
|
33
|
+
type: Injectable
|
|
34
|
+
}], ctorParameters: () => [{ type: i1.FDraggableDataContext }] });
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXNlbGVjdGlvbi5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9nZXQtc2VsZWN0aW9uL2dldC1zZWxlY3Rpb24uZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLHNCQUFzQixDQUFDO0FBQ3RFLE9BQU8sRUFBeUIscUJBQXFCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7O0FBSTFFLElBQU0scUJBQXFCLEdBQTNCLE1BQU0scUJBQXFCO0lBRWhDLFlBQ1UscUJBQTRDO1FBQTVDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7SUFFdEQsQ0FBQztJQUVNLE1BQU07UUFFWCxJQUFJLGFBQWEsR0FBYSxFQUFFLENBQUM7UUFDakMsSUFBSSxtQkFBbUIsR0FBYSxFQUFFLENBQUM7UUFFdkMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNyRCxJQUFJLENBQUMsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO2dCQUMvQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBRSxDQUFDLENBQUE7WUFDdkQsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzdDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sSUFBSSxxQkFBcUIsQ0FBQyxhQUFhLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztJQUN2RSxDQUFDOytHQXJCVSxxQkFBcUI7bUhBQXJCLHFCQUFxQjs7QUFBckIscUJBQXFCO0lBRGpDLGtCQUFrQixDQUFDLG1CQUFtQixDQUFDO0dBQzNCLHFCQUFxQixDQXNCakM7OzRGQXRCWSxxQkFBcUI7a0JBRmpDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHZXRTZWxlY3Rpb25SZXF1ZXN0IH0gZnJvbSAnLi9nZXQtc2VsZWN0aW9uLnJlcXVlc3QnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnLi4vLi4vaW5mcmFzdHJ1Y3R1cmUnO1xuaW1wb3J0IHsgRkRyYWdnYWJsZURhdGFDb250ZXh0LCBGU2VsZWN0aW9uQ2hhbmdlRXZlbnQgfSBmcm9tICcuLi8uLi9mLWRyYWdnYWJsZSc7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoR2V0U2VsZWN0aW9uUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBHZXRTZWxlY3Rpb25FeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPEdldFNlbGVjdGlvblJlcXVlc3QsIEZTZWxlY3Rpb25DaGFuZ2VFdmVudD4ge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZkRyYWdnYWJsZURhdGFDb250ZXh0OiBGRHJhZ2dhYmxlRGF0YUNvbnRleHQsXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZSgpOiBGU2VsZWN0aW9uQ2hhbmdlRXZlbnQge1xuXG4gICAgbGV0IHNlbGVjdGVkTm9kZXM6IHN0cmluZ1tdID0gW107XG4gICAgbGV0IHNlbGVjdGVkQ29ubmVjdGlvbnM6IHN0cmluZ1tdID0gW107XG5cbiAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5zZWxlY3RlZEl0ZW1zLmZvckVhY2goKHgpID0+IHtcbiAgICAgIGlmICh4Lmhvc3RFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygnZi1ub2RlJykpIHtcbiAgICAgICAgc2VsZWN0ZWROb2Rlcy5wdXNoKHguaG9zdEVsZW1lbnQuZGF0YXNldFsnZk5vZGVJZCddISlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNlbGVjdGVkQ29ubmVjdGlvbnMucHVzaCh4Lmhvc3RFbGVtZW50LmlkKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiBuZXcgRlNlbGVjdGlvbkNoYW5nZUV2ZW50KHNlbGVjdGVkTm9kZXMsIHNlbGVjdGVkQ29ubmVjdGlvbnMpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export * from './get-selection.
|
|
1
|
+
export * from './get-selection.execution';
|
|
2
2
|
export * from './get-selection.request';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9nZXQtc2VsZWN0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMkJBQTJCLENBQUM7QUFFMUMsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZ2V0LXNlbGVjdGlvbi5leGVjdXRpb24nO1xuXG5leHBvcnQgKiBmcm9tICcuL2dldC1zZWxlY3Rpb24ucmVxdWVzdCc7XG4iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export function getValueFromDataAttr(element, attr, cls) {
|
|
2
|
+
return getClosestTarget(element, cls).dataset[attr];
|
|
3
|
+
}
|
|
4
|
+
function getClosestTarget(element, cls) {
|
|
5
|
+
return element.closest(cls);
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXZhbHVlLWZyb20tZGF0YS1hdHRyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZ2V0LXZhbHVlLWZyb20tZGF0YS1hdHRyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxvQkFBb0IsQ0FBSSxPQUFvQixFQUFFLElBQVksRUFBRSxHQUFXO0lBQ3JGLE9BQU8sZ0JBQWdCLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQU0sQ0FBQztBQUMzRCxDQUFDO0FBRUQsU0FBUyxnQkFBZ0IsQ0FBQyxPQUFpQyxFQUFFLEdBQVc7SUFDdEUsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBZ0IsQ0FBQztBQUM3QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIGdldFZhbHVlRnJvbURhdGFBdHRyPFQ+KGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBhdHRyOiBzdHJpbmcsIGNsczogc3RyaW5nKTogVCB7XG4gIHJldHVybiBnZXRDbG9zZXN0VGFyZ2V0KGVsZW1lbnQsIGNscykuZGF0YXNldFthdHRyXSBhcyBUO1xufVxuXG5mdW5jdGlvbiBnZXRDbG9zZXN0VGFyZ2V0KGVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgU1ZHRWxlbWVudCwgY2xzOiBzdHJpbmcpOiBIVE1MRWxlbWVudCB7XG4gIHJldHVybiBlbGVtZW50LmNsb3Nlc3QoY2xzKSBhcyBIVE1MRWxlbWVudDtcbn1cbiJdfQ==
|
package/esm2022/domain/index.mjs
CHANGED
|
@@ -1,18 +1,25 @@
|
|
|
1
1
|
export * from './clear-selection';
|
|
2
2
|
export * from './create-connection-markers';
|
|
3
|
-
export * from './get-
|
|
3
|
+
export * from './get-can-be-selected-items';
|
|
4
|
+
export * from './get-connection-line';
|
|
4
5
|
export * from './get-element-rect-in-flow';
|
|
5
6
|
export * from './get-input-rect-in-flow';
|
|
6
7
|
export * from './get-nodes-rect';
|
|
7
8
|
export * from './get-output-rect-in-flow';
|
|
8
9
|
export * from './get-position-in-flow';
|
|
9
10
|
export * from './get-selection';
|
|
11
|
+
export * from './is-connection-under-node';
|
|
10
12
|
export * from './redraw-connections';
|
|
11
13
|
export * from './select';
|
|
12
14
|
export * from './select-all';
|
|
15
|
+
export * from './select-and-update-node-layer';
|
|
16
|
+
export * from './intersections';
|
|
13
17
|
export * from './update-item-layer';
|
|
18
|
+
export * from './cast-to-enum';
|
|
14
19
|
export * from './get-connection.handler';
|
|
15
20
|
export * from './get-incoming-connections.handler';
|
|
16
21
|
export * from './get-outgoing-connections.handler';
|
|
22
|
+
export * from './get-value-from-data-attr';
|
|
23
|
+
export * from './is-element-with-class';
|
|
17
24
|
export * from './providers';
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1CQUFtQixDQUFDO0FBRWxDLGNBQWMsNkJBQTZCLENBQUM7QUFFNUMsY0FBYyw2QkFBNkIsQ0FBQztBQUU1QyxjQUFjLHVCQUF1QixDQUFDO0FBRXRDLGNBQWMsNEJBQTRCLENBQUM7QUFFM0MsY0FBYywwQkFBMEIsQ0FBQztBQUV6QyxjQUFjLGtCQUFrQixDQUFDO0FBRWpDLGNBQWMsMkJBQTJCLENBQUM7QUFFMUMsY0FBYyx3QkFBd0IsQ0FBQztBQUV2QyxjQUFjLGlCQUFpQixDQUFDO0FBRWhDLGNBQWMsNEJBQTRCLENBQUM7QUFFM0MsY0FBYyxzQkFBc0IsQ0FBQztBQUVyQyxjQUFjLFVBQVUsQ0FBQztBQUV6QixjQUFjLGNBQWMsQ0FBQztBQUU3QixjQUFjLGdDQUFnQyxDQUFDO0FBRS9DLGNBQWMsaUJBQWlCLENBQUM7QUFFaEMsY0FBYyxxQkFBcUIsQ0FBQztBQUVwQyxjQUFjLGdCQUFnQixDQUFDO0FBRS9CLGNBQWMsMEJBQTBCLENBQUM7QUFFekMsY0FBYyxvQ0FBb0MsQ0FBQztBQUVuRCxjQUFjLG9DQUFvQyxDQUFDO0FBRW5ELGNBQWMsNEJBQTRCLENBQUM7QUFFM0MsY0FBYyx5QkFBeUIsQ0FBQztBQUV4QyxjQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2xlYXItc2VsZWN0aW9uJztcblxuZXhwb3J0ICogZnJvbSAnLi9jcmVhdGUtY29ubmVjdGlvbi1tYXJrZXJzJztcblxuZXhwb3J0ICogZnJvbSAnLi9nZXQtY2FuLWJlLXNlbGVjdGVkLWl0ZW1zJztcblxuZXhwb3J0ICogZnJvbSAnLi9nZXQtY29ubmVjdGlvbi1saW5lJztcblxuZXhwb3J0ICogZnJvbSAnLi9nZXQtZWxlbWVudC1yZWN0LWluLWZsb3cnO1xuXG5leHBvcnQgKiBmcm9tICcuL2dldC1pbnB1dC1yZWN0LWluLWZsb3cnO1xuXG5leHBvcnQgKiBmcm9tICcuL2dldC1ub2Rlcy1yZWN0JztcblxuZXhwb3J0ICogZnJvbSAnLi9nZXQtb3V0cHV0LXJlY3QtaW4tZmxvdyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZ2V0LXBvc2l0aW9uLWluLWZsb3cnO1xuXG5leHBvcnQgKiBmcm9tICcuL2dldC1zZWxlY3Rpb24nO1xuXG5leHBvcnQgKiBmcm9tICcuL2lzLWNvbm5lY3Rpb24tdW5kZXItbm9kZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vcmVkcmF3LWNvbm5lY3Rpb25zJztcblxuZXhwb3J0ICogZnJvbSAnLi9zZWxlY3QnO1xuXG5leHBvcnQgKiBmcm9tICcuL3NlbGVjdC1hbGwnO1xuXG5leHBvcnQgKiBmcm9tICcuL3NlbGVjdC1hbmQtdXBkYXRlLW5vZGUtbGF5ZXInO1xuXG5leHBvcnQgKiBmcm9tICcuL2ludGVyc2VjdGlvbnMnO1xuXG5leHBvcnQgKiBmcm9tICcuL3VwZGF0ZS1pdGVtLWxheWVyJztcblxuZXhwb3J0ICogZnJvbSAnLi9jYXN0LXRvLWVudW0nO1xuXG5leHBvcnQgKiBmcm9tICcuL2dldC1jb25uZWN0aW9uLmhhbmRsZXInO1xuXG5leHBvcnQgKiBmcm9tICcuL2dldC1pbmNvbWluZy1jb25uZWN0aW9ucy5oYW5kbGVyJztcblxuZXhwb3J0ICogZnJvbSAnLi9nZXQtb3V0Z29pbmctY29ubmVjdGlvbnMuaGFuZGxlcic7XG5cbmV4cG9ydCAqIGZyb20gJy4vZ2V0LXZhbHVlLWZyb20tZGF0YS1hdHRyJztcblxuZXhwb3J0ICogZnJvbSAnLi9pcy1lbGVtZW50LXdpdGgtY2xhc3MnO1xuXG5leHBvcnQgKiBmcm9tICcuL3Byb3ZpZGVycyc7XG5cbiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export var EFConnectorShape;
|
|
2
|
+
(function (EFConnectorShape) {
|
|
3
|
+
EFConnectorShape["ROUNDED_RECT"] = "ROUNDED_RECT";
|
|
4
|
+
})(EFConnectorShape || (EFConnectorShape = {}));
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZS1mLWNvbm5lY3Rvci1zaGFwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2ludGVyc2VjdGlvbnMvZS1mLWNvbm5lY3Rvci1zaGFwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxnQkFHWDtBQUhELFdBQVksZ0JBQWdCO0lBRTFCLGlEQUE2QixDQUFBO0FBQy9CLENBQUMsRUFIVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBRzNCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gRUZDb25uZWN0b3JTaGFwZSB7XG5cbiAgUk9VTkRFRF9SRUNUID0gJ1JPVU5ERURfUkVDVCcsXG59XG4iXX0=
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { Arc, Line } from '@foblex/core';
|
|
2
|
+
import { EFConnectorShape } from './e-f-connector-shape';
|
|
3
|
+
export class FConnectorShapeExtensions {
|
|
4
|
+
static getSegments(shape) {
|
|
5
|
+
let result = [];
|
|
6
|
+
switch (shape.type) {
|
|
7
|
+
case EFConnectorShape.ROUNDED_RECT:
|
|
8
|
+
result = this.parseRect(shape);
|
|
9
|
+
break;
|
|
10
|
+
default:
|
|
11
|
+
throw new Error(`Unknown connector shape type: ${shape.type}`);
|
|
12
|
+
}
|
|
13
|
+
return result;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Parses the rounded rectangle into its constituent segments (arcs and lines).
|
|
17
|
+
* @param rect - The rounded rectangle to parse.
|
|
18
|
+
* @returns An array of arcs and lines representing the rectangle.
|
|
19
|
+
*/
|
|
20
|
+
static parseRect(rect) {
|
|
21
|
+
const degree90 = Math.PI * 0.5;
|
|
22
|
+
const x0 = rect.x;
|
|
23
|
+
const y0 = rect.y;
|
|
24
|
+
const x1 = rect.x + rect.width;
|
|
25
|
+
const y1 = rect.y + rect.height;
|
|
26
|
+
const topLeftX = rect.x + rect.radius1;
|
|
27
|
+
const topLeftY = rect.y + rect.radius1;
|
|
28
|
+
const topRightX = rect.x + rect.width - rect.radius2;
|
|
29
|
+
const topRightY = rect.y + rect.radius2;
|
|
30
|
+
const bottomRightX = rect.x + rect.width - rect.radius3;
|
|
31
|
+
const bottomRightY = rect.y + rect.height - rect.radius3;
|
|
32
|
+
const bottomLeftX = rect.x + rect.radius4;
|
|
33
|
+
const bottomLeftY = rect.y + rect.height - rect.radius4;
|
|
34
|
+
return [
|
|
35
|
+
new Arc({ x: topLeftX, y: topLeftY }, rect.radius1, rect.radius1, 2 * degree90, 3 * degree90),
|
|
36
|
+
new Line({ x: topLeftX, y: y0 }, { x: topRightX, y: y0 }),
|
|
37
|
+
new Arc({ x: topRightX, y: topRightY }, rect.radius2, rect.radius2, 3 * degree90, 4 * degree90),
|
|
38
|
+
new Line({ x: x1, y: topRightY }, { x: x1, y: bottomRightY }),
|
|
39
|
+
new Arc({ x: bottomRightX, y: bottomRightY }, rect.radius3, rect.radius3, 0, degree90),
|
|
40
|
+
new Line({ x: bottomRightX, y: y1 }, { x: bottomLeftX, y: y1 }),
|
|
41
|
+
new Arc({ x: bottomLeftX, y: bottomLeftY }, rect.radius4, rect.radius4, degree90, 2 * degree90),
|
|
42
|
+
new Line({ x: x0, y: bottomLeftY }, { x: x0, y: topLeftY }),
|
|
43
|
+
];
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0b3Itc2hhcGUuZXh0ZW5zaW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2ludGVyc2VjdGlvbnMvZi1jb25uZWN0b3Itc2hhcGUuZXh0ZW5zaW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUV6RCxNQUFNLE9BQU8seUJBQXlCO0lBRTdCLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBc0I7UUFDOUMsSUFBSSxNQUFNLEdBQW1CLEVBQUUsQ0FBQztRQUNoQyxRQUFRLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNuQixLQUFLLGdCQUFnQixDQUFDLFlBQVk7Z0JBQ2hDLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQXFCLENBQUMsQ0FBQztnQkFDL0MsTUFBTTtZQUNSO2dCQUNFLE1BQU0sSUFBSSxLQUFLLENBQUMsaUNBQWtDLEtBQUssQ0FBQyxJQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQ3JFLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBa0I7UUFDekMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEVBQUUsR0FBRyxHQUFHLENBQUM7UUFFL0IsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2xCLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUMvQixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFFaEMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3ZDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUN2QyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUNyRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDeEMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDeEQsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDekQsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQzFDLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBRXhELE9BQU87WUFDTCxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLEdBQUcsUUFBUSxFQUFFLENBQUMsR0FBRyxRQUFRLENBQUM7WUFDN0YsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ3pELElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsR0FBRyxRQUFRLEVBQUUsQ0FBQyxHQUFHLFFBQVEsQ0FBQztZQUMvRixJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsWUFBWSxFQUFFLENBQUM7WUFDN0QsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsWUFBWSxFQUFFLENBQUMsRUFBRSxZQUFZLEVBQUUsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLFFBQVEsQ0FBQztZQUN0RixJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxZQUFZLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLFdBQVcsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDL0QsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsV0FBVyxFQUFFLENBQUMsRUFBRSxXQUFXLEVBQUUsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLENBQUMsR0FBRyxRQUFRLENBQUM7WUFDL0YsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxXQUFXLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDO1NBQzVELENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJQ29ubmVjdG9yU2hhcGUgfSBmcm9tICcuL2ktY29ubmVjdG9yLXNoYXBlJztcbmltcG9ydCB7IElSb3VuZGVkUmVjdCB9IGZyb20gJy4vcm91bmRlZC1yZWN0JztcbmltcG9ydCB7IEFyYywgTGluZSB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBFRkNvbm5lY3RvclNoYXBlIH0gZnJvbSAnLi9lLWYtY29ubmVjdG9yLXNoYXBlJztcblxuZXhwb3J0IGNsYXNzIEZDb25uZWN0b3JTaGFwZUV4dGVuc2lvbnMge1xuXG4gIHB1YmxpYyBzdGF0aWMgZ2V0U2VnbWVudHMoc2hhcGU6IElDb25uZWN0b3JTaGFwZSk6IChBcmMgfCBMaW5lKVtdIHtcbiAgICBsZXQgcmVzdWx0OiAoQXJjIHwgTGluZSlbXSA9IFtdO1xuICAgIHN3aXRjaCAoc2hhcGUudHlwZSkge1xuICAgICAgY2FzZSBFRkNvbm5lY3RvclNoYXBlLlJPVU5ERURfUkVDVDpcbiAgICAgICAgcmVzdWx0ID0gdGhpcy5wYXJzZVJlY3Qoc2hhcGUgYXMgSVJvdW5kZWRSZWN0KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gY29ubmVjdG9yIHNoYXBlIHR5cGU6ICR7IHNoYXBlLnR5cGUgfWApO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIFBhcnNlcyB0aGUgcm91bmRlZCByZWN0YW5nbGUgaW50byBpdHMgY29uc3RpdHVlbnQgc2VnbWVudHMgKGFyY3MgYW5kIGxpbmVzKS5cbiAgICogQHBhcmFtIHJlY3QgLSBUaGUgcm91bmRlZCByZWN0YW5nbGUgdG8gcGFyc2UuXG4gICAqIEByZXR1cm5zIEFuIGFycmF5IG9mIGFyY3MgYW5kIGxpbmVzIHJlcHJlc2VudGluZyB0aGUgcmVjdGFuZ2xlLlxuICAgKi9cbiAgcHJpdmF0ZSBzdGF0aWMgcGFyc2VSZWN0KHJlY3Q6IElSb3VuZGVkUmVjdCk6IChBcmMgfCBMaW5lKVtdIHtcbiAgICBjb25zdCBkZWdyZWU5MCA9IE1hdGguUEkgKiAwLjU7XG5cbiAgICBjb25zdCB4MCA9IHJlY3QueDtcbiAgICBjb25zdCB5MCA9IHJlY3QueTtcbiAgICBjb25zdCB4MSA9IHJlY3QueCArIHJlY3Qud2lkdGg7XG4gICAgY29uc3QgeTEgPSByZWN0LnkgKyByZWN0LmhlaWdodDtcblxuICAgIGNvbnN0IHRvcExlZnRYID0gcmVjdC54ICsgcmVjdC5yYWRpdXMxO1xuICAgIGNvbnN0IHRvcExlZnRZID0gcmVjdC55ICsgcmVjdC5yYWRpdXMxO1xuICAgIGNvbnN0IHRvcFJpZ2h0WCA9IHJlY3QueCArIHJlY3Qud2lkdGggLSByZWN0LnJhZGl1czI7XG4gICAgY29uc3QgdG9wUmlnaHRZID0gcmVjdC55ICsgcmVjdC5yYWRpdXMyO1xuICAgIGNvbnN0IGJvdHRvbVJpZ2h0WCA9IHJlY3QueCArIHJlY3Qud2lkdGggLSByZWN0LnJhZGl1czM7XG4gICAgY29uc3QgYm90dG9tUmlnaHRZID0gcmVjdC55ICsgcmVjdC5oZWlnaHQgLSByZWN0LnJhZGl1czM7XG4gICAgY29uc3QgYm90dG9tTGVmdFggPSByZWN0LnggKyByZWN0LnJhZGl1czQ7XG4gICAgY29uc3QgYm90dG9tTGVmdFkgPSByZWN0LnkgKyByZWN0LmhlaWdodCAtIHJlY3QucmFkaXVzNDtcblxuICAgIHJldHVybiBbXG4gICAgICBuZXcgQXJjKHsgeDogdG9wTGVmdFgsIHk6IHRvcExlZnRZIH0sIHJlY3QucmFkaXVzMSwgcmVjdC5yYWRpdXMxLCAyICogZGVncmVlOTAsIDMgKiBkZWdyZWU5MCksXG4gICAgICBuZXcgTGluZSh7IHg6IHRvcExlZnRYLCB5OiB5MCB9LCB7IHg6IHRvcFJpZ2h0WCwgeTogeTAgfSksXG4gICAgICBuZXcgQXJjKHsgeDogdG9wUmlnaHRYLCB5OiB0b3BSaWdodFkgfSwgcmVjdC5yYWRpdXMyLCByZWN0LnJhZGl1czIsIDMgKiBkZWdyZWU5MCwgNCAqIGRlZ3JlZTkwKSxcbiAgICAgIG5ldyBMaW5lKHsgeDogeDEsIHk6IHRvcFJpZ2h0WSB9LCB7IHg6IHgxLCB5OiBib3R0b21SaWdodFkgfSksXG4gICAgICBuZXcgQXJjKHsgeDogYm90dG9tUmlnaHRYLCB5OiBib3R0b21SaWdodFkgfSwgcmVjdC5yYWRpdXMzLCByZWN0LnJhZGl1czMsIDAsIGRlZ3JlZTkwKSxcbiAgICAgIG5ldyBMaW5lKHsgeDogYm90dG9tUmlnaHRYLCB5OiB5MSB9LCB7IHg6IGJvdHRvbUxlZnRYLCB5OiB5MSB9KSxcbiAgICAgIG5ldyBBcmMoeyB4OiBib3R0b21MZWZ0WCwgeTogYm90dG9tTGVmdFkgfSwgcmVjdC5yYWRpdXM0LCByZWN0LnJhZGl1czQsIGRlZ3JlZTkwLCAyICogZGVncmVlOTApLFxuICAgICAgbmV3IExpbmUoeyB4OiB4MCwgeTogYm90dG9tTGVmdFkgfSwgeyB4OiB4MCwgeTogdG9wTGVmdFkgfSksXG4gICAgXTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1jb25uZWN0b3Itc2hhcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9pbnRlcnNlY3Rpb25zL2ktY29ubmVjdG9yLXNoYXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFRkNvbm5lY3RvclNoYXBlIH0gZnJvbSAnLi9lLWYtY29ubmVjdG9yLXNoYXBlJztcbmltcG9ydCB7IElQb2ludCB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNvbm5lY3RvclNoYXBlIHtcblxuICB0eXBlOiBFRkNvbm5lY3RvclNoYXBlO1xuXG4gIGdyYXZpdHlDZW50ZXI6IElQb2ludDtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from './rounded-rect';
|
|
2
|
+
export * from './e-f-connector-shape';
|
|
3
|
+
export * from './f-connector-shape.extensions';
|
|
4
|
+
export * from './i-connector-shape';
|
|
5
|
+
export * from './intersection-finder';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9pbnRlcnNlY3Rpb25zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0JBQWdCLENBQUM7QUFFL0IsY0FBYyx1QkFBdUIsQ0FBQztBQUV0QyxjQUFjLGdDQUFnQyxDQUFDO0FBRS9DLGNBQWMscUJBQXFCLENBQUM7QUFFcEMsY0FBYyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcm91bmRlZC1yZWN0JztcblxuZXhwb3J0ICogZnJvbSAnLi9lLWYtY29ubmVjdG9yLXNoYXBlJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWNvbm5lY3Rvci1zaGFwZS5leHRlbnNpb25zJztcblxuZXhwb3J0ICogZnJvbSAnLi9pLWNvbm5lY3Rvci1zaGFwZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJzZWN0aW9uLWZpbmRlcic7XG4iXX0=
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import { Arc, Line, PointExtensions, VectorExtensions } from '@foblex/core';
|
|
2
|
+
import { FConnectorShapeExtensions } from './f-connector-shape.extensions';
|
|
3
|
+
/**
|
|
4
|
+
* The IntersectionFinder class is designed to find intersection points between
|
|
5
|
+
* line segments and various geometric shapes. Currently, it supports rectangles,
|
|
6
|
+
* circles, and ellipses. In the future, support for additional shapes will be added.
|
|
7
|
+
*/
|
|
8
|
+
export class IntersectionFinder {
|
|
9
|
+
/**
|
|
10
|
+
* Finds the guaranteed intersection points between a line segment and a rounded rectangle.
|
|
11
|
+
* @param from - Starting point of the line segment.
|
|
12
|
+
* @param to - Ending point of the line segment.
|
|
13
|
+
* @param shape - The shape to check for intersections.
|
|
14
|
+
* @returns An array of intersection points.
|
|
15
|
+
*/
|
|
16
|
+
static getIntersections(from, to, shape) {
|
|
17
|
+
const segments = FConnectorShapeExtensions.getSegments(shape);
|
|
18
|
+
for (const segment of segments) {
|
|
19
|
+
if (segment instanceof Arc) {
|
|
20
|
+
const intersections = this.intersectArcWithLine(segment, from, to);
|
|
21
|
+
if (intersections.length > 0) {
|
|
22
|
+
return intersections;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
else if (segment instanceof Line) {
|
|
26
|
+
const intersection = this.intersectLineSegments(from, to, segment.point1, segment.point2);
|
|
27
|
+
if (intersection) {
|
|
28
|
+
return [intersection];
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return [];
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Finds the intersection points between an arc and a line segment.
|
|
36
|
+
* @param arc - The arc to check for intersections.
|
|
37
|
+
* @param from - Starting point of the line segment.
|
|
38
|
+
* @param to - Ending point of the line segment.
|
|
39
|
+
* @returns An array of intersection points.
|
|
40
|
+
*/
|
|
41
|
+
static intersectArcWithLine(arc, from, to) {
|
|
42
|
+
return this.filterPointsWithinArc(this.findEllipseLineIntersections(arc.center, arc.radiusX, arc.radiusY, from, to), arc);
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Finds the intersection point between two line segments.
|
|
46
|
+
* @param p1 - Starting point of the first line segment.
|
|
47
|
+
* @param p2 - Ending point of the first line segment.
|
|
48
|
+
* @param p3 - Starting point of the second line segment.
|
|
49
|
+
* @param p4 - Ending point of the second line segment.
|
|
50
|
+
* @returns The intersection point or null if there is no intersection.
|
|
51
|
+
*/
|
|
52
|
+
static intersectLineSegments(p1, p2, p3, p4) {
|
|
53
|
+
const s1_x = p2.x - p1.x;
|
|
54
|
+
const s1_y = p2.y - p1.y;
|
|
55
|
+
const s2_x = p4.x - p3.x;
|
|
56
|
+
const s2_y = p4.y - p3.y;
|
|
57
|
+
const s = (-s1_y * (p1.x - p3.x) + s1_x * (p1.y - p3.y)) / (-s2_x * s1_y + s1_x * s2_y);
|
|
58
|
+
const t = (s2_x * (p1.y - p3.y) - s2_y * (p1.x - p3.x)) / (-s2_x * s1_y + s1_x * s2_y);
|
|
59
|
+
if (s >= 0 && s <= 1 && t >= 0 && t <= 1) {
|
|
60
|
+
return { x: p1.x + (t * s1_x), y: p1.y + (t * s1_y) };
|
|
61
|
+
}
|
|
62
|
+
return null;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Filters intersection points to retain only those within the given arc.
|
|
66
|
+
* @param points - The points to filter.
|
|
67
|
+
* @param arc - The arc to check against.
|
|
68
|
+
* @returns An array of points within the arc.
|
|
69
|
+
*/
|
|
70
|
+
static filterPointsWithinArc(points, arc) {
|
|
71
|
+
let { center, startAngle, endAngle } = arc;
|
|
72
|
+
if (points.length === 0) {
|
|
73
|
+
return points;
|
|
74
|
+
}
|
|
75
|
+
if (endAngle < startAngle) {
|
|
76
|
+
[startAngle, endAngle] = [endAngle, startAngle];
|
|
77
|
+
}
|
|
78
|
+
if (startAngle < 0 || endAngle < 0) {
|
|
79
|
+
startAngle += 2.0 * Math.PI;
|
|
80
|
+
endAngle += 2.0 * Math.PI;
|
|
81
|
+
}
|
|
82
|
+
const filteredPoints = [];
|
|
83
|
+
for (const point of points) {
|
|
84
|
+
let angle = this.normalizeAngle(VectorExtensions.angle(VectorExtensions.initialize(1, 0), VectorExtensions.initialize(point.x - center.x, point.y - center.y)));
|
|
85
|
+
if (angle < startAngle) {
|
|
86
|
+
angle += 2.0 * Math.PI;
|
|
87
|
+
}
|
|
88
|
+
if (startAngle <= angle && angle <= endAngle) {
|
|
89
|
+
filteredPoints.push(point);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
return filteredPoints;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Normalizes an angle to be within the range 0 to 2π.
|
|
96
|
+
* @param radians - The angle in radians.
|
|
97
|
+
* @returns The normalized angle.
|
|
98
|
+
*/
|
|
99
|
+
static normalizeAngle(radians) {
|
|
100
|
+
const normal = radians % (2.0 * Math.PI);
|
|
101
|
+
return normal < 0.0 ? (normal + (2.0 * Math.PI)) : normal;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Finds the intersection points between an ellipse and a line segment.
|
|
105
|
+
* @param center - Center of the ellipse.
|
|
106
|
+
* @param radiusX - X radius of the ellipse.
|
|
107
|
+
* @param radiusY - Y radius of the ellipse.
|
|
108
|
+
* @param pointA - Starting point of the line segment.
|
|
109
|
+
* @param pointB - Ending point of the line segment.
|
|
110
|
+
* @returns An array of intersection points.
|
|
111
|
+
*/
|
|
112
|
+
static findEllipseLineIntersections(center, radiusX, radiusY, pointA, pointB) {
|
|
113
|
+
const origin = VectorExtensions.initialize(pointA.x, pointA.y);
|
|
114
|
+
const direction = VectorExtensions.fromPoints(pointA, pointB);
|
|
115
|
+
const ellipseCenter = VectorExtensions.initialize(center.x, center.y);
|
|
116
|
+
const diff = VectorExtensions.subtract(origin, ellipseCenter);
|
|
117
|
+
const scaledDir = VectorExtensions.initialize(direction.x / (radiusX * radiusX), direction.y / (radiusY * radiusY));
|
|
118
|
+
const scaledDiff = VectorExtensions.initialize(diff.x / (radiusX * radiusX), diff.y / (radiusY * radiusY));
|
|
119
|
+
const a = VectorExtensions.dotProduct(direction, scaledDir);
|
|
120
|
+
const b = VectorExtensions.dotProduct(direction, scaledDiff);
|
|
121
|
+
const c = VectorExtensions.dotProduct(diff, scaledDiff) - 1.0;
|
|
122
|
+
const discriminant = b * b - a * c;
|
|
123
|
+
return discriminant < 0 ? [] : this.calculateIntersectionPoints(discriminant, a, b, pointA, pointB);
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Calculates the intersection points based on the discriminant.
|
|
127
|
+
* @param discriminant - The discriminant value.
|
|
128
|
+
* @param a - Coefficient 'a' in the quadratic equation.
|
|
129
|
+
* @param b - Coefficient 'b' in the quadratic equation.
|
|
130
|
+
* @param pointA - Starting point of the line segment.
|
|
131
|
+
* @param pointB - Ending point of the line segment.
|
|
132
|
+
* @returns An array of intersection points.
|
|
133
|
+
*/
|
|
134
|
+
static calculateIntersectionPoints(discriminant, a, b, pointA, pointB) {
|
|
135
|
+
const points = [];
|
|
136
|
+
if (discriminant > 0) {
|
|
137
|
+
const root = Math.sqrt(discriminant);
|
|
138
|
+
const t1 = (-b - root) / a;
|
|
139
|
+
const t2 = (-b + root) / a;
|
|
140
|
+
if (t1 >= 0 && t1 <= 1) {
|
|
141
|
+
points.push(PointExtensions.interpolatePoints(pointA, pointB, t1));
|
|
142
|
+
}
|
|
143
|
+
if (t2 >= 0 && t2 <= 1) {
|
|
144
|
+
points.push(PointExtensions.interpolatePoints(pointA, pointB, t2));
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
else {
|
|
148
|
+
const t = -b / a;
|
|
149
|
+
if (t >= 0 && t <= 1) {
|
|
150
|
+
points.push(PointExtensions.interpolatePoints(pointA, pointB, t));
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
return points;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJzZWN0aW9uLWZpbmRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2ludGVyc2VjdGlvbnMvaW50ZXJzZWN0aW9uLWZpbmRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFnQixJQUFJLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTFGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRTNFOzs7O0dBSUc7QUFDSCxNQUFNLE9BQU8sa0JBQWtCO0lBRTdCOzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFZLEVBQUUsRUFBVSxFQUFFLEtBQXNCO1FBQzdFLE1BQU0sUUFBUSxHQUFtQix5QkFBeUIsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFOUUsS0FBSyxNQUFNLE9BQU8sSUFBSSxRQUFRLEVBQUUsQ0FBQztZQUMvQixJQUFJLE9BQU8sWUFBWSxHQUFHLEVBQUUsQ0FBQztnQkFDM0IsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ25FLElBQUksYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztvQkFDN0IsT0FBTyxhQUFhLENBQUM7Z0JBQ3ZCLENBQUM7WUFDSCxDQUFDO2lCQUFNLElBQUksT0FBTyxZQUFZLElBQUksRUFBRSxDQUFDO2dCQUNuQyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRSxPQUFPLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDMUYsSUFBSSxZQUFZLEVBQUUsQ0FBQztvQkFDakIsT0FBTyxDQUFFLFlBQVks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QUFDLGVBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDcEUsQ0FBQztRQUNILENBQUM7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcmMsIElBcmMsIElQb2ludCwgTGluZSwgUG9pbnRFeHRlbnNpb25zLCBWZWN0b3JFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IElDb25uZWN0b3JTaGFwZSB9IGZyb20gJy4vaS1jb25uZWN0b3Itc2hhcGUnO1xuaW1wb3J0IHsgRkNvbm5lY3RvclNoYXBlRXh0ZW5zaW9ucyB9IGZyb20gJy4vZi1jb25uZWN0b3Itc2hhcGUuZXh0ZW5zaW9ucyc7XG5cbi8qKlxuICogVGhlIEludGVyc2VjdGlvbkZpbmRlciBjbGFzcyBpcyBkZXNpZ25lZCB0byBmaW5kIGludGVyc2VjdGlvbiBwb2ludHMgYmV0d2VlblxuICogbGluZSBzZWdtZW50cyBhbmQgdmFyaW91cyBnZW9tZXRyaWMgc2hhcGVzLiBDdXJyZW50bHksIGl0IHN1cHBvcnRzIHJlY3RhbmdsZXMsXG4gKiBjaXJjbGVzLCBhbmQgZWxsaXBzZXMuIEluIHRoZSBmdXR1cmUsIHN1cHBvcnQgZm9yIGFkZGl0aW9uYWwgc2hhcGVzIHdpbGwgYmUgYWRkZWQuXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnRlcnNlY3Rpb25GaW5kZXIge1xuXG4gIC8qKlxuICAgKiBGaW5kcyB0aGUgZ3VhcmFudGVlZCBpbnRlcnNlY3Rpb24gcG9pbnRzIGJldHdlZW4gYSBsaW5lIHNlZ21lbnQgYW5kIGEgcm91bmRlZCByZWN0YW5nbGUuXG4gICAqIEBwYXJhbSBmcm9tIC0gU3RhcnRpbmcgcG9pbnQgb2YgdGhlIGxpbmUgc2VnbWVudC5cbiAgICogQHBhcmFtIHRvIC0gRW5kaW5nIHBvaW50IG9mIHRoZSBsaW5lIHNlZ21lbnQuXG4gICAqIEBwYXJhbSBzaGFwZSAtIFRoZSBzaGFwZSB0byBjaGVjayBmb3IgaW50ZXJzZWN0aW9ucy5cbiAgICogQHJldHVybnMgQW4gYXJyYXkgb2YgaW50ZXJzZWN0aW9uIHBvaW50cy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZ2V0SW50ZXJzZWN0aW9ucyhmcm9tOiBJUG9pbnQsIHRvOiBJUG9pbnQsIHNoYXBlOiBJQ29ubmVjdG9yU2hhcGUpOiBJUG9pbnRbXSB7XG4gICAgY29uc3Qgc2VnbWVudHM6IChBcmMgfCBMaW5lKVtdID0gRkNvbm5lY3RvclNoYXBlRXh0ZW5zaW9ucy5nZXRTZWdtZW50cyhzaGFwZSk7XG5cbiAgICBmb3IgKGNvbnN0IHNlZ21lbnQgb2Ygc2VnbWVudHMpIHtcbiAgICAgIGlmIChzZWdtZW50IGluc3RhbmNlb2YgQXJjKSB7XG4gICAgICAgIGNvbnN0IGludGVyc2VjdGlvbnMgPSB0aGlzLmludGVyc2VjdEFyY1dpdGhMaW5lKHNlZ21lbnQsIGZyb20sIHRvKTtcbiAgICAgICAgaWYgKGludGVyc2VjdGlvbnMubGVuZ3RoID4gMCkge1xuICAgICAgICAgIHJldHVybiBpbnRlcnNlY3Rpb25zO1xuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKHNlZ21lbnQgaW5zdGFuY2VvZiBMaW5lKSB7XG4gICAgICAgIGNvbnN0IGludGVyc2VjdGlvbiA9IHRoaXMuaW50ZXJzZWN0TGluZVNlZ21lbnRzKGZyb20sIHRvLCBzZWdtZW50LnBvaW50MSwgc2VnbWVudC5wb2ludDIpO1xuICAgICAgICBpZiAoaW50ZXJzZWN0aW9uKSB7XG4gICAgICAgICAgcmV0dXJuIFsgaW50ZXJzZWN0aW9uIF07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gW107XG4gIH1cblxuICAvKipcbiAgICogRmluZHMgdGhlIGludGVyc2VjdGlvbiBwb2ludHMgYmV0d2VlbiBhbiBhcmMgYW5kIGEgbGluZSBzZWdtZW50LlxuICAgKiBAcGFyYW0gYXJjIC0gVGhlIGFyYyB0byBjaGVjayBmb3IgaW50ZXJzZWN0aW9ucy5cbiAgICogQHBhcmFtIGZyb20gLSBTdGFydGluZyBwb2ludCBvZiB0aGUgbGluZSBzZWdtZW50LlxuICAgKiBAcGFyYW0gdG8gLSBFbmRpbmcgcG9pbnQgb2YgdGhlIGxpbmUgc2VnbWVudC5cbiAgICogQHJldHVybnMgQW4gYXJyYXkgb2YgaW50ZXJzZWN0aW9uIHBvaW50cy5cbiAgICovXG4gIHByaXZhdGUgc3RhdGljIGludGVyc2VjdEFyY1dpdGhMaW5lKGFyYzogSUFyYywgZnJvbTogSVBvaW50LCB0bzogSVBvaW50KTogSVBvaW50W10ge1xuICAgIHJldHVybiB0aGlzLmZpbHRlclBvaW50c1dpdGhpbkFyYyhcbiAgICAgIHRoaXMuZmluZEVsbGlwc2VMaW5lSW50ZXJzZWN0aW9ucyhhcmMuY2VudGVyLCBhcmMucmFkaXVzWCwgYXJjLnJhZGl1c1ksIGZyb20sIHRvKSxcbiAgICAgIGFyY1xuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRmluZHMgdGhlIGludGVyc2VjdGlvbiBwb2ludCBiZXR3ZWVuIHR3byBsaW5lIHNlZ21lbnRzLlxuICAgKiBAcGFyYW0gcDEgLSBTdGFydGluZyBwb2ludCBvZiB0aGUgZmlyc3QgbGluZSBzZWdtZW50LlxuICAgKiBAcGFyYW0gcDIgLSBFbmRpbmcgcG9pbnQgb2YgdGhlIGZpcnN0IGxpbmUgc2VnbWVudC5cbiAgICogQHBhcmFtIHAzIC0gU3RhcnRpbmcgcG9pbnQgb2YgdGhlIHNlY29uZCBsaW5lIHNlZ21lbnQuXG4gICAqIEBwYXJhbSBwNCAtIEVuZGluZyBwb2ludCBvZiB0aGUgc2Vjb25kIGxpbmUgc2VnbWVudC5cbiAgICogQHJldHVybnMgVGhlIGludGVyc2VjdGlvbiBwb2ludCBvciBudWxsIGlmIHRoZXJlIGlzIG5vIGludGVyc2VjdGlvbi5cbiAgICovXG4gIHByaXZhdGUgc3RhdGljIGludGVyc2VjdExpbmVTZWdtZW50cyhwMTogSVBvaW50LCBwMjogSVBvaW50LCBwMzogSVBvaW50LCBwNDogSVBvaW50KTogSVBvaW50IHwgbnVsbCB7XG4gICAgY29uc3QgczFfeCA9IHAyLnggLSBwMS54O1xuICAgIGNvbnN0IHMxX3kgPSBwMi55IC0gcDEueTtcbiAgICBjb25zdCBzMl94ID0gcDQueCAtIHAzLng7XG4gICAgY29uc3QgczJfeSA9IHA0LnkgLSBwMy55O1xuXG4gICAgY29uc3QgcyA9ICgtczFfeSAqIChwMS54IC0gcDMueCkgKyBzMV94ICogKHAxLnkgLSBwMy55KSkgLyAoLXMyX3ggKiBzMV95ICsgczFfeCAqIHMyX3kpO1xuICAgIGNvbnN0IHQgPSAoczJfeCAqIChwMS55IC0gcDMueSkgLSBzMl95ICogKHAxLnggLSBwMy54KSkgLyAoLXMyX3ggKiBzMV95ICsgczFfeCAqIHMyX3kpO1xuXG4gICAgaWYgKHMgPj0gMCAmJiBzIDw9IDEgJiYgdCA+PSAwICYmIHQgPD0gMSkge1xuICAgICAgcmV0dXJuIHsgeDogcDEueCArICh0ICogczFfeCksIHk6IHAxLnkgKyAodCAqIHMxX3kpIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvKipcbiAgICogRmlsdGVycyBpbnRlcnNlY3Rpb24gcG9pbnRzIHRvIHJldGFpbiBvbmx5IHRob3NlIHdpdGhpbiB0aGUgZ2l2ZW4gYXJjLlxuICAgKiBAcGFyYW0gcG9pbnRzIC0gVGhlIHBvaW50cyB0byBmaWx0ZXIuXG4gICAqIEBwYXJhbSBhcmMgLSBUaGUgYXJjIHRvIGNoZWNrIGFnYWluc3QuXG4gICAqIEByZXR1cm5zIEFuIGFycmF5IG9mIHBvaW50cyB3aXRoaW4gdGhlIGFyYy5cbiAgICovXG4gIHByaXZhdGUgc3RhdGljIGZpbHRlclBvaW50c1dpdGhpbkFyYyhwb2ludHM6IElQb2ludFtdLCBhcmM6IElBcmMpOiBJUG9pbnRbXSB7XG4gICAgbGV0IHsgY2VudGVyLCBzdGFydEFuZ2xlLCBlbmRBbmdsZSB9ID0gYXJjO1xuXG4gICAgaWYgKHBvaW50cy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiBwb2ludHM7XG4gICAgfVxuXG4gICAgaWYgKGVuZEFuZ2xlIDwgc3RhcnRBbmdsZSkge1xuICAgICAgWyBzdGFydEFuZ2xlLCBlbmRBbmdsZSBdID0gWyBlbmRBbmdsZSwgc3RhcnRBbmdsZSBdO1xuICAgIH1cblxuICAgIGlmIChzdGFydEFuZ2xlIDwgMCB8fCBlbmRBbmdsZSA8IDApIHtcbiAgICAgIHN0YXJ0QW5nbGUgKz0gMi4wICogTWF0aC5QSTtcbiAgICAgIGVuZEFuZ2xlICs9IDIuMCAqIE1hdGguUEk7XG4gICAgfVxuXG4gICAgY29uc3QgZmlsdGVyZWRQb2ludHM6IElQb2ludFtdID0gW107XG5cbiAgICBmb3IgKGNvbnN0IHBvaW50IG9mIHBvaW50cykge1xuICAgICAgbGV0IGFuZ2xlID0gdGhpcy5ub3JtYWxpemVBbmdsZShcbiAgICAgICAgVmVjdG9yRXh0ZW5zaW9ucy5hbmdsZShcbiAgICAgICAgICBWZWN0b3JFeHRlbnNpb25zLmluaXRpYWxpemUoMSwgMCksXG4gICAgICAgICAgVmVjdG9yRXh0ZW5zaW9ucy5pbml0aWFsaXplKHBvaW50LnggLSBjZW50ZXIueCwgcG9pbnQueSAtIGNlbnRlci55KVxuICAgICAgICApXG4gICAgICApO1xuXG4gICAgICBpZiAoYW5nbGUgPCBzdGFydEFuZ2xlKSB7XG4gICAgICAgIGFuZ2xlICs9IDIuMCAqIE1hdGguUEk7XG4gICAgICB9XG5cbiAgICAgIGlmIChzdGFydEFuZ2xlIDw9IGFuZ2xlICYmIGFuZ2xlIDw9IGVuZEFuZ2xlKSB7XG4gICAgICAgIGZpbHRlcmVkUG9pbnRzLnB1c2gocG9pbnQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBmaWx0ZXJlZFBvaW50cztcbiAgfVxuXG4gIC8qKlxuICAgKiBOb3JtYWxpemVzIGFuIGFuZ2xlIHRvIGJlIHdpdGhpbiB0aGUgcmFuZ2UgMCB0byAyz4AuXG4gICAqIEBwYXJhbSByYWRpYW5zIC0gVGhlIGFuZ2xlIGluIHJhZGlhbnMuXG4gICAqIEByZXR1cm5zIFRoZSBub3JtYWxpemVkIGFuZ2xlLlxuICAgKi9cbiAgcHJpdmF0ZSBzdGF0aWMgbm9ybWFsaXplQW5nbGUocmFkaWFuczogbnVtYmVyKTogbnVtYmVyIHtcbiAgICBjb25zdCBub3JtYWwgPSByYWRpYW5zICUgKDIuMCAqIE1hdGguUEkpO1xuICAgIHJldHVybiBub3JtYWwgPCAwLjAgPyAobm9ybWFsICsgKDIuMCAqIE1hdGguUEkpKSA6IG5vcm1hbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBGaW5kcyB0aGUgaW50ZXJzZWN0aW9uIHBvaW50cyBiZXR3ZWVuIGFuIGVsbGlwc2UgYW5kIGEgbGluZSBzZWdtZW50LlxuICAgKiBAcGFyYW0gY2VudGVyIC0gQ2VudGVyIG9mIHRoZSBlbGxpcHNlLlxuICAgKiBAcGFyYW0gcmFkaXVzWCAtIFggcmFkaXVzIG9mIHRoZSBlbGxpcHNlLlxuICAgKiBAcGFyYW0gcmFkaXVzWSAtIFkgcmFkaXVzIG9mIHRoZSBlbGxpcHNlLlxuICAgKiBAcGFyYW0gcG9pbnRBIC0gU3RhcnRpbmcgcG9pbnQgb2YgdGhlIGxpbmUgc2VnbWVudC5cbiAgICogQHBhcmFtIHBvaW50QiAtIEVuZGluZyBwb2ludCBvZiB0aGUgbGluZSBzZWdtZW50LlxuICAgKiBAcmV0dXJucyBBbiBhcnJheSBvZiBpbnRlcnNlY3Rpb24gcG9pbnRzLlxuICAgKi9cbiAgcHJpdmF0ZSBzdGF0aWMgZmluZEVsbGlwc2VMaW5lSW50ZXJzZWN0aW9ucyhjZW50ZXI6IElQb2ludCwgcmFkaXVzWDogbnVtYmVyLCByYWRpdXNZOiBudW1iZXIsIHBvaW50QTogSVBvaW50LCBwb2ludEI6IElQb2ludCk6IElQb2ludFtdIHtcbiAgICBjb25zdCBvcmlnaW4gPSBWZWN0b3JFeHRlbnNpb25zLmluaXRpYWxpemUocG9pbnRBLngsIHBvaW50QS55KTtcbiAgICBjb25zdCBkaXJlY3Rpb24gPSBWZWN0b3JFeHRlbnNpb25zLmZyb21Qb2ludHMocG9pbnRBLCBwb2ludEIpO1xuICAgIGNvbnN0IGVsbGlwc2VDZW50ZXIgPSBWZWN0b3JFeHRlbnNpb25zLmluaXRpYWxpemUoY2VudGVyLngsIGNlbnRlci55KTtcbiAgICBjb25zdCBkaWZmID0gVmVjdG9yRXh0ZW5zaW9ucy5zdWJ0cmFjdChvcmlnaW4sIGVsbGlwc2VDZW50ZXIpO1xuICAgIGNvbnN0IHNjYWxlZERpciA9IFZlY3RvckV4dGVuc2lvbnMuaW5pdGlhbGl6ZShkaXJlY3Rpb24ueCAvIChyYWRpdXNYICogcmFkaXVzWCksIGRpcmVjdGlvbi55IC8gKHJhZGl1c1kgKiByYWRpdXNZKSk7XG4gICAgY29uc3Qgc2NhbGVkRGlmZiA9IFZlY3RvckV4dGVuc2lvbnMuaW5pdGlhbGl6ZShkaWZmLnggLyAocmFkaXVzWCAqIHJhZGl1c1gpLCBkaWZmLnkgLyAocmFkaXVzWSAqIHJhZGl1c1kpKTtcblxuICAgIGNvbnN0IGEgPSBWZWN0b3JFeHRlbnNpb25zLmRvdFByb2R1Y3QoZGlyZWN0aW9uLCBzY2FsZWREaXIpO1xuICAgIGNvbnN0IGIgPSBWZWN0b3JFeHRlbnNpb25zLmRvdFByb2R1Y3QoZGlyZWN0aW9uLCBzY2FsZWREaWZmKTtcbiAgICBjb25zdCBjID0gVmVjdG9yRXh0ZW5zaW9ucy5kb3RQcm9kdWN0KGRpZmYsIHNjYWxlZERpZmYpIC0gMS4wO1xuICAgIGNvbnN0IGRpc2NyaW1pbmFudCA9IGIgKiBiIC0gYSAqIGM7XG5cbiAgICByZXR1cm4gZGlzY3JpbWluYW50IDwgMCA/IFtdIDogdGhpcy5jYWxjdWxhdGVJbnRlcnNlY3Rpb25Qb2ludHMoZGlzY3JpbWluYW50LCBhLCBiLCBwb2ludEEsIHBvaW50Qik7XG4gIH1cblxuICAvKipcbiAgICogQ2FsY3VsYXRlcyB0aGUgaW50ZXJzZWN0aW9uIHBvaW50cyBiYXNlZCBvbiB0aGUgZGlzY3JpbWluYW50LlxuICAgKiBAcGFyYW0gZGlzY3JpbWluYW50IC0gVGhlIGRpc2NyaW1pbmFudCB2YWx1ZS5cbiAgICogQHBhcmFtIGEgLSBDb2VmZmljaWVudCAnYScgaW4gdGhlIHF1YWRyYXRpYyBlcXVhdGlvbi5cbiAgICogQHBhcmFtIGIgLSBDb2VmZmljaWVudCAnYicgaW4gdGhlIHF1YWRyYXRpYyBlcXVhdGlvbi5cbiAgICogQHBhcmFtIHBvaW50QSAtIFN0YXJ0aW5nIHBvaW50IG9mIHRoZSBsaW5lIHNlZ21lbnQuXG4gICAqIEBwYXJhbSBwb2ludEIgLSBFbmRpbmcgcG9pbnQgb2YgdGhlIGxpbmUgc2VnbWVudC5cbiAgICogQHJldHVybnMgQW4gYXJyYXkgb2YgaW50ZXJzZWN0aW9uIHBvaW50cy5cbiAgICovXG4gIHByaXZhdGUgc3RhdGljIGNhbGN1bGF0ZUludGVyc2VjdGlvblBvaW50cyhkaXNjcmltaW5hbnQ6IG51bWJlciwgYTogbnVtYmVyLCBiOiBudW1iZXIsIHBvaW50QTogSVBvaW50LCBwb2ludEI6IElQb2ludCk6IElQb2ludFtdIHtcbiAgICBjb25zdCBwb2ludHM6IElQb2ludFtdID0gW107XG5cbiAgICBpZiAoZGlzY3JpbWluYW50ID4gMCkge1xuICAgICAgY29uc3Qgcm9vdCA9IE1hdGguc3FydChkaXNjcmltaW5hbnQpO1xuICAgICAgY29uc3QgdDEgPSAoLWIgLSByb290KSAvIGE7XG4gICAgICBjb25zdCB0MiA9ICgtYiArIHJvb3QpIC8gYTtcblxuICAgICAgaWYgKHQxID49IDAgJiYgdDEgPD0gMSkge1xuICAgICAgICBwb2ludHMucHVzaChQb2ludEV4dGVuc2lvbnMuaW50ZXJwb2xhdGVQb2ludHMocG9pbnRBLCBwb2ludEIsIHQxKSk7XG4gICAgICB9XG4gICAgICBpZiAodDIgPj0gMCAmJiB0MiA8PSAxKSB7XG4gICAgICAgIHBvaW50cy5wdXNoKFBvaW50RXh0ZW5zaW9ucy5pbnRlcnBvbGF0ZVBvaW50cyhwb2ludEEsIHBvaW50QiwgdDIpKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgdCA9IC1iIC8gYTtcbiAgICAgIGlmICh0ID49IDAgJiYgdCA8PSAxKSB7XG4gICAgICAgIHBvaW50cy5wdXNoKFBvaW50RXh0ZW5zaW9ucy5pbnRlcnBvbGF0ZVBvaW50cyhwb2ludEEsIHBvaW50QiwgdCkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBwb2ludHM7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1yb3VuZGVkLXJlY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9pbnRlcnNlY3Rpb25zL3JvdW5kZWQtcmVjdC9pLXJvdW5kZWQtcmVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVJlY3QgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuaW1wb3J0IHsgSUNvbm5lY3RvclNoYXBlIH0gZnJvbSAnLi4vaS1jb25uZWN0b3Itc2hhcGUnO1xuXG4vLy8gUmFkaXVzIGluIENTUyBvcmRlclxuLy8vIHRvcExlZnQsIHRvcFJpZ2h0LCBib3R0b21SaWdodCwgYm90dG9tTGVmdFxuXG5leHBvcnQgaW50ZXJmYWNlIElSb3VuZGVkUmVjdCBleHRlbmRzIElSZWN0LCBJQ29ubmVjdG9yU2hhcGUge1xuXG4gIHJhZGl1czE6IG51bWJlcjtcblxuICByYWRpdXMyOiBudW1iZXI7XG5cbiAgcmFkaXVzMzogbnVtYmVyO1xuXG4gIHJhZGl1czQ6IG51bWJlcjtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './i-rounded-rect';
|
|
2
|
+
export * from './rounded-rect';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9pbnRlcnNlY3Rpb25zL3JvdW5kZWQtcmVjdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtCQUFrQixDQUFDO0FBRWpDLGNBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2ktcm91bmRlZC1yZWN0JztcblxuZXhwb3J0ICogZnJvbSAnLi9yb3VuZGVkLXJlY3QnO1xuIl19
|