@foblex/flow 17.8.3 → 17.8.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/domain/f-connectors/calculate-source-connectors-to-connect/calculate-source-connectors-to-connect-request.d.ts +8 -0
- package/domain/f-connectors/calculate-source-connectors-to-connect/calculate-source-connectors-to-connect.d.ts +21 -0
- package/domain/f-connectors/calculate-source-connectors-to-connect/index.d.ts +2 -0
- package/domain/f-connectors/calculate-target-connectors-to-connect/calculate-target-connectors-to-connect-request.d.ts +8 -0
- package/domain/f-connectors/calculate-target-connectors-to-connect/calculate-target-connectors-to-connect.d.ts +20 -0
- package/domain/f-connectors/calculate-target-connectors-to-connect/index.d.ts +2 -0
- package/domain/f-connectors/index.d.ts +2 -2
- package/domain/f-connectors/providers.d.ts +3 -3
- package/domain/f-event-trigger.d.ts +1 -1
- package/domain/f-flow/providers.d.ts +1 -1
- package/domain/f-line-alignment/providers.d.ts +1 -1
- package/domain/f-node/add-node-to-store/add-node-to-store-request.d.ts +2 -2
- package/domain/f-node/{calculate-node-connectors-connectable-sides → calculate-connectors-connectable-sides}/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions-request.d.ts +3 -1
- package/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions.d.ts +22 -0
- package/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position.d.ts +52 -0
- package/domain/f-node/calculate-connectors-connectable-sides/calculate-connectors-connectable-sides-request.d.ts +6 -0
- package/domain/f-node/calculate-connectors-connectable-sides/calculate-connectors-connectable-sides.d.ts +22 -0
- package/domain/f-node/calculate-connectors-connectable-sides/constants/calculatable-sides.d.ts +6 -0
- package/domain/f-node/calculate-connectors-connectable-sides/constants/index.d.ts +1 -0
- package/domain/f-node/calculate-connectors-connectable-sides/index.d.ts +7 -0
- package/domain/f-node/calculate-connectors-connectable-sides/models/index.d.ts +1 -0
- package/domain/f-node/calculate-connectors-connectable-sides/models/t-calculate-mode.d.ts +2 -0
- package/domain/f-node/calculate-connectors-connectable-sides/utils/determine-side.d.ts +10 -0
- package/domain/f-node/calculate-connectors-connectable-sides/utils/index.d.ts +2 -0
- package/domain/f-node/calculate-connectors-connectable-sides/utils/is-calculate-mode.d.ts +7 -0
- package/domain/f-node/calculate-input-connections/calculate-input-connections-request.d.ts +2 -2
- package/domain/f-node/calculate-input-connections/calculate-input-connections.d.ts +3 -3
- package/domain/f-node/calculate-nodes-bounding-box/calculate-nodes-bounding-box.d.ts +2 -3
- package/domain/f-node/calculate-output-connections/calculate-output-connections-request.d.ts +2 -2
- package/domain/f-node/calculate-output-connections/calculate-output-connections.d.ts +3 -3
- package/domain/f-node/index.d.ts +1 -2
- package/domain/f-node/providers.d.ts +2 -3
- package/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.execution.d.ts +2 -2
- package/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.request.d.ts +2 -2
- package/domain/f-zoom/providers.d.ts +1 -1
- package/domain/providers.d.ts +1 -1
- package/esm2022/domain/css-cls.mjs +2 -1
- package/esm2022/domain/f-connectors/calculate-source-connectors-to-connect/calculate-source-connectors-to-connect-request.mjs +10 -0
- package/esm2022/domain/f-connectors/calculate-source-connectors-to-connect/calculate-source-connectors-to-connect.mjs +59 -0
- package/esm2022/domain/f-connectors/calculate-source-connectors-to-connect/index.mjs +3 -0
- package/esm2022/domain/f-connectors/calculate-target-connectors-to-connect/calculate-target-connectors-to-connect-request.mjs +10 -0
- package/esm2022/domain/f-connectors/calculate-target-connectors-to-connect/calculate-target-connectors-to-connect.mjs +64 -0
- package/esm2022/domain/f-connectors/calculate-target-connectors-to-connect/index.mjs +3 -0
- package/esm2022/domain/f-connectors/index.mjs +3 -3
- package/esm2022/domain/f-connectors/providers.mjs +5 -5
- package/esm2022/domain/f-event-trigger.mjs +2 -2
- package/esm2022/domain/f-node/add-node-to-store/add-node-to-store-request.mjs +4 -4
- package/esm2022/domain/f-node/add-node-to-store/add-node-to-store.mjs +2 -2
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions-request.mjs +10 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions.mjs +59 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/index.mjs +3 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position-request.mjs +8 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position.mjs +132 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-internal-position/index.mjs +3 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectors-connectable-sides-request.mjs +8 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectors-connectable-sides.mjs +73 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/constants/calculatable-sides.mjs +12 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/constants/index.mjs +2 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/index.mjs +8 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/models/index.mjs +2 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/models/t-calculate-mode.mjs +2 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/utils/determine-side.mjs +124 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/utils/index.mjs +3 -0
- package/esm2022/domain/f-node/calculate-connectors-connectable-sides/utils/is-calculate-mode.mjs +12 -0
- package/esm2022/domain/f-node/calculate-input-connections/calculate-input-connections-request.mjs +4 -4
- package/esm2022/domain/f-node/calculate-input-connections/calculate-input-connections.mjs +20 -7
- package/esm2022/domain/f-node/calculate-nodes-bounding-box/calculate-nodes-bounding-box.mjs +5 -8
- package/esm2022/domain/f-node/calculate-output-connections/calculate-output-connections-request.mjs +4 -4
- package/esm2022/domain/f-node/calculate-output-connections/calculate-output-connections.mjs +20 -7
- package/esm2022/domain/f-node/get-child-node-ids/get-child-node-ids.request.mjs +1 -1
- package/esm2022/domain/f-node/index.mjs +2 -3
- package/esm2022/domain/f-node/providers.mjs +3 -5
- package/esm2022/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed.mjs +3 -3
- package/esm2022/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.execution.mjs +5 -5
- package/esm2022/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.request.mjs +4 -4
- package/esm2022/domain/get-normalized-connector-rect/get-normalized-connector-rect-request.mjs +1 -1
- package/esm2022/domain/get-normalized-connector-rect/get-normalized-connector-rect.execution.mjs +2 -2
- package/esm2022/domain/get-normalized-element-rect/get-normalized-element-rect.execution.mjs +2 -14
- package/esm2022/domain/get-normalized-point/get-normalized-point.execution.mjs +4 -1
- package/esm2022/domain/index.mjs +1 -1
- package/esm2022/domain/is-mobile.mjs +5 -3
- package/esm2022/f-connectors/e-f-connectable-side.mjs +3 -1
- package/esm2022/f-connectors/f-node-output/f-node-output.directive.mjs +1 -1
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/create-connection-preparation-request.mjs +10 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/create-connection-preparation.mjs +58 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/create-connection-from-output-preparation-request.mjs +10 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/create-connection-from-output-preparation.mjs +47 -0
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/index.mjs +3 -3
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/index.mjs +3 -3
- package/esm2022/f-draggable/f-connection/f-create-connection/f-create-connection.drag-handler.mjs +8 -8
- package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-source.drag-handler.mjs +3 -3
- package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-target.drag-handler.mjs +7 -7
- package/esm2022/f-draggable/f-connection/providers.mjs +4 -4
- package/esm2022/f-draggable/f-draggable.directive.mjs +3 -3
- package/esm2022/f-draggable/f-drop-to-group/drop-to-group-preparation/drop-to-group-preparation-request.mjs +1 -1
- package/esm2022/f-draggable/f-drop-to-group/drop-to-group-preparation/drop-to-group-preparation.mjs +11 -13
- package/esm2022/f-draggable/f-node-move/move-preparation/f-node-move-preparation.execution.mjs +14 -12
- package/esm2022/f-draggable/f-node-move/move-preparation/f-node-move-preparation.request.mjs +1 -1
- package/esm2022/f-node/f-group.directive.mjs +3 -3
- package/esm2022/f-node/f-node.directive.mjs +3 -3
- package/esm2022/f-storage/f-connectors-store.mjs +11 -0
- package/esm2022/f-storage/index.mjs +2 -1
- package/f-connection/providers.d.ts +1 -1
- package/f-connectors/e-f-connectable-side.d.ts +2 -0
- package/f-connectors/providers.d.ts +1 -1
- package/f-draggable/f-connection/f-create-connection/create-preparation/create-connection-preparation-request.d.ts +8 -0
- package/f-draggable/f-connection/f-create-connection/create-preparation/create-connection-preparation.d.ts +16 -0
- package/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/create-connection-from-output-preparation-request.d.ts +8 -0
- package/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/create-connection-from-output-preparation.d.ts +14 -0
- package/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/index.d.ts +2 -2
- package/f-draggable/f-connection/f-create-connection/create-preparation/index.d.ts +2 -2
- package/f-draggable/f-connection/providers.d.ts +2 -2
- package/f-draggable/f-drop-to-group/drop-to-group-preparation/drop-to-group-preparation-request.d.ts +2 -2
- package/f-draggable/f-drop-to-group/providers.d.ts +1 -1
- package/f-draggable/f-node-move/create-drag-model-from-selection/providers.d.ts +1 -1
- package/f-draggable/f-node-move/move-preparation/f-node-move-preparation.execution.d.ts +1 -1
- package/f-draggable/f-node-move/move-preparation/f-node-move-preparation.request.d.ts +1 -1
- package/f-draggable/f-node-move/providers.d.ts +1 -1
- package/f-draggable/providers.d.ts +1 -1
- package/f-minimap/domain/providers.d.ts +1 -1
- package/f-minimap/providers.d.ts +1 -1
- package/f-node/providers.d.ts +2 -2
- package/f-selection-area/domain/providers.d.ts +1 -1
- package/f-storage/f-connectors-store.d.ts +6 -0
- package/f-storage/index.d.ts +1 -0
- package/f-storage/providers.d.ts +1 -1
- package/fesm2022/foblex-flow.mjs +1281 -1075
- package/fesm2022/foblex-flow.mjs.map +1 -1
- package/package.json +1 -1
- package/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.execution.d.ts +0 -17
- package/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.request.d.ts +0 -6
- package/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/index.d.ts +0 -2
- package/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/get-all-can-be-connected-source-connectors-and-rects.execution.d.ts +0 -18
- package/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/get-all-can-be-connected-source-connectors-and-rects.request.d.ts +0 -6
- package/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/index.d.ts +0 -2
- package/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions.d.ts +0 -45
- package/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position.d.ts +0 -20
- package/domain/f-node/calculate-node-connectors-connectable-sides/calculate-node-connectors-connectable-sides-request.d.ts +0 -6
- package/domain/f-node/calculate-node-connectors-connectable-sides/calculate-node-connectors-connectable-sides.d.ts +0 -59
- package/domain/f-node/calculate-node-connectors-connectable-sides/index.d.ts +0 -4
- package/domain/f-node/get-nodes/get-nodes-request.d.ts +0 -3
- package/domain/f-node/get-nodes/get-nodes.d.ts +0 -13
- package/domain/f-node/get-nodes/index.d.ts +0 -2
- package/esm2022/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.execution.mjs +0 -48
- package/esm2022/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.request.mjs +0 -8
- package/esm2022/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/index.mjs +0 -3
- package/esm2022/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/get-all-can-be-connected-source-connectors-and-rects.execution.mjs +0 -43
- package/esm2022/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/get-all-can-be-connected-source-connectors-and-rects.request.mjs +0 -8
- package/esm2022/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/index.mjs +0 -3
- package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions-request.mjs +0 -8
- package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions.mjs +0 -92
- package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/index.mjs +0 -3
- package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position-request.mjs +0 -8
- package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position.mjs +0 -55
- package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-internal-position/index.mjs +0 -3
- package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-node-connectors-connectable-sides-request.mjs +0 -8
- package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-node-connectors-connectable-sides.mjs +0 -99
- package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/index.mjs +0 -5
- package/esm2022/domain/f-node/get-nodes/get-nodes-request.mjs +0 -4
- package/esm2022/domain/f-node/get-nodes/get-nodes.mjs +0 -25
- package/esm2022/domain/f-node/get-nodes/index.mjs +0 -3
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/f-create-connection-preparation.execution.mjs +0 -52
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/f-create-connection-preparation.request.mjs +0 -10
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/f-create-connection-from-output-preparation.execution.mjs +0 -49
- package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/f-create-connection-from-output-preparation.request.mjs +0 -10
- package/f-draggable/f-connection/f-create-connection/create-preparation/f-create-connection-preparation.execution.d.ts +0 -16
- package/f-draggable/f-connection/f-create-connection/create-preparation/f-create-connection-preparation.request.d.ts +0 -8
- package/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/f-create-connection-from-output-preparation.execution.d.ts +0 -14
- package/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/f-create-connection-from-output-preparation.request.d.ts +0 -8
- /package/domain/f-node/{calculate-node-connectors-connectable-sides → calculate-connectors-connectable-sides}/calculate-connectable-side-by-connected-positions/index.d.ts +0 -0
- /package/domain/f-node/{calculate-node-connectors-connectable-sides → calculate-connectors-connectable-sides}/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position-request.d.ts +0 -0
- /package/domain/f-node/{calculate-node-connectors-connectable-sides → calculate-connectors-connectable-sides}/calculate-connectable-side-by-internal-position/index.d.ts +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@foblex/flow",
|
|
3
|
-
"version": "17.8.
|
|
3
|
+
"version": "17.8.5",
|
|
4
4
|
"description": "An Angular library designed to simplify the creation and manipulation of dynamic flow. Provides components for flows, nodes, and connections, automating node manipulation and inter-node connections.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "index.d.ts",
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { GetAllCanBeConnectedInputsAndRectsRequest } from './get-all-can-be-connected-inputs-and-rects.request';
|
|
2
|
-
import { IExecution } from '@foblex/mediator';
|
|
3
|
-
import { IConnectorAndRect } from '../i-connector-and-rect';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/**
|
|
6
|
-
* Execution that retrieves all input connectors that can be connected to a given output or outlet connector,
|
|
7
|
-
*/
|
|
8
|
-
export declare class GetAllCanBeConnectedInputsAndRectsExecution implements IExecution<GetAllCanBeConnectedInputsAndRectsRequest, IConnectorAndRect[]> {
|
|
9
|
-
private readonly _mediator;
|
|
10
|
-
private readonly _store;
|
|
11
|
-
private get _targetConnectors();
|
|
12
|
-
handle({ outputOrOutlet, }: GetAllCanBeConnectedInputsAndRectsRequest): IConnectorAndRect[];
|
|
13
|
-
private _getCanBeConnectedInputs;
|
|
14
|
-
private _filterSelfConnectable;
|
|
15
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<GetAllCanBeConnectedInputsAndRectsExecution, never>;
|
|
16
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<GetAllCanBeConnectedInputsAndRectsExecution>;
|
|
17
|
-
}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { FNodeOutletBase, FNodeOutputBase } from '../../../f-connectors';
|
|
2
|
-
export declare class GetAllCanBeConnectedInputsAndRectsRequest {
|
|
3
|
-
readonly outputOrOutlet: FNodeOutputBase | FNodeOutletBase;
|
|
4
|
-
static readonly fToken: unique symbol;
|
|
5
|
-
constructor(outputOrOutlet: FNodeOutputBase | FNodeOutletBase);
|
|
6
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { GetAllCanBeConnectedSourceConnectorsAndRectsRequest } from './get-all-can-be-connected-source-connectors-and-rects.request';
|
|
2
|
-
import { IExecution } from '@foblex/mediator';
|
|
3
|
-
import { IConnectorAndRect } from '../i-connector-and-rect';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/**
|
|
6
|
-
* Execution that retrieves all source connectors that can be connected to a given target connector,
|
|
7
|
-
* along with their rectangles.
|
|
8
|
-
* Source - Output or Outlet connectors.
|
|
9
|
-
*/
|
|
10
|
-
export declare class GetAllCanBeConnectedSourceConnectorsAndRectsExecution implements IExecution<GetAllCanBeConnectedSourceConnectorsAndRectsRequest, IConnectorAndRect[]> {
|
|
11
|
-
private readonly _mediator;
|
|
12
|
-
private readonly _store;
|
|
13
|
-
private get _sourceConnectors();
|
|
14
|
-
handle({ targetConnector, }: GetAllCanBeConnectedSourceConnectorsAndRectsRequest): IConnectorAndRect[];
|
|
15
|
-
private _getCanBeConnectedSourceConnectors;
|
|
16
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<GetAllCanBeConnectedSourceConnectorsAndRectsExecution, never>;
|
|
17
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<GetAllCanBeConnectedSourceConnectorsAndRectsExecution>;
|
|
18
|
-
}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { IExecution } from '@foblex/mediator';
|
|
2
|
-
import { CalculateConnectableSideByConnectedPositionsRequest } from './calculate-connectable-side-by-connected-positions-request';
|
|
3
|
-
import { EFConnectableSide } from '../../../../f-connectors';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/**
|
|
6
|
-
* Execution that calculates the connectable side for a connector
|
|
7
|
-
* based on the positions of its connected connectors.
|
|
8
|
-
*/
|
|
9
|
-
export declare class CalculateConnectableSideByConnectedPositions implements IExecution<CalculateConnectableSideByConnectedPositionsRequest, EFConnectableSide> {
|
|
10
|
-
private readonly _mediator;
|
|
11
|
-
/**
|
|
12
|
-
* Handles the request to calculate the connectable side for a connector
|
|
13
|
-
* based on the positions of its connected connectors.
|
|
14
|
-
*
|
|
15
|
-
* @param request - Contains the connector host element and its connected connectors.
|
|
16
|
-
* @returns {EFConnectableSide} - The calculated connectable side.
|
|
17
|
-
*/
|
|
18
|
-
handle({ connector, }: CalculateConnectableSideByConnectedPositionsRequest): EFConnectableSide;
|
|
19
|
-
/**
|
|
20
|
-
* Extracts the gravity centers of connected connectors, excluding the current connector.
|
|
21
|
-
*
|
|
22
|
-
* @param selfHost - The host element of the current connector.
|
|
23
|
-
* @param connected - The list of connected connectors.
|
|
24
|
-
* @returns {Array<{x: number, y: number}>} - An array of gravity center coordinates.
|
|
25
|
-
*/
|
|
26
|
-
private _getConnectedCenters;
|
|
27
|
-
/**
|
|
28
|
-
* Calculates the average point (center of mass) from a set of points.
|
|
29
|
-
*
|
|
30
|
-
* @param points - An array of point objects with x and y coordinates.
|
|
31
|
-
* @returns {{x: number, y: number}} - The average x and y coordinate.
|
|
32
|
-
*/
|
|
33
|
-
private _calculateAveragePoint;
|
|
34
|
-
/**
|
|
35
|
-
* Determines the connectable side of the current connector relative to the
|
|
36
|
-
* average position of its connected connectors.
|
|
37
|
-
*
|
|
38
|
-
* @param self - The gravity center of the current connector.
|
|
39
|
-
* @param avg - The average gravity center of connected connectors.
|
|
40
|
-
* @returns {EFConnectableSide} - The chosen side (LEFT, RIGHT, TOP, BOTTOM).
|
|
41
|
-
*/
|
|
42
|
-
private _determineSide;
|
|
43
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<CalculateConnectableSideByConnectedPositions, never>;
|
|
44
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<CalculateConnectableSideByConnectedPositions>;
|
|
45
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { IExecution } from '@foblex/mediator';
|
|
2
|
-
import { CalculateConnectableSideByInternalPositionRequest } from './calculate-connectable-side-by-internal-position-request';
|
|
3
|
-
import { EFConnectableSide } from '../../../../f-connectors';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/**
|
|
6
|
-
* Execution that calculates the connectable side for a connector
|
|
7
|
-
* based on the internal position of the connector relative to its node host.
|
|
8
|
-
*/
|
|
9
|
-
export declare class CalculateConnectableSideByInternalPosition implements IExecution<CalculateConnectableSideByInternalPositionRequest, EFConnectableSide> {
|
|
10
|
-
handle({ connector, }: CalculateConnectableSideByInternalPositionRequest): EFConnectableSide;
|
|
11
|
-
/**
|
|
12
|
-
* Determines the side of the connector relative to the node host based on the minimum distance.
|
|
13
|
-
* @param connectorHost
|
|
14
|
-
* @param nodeHost
|
|
15
|
-
* @private
|
|
16
|
-
*/
|
|
17
|
-
private _getSideByDelta;
|
|
18
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<CalculateConnectableSideByInternalPosition, never>;
|
|
19
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<CalculateConnectableSideByInternalPosition>;
|
|
20
|
-
}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { IExecution } from '@foblex/mediator';
|
|
2
|
-
import { CalculateNodeConnectorsConnectableSidesRequest } from './calculate-node-connectors-connectable-sides-request';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
/**
|
|
5
|
-
* Execution that calculates connectable sides for all connectors of a node.
|
|
6
|
-
*
|
|
7
|
-
* Responsibility:
|
|
8
|
-
* - For each connector, decide the effective connectable side according to:
|
|
9
|
-
* - AUTO -> by internal position relative to node host
|
|
10
|
-
* - CALCULATE -> by positions of connected connectors
|
|
11
|
-
* - explicit -> use the user-defined side as-is
|
|
12
|
-
* - For each `toConnector` whose user side is CALCULATE, recalculate it as well.
|
|
13
|
-
*/
|
|
14
|
-
export declare class CalculateNodeConnectorsConnectableSides implements IExecution<CalculateNodeConnectorsConnectableSidesRequest, void> {
|
|
15
|
-
private readonly _mediator;
|
|
16
|
-
/**
|
|
17
|
-
* Orchestrates side calculation for all connectors of the given node.
|
|
18
|
-
*
|
|
19
|
-
* @param request.node - Node whose connectors should be recalculated.
|
|
20
|
-
*/
|
|
21
|
-
handle({ node }: CalculateNodeConnectorsConnectableSidesRequest): void;
|
|
22
|
-
/**
|
|
23
|
-
* Calculates and assigns the connectable side for a single connector.
|
|
24
|
-
*
|
|
25
|
-
* @param connector - The connector being updated.
|
|
26
|
-
*/
|
|
27
|
-
private _updateConnectorSide;
|
|
28
|
-
/**
|
|
29
|
-
* Recalculates connectable sides for all `toConnector` items that are marked as CALCULATE.
|
|
30
|
-
*
|
|
31
|
-
* @param source - The source connector whose outgoing connections should be processed.
|
|
32
|
-
*/
|
|
33
|
-
private _updateConnectedTargets;
|
|
34
|
-
/**
|
|
35
|
-
* Resolves the effective side for a connector according to its user preference.
|
|
36
|
-
*
|
|
37
|
-
* @param connector - The connector to resolve side for.
|
|
38
|
-
* @returns {EFConnectableSide} - The resolved side.
|
|
39
|
-
*/
|
|
40
|
-
private _resolveSideForConnector;
|
|
41
|
-
/**
|
|
42
|
-
* Calculates side using the connector's internal position relative to the node host.
|
|
43
|
-
* Delegates to `CalculateConnectableSideByInternalPositionRequest`.
|
|
44
|
-
*
|
|
45
|
-
* @param connector - Current connector.
|
|
46
|
-
* @returns {EFConnectableSide}
|
|
47
|
-
*/
|
|
48
|
-
private _resolveSideByInternalPosition;
|
|
49
|
-
/**
|
|
50
|
-
* Calculates side using average positions of connectors connected to the given connector.
|
|
51
|
-
* Delegates to `CalculateConnectableSideByConnectedPositionsRequest`.
|
|
52
|
-
*
|
|
53
|
-
* @param connector - Current connector.
|
|
54
|
-
* @returns {EFConnectableSide}
|
|
55
|
-
*/
|
|
56
|
-
private _resolveSideByConnectedPositions;
|
|
57
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<CalculateNodeConnectorsConnectableSides, never>;
|
|
58
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<CalculateNodeConnectorsConnectableSides>;
|
|
59
|
-
}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export * from './calculate-connectable-side-by-connected-positions';
|
|
2
|
-
export * from './calculate-connectable-side-by-internal-position';
|
|
3
|
-
export * from './calculate-node-connectors-connectable-sides';
|
|
4
|
-
export * from './calculate-node-connectors-connectable-sides-request';
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { IExecution } from '@foblex/mediator';
|
|
2
|
-
import { GetNodesRequest } from './get-nodes-request';
|
|
3
|
-
import { FNodeBase } from '../../../f-node';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/**
|
|
6
|
-
* Execution that retrieves all nodes from the FComponentsStore.
|
|
7
|
-
*/
|
|
8
|
-
export declare class GetNodes implements IExecution<GetNodesRequest, FNodeBase[]> {
|
|
9
|
-
private readonly _store;
|
|
10
|
-
handle(request: GetNodesRequest): FNodeBase[];
|
|
11
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<GetNodes, never>;
|
|
12
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<GetNodes>;
|
|
13
|
-
}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { GetAllCanBeConnectedInputsAndRectsRequest } from './get-all-can-be-connected-inputs-and-rects.request';
|
|
3
|
-
import { inject, Injectable } from '@angular/core';
|
|
4
|
-
import { FExecutionRegister, FMediator } from '@foblex/mediator';
|
|
5
|
-
import { FComponentsStore } from '../../../f-storage';
|
|
6
|
-
import { GetConnectorAndRectRequest } from '../get-connector-and-rect';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
/**
|
|
9
|
-
* Execution that retrieves all input connectors that can be connected to a given output or outlet connector,
|
|
10
|
-
*/
|
|
11
|
-
let GetAllCanBeConnectedInputsAndRectsExecution = class GetAllCanBeConnectedInputsAndRectsExecution {
|
|
12
|
-
_mediator = inject(FMediator);
|
|
13
|
-
_store = inject(FComponentsStore);
|
|
14
|
-
get _targetConnectors() {
|
|
15
|
-
return this._store.fInputs;
|
|
16
|
-
}
|
|
17
|
-
handle({ outputOrOutlet, }) {
|
|
18
|
-
return this._getCanBeConnectedInputs(outputOrOutlet).map((x) => {
|
|
19
|
-
return this._mediator.execute(new GetConnectorAndRectRequest(x));
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
_getCanBeConnectedInputs(outputOrOutlet) {
|
|
23
|
-
let targetConnectors = [];
|
|
24
|
-
if (outputOrOutlet.hasConnectionLimits) {
|
|
25
|
-
targetConnectors = this._targetConnectors.filter((x) => outputOrOutlet.canConnectTo(x));
|
|
26
|
-
}
|
|
27
|
-
else {
|
|
28
|
-
targetConnectors = this._targetConnectors.filter((x) => x.canBeConnected);
|
|
29
|
-
if (!outputOrOutlet.isSelfConnectable) {
|
|
30
|
-
targetConnectors = this._filterSelfConnectable(targetConnectors, outputOrOutlet);
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
return targetConnectors;
|
|
34
|
-
}
|
|
35
|
-
_filterSelfConnectable(targetConnectors, outputOrOutlet) {
|
|
36
|
-
return targetConnectors.filter(({ fNodeId }) => outputOrOutlet.fNodeId !== fNodeId);
|
|
37
|
-
}
|
|
38
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GetAllCanBeConnectedInputsAndRectsExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
39
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GetAllCanBeConnectedInputsAndRectsExecution });
|
|
40
|
-
};
|
|
41
|
-
GetAllCanBeConnectedInputsAndRectsExecution = __decorate([
|
|
42
|
-
FExecutionRegister(GetAllCanBeConnectedInputsAndRectsRequest)
|
|
43
|
-
], GetAllCanBeConnectedInputsAndRectsExecution);
|
|
44
|
-
export { GetAllCanBeConnectedInputsAndRectsExecution };
|
|
45
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GetAllCanBeConnectedInputsAndRectsExecution, decorators: [{
|
|
46
|
-
type: Injectable
|
|
47
|
-
}] });
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWFsbC1jYW4tYmUtY29ubmVjdGVkLWlucHV0cy1hbmQtcmVjdHMuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1jb25uZWN0b3JzL2dldC1hbGwtY2FuLWJlLWNvbm5lY3RlZC1pbnB1dHMtYW5kLXJlY3RzL2dldC1hbGwtY2FuLWJlLWNvbm5lY3RlZC1pbnB1dHMtYW5kLXJlY3RzLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHlDQUF5QyxFQUFFLE1BQU0scURBQXFELENBQUM7QUFDaEgsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBTzdFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXRELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUV2RTs7R0FFRztBQUdJLElBQU0sMkNBQTJDLEdBQWpELE1BQU0sMkNBQTJDO0lBR3JDLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDOUIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBRW5ELElBQVksaUJBQWlCO1FBQzNCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7SUFDN0IsQ0FBQztJQUVNLE1BQU0sQ0FBQyxFQUNaLGNBQWMsR0FDNEI7UUFDMUMsT0FBTyxJQUFJLENBQUMsd0JBQXdCLENBQUMsY0FBYyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDN0QsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLDBCQUEwQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkUsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sd0JBQXdCLENBQzlCLGNBQWlEO1FBRWpELElBQUksZ0JBQWdCLEdBQXFCLEVBQUUsQ0FBQztRQUM1QyxJQUFJLGNBQWMsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1lBQ3ZDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNyRCxjQUFjLENBQUMsWUFBWSxDQUFDLENBQW1CLENBQUMsQ0FDakQsQ0FBQztRQUNKLENBQUM7YUFBTSxDQUFDO1lBQ04sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBRTFFLElBQUksQ0FBQyxjQUFjLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztnQkFDdEMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLGdCQUFnQixFQUFFLGNBQWMsQ0FBQyxDQUFDO1lBQ25GLENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxnQkFBZ0IsQ0FBQztJQUMxQixDQUFDO0lBRU8sc0JBQXNCLENBQzVCLGdCQUFrQyxFQUNsQyxjQUE4QjtRQUU5QixPQUFPLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEtBQUssT0FBTyxDQUFDLENBQUM7SUFDdEYsQ0FBQzt3R0ExQ1UsMkNBQTJDOzRHQUEzQywyQ0FBMkM7O0FBQTNDLDJDQUEyQztJQUR2RCxrQkFBa0IsQ0FBQyx5Q0FBeUMsQ0FBQztHQUNqRCwyQ0FBMkMsQ0EyQ3ZEOzs0RkEzQ1ksMkNBQTJDO2tCQUZ2RCxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgR2V0QWxsQ2FuQmVDb25uZWN0ZWRJbnB1dHNBbmRSZWN0c1JlcXVlc3QgfSBmcm9tICcuL2dldC1hbGwtY2FuLWJlLWNvbm5lY3RlZC1pbnB1dHMtYW5kLXJlY3RzLnJlcXVlc3QnO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHtcbiAgRkNvbm5lY3RvckJhc2UsXG4gIEZOb2RlSW5wdXRCYXNlLFxuICBGTm9kZU91dGxldEJhc2UsXG4gIEZOb2RlT3V0cHV0QmFzZSxcbn0gZnJvbSAnLi4vLi4vLi4vZi1jb25uZWN0b3JzJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgSUNvbm5lY3RvckFuZFJlY3QgfSBmcm9tICcuLi9pLWNvbm5lY3Rvci1hbmQtcmVjdCc7XG5pbXBvcnQgeyBHZXRDb25uZWN0b3JBbmRSZWN0UmVxdWVzdCB9IGZyb20gJy4uL2dldC1jb25uZWN0b3ItYW5kLXJlY3QnO1xuXG4vKipcbiAqIEV4ZWN1dGlvbiB0aGF0IHJldHJpZXZlcyBhbGwgaW5wdXQgY29ubmVjdG9ycyB0aGF0IGNhbiBiZSBjb25uZWN0ZWQgdG8gYSBnaXZlbiBvdXRwdXQgb3Igb3V0bGV0IGNvbm5lY3RvcixcbiAqL1xuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihHZXRBbGxDYW5CZUNvbm5lY3RlZElucHV0c0FuZFJlY3RzUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBHZXRBbGxDYW5CZUNvbm5lY3RlZElucHV0c0FuZFJlY3RzRXhlY3V0aW9uXG4gIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxHZXRBbGxDYW5CZUNvbm5lY3RlZElucHV0c0FuZFJlY3RzUmVxdWVzdCwgSUNvbm5lY3RvckFuZFJlY3RbXT5cbntcbiAgcHJpdmF0ZSByZWFkb25seSBfbWVkaWF0b3IgPSBpbmplY3QoRk1lZGlhdG9yKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfc3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSk7XG5cbiAgcHJpdmF0ZSBnZXQgX3RhcmdldENvbm5lY3RvcnMoKTogRkNvbm5lY3RvckJhc2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuX3N0b3JlLmZJbnB1dHM7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHtcbiAgICBvdXRwdXRPck91dGxldCxcbiAgfTogR2V0QWxsQ2FuQmVDb25uZWN0ZWRJbnB1dHNBbmRSZWN0c1JlcXVlc3QpOiBJQ29ubmVjdG9yQW5kUmVjdFtdIHtcbiAgICByZXR1cm4gdGhpcy5fZ2V0Q2FuQmVDb25uZWN0ZWRJbnB1dHMob3V0cHV0T3JPdXRsZXQpLm1hcCgoeCkgPT4ge1xuICAgICAgcmV0dXJuIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUobmV3IEdldENvbm5lY3RvckFuZFJlY3RSZXF1ZXN0KHgpKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldENhbkJlQ29ubmVjdGVkSW5wdXRzKFxuICAgIG91dHB1dE9yT3V0bGV0OiBGTm9kZU91dHB1dEJhc2UgfCBGTm9kZU91dGxldEJhc2UsXG4gICk6IEZDb25uZWN0b3JCYXNlW10ge1xuICAgIGxldCB0YXJnZXRDb25uZWN0b3JzOiBGQ29ubmVjdG9yQmFzZVtdID0gW107XG4gICAgaWYgKG91dHB1dE9yT3V0bGV0Lmhhc0Nvbm5lY3Rpb25MaW1pdHMpIHtcbiAgICAgIHRhcmdldENvbm5lY3RvcnMgPSB0aGlzLl90YXJnZXRDb25uZWN0b3JzLmZpbHRlcigoeCkgPT5cbiAgICAgICAgb3V0cHV0T3JPdXRsZXQuY2FuQ29ubmVjdFRvKHggYXMgRk5vZGVJbnB1dEJhc2UpLFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGFyZ2V0Q29ubmVjdG9ycyA9IHRoaXMuX3RhcmdldENvbm5lY3RvcnMuZmlsdGVyKCh4KSA9PiB4LmNhbkJlQ29ubmVjdGVkKTtcblxuICAgICAgaWYgKCFvdXRwdXRPck91dGxldC5pc1NlbGZDb25uZWN0YWJsZSkge1xuICAgICAgICB0YXJnZXRDb25uZWN0b3JzID0gdGhpcy5fZmlsdGVyU2VsZkNvbm5lY3RhYmxlKHRhcmdldENvbm5lY3RvcnMsIG91dHB1dE9yT3V0bGV0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdGFyZ2V0Q29ubmVjdG9ycztcbiAgfVxuXG4gIHByaXZhdGUgX2ZpbHRlclNlbGZDb25uZWN0YWJsZShcbiAgICB0YXJnZXRDb25uZWN0b3JzOiBGQ29ubmVjdG9yQmFzZVtdLFxuICAgIG91dHB1dE9yT3V0bGV0OiBGQ29ubmVjdG9yQmFzZSxcbiAgKTogRkNvbm5lY3RvckJhc2VbXSB7XG4gICAgcmV0dXJuIHRhcmdldENvbm5lY3RvcnMuZmlsdGVyKCh7IGZOb2RlSWQgfSkgPT4gb3V0cHV0T3JPdXRsZXQuZk5vZGVJZCAhPT0gZk5vZGVJZCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export class GetAllCanBeConnectedInputsAndRectsRequest {
|
|
2
|
-
outputOrOutlet;
|
|
3
|
-
static fToken = Symbol('GetAllCanBeConnectedInputsAndRectsRequest');
|
|
4
|
-
constructor(outputOrOutlet) {
|
|
5
|
-
this.outputOrOutlet = outputOrOutlet;
|
|
6
|
-
}
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWFsbC1jYW4tYmUtY29ubmVjdGVkLWlucHV0cy1hbmQtcmVjdHMucmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2YtY29ubmVjdG9ycy9nZXQtYWxsLWNhbi1iZS1jb25uZWN0ZWQtaW5wdXRzLWFuZC1yZWN0cy9nZXQtYWxsLWNhbi1iZS1jb25uZWN0ZWQtaW5wdXRzLWFuZC1yZWN0cy5yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyx5Q0FBeUM7SUFFeEI7SUFENUIsTUFBTSxDQUFVLE1BQU0sR0FBRyxNQUFNLENBQUMsMkNBQTJDLENBQUMsQ0FBQztJQUM3RSxZQUE0QixjQUFpRDtRQUFqRCxtQkFBYyxHQUFkLGNBQWMsQ0FBbUM7SUFBRyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRk5vZGVPdXRsZXRCYXNlLCBGTm9kZU91dHB1dEJhc2UgfSBmcm9tICcuLi8uLi8uLi9mLWNvbm5lY3RvcnMnO1xuXG5leHBvcnQgY2xhc3MgR2V0QWxsQ2FuQmVDb25uZWN0ZWRJbnB1dHNBbmRSZWN0c1JlcXVlc3Qge1xuICBzdGF0aWMgcmVhZG9ubHkgZlRva2VuID0gU3ltYm9sKCdHZXRBbGxDYW5CZUNvbm5lY3RlZElucHV0c0FuZFJlY3RzUmVxdWVzdCcpO1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgb3V0cHV0T3JPdXRsZXQ6IEZOb2RlT3V0cHV0QmFzZSB8IEZOb2RlT3V0bGV0QmFzZSkge31cbn1cbiJdfQ==
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './get-all-can-be-connected-inputs-and-rects.request';
|
|
2
|
-
export * from './get-all-can-be-connected-inputs-and-rects.execution';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLWNvbm5lY3RvcnMvZ2V0LWFsbC1jYW4tYmUtY29ubmVjdGVkLWlucHV0cy1hbmQtcmVjdHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxREFBcUQsQ0FBQztBQUVwRSxjQUFjLHVEQUF1RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9nZXQtYWxsLWNhbi1iZS1jb25uZWN0ZWQtaW5wdXRzLWFuZC1yZWN0cy5yZXF1ZXN0JztcblxuZXhwb3J0ICogZnJvbSAnLi9nZXQtYWxsLWNhbi1iZS1jb25uZWN0ZWQtaW5wdXRzLWFuZC1yZWN0cy5leGVjdXRpb24nO1xuIl19
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { GetAllCanBeConnectedSourceConnectorsAndRectsRequest } from './get-all-can-be-connected-source-connectors-and-rects.request';
|
|
3
|
-
import { inject, Injectable } from '@angular/core';
|
|
4
|
-
import { FExecutionRegister, FMediator } from '@foblex/mediator';
|
|
5
|
-
import { FComponentsStore } from '../../../f-storage';
|
|
6
|
-
import { GetConnectorAndRectRequest } from '../get-connector-and-rect';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
/**
|
|
9
|
-
* Execution that retrieves all source connectors that can be connected to a given target connector,
|
|
10
|
-
* along with their rectangles.
|
|
11
|
-
* Source - Output or Outlet connectors.
|
|
12
|
-
*/
|
|
13
|
-
let GetAllCanBeConnectedSourceConnectorsAndRectsExecution = class GetAllCanBeConnectedSourceConnectorsAndRectsExecution {
|
|
14
|
-
_mediator = inject(FMediator);
|
|
15
|
-
_store = inject(FComponentsStore);
|
|
16
|
-
get _sourceConnectors() {
|
|
17
|
-
return this._store.fOutputs;
|
|
18
|
-
}
|
|
19
|
-
handle({ targetConnector, }) {
|
|
20
|
-
return this._getCanBeConnectedSourceConnectors(targetConnector).map((x) => {
|
|
21
|
-
return this._mediator.execute(new GetConnectorAndRectRequest(x));
|
|
22
|
-
});
|
|
23
|
-
}
|
|
24
|
-
_getCanBeConnectedSourceConnectors(targetConnector) {
|
|
25
|
-
return this._sourceConnectors.filter((x) => {
|
|
26
|
-
let result = x.canBeConnected;
|
|
27
|
-
if (result && x.hasConnectionLimits) {
|
|
28
|
-
result = x.canConnectTo(targetConnector);
|
|
29
|
-
}
|
|
30
|
-
return result;
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GetAllCanBeConnectedSourceConnectorsAndRectsExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
34
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GetAllCanBeConnectedSourceConnectorsAndRectsExecution });
|
|
35
|
-
};
|
|
36
|
-
GetAllCanBeConnectedSourceConnectorsAndRectsExecution = __decorate([
|
|
37
|
-
FExecutionRegister(GetAllCanBeConnectedSourceConnectorsAndRectsRequest)
|
|
38
|
-
], GetAllCanBeConnectedSourceConnectorsAndRectsExecution);
|
|
39
|
-
export { GetAllCanBeConnectedSourceConnectorsAndRectsExecution };
|
|
40
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GetAllCanBeConnectedSourceConnectorsAndRectsExecution, decorators: [{
|
|
41
|
-
type: Injectable
|
|
42
|
-
}] });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWFsbC1jYW4tYmUtY29ubmVjdGVkLXNvdXJjZS1jb25uZWN0b3JzLWFuZC1yZWN0cy5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLWNvbm5lY3RvcnMvZ2V0LWFsbC1jYW4tYmUtY29ubmVjdGVkLXNvdXJjZS1jb25uZWN0b3JzLWFuZC1yZWN0cy9nZXQtYWxsLWNhbi1iZS1jb25uZWN0ZWQtc291cmNlLWNvbm5lY3RvcnMtYW5kLXJlY3RzLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLG1EQUFtRCxFQUFFLE1BQU0sZ0VBQWdFLENBQUM7QUFDckksT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBRTdFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXRELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUV2RTs7OztHQUlHO0FBR0ksSUFBTSxxREFBcUQsR0FBM0QsTUFBTSxxREFBcUQ7SUFHL0MsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM5QixNQUFNLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFFbkQsSUFBWSxpQkFBaUI7UUFDM0IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQTZCLENBQUM7SUFDbkQsQ0FBQztJQUVNLE1BQU0sQ0FBQyxFQUNaLGVBQWUsR0FDcUM7UUFDcEQsT0FBTyxJQUFJLENBQUMsa0NBQWtDLENBQUMsZUFBZSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDeEUsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLDBCQUEwQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkUsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sa0NBQWtDLENBQUMsZUFBK0I7UUFDeEUsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDekMsSUFBSSxNQUFNLEdBQUcsQ0FBQyxDQUFDLGNBQWMsQ0FBQztZQUM5QixJQUFJLE1BQU0sSUFBSSxDQUFDLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztnQkFDcEMsTUFBTSxHQUFHLENBQUMsQ0FBQyxZQUFZLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDM0MsQ0FBQztZQUVELE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt3R0EzQlUscURBQXFEOzRHQUFyRCxxREFBcUQ7O0FBQXJELHFEQUFxRDtJQURqRSxrQkFBa0IsQ0FBQyxtREFBbUQsQ0FBQztHQUMzRCxxREFBcUQsQ0E0QmpFOzs0RkE1QlkscURBQXFEO2tCQUZqRSxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgR2V0QWxsQ2FuQmVDb25uZWN0ZWRTb3VyY2VDb25uZWN0b3JzQW5kUmVjdHNSZXF1ZXN0IH0gZnJvbSAnLi9nZXQtYWxsLWNhbi1iZS1jb25uZWN0ZWQtc291cmNlLWNvbm5lY3RvcnMtYW5kLXJlY3RzLnJlcXVlc3QnO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgRkNvbm5lY3RvckJhc2UsIEZOb2RlSW5wdXRCYXNlLCBGTm9kZU91dHB1dEJhc2UgfSBmcm9tICcuLi8uLi8uLi9mLWNvbm5lY3RvcnMnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBJQ29ubmVjdG9yQW5kUmVjdCB9IGZyb20gJy4uL2ktY29ubmVjdG9yLWFuZC1yZWN0JztcbmltcG9ydCB7IEdldENvbm5lY3RvckFuZFJlY3RSZXF1ZXN0IH0gZnJvbSAnLi4vZ2V0LWNvbm5lY3Rvci1hbmQtcmVjdCc7XG5cbi8qKlxuICogRXhlY3V0aW9uIHRoYXQgcmV0cmlldmVzIGFsbCBzb3VyY2UgY29ubmVjdG9ycyB0aGF0IGNhbiBiZSBjb25uZWN0ZWQgdG8gYSBnaXZlbiB0YXJnZXQgY29ubmVjdG9yLFxuICogYWxvbmcgd2l0aCB0aGVpciByZWN0YW5nbGVzLlxuICogU291cmNlIC0gT3V0cHV0IG9yIE91dGxldCBjb25uZWN0b3JzLlxuICovXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKEdldEFsbENhbkJlQ29ubmVjdGVkU291cmNlQ29ubmVjdG9yc0FuZFJlY3RzUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBHZXRBbGxDYW5CZUNvbm5lY3RlZFNvdXJjZUNvbm5lY3RvcnNBbmRSZWN0c0V4ZWN1dGlvblxuICBpbXBsZW1lbnRzIElFeGVjdXRpb248R2V0QWxsQ2FuQmVDb25uZWN0ZWRTb3VyY2VDb25uZWN0b3JzQW5kUmVjdHNSZXF1ZXN0LCBJQ29ubmVjdG9yQW5kUmVjdFtdPlxue1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9zdG9yZSA9IGluamVjdChGQ29tcG9uZW50c1N0b3JlKTtcblxuICBwcml2YXRlIGdldCBfc291cmNlQ29ubmVjdG9ycygpOiBGTm9kZU91dHB1dEJhc2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuX3N0b3JlLmZPdXRwdXRzIGFzIEZOb2RlT3V0cHV0QmFzZVtdO1xuICB9XG5cbiAgcHVibGljIGhhbmRsZSh7XG4gICAgdGFyZ2V0Q29ubmVjdG9yLFxuICB9OiBHZXRBbGxDYW5CZUNvbm5lY3RlZFNvdXJjZUNvbm5lY3RvcnNBbmRSZWN0c1JlcXVlc3QpOiBJQ29ubmVjdG9yQW5kUmVjdFtdIHtcbiAgICByZXR1cm4gdGhpcy5fZ2V0Q2FuQmVDb25uZWN0ZWRTb3VyY2VDb25uZWN0b3JzKHRhcmdldENvbm5lY3RvcikubWFwKCh4KSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgR2V0Q29ubmVjdG9yQW5kUmVjdFJlcXVlc3QoeCkpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Q2FuQmVDb25uZWN0ZWRTb3VyY2VDb25uZWN0b3JzKHRhcmdldENvbm5lY3RvcjogRk5vZGVJbnB1dEJhc2UpOiBGQ29ubmVjdG9yQmFzZVtdIHtcbiAgICByZXR1cm4gdGhpcy5fc291cmNlQ29ubmVjdG9ycy5maWx0ZXIoKHgpID0+IHtcbiAgICAgIGxldCByZXN1bHQgPSB4LmNhbkJlQ29ubmVjdGVkO1xuICAgICAgaWYgKHJlc3VsdCAmJiB4Lmhhc0Nvbm5lY3Rpb25MaW1pdHMpIHtcbiAgICAgICAgcmVzdWx0ID0geC5jYW5Db25uZWN0VG8odGFyZ2V0Q29ubmVjdG9yKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export class GetAllCanBeConnectedSourceConnectorsAndRectsRequest {
|
|
2
|
-
targetConnector;
|
|
3
|
-
static fToken = Symbol('GetAllCanBeConnectedSourceConnectorsAndRectsRequest');
|
|
4
|
-
constructor(targetConnector) {
|
|
5
|
-
this.targetConnector = targetConnector;
|
|
6
|
-
}
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWFsbC1jYW4tYmUtY29ubmVjdGVkLXNvdXJjZS1jb25uZWN0b3JzLWFuZC1yZWN0cy5yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1jb25uZWN0b3JzL2dldC1hbGwtY2FuLWJlLWNvbm5lY3RlZC1zb3VyY2UtY29ubmVjdG9ycy1hbmQtcmVjdHMvZ2V0LWFsbC1jYW4tYmUtY29ubmVjdGVkLXNvdXJjZS1jb25uZWN0b3JzLWFuZC1yZWN0cy5yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxtREFBbUQ7SUFHbEM7SUFGNUIsTUFBTSxDQUFVLE1BQU0sR0FBRyxNQUFNLENBQUMscURBQXFELENBQUMsQ0FBQztJQUV2RixZQUE0QixlQUErQjtRQUEvQixvQkFBZSxHQUFmLGVBQWUsQ0FBZ0I7SUFBRyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRk5vZGVJbnB1dEJhc2UgfSBmcm9tICcuLi8uLi8uLi9mLWNvbm5lY3RvcnMnO1xuXG5leHBvcnQgY2xhc3MgR2V0QWxsQ2FuQmVDb25uZWN0ZWRTb3VyY2VDb25uZWN0b3JzQW5kUmVjdHNSZXF1ZXN0IHtcbiAgc3RhdGljIHJlYWRvbmx5IGZUb2tlbiA9IFN5bWJvbCgnR2V0QWxsQ2FuQmVDb25uZWN0ZWRTb3VyY2VDb25uZWN0b3JzQW5kUmVjdHNSZXF1ZXN0Jyk7XG5cbiAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IHRhcmdldENvbm5lY3RvcjogRk5vZGVJbnB1dEJhc2UpIHt9XG59XG4iXX0=
|
package/esm2022/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/index.mjs
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './get-all-can-be-connected-source-connectors-and-rects.request';
|
|
2
|
-
export * from './get-all-can-be-connected-source-connectors-and-rects.execution';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLWNvbm5lY3RvcnMvZ2V0LWFsbC1jYW4tYmUtY29ubmVjdGVkLXNvdXJjZS1jb25uZWN0b3JzLWFuZC1yZWN0cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdFQUFnRSxDQUFDO0FBRS9FLGNBQWMsa0VBQWtFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2dldC1hbGwtY2FuLWJlLWNvbm5lY3RlZC1zb3VyY2UtY29ubmVjdG9ycy1hbmQtcmVjdHMucmVxdWVzdCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZ2V0LWFsbC1jYW4tYmUtY29ubmVjdGVkLXNvdXJjZS1jb25uZWN0b3JzLWFuZC1yZWN0cy5leGVjdXRpb24nO1xuIl19
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export class CalculateConnectableSideByConnectedPositionsRequest {
|
|
2
|
-
connector;
|
|
3
|
-
static fToken = Symbol('CalculateConnectableSideByConnectedPositionsRequest');
|
|
4
|
-
constructor(connector) {
|
|
5
|
-
this.connector = connector;
|
|
6
|
-
}
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWNvbm5lY3RhYmxlLXNpZGUtYnktY29ubmVjdGVkLXBvc2l0aW9ucy1yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1ub2RlL2NhbGN1bGF0ZS1ub2RlLWNvbm5lY3RvcnMtY29ubmVjdGFibGUtc2lkZXMvY2FsY3VsYXRlLWNvbm5lY3RhYmxlLXNpZGUtYnktY29ubmVjdGVkLXBvc2l0aW9ucy9jYWxjdWxhdGUtY29ubmVjdGFibGUtc2lkZS1ieS1jb25uZWN0ZWQtcG9zaXRpb25zLXJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLG1EQUFtRDtJQUVsQztJQUQ1QixNQUFNLENBQVUsTUFBTSxHQUFHLE1BQU0sQ0FBQyxxREFBcUQsQ0FBQyxDQUFDO0lBQ3ZGLFlBQTRCLFNBQXlCO1FBQXpCLGNBQVMsR0FBVCxTQUFTLENBQWdCO0lBQUcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZDb25uZWN0b3JCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZi1jb25uZWN0b3JzJztcblxuZXhwb3J0IGNsYXNzIENhbGN1bGF0ZUNvbm5lY3RhYmxlU2lkZUJ5Q29ubmVjdGVkUG9zaXRpb25zUmVxdWVzdCB7XG4gIHN0YXRpYyByZWFkb25seSBmVG9rZW4gPSBTeW1ib2woJ0NhbGN1bGF0ZUNvbm5lY3RhYmxlU2lkZUJ5Q29ubmVjdGVkUG9zaXRpb25zUmVxdWVzdCcpO1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgY29ubmVjdG9yOiBGQ29ubmVjdG9yQmFzZSkge31cbn1cbiJdfQ==
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { inject, Injectable } from '@angular/core';
|
|
3
|
-
import { FExecutionRegister, FMediator } from '@foblex/mediator';
|
|
4
|
-
import { CalculateConnectableSideByConnectedPositionsRequest } from './calculate-connectable-side-by-connected-positions-request';
|
|
5
|
-
import { EFConnectableSide } from '../../../../f-connectors';
|
|
6
|
-
import { PointExtensions, RectExtensions } from '@foblex/2d';
|
|
7
|
-
import { CalculateConnectableSideByInternalPositionRequest } from '../calculate-connectable-side-by-internal-position';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
/**
|
|
10
|
-
* Execution that calculates the connectable side for a connector
|
|
11
|
-
* based on the positions of its connected connectors.
|
|
12
|
-
*/
|
|
13
|
-
let CalculateConnectableSideByConnectedPositions = class CalculateConnectableSideByConnectedPositions {
|
|
14
|
-
_mediator = inject(FMediator);
|
|
15
|
-
/**
|
|
16
|
-
* Handles the request to calculate the connectable side for a connector
|
|
17
|
-
* based on the positions of its connected connectors.
|
|
18
|
-
*
|
|
19
|
-
* @param request - Contains the connector host element and its connected connectors.
|
|
20
|
-
* @returns {EFConnectableSide} - The calculated connectable side.
|
|
21
|
-
*/
|
|
22
|
-
handle({ connector, }) {
|
|
23
|
-
const selfCenter = RectExtensions.fromElement(connector.hostElement).gravityCenter;
|
|
24
|
-
const targetCenters = this._getConnectedCenters(connector.hostElement, connector.toConnector);
|
|
25
|
-
if (!targetCenters.length) {
|
|
26
|
-
return this._mediator.execute(new CalculateConnectableSideByInternalPositionRequest(connector));
|
|
27
|
-
}
|
|
28
|
-
const avg = this._calculateAveragePoint(targetCenters);
|
|
29
|
-
return this._determineSide(selfCenter, avg);
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Extracts the gravity centers of connected connectors, excluding the current connector.
|
|
33
|
-
*
|
|
34
|
-
* @param selfHost - The host element of the current connector.
|
|
35
|
-
* @param connected - The list of connected connectors.
|
|
36
|
-
* @returns {Array<{x: number, y: number}>} - An array of gravity center coordinates.
|
|
37
|
-
*/
|
|
38
|
-
_getConnectedCenters(selfHost, connected) {
|
|
39
|
-
return (connected ?? [])
|
|
40
|
-
.map((c) => c?.hostElement)
|
|
41
|
-
.filter((el) => !!el && el !== selfHost)
|
|
42
|
-
.map((el) => RectExtensions.fromElement(el).gravityCenter);
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Calculates the average point (center of mass) from a set of points.
|
|
46
|
-
*
|
|
47
|
-
* @param points - An array of point objects with x and y coordinates.
|
|
48
|
-
* @returns {{x: number, y: number}} - The average x and y coordinate.
|
|
49
|
-
*/
|
|
50
|
-
_calculateAveragePoint(points) {
|
|
51
|
-
const sum = points.reduce((result, p) => {
|
|
52
|
-
result.x += p.x;
|
|
53
|
-
result.y += p.y;
|
|
54
|
-
return result;
|
|
55
|
-
}, PointExtensions.initialize());
|
|
56
|
-
return {
|
|
57
|
-
x: sum.x / points.length,
|
|
58
|
-
y: sum.y / points.length,
|
|
59
|
-
};
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* Determines the connectable side of the current connector relative to the
|
|
63
|
-
* average position of its connected connectors.
|
|
64
|
-
*
|
|
65
|
-
* @param self - The gravity center of the current connector.
|
|
66
|
-
* @param avg - The average gravity center of connected connectors.
|
|
67
|
-
* @returns {EFConnectableSide} - The chosen side (LEFT, RIGHT, TOP, BOTTOM).
|
|
68
|
-
*/
|
|
69
|
-
_determineSide(self, avg) {
|
|
70
|
-
const dx = avg.x - self.x;
|
|
71
|
-
const dy = avg.y - self.y;
|
|
72
|
-
const snapEps = 2; // px — hysteresis threshold to avoid side-flipping near diagonals
|
|
73
|
-
if (Math.abs(dx) - Math.abs(dy) > snapEps) {
|
|
74
|
-
return dx < 0 ? EFConnectableSide.LEFT : EFConnectableSide.RIGHT;
|
|
75
|
-
}
|
|
76
|
-
if (Math.abs(dy) - Math.abs(dx) > snapEps) {
|
|
77
|
-
return dy < 0 ? EFConnectableSide.TOP : EFConnectableSide.BOTTOM;
|
|
78
|
-
}
|
|
79
|
-
// When differences are nearly equal, prefer vertical orientation for stability
|
|
80
|
-
return dy < 0 ? EFConnectableSide.TOP : EFConnectableSide.BOTTOM;
|
|
81
|
-
}
|
|
82
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateConnectableSideByConnectedPositions, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
83
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateConnectableSideByConnectedPositions });
|
|
84
|
-
};
|
|
85
|
-
CalculateConnectableSideByConnectedPositions = __decorate([
|
|
86
|
-
FExecutionRegister(CalculateConnectableSideByConnectedPositionsRequest)
|
|
87
|
-
], CalculateConnectableSideByConnectedPositions);
|
|
88
|
-
export { CalculateConnectableSideByConnectedPositions };
|
|
89
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateConnectableSideByConnectedPositions, decorators: [{
|
|
90
|
-
type: Injectable
|
|
91
|
-
}] });
|
|
92
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWNvbm5lY3RhYmxlLXNpZGUtYnktY29ubmVjdGVkLXBvc2l0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2Ytbm9kZS9jYWxjdWxhdGUtbm9kZS1jb25uZWN0b3JzLWNvbm5lY3RhYmxlLXNpZGVzL2NhbGN1bGF0ZS1jb25uZWN0YWJsZS1zaWRlLWJ5LWNvbm5lY3RlZC1wb3NpdGlvbnMvY2FsY3VsYXRlLWNvbm5lY3RhYmxlLXNpZGUtYnktY29ubmVjdGVkLXBvc2l0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxtREFBbUQsRUFBRSxNQUFNLDZEQUE2RCxDQUFDO0FBQ2xJLE9BQU8sRUFBRSxpQkFBaUIsRUFBa0IsTUFBTSwwQkFBMEIsQ0FBQztBQUM3RSxPQUFPLEVBQVUsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNyRSxPQUFPLEVBQUUsaURBQWlELEVBQUUsTUFBTSxvREFBb0QsQ0FBQzs7QUFFdkg7OztHQUdHO0FBR0ksSUFBTSw0Q0FBNEMsR0FBbEQsTUFBTSw0Q0FBNEM7SUFHdEMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUUvQzs7Ozs7O09BTUc7SUFDSSxNQUFNLENBQUMsRUFDWixTQUFTLEdBQzJDO1FBQ3BELE1BQU0sVUFBVSxHQUFHLGNBQWMsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDLGFBQWEsQ0FBQztRQUNuRixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFOUYsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUMxQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUMzQixJQUFJLGlEQUFpRCxDQUFDLFNBQVMsQ0FBQyxDQUNqRSxDQUFDO1FBQ0osQ0FBQztRQUVELE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUV2RCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSyxvQkFBb0IsQ0FDMUIsUUFBa0MsRUFDbEMsU0FBMkI7UUFFM0IsT0FBTyxDQUFDLFNBQVMsSUFBSSxFQUFFLENBQUM7YUFDckIsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsV0FBVyxDQUFDO2FBQzFCLE1BQU0sQ0FBQyxDQUFDLEVBQUUsRUFBa0MsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLFFBQVEsQ0FBQzthQUN2RSxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ssc0JBQXNCLENBQUMsTUFBZ0I7UUFDN0MsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQWMsRUFBRSxDQUFTLEVBQUUsRUFBRTtZQUN0RCxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDaEIsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBRWhCLE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUMsRUFBRSxlQUFlLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUVqQyxPQUFPO1lBQ0wsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU07WUFDeEIsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU07U0FDekIsQ0FBQztJQUNKLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ssY0FBYyxDQUNwQixJQUE4QixFQUM5QixHQUE2QjtRQUU3QixNQUFNLEVBQUUsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDMUIsTUFBTSxFQUFFLEdBQUcsR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzFCLE1BQU0sT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLGtFQUFrRTtRQUVyRixJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxPQUFPLEVBQUUsQ0FBQztZQUMxQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDO1FBQ25FLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxPQUFPLEVBQUUsQ0FBQztZQUMxQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDO1FBQ25FLENBQUM7UUFFRCwrRUFBK0U7UUFDL0UsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQztJQUNuRSxDQUFDO3dHQTNGVSw0Q0FBNEM7NEdBQTVDLDRDQUE0Qzs7QUFBNUMsNENBQTRDO0lBRHhELGtCQUFrQixDQUFDLG1EQUFtRCxDQUFDO0dBQzNELDRDQUE0QyxDQTRGeEQ7OzRGQTVGWSw0Q0FBNEM7a0JBRnhELFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBDYWxjdWxhdGVDb25uZWN0YWJsZVNpZGVCeUNvbm5lY3RlZFBvc2l0aW9uc1JlcXVlc3QgfSBmcm9tICcuL2NhbGN1bGF0ZS1jb25uZWN0YWJsZS1zaWRlLWJ5LWNvbm5lY3RlZC1wb3NpdGlvbnMtcmVxdWVzdCc7XG5pbXBvcnQgeyBFRkNvbm5lY3RhYmxlU2lkZSwgRkNvbm5lY3RvckJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi9mLWNvbm5lY3RvcnMnO1xuaW1wb3J0IHsgSVBvaW50LCBQb2ludEV4dGVuc2lvbnMsIFJlY3RFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBDYWxjdWxhdGVDb25uZWN0YWJsZVNpZGVCeUludGVybmFsUG9zaXRpb25SZXF1ZXN0IH0gZnJvbSAnLi4vY2FsY3VsYXRlLWNvbm5lY3RhYmxlLXNpZGUtYnktaW50ZXJuYWwtcG9zaXRpb24nO1xuXG4vKipcbiAqIEV4ZWN1dGlvbiB0aGF0IGNhbGN1bGF0ZXMgdGhlIGNvbm5lY3RhYmxlIHNpZGUgZm9yIGEgY29ubmVjdG9yXG4gKiBiYXNlZCBvbiB0aGUgcG9zaXRpb25zIG9mIGl0cyBjb25uZWN0ZWQgY29ubmVjdG9ycy5cbiAqL1xuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihDYWxjdWxhdGVDb25uZWN0YWJsZVNpZGVCeUNvbm5lY3RlZFBvc2l0aW9uc1JlcXVlc3QpXG5leHBvcnQgY2xhc3MgQ2FsY3VsYXRlQ29ubmVjdGFibGVTaWRlQnlDb25uZWN0ZWRQb3NpdGlvbnNcbiAgaW1wbGVtZW50cyBJRXhlY3V0aW9uPENhbGN1bGF0ZUNvbm5lY3RhYmxlU2lkZUJ5Q29ubmVjdGVkUG9zaXRpb25zUmVxdWVzdCwgRUZDb25uZWN0YWJsZVNpZGU+XG57XG4gIHByaXZhdGUgcmVhZG9ubHkgX21lZGlhdG9yID0gaW5qZWN0KEZNZWRpYXRvcik7XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMgdGhlIHJlcXVlc3QgdG8gY2FsY3VsYXRlIHRoZSBjb25uZWN0YWJsZSBzaWRlIGZvciBhIGNvbm5lY3RvclxuICAgKiBiYXNlZCBvbiB0aGUgcG9zaXRpb25zIG9mIGl0cyBjb25uZWN0ZWQgY29ubmVjdG9ycy5cbiAgICpcbiAgICogQHBhcmFtIHJlcXVlc3QgLSBDb250YWlucyB0aGUgY29ubmVjdG9yIGhvc3QgZWxlbWVudCBhbmQgaXRzIGNvbm5lY3RlZCBjb25uZWN0b3JzLlxuICAgKiBAcmV0dXJucyB7RUZDb25uZWN0YWJsZVNpZGV9IC0gVGhlIGNhbGN1bGF0ZWQgY29ubmVjdGFibGUgc2lkZS5cbiAgICovXG4gIHB1YmxpYyBoYW5kbGUoe1xuICAgIGNvbm5lY3RvcixcbiAgfTogQ2FsY3VsYXRlQ29ubmVjdGFibGVTaWRlQnlDb25uZWN0ZWRQb3NpdGlvbnNSZXF1ZXN0KTogRUZDb25uZWN0YWJsZVNpZGUge1xuICAgIGNvbnN0IHNlbGZDZW50ZXIgPSBSZWN0RXh0ZW5zaW9ucy5mcm9tRWxlbWVudChjb25uZWN0b3IuaG9zdEVsZW1lbnQpLmdyYXZpdHlDZW50ZXI7XG4gICAgY29uc3QgdGFyZ2V0Q2VudGVycyA9IHRoaXMuX2dldENvbm5lY3RlZENlbnRlcnMoY29ubmVjdG9yLmhvc3RFbGVtZW50LCBjb25uZWN0b3IudG9Db25uZWN0b3IpO1xuXG4gICAgaWYgKCF0YXJnZXRDZW50ZXJzLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUoXG4gICAgICAgIG5ldyBDYWxjdWxhdGVDb25uZWN0YWJsZVNpZGVCeUludGVybmFsUG9zaXRpb25SZXF1ZXN0KGNvbm5lY3RvciksXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IGF2ZyA9IHRoaXMuX2NhbGN1bGF0ZUF2ZXJhZ2VQb2ludCh0YXJnZXRDZW50ZXJzKTtcblxuICAgIHJldHVybiB0aGlzLl9kZXRlcm1pbmVTaWRlKHNlbGZDZW50ZXIsIGF2Zyk7XG4gIH1cblxuICAvKipcbiAgICogRXh0cmFjdHMgdGhlIGdyYXZpdHkgY2VudGVycyBvZiBjb25uZWN0ZWQgY29ubmVjdG9ycywgZXhjbHVkaW5nIHRoZSBjdXJyZW50IGNvbm5lY3Rvci5cbiAgICpcbiAgICogQHBhcmFtIHNlbGZIb3N0IC0gVGhlIGhvc3QgZWxlbWVudCBvZiB0aGUgY3VycmVudCBjb25uZWN0b3IuXG4gICAqIEBwYXJhbSBjb25uZWN0ZWQgLSBUaGUgbGlzdCBvZiBjb25uZWN0ZWQgY29ubmVjdG9ycy5cbiAgICogQHJldHVybnMge0FycmF5PHt4OiBudW1iZXIsIHk6IG51bWJlcn0+fSAtIEFuIGFycmF5IG9mIGdyYXZpdHkgY2VudGVyIGNvb3JkaW5hdGVzLlxuICAgKi9cbiAgcHJpdmF0ZSBfZ2V0Q29ubmVjdGVkQ2VudGVycyhcbiAgICBzZWxmSG9zdDogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50LFxuICAgIGNvbm5lY3RlZDogRkNvbm5lY3RvckJhc2VbXSxcbiAgKTogeyB4OiBudW1iZXI7IHk6IG51bWJlciB9W10ge1xuICAgIHJldHVybiAoY29ubmVjdGVkID8/IFtdKVxuICAgICAgLm1hcCgoYykgPT4gYz8uaG9zdEVsZW1lbnQpXG4gICAgICAuZmlsdGVyKChlbCk6IGVsIGlzIEhUTUxFbGVtZW50IHwgU1ZHRWxlbWVudCA9PiAhIWVsICYmIGVsICE9PSBzZWxmSG9zdClcbiAgICAgIC5tYXAoKGVsKSA9PiBSZWN0RXh0ZW5zaW9ucy5mcm9tRWxlbWVudChlbCkuZ3Jhdml0eUNlbnRlcik7XG4gIH1cblxuICAvKipcbiAgICogQ2FsY3VsYXRlcyB0aGUgYXZlcmFnZSBwb2ludCAoY2VudGVyIG9mIG1hc3MpIGZyb20gYSBzZXQgb2YgcG9pbnRzLlxuICAgKlxuICAgKiBAcGFyYW0gcG9pbnRzIC0gQW4gYXJyYXkgb2YgcG9pbnQgb2JqZWN0cyB3aXRoIHggYW5kIHkgY29vcmRpbmF0ZXMuXG4gICAqIEByZXR1cm5zIHt7eDogbnVtYmVyLCB5OiBudW1iZXJ9fSAtIFRoZSBhdmVyYWdlIHggYW5kIHkgY29vcmRpbmF0ZS5cbiAgICovXG4gIHByaXZhdGUgX2NhbGN1bGF0ZUF2ZXJhZ2VQb2ludChwb2ludHM6IElQb2ludFtdKTogSVBvaW50IHtcbiAgICBjb25zdCBzdW0gPSBwb2ludHMucmVkdWNlKChyZXN1bHQ6IElQb2ludCwgcDogSVBvaW50KSA9PiB7XG4gICAgICByZXN1bHQueCArPSBwLng7XG4gICAgICByZXN1bHQueSArPSBwLnk7XG5cbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSwgUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoKSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgeDogc3VtLnggLyBwb2ludHMubGVuZ3RoLFxuICAgICAgeTogc3VtLnkgLyBwb2ludHMubGVuZ3RoLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB0aGUgY29ubmVjdGFibGUgc2lkZSBvZiB0aGUgY3VycmVudCBjb25uZWN0b3IgcmVsYXRpdmUgdG8gdGhlXG4gICAqIGF2ZXJhZ2UgcG9zaXRpb24gb2YgaXRzIGNvbm5lY3RlZCBjb25uZWN0b3JzLlxuICAgKlxuICAgKiBAcGFyYW0gc2VsZiAtIFRoZSBncmF2aXR5IGNlbnRlciBvZiB0aGUgY3VycmVudCBjb25uZWN0b3IuXG4gICAqIEBwYXJhbSBhdmcgLSBUaGUgYXZlcmFnZSBncmF2aXR5IGNlbnRlciBvZiBjb25uZWN0ZWQgY29ubmVjdG9ycy5cbiAgICogQHJldHVybnMge0VGQ29ubmVjdGFibGVTaWRlfSAtIFRoZSBjaG9zZW4gc2lkZSAoTEVGVCwgUklHSFQsIFRPUCwgQk9UVE9NKS5cbiAgICovXG4gIHByaXZhdGUgX2RldGVybWluZVNpZGUoXG4gICAgc2VsZjogeyB4OiBudW1iZXI7IHk6IG51bWJlciB9LFxuICAgIGF2ZzogeyB4OiBudW1iZXI7IHk6IG51bWJlciB9LFxuICApOiBFRkNvbm5lY3RhYmxlU2lkZSB7XG4gICAgY29uc3QgZHggPSBhdmcueCAtIHNlbGYueDtcbiAgICBjb25zdCBkeSA9IGF2Zy55IC0gc2VsZi55O1xuICAgIGNvbnN0IHNuYXBFcHMgPSAyOyAvLyBweCDigJQgaHlzdGVyZXNpcyB0aHJlc2hvbGQgdG8gYXZvaWQgc2lkZS1mbGlwcGluZyBuZWFyIGRpYWdvbmFsc1xuXG4gICAgaWYgKE1hdGguYWJzKGR4KSAtIE1hdGguYWJzKGR5KSA+IHNuYXBFcHMpIHtcbiAgICAgIHJldHVybiBkeCA8IDAgPyBFRkNvbm5lY3RhYmxlU2lkZS5MRUZUIDogRUZDb25uZWN0YWJsZVNpZGUuUklHSFQ7XG4gICAgfVxuICAgIGlmIChNYXRoLmFicyhkeSkgLSBNYXRoLmFicyhkeCkgPiBzbmFwRXBzKSB7XG4gICAgICByZXR1cm4gZHkgPCAwID8gRUZDb25uZWN0YWJsZVNpZGUuVE9QIDogRUZDb25uZWN0YWJsZVNpZGUuQk9UVE9NO1xuICAgIH1cblxuICAgIC8vIFdoZW4gZGlmZmVyZW5jZXMgYXJlIG5lYXJseSBlcXVhbCwgcHJlZmVyIHZlcnRpY2FsIG9yaWVudGF0aW9uIGZvciBzdGFiaWxpdHlcbiAgICByZXR1cm4gZHkgPCAwID8gRUZDb25uZWN0YWJsZVNpZGUuVE9QIDogRUZDb25uZWN0YWJsZVNpZGUuQk9UVE9NO1xuICB9XG59XG4iXX0=
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './calculate-connectable-side-by-connected-positions';
|
|
2
|
-
export * from './calculate-connectable-side-by-connected-positions-request';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLW5vZGUvY2FsY3VsYXRlLW5vZGUtY29ubmVjdG9ycy1jb25uZWN0YWJsZS1zaWRlcy9jYWxjdWxhdGUtY29ubmVjdGFibGUtc2lkZS1ieS1jb25uZWN0ZWQtcG9zaXRpb25zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMscURBQXFELENBQUM7QUFFcEUsY0FBYyw2REFBNkQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2FsY3VsYXRlLWNvbm5lY3RhYmxlLXNpZGUtYnktY29ubmVjdGVkLXBvc2l0aW9ucyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vY2FsY3VsYXRlLWNvbm5lY3RhYmxlLXNpZGUtYnktY29ubmVjdGVkLXBvc2l0aW9ucy1yZXF1ZXN0JztcbiJdfQ==
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export class CalculateConnectableSideByInternalPositionRequest {
|
|
2
|
-
connector;
|
|
3
|
-
static fToken = Symbol('CalculateConnectableSideByInternalPositionRequest');
|
|
4
|
-
constructor(connector) {
|
|
5
|
-
this.connector = connector;
|
|
6
|
-
}
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWNvbm5lY3RhYmxlLXNpZGUtYnktaW50ZXJuYWwtcG9zaXRpb24tcmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2Ytbm9kZS9jYWxjdWxhdGUtbm9kZS1jb25uZWN0b3JzLWNvbm5lY3RhYmxlLXNpZGVzL2NhbGN1bGF0ZS1jb25uZWN0YWJsZS1zaWRlLWJ5LWludGVybmFsLXBvc2l0aW9uL2NhbGN1bGF0ZS1jb25uZWN0YWJsZS1zaWRlLWJ5LWludGVybmFsLXBvc2l0aW9uLXJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLGlEQUFpRDtJQUVoQztJQUQ1QixNQUFNLENBQVUsTUFBTSxHQUFHLE1BQU0sQ0FBQyxtREFBbUQsQ0FBQyxDQUFDO0lBQ3JGLFlBQTRCLFNBQXlCO1FBQXpCLGNBQVMsR0FBVCxTQUFTLENBQWdCO0lBQUcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZDb25uZWN0b3JCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZi1jb25uZWN0b3JzJztcblxuZXhwb3J0IGNsYXNzIENhbGN1bGF0ZUNvbm5lY3RhYmxlU2lkZUJ5SW50ZXJuYWxQb3NpdGlvblJlcXVlc3Qge1xuICBzdGF0aWMgcmVhZG9ubHkgZlRva2VuID0gU3ltYm9sKCdDYWxjdWxhdGVDb25uZWN0YWJsZVNpZGVCeUludGVybmFsUG9zaXRpb25SZXF1ZXN0Jyk7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSBjb25uZWN0b3I6IEZDb25uZWN0b3JCYXNlKSB7fVxufVxuIl19
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { Injectable } from '@angular/core';
|
|
3
|
-
import { FExecutionRegister } from '@foblex/mediator';
|
|
4
|
-
import { CalculateConnectableSideByInternalPositionRequest } from './calculate-connectable-side-by-internal-position-request';
|
|
5
|
-
import { EFConnectableSide } from '../../../../f-connectors';
|
|
6
|
-
import { RectExtensions } from '@foblex/2d';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
/**
|
|
9
|
-
* Execution that calculates the connectable side for a connector
|
|
10
|
-
* based on the internal position of the connector relative to its node host.
|
|
11
|
-
*/
|
|
12
|
-
let CalculateConnectableSideByInternalPosition = class CalculateConnectableSideByInternalPosition {
|
|
13
|
-
handle({ connector, }) {
|
|
14
|
-
return this._getSideByDelta(connector.hostElement, connector.fNodeHost);
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Determines the side of the connector relative to the node host based on the minimum distance.
|
|
18
|
-
* @param connectorHost
|
|
19
|
-
* @param nodeHost
|
|
20
|
-
* @private
|
|
21
|
-
*/
|
|
22
|
-
_getSideByDelta(connectorHost, nodeHost) {
|
|
23
|
-
let result;
|
|
24
|
-
const childRect = RectExtensions.fromElement(connectorHost);
|
|
25
|
-
const parentRect = nodeHost.getBoundingClientRect();
|
|
26
|
-
const deltaLeft = childRect.gravityCenter.x - parentRect.left;
|
|
27
|
-
const deltaRight = parentRect.right - childRect.gravityCenter.x;
|
|
28
|
-
const deltaTop = childRect.gravityCenter.y - parentRect.top;
|
|
29
|
-
const deltaBottom = parentRect.bottom - childRect.gravityCenter.y;
|
|
30
|
-
const minDelta = Math.min(deltaLeft, deltaRight, deltaTop, deltaBottom);
|
|
31
|
-
if (minDelta === deltaLeft) {
|
|
32
|
-
result = EFConnectableSide.LEFT;
|
|
33
|
-
}
|
|
34
|
-
else if (minDelta === deltaRight) {
|
|
35
|
-
result = EFConnectableSide.RIGHT;
|
|
36
|
-
}
|
|
37
|
-
else if (minDelta === deltaTop) {
|
|
38
|
-
result = EFConnectableSide.TOP;
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
result = EFConnectableSide.BOTTOM;
|
|
42
|
-
}
|
|
43
|
-
return result;
|
|
44
|
-
}
|
|
45
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateConnectableSideByInternalPosition, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
46
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateConnectableSideByInternalPosition });
|
|
47
|
-
};
|
|
48
|
-
CalculateConnectableSideByInternalPosition = __decorate([
|
|
49
|
-
FExecutionRegister(CalculateConnectableSideByInternalPositionRequest)
|
|
50
|
-
], CalculateConnectableSideByInternalPosition);
|
|
51
|
-
export { CalculateConnectableSideByInternalPosition };
|
|
52
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateConnectableSideByInternalPosition, decorators: [{
|
|
53
|
-
type: Injectable
|
|
54
|
-
}] });
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWNvbm5lY3RhYmxlLXNpZGUtYnktaW50ZXJuYWwtcG9zaXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLW5vZGUvY2FsY3VsYXRlLW5vZGUtY29ubmVjdG9ycy1jb25uZWN0YWJsZS1zaWRlcy9jYWxjdWxhdGUtY29ubmVjdGFibGUtc2lkZS1ieS1pbnRlcm5hbC1wb3NpdGlvbi9jYWxjdWxhdGUtY29ubmVjdGFibGUtc2lkZS1ieS1pbnRlcm5hbC1wb3NpdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsaURBQWlELEVBQUUsTUFBTSwyREFBMkQsQ0FBQztBQUM5SCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sWUFBWSxDQUFDOztBQUU1Qzs7O0dBR0c7QUFHSSxJQUFNLDBDQUEwQyxHQUFoRCxNQUFNLDBDQUEwQztJQUc5QyxNQUFNLENBQUMsRUFDWixTQUFTLEdBQ3lDO1FBQ2xELE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSyxlQUFlLENBQ3JCLGFBQXVDLEVBQ3ZDLFFBQWtDO1FBRWxDLElBQUksTUFBcUMsQ0FBQztRQUUxQyxNQUFNLFNBQVMsR0FBRyxjQUFjLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzVELE1BQU0sVUFBVSxHQUFHLFFBQVEsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBRXBELE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUM7UUFDOUQsTUFBTSxVQUFVLEdBQUcsVUFBVSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztRQUNoRSxNQUFNLFFBQVEsR0FBRyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDO1FBQzVELE1BQU0sV0FBVyxHQUFHLFVBQVUsQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7UUFFbEUsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUV4RSxJQUFJLFFBQVEsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUMzQixNQUFNLEdBQUcsaUJBQWlCLENBQUMsSUFBSSxDQUFDO1FBQ2xDLENBQUM7YUFBTSxJQUFJLFFBQVEsS0FBSyxVQUFVLEVBQUUsQ0FBQztZQUNuQyxNQUFNLEdBQUcsaUJBQWlCLENBQUMsS0FBSyxDQUFDO1FBQ25DLENBQUM7YUFBTSxJQUFJLFFBQVEsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUNqQyxNQUFNLEdBQUcsaUJBQWlCLENBQUMsR0FBRyxDQUFDO1FBQ2pDLENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQztRQUNwQyxDQUFDO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQzt3R0ExQ1UsMENBQTBDOzRHQUExQywwQ0FBMEM7O0FBQTFDLDBDQUEwQztJQUR0RCxrQkFBa0IsQ0FBQyxpREFBaUQsQ0FBQztHQUN6RCwwQ0FBMEMsQ0EyQ3REOzs0RkEzQ1ksMENBQTBDO2tCQUZ0RCxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBDYWxjdWxhdGVDb25uZWN0YWJsZVNpZGVCeUludGVybmFsUG9zaXRpb25SZXF1ZXN0IH0gZnJvbSAnLi9jYWxjdWxhdGUtY29ubmVjdGFibGUtc2lkZS1ieS1pbnRlcm5hbC1wb3NpdGlvbi1yZXF1ZXN0JztcbmltcG9ydCB7IEVGQ29ubmVjdGFibGVTaWRlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZi1jb25uZWN0b3JzJztcbmltcG9ydCB7IFJlY3RFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC8yZCc7XG5cbi8qKlxuICogRXhlY3V0aW9uIHRoYXQgY2FsY3VsYXRlcyB0aGUgY29ubmVjdGFibGUgc2lkZSBmb3IgYSBjb25uZWN0b3JcbiAqIGJhc2VkIG9uIHRoZSBpbnRlcm5hbCBwb3NpdGlvbiBvZiB0aGUgY29ubmVjdG9yIHJlbGF0aXZlIHRvIGl0cyBub2RlIGhvc3QuXG4gKi9cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoQ2FsY3VsYXRlQ29ubmVjdGFibGVTaWRlQnlJbnRlcm5hbFBvc2l0aW9uUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBDYWxjdWxhdGVDb25uZWN0YWJsZVNpZGVCeUludGVybmFsUG9zaXRpb25cbiAgaW1wbGVtZW50cyBJRXhlY3V0aW9uPENhbGN1bGF0ZUNvbm5lY3RhYmxlU2lkZUJ5SW50ZXJuYWxQb3NpdGlvblJlcXVlc3QsIEVGQ29ubmVjdGFibGVTaWRlPlxue1xuICBwdWJsaWMgaGFuZGxlKHtcbiAgICBjb25uZWN0b3IsXG4gIH06IENhbGN1bGF0ZUNvbm5lY3RhYmxlU2lkZUJ5SW50ZXJuYWxQb3NpdGlvblJlcXVlc3QpOiBFRkNvbm5lY3RhYmxlU2lkZSB7XG4gICAgcmV0dXJuIHRoaXMuX2dldFNpZGVCeURlbHRhKGNvbm5lY3Rvci5ob3N0RWxlbWVudCwgY29ubmVjdG9yLmZOb2RlSG9zdCk7XG4gIH1cblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB0aGUgc2lkZSBvZiB0aGUgY29ubmVjdG9yIHJlbGF0aXZlIHRvIHRoZSBub2RlIGhvc3QgYmFzZWQgb24gdGhlIG1pbmltdW0gZGlzdGFuY2UuXG4gICAqIEBwYXJhbSBjb25uZWN0b3JIb3N0XG4gICAqIEBwYXJhbSBub2RlSG9zdFxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgcHJpdmF0ZSBfZ2V0U2lkZUJ5RGVsdGEoXG4gICAgY29ubmVjdG9ySG9zdDogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50LFxuICAgIG5vZGVIb3N0OiBIVE1MRWxlbWVudCB8IFNWR0VsZW1lbnQsXG4gICk6IEVGQ29ubmVjdGFibGVTaWRlIHtcbiAgICBsZXQgcmVzdWx0OiBFRkNvbm5lY3RhYmxlU2lkZSB8IHVuZGVmaW5lZDtcblxuICAgIGNvbnN0IGNoaWxkUmVjdCA9IFJlY3RFeHRlbnNpb25zLmZyb21FbGVtZW50KGNvbm5lY3Rvckhvc3QpO1xuICAgIGNvbnN0IHBhcmVudFJlY3QgPSBub2RlSG9zdC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgIGNvbnN0IGRlbHRhTGVmdCA9IGNoaWxkUmVjdC5ncmF2aXR5Q2VudGVyLnggLSBwYXJlbnRSZWN0LmxlZnQ7XG4gICAgY29uc3QgZGVsdGFSaWdodCA9IHBhcmVudFJlY3QucmlnaHQgLSBjaGlsZFJlY3QuZ3Jhdml0eUNlbnRlci54O1xuICAgIGNvbnN0IGRlbHRhVG9wID0gY2hpbGRSZWN0LmdyYXZpdHlDZW50ZXIueSAtIHBhcmVudFJlY3QudG9wO1xuICAgIGNvbnN0IGRlbHRhQm90dG9tID0gcGFyZW50UmVjdC5ib3R0b20gLSBjaGlsZFJlY3QuZ3Jhdml0eUNlbnRlci55O1xuXG4gICAgY29uc3QgbWluRGVsdGEgPSBNYXRoLm1pbihkZWx0YUxlZnQsIGRlbHRhUmlnaHQsIGRlbHRhVG9wLCBkZWx0YUJvdHRvbSk7XG5cbiAgICBpZiAobWluRGVsdGEgPT09IGRlbHRhTGVmdCkge1xuICAgICAgcmVzdWx0ID0gRUZDb25uZWN0YWJsZVNpZGUuTEVGVDtcbiAgICB9IGVsc2UgaWYgKG1pbkRlbHRhID09PSBkZWx0YVJpZ2h0KSB7XG4gICAgICByZXN1bHQgPSBFRkNvbm5lY3RhYmxlU2lkZS5SSUdIVDtcbiAgICB9IGVsc2UgaWYgKG1pbkRlbHRhID09PSBkZWx0YVRvcCkge1xuICAgICAgcmVzdWx0ID0gRUZDb25uZWN0YWJsZVNpZGUuVE9QO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXN1bHQgPSBFRkNvbm5lY3RhYmxlU2lkZS5CT1RUT007XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxufVxuIl19
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './calculate-connectable-side-by-internal-position';
|
|
2
|
-
export * from './calculate-connectable-side-by-internal-position-request';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLW5vZGUvY2FsY3VsYXRlLW5vZGUtY29ubmVjdG9ycy1jb25uZWN0YWJsZS1zaWRlcy9jYWxjdWxhdGUtY29ubmVjdGFibGUtc2lkZS1ieS1pbnRlcm5hbC1wb3NpdGlvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1EQUFtRCxDQUFDO0FBRWxFLGNBQWMsMkRBQTJELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NhbGN1bGF0ZS1jb25uZWN0YWJsZS1zaWRlLWJ5LWludGVybmFsLXBvc2l0aW9uJztcblxuZXhwb3J0ICogZnJvbSAnLi9jYWxjdWxhdGUtY29ubmVjdGFibGUtc2lkZS1ieS1pbnRlcm5hbC1wb3NpdGlvbi1yZXF1ZXN0JztcbiJdfQ==
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export class CalculateNodeConnectorsConnectableSidesRequest {
|
|
2
|
-
node;
|
|
3
|
-
static fToken = Symbol('CalculateNodeConnectorsConnectableSidesRequest');
|
|
4
|
-
constructor(node) {
|
|
5
|
-
this.node = node;
|
|
6
|
-
}
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLW5vZGUtY29ubmVjdG9ycy1jb25uZWN0YWJsZS1zaWRlcy1yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1ub2RlL2NhbGN1bGF0ZS1ub2RlLWNvbm5lY3RvcnMtY29ubmVjdGFibGUtc2lkZXMvY2FsY3VsYXRlLW5vZGUtY29ubmVjdG9ycy1jb25uZWN0YWJsZS1zaWRlcy1yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyw4Q0FBOEM7SUFFN0I7SUFENUIsTUFBTSxDQUFVLE1BQU0sR0FBRyxNQUFNLENBQUMsZ0RBQWdELENBQUMsQ0FBQztJQUNsRixZQUE0QixJQUFlO1FBQWYsU0FBSSxHQUFKLElBQUksQ0FBVztJQUFHLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGTm9kZUJhc2UgfSBmcm9tICcuLi8uLi8uLi9mLW5vZGUnO1xuXG5leHBvcnQgY2xhc3MgQ2FsY3VsYXRlTm9kZUNvbm5lY3RvcnNDb25uZWN0YWJsZVNpZGVzUmVxdWVzdCB7XG4gIHN0YXRpYyByZWFkb25seSBmVG9rZW4gPSBTeW1ib2woJ0NhbGN1bGF0ZU5vZGVDb25uZWN0b3JzQ29ubmVjdGFibGVTaWRlc1JlcXVlc3QnKTtcbiAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IG5vZGU6IEZOb2RlQmFzZSkge31cbn1cbiJdfQ==
|