@foblex/flow 1.2.2 → 1.2.4
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/common-behaviours/change-position.d.ts +2 -1
- package/common-behaviours/change-zoom/change-zoom.d.ts +1 -1
- package/common-behaviours/fit-to-parent/fit-to-parent.d.ts +1 -1
- package/common-behaviours/i-transformable.d.ts +4 -0
- package/common-behaviours/index.d.ts +1 -0
- package/common-behaviours/one-to-one-centering/one-to-one-centering.d.ts +1 -1
- package/components/f-flow/f-backgroud/domain/i-f-background-pattern.d.ts +6 -0
- package/components/f-flow/f-backgroud/domain/index.d.ts +1 -0
- package/components/f-flow/f-backgroud/domain/public-api.d.ts +1 -0
- package/{internal → components/f-flow}/f-backgroud/f-background-base.d.ts +4 -8
- package/components/f-flow/f-backgroud/f-background.component.d.ts +20 -0
- package/components/f-flow/f-backgroud/f-cell-pattern/f-cell-pattern.component.d.ts +31 -0
- package/components/f-flow/f-backgroud/f-cell-pattern/index.d.ts +1 -0
- package/components/f-flow/f-backgroud/f-cell-pattern/public-api.d.ts +1 -0
- package/components/f-flow/f-backgroud/index.d.ts +4 -0
- package/components/f-flow/f-backgroud/public-api.d.ts +3 -0
- package/{directives/f-containers/f-items-container/canvas-change.event.d.ts → components/f-flow/f-canvas/domain/f-canvas-change.event.d.ts} +1 -1
- package/components/f-flow/f-canvas/domain/index.d.ts +1 -0
- package/components/f-flow/f-canvas/domain/public-api.d.ts +1 -0
- package/{directives/f-containers/f-items-container/f-items-container-base.d.ts → components/f-flow/f-canvas/f-canvas-base.d.ts} +13 -12
- package/components/f-flow/f-canvas/f-canvas.component.d.ts +28 -0
- package/components/f-flow/f-canvas/f-zoom/f-zoom-base.d.ts +26 -0
- package/components/f-flow/f-canvas/f-zoom/f-zoom.directive.d.ts +17 -0
- package/components/f-flow/f-canvas/index.d.ts +4 -0
- package/components/f-flow/f-canvas/public-api.d.ts +3 -0
- package/components/f-flow/f-definitions/domain/i-connection-marker.d.ts +5 -0
- package/components/f-flow/f-definitions/f-definitions-base.d.ts +10 -0
- package/components/f-flow/f-definitions/f-definitions.component.d.ts +20 -0
- package/components/f-flow/f-definitions/f-markers/f-connection-marker-end-selected.directive.d.ts +13 -0
- package/components/f-flow/f-definitions/f-markers/f-connection-marker-end.directive.d.ts +14 -0
- package/components/f-flow/f-definitions/f-markers/f-connection-marker-start-selected.directive.d.ts +13 -0
- package/components/f-flow/f-definitions/f-markers/f-connection-marker-start.directive.d.ts +14 -0
- package/components/f-flow/f-definitions/f-markers/index.d.ts +4 -0
- package/components/f-flow/f-definitions/f-markers/public-api.d.ts +4 -0
- package/components/f-flow/f-definitions/index.d.ts +3 -0
- package/components/f-flow/f-definitions/public-api.d.ts +2 -0
- package/components/f-flow/f-flow-base.d.ts +5 -35
- package/components/f-flow/f-flow.component.d.ts +22 -32
- package/components/f-flow/f-parent.injection-token.d.ts +5 -0
- package/components/f-flow/index.d.ts +4 -0
- package/components/f-flow/public-api.d.ts +3 -0
- package/components/index.d.ts +0 -3
- package/components/public-api.d.ts +0 -3
- package/domain/errors.d.ts +3 -0
- package/domain/get-all-nodes-rect.handler.d.ts +10 -0
- package/domain/get-connection-vector/get-connection-vector.handler.d.ts +12 -0
- package/domain/get-connection-vector/get-connection-vector.request.d.ts +11 -0
- package/domain/get-connection-vector/index.d.ts +2 -0
- package/domain/get-connection.handler.d.ts +12 -0
- package/domain/get-connector-side-in-node/e-connector-side.d.ts +6 -0
- package/domain/get-connector-side-in-node/get-connector-side-in-node.handler.d.ts +5 -0
- package/domain/get-connector-side-in-node/index.d.ts +2 -0
- package/domain/get-element-rect-in-flow.handler.d.ts +12 -0
- package/domain/get-incoming-connections.handler.d.ts +13 -0
- package/domain/get-input-rect-in-flow.handler.d.ts +19 -0
- package/domain/get-outgoing-connections.handler.d.ts +13 -0
- package/domain/get-output-rect-in-flow.handler.d.ts +19 -0
- package/domain/index.d.ts +12 -0
- package/domain/providers.d.ts +10 -0
- package/domain/update-node-layer.handler.d.ts +12 -0
- package/esm2022/common-behaviours/change-position.mjs +1 -1
- package/esm2022/common-behaviours/change-zoom/change-zoom.mjs +1 -1
- package/esm2022/common-behaviours/fit-to-parent/fit-to-parent.mjs +1 -1
- package/esm2022/common-behaviours/i-transformable.mjs +2 -0
- package/esm2022/common-behaviours/index.mjs +2 -1
- package/esm2022/common-behaviours/one-to-one-centering/one-to-one-centering.mjs +1 -1
- package/esm2022/components/f-flow/f-backgroud/domain/i-f-background-pattern.mjs +3 -0
- package/esm2022/components/f-flow/f-backgroud/domain/index.mjs +2 -0
- package/esm2022/components/f-flow/f-backgroud/domain/public-api.mjs +2 -0
- package/esm2022/components/f-flow/f-backgroud/f-background-base.mjs +11 -0
- package/esm2022/components/f-flow/f-backgroud/f-background.component.mjs +60 -0
- package/esm2022/components/f-flow/f-backgroud/f-cell-pattern/f-cell-pattern.component.mjs +90 -0
- package/esm2022/components/f-flow/f-backgroud/f-cell-pattern/index.mjs +2 -0
- package/esm2022/components/f-flow/f-backgroud/f-cell-pattern/public-api.mjs +2 -0
- package/esm2022/components/f-flow/f-backgroud/index.mjs +5 -0
- package/esm2022/components/f-flow/f-backgroud/public-api.mjs +4 -0
- package/esm2022/components/f-flow/f-canvas/domain/f-canvas-change.event.mjs +7 -0
- package/esm2022/components/f-flow/f-canvas/domain/index.mjs +2 -0
- package/esm2022/components/f-flow/f-canvas/domain/public-api.mjs +2 -0
- package/esm2022/components/f-flow/f-canvas/f-canvas-base.mjs +26 -0
- package/esm2022/components/f-flow/f-canvas/f-canvas.component.mjs +91 -0
- package/esm2022/components/f-flow/f-canvas/f-zoom/f-zoom-base.mjs +94 -0
- package/esm2022/components/f-flow/f-canvas/f-zoom/f-zoom.directive.mjs +59 -0
- package/esm2022/components/f-flow/f-canvas/f-zoom/index.mjs +3 -0
- package/esm2022/components/f-flow/f-canvas/f-zoom/public-api.mjs +2 -0
- package/esm2022/components/f-flow/f-canvas/index.mjs +5 -0
- package/esm2022/components/f-flow/f-canvas/public-api.mjs +4 -0
- package/esm2022/components/f-flow/f-definitions/domain/i-connection-marker.mjs +3 -0
- package/esm2022/components/f-flow/f-definitions/f-definitions-base.mjs +11 -0
- package/esm2022/components/f-flow/f-definitions/f-definitions.component.mjs +73 -0
- package/esm2022/components/f-flow/f-definitions/f-markers/f-connection-marker-end-selected.directive.mjs +36 -0
- package/esm2022/components/f-flow/f-definitions/f-markers/f-connection-marker-end.directive.mjs +39 -0
- package/esm2022/components/f-flow/f-definitions/f-markers/f-connection-marker-start-selected.directive.mjs +36 -0
- package/esm2022/components/f-flow/f-definitions/f-markers/f-connection-marker-start.directive.mjs +39 -0
- package/esm2022/components/f-flow/f-definitions/f-markers/index.mjs +5 -0
- package/esm2022/components/f-flow/f-definitions/f-markers/public-api.mjs +5 -0
- package/esm2022/components/f-flow/f-definitions/index.mjs +4 -0
- package/esm2022/components/f-flow/f-definitions/public-api.mjs +3 -0
- package/esm2022/components/f-flow/f-flow-base.mjs +4 -72
- package/esm2022/components/f-flow/f-flow.component.mjs +98 -80
- package/esm2022/components/f-flow/f-parent.injection-token.mjs +3 -0
- package/esm2022/components/f-flow/index.mjs +5 -1
- package/esm2022/components/f-flow/public-api.mjs +4 -1
- package/esm2022/components/index.mjs +1 -4
- package/esm2022/components/public-api.mjs +1 -4
- package/esm2022/domain/errors.mjs +10 -0
- package/esm2022/domain/get-all-nodes-rect.handler.mjs +23 -0
- package/esm2022/domain/get-connection-vector/get-connection-vector.handler.mjs +72 -0
- package/esm2022/domain/get-connection-vector/get-connection-vector.request.mjs +10 -0
- package/esm2022/domain/get-connection-vector/index.mjs +3 -0
- package/esm2022/domain/get-connection.handler.mjs +21 -0
- package/esm2022/domain/get-connector-side-in-node/e-connector-side.mjs +8 -0
- package/esm2022/domain/get-connector-side-in-node/get-connector-side-in-node.handler.mjs +26 -0
- package/esm2022/domain/get-connector-side-in-node/index.mjs +3 -0
- package/esm2022/domain/get-element-rect-in-flow.handler.mjs +28 -0
- package/esm2022/domain/get-incoming-connections.handler.mjs +23 -0
- package/esm2022/domain/get-input-rect-in-flow.handler.mjs +25 -0
- package/esm2022/domain/get-outgoing-connections.handler.mjs +23 -0
- package/esm2022/domain/get-output-rect-in-flow.handler.mjs +25 -0
- package/esm2022/domain/index.mjs +13 -0
- package/esm2022/domain/providers.mjs +21 -0
- package/esm2022/domain/update-node-layer.handler.mjs +29 -0
- package/esm2022/f-components-store.mjs +68 -0
- package/esm2022/f-connection/common/cast-to-connection-behavior.mjs +9 -0
- package/esm2022/f-connection/common/cast-to-connection-type.mjs +9 -0
- package/esm2022/f-connection/common/e-connection-behavior.mjs +6 -0
- package/esm2022/f-connection/common/e-connection-type.mjs +7 -0
- package/esm2022/f-connection/common/f-connection-base.mjs +57 -0
- package/esm2022/f-connection/common/f-connection-identifiers.mjs +22 -0
- package/esm2022/f-connection/common/f-connection-text/f-connection-text-path.directive.mjs +62 -0
- package/esm2022/f-connection/common/f-connection-text/f-connection-text.component.mjs +66 -0
- package/esm2022/f-connection/common/f-connection-text/i-connection-text.mjs +3 -0
- package/esm2022/f-connection/common/f-connection-text/index.mjs +4 -0
- package/esm2022/f-connection/common/f-connection.injection-token.mjs +3 -0
- package/esm2022/f-connection/common/f-drag-handle/f-connection-drag-handle.component.mjs +30 -0
- package/esm2022/f-connection/common/f-drag-handle/index.mjs +2 -0
- package/esm2022/f-connection/common/f-gradient/f-connection-gradient.component.mjs +63 -0
- package/esm2022/f-connection/common/f-gradient/i-connection-gradient.mjs +3 -0
- package/esm2022/f-connection/common/f-gradient/index.mjs +3 -0
- package/esm2022/f-connection/common/f-path/f-connection-path.component.mjs +59 -0
- package/esm2022/f-connection/common/f-path/i-connection-path.mjs +3 -0
- package/esm2022/f-connection/common/f-path/index.mjs +3 -0
- package/esm2022/f-connection/common/f-selection/f-connection-selection.component.mjs +37 -0
- package/esm2022/f-connection/common/f-selection/index.mjs +2 -0
- package/esm2022/f-connection/common/i-has-connection-color.mjs +2 -0
- package/esm2022/f-connection/common/i-has-connection-from-to.mjs +2 -0
- package/esm2022/f-connection/common/i-has-connection-text.mjs +2 -0
- package/esm2022/f-connection/common/index.mjs +17 -0
- package/esm2022/f-connection/common/mixins/change-connection-selection.mixin.mjs +20 -0
- package/esm2022/f-connection/common/mixins/change-connection-visibility.mixin.mjs +14 -0
- package/esm2022/f-connection/common/mixins/index.mjs +3 -0
- package/esm2022/f-connection/common/path-constructor/bezier-path.mjs +7 -0
- package/esm2022/f-connection/common/path-constructor/i-path-constructor.mjs +2 -0
- package/esm2022/f-connection/common/path-constructor/index.mjs +6 -0
- package/esm2022/f-connection/common/path-constructor/path-constructor.mjs +14 -0
- package/esm2022/f-connection/common/path-constructor/segment-path/connector-side-point.mjs +9 -0
- package/esm2022/f-connection/common/path-constructor/segment-path/edge-center-calculator.mjs +10 -0
- package/esm2022/f-connection/common/path-constructor/segment-path/index.mjs +6 -0
- package/esm2022/f-connection/common/path-constructor/segment-path/path-bend.mjs +19 -0
- package/esm2022/f-connection/common/path-constructor/segment-path/point-utils.mjs +14 -0
- package/esm2022/f-connection/common/path-constructor/segment-path/segment-path.mjs +123 -0
- package/esm2022/f-connection/common/path-constructor/straight-path/index.mjs +2 -0
- package/esm2022/f-connection/common/path-constructor/straight-path/straight-path.mjs +9 -0
- package/esm2022/f-connection/f-connection/f-connection.component.mjs +96 -0
- package/esm2022/f-connection/f-connection/index.mjs +2 -0
- package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +90 -0
- package/esm2022/f-connection/f-connection-for-create/index.mjs +2 -0
- package/esm2022/f-connection/index.mjs +4 -0
- package/esm2022/f-connection/public-api.mjs +3 -0
- package/esm2022/f-draggable/canvas/canvas.drag-handler.mjs +20 -0
- package/esm2022/f-draggable/canvas/canvas.on-pointer-up.mjs +23 -0
- package/esm2022/f-draggable/canvas/canvas.prepare-drag-sequence.mjs +37 -0
- package/esm2022/f-draggable/canvas/index.mjs +5 -0
- package/esm2022/f-draggable/canvas/providers.mjs +7 -0
- package/esm2022/f-draggable/components/f-external-item/f-external-item-base.mjs +11 -0
- package/esm2022/f-draggable/components/f-external-item/f-external-item.directive.mjs +44 -0
- package/esm2022/f-draggable/components/f-external-item/f-external-item.service.mjs +28 -0
- package/esm2022/f-draggable/components/f-external-item/index.mjs +5 -0
- package/esm2022/f-draggable/components/f-external-item/is-external-item.mjs +7 -0
- package/esm2022/f-draggable/components/f-external-item/public-api.mjs +2 -0
- package/esm2022/f-draggable/components/f-line-alignment/domain/i-line-alignment-rect.mjs +2 -0
- package/esm2022/f-draggable/components/f-line-alignment/domain/i-line-alignment-result.mjs +2 -0
- package/esm2022/f-draggable/components/f-line-alignment/domain/i-nearest-coordinate-result.mjs +2 -0
- package/esm2022/f-draggable/components/f-line-alignment/domain/index.mjs +7 -0
- package/esm2022/f-draggable/components/f-line-alignment/domain/line-element.mjs +23 -0
- package/esm2022/f-draggable/components/f-line-alignment/domain/line-service.mjs +33 -0
- package/esm2022/f-draggable/components/f-line-alignment/domain/nearest-coordinate.mjs +100 -0
- package/esm2022/f-draggable/components/f-line-alignment/f-line-alignment-base.mjs +11 -0
- package/esm2022/f-draggable/components/f-line-alignment/f-line-alignment.component.mjs +90 -0
- package/esm2022/f-draggable/components/f-line-alignment/index.mjs +4 -0
- package/esm2022/f-draggable/components/f-line-alignment/public-api.mjs +2 -0
- package/esm2022/f-draggable/components/f-selection-area/domain/i-selection-area-rect.mjs +2 -0
- package/esm2022/f-draggable/components/f-selection-area/domain/index.mjs +2 -0
- package/esm2022/f-draggable/components/f-selection-area/f-selection-area-base.mjs +11 -0
- package/esm2022/f-draggable/components/f-selection-area/f-selection-area.component.mjs +44 -0
- package/esm2022/f-draggable/components/f-selection-area/index.mjs +4 -0
- package/esm2022/f-draggable/components/f-selection-area/public-api.mjs +2 -0
- package/esm2022/f-draggable/components/index.mjs +4 -0
- package/esm2022/f-draggable/components/public-api.mjs +4 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection.drag-handler.mjs +34 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection.event.mjs +7 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection.on-pointer-up.mjs +50 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection.prepare-drag-sequence.mjs +86 -0
- 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 +34 -0
- package/esm2022/f-draggable/connections/create-connection/find-first-can-be-connected-output-by-outlet/index.mjs +2 -0
- package/esm2022/f-draggable/connections/create-connection/index.mjs +6 -0
- package/esm2022/f-draggable/connections/create-connection/public-api.mjs +2 -0
- package/esm2022/f-draggable/connections/find-inputs-under-pointer/find-inputs-under-pointer.handler.mjs +43 -0
- package/esm2022/f-draggable/connections/find-inputs-under-pointer/find-inputs-under-pointer.request.mjs +7 -0
- 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 +34 -0
- package/esm2022/f-draggable/connections/find-inputs-under-pointer/first-not-connected-input-of-node-under-pointer/index.mjs +2 -0
- package/esm2022/f-draggable/connections/find-inputs-under-pointer/index.mjs +5 -0
- package/esm2022/f-draggable/connections/find-inputs-under-pointer/inputs-under-pointer/index.mjs +2 -0
- package/esm2022/f-draggable/connections/find-inputs-under-pointer/inputs-under-pointer/inputs-under-pointer.handler.mjs +25 -0
- package/esm2022/f-draggable/connections/index.mjs +5 -0
- package/esm2022/f-draggable/connections/providers.mjs +14 -0
- package/esm2022/f-draggable/connections/public-api.mjs +3 -0
- package/esm2022/f-draggable/connections/reassign-connection/index.mjs +5 -0
- package/esm2022/f-draggable/connections/reassign-connection/public-api.mjs +2 -0
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.mjs +37 -0
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection.event.mjs +9 -0
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection.on-pointer-up.mjs +36 -0
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection.prepare-drag-sequence.mjs +52 -0
- package/esm2022/f-draggable/e-draggable-type.mjs +11 -0
- package/esm2022/f-draggable/external-item/create-node.event.mjs +7 -0
- package/esm2022/f-draggable/external-item/external-item.drag-handler.mjs +38 -0
- package/esm2022/f-draggable/external-item/external-item.on-pointer-up.mjs +42 -0
- package/esm2022/f-draggable/external-item/external-item.prepare-drag-sequence.mjs +41 -0
- package/esm2022/f-draggable/external-item/index.mjs +6 -0
- package/esm2022/f-draggable/external-item/providers.mjs +7 -0
- package/esm2022/f-draggable/external-item/public-api.mjs +2 -0
- package/esm2022/f-draggable/f-draggable-base.mjs +15 -0
- package/esm2022/f-draggable/f-draggable-data-context.mjs +22 -0
- package/esm2022/f-draggable/f-draggable.directive.mjs +104 -0
- package/esm2022/f-draggable/i-draggable-item.mjs +2 -0
- package/esm2022/f-draggable/index.mjs +13 -0
- package/esm2022/f-draggable/node/connection-source.drag-handler.mjs +31 -0
- package/esm2022/f-draggable/node/connection-target.drag-handler.mjs +31 -0
- package/esm2022/f-draggable/node/connection.drag-handler.mjs +29 -0
- package/esm2022/f-draggable/node/domain/is-connection-under-node/index.mjs +2 -0
- package/esm2022/f-draggable/node/domain/is-connection-under-node/is-connection-under-node.handler.mjs +70 -0
- package/esm2022/f-draggable/node/index.mjs +8 -0
- package/esm2022/f-draggable/node/node.drag-handler.mjs +21 -0
- package/esm2022/f-draggable/node/node.on-pointer-up.mjs +44 -0
- package/esm2022/f-draggable/node/node.prepare-drag-sequence.mjs +101 -0
- package/esm2022/f-draggable/node/providers.mjs +9 -0
- package/esm2022/f-draggable/public-api.mjs +5 -0
- package/esm2022/f-draggable/selection-area/get-can-be-selected-items/get-can-be-selected-items.handler.mjs +54 -0
- package/esm2022/f-draggable/selection-area/get-can-be-selected-items/i-selectable-with-rect.mjs +2 -0
- package/esm2022/f-draggable/selection-area/get-can-be-selected-items/index.mjs +3 -0
- package/esm2022/f-draggable/selection-area/index.mjs +6 -0
- package/esm2022/f-draggable/selection-area/providers.mjs +9 -0
- package/esm2022/f-draggable/selection-area/selection-area.drag-handle.mjs +49 -0
- package/esm2022/f-draggable/selection-area/selection-area.on-pointer-up.mjs +23 -0
- package/esm2022/f-draggable/selection-area/selection-area.prepare-drag-sequence.mjs +32 -0
- package/esm2022/f-draggable/single-select/index.mjs +3 -0
- package/esm2022/f-draggable/single-select/providers.mjs +5 -0
- package/esm2022/f-draggable/single-select/single-select.on-pointer-down.mjs +64 -0
- package/esm2022/f-flow.module.mjs +80 -42
- package/esm2022/f-node/f-connectors/f-connector-base.mjs +15 -0
- package/esm2022/f-node/f-connectors/f-node-input/f-node-input-base.mjs +19 -0
- package/esm2022/f-node/f-connectors/f-node-input/f-node-input.directive.mjs +77 -0
- package/esm2022/f-node/f-connectors/f-node-input/index.mjs +4 -0
- package/esm2022/f-node/f-connectors/f-node-input/is-node-input.mjs +4 -0
- package/esm2022/f-node/f-connectors/f-node-input/public-api.mjs +2 -0
- package/esm2022/f-node/f-connectors/f-node-outlet/f-node-outlet-base.mjs +23 -0
- package/esm2022/f-node/f-connectors/f-node-outlet/f-node-outlet.directive.mjs +66 -0
- package/esm2022/f-node/f-connectors/f-node-outlet/index.mjs +4 -0
- package/esm2022/f-node/f-connectors/f-node-outlet/is-node-outlet.mjs +4 -0
- package/esm2022/f-node/f-connectors/f-node-outlet/public-api.mjs +2 -0
- package/esm2022/f-node/f-connectors/f-node-output/f-node-output-base.mjs +19 -0
- package/esm2022/f-node/f-connectors/f-node-output/f-node-output.directive.mjs +71 -0
- package/esm2022/f-node/f-connectors/f-node-output/index.mjs +4 -0
- package/esm2022/f-node/f-connectors/f-node-output/is-node-output.mjs +4 -0
- package/esm2022/f-node/f-connectors/f-node-output/public-api.mjs +2 -0
- package/esm2022/f-node/f-connectors/index.mjs +5 -0
- package/esm2022/f-node/f-connectors/public-api.mjs +4 -0
- package/esm2022/f-node/f-drag-handle/f-drag-handle.directive.mjs +55 -0
- package/esm2022/f-node/f-drag-handle/index.mjs +3 -0
- package/esm2022/f-node/f-drag-handle/is-drag-handle.mjs +20 -0
- package/esm2022/f-node/f-drag-handle/public-api.mjs +2 -0
- package/esm2022/f-node/f-node-base.mjs +33 -0
- package/esm2022/f-node/f-node.component.mjs +88 -0
- package/esm2022/f-node/f-resize-observer.mjs +16 -0
- package/esm2022/f-node/index.mjs +7 -0
- package/esm2022/f-node/is-node.mjs +4 -0
- package/esm2022/f-node/public-api.mjs +4 -0
- package/esm2022/get-flow-uid.mjs +7 -0
- package/esm2022/public-api.mjs +4 -3
- package/f-components-store.d.ts +36 -0
- package/f-connection/common/cast-to-connection-behavior.d.ts +2 -0
- package/f-connection/common/cast-to-connection-type.d.ts +2 -0
- package/f-connection/common/e-connection-behavior.d.ts +4 -0
- package/f-connection/common/e-connection-type.d.ts +5 -0
- package/f-connection/common/f-connection-base.d.ts +54 -0
- package/f-connection/common/f-connection-text/f-connection-text-path.directive.d.ts +20 -0
- package/{components/f-connection → f-connection}/common/f-connection-text/f-connection-text.component.d.ts +10 -7
- package/f-connection/common/f-connection-text/i-connection-text.d.ts +6 -0
- package/{components/f-connection → f-connection}/common/f-connection-text/index.d.ts +1 -0
- package/f-connection/common/f-connection.injection-token.d.ts +2 -0
- package/f-connection/common/f-gradient/f-connection-gradient.component.d.ts +22 -0
- package/f-connection/common/f-gradient/i-connection-gradient.d.ts +7 -0
- package/{components/f-connection → f-connection}/common/f-gradient/index.d.ts +1 -0
- package/f-connection/common/f-path/f-connection-path.component.d.ts +20 -0
- package/f-connection/common/f-path/i-connection-path.d.ts +9 -0
- package/{components/f-connection → f-connection}/common/f-path/index.d.ts +1 -0
- package/{components/f-connection → f-connection}/common/f-selection/f-connection-selection.component.d.ts +4 -5
- package/f-connection/common/i-has-connection-color.d.ts +4 -0
- package/f-connection/common/i-has-connection-from-to.d.ts +4 -0
- package/f-connection/common/i-has-connection-text.d.ts +3 -0
- package/f-connection/common/index.d.ts +16 -0
- package/f-connection/common/mixins/change-connection-selection.mixin.d.ts +12 -0
- package/f-connection/common/mixins/change-connection-visibility.mixin.d.ts +10 -0
- package/f-connection/common/mixins/index.d.ts +2 -0
- package/f-connection/common/path-constructor/bezier-path.d.ts +6 -0
- package/f-connection/common/path-constructor/i-path-constructor.d.ts +12 -0
- package/f-connection/common/path-constructor/index.d.ts +5 -0
- package/f-connection/common/path-constructor/path-constructor.d.ts +8 -0
- package/f-connection/common/path-constructor/segment-path/connector-side-point.d.ts +6 -0
- package/f-connection/common/path-constructor/segment-path/edge-center-calculator.d.ts +3 -0
- package/f-connection/common/path-constructor/segment-path/index.d.ts +5 -0
- package/f-connection/common/path-constructor/segment-path/path-bend.d.ts +4 -0
- package/f-connection/common/path-constructor/segment-path/point-utils.d.ts +6 -0
- package/f-connection/common/path-constructor/segment-path/segment-path.d.ts +10 -0
- package/f-connection/common/path-constructor/straight-path/index.d.ts +1 -0
- package/f-connection/common/path-constructor/straight-path/straight-path.d.ts +6 -0
- package/f-connection/f-connection/f-connection.component.d.ts +35 -0
- package/{components/f-connection → f-connection}/f-connection/index.d.ts +0 -1
- package/f-connection/f-connection-for-create/f-connection-for-create.component.d.ts +36 -0
- package/f-connection/f-connection-for-create/index.d.ts +1 -0
- package/{components/f-connection → f-connection}/index.d.ts +1 -1
- package/f-connection/public-api.d.ts +2 -0
- package/f-draggable/canvas/canvas.drag-handler.d.ts +13 -0
- package/f-draggable/canvas/canvas.on-pointer-up.d.ts +10 -0
- package/f-draggable/canvas/canvas.prepare-drag-sequence.d.ts +13 -0
- package/f-draggable/canvas/index.d.ts +4 -0
- package/f-draggable/canvas/providers.d.ts +3 -0
- package/f-draggable/components/f-line-alignment/domain/i-line-alignment-rect.d.ts +6 -0
- package/f-draggable/components/f-line-alignment/domain/index.d.ts +6 -0
- package/f-draggable/components/f-line-alignment/domain/line-element.d.ts +9 -0
- package/f-draggable/components/f-line-alignment/domain/line-service.d.ts +11 -0
- package/f-draggable/components/f-line-alignment/domain/nearest-coordinate.d.ts +25 -0
- package/f-draggable/components/f-line-alignment/f-line-alignment-base.d.ts +15 -0
- package/f-draggable/components/f-line-alignment/f-line-alignment.component.d.ts +31 -0
- package/f-draggable/components/f-line-alignment/index.d.ts +3 -0
- package/f-draggable/components/f-line-alignment/public-api.d.ts +1 -0
- package/f-draggable/components/f-selection-area/domain/i-selection-area-rect.d.ts +6 -0
- package/f-draggable/components/f-selection-area/domain/index.d.ts +1 -0
- package/f-draggable/components/f-selection-area/f-selection-area-base.d.ts +13 -0
- package/f-draggable/components/f-selection-area/f-selection-area.component.d.ts +17 -0
- package/f-draggable/components/f-selection-area/index.d.ts +3 -0
- package/f-draggable/components/f-selection-area/public-api.d.ts +1 -0
- package/f-draggable/components/index.d.ts +3 -0
- package/f-draggable/components/public-api.d.ts +3 -0
- package/f-draggable/connections/create-connection/create-connection.drag-handler.d.ts +19 -0
- package/f-draggable/connections/create-connection/create-connection.on-pointer-up.d.ts +16 -0
- package/f-draggable/connections/create-connection/create-connection.prepare-drag-sequence.d.ts +22 -0
- 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 +13 -0
- package/{directives/f-draggable → f-draggable}/connections/create-connection/find-first-can-be-connected-output-by-outlet/index.d.ts +0 -1
- package/f-draggable/connections/create-connection/index.d.ts +5 -0
- package/f-draggable/connections/create-connection/public-api.d.ts +1 -0
- package/f-draggable/connections/find-inputs-under-pointer/find-inputs-under-pointer.handler.d.ts +18 -0
- package/f-draggable/connections/find-inputs-under-pointer/find-inputs-under-pointer.request.d.ts +8 -0
- 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 +13 -0
- package/{directives/f-draggable → f-draggable}/connections/find-inputs-under-pointer/first-not-connected-input-of-node-under-pointer/index.d.ts +0 -1
- package/{directives/f-draggable → f-draggable}/connections/find-inputs-under-pointer/inputs-under-pointer/index.d.ts +0 -1
- package/f-draggable/connections/find-inputs-under-pointer/inputs-under-pointer/inputs-under-pointer.handler.d.ts +12 -0
- package/{directives/f-draggable → f-draggable}/connections/index.d.ts +1 -0
- package/f-draggable/connections/providers.d.ts +4 -0
- package/f-draggable/connections/public-api.d.ts +2 -0
- package/f-draggable/connections/reassign-connection/index.d.ts +4 -0
- package/f-draggable/connections/reassign-connection/public-api.d.ts +1 -0
- package/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.d.ts +20 -0
- package/f-draggable/connections/reassign-connection/reassign-connection.on-pointer-up.d.ts +15 -0
- package/f-draggable/connections/reassign-connection/reassign-connection.prepare-drag-sequence.d.ts +19 -0
- package/{directives/f-draggable → f-draggable}/e-draggable-type.d.ts +1 -2
- package/{directives/f-draggable/external-item/external-item-on-pointer-move/external-item-on-pointer-move.handler.d.ts → f-draggable/external-item/external-item.drag-handler.d.ts} +5 -4
- package/f-draggable/external-item/external-item.on-pointer-up.d.ts +16 -0
- package/f-draggable/external-item/external-item.prepare-drag-sequence.d.ts +16 -0
- package/f-draggable/external-item/index.d.ts +5 -0
- package/f-draggable/external-item/providers.d.ts +3 -0
- package/f-draggable/f-draggable-base.d.ts +16 -0
- package/f-draggable/f-draggable-data-context.d.ts +16 -0
- package/f-draggable/f-draggable.directive.d.ts +31 -0
- package/{directives/f-draggable → f-draggable}/i-draggable-item.d.ts +2 -2
- package/{directives/f-draggable → f-draggable}/index.d.ts +4 -5
- package/f-draggable/node/connection-source.drag-handler.d.ts +19 -0
- package/f-draggable/node/connection-target.drag-handler.d.ts +19 -0
- package/f-draggable/node/connection.drag-handler.d.ts +18 -0
- package/f-draggable/node/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 +22 -0
- package/f-draggable/node/index.d.ts +7 -0
- package/f-draggable/node/node.drag-handler.d.ts +14 -0
- package/f-draggable/node/node.on-pointer-up.d.ts +16 -0
- package/f-draggable/node/node.prepare-drag-sequence.d.ts +24 -0
- package/f-draggable/node/providers.d.ts +4 -0
- package/{directives/f-draggable → f-draggable}/public-api.d.ts +1 -1
- package/f-draggable/selection-area/get-can-be-selected-items/get-can-be-selected-items.handler.d.ts +20 -0
- package/f-draggable/selection-area/get-can-be-selected-items/i-selectable-with-rect.d.ts +6 -0
- package/f-draggable/selection-area/get-can-be-selected-items/index.d.ts +2 -0
- package/f-draggable/selection-area/index.d.ts +5 -0
- package/f-draggable/selection-area/providers.d.ts +4 -0
- package/f-draggable/selection-area/selection-area.drag-handle.d.ts +19 -0
- package/f-draggable/selection-area/selection-area.on-pointer-up.d.ts +10 -0
- package/f-draggable/selection-area/selection-area.prepare-drag-sequence.d.ts +15 -0
- package/f-draggable/single-select/index.d.ts +2 -0
- package/f-draggable/single-select/providers.d.ts +2 -0
- package/f-draggable/single-select/single-select.on-pointer-down.d.ts +17 -0
- package/f-flow.module.d.ts +27 -17
- package/{components → f-node}/f-connectors/f-connector-base.d.ts +5 -3
- package/{components → f-node}/f-connectors/f-node-input/f-node-input-base.d.ts +1 -1
- package/f-node/f-connectors/f-node-input/f-node-input.directive.d.ts +23 -0
- package/{components → f-node}/f-connectors/f-node-outlet/f-node-outlet-base.d.ts +5 -4
- package/f-node/f-connectors/f-node-outlet/f-node-outlet.directive.d.ts +21 -0
- package/{components → f-node}/f-connectors/f-node-output/f-node-output-base.d.ts +3 -3
- package/f-node/f-connectors/f-node-output/f-node-output.directive.d.ts +22 -0
- package/{components → f-node}/f-connectors/index.d.ts +0 -2
- package/{components/f-node → f-node}/f-drag-handle/f-drag-handle.directive.d.ts +2 -2
- package/{components/f-node → f-node}/f-node-base.d.ts +10 -9
- package/f-node/f-node.component.d.ts +28 -0
- package/f-node/f-resize-observer.d.ts +4 -0
- package/{components/f-node → f-node}/index.d.ts +2 -1
- package/{components/f-node → f-node}/public-api.d.ts +1 -1
- package/fesm2022/foblex-flow.mjs +3376 -2490
- package/fesm2022/foblex-flow.mjs.map +1 -1
- package/get-flow-uid.d.ts +4 -0
- package/package.json +3 -3
- package/public-api.d.ts +3 -2
- package/components/f-connection/common/f-connection-base.d.ts +0 -30
- package/components/f-connection/common/f-connection-common.module.d.ts +0 -13
- package/components/f-connection/common/f-connection-text/f-connection-text-path.directive.d.ts +0 -17
- package/components/f-connection/common/f-gradient/f-connection-gradient.component.d.ts +0 -21
- package/components/f-connection/common/f-path/f-connection-path.component.d.ts +0 -21
- package/components/f-connection/common/get-connection-intersect.d.ts +0 -2
- package/components/f-connection/common/i-input-output-model.d.ts +0 -5
- package/components/f-connection/common/index.d.ts +0 -10
- package/components/f-connection/common/public-api.d.ts +0 -6
- package/components/f-connection/f-connection/f-connection.component.d.ts +0 -28
- package/components/f-connection/f-connection/f-connection.module.d.ts +0 -9
- package/components/f-connection/f-temp-connection/f-temp-connection.component.d.ts +0 -27
- package/components/f-connection/f-temp-connection/f-temp-connection.module.d.ts +0 -9
- package/components/f-connection/f-temp-connection/index.d.ts +0 -3
- package/components/f-connection/f-temp-connection/temp-connection-input-output-model.d.ts +0 -7
- package/components/f-connection/public-api.d.ts +0 -3
- package/components/f-connectors/f-node-input/f-node-input.directive.d.ts +0 -20
- package/components/f-connectors/f-node-outlet/f-node-outlet.directive.d.ts +0 -20
- package/components/f-connectors/f-node-output/f-node-output.directive.d.ts +0 -19
- package/components/f-connectors/f-out-connector-base.d.ts +0 -4
- package/components/f-connectors/get-element-rect-in-canvas.d.ts +0 -2
- package/components/f-flow/i-flow-connector-parent.d.ts +0 -7
- package/components/f-node/f-foreign-object/f-foreign-object-base.d.ts +0 -20
- package/components/f-node/f-foreign-object/f-foreign-object.component.d.ts +0 -16
- package/components/f-node/f-foreign-object/index.d.ts +0 -2
- package/components/f-node/f-foreign-object/public-api.d.ts +0 -1
- package/components/f-node/f-node.component.d.ts +0 -22
- package/directives/f-connect-if-intersect/connect-if-intersect/connect-if-intersect.handler.d.ts +0 -16
- package/directives/f-connect-if-intersect/connect-if-intersect/connect-if-intersect.request.d.ts +0 -5
- package/directives/f-connect-if-intersect/connect-if-intersect/index.d.ts +0 -2
- package/directives/f-connect-if-intersect/f-connect-if-intersect-base.d.ts +0 -11
- package/directives/f-connect-if-intersect/f-connect-if-intersect.directive.d.ts +0 -16
- package/directives/f-connect-if-intersect/index.d.ts +0 -3
- package/directives/f-connect-if-intersect/public-api.d.ts +0 -2
- package/directives/f-containers/f-connections-container/f-connections-container-base.d.ts +0 -18
- package/directives/f-containers/f-connections-container/f-connections-container.component.d.ts +0 -14
- package/directives/f-containers/f-connections-container/index.d.ts +0 -2
- package/directives/f-containers/f-connections-container/public-api.d.ts +0 -1
- package/directives/f-containers/f-items-container/f-items-container.directive.d.ts +0 -13
- package/directives/f-containers/f-items-container/index.d.ts +0 -3
- package/directives/f-containers/f-items-container/public-api.d.ts +0 -2
- package/directives/f-containers/f-nodes-container/f-nodes-container-base.d.ts +0 -18
- package/directives/f-containers/f-nodes-container/f-nodes-container.component.d.ts +0 -12
- package/directives/f-containers/f-nodes-container/index.d.ts +0 -2
- package/directives/f-containers/f-nodes-container/public-api.d.ts +0 -1
- package/directives/f-containers/index.d.ts +0 -3
- package/directives/f-containers/public-api.d.ts +0 -3
- package/directives/f-draggable/canvas/canvas-on-pointer-down/canvas-on-pointer-down.handler.d.ts +0 -12
- package/directives/f-draggable/canvas/canvas-on-pointer-down/canvas-on-pointer-down.request.d.ts +0 -5
- package/directives/f-draggable/canvas/canvas-on-pointer-down/index.d.ts +0 -2
- package/directives/f-draggable/canvas/canvas-on-pointer-move/canvas.on-pointer-move.d.ts +0 -13
- package/directives/f-draggable/canvas/canvas-on-pointer-move/index.d.ts +0 -1
- package/directives/f-draggable/canvas/canvas-on-pointer-up/canvas-on-pointer-up.handler.d.ts +0 -5
- package/directives/f-draggable/canvas/canvas-on-pointer-up/canvas-on-pointer-up.request.d.ts +0 -5
- package/directives/f-draggable/canvas/canvas-on-pointer-up/index.d.ts +0 -2
- package/directives/f-draggable/canvas/index.d.ts +0 -3
- package/directives/f-draggable/connections/create-connection/create-connection-on-pointer-down/create-connection-on-pointer-down.request.d.ts +0 -6
- package/directives/f-draggable/connections/create-connection/create-connection-on-pointer-down/create-connection.on-pointer-down.d.ts +0 -14
- package/directives/f-draggable/connections/create-connection/create-connection-on-pointer-down/index.d.ts +0 -2
- package/directives/f-draggable/connections/create-connection/create-connection-on-pointer-up/create-connection-on-pointer-up.request.d.ts +0 -7
- package/directives/f-draggable/connections/create-connection/create-connection-on-pointer-up/create-connection.on-pointer-up.d.ts +0 -11
- package/directives/f-draggable/connections/create-connection/create-connection-on-pointer-up/index.d.ts +0 -2
- package/directives/f-draggable/connections/create-connection/create-connection.on-pointer-move.d.ts +0 -16
- package/directives/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 -8
- package/directives/f-draggable/connections/create-connection/find-first-can-be-connected-output-by-outlet/find-first-can-be-connected-output-by-outlet.request.d.ts +0 -5
- package/directives/f-draggable/connections/create-connection/index.d.ts +0 -5
- package/directives/f-draggable/connections/find-inputs-under-pointer/find-inputs-under-pointer.handler.d.ts +0 -9
- package/directives/f-draggable/connections/find-inputs-under-pointer/find-inputs-under-pointer.request.d.ts +0 -8
- package/directives/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 -8
- package/directives/f-draggable/connections/find-inputs-under-pointer/first-not-connected-input-of-node-under-pointer/first-not-connected-input-of-node-under-pointer.request.d.ts +0 -5
- package/directives/f-draggable/connections/find-inputs-under-pointer/inputs-under-pointer/inputs-under-pointer.handler.d.ts +0 -8
- package/directives/f-draggable/connections/find-inputs-under-pointer/inputs-under-pointer/inputs-under-pointer.request.d.ts +0 -5
- package/directives/f-draggable/connections/public-api.d.ts +0 -2
- package/directives/f-draggable/connections/reassign-connection/index.d.ts +0 -4
- package/directives/f-draggable/connections/reassign-connection/reassign-on-pointer-down/index.d.ts +0 -2
- package/directives/f-draggable/connections/reassign-connection/reassign-on-pointer-down/reassign-connection-on-pointer-down.request.d.ts +0 -6
- package/directives/f-draggable/connections/reassign-connection/reassign-on-pointer-down/reassign-connection.on-pointer-down.d.ts +0 -11
- package/directives/f-draggable/connections/reassign-connection/reassign-on-pointer-move/index.d.ts +0 -1
- package/directives/f-draggable/connections/reassign-connection/reassign-on-pointer-move/reassign-connection.on-pointer-move.d.ts +0 -17
- package/directives/f-draggable/connections/reassign-connection/reassign-on-pointer-up/index.d.ts +0 -2
- package/directives/f-draggable/connections/reassign-connection/reassign-on-pointer-up/reassign-connection-on-pointer-up.request.d.ts +0 -7
- package/directives/f-draggable/connections/reassign-connection/reassign-on-pointer-up/reassign-connection.on-pointer-up.d.ts +0 -11
- package/directives/f-draggable/default-drag-handler/default-drag.handler.d.ts +0 -5
- package/directives/f-draggable/default-drag-handler/index.d.ts +0 -1
- package/directives/f-draggable/external-item/external-item-on-pointer-down/external-item-on-pointer-down.handler.d.ts +0 -10
- package/directives/f-draggable/external-item/external-item-on-pointer-down/external-item-on-pointer-down.request.d.ts +0 -5
- package/directives/f-draggable/external-item/external-item-on-pointer-down/index.d.ts +0 -2
- package/directives/f-draggable/external-item/external-item-on-pointer-move/index.d.ts +0 -1
- package/directives/f-draggable/external-item/external-item-on-pointer-up/external-item-on-pointer-up.handler.d.ts +0 -11
- package/directives/f-draggable/external-item/external-item-on-pointer-up/external-item-on-pointer-up.request.d.ts +0 -7
- package/directives/f-draggable/external-item/external-item-on-pointer-up/index.d.ts +0 -2
- package/directives/f-draggable/external-item/index.d.ts +0 -4
- package/directives/f-draggable/f-draggable-base.d.ts +0 -47
- package/directives/f-draggable/f-draggable.directive.d.ts +0 -23
- package/directives/f-draggable/f-draggable.module.d.ts +0 -9
- package/directives/f-draggable/f-draggable.service.d.ts +0 -13
- package/directives/f-draggable/i-drag-handler.d.ts +0 -9
- package/directives/f-draggable/node/index.d.ts +0 -3
- package/directives/f-draggable/node/node-on-pointer-down/index.d.ts +0 -2
- package/directives/f-draggable/node/node-on-pointer-down/node-on-pointer-down.request.d.ts +0 -9
- package/directives/f-draggable/node/node-on-pointer-down/node.on-pointer-down.d.ts +0 -17
- package/directives/f-draggable/node/node-on-pointer-move/f-connection-source.drag-handler.d.ts +0 -15
- package/directives/f-draggable/node/node-on-pointer-move/f-connection-target.drag-handler.d.ts +0 -15
- package/directives/f-draggable/node/node-on-pointer-move/f-connection.drag-handler.d.ts +0 -14
- package/directives/f-draggable/node/node-on-pointer-move/index.d.ts +0 -4
- package/directives/f-draggable/node/node-on-pointer-move/node.on-pointer-move.d.ts +0 -15
- package/directives/f-draggable/node/node-on-pointer-up/index.d.ts +0 -2
- package/directives/f-draggable/node/node-on-pointer-up/node-on-pointer-up.request.d.ts +0 -7
- package/directives/f-draggable/node/node-on-pointer-up/node.on-pointer-up.d.ts +0 -11
- package/directives/f-draggable/selection/index.d.ts +0 -3
- package/directives/f-draggable/selection/selection-on-pointer-down/index.d.ts +0 -2
- package/directives/f-draggable/selection/selection-on-pointer-down/selection-on-pointer-down.request.d.ts +0 -8
- package/directives/f-draggable/selection/selection-on-pointer-down/selection.on-pointer-down.d.ts +0 -12
- package/directives/f-draggable/selection/selection-on-pointer-move/index.d.ts +0 -1
- package/directives/f-draggable/selection/selection-on-pointer-move/selection.on-pointer-move.d.ts +0 -20
- package/directives/f-draggable/selection/selection-on-pointer-up/index.d.ts +0 -2
- package/directives/f-draggable/selection/selection-on-pointer-up/selection-on-pointer-up.request.d.ts +0 -9
- package/directives/f-draggable/selection/selection-on-pointer-up/selection.on-pointer-up.d.ts +0 -8
- package/directives/f-line-alignment/domain/find-nearest-coordinate-by-x.d.ts +0 -3
- package/directives/f-line-alignment/domain/find-nearest-coordinate-by-y.d.ts +0 -3
- package/directives/f-line-alignment/domain/index.d.ts +0 -4
- package/directives/f-line-alignment/f-line-alignment.directive.d.ts +0 -25
- package/directives/f-line-alignment/index.d.ts +0 -2
- package/directives/f-line-alignment/public-api.d.ts +0 -1
- package/directives/f-selection/f-selection.directive.d.ts +0 -15
- package/directives/f-selection/index.d.ts +0 -1
- package/directives/f-selection/public-api.d.ts +0 -1
- package/directives/f-zoom/f-zoom-base.d.ts +0 -24
- package/directives/f-zoom/f-zoom.directive.d.ts +0 -15
- package/directives/index.d.ts +0 -7
- package/directives/public-api.d.ts +0 -7
- package/esm2022/components/f-connection/common/f-connection-base.mjs +0 -32
- package/esm2022/components/f-connection/common/f-connection-common.module.mjs +0 -44
- package/esm2022/components/f-connection/common/f-connection-identifiers.mjs +0 -21
- package/esm2022/components/f-connection/common/f-connection-text/f-connection-text-path.directive.mjs +0 -38
- package/esm2022/components/f-connection/common/f-connection-text/f-connection-text.component.mjs +0 -55
- package/esm2022/components/f-connection/common/f-connection-text/index.mjs +0 -3
- package/esm2022/components/f-connection/common/f-drag-handle/f-connection-drag-handle.component.mjs +0 -30
- package/esm2022/components/f-connection/common/f-drag-handle/index.mjs +0 -2
- package/esm2022/components/f-connection/common/f-gradient/f-connection-gradient.component.mjs +0 -59
- package/esm2022/components/f-connection/common/f-gradient/index.mjs +0 -2
- package/esm2022/components/f-connection/common/f-path/f-connection-path.component.mjs +0 -58
- package/esm2022/components/f-connection/common/f-path/index.mjs +0 -2
- package/esm2022/components/f-connection/common/f-selection/f-connection-selection.component.mjs +0 -34
- package/esm2022/components/f-connection/common/f-selection/index.mjs +0 -2
- package/esm2022/components/f-connection/common/get-connection-intersect.mjs +0 -10
- package/esm2022/components/f-connection/common/i-input-output-model.mjs +0 -2
- package/esm2022/components/f-connection/common/index.mjs +0 -11
- package/esm2022/components/f-connection/common/public-api.mjs +0 -7
- package/esm2022/components/f-connection/f-connection/f-connection.component.mjs +0 -86
- package/esm2022/components/f-connection/f-connection/f-connection.module.mjs +0 -28
- package/esm2022/components/f-connection/f-connection/index.mjs +0 -3
- package/esm2022/components/f-connection/f-temp-connection/f-temp-connection.component.mjs +0 -61
- package/esm2022/components/f-connection/f-temp-connection/f-temp-connection.module.mjs +0 -28
- package/esm2022/components/f-connection/f-temp-connection/index.mjs +0 -4
- package/esm2022/components/f-connection/f-temp-connection/temp-connection-input-output-model.mjs +0 -7
- package/esm2022/components/f-connection/index.mjs +0 -4
- package/esm2022/components/f-connection/public-api.mjs +0 -4
- package/esm2022/components/f-connectors/f-connector-base.mjs +0 -14
- package/esm2022/components/f-connectors/f-node-input/f-node-input-base.mjs +0 -19
- package/esm2022/components/f-connectors/f-node-input/f-node-input.directive.mjs +0 -71
- package/esm2022/components/f-connectors/f-node-input/index.mjs +0 -4
- package/esm2022/components/f-connectors/f-node-input/is-node-input.mjs +0 -4
- package/esm2022/components/f-connectors/f-node-input/public-api.mjs +0 -2
- package/esm2022/components/f-connectors/f-node-outlet/f-node-outlet-base.mjs +0 -22
- package/esm2022/components/f-connectors/f-node-outlet/f-node-outlet.directive.mjs +0 -69
- package/esm2022/components/f-connectors/f-node-outlet/index.mjs +0 -4
- package/esm2022/components/f-connectors/f-node-outlet/is-node-outlet.mjs +0 -4
- package/esm2022/components/f-connectors/f-node-outlet/public-api.mjs +0 -2
- package/esm2022/components/f-connectors/f-node-output/f-node-output-base.mjs +0 -19
- package/esm2022/components/f-connectors/f-node-output/f-node-output.directive.mjs +0 -67
- package/esm2022/components/f-connectors/f-node-output/index.mjs +0 -4
- package/esm2022/components/f-connectors/f-node-output/is-node-output.mjs +0 -4
- package/esm2022/components/f-connectors/f-node-output/public-api.mjs +0 -2
- package/esm2022/components/f-connectors/f-out-connector-base.mjs +0 -4
- package/esm2022/components/f-connectors/get-element-rect-in-canvas.mjs +0 -8
- package/esm2022/components/f-connectors/index.mjs +0 -7
- package/esm2022/components/f-connectors/public-api.mjs +0 -4
- package/esm2022/components/f-flow/i-flow-connector-parent.mjs +0 -3
- package/esm2022/components/f-node/f-drag-handle/f-drag-handle.directive.mjs +0 -54
- package/esm2022/components/f-node/f-drag-handle/index.mjs +0 -3
- package/esm2022/components/f-node/f-drag-handle/is-drag-handle.mjs +0 -20
- package/esm2022/components/f-node/f-drag-handle/public-api.mjs +0 -2
- package/esm2022/components/f-node/f-foreign-object/f-foreign-object-base.mjs +0 -44
- package/esm2022/components/f-node/f-foreign-object/f-foreign-object.component.mjs +0 -49
- package/esm2022/components/f-node/f-foreign-object/index.mjs +0 -3
- package/esm2022/components/f-node/f-foreign-object/public-api.mjs +0 -2
- package/esm2022/components/f-node/f-node-base.mjs +0 -33
- package/esm2022/components/f-node/f-node.component.mjs +0 -62
- package/esm2022/components/f-node/index.mjs +0 -6
- package/esm2022/components/f-node/is-node.mjs +0 -4
- package/esm2022/components/f-node/public-api.mjs +0 -4
- package/esm2022/directives/f-connect-if-intersect/connect-if-intersect/connect-if-intersect.handler.mjs +0 -55
- package/esm2022/directives/f-connect-if-intersect/connect-if-intersect/connect-if-intersect.request.mjs +0 -6
- package/esm2022/directives/f-connect-if-intersect/connect-if-intersect/index.mjs +0 -3
- package/esm2022/directives/f-connect-if-intersect/f-connect-if-intersect-base.mjs +0 -10
- package/esm2022/directives/f-connect-if-intersect/f-connect-if-intersect.directive.mjs +0 -51
- package/esm2022/directives/f-connect-if-intersect/index.mjs +0 -4
- package/esm2022/directives/f-connect-if-intersect/public-api.mjs +0 -3
- package/esm2022/directives/f-containers/f-connections-container/f-connections-container-base.mjs +0 -32
- package/esm2022/directives/f-containers/f-connections-container/f-connections-container.component.mjs +0 -30
- package/esm2022/directives/f-containers/f-connections-container/index.mjs +0 -3
- package/esm2022/directives/f-containers/f-connections-container/public-api.mjs +0 -2
- package/esm2022/directives/f-containers/f-items-container/canvas-change.event.mjs +0 -7
- package/esm2022/directives/f-containers/f-items-container/f-items-container-base.mjs +0 -45
- package/esm2022/directives/f-containers/f-items-container/f-items-container.directive.mjs +0 -48
- package/esm2022/directives/f-containers/f-items-container/index.mjs +0 -4
- package/esm2022/directives/f-containers/f-items-container/public-api.mjs +0 -3
- package/esm2022/directives/f-containers/f-nodes-container/f-nodes-container-base.mjs +0 -39
- package/esm2022/directives/f-containers/f-nodes-container/f-nodes-container.component.mjs +0 -25
- package/esm2022/directives/f-containers/f-nodes-container/index.mjs +0 -3
- package/esm2022/directives/f-containers/f-nodes-container/public-api.mjs +0 -2
- package/esm2022/directives/f-containers/index.mjs +0 -4
- package/esm2022/directives/f-containers/public-api.mjs +0 -4
- package/esm2022/directives/f-draggable/canvas/canvas-on-pointer-down/canvas-on-pointer-down.handler.mjs +0 -24
- package/esm2022/directives/f-draggable/canvas/canvas-on-pointer-down/canvas-on-pointer-down.request.mjs +0 -6
- package/esm2022/directives/f-draggable/canvas/canvas-on-pointer-down/index.mjs +0 -3
- package/esm2022/directives/f-draggable/canvas/canvas-on-pointer-move/canvas.on-pointer-move.mjs +0 -20
- package/esm2022/directives/f-draggable/canvas/canvas-on-pointer-move/index.mjs +0 -2
- package/esm2022/directives/f-draggable/canvas/canvas-on-pointer-up/canvas-on-pointer-up.handler.mjs +0 -12
- package/esm2022/directives/f-draggable/canvas/canvas-on-pointer-up/canvas-on-pointer-up.request.mjs +0 -6
- package/esm2022/directives/f-draggable/canvas/canvas-on-pointer-up/index.mjs +0 -3
- package/esm2022/directives/f-draggable/canvas/index.mjs +0 -4
- package/esm2022/directives/f-draggable/connections/create-connection/create-connection-on-pointer-down/create-connection-on-pointer-down.request.mjs +0 -7
- package/esm2022/directives/f-draggable/connections/create-connection/create-connection-on-pointer-down/create-connection.on-pointer-down.mjs +0 -75
- package/esm2022/directives/f-draggable/connections/create-connection/create-connection-on-pointer-down/index.mjs +0 -3
- package/esm2022/directives/f-draggable/connections/create-connection/create-connection-on-pointer-up/create-connection-on-pointer-up.request.mjs +0 -7
- package/esm2022/directives/f-draggable/connections/create-connection/create-connection-on-pointer-up/create-connection.on-pointer-up.mjs +0 -31
- package/esm2022/directives/f-draggable/connections/create-connection/create-connection-on-pointer-up/index.mjs +0 -3
- package/esm2022/directives/f-draggable/connections/create-connection/create-connection.event.mjs +0 -7
- package/esm2022/directives/f-draggable/connections/create-connection/create-connection.on-pointer-move.mjs +0 -28
- package/esm2022/directives/f-draggable/connections/create-connection/find-first-can-be-connected-output-by-outlet/find-first-can-be-connected-output-by-outlet.handler.mjs +0 -20
- package/esm2022/directives/f-draggable/connections/create-connection/find-first-can-be-connected-output-by-outlet/find-first-can-be-connected-output-by-outlet.request.mjs +0 -6
- package/esm2022/directives/f-draggable/connections/create-connection/find-first-can-be-connected-output-by-outlet/index.mjs +0 -3
- package/esm2022/directives/f-draggable/connections/create-connection/index.mjs +0 -6
- package/esm2022/directives/f-draggable/connections/find-inputs-under-pointer/find-inputs-under-pointer.handler.mjs +0 -25
- package/esm2022/directives/f-draggable/connections/find-inputs-under-pointer/find-inputs-under-pointer.request.mjs +0 -7
- package/esm2022/directives/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 -20
- package/esm2022/directives/f-draggable/connections/find-inputs-under-pointer/first-not-connected-input-of-node-under-pointer/first-not-connected-input-of-node-under-pointer.request.mjs +0 -6
- package/esm2022/directives/f-draggable/connections/find-inputs-under-pointer/first-not-connected-input-of-node-under-pointer/index.mjs +0 -3
- package/esm2022/directives/f-draggable/connections/find-inputs-under-pointer/index.mjs +0 -5
- package/esm2022/directives/f-draggable/connections/find-inputs-under-pointer/inputs-under-pointer/index.mjs +0 -3
- package/esm2022/directives/f-draggable/connections/find-inputs-under-pointer/inputs-under-pointer/inputs-under-pointer.handler.mjs +0 -14
- package/esm2022/directives/f-draggable/connections/find-inputs-under-pointer/inputs-under-pointer/inputs-under-pointer.request.mjs +0 -6
- package/esm2022/directives/f-draggable/connections/index.mjs +0 -4
- package/esm2022/directives/f-draggable/connections/public-api.mjs +0 -3
- package/esm2022/directives/f-draggable/connections/reassign-connection/index.mjs +0 -5
- package/esm2022/directives/f-draggable/connections/reassign-connection/reassign-connection.event.mjs +0 -9
- package/esm2022/directives/f-draggable/connections/reassign-connection/reassign-on-pointer-down/index.mjs +0 -3
- package/esm2022/directives/f-draggable/connections/reassign-connection/reassign-on-pointer-down/reassign-connection-on-pointer-down.request.mjs +0 -7
- package/esm2022/directives/f-draggable/connections/reassign-connection/reassign-on-pointer-down/reassign-connection.on-pointer-down.mjs +0 -36
- package/esm2022/directives/f-draggable/connections/reassign-connection/reassign-on-pointer-move/index.mjs +0 -2
- package/esm2022/directives/f-draggable/connections/reassign-connection/reassign-on-pointer-move/reassign-connection.on-pointer-move.mjs +0 -31
- package/esm2022/directives/f-draggable/connections/reassign-connection/reassign-on-pointer-up/index.mjs +0 -3
- package/esm2022/directives/f-draggable/connections/reassign-connection/reassign-on-pointer-up/reassign-connection-on-pointer-up.request.mjs +0 -7
- package/esm2022/directives/f-draggable/connections/reassign-connection/reassign-on-pointer-up/reassign-connection.on-pointer-up.mjs +0 -26
- package/esm2022/directives/f-draggable/default-drag-handler/default-drag.handler.mjs +0 -11
- package/esm2022/directives/f-draggable/default-drag-handler/index.mjs +0 -2
- package/esm2022/directives/f-draggable/e-draggable-type.mjs +0 -12
- package/esm2022/directives/f-draggable/external-item/create-node.event.mjs +0 -7
- package/esm2022/directives/f-draggable/external-item/external-item-on-pointer-down/external-item-on-pointer-down.handler.mjs +0 -28
- package/esm2022/directives/f-draggable/external-item/external-item-on-pointer-down/external-item-on-pointer-down.request.mjs +0 -6
- package/esm2022/directives/f-draggable/external-item/external-item-on-pointer-down/index.mjs +0 -3
- package/esm2022/directives/f-draggable/external-item/external-item-on-pointer-move/external-item-on-pointer-move.handler.mjs +0 -30
- package/esm2022/directives/f-draggable/external-item/external-item-on-pointer-move/index.mjs +0 -2
- package/esm2022/directives/f-draggable/external-item/external-item-on-pointer-up/external-item-on-pointer-up.handler.mjs +0 -26
- package/esm2022/directives/f-draggable/external-item/external-item-on-pointer-up/external-item-on-pointer-up.request.mjs +0 -7
- package/esm2022/directives/f-draggable/external-item/external-item-on-pointer-up/index.mjs +0 -3
- package/esm2022/directives/f-draggable/external-item/index.mjs +0 -5
- package/esm2022/directives/f-draggable/external-item/public-api.mjs +0 -2
- package/esm2022/directives/f-draggable/f-draggable-base.mjs +0 -104
- package/esm2022/directives/f-draggable/f-draggable.directive.mjs +0 -53
- package/esm2022/directives/f-draggable/f-draggable.module.mjs +0 -37
- package/esm2022/directives/f-draggable/f-draggable.service.mjs +0 -23
- package/esm2022/directives/f-draggable/i-drag-handler.mjs +0 -2
- package/esm2022/directives/f-draggable/i-draggable-item.mjs +0 -2
- package/esm2022/directives/f-draggable/index.mjs +0 -14
- package/esm2022/directives/f-draggable/node/index.mjs +0 -4
- package/esm2022/directives/f-draggable/node/node-on-pointer-down/index.mjs +0 -3
- package/esm2022/directives/f-draggable/node/node-on-pointer-down/node-on-pointer-down.request.mjs +0 -9
- package/esm2022/directives/f-draggable/node/node-on-pointer-down/node.on-pointer-down.mjs +0 -88
- package/esm2022/directives/f-draggable/node/node-on-pointer-move/f-connection-source.drag-handler.mjs +0 -24
- package/esm2022/directives/f-draggable/node/node-on-pointer-move/f-connection-target.drag-handler.mjs +0 -24
- package/esm2022/directives/f-draggable/node/node-on-pointer-move/f-connection.drag-handler.mjs +0 -22
- package/esm2022/directives/f-draggable/node/node-on-pointer-move/index.mjs +0 -5
- package/esm2022/directives/f-draggable/node/node-on-pointer-move/node.on-pointer-move.mjs +0 -23
- package/esm2022/directives/f-draggable/node/node-on-pointer-up/index.mjs +0 -3
- package/esm2022/directives/f-draggable/node/node-on-pointer-up/node-on-pointer-up.request.mjs +0 -7
- package/esm2022/directives/f-draggable/node/node-on-pointer-up/node.on-pointer-up.mjs +0 -28
- package/esm2022/directives/f-draggable/public-api.mjs +0 -5
- package/esm2022/directives/f-draggable/selection/index.mjs +0 -4
- package/esm2022/directives/f-draggable/selection/selection-on-pointer-down/index.mjs +0 -3
- package/esm2022/directives/f-draggable/selection/selection-on-pointer-down/selection-on-pointer-down.request.mjs +0 -8
- package/esm2022/directives/f-draggable/selection/selection-on-pointer-down/selection.on-pointer-down.mjs +0 -61
- package/esm2022/directives/f-draggable/selection/selection-on-pointer-move/index.mjs +0 -2
- package/esm2022/directives/f-draggable/selection/selection-on-pointer-move/selection.on-pointer-move.mjs +0 -57
- package/esm2022/directives/f-draggable/selection/selection-on-pointer-up/index.mjs +0 -3
- package/esm2022/directives/f-draggable/selection/selection-on-pointer-up/selection-on-pointer-up.request.mjs +0 -8
- package/esm2022/directives/f-draggable/selection/selection-on-pointer-up/selection.on-pointer-up.mjs +0 -22
- package/esm2022/directives/f-external-item/f-external-item-base.mjs +0 -11
- package/esm2022/directives/f-external-item/f-external-item.directive.mjs +0 -44
- package/esm2022/directives/f-external-item/f-external-item.service.mjs +0 -25
- package/esm2022/directives/f-external-item/index.mjs +0 -5
- package/esm2022/directives/f-external-item/is-external-item.mjs +0 -7
- package/esm2022/directives/f-external-item/public-api.mjs +0 -2
- package/esm2022/directives/f-line-alignment/domain/find-nearest-coordinate-by-x.mjs +0 -40
- package/esm2022/directives/f-line-alignment/domain/find-nearest-coordinate-by-y.mjs +0 -40
- package/esm2022/directives/f-line-alignment/domain/i-line-alignment-result.mjs +0 -2
- package/esm2022/directives/f-line-alignment/domain/i-nearest-coordinate-result.mjs +0 -2
- package/esm2022/directives/f-line-alignment/domain/index.mjs +0 -5
- package/esm2022/directives/f-line-alignment/f-line-alignment.directive.mjs +0 -107
- package/esm2022/directives/f-line-alignment/index.mjs +0 -3
- package/esm2022/directives/f-line-alignment/public-api.mjs +0 -2
- package/esm2022/directives/f-selection/f-selection.directive.mjs +0 -41
- package/esm2022/directives/f-selection/index.mjs +0 -2
- package/esm2022/directives/f-selection/public-api.mjs +0 -2
- package/esm2022/directives/f-zoom/f-zoom-base.mjs +0 -89
- package/esm2022/directives/f-zoom/f-zoom.directive.mjs +0 -57
- package/esm2022/directives/f-zoom/index.mjs +0 -3
- package/esm2022/directives/f-zoom/public-api.mjs +0 -2
- package/esm2022/directives/index.mjs +0 -8
- package/esm2022/directives/public-api.mjs +0 -8
- package/esm2022/i-selectable.mjs +0 -2
- package/esm2022/internal/f-backgroud/f-background-base.mjs +0 -25
- package/esm2022/internal/f-backgroud/f-background.directive.mjs +0 -24
- package/esm2022/internal/f-backgroud/index.mjs +0 -3
- package/esm2022/internal/f-canvas/f-canvas-base.mjs +0 -25
- package/esm2022/internal/f-canvas/f-canvas.directive.mjs +0 -19
- package/esm2022/internal/f-canvas/index.mjs +0 -3
- package/esm2022/internal/index.mjs +0 -3
- package/esm2022/tokens.mjs +0 -4
- package/i-selectable.d.ts +0 -7
- package/internal/f-backgroud/f-background.directive.d.ts +0 -9
- package/internal/f-backgroud/index.d.ts +0 -2
- package/internal/f-canvas/f-canvas-base.d.ts +0 -12
- package/internal/f-canvas/f-canvas.directive.d.ts +0 -8
- package/internal/f-canvas/index.d.ts +0 -2
- package/internal/index.d.ts +0 -2
- package/tokens.d.ts +0 -3
- /package/{directives → components/f-flow/f-canvas}/f-zoom/index.d.ts +0 -0
- /package/{directives → components/f-flow/f-canvas}/f-zoom/public-api.d.ts +0 -0
- /package/{components/f-connection → f-connection}/common/f-connection-identifiers.d.ts +0 -0
- /package/{components/f-connection → f-connection}/common/f-drag-handle/f-connection-drag-handle.component.d.ts +0 -0
- /package/{components/f-connection → f-connection}/common/f-drag-handle/index.d.ts +0 -0
- /package/{components/f-connection → f-connection}/common/f-selection/index.d.ts +0 -0
- /package/{directives → f-draggable/components}/f-external-item/f-external-item-base.d.ts +0 -0
- /package/{directives → f-draggable/components}/f-external-item/f-external-item.directive.d.ts +0 -0
- /package/{directives → f-draggable/components}/f-external-item/f-external-item.service.d.ts +0 -0
- /package/{directives → f-draggable/components}/f-external-item/index.d.ts +0 -0
- /package/{directives → f-draggable/components}/f-external-item/is-external-item.d.ts +0 -0
- /package/{directives → f-draggable/components}/f-external-item/public-api.d.ts +0 -0
- /package/{directives → f-draggable/components}/f-line-alignment/domain/i-line-alignment-result.d.ts +0 -0
- /package/{directives → f-draggable/components}/f-line-alignment/domain/i-nearest-coordinate-result.d.ts +0 -0
- /package/{directives/f-draggable → f-draggable}/connections/create-connection/create-connection.event.d.ts +0 -0
- /package/{directives/f-draggable → f-draggable}/connections/find-inputs-under-pointer/index.d.ts +0 -0
- /package/{directives/f-draggable → f-draggable}/connections/reassign-connection/reassign-connection.event.d.ts +0 -0
- /package/{directives/f-draggable → f-draggable}/external-item/create-node.event.d.ts +0 -0
- /package/{directives/f-draggable → f-draggable}/external-item/public-api.d.ts +0 -0
- /package/{components → f-node}/f-connectors/f-node-input/index.d.ts +0 -0
- /package/{components → f-node}/f-connectors/f-node-input/is-node-input.d.ts +0 -0
- /package/{components → f-node}/f-connectors/f-node-input/public-api.d.ts +0 -0
- /package/{components → f-node}/f-connectors/f-node-outlet/index.d.ts +0 -0
- /package/{components → f-node}/f-connectors/f-node-outlet/is-node-outlet.d.ts +0 -0
- /package/{components → f-node}/f-connectors/f-node-outlet/public-api.d.ts +0 -0
- /package/{components → f-node}/f-connectors/f-node-output/index.d.ts +0 -0
- /package/{components → f-node}/f-connectors/f-node-output/is-node-output.d.ts +0 -0
- /package/{components → f-node}/f-connectors/f-node-output/public-api.d.ts +0 -0
- /package/{components → f-node}/f-connectors/public-api.d.ts +0 -0
- /package/{components/f-node → f-node}/f-drag-handle/index.d.ts +0 -0
- /package/{components/f-node → f-node}/f-drag-handle/is-drag-handle.d.ts +0 -0
- /package/{components/f-node → f-node}/f-drag-handle/public-api.d.ts +0 -0
- /package/{components/f-node → f-node}/is-node.d.ts +0 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../f-components-store";
|
|
4
|
+
export class GetConnectionHandler {
|
|
5
|
+
get fConnections() {
|
|
6
|
+
return this.fComponentsStore.fConnections;
|
|
7
|
+
}
|
|
8
|
+
constructor(fComponentsStore) {
|
|
9
|
+
this.fComponentsStore = fComponentsStore;
|
|
10
|
+
}
|
|
11
|
+
handle(element) {
|
|
12
|
+
const result = this.fConnections.find(c => c.isContains(element));
|
|
13
|
+
return result;
|
|
14
|
+
}
|
|
15
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: GetConnectionHandler, deps: [{ token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
16
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: GetConnectionHandler }); }
|
|
17
|
+
}
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: GetConnectionHandler, decorators: [{
|
|
19
|
+
type: Injectable
|
|
20
|
+
}], ctorParameters: function () { return [{ type: i1.FComponentsStore }]; } });
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWNvbm5lY3Rpb24uaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2dldC1jb25uZWN0aW9uLmhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBSzNDLE1BQU0sT0FBTyxvQkFBb0I7SUFFL0IsSUFBWSxZQUFZO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksQ0FBQztJQUM1QyxDQUFDO0lBRUQsWUFDWSxnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUU5QyxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQWlDO1FBQzdDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQ2xFLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7OEdBZFUsb0JBQW9CO2tIQUFwQixvQkFBb0I7OzJGQUFwQixvQkFBb0I7a0JBRGhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJSGFuZGxlciB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vZi1jb21wb25lbnRzLXN0b3JlJztcbmltcG9ydCB7IEZDb25uZWN0aW9uQmFzZSB9IGZyb20gJy4uL2YtY29ubmVjdGlvbic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBHZXRDb25uZWN0aW9uSGFuZGxlciBpbXBsZW1lbnRzIElIYW5kbGVyPEhUTUxFbGVtZW50IHwgU1ZHRWxlbWVudCwgRkNvbm5lY3Rpb25CYXNlIHwgdW5kZWZpbmVkPiB7XG5cbiAgcHJpdmF0ZSBnZXQgZkNvbm5lY3Rpb25zKCk6IEZDb25uZWN0aW9uQmFzZVtdIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDb25uZWN0aW9ucztcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUoZWxlbWVudDogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50KTogRkNvbm5lY3Rpb25CYXNlIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCByZXN1bHQgPSB0aGlzLmZDb25uZWN0aW9ucy5maW5kKGMgPT4gYy5pc0NvbnRhaW5zKGVsZW1lbnQpKTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export var EConnectorSide;
|
|
2
|
+
(function (EConnectorSide) {
|
|
3
|
+
EConnectorSide["LEFT"] = "left";
|
|
4
|
+
EConnectorSide["TOP"] = "top";
|
|
5
|
+
EConnectorSide["RIGHT"] = "right";
|
|
6
|
+
EConnectorSide["BOTTOM"] = "bottom";
|
|
7
|
+
})(EConnectorSide || (EConnectorSide = {}));
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZS1jb25uZWN0b3Itc2lkZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2dldC1jb25uZWN0b3Itc2lkZS1pbi1ub2RlL2UtY29ubmVjdG9yLXNpZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksY0FTWDtBQVRELFdBQVksY0FBYztJQUV4QiwrQkFBYSxDQUFBO0lBRWIsNkJBQVcsQ0FBQTtJQUVYLGlDQUFlLENBQUE7SUFFZixtQ0FBaUIsQ0FBQTtBQUNuQixDQUFDLEVBVFcsY0FBYyxLQUFkLGNBQWMsUUFTekIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBFQ29ubmVjdG9yU2lkZSB7XG5cbiAgTEVGVCA9ICdsZWZ0JyxcblxuICBUT1AgPSAndG9wJyxcblxuICBSSUdIVCA9ICdyaWdodCcsXG5cbiAgQk9UVE9NID0gJ2JvdHRvbScsXG59XG4iXX0=
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { RectExtensions } from '@foblex/core';
|
|
2
|
+
import { EConnectorSide } from './e-connector-side';
|
|
3
|
+
export class GetConnectorSideInNodeHandler {
|
|
4
|
+
handle(connector, node) {
|
|
5
|
+
const childRect = RectExtensions.fromElement(connector);
|
|
6
|
+
const parentRect = node.getBoundingClientRect();
|
|
7
|
+
const deltaLeft = childRect.gravityCenter.x - parentRect.left;
|
|
8
|
+
const deltaRight = parentRect.right - childRect.gravityCenter.x;
|
|
9
|
+
const deltaTop = childRect.gravityCenter.y - parentRect.top;
|
|
10
|
+
const deltaBottom = parentRect.bottom - childRect.gravityCenter.y;
|
|
11
|
+
const minDelta = Math.min(deltaLeft, deltaRight, deltaTop, deltaBottom);
|
|
12
|
+
if (minDelta === deltaLeft) {
|
|
13
|
+
return EConnectorSide.LEFT;
|
|
14
|
+
}
|
|
15
|
+
else if (minDelta === deltaRight) {
|
|
16
|
+
return EConnectorSide.RIGHT;
|
|
17
|
+
}
|
|
18
|
+
else if (minDelta === deltaTop) {
|
|
19
|
+
return EConnectorSide.TOP;
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
return EConnectorSide.BOTTOM;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWNvbm5lY3Rvci1zaWRlLWluLW5vZGUuaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2dldC1jb25uZWN0b3Itc2lkZS1pbi1ub2RlL2dldC1jb25uZWN0b3Itc2lkZS1pbi1ub2RlLmhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFZLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFcEQsTUFBTSxPQUFPLDZCQUE2QjtJQUVqQyxNQUFNLENBQUMsU0FBbUMsRUFBRSxJQUE4QjtRQUMvRSxNQUFNLFNBQVMsR0FBRyxjQUFjLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3hELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBRWhELE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUM7UUFDOUQsTUFBTSxVQUFVLEdBQUcsVUFBVSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztRQUNoRSxNQUFNLFFBQVEsR0FBRyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDO1FBQzVELE1BQU0sV0FBVyxHQUFHLFVBQVUsQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7UUFFbEUsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUV4RSxJQUFJLFFBQVEsS0FBSyxTQUFTLEVBQUU7WUFDMUIsT0FBTyxjQUFjLENBQUMsSUFBSSxDQUFDO1NBQzVCO2FBQU0sSUFBSSxRQUFRLEtBQUssVUFBVSxFQUFFO1lBQ2xDLE9BQU8sY0FBYyxDQUFDLEtBQUssQ0FBQztTQUM3QjthQUFNLElBQUksUUFBUSxLQUFLLFFBQVEsRUFBRTtZQUNoQyxPQUFPLGNBQWMsQ0FBQyxHQUFHLENBQUM7U0FDM0I7YUFBTTtZQUNMLE9BQU8sY0FBYyxDQUFDLE1BQU0sQ0FBQztTQUM5QjtJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElIYW5kbGVyLCBSZWN0RXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBFQ29ubmVjdG9yU2lkZSB9IGZyb20gJy4vZS1jb25uZWN0b3Itc2lkZSc7XG5cbmV4cG9ydCBjbGFzcyBHZXRDb25uZWN0b3JTaWRlSW5Ob2RlSGFuZGxlciBpbXBsZW1lbnRzIElIYW5kbGVyPEhUTUxFbGVtZW50IHwgU1ZHRWxlbWVudCwgRUNvbm5lY3RvclNpZGU+IHtcblxuICBwdWJsaWMgaGFuZGxlKGNvbm5lY3RvcjogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50LCBub2RlOiBIVE1MRWxlbWVudCB8IFNWR0VsZW1lbnQpOiBFQ29ubmVjdG9yU2lkZSB7XG4gICAgY29uc3QgY2hpbGRSZWN0ID0gUmVjdEV4dGVuc2lvbnMuZnJvbUVsZW1lbnQoY29ubmVjdG9yKTtcbiAgICBjb25zdCBwYXJlbnRSZWN0ID0gbm9kZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgIGNvbnN0IGRlbHRhTGVmdCA9IGNoaWxkUmVjdC5ncmF2aXR5Q2VudGVyLnggLSBwYXJlbnRSZWN0LmxlZnQ7XG4gICAgY29uc3QgZGVsdGFSaWdodCA9IHBhcmVudFJlY3QucmlnaHQgLSBjaGlsZFJlY3QuZ3Jhdml0eUNlbnRlci54O1xuICAgIGNvbnN0IGRlbHRhVG9wID0gY2hpbGRSZWN0LmdyYXZpdHlDZW50ZXIueSAtIHBhcmVudFJlY3QudG9wO1xuICAgIGNvbnN0IGRlbHRhQm90dG9tID0gcGFyZW50UmVjdC5ib3R0b20gLSBjaGlsZFJlY3QuZ3Jhdml0eUNlbnRlci55O1xuXG4gICAgY29uc3QgbWluRGVsdGEgPSBNYXRoLm1pbihkZWx0YUxlZnQsIGRlbHRhUmlnaHQsIGRlbHRhVG9wLCBkZWx0YUJvdHRvbSk7XG5cbiAgICBpZiAobWluRGVsdGEgPT09IGRlbHRhTGVmdCkge1xuICAgICAgcmV0dXJuIEVDb25uZWN0b3JTaWRlLkxFRlQ7XG4gICAgfSBlbHNlIGlmIChtaW5EZWx0YSA9PT0gZGVsdGFSaWdodCkge1xuICAgICAgcmV0dXJuIEVDb25uZWN0b3JTaWRlLlJJR0hUO1xuICAgIH0gZWxzZSBpZiAobWluRGVsdGEgPT09IGRlbHRhVG9wKSB7XG4gICAgICByZXR1cm4gRUNvbm5lY3RvclNpZGUuVE9QO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gRUNvbm5lY3RvclNpZGUuQk9UVE9NO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './e-connector-side';
|
|
2
|
+
export * from './get-connector-side-in-node.handler';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9nZXQtY29ubmVjdG9yLXNpZGUtaW4tbm9kZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9CQUFvQixDQUFDO0FBRW5DLGNBQWMsc0NBQXNDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2UtY29ubmVjdG9yLXNpZGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2dldC1jb25uZWN0b3Itc2lkZS1pbi1ub2RlLmhhbmRsZXInO1xuIl19
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Point, RectExtensions, SizeExtensions } from '@foblex/core';
|
|
2
|
+
import { Injectable } from '@angular/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../f-components-store";
|
|
5
|
+
export class GetElementRectInFlowHandler {
|
|
6
|
+
get transform() {
|
|
7
|
+
return this.fComponentsStore.transform;
|
|
8
|
+
}
|
|
9
|
+
get flowHost() {
|
|
10
|
+
return this.fComponentsStore.flowHost;
|
|
11
|
+
}
|
|
12
|
+
constructor(fComponentsStore) {
|
|
13
|
+
this.fComponentsStore = fComponentsStore;
|
|
14
|
+
}
|
|
15
|
+
handle(element) {
|
|
16
|
+
const systemRect = RectExtensions.fromElement(element);
|
|
17
|
+
const position = Point.fromPoint(systemRect).elementTransform(this.flowHost).sub(this.transform.scaledPosition).sub(this.transform.position).div(this.transform.scale);
|
|
18
|
+
const size = SizeExtensions.initialize(systemRect.width / this.transform.scale, systemRect.height / this.transform.scale);
|
|
19
|
+
const result = RectExtensions.initialize(position.x, position.y, size.width, size.height);
|
|
20
|
+
return result;
|
|
21
|
+
}
|
|
22
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: GetElementRectInFlowHandler, deps: [{ token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
23
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: GetElementRectInFlowHandler }); }
|
|
24
|
+
}
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: GetElementRectInFlowHandler, decorators: [{
|
|
26
|
+
type: Injectable
|
|
27
|
+
}], ctorParameters: function () { return [{ type: i1.FComponentsStore }]; } });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWVsZW1lbnQtcmVjdC1pbi1mbG93LmhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9nZXQtZWxlbWVudC1yZWN0LWluLWZsb3cuaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9DLEtBQUssRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUkzQyxNQUFNLE9BQU8sMkJBQTJCO0lBRXRDLElBQVksU0FBUztRQUNuQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUM7SUFDekMsQ0FBQztJQUVELElBQVksUUFBUTtRQUNsQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUM7SUFDeEMsQ0FBQztJQUVELFlBQ1ksZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFFOUMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUFpQztRQUU3QyxNQUFNLFVBQVUsR0FBRyxjQUFjLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXZELE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXZLLE1BQU0sSUFBSSxHQUFHLGNBQWMsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFMUgsTUFBTSxNQUFNLEdBQUcsY0FBYyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFMUYsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQzs4R0ExQlUsMkJBQTJCO2tIQUEzQiwyQkFBMkI7OzJGQUEzQiwyQkFBMkI7a0JBRHZDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJSGFuZGxlciwgSVJlY3QsIElUcmFuc2Zvcm1Nb2RlbCwgUG9pbnQsIFJlY3RFeHRlbnNpb25zLCBTaXplRXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vZi1jb21wb25lbnRzLXN0b3JlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEdldEVsZW1lbnRSZWN0SW5GbG93SGFuZGxlciBpbXBsZW1lbnRzIElIYW5kbGVyPEhUTUxFbGVtZW50IHwgU1ZHRWxlbWVudCwgSVJlY3Q+IHtcblxuICBwcml2YXRlIGdldCB0cmFuc2Zvcm0oKTogSVRyYW5zZm9ybU1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLnRyYW5zZm9ybTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGZsb3dIb3N0KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZsb3dIb3N0O1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgICBwcml2YXRlIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmUsXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShlbGVtZW50OiBIVE1MRWxlbWVudCB8IFNWR0VsZW1lbnQpOiBJUmVjdCB7XG5cbiAgICBjb25zdCBzeXN0ZW1SZWN0ID0gUmVjdEV4dGVuc2lvbnMuZnJvbUVsZW1lbnQoZWxlbWVudCk7XG5cbiAgICBjb25zdCBwb3NpdGlvbiA9IFBvaW50LmZyb21Qb2ludChzeXN0ZW1SZWN0KS5lbGVtZW50VHJhbnNmb3JtKHRoaXMuZmxvd0hvc3QpLnN1Yih0aGlzLnRyYW5zZm9ybS5zY2FsZWRQb3NpdGlvbikuc3ViKHRoaXMudHJhbnNmb3JtLnBvc2l0aW9uKS5kaXYodGhpcy50cmFuc2Zvcm0uc2NhbGUpO1xuXG4gICAgY29uc3Qgc2l6ZSA9IFNpemVFeHRlbnNpb25zLmluaXRpYWxpemUoc3lzdGVtUmVjdC53aWR0aCAvIHRoaXMudHJhbnNmb3JtLnNjYWxlLCBzeXN0ZW1SZWN0LmhlaWdodCAvIHRoaXMudHJhbnNmb3JtLnNjYWxlKTtcblxuICAgIGNvbnN0IHJlc3VsdCA9IFJlY3RFeHRlbnNpb25zLmluaXRpYWxpemUocG9zaXRpb24ueCwgcG9zaXRpb24ueSwgc2l6ZS53aWR0aCwgc2l6ZS5oZWlnaHQpO1xuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../f-components-store";
|
|
4
|
+
export class GetIncomingConnectionsHandler {
|
|
5
|
+
get fConnections() {
|
|
6
|
+
return this.fComponentsStore.fConnections;
|
|
7
|
+
}
|
|
8
|
+
constructor(fComponentsStore) {
|
|
9
|
+
this.fComponentsStore = fComponentsStore;
|
|
10
|
+
}
|
|
11
|
+
handle(inputs) {
|
|
12
|
+
const inputsIds = inputs.map((x) => x.id);
|
|
13
|
+
return this.fConnections.filter((x) => {
|
|
14
|
+
return inputsIds.includes(x.inputId);
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: GetIncomingConnectionsHandler, deps: [{ token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
18
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: GetIncomingConnectionsHandler }); }
|
|
19
|
+
}
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: GetIncomingConnectionsHandler, decorators: [{
|
|
21
|
+
type: Injectable
|
|
22
|
+
}], ctorParameters: function () { return [{ type: i1.FComponentsStore }]; } });
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWluY29taW5nLWNvbm5lY3Rpb25zLmhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9nZXQtaW5jb21pbmctY29ubmVjdGlvbnMuaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFNM0MsTUFBTSxPQUFPLDZCQUE2QjtJQUV4QyxJQUFZLFlBQVk7UUFDdEIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDO0lBQzVDLENBQUM7SUFFRCxZQUNZLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBRTlDLENBQUM7SUFFTSxNQUFNLENBQUMsTUFBd0I7UUFDcEMsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzFDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNwQyxPQUFPLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZDLENBQUMsQ0FBRSxDQUFDO0lBQ04sQ0FBQzs4R0FoQlUsNkJBQTZCO2tIQUE3Qiw2QkFBNkI7OzJGQUE3Qiw2QkFBNkI7a0JBRHpDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJSGFuZGxlciB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vZi1jb21wb25lbnRzLXN0b3JlJztcbmltcG9ydCB7IEZDb25uZWN0aW9uQmFzZSB9IGZyb20gJy4uL2YtY29ubmVjdGlvbic7XG5pbXBvcnQgeyBGQ29ubmVjdG9yQmFzZSB9IGZyb20gJy4uL2Ytbm9kZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBHZXRJbmNvbWluZ0Nvbm5lY3Rpb25zSGFuZGxlciBpbXBsZW1lbnRzIElIYW5kbGVyPEZDb25uZWN0b3JCYXNlW10sIEZDb25uZWN0aW9uQmFzZVtdPiB7XG5cbiAgcHJpdmF0ZSBnZXQgZkNvbm5lY3Rpb25zKCk6IEZDb25uZWN0aW9uQmFzZVtdIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDb25uZWN0aW9ucztcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUoaW5wdXRzOiBGQ29ubmVjdG9yQmFzZVtdKTogRkNvbm5lY3Rpb25CYXNlW10ge1xuICAgIGNvbnN0IGlucHV0c0lkcyA9IGlucHV0cy5tYXAoKHgpID0+IHguaWQpO1xuICAgIHJldHVybiB0aGlzLmZDb25uZWN0aW9ucy5maWx0ZXIoKHgpID0+IHtcbiAgICAgIHJldHVybiBpbnB1dHNJZHMuaW5jbHVkZXMoeC5pbnB1dElkKTtcbiAgICB9KSE7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { InputNotFound } from './errors';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../f-components-store";
|
|
5
|
+
import * as i2 from "./get-element-rect-in-flow.handler";
|
|
6
|
+
export class GetInputRectInFlowHandler {
|
|
7
|
+
constructor(fComponentsStore, getElementRectInFlowHandler) {
|
|
8
|
+
this.fComponentsStore = fComponentsStore;
|
|
9
|
+
this.getElementRectInFlowHandler = getElementRectInFlowHandler;
|
|
10
|
+
}
|
|
11
|
+
handle(inputId) {
|
|
12
|
+
const input = this.fComponentsStore.fInputs.find((x) => x.id === inputId);
|
|
13
|
+
if (!input) {
|
|
14
|
+
throw InputNotFound(inputId);
|
|
15
|
+
}
|
|
16
|
+
const result = this.getElementRectInFlowHandler.handle(input.hostElement);
|
|
17
|
+
return { rect: result, side: input.side };
|
|
18
|
+
}
|
|
19
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: GetInputRectInFlowHandler, deps: [{ token: i1.FComponentsStore }, { token: i2.GetElementRectInFlowHandler }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
20
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: GetInputRectInFlowHandler }); }
|
|
21
|
+
}
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: GetInputRectInFlowHandler, decorators: [{
|
|
23
|
+
type: Injectable
|
|
24
|
+
}], ctorParameters: function () { return [{ type: i1.FComponentsStore }, { type: i2.GetElementRectInFlowHandler }]; } });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWlucHV0LXJlY3QtaW4tZmxvdy5oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZ2V0LWlucHV0LXJlY3QtaW4tZmxvdy5oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7OztBQUl6QyxNQUFNLE9BQU8seUJBQXlCO0lBRXBDLFlBQ1ksZ0JBQWtDLEVBQ2xDLDJCQUF3RDtRQUR4RCxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLGdDQUEyQixHQUEzQiwyQkFBMkIsQ0FBNkI7SUFFcEUsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUFZO1FBRXhCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLE9BQU8sQ0FBQyxDQUFDO1FBRTFFLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDVixNQUFNLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUM5QjtRQUVELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxNQUFNLENBQUMsS0FBTSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBRTFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUMsQ0FBQzs4R0FuQlUseUJBQXlCO2tIQUF6Qix5QkFBeUI7OzJGQUF6Qix5QkFBeUI7a0JBRHJDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJSGFuZGxlciwgSVJlY3QgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uL2YtY29tcG9uZW50cy1zdG9yZSc7XG5pbXBvcnQgeyBHZXRFbGVtZW50UmVjdEluRmxvd0hhbmRsZXIgfSBmcm9tICcuL2dldC1lbGVtZW50LXJlY3QtaW4tZmxvdy5oYW5kbGVyJztcbmltcG9ydCB7IElucHV0Tm90Rm91bmQgfSBmcm9tICcuL2Vycm9ycyc7XG5pbXBvcnQgeyBFQ29ubmVjdG9yU2lkZSB9IGZyb20gJy4vZ2V0LWNvbm5lY3Rvci1zaWRlLWluLW5vZGUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgR2V0SW5wdXRSZWN0SW5GbG93SGFuZGxlciBpbXBsZW1lbnRzIElIYW5kbGVyPGFueSwgeyByZWN0OiBJUmVjdCwgc2lkZTogRUNvbm5lY3RvclNpZGUgfT4ge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgICAgcHJpdmF0ZSBnZXRFbGVtZW50UmVjdEluRmxvd0hhbmRsZXI6IEdldEVsZW1lbnRSZWN0SW5GbG93SGFuZGxlclxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUoaW5wdXRJZDogYW55KTogeyByZWN0OiBJUmVjdCwgc2lkZTogRUNvbm5lY3RvclNpZGUgfSB7XG5cbiAgICBjb25zdCBpbnB1dCA9IHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mSW5wdXRzLmZpbmQoKHgpID0+IHguaWQgPT09IGlucHV0SWQpO1xuXG4gICAgaWYgKCFpbnB1dCkge1xuICAgICAgdGhyb3cgSW5wdXROb3RGb3VuZChpbnB1dElkKTtcbiAgICB9XG5cbiAgICBjb25zdCByZXN1bHQgPSB0aGlzLmdldEVsZW1lbnRSZWN0SW5GbG93SGFuZGxlci5oYW5kbGUoaW5wdXQhLmhvc3RFbGVtZW50KVxuXG4gICAgcmV0dXJuIHsgcmVjdDogcmVzdWx0LCBzaWRlOiBpbnB1dC5zaWRlIH07XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../f-components-store";
|
|
4
|
+
export class GetOutgoingConnectionsHandler {
|
|
5
|
+
get fConnections() {
|
|
6
|
+
return this.fComponentsStore.fConnections;
|
|
7
|
+
}
|
|
8
|
+
constructor(fComponentsStore) {
|
|
9
|
+
this.fComponentsStore = fComponentsStore;
|
|
10
|
+
}
|
|
11
|
+
handle(outputs) {
|
|
12
|
+
const outputsIds = outputs.map((x) => x.id);
|
|
13
|
+
return this.fConnections.filter((x) => {
|
|
14
|
+
return outputsIds.includes(x.outputId);
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: GetOutgoingConnectionsHandler, deps: [{ token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
18
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: GetOutgoingConnectionsHandler }); }
|
|
19
|
+
}
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: GetOutgoingConnectionsHandler, decorators: [{
|
|
21
|
+
type: Injectable
|
|
22
|
+
}], ctorParameters: function () { return [{ type: i1.FComponentsStore }]; } });
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LW91dGdvaW5nLWNvbm5lY3Rpb25zLmhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9nZXQtb3V0Z29pbmctY29ubmVjdGlvbnMuaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFNM0MsTUFBTSxPQUFPLDZCQUE2QjtJQUV4QyxJQUFZLFlBQVk7UUFDdEIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDO0lBQzVDLENBQUM7SUFFRCxZQUNZLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBRTlDLENBQUM7SUFFTSxNQUFNLENBQUMsT0FBeUI7UUFDckMsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzVDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNwQyxPQUFPLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3pDLENBQUMsQ0FBRSxDQUFDO0lBQ04sQ0FBQzs4R0FoQlUsNkJBQTZCO2tIQUE3Qiw2QkFBNkI7OzJGQUE3Qiw2QkFBNkI7a0JBRHpDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJSGFuZGxlciB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vZi1jb21wb25lbnRzLXN0b3JlJztcbmltcG9ydCB7IEZDb25uZWN0aW9uQmFzZSB9IGZyb20gJy4uL2YtY29ubmVjdGlvbic7XG5pbXBvcnQgeyBGQ29ubmVjdG9yQmFzZSB9IGZyb20gJy4uL2Ytbm9kZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBHZXRPdXRnb2luZ0Nvbm5lY3Rpb25zSGFuZGxlciBpbXBsZW1lbnRzIElIYW5kbGVyPEZDb25uZWN0b3JCYXNlW10sIEZDb25uZWN0aW9uQmFzZVtdPiB7XG5cbiAgcHJpdmF0ZSBnZXQgZkNvbm5lY3Rpb25zKCk6IEZDb25uZWN0aW9uQmFzZVtdIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDb25uZWN0aW9ucztcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUob3V0cHV0czogRkNvbm5lY3RvckJhc2VbXSk6IEZDb25uZWN0aW9uQmFzZVtdIHtcbiAgICBjb25zdCBvdXRwdXRzSWRzID0gb3V0cHV0cy5tYXAoKHgpID0+IHguaWQpO1xuICAgIHJldHVybiB0aGlzLmZDb25uZWN0aW9ucy5maWx0ZXIoKHgpID0+IHtcbiAgICAgIHJldHVybiBvdXRwdXRzSWRzLmluY2x1ZGVzKHgub3V0cHV0SWQpO1xuICAgIH0pITtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { OutputNotFound } from './errors';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../f-components-store";
|
|
5
|
+
import * as i2 from "./get-element-rect-in-flow.handler";
|
|
6
|
+
export class GetOutputRectInFlowHandler {
|
|
7
|
+
constructor(fComponentsStore, getElementRectInFlowHandler) {
|
|
8
|
+
this.fComponentsStore = fComponentsStore;
|
|
9
|
+
this.getElementRectInFlowHandler = getElementRectInFlowHandler;
|
|
10
|
+
}
|
|
11
|
+
handle(outputId) {
|
|
12
|
+
const output = this.fComponentsStore.fOutputs.find((x) => x.id === outputId);
|
|
13
|
+
if (!output) {
|
|
14
|
+
throw OutputNotFound(outputId);
|
|
15
|
+
}
|
|
16
|
+
const result = this.getElementRectInFlowHandler.handle(output.hostElement);
|
|
17
|
+
return { rect: result, side: output.side };
|
|
18
|
+
}
|
|
19
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: GetOutputRectInFlowHandler, deps: [{ token: i1.FComponentsStore }, { token: i2.GetElementRectInFlowHandler }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
20
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: GetOutputRectInFlowHandler }); }
|
|
21
|
+
}
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: GetOutputRectInFlowHandler, decorators: [{
|
|
23
|
+
type: Injectable
|
|
24
|
+
}], ctorParameters: function () { return [{ type: i1.FComponentsStore }, { type: i2.GetElementRectInFlowHandler }]; } });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LW91dHB1dC1yZWN0LWluLWZsb3cuaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2dldC1vdXRwdXQtcmVjdC1pbi1mbG93LmhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sVUFBVSxDQUFDOzs7O0FBSTFDLE1BQU0sT0FBTywwQkFBMEI7SUFFckMsWUFDWSxnQkFBa0MsRUFDbEMsMkJBQXdEO1FBRHhELHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsZ0NBQTJCLEdBQTNCLDJCQUEyQixDQUE2QjtJQUVwRSxDQUFDO0lBRU0sTUFBTSxDQUFDLFFBQWE7UUFFekIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssUUFBUSxDQUFDLENBQUM7UUFFN0UsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNYLE1BQU0sY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQ2hDO1FBRUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLDJCQUEyQixDQUFDLE1BQU0sQ0FBQyxNQUFPLENBQUMsV0FBVyxDQUFDLENBQUE7UUFFM0UsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM3QyxDQUFDOzhHQW5CVSwwQkFBMEI7a0hBQTFCLDBCQUEwQjs7MkZBQTFCLDBCQUEwQjtrQkFEdEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElIYW5kbGVyLCBJUmVjdCB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vZi1jb21wb25lbnRzLXN0b3JlJztcbmltcG9ydCB7IEdldEVsZW1lbnRSZWN0SW5GbG93SGFuZGxlciB9IGZyb20gJy4vZ2V0LWVsZW1lbnQtcmVjdC1pbi1mbG93LmhhbmRsZXInO1xuaW1wb3J0IHsgT3V0cHV0Tm90Rm91bmQgfSBmcm9tICcuL2Vycm9ycyc7XG5pbXBvcnQgeyBFQ29ubmVjdG9yU2lkZSB9IGZyb20gJy4vZ2V0LWNvbm5lY3Rvci1zaWRlLWluLW5vZGUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgR2V0T3V0cHV0UmVjdEluRmxvd0hhbmRsZXIgaW1wbGVtZW50cyBJSGFuZGxlcjxhbnksIHsgcmVjdDogSVJlY3QsIHNpZGU6IEVDb25uZWN0b3JTaWRlIH0+IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAgIHByaXZhdGUgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZSxcbiAgICAgIHByaXZhdGUgZ2V0RWxlbWVudFJlY3RJbkZsb3dIYW5kbGVyOiBHZXRFbGVtZW50UmVjdEluRmxvd0hhbmRsZXJcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKG91dHB1dElkOiBhbnkpOiB7IHJlY3Q6IElSZWN0LCBzaWRlOiBFQ29ubmVjdG9yU2lkZSB9IHtcblxuICAgIGNvbnN0IG91dHB1dCA9IHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mT3V0cHV0cy5maW5kKCh4KSA9PiB4LmlkID09PSBvdXRwdXRJZCk7XG5cbiAgICBpZiAoIW91dHB1dCkge1xuICAgICAgdGhyb3cgT3V0cHV0Tm90Rm91bmQob3V0cHV0SWQpO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuZ2V0RWxlbWVudFJlY3RJbkZsb3dIYW5kbGVyLmhhbmRsZShvdXRwdXQhLmhvc3RFbGVtZW50KVxuXG4gICAgcmV0dXJuIHsgcmVjdDogcmVzdWx0LCBzaWRlOiBvdXRwdXQuc2lkZSB9O1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export * from './get-connection-vector';
|
|
2
|
+
export * from './get-connector-side-in-node';
|
|
3
|
+
export * from './errors';
|
|
4
|
+
export * from './get-all-nodes-rect.handler';
|
|
5
|
+
export * from './get-connection.handler';
|
|
6
|
+
export * from './get-element-rect-in-flow.handler';
|
|
7
|
+
export * from './get-incoming-connections.handler';
|
|
8
|
+
export * from './get-outgoing-connections.handler';
|
|
9
|
+
export * from './get-input-rect-in-flow.handler';
|
|
10
|
+
export * from './get-output-rect-in-flow.handler';
|
|
11
|
+
export * from './providers';
|
|
12
|
+
export * from './update-node-layer.handler';
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHlCQUF5QixDQUFDO0FBRXhDLGNBQWMsOEJBQThCLENBQUM7QUFFN0MsY0FBYyxVQUFVLENBQUM7QUFFekIsY0FBYyw4QkFBOEIsQ0FBQztBQUU3QyxjQUFjLDBCQUEwQixDQUFDO0FBRXpDLGNBQWMsb0NBQW9DLENBQUM7QUFFbkQsY0FBYyxvQ0FBb0MsQ0FBQztBQUVuRCxjQUFjLG9DQUFvQyxDQUFDO0FBRW5ELGNBQWMsa0NBQWtDLENBQUM7QUFFakQsY0FBYyxtQ0FBbUMsQ0FBQztBQUVsRCxjQUFjLGFBQWEsQ0FBQztBQUU1QixjQUFjLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9nZXQtY29ubmVjdGlvbi12ZWN0b3InO1xuXG5leHBvcnQgKiBmcm9tICcuL2dldC1jb25uZWN0b3Itc2lkZS1pbi1ub2RlJztcblxuZXhwb3J0ICogZnJvbSAnLi9lcnJvcnMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2dldC1hbGwtbm9kZXMtcmVjdC5oYW5kbGVyJztcblxuZXhwb3J0ICogZnJvbSAnLi9nZXQtY29ubmVjdGlvbi5oYW5kbGVyJztcblxuZXhwb3J0ICogZnJvbSAnLi9nZXQtZWxlbWVudC1yZWN0LWluLWZsb3cuaGFuZGxlcic7XG5cbmV4cG9ydCAqIGZyb20gJy4vZ2V0LWluY29taW5nLWNvbm5lY3Rpb25zLmhhbmRsZXInO1xuXG5leHBvcnQgKiBmcm9tICcuL2dldC1vdXRnb2luZy1jb25uZWN0aW9ucy5oYW5kbGVyJztcblxuZXhwb3J0ICogZnJvbSAnLi9nZXQtaW5wdXQtcmVjdC1pbi1mbG93LmhhbmRsZXInO1xuXG5leHBvcnQgKiBmcm9tICcuL2dldC1vdXRwdXQtcmVjdC1pbi1mbG93LmhhbmRsZXInO1xuXG5leHBvcnQgKiBmcm9tICcuL3Byb3ZpZGVycyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vdXBkYXRlLW5vZGUtbGF5ZXIuaGFuZGxlcic7XG4iXX0=
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { GetElementRectInFlowHandler } from './get-element-rect-in-flow.handler';
|
|
2
|
+
import { GetIncomingConnectionsHandler } from './get-incoming-connections.handler';
|
|
3
|
+
import { GetOutgoingConnectionsHandler } from './get-outgoing-connections.handler';
|
|
4
|
+
import { GetConnectionHandler } from './get-connection.handler';
|
|
5
|
+
import { GetAllNodesRectHandler } from './get-all-nodes-rect.handler';
|
|
6
|
+
import { GetOutputRectInFlowHandler } from './get-output-rect-in-flow.handler';
|
|
7
|
+
import { GetInputRectInFlowHandler } from './get-input-rect-in-flow.handler';
|
|
8
|
+
import { GetConnectionVectorHandler } from './get-connection-vector';
|
|
9
|
+
import { UpdateNodeLayerHandler } from './update-node-layer.handler';
|
|
10
|
+
export const COMMON_PROVIDERS = [
|
|
11
|
+
GetAllNodesRectHandler,
|
|
12
|
+
GetConnectionVectorHandler,
|
|
13
|
+
GetConnectionHandler,
|
|
14
|
+
GetElementRectInFlowHandler,
|
|
15
|
+
GetOutputRectInFlowHandler,
|
|
16
|
+
GetInputRectInFlowHandler,
|
|
17
|
+
GetIncomingConnectionsHandler,
|
|
18
|
+
GetOutgoingConnectionsHandler,
|
|
19
|
+
UpdateNodeLayerHandler,
|
|
20
|
+
];
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vcHJvdmlkZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRXJFLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHO0lBRTlCLHNCQUFzQjtJQUV0QiwwQkFBMEI7SUFFMUIsb0JBQW9CO0lBRXBCLDJCQUEyQjtJQUUzQiwwQkFBMEI7SUFFMUIseUJBQXlCO0lBRXpCLDZCQUE2QjtJQUU3Qiw2QkFBNkI7SUFFN0Isc0JBQXNCO0NBQ3ZCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHZXRFbGVtZW50UmVjdEluRmxvd0hhbmRsZXIgfSBmcm9tICcuL2dldC1lbGVtZW50LXJlY3QtaW4tZmxvdy5oYW5kbGVyJztcbmltcG9ydCB7IEdldEluY29taW5nQ29ubmVjdGlvbnNIYW5kbGVyIH0gZnJvbSAnLi9nZXQtaW5jb21pbmctY29ubmVjdGlvbnMuaGFuZGxlcic7XG5pbXBvcnQgeyBHZXRPdXRnb2luZ0Nvbm5lY3Rpb25zSGFuZGxlciB9IGZyb20gJy4vZ2V0LW91dGdvaW5nLWNvbm5lY3Rpb25zLmhhbmRsZXInO1xuaW1wb3J0IHsgR2V0Q29ubmVjdGlvbkhhbmRsZXIgfSBmcm9tICcuL2dldC1jb25uZWN0aW9uLmhhbmRsZXInO1xuaW1wb3J0IHsgR2V0QWxsTm9kZXNSZWN0SGFuZGxlciB9IGZyb20gJy4vZ2V0LWFsbC1ub2Rlcy1yZWN0LmhhbmRsZXInO1xuaW1wb3J0IHsgR2V0T3V0cHV0UmVjdEluRmxvd0hhbmRsZXIgfSBmcm9tICcuL2dldC1vdXRwdXQtcmVjdC1pbi1mbG93LmhhbmRsZXInO1xuaW1wb3J0IHsgR2V0SW5wdXRSZWN0SW5GbG93SGFuZGxlciB9IGZyb20gJy4vZ2V0LWlucHV0LXJlY3QtaW4tZmxvdy5oYW5kbGVyJztcbmltcG9ydCB7IEdldENvbm5lY3Rpb25WZWN0b3JIYW5kbGVyIH0gZnJvbSAnLi9nZXQtY29ubmVjdGlvbi12ZWN0b3InO1xuaW1wb3J0IHsgVXBkYXRlTm9kZUxheWVySGFuZGxlciB9IGZyb20gJy4vdXBkYXRlLW5vZGUtbGF5ZXIuaGFuZGxlcic7XG5cbmV4cG9ydCBjb25zdCBDT01NT05fUFJPVklERVJTID0gW1xuXG4gIEdldEFsbE5vZGVzUmVjdEhhbmRsZXIsXG5cbiAgR2V0Q29ubmVjdGlvblZlY3RvckhhbmRsZXIsXG5cbiAgR2V0Q29ubmVjdGlvbkhhbmRsZXIsXG5cbiAgR2V0RWxlbWVudFJlY3RJbkZsb3dIYW5kbGVyLFxuXG4gIEdldE91dHB1dFJlY3RJbkZsb3dIYW5kbGVyLFxuXG4gIEdldElucHV0UmVjdEluRmxvd0hhbmRsZXIsXG5cbiAgR2V0SW5jb21pbmdDb25uZWN0aW9uc0hhbmRsZXIsXG5cbiAgR2V0T3V0Z29pbmdDb25uZWN0aW9uc0hhbmRsZXIsXG5cbiAgVXBkYXRlTm9kZUxheWVySGFuZGxlcixcbl07XG4iXX0=
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../f-components-store";
|
|
4
|
+
export class UpdateNodeLayerHandler {
|
|
5
|
+
get fNodesContainer() {
|
|
6
|
+
return this.fComponentsStore.fCanvas?.fNodesContainer?.nativeElement;
|
|
7
|
+
}
|
|
8
|
+
constructor(fComponentsStore) {
|
|
9
|
+
this.fComponentsStore = fComponentsStore;
|
|
10
|
+
}
|
|
11
|
+
handle(node) {
|
|
12
|
+
const elements = Array.from(this.fNodesContainer.children);
|
|
13
|
+
const elementsCount = elements.length;
|
|
14
|
+
const targetIndex = elements.findIndex((x) => x === node.hostElement);
|
|
15
|
+
if (targetIndex !== elementsCount - 1) {
|
|
16
|
+
const afterElements = elements.splice(targetIndex + 1);
|
|
17
|
+
afterElements.forEach((x) => {
|
|
18
|
+
this.fNodesContainer.removeChild(x);
|
|
19
|
+
this.fNodesContainer.insertBefore(x, node.hostElement);
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: UpdateNodeLayerHandler, deps: [{ token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
24
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: UpdateNodeLayerHandler }); }
|
|
25
|
+
}
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: UpdateNodeLayerHandler, decorators: [{
|
|
27
|
+
type: Injectable
|
|
28
|
+
}], ctorParameters: function () { return [{ type: i1.FComponentsStore }]; } });
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLW5vZGUtbGF5ZXIuaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL3VwZGF0ZS1ub2RlLWxheWVyLmhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBSzNDLE1BQU0sT0FBTyxzQkFBc0I7SUFFakMsSUFBWSxlQUFlO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYyxDQUFDO0lBQ3hFLENBQUM7SUFFRCxZQUNZLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBRTlDLENBQUM7SUFFTSxNQUFNLENBQUMsSUFBZTtRQUMzQixNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0QsTUFBTSxhQUFhLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztRQUN0QyxNQUFNLFdBQVcsR0FBVyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzlFLElBQUksV0FBVyxLQUFLLGFBQWEsR0FBRyxDQUFDLEVBQUU7WUFDckMsTUFBTSxhQUFhLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDdkQsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUMxQixJQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDcEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUN6RCxDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQzs4R0F0QlUsc0JBQXNCO2tIQUF0QixzQkFBc0I7OzJGQUF0QixzQkFBc0I7a0JBRGxDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJSGFuZGxlciB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vZi1jb21wb25lbnRzLXN0b3JlJztcbmltcG9ydCB7IEZOb2RlQmFzZSB9IGZyb20gJy4uL2Ytbm9kZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBVcGRhdGVOb2RlTGF5ZXJIYW5kbGVyIGltcGxlbWVudHMgSUhhbmRsZXI8Rk5vZGVCYXNlLCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSBnZXQgZk5vZGVzQ29udGFpbmVyKCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXM/LmZOb2Rlc0NvbnRhaW5lcj8ubmF0aXZlRWxlbWVudCE7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICAgIHByaXZhdGUgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZSxcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKG5vZGU6IEZOb2RlQmFzZSk6IHZvaWQge1xuICAgIGNvbnN0IGVsZW1lbnRzID0gQXJyYXkuZnJvbSh0aGlzLmZOb2Rlc0NvbnRhaW5lci5jaGlsZHJlbik7XG4gICAgY29uc3QgZWxlbWVudHNDb3VudCA9IGVsZW1lbnRzLmxlbmd0aDtcbiAgICBjb25zdCB0YXJnZXRJbmRleDogbnVtYmVyID0gZWxlbWVudHMuZmluZEluZGV4KCh4KSA9PiB4ID09PSBub2RlLmhvc3RFbGVtZW50KTtcbiAgICBpZiAodGFyZ2V0SW5kZXggIT09IGVsZW1lbnRzQ291bnQgLSAxKSB7XG4gICAgICBjb25zdCBhZnRlckVsZW1lbnRzID0gZWxlbWVudHMuc3BsaWNlKHRhcmdldEluZGV4ICsgMSk7XG4gICAgICBhZnRlckVsZW1lbnRzLmZvckVhY2goKHgpID0+IHtcbiAgICAgICAgdGhpcy5mTm9kZXNDb250YWluZXIucmVtb3ZlQ2hpbGQoeCk7XG4gICAgICAgIHRoaXMuZk5vZGVzQ29udGFpbmVyLmluc2VydEJlZm9yZSh4LCBub2RlLmhvc3RFbGVtZW50KTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class FComponentsStore {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.changes = new Subject();
|
|
7
|
+
this.fNodes = [];
|
|
8
|
+
this.fConnections = [];
|
|
9
|
+
this.fOutputs = [];
|
|
10
|
+
this.fInputs = [];
|
|
11
|
+
this.fOutlets = [];
|
|
12
|
+
}
|
|
13
|
+
get flowHost() {
|
|
14
|
+
return this.fFlow?.hostElement;
|
|
15
|
+
}
|
|
16
|
+
get transform() {
|
|
17
|
+
return this.fCanvas?.transform;
|
|
18
|
+
}
|
|
19
|
+
addOutput(output) {
|
|
20
|
+
this.fOutputs.push(output);
|
|
21
|
+
this.changes.next();
|
|
22
|
+
}
|
|
23
|
+
removeOutput(output) {
|
|
24
|
+
this.fOutputs = this.fOutputs.filter(o => o !== output);
|
|
25
|
+
this.changes.next();
|
|
26
|
+
}
|
|
27
|
+
addInput(input) {
|
|
28
|
+
this.fInputs.push(input);
|
|
29
|
+
this.changes.next();
|
|
30
|
+
}
|
|
31
|
+
removeInput(input) {
|
|
32
|
+
this.fInputs = this.fInputs.filter(i => i !== input);
|
|
33
|
+
this.changes.next();
|
|
34
|
+
}
|
|
35
|
+
addOutlet(outlet) {
|
|
36
|
+
this.fOutlets.push(outlet);
|
|
37
|
+
this.changes.next();
|
|
38
|
+
}
|
|
39
|
+
removeOutlet(outlet) {
|
|
40
|
+
this.fOutlets = this.fOutlets.filter(o => o !== outlet);
|
|
41
|
+
this.changes.next();
|
|
42
|
+
}
|
|
43
|
+
addNode(node) {
|
|
44
|
+
this.fNodes.push(node);
|
|
45
|
+
this.changes.next();
|
|
46
|
+
}
|
|
47
|
+
findNode(element) {
|
|
48
|
+
return this.fNodes.find(n => n.isContains(element));
|
|
49
|
+
}
|
|
50
|
+
removeNode(node) {
|
|
51
|
+
this.fNodes = this.fNodes.filter(n => n !== node);
|
|
52
|
+
this.changes.next();
|
|
53
|
+
}
|
|
54
|
+
addConnection(connection) {
|
|
55
|
+
this.fConnections.push(connection);
|
|
56
|
+
this.changes.next();
|
|
57
|
+
}
|
|
58
|
+
removeConnection(connection) {
|
|
59
|
+
this.fConnections = this.fConnections.filter(c => c !== connection);
|
|
60
|
+
this.changes.next();
|
|
61
|
+
}
|
|
62
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: FComponentsStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
63
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: FComponentsStore }); }
|
|
64
|
+
}
|
|
65
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: FComponentsStore, decorators: [{
|
|
66
|
+
type: Injectable
|
|
67
|
+
}] });
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb21wb25lbnRzLXN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbXBvbmVudHMtc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU0zQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQU8vQixNQUFNLE9BQU8sZ0JBQWdCO0lBRDdCO1FBR2tCLFlBQU8sR0FBa0IsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQWdCdEQsV0FBTSxHQUFnQixFQUFFLENBQUM7UUFFekIsaUJBQVksR0FBc0IsRUFBRSxDQUFDO1FBSXJDLGFBQVEsR0FBcUIsRUFBRSxDQUFDO1FBRWhDLFlBQU8sR0FBcUIsRUFBRSxDQUFDO1FBRS9CLGFBQVEsR0FBcUIsRUFBRSxDQUFDO0tBMkR4QztJQW5GQyxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLFdBQVksQ0FBQztJQUNsQyxDQUFDO0lBRUQsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxTQUFVLENBQUM7SUFDbEMsQ0FBQztJQXdCTSxTQUFTLENBQUMsTUFBdUI7UUFDdEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRU0sWUFBWSxDQUFDLE1BQXVCO1FBQ3pDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssTUFBTSxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRU0sUUFBUSxDQUFDLEtBQXFCO1FBQ25DLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVNLFdBQVcsQ0FBQyxLQUFxQjtRQUN0QyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLEtBQUssQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVNLFNBQVMsQ0FBQyxNQUF1QjtRQUN0QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFTSxZQUFZLENBQUMsTUFBdUI7UUFDekMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxNQUFNLENBQUMsQ0FBQztRQUN4RCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFTSxPQUFPLENBQUMsSUFBZTtRQUM1QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFTSxRQUFRLENBQUMsT0FBaUM7UUFDL0MsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRU0sVUFBVSxDQUFDLElBQWU7UUFDL0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQztRQUNsRCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFTSxhQUFhLENBQUMsVUFBMkI7UUFDOUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRU0sZ0JBQWdCLENBQUMsVUFBMkI7UUFDakQsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3RCLENBQUM7OEdBdEZVLGdCQUFnQjtrSEFBaEIsZ0JBQWdCOzsyRkFBaEIsZ0JBQWdCO2tCQUQ1QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgRkJhY2tncm91bmRCYXNlLFxuICBGQ2FudmFzQmFzZSwgRkRlZmluaXRpb25zQmFzZSxcbiAgRkZsb3dCYXNlLFxufSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRkRyYWdnYWJsZUJhc2UgfSBmcm9tICcuL2YtZHJhZ2dhYmxlJztcbmltcG9ydCB7IElUcmFuc2Zvcm1Nb2RlbCB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBGQ29ubmVjdGlvbkJhc2UgfSBmcm9tICcuL2YtY29ubmVjdGlvbic7XG5pbXBvcnQgeyBGQ29ubmVjdG9yQmFzZSwgRk5vZGVCYXNlLCBGTm9kZUlucHV0QmFzZSwgRk5vZGVPdXRsZXRCYXNlLCBGTm9kZU91dHB1dEJhc2UgfSBmcm9tICcuL2Ytbm9kZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBGQ29tcG9uZW50c1N0b3JlIHtcblxuICBwdWJsaWMgcmVhZG9ubHkgY2hhbmdlczogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHVibGljIGdldCBmbG93SG9zdCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZkZsb3c/Lmhvc3RFbGVtZW50ITtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdHJhbnNmb3JtKCk6IElUcmFuc2Zvcm1Nb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuZkNhbnZhcz8udHJhbnNmb3JtITtcbiAgfVxuXG4gIHB1YmxpYyBmRmxvdzogRkZsb3dCYXNlIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBmQ2FudmFzOiBGQ2FudmFzQmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZkJhY2tncm91bmQ6IEZCYWNrZ3JvdW5kQmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZk5vZGVzOiBGTm9kZUJhc2VbXSA9IFtdO1xuXG4gIHB1YmxpYyBmQ29ubmVjdGlvbnM6IEZDb25uZWN0aW9uQmFzZVtdID0gW107XG5cbiAgcHVibGljIGZUZW1wQ29ubmVjdGlvbjogRkNvbm5lY3Rpb25CYXNlIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBmT3V0cHV0czogRkNvbm5lY3RvckJhc2VbXSA9IFtdO1xuXG4gIHB1YmxpYyBmSW5wdXRzOiBGQ29ubmVjdG9yQmFzZVtdID0gW107XG5cbiAgcHVibGljIGZPdXRsZXRzOiBGQ29ubmVjdG9yQmFzZVtdID0gW107XG5cbiAgcHVibGljIGZEZWZzOiBGRGVmaW5pdGlvbnNCYXNlIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBmRHJhZ2dhYmxlOiBGRHJhZ2dhYmxlQmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgYWRkT3V0cHV0KG91dHB1dDogRk5vZGVPdXRwdXRCYXNlKTogdm9pZCB7XG4gICAgdGhpcy5mT3V0cHV0cy5wdXNoKG91dHB1dCk7XG4gICAgdGhpcy5jaGFuZ2VzLm5leHQoKTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVPdXRwdXQob3V0cHV0OiBGTm9kZU91dHB1dEJhc2UpOiB2b2lkIHtcbiAgICB0aGlzLmZPdXRwdXRzID0gdGhpcy5mT3V0cHV0cy5maWx0ZXIobyA9PiBvICE9PSBvdXRwdXQpO1xuICAgIHRoaXMuY2hhbmdlcy5uZXh0KCk7XG4gIH1cblxuICBwdWJsaWMgYWRkSW5wdXQoaW5wdXQ6IEZOb2RlSW5wdXRCYXNlKTogdm9pZCB7XG4gICAgdGhpcy5mSW5wdXRzLnB1c2goaW5wdXQpO1xuICAgIHRoaXMuY2hhbmdlcy5uZXh0KCk7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlSW5wdXQoaW5wdXQ6IEZOb2RlSW5wdXRCYXNlKTogdm9pZCB7XG4gICAgdGhpcy5mSW5wdXRzID0gdGhpcy5mSW5wdXRzLmZpbHRlcihpID0+IGkgIT09IGlucHV0KTtcbiAgICB0aGlzLmNoYW5nZXMubmV4dCgpO1xuICB9XG5cbiAgcHVibGljIGFkZE91dGxldChvdXRsZXQ6IEZOb2RlT3V0bGV0QmFzZSk6IHZvaWQge1xuICAgIHRoaXMuZk91dGxldHMucHVzaChvdXRsZXQpO1xuICAgIHRoaXMuY2hhbmdlcy5uZXh0KCk7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlT3V0bGV0KG91dGxldDogRk5vZGVPdXRsZXRCYXNlKTogdm9pZCB7XG4gICAgdGhpcy5mT3V0bGV0cyA9IHRoaXMuZk91dGxldHMuZmlsdGVyKG8gPT4gbyAhPT0gb3V0bGV0KTtcbiAgICB0aGlzLmNoYW5nZXMubmV4dCgpO1xuICB9XG5cbiAgcHVibGljIGFkZE5vZGUobm9kZTogRk5vZGVCYXNlKTogdm9pZCB7XG4gICAgdGhpcy5mTm9kZXMucHVzaChub2RlKTtcbiAgICB0aGlzLmNoYW5nZXMubmV4dCgpO1xuICB9XG5cbiAgcHVibGljIGZpbmROb2RlKGVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgU1ZHRWxlbWVudCk6IEZOb2RlQmFzZSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuZk5vZGVzLmZpbmQobiA9PiBuLmlzQ29udGFpbnMoZWxlbWVudCkpO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZU5vZGUobm9kZTogRk5vZGVCYXNlKTogdm9pZCB7XG4gICAgdGhpcy5mTm9kZXMgPSB0aGlzLmZOb2Rlcy5maWx0ZXIobiA9PiBuICE9PSBub2RlKTtcbiAgICB0aGlzLmNoYW5nZXMubmV4dCgpO1xuICB9XG5cbiAgcHVibGljIGFkZENvbm5lY3Rpb24oY29ubmVjdGlvbjogRkNvbm5lY3Rpb25CYXNlKTogdm9pZCB7XG4gICAgdGhpcy5mQ29ubmVjdGlvbnMucHVzaChjb25uZWN0aW9uKTtcbiAgICB0aGlzLmNoYW5nZXMubmV4dCgpO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZUNvbm5lY3Rpb24oY29ubmVjdGlvbjogRkNvbm5lY3Rpb25CYXNlKTogdm9pZCB7XG4gICAgdGhpcy5mQ29ubmVjdGlvbnMgPSB0aGlzLmZDb25uZWN0aW9ucy5maWx0ZXIoYyA9PiBjICE9PSBjb25uZWN0aW9uKTtcbiAgICB0aGlzLmNoYW5nZXMubmV4dCgpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { EConnectionBehavior } from './e-connection-behavior';
|
|
2
|
+
export function castToConnectionBehavior(behavior) {
|
|
3
|
+
const result = EConnectionBehavior[behavior.toUpperCase()];
|
|
4
|
+
if (result === undefined) {
|
|
5
|
+
throw new Error(`Unknown connection behavior: ${behavior}. Accepted values: ${Object.keys(EConnectionBehavior).join(', ')}`);
|
|
6
|
+
}
|
|
7
|
+
return result;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzdC10by1jb25uZWN0aW9uLWJlaGF2aW9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24vY29tbW9uL2Nhc3QtdG8tY29ubmVjdGlvbi1iZWhhdmlvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUU5RCxNQUFNLFVBQVUsd0JBQXdCLENBQUMsUUFBZ0I7SUFFdkQsTUFBTSxNQUFNLEdBQUcsbUJBQW1CLENBQUUsUUFBUSxDQUFDLFdBQVcsRUFBc0MsQ0FBRSxDQUFDO0lBRWpHLElBQUksTUFBTSxLQUFLLFNBQVMsRUFBRTtRQUN4QixNQUFNLElBQUksS0FBSyxDQUFDLGdDQUFpQyxRQUFTLHNCQUF1QixNQUFNLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBRSxFQUFFLENBQUMsQ0FBQztLQUNsSTtJQUVELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFQ29ubmVjdGlvbkJlaGF2aW9yIH0gZnJvbSAnLi9lLWNvbm5lY3Rpb24tYmVoYXZpb3InO1xuXG5leHBvcnQgZnVuY3Rpb24gY2FzdFRvQ29ubmVjdGlvbkJlaGF2aW9yKGJlaGF2aW9yOiBzdHJpbmcpOiBFQ29ubmVjdGlvbkJlaGF2aW9yIHtcblxuICBjb25zdCByZXN1bHQgPSBFQ29ubmVjdGlvbkJlaGF2aW9yWyBiZWhhdmlvci50b1VwcGVyQ2FzZSgpIGFzIGtleW9mIHR5cGVvZiBFQ29ubmVjdGlvbkJlaGF2aW9yIF07XG5cbiAgaWYgKHJlc3VsdCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIGNvbm5lY3Rpb24gYmVoYXZpb3I6ICR7IGJlaGF2aW9yIH0uIEFjY2VwdGVkIHZhbHVlczogJHsgT2JqZWN0LmtleXMoRUNvbm5lY3Rpb25CZWhhdmlvcikuam9pbignLCAnKSB9YCk7XG4gIH1cblxuICByZXR1cm4gcmVzdWx0O1xufVxuIl19
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { EConnectionType } from './e-connection-type';
|
|
2
|
+
export function castToConnectionType(type) {
|
|
3
|
+
const result = EConnectionType[type.toUpperCase()];
|
|
4
|
+
if (result === undefined) {
|
|
5
|
+
throw new Error(`Unknown connection type: ${type}. Accepted values: ${Object.keys(EConnectionType).join(', ')}`);
|
|
6
|
+
}
|
|
7
|
+
return result;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzdC10by1jb25uZWN0aW9uLXR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9jb21tb24vY2FzdC10by1jb25uZWN0aW9uLXR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXRELE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxJQUFZO0lBRS9DLE1BQU0sTUFBTSxHQUFHLGVBQWUsQ0FBRSxJQUFJLENBQUMsV0FBVyxFQUFrQyxDQUFFLENBQUM7SUFFckYsSUFBSSxNQUFNLEtBQUssU0FBUyxFQUFFO1FBQ3hCLE1BQU0sSUFBSSxLQUFLLENBQUMsNEJBQTZCLElBQUssc0JBQXVCLE1BQU0sQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBRSxFQUFFLENBQUMsQ0FBQztLQUN0SDtJQUVELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFQ29ubmVjdGlvblR5cGUgfSBmcm9tICcuL2UtY29ubmVjdGlvbi10eXBlJztcblxuZXhwb3J0IGZ1bmN0aW9uIGNhc3RUb0Nvbm5lY3Rpb25UeXBlKHR5cGU6IHN0cmluZyk6IEVDb25uZWN0aW9uVHlwZSB7XG5cbiAgY29uc3QgcmVzdWx0ID0gRUNvbm5lY3Rpb25UeXBlWyB0eXBlLnRvVXBwZXJDYXNlKCkgYXMga2V5b2YgdHlwZW9mIEVDb25uZWN0aW9uVHlwZSBdO1xuXG4gIGlmIChyZXN1bHQgPT09IHVuZGVmaW5lZCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBjb25uZWN0aW9uIHR5cGU6ICR7IHR5cGUgfS4gQWNjZXB0ZWQgdmFsdWVzOiAkeyBPYmplY3Qua2V5cyhFQ29ubmVjdGlvblR5cGUpLmpvaW4oJywgJykgfWApO1xuICB9XG5cbiAgcmV0dXJuIHJlc3VsdDtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export var EConnectionBehavior;
|
|
2
|
+
(function (EConnectionBehavior) {
|
|
3
|
+
EConnectionBehavior["FIXED"] = "fixed";
|
|
4
|
+
EConnectionBehavior["FLOATING"] = "floating";
|
|
5
|
+
})(EConnectionBehavior || (EConnectionBehavior = {}));
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZS1jb25uZWN0aW9uLWJlaGF2aW9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24vY29tbW9uL2UtY29ubmVjdGlvbi1iZWhhdmlvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxtQkFLWDtBQUxELFdBQVksbUJBQW1CO0lBRTdCLHNDQUFlLENBQUE7SUFFZiw0Q0FBcUIsQ0FBQTtBQUN2QixDQUFDLEVBTFcsbUJBQW1CLEtBQW5CLG1CQUFtQixRQUs5QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEVDb25uZWN0aW9uQmVoYXZpb3Ige1xuXG4gIEZJWEVEID0gJ2ZpeGVkJyxcblxuICBGTE9BVElORyA9ICdmbG9hdGluZycsXG59XG4iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export var EConnectionType;
|
|
2
|
+
(function (EConnectionType) {
|
|
3
|
+
EConnectionType["SEGMENT"] = "segment";
|
|
4
|
+
EConnectionType["STRAIGHT"] = "straight";
|
|
5
|
+
EConnectionType["BEZIER"] = "bezier";
|
|
6
|
+
})(EConnectionType || (EConnectionType = {}));
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZS1jb25uZWN0aW9uLXR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9jb21tb24vZS1jb25uZWN0aW9uLXR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksZUFPWDtBQVBELFdBQVksZUFBZTtJQUV6QixzQ0FBbUIsQ0FBQTtJQUVuQix3Q0FBcUIsQ0FBQTtJQUVyQixvQ0FBaUIsQ0FBQTtBQUNuQixDQUFDLEVBUFcsZUFBZSxLQUFmLGVBQWUsUUFPMUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBFQ29ubmVjdGlvblR5cGUge1xuXG4gIFNFR01FTlQgPSAnc2VnbWVudCcsXG5cbiAgU1RSQUlHSFQgPSAnc3RyYWlnaHQnLFxuXG4gIEJFWklFUiA9ICdiZXppZXInLFxufVxuIl19
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import { VectorExtensions } from '@foblex/core';
|
|
3
|
+
import { Subject } from 'rxjs';
|
|
4
|
+
import { mixinChangeConnectionSelection, mixinChangeConnectionVisibility } from './mixins';
|
|
5
|
+
import { PathConstructor } from './path-constructor';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
const MIXIN_BASE = mixinChangeConnectionSelection(mixinChangeConnectionVisibility(class {
|
|
8
|
+
constructor(hostElement) {
|
|
9
|
+
this.hostElement = hostElement;
|
|
10
|
+
}
|
|
11
|
+
}));
|
|
12
|
+
export class FConnectionBase extends MIXIN_BASE {
|
|
13
|
+
constructor(elementReference) {
|
|
14
|
+
super(elementReference.nativeElement);
|
|
15
|
+
this.path = '';
|
|
16
|
+
this.vector = VectorExtensions.initialize();
|
|
17
|
+
this.stateChanges = new Subject();
|
|
18
|
+
}
|
|
19
|
+
initialize() {
|
|
20
|
+
this.fPath.initialize();
|
|
21
|
+
this.fGradient.initialize();
|
|
22
|
+
this.redraw();
|
|
23
|
+
}
|
|
24
|
+
reset() {
|
|
25
|
+
this.path = '';
|
|
26
|
+
this.fPath.initialize();
|
|
27
|
+
this.fGradient.initialize();
|
|
28
|
+
this.redraw();
|
|
29
|
+
}
|
|
30
|
+
isContains(element) {
|
|
31
|
+
return (this.hostElement.firstChild?.lastChild).contains(element);
|
|
32
|
+
}
|
|
33
|
+
setVector(from, fromSide, to, toSide) {
|
|
34
|
+
this.vector = { point1: from, point2: to };
|
|
35
|
+
const pathResult = PathConstructor.handle(this.type, from, fromSide, to, toSide);
|
|
36
|
+
this.path = pathResult.path;
|
|
37
|
+
this.fLabel?.nativeElement?.setAttribute('x', `${pathResult.labelX}`);
|
|
38
|
+
this.fLabel?.nativeElement?.setAttribute('y', `${pathResult.labelY}`);
|
|
39
|
+
}
|
|
40
|
+
setMarkers(markers) {
|
|
41
|
+
this.fDefs.nativeElement.innerHTML = '';
|
|
42
|
+
markers.forEach((marker) => this.fDefs.nativeElement.appendChild(marker));
|
|
43
|
+
}
|
|
44
|
+
redraw() {
|
|
45
|
+
this.fPath.setPath(this.path);
|
|
46
|
+
this.fSelection.setPath(this.path);
|
|
47
|
+
this.fGradient.redraw(this.vector);
|
|
48
|
+
this.fDragHandle.redraw(this.vector.point2);
|
|
49
|
+
this.fText.redraw(this.vector);
|
|
50
|
+
}
|
|
51
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: FConnectionBase, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
52
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.5", type: FConnectionBase, usesInheritance: true, ngImport: i0 }); }
|
|
53
|
+
}
|
|
54
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: FConnectionBase, decorators: [{
|
|
55
|
+
type: Directive
|
|
56
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9jb21tb24vZi1jb25uZWN0aW9uLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQW9DLGdCQUFnQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFNL0IsT0FBTyxFQUdMLDhCQUE4QixFQUM5QiwrQkFBK0IsRUFDaEMsTUFBTSxVQUFVLENBQUM7QUFNbEIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQUlyRCxNQUFNLFVBQVUsR0FBRyw4QkFBOEIsQ0FDN0MsK0JBQStCLENBQzNCO0lBQ0UsWUFDVyxXQUF3QjtRQUF4QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtJQUVuQyxDQUFDO0NBQ0YsQ0FBQyxDQUFDLENBQUM7QUFHWixNQUFNLE9BQWdCLGVBQWdCLFNBQVEsVUFBVTtJQThDdEQsWUFBc0IsZ0JBQXlDO1FBQzdELEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQTdCakMsU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUVsQixXQUFNLEdBQVksZ0JBQWdCLENBQUMsVUFBVSxFQUFFLENBQUM7UUFFdkMsaUJBQVksR0FBa0IsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQTBCbEUsQ0FBQztJQUVNLFVBQVU7UUFDZixJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFTyxLQUFLO1FBQ1gsSUFBSSxDQUFDLElBQUksR0FBRyxFQUFFLENBQUM7UUFDZixJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxVQUFVLENBQUMsT0FBaUM7UUFDakQsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLFNBQXlCLENBQUEsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVNLFNBQVMsQ0FBQyxJQUFZLEVBQUUsUUFBd0IsRUFBRSxFQUFVLEVBQUUsTUFBc0I7UUFDekYsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxDQUFDO1FBQzNDLE1BQU0sVUFBVSxHQUFHLGVBQWUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUVqRixJQUFJLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUM7UUFDNUIsSUFBSSxDQUFDLE1BQU0sRUFBRSxhQUFhLEVBQUUsWUFBWSxDQUFDLEdBQUcsRUFBRSxHQUFJLFVBQVUsQ0FBQyxNQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ3hFLElBQUksQ0FBQyxNQUFNLEVBQUUsYUFBYSxFQUFFLFlBQVksQ0FBQyxHQUFHLEVBQUUsR0FBSSxVQUFVLENBQUMsTUFBTyxFQUFFLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRU0sVUFBVSxDQUFDLE9BQTJCO1FBQzNDLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7UUFDeEMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVNLE1BQU07UUFDWCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqQyxDQUFDOzhHQXZGbUIsZUFBZTtrR0FBZixlQUFlOzsyRkFBZixlQUFlO2tCQURwQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJSGFzSG9zdEVsZW1lbnQsIElQb2ludCwgSVZlY3RvciwgVmVjdG9yRXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBFQ29ubmVjdGlvbkJlaGF2aW9yIH0gZnJvbSAnLi9lLWNvbm5lY3Rpb24tYmVoYXZpb3InO1xuaW1wb3J0IHsgRUNvbm5lY3Rpb25UeXBlIH0gZnJvbSAnLi9lLWNvbm5lY3Rpb24tdHlwZSc7XG5pbXBvcnQgeyBJSGFzQ29ubmVjdGlvbkNvbG9yIH0gZnJvbSAnLi9pLWhhcy1jb25uZWN0aW9uLWNvbG9yJztcbmltcG9ydCB7IElIYXNDb25uZWN0aW9uRnJvbVRvIH0gZnJvbSAnLi9pLWhhcy1jb25uZWN0aW9uLWZyb20tdG8nO1xuaW1wb3J0IHsgSUhhc0Nvbm5lY3Rpb25UZXh0IH0gZnJvbSAnLi9pLWhhcy1jb25uZWN0aW9uLXRleHQnO1xuaW1wb3J0IHtcbiAgSUNhbkNoYW5nZUNvbm5lY3Rpb25WaXNpYmlsaXR5LFxuICBJU2VsZWN0YWJsZSxcbiAgbWl4aW5DaGFuZ2VDb25uZWN0aW9uU2VsZWN0aW9uLFxuICBtaXhpbkNoYW5nZUNvbm5lY3Rpb25WaXNpYmlsaXR5XG59IGZyb20gJy4vbWl4aW5zJztcbmltcG9ydCB7IElDb25uZWN0aW9uUGF0aCB9IGZyb20gJy4vZi1wYXRoJztcbmltcG9ydCB7IElDb25uZWN0aW9uR3JhZGllbnQgfSBmcm9tICcuL2YtZ3JhZGllbnQnO1xuaW1wb3J0IHsgRkNvbm5lY3Rpb25EcmFnSGFuZGxlQ29tcG9uZW50IH0gZnJvbSAnLi9mLWRyYWctaGFuZGxlJztcbmltcG9ydCB7IEZDb25uZWN0aW9uU2VsZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9mLXNlbGVjdGlvbic7XG5pbXBvcnQgeyBJQ29ubmVjdGlvblRleHQgfSBmcm9tICcuL2YtY29ubmVjdGlvbi10ZXh0JztcbmltcG9ydCB7IFBhdGhDb25zdHJ1Y3RvciB9IGZyb20gJy4vcGF0aC1jb25zdHJ1Y3Rvcic7XG5pbXBvcnQgeyBJSGFzU3RhdGVDaGFuZ2VzIH0gZnJvbSAnLi4vLi4vaS1oYXMtc3RhdGUtY2hhbmdlcyc7XG5pbXBvcnQgeyBFQ29ubmVjdG9yU2lkZSB9IGZyb20gJy4uLy4uL2RvbWFpbic7XG5cbmNvbnN0IE1JWElOX0JBU0UgPSBtaXhpbkNoYW5nZUNvbm5lY3Rpb25TZWxlY3Rpb24oXG4gICAgbWl4aW5DaGFuZ2VDb25uZWN0aW9uVmlzaWJpbGl0eShcbiAgICAgICAgY2xhc3Mge1xuICAgICAgICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICAgICAgICBwdWJsaWMgaG9zdEVsZW1lbnQ6IEhUTUxFbGVtZW50XG4gICAgICAgICAgKSB7XG4gICAgICAgICAgfVxuICAgICAgICB9KSk7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEZDb25uZWN0aW9uQmFzZSBleHRlbmRzIE1JWElOX0JBU0VcbiAgICBpbXBsZW1lbnRzIElIYXNIb3N0RWxlbWVudCwgSVNlbGVjdGFibGUsXG4gICAgICAgICAgICAgICBJQ2FuQ2hhbmdlQ29ubmVjdGlvblZpc2liaWxpdHksXG4gICAgICAgICAgICAgICBJSGFzU3RhdGVDaGFuZ2VzLCBJSGFzQ29ubmVjdGlvbkNvbG9yLFxuICAgICAgICAgICAgICAgSUhhc0Nvbm5lY3Rpb25Gcm9tVG8sIElIYXNDb25uZWN0aW9uVGV4dCB7XG5cbiAgcHVibGljIGFic3RyYWN0IGlkOiBhbnk7XG5cbiAgcHVibGljIGFic3RyYWN0IHRleHQ6IHN0cmluZztcblxuICBwdWJsaWMgYWJzdHJhY3Qgc3RhcnRDb2xvcjogc3RyaW5nO1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBlbmRDb2xvcjogc3RyaW5nO1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBvdXRwdXRJZDogYW55O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBpbnB1dElkOiBhbnk7XG5cbiAgcHVibGljIHBhdGg6IHN0cmluZyA9ICcnO1xuXG4gIHB1YmxpYyB2ZWN0b3I6IElWZWN0b3IgPSBWZWN0b3JFeHRlbnNpb25zLmluaXRpYWxpemUoKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgc3RhdGVDaGFuZ2VzOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwdWJsaWMgYWJzdHJhY3QgZGlzYWJsZWQ6IGJvb2xlYW47XG5cbiAgcHVibGljIGFic3RyYWN0IGJvdW5kaW5nRWxlbWVudDogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBiZWhhdmlvcjogRUNvbm5lY3Rpb25CZWhhdmlvcjtcblxuICBwdWJsaWMgYWJzdHJhY3QgdHlwZTogRUNvbm5lY3Rpb25UeXBlO1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmRGVmczogRWxlbWVudFJlZjxTVkdEZWZzRWxlbWVudD47XG5cbiAgcHVibGljIGFic3RyYWN0IGZQYXRoOiBJQ29ubmVjdGlvblBhdGg7XG5cbiAgcHVibGljIGFic3RyYWN0IGZHcmFkaWVudDogSUNvbm5lY3Rpb25HcmFkaWVudDtcblxuICBwdWJsaWMgYWJzdHJhY3QgZkRyYWdIYW5kbGU6IEZDb25uZWN0aW9uRHJhZ0hhbmRsZUNvbXBvbmVudDtcblxuICBwdWJsaWMgYWJzdHJhY3QgZlNlbGVjdGlvbjogRkNvbm5lY3Rpb25TZWxlY3Rpb25Db21wb25lbnQ7XG5cbiAgcHVibGljIGFic3RyYWN0IGZUZXh0OiBJQ29ubmVjdGlvblRleHQ7XG5cbiAgcHVibGljIGFic3RyYWN0IGZMYWJlbDogRWxlbWVudFJlZjxTVkdSZWN0RWxlbWVudD47XG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKGVsZW1lbnRSZWZlcmVuY2U6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KSB7XG4gICAgc3VwZXIoZWxlbWVudFJlZmVyZW5jZS5uYXRpdmVFbGVtZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBpbml0aWFsaXplKCk6IHZvaWQge1xuICAgIHRoaXMuZlBhdGguaW5pdGlhbGl6ZSgpO1xuICAgIHRoaXMuZkdyYWRpZW50LmluaXRpYWxpemUoKTtcbiAgICB0aGlzLnJlZHJhdygpO1xuICB9XG5cbiAgcHJpdmF0ZSByZXNldCgpOiB2b2lkIHtcbiAgICB0aGlzLnBhdGggPSAnJztcbiAgICB0aGlzLmZQYXRoLmluaXRpYWxpemUoKTtcbiAgICB0aGlzLmZHcmFkaWVudC5pbml0aWFsaXplKCk7XG4gICAgdGhpcy5yZWRyYXcoKTtcbiAgfVxuXG4gIHB1YmxpYyBpc0NvbnRhaW5zKGVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgU1ZHRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAodGhpcy5ob3N0RWxlbWVudC5maXJzdENoaWxkPy5sYXN0Q2hpbGQgYXMgSFRNTEVsZW1lbnQpLmNvbnRhaW5zKGVsZW1lbnQpO1xuICB9XG5cbiAgcHVibGljIHNldFZlY3Rvcihmcm9tOiBJUG9pbnQsIGZyb21TaWRlOiBFQ29ubmVjdG9yU2lkZSwgdG86IElQb2ludCwgdG9TaWRlOiBFQ29ubmVjdG9yU2lkZSk6IHZvaWQge1xuICAgIHRoaXMudmVjdG9yID0geyBwb2ludDE6IGZyb20sIHBvaW50MjogdG8gfTtcbiAgICBjb25zdCBwYXRoUmVzdWx0ID0gUGF0aENvbnN0cnVjdG9yLmhhbmRsZSh0aGlzLnR5cGUsIGZyb20sIGZyb21TaWRlLCB0bywgdG9TaWRlKTtcblxuICAgIHRoaXMucGF0aCA9IHBhdGhSZXN1bHQucGF0aDtcbiAgICB0aGlzLmZMYWJlbD8ubmF0aXZlRWxlbWVudD8uc2V0QXR0cmlidXRlKCd4JywgYCR7IHBhdGhSZXN1bHQubGFiZWxYIH1gKTtcbiAgICB0aGlzLmZMYWJlbD8ubmF0aXZlRWxlbWVudD8uc2V0QXR0cmlidXRlKCd5JywgYCR7IHBhdGhSZXN1bHQubGFiZWxZIH1gKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRNYXJrZXJzKG1hcmtlcnM6IFNWR01hcmtlckVsZW1lbnRbXSk6IHZvaWQge1xuICAgIHRoaXMuZkRlZnMubmF0aXZlRWxlbWVudC5pbm5lckhUTUwgPSAnJztcbiAgICBtYXJrZXJzLmZvckVhY2goKG1hcmtlcikgPT4gdGhpcy5mRGVmcy5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKG1hcmtlcikpO1xuICB9XG5cbiAgcHVibGljIHJlZHJhdygpOiB2b2lkIHtcbiAgICB0aGlzLmZQYXRoLnNldFBhdGgodGhpcy5wYXRoKTtcbiAgICB0aGlzLmZTZWxlY3Rpb24uc2V0UGF0aCh0aGlzLnBhdGgpO1xuICAgIHRoaXMuZkdyYWRpZW50LnJlZHJhdyh0aGlzLnZlY3Rvcik7XG4gICAgdGhpcy5mRHJhZ0hhbmRsZS5yZWRyYXcodGhpcy52ZWN0b3IucG9pbnQyKTtcbiAgICB0aGlzLmZUZXh0LnJlZHJhdyh0aGlzLnZlY3Rvcik7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { sanitizeElementId } from '@foblex/core';
|
|
2
|
+
export const F_CONNECTION_IDENTIFIERS = {
|
|
3
|
+
textId(connectionId) {
|
|
4
|
+
return sanitizeElementId('connection_text_' + connectionId);
|
|
5
|
+
},
|
|
6
|
+
connectionForSelectionId(connectionId) {
|
|
7
|
+
return sanitizeElementId('connection_for_selection_' + connectionId);
|
|
8
|
+
},
|
|
9
|
+
connectionId(connectionId) {
|
|
10
|
+
return sanitizeElementId('connection_' + connectionId);
|
|
11
|
+
},
|
|
12
|
+
gradientId(connectionId) {
|
|
13
|
+
return sanitizeElementId('connection_gradient_' + connectionId);
|
|
14
|
+
},
|
|
15
|
+
linkToGradient(connectionId) {
|
|
16
|
+
return `url(#${F_CONNECTION_IDENTIFIERS.gradientId(connectionId)})`;
|
|
17
|
+
},
|
|
18
|
+
linkToConnection(connectionId) {
|
|
19
|
+
return `#${F_CONNECTION_IDENTIFIERS.connectionId(connectionId)}`;
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLWlkZW50aWZpZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24vY29tbW9uL2YtY29ubmVjdGlvbi1pZGVudGlmaWVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFakQsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUc7SUFFdEMsTUFBTSxDQUFDLFlBQW9CO1FBQ3pCLE9BQU8saUJBQWlCLENBQUMsa0JBQWtCLEdBQUcsWUFBWSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUNELHdCQUF3QixDQUFDLFlBQW9CO1FBQzNDLE9BQU8saUJBQWlCLENBQUMsMkJBQTJCLEdBQUcsWUFBWSxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUNELFlBQVksQ0FBQyxZQUFvQjtRQUMvQixPQUFPLGlCQUFpQixDQUFDLGFBQWEsR0FBRyxZQUFZLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBQ0QsVUFBVSxDQUFDLFlBQW9CO1FBQzdCLE9BQU8saUJBQWlCLENBQUMsc0JBQXNCLEdBQUcsWUFBWSxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUNELGNBQWMsQ0FBQyxZQUFvQjtRQUNqQyxPQUFPLFFBQVMsd0JBQXdCLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBRSxHQUFHLENBQUM7SUFDeEUsQ0FBQztJQUNELGdCQUFnQixDQUFDLFlBQW9CO1FBQ25DLE9BQU8sSUFBSyx3QkFBd0IsQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFFLEVBQUUsQ0FBQztJQUNyRSxDQUFDO0NBQ0YsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNhbml0aXplRWxlbWVudElkIH0gZnJvbSAnQGZvYmxleC9jb3JlJztcblxuZXhwb3J0IGNvbnN0IEZfQ09OTkVDVElPTl9JREVOVElGSUVSUyA9IHtcblxuICB0ZXh0SWQoY29ubmVjdGlvbklkOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBzYW5pdGl6ZUVsZW1lbnRJZCgnY29ubmVjdGlvbl90ZXh0XycgKyBjb25uZWN0aW9uSWQpO1xuICB9LFxuICBjb25uZWN0aW9uRm9yU2VsZWN0aW9uSWQoY29ubmVjdGlvbklkOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBzYW5pdGl6ZUVsZW1lbnRJZCgnY29ubmVjdGlvbl9mb3Jfc2VsZWN0aW9uXycgKyBjb25uZWN0aW9uSWQpO1xuICB9LFxuICBjb25uZWN0aW9uSWQoY29ubmVjdGlvbklkOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBzYW5pdGl6ZUVsZW1lbnRJZCgnY29ubmVjdGlvbl8nICsgY29ubmVjdGlvbklkKTtcbiAgfSxcbiAgZ3JhZGllbnRJZChjb25uZWN0aW9uSWQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHNhbml0aXplRWxlbWVudElkKCdjb25uZWN0aW9uX2dyYWRpZW50XycgKyBjb25uZWN0aW9uSWQpO1xuICB9LFxuICBsaW5rVG9HcmFkaWVudChjb25uZWN0aW9uSWQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGB1cmwoIyR7IEZfQ09OTkVDVElPTl9JREVOVElGSUVSUy5ncmFkaWVudElkKGNvbm5lY3Rpb25JZCkgfSlgO1xuICB9LFxuICBsaW5rVG9Db25uZWN0aW9uKGNvbm5lY3Rpb25JZDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCMkeyBGX0NPTk5FQ1RJT05fSURFTlRJRklFUlMuY29ubmVjdGlvbklkKGNvbm5lY3Rpb25JZCkgfWA7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { Directive, Inject } from '@angular/core';
|
|
2
|
+
import { F_CONNECTION_IDENTIFIERS } from '../f-connection-identifiers';
|
|
3
|
+
import { F_CONNECTION } from '../f-connection.injection-token';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class FConnectionTextPathDirective {
|
|
6
|
+
get linkToConnection() {
|
|
7
|
+
return F_CONNECTION_IDENTIFIERS.linkToConnection(this.base.outputId + this.base.inputId);
|
|
8
|
+
}
|
|
9
|
+
get hostElement() {
|
|
10
|
+
return this.elementReference.nativeElement;
|
|
11
|
+
}
|
|
12
|
+
constructor(elementReference, base) {
|
|
13
|
+
this.elementReference = elementReference;
|
|
14
|
+
this.base = base;
|
|
15
|
+
this.symbolWidth = 8;
|
|
16
|
+
this.fontSize = '12px';
|
|
17
|
+
}
|
|
18
|
+
ngOnInit() {
|
|
19
|
+
this.hostElement.setAttribute('startOffset', '50%');
|
|
20
|
+
this.hostElement.setAttribute('text-anchor', `middle`);
|
|
21
|
+
this.symbolWidth = this.getSymbolWidth(this.base.text || '');
|
|
22
|
+
}
|
|
23
|
+
getBBox() {
|
|
24
|
+
return this.hostElement.getBBox();
|
|
25
|
+
}
|
|
26
|
+
getFontStyles(element) {
|
|
27
|
+
const computedStyles = window.getComputedStyle(element);
|
|
28
|
+
return {
|
|
29
|
+
fontSize: computedStyles.fontSize,
|
|
30
|
+
fontFamily: computedStyles.fontFamily
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
getSymbolWidth(name) {
|
|
34
|
+
const text = name || 'connection';
|
|
35
|
+
const { fontFamily, fontSize } = this.getFontStyles(this.hostElement);
|
|
36
|
+
this.fontSize = fontSize;
|
|
37
|
+
const canvas = document.createElement('canvas');
|
|
38
|
+
const context = canvas.getContext('2d');
|
|
39
|
+
if (!context) {
|
|
40
|
+
throw new Error('Canvas context is not supported');
|
|
41
|
+
}
|
|
42
|
+
context.font = `${fontSize} ${fontFamily}`;
|
|
43
|
+
const metrics = context.measureText(text);
|
|
44
|
+
const symbolWidth = metrics.width / text.length;
|
|
45
|
+
return symbolWidth;
|
|
46
|
+
}
|
|
47
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: FConnectionTextPathDirective, deps: [{ token: i0.ElementRef }, { token: F_CONNECTION }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
48
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.5", type: FConnectionTextPathDirective, selector: "textPath[f-connection-text-path]", host: { properties: { "attr.href": "linkToConnection" } }, ngImport: i0 }); }
|
|
49
|
+
}
|
|
50
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: FConnectionTextPathDirective, decorators: [{
|
|
51
|
+
type: Directive,
|
|
52
|
+
args: [{
|
|
53
|
+
selector: 'textPath[f-connection-text-path]',
|
|
54
|
+
host: {
|
|
55
|
+
'[attr.href]': 'linkToConnection'
|
|
56
|
+
}
|
|
57
|
+
}]
|
|
58
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: undefined, decorators: [{
|
|
59
|
+
type: Inject,
|
|
60
|
+
args: [F_CONNECTION]
|
|
61
|
+
}] }]; } });
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLXRleHQtcGF0aC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9jb21tb24vZi1jb25uZWN0aW9uLXRleHQvZi1jb25uZWN0aW9uLXRleHQtcGF0aC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxNQUFNLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFdEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlDQUFpQyxDQUFDOztBQVUvRCxNQUFNLE9BQU8sNEJBQTRCO0lBRXZDLElBQVcsZ0JBQWdCO1FBQ3pCLE9BQU8sd0JBQXdCLENBQUMsZ0JBQWdCLENBQzVDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUN6QyxDQUFDO0lBQ0osQ0FBQztJQUVELElBQVcsV0FBVztRQUNwQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7SUFDN0MsQ0FBQztJQUtELFlBQ1ksZ0JBQWdELEVBQzFCLElBQStDO1FBRHJFLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBZ0M7UUFDMUIsU0FBSSxHQUFKLElBQUksQ0FBMkM7UUFMMUUsZ0JBQVcsR0FBVyxDQUFDLENBQUM7UUFDeEIsYUFBUSxHQUFXLE1BQU0sQ0FBQztJQU1qQyxDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxhQUFhLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFTSxPQUFPO1FBQ1osT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFFTyxhQUFhLENBQUMsT0FBMkI7UUFDL0MsTUFBTSxjQUFjLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3hELE9BQU87WUFDTCxRQUFRLEVBQUUsY0FBYyxDQUFDLFFBQVE7WUFDakMsVUFBVSxFQUFFLGNBQWMsQ0FBQyxVQUFVO1NBQ3RDLENBQUM7SUFDSixDQUFDO0lBRU8sY0FBYyxDQUFDLElBQVk7UUFDakMsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLFlBQVksQ0FBQztRQUNsQyxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3RFLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEQsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV4QyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1osTUFBTSxJQUFJLEtBQUssQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO1NBQ3BEO1FBRUQsT0FBTyxDQUFDLElBQUksR0FBRyxHQUFJLFFBQVMsSUFBSyxVQUFXLEVBQUUsQ0FBQztRQUUvQyxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFDLE1BQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUNoRCxPQUFPLFdBQVcsQ0FBQztJQUNyQixDQUFDOzhHQXZEVSw0QkFBNEIsNENBaUIzQixZQUFZO2tHQWpCYiw0QkFBNEI7OzJGQUE1Qiw0QkFBNEI7a0JBTnhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGtDQUFrQztvQkFDNUMsSUFBSSxFQUFFO3dCQUNKLGFBQWEsRUFBRSxrQkFBa0I7cUJBQ2xDO2lCQUNGOzswQkFrQk0sTUFBTTsyQkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbmplY3QsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUhhc0hvc3RFbGVtZW50IH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IEZfQ09OTkVDVElPTl9JREVOVElGSUVSUyB9IGZyb20gJy4uL2YtY29ubmVjdGlvbi1pZGVudGlmaWVycyc7XG5pbXBvcnQgeyBGX0NPTk5FQ1RJT04gfSBmcm9tICcuLi9mLWNvbm5lY3Rpb24uaW5qZWN0aW9uLXRva2VuJztcbmltcG9ydCB7IElIYXNDb25uZWN0aW9uVGV4dCB9IGZyb20gJy4uL2ktaGFzLWNvbm5lY3Rpb24tdGV4dCc7XG5pbXBvcnQgeyBJSGFzQ29ubmVjdGlvbkZyb21UbyB9IGZyb20gJy4uL2ktaGFzLWNvbm5lY3Rpb24tZnJvbS10byc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ3RleHRQYXRoW2YtY29ubmVjdGlvbi10ZXh0LXBhdGhdJyxcbiAgaG9zdDoge1xuICAgICdbYXR0ci5ocmVmXSc6ICdsaW5rVG9Db25uZWN0aW9uJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIEZDb25uZWN0aW9uVGV4dFBhdGhEaXJlY3RpdmUgaW1wbGVtZW50cyBJSGFzSG9zdEVsZW1lbnQsIE9uSW5pdCB7XG5cbiAgcHVibGljIGdldCBsaW5rVG9Db25uZWN0aW9uKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIEZfQ09OTkVDVElPTl9JREVOVElGSUVSUy5saW5rVG9Db25uZWN0aW9uKFxuICAgICAgICB0aGlzLmJhc2Uub3V0cHV0SWQgKyB0aGlzLmJhc2UuaW5wdXRJZFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhvc3RFbGVtZW50KCk6IFNWR1RleHRQYXRoRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZmVyZW5jZS5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgcHVibGljIHN5bWJvbFdpZHRoOiBudW1iZXIgPSA4O1xuICBwdWJsaWMgZm9udFNpemU6IHN0cmluZyA9ICcxMnB4JztcblxuICBjb25zdHJ1Y3RvcihcbiAgICAgIHByaXZhdGUgZWxlbWVudFJlZmVyZW5jZTogRWxlbWVudFJlZjxTVkdUZXh0UGF0aEVsZW1lbnQ+LFxuICAgICAgQEluamVjdChGX0NPTk5FQ1RJT04pIHByaXZhdGUgYmFzZTogSUhhc0Nvbm5lY3Rpb25UZXh0ICYgSUhhc0Nvbm5lY3Rpb25Gcm9tVG8sXG4gICkge1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaG9zdEVsZW1lbnQuc2V0QXR0cmlidXRlKCdzdGFydE9mZnNldCcsICc1MCUnKTtcbiAgICB0aGlzLmhvc3RFbGVtZW50LnNldEF0dHJpYnV0ZSgndGV4dC1hbmNob3InLCBgbWlkZGxlYCk7XG4gICAgdGhpcy5zeW1ib2xXaWR0aCA9IHRoaXMuZ2V0U3ltYm9sV2lkdGgodGhpcy5iYXNlLnRleHQgfHwgJycpO1xuICB9XG5cbiAgcHVibGljIGdldEJCb3goKTogRE9NUmVjdCB7XG4gICAgcmV0dXJuIHRoaXMuaG9zdEVsZW1lbnQuZ2V0QkJveCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGb250U3R5bGVzKGVsZW1lbnQ6IFNWR1RleHRQYXRoRWxlbWVudCk6IHsgZm9udFNpemU6IHN0cmluZywgZm9udEZhbWlseTogc3RyaW5nIH0ge1xuICAgIGNvbnN0IGNvbXB1dGVkU3R5bGVzID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG4gICAgcmV0dXJuIHtcbiAgICAgIGZvbnRTaXplOiBjb21wdXRlZFN0eWxlcy5mb250U2l6ZSxcbiAgICAgIGZvbnRGYW1pbHk6IGNvbXB1dGVkU3R5bGVzLmZvbnRGYW1pbHlcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRTeW1ib2xXaWR0aChuYW1lOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIGNvbnN0IHRleHQgPSBuYW1lIHx8ICdjb25uZWN0aW9uJztcbiAgICBjb25zdCB7IGZvbnRGYW1pbHksIGZvbnRTaXplIH0gPSB0aGlzLmdldEZvbnRTdHlsZXModGhpcy5ob3N0RWxlbWVudCk7XG4gICAgdGhpcy5mb250U2l6ZSA9IGZvbnRTaXplO1xuICAgIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpO1xuICAgIGNvbnN0IGNvbnRleHQgPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKTtcblxuICAgIGlmICghY29udGV4dCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW52YXMgY29udGV4dCBpcyBub3Qgc3VwcG9ydGVkJyk7XG4gICAgfVxuXG4gICAgY29udGV4dC5mb250ID0gYCR7IGZvbnRTaXplIH0gJHsgZm9udEZhbWlseSB9YDtcblxuICAgIGNvbnN0IG1ldHJpY3MgPSBjb250ZXh0Lm1lYXN1cmVUZXh0KHRleHQpO1xuICAgIGNvbnN0IHN5bWJvbFdpZHRoID0gbWV0cmljcy53aWR0aCAvIHRleHQubGVuZ3RoO1xuICAgIHJldHVybiBzeW1ib2xXaWR0aDtcbiAgfVxufVxuIl19
|