@foblex/flow 17.0.9 → 17.1.0
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-background/providers.d.ts +1 -1
- package/domain/f-canvas/providers.d.ts +1 -1
- package/domain/f-draggable/providers.d.ts +1 -1
- package/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.d.ts +2 -3
- package/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.d.ts +2 -2
- package/domain/f-flow/get-flow-state/get-flow-state.execution.d.ts +4 -6
- package/domain/f-flow/get-flow-state/providers.d.ts +1 -1
- package/domain/f-flow/providers.d.ts +1 -1
- package/domain/f-node/calculate-nodes-bounding-box-normalized-position/calculate-nodes-bounding-box-normalized-position.request.d.ts +3 -0
- package/domain/f-node/providers.d.ts +1 -1
- package/domain/index.d.ts +1 -0
- package/domain/log-execution-time.d.ts +1 -0
- package/domain/providers.d.ts +1 -1
- package/esm2022/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.mjs +17 -19
- package/esm2022/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.mjs +5 -5
- package/esm2022/domain/f-flow/get-flow-state/get-flow-state.execution.mjs +14 -19
- package/esm2022/domain/f-line-alignment/add-line-alignment-to-store/add-line-alignment-to-store.execution.mjs +2 -2
- package/esm2022/domain/f-line-alignment/remove-line-alignment-from-store/remove-line-alignment-from-store.execution.mjs +2 -2
- package/esm2022/domain/f-node/calculate-nodes-bounding-box-normalized-position/calculate-nodes-bounding-box-normalized-position.execution.mjs +4 -4
- package/esm2022/domain/f-node/calculate-nodes-bounding-box-normalized-position/calculate-nodes-bounding-box-normalized-position.request.mjs +5 -1
- package/esm2022/domain/index.mjs +2 -1
- package/esm2022/domain/log-execution-time.mjs +16 -0
- package/esm2022/f-draggable/connections/create-connection/create-connection.drag-handler.mjs +3 -3
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.execution.mjs +33 -33
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.execution.mjs +1 -1
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.mjs +9 -3
- package/esm2022/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.execution.mjs +8 -17
- package/esm2022/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.request.mjs +6 -6
- package/esm2022/f-draggable/domain/is-connection-under-node/is-connection-under-node.execution.mjs +25 -19
- package/esm2022/f-draggable/f-draggable-data-context.mjs +4 -2
- package/esm2022/f-draggable/node/connection-base-drag-handler.mjs +1 -1
- package/esm2022/f-draggable/node/connection-source.drag-handler.mjs +5 -7
- package/esm2022/f-draggable/node/connection-target.drag-handler.mjs +5 -7
- package/esm2022/f-draggable/node/connection.drag-handler.mjs +5 -5
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.mjs +37 -22
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/calculate-common-node-move-restrictions.execution.mjs +40 -0
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/calculate-common-node-move-restrictions.request.mjs +7 -0
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/index.mjs +3 -0
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-restrictions/calculate-node-move-restrictions.execution.mjs +42 -0
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-restrictions/calculate-node-move-restrictions.request.mjs +9 -0
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-restrictions/index.mjs +3 -0
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.execution.mjs +16 -21
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.execution.mjs +4 -4
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/i-node-with-distance-restrictions.mjs +1 -1
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/index.mjs +3 -2
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/providers.mjs +5 -3
- package/esm2022/f-draggable/node/index.mjs +3 -1
- package/esm2022/f-draggable/node/line-alignment-preparation/index.mjs +3 -0
- package/esm2022/f-draggable/node/line-alignment-preparation/line-alignment-preparation.execution.mjs +67 -0
- package/esm2022/f-draggable/node/line-alignment-preparation/line-alignment-preparation.request.mjs +3 -0
- package/esm2022/f-draggable/node/line-alignment.drag-handler.mjs +61 -0
- package/esm2022/f-draggable/node/node-move-finalize/node-move-finalize.execution.mjs +5 -3
- package/esm2022/f-draggable/node/node-move-preparation/index.mjs +1 -2
- package/esm2022/f-draggable/node/node-move-preparation/node-move-preparation.execution.mjs +26 -21
- package/esm2022/f-draggable/node/node-move-preparation/providers.mjs +1 -3
- package/esm2022/f-draggable/node/node.drag-handler.mjs +13 -19
- package/esm2022/f-draggable/node/providers.mjs +3 -1
- package/esm2022/f-line-alignment/f-line-alignment-base.mjs +1 -1
- package/esm2022/f-line-alignment/f-line-alignment.component.mjs +12 -78
- package/esm2022/f-storage/f-components-store.mjs +2 -1
- package/f-backgroud/providers.d.ts +1 -1
- package/f-connection/providers.d.ts +1 -1
- package/f-connectors/providers.d.ts +1 -1
- package/f-draggable/connections/providers.d.ts +1 -1
- package/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.execution.d.ts +12 -13
- package/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.d.ts +2 -0
- package/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.execution.d.ts +3 -6
- package/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.request.d.ts +3 -3
- package/f-draggable/domain/is-connection-under-node/is-connection-under-node.execution.d.ts +3 -2
- package/f-draggable/domain/providers.d.ts +1 -1
- package/f-draggable/f-draggable-data-context.d.ts +1 -2
- package/f-draggable/node/connection-base-drag-handler.d.ts +2 -3
- package/f-draggable/node/connection-source.drag-handler.d.ts +3 -4
- package/f-draggable/node/connection-target.drag-handler.d.ts +3 -4
- package/f-draggable/node/connection.drag-handler.d.ts +3 -3
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.d.ts +6 -3
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/calculate-common-node-move-restrictions.execution.d.ts +13 -0
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/calculate-common-node-move-restrictions.request.d.ts +5 -0
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/index.d.ts +2 -0
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-restrictions/calculate-node-move-restrictions.execution.d.ts +12 -0
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/{get-node-move-restrictions/get-node-move-restrictions.request.d.ts → calculate-node-move-restrictions/calculate-node-move-restrictions.request.d.ts} +1 -1
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-restrictions/index.d.ts +2 -0
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.execution.d.ts +4 -6
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/i-node-with-distance-restrictions.d.ts +4 -4
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/index.d.ts +2 -1
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/providers.d.ts +3 -2
- package/f-draggable/node/index.d.ts +2 -0
- package/f-draggable/node/line-alignment-preparation/index.d.ts +2 -0
- package/f-draggable/node/line-alignment-preparation/line-alignment-preparation.execution.d.ts +21 -0
- package/f-draggable/node/line-alignment-preparation/line-alignment-preparation.request.d.ts +2 -0
- package/f-draggable/node/line-alignment.drag-handler.d.ts +20 -0
- package/f-draggable/node/node-move-preparation/index.d.ts +0 -1
- package/f-draggable/node/node-move-preparation/node-move-preparation.execution.d.ts +4 -3
- package/f-draggable/node/node-move-preparation/providers.d.ts +1 -2
- package/f-draggable/node/node.drag-handler.d.ts +4 -7
- package/f-draggable/node/providers.d.ts +2 -1
- package/f-draggable/node-resize/node-resize-preparation/providers.d.ts +1 -1
- package/f-draggable/node-resize/providers.d.ts +1 -1
- package/f-draggable/providers.d.ts +1 -1
- package/f-line-alignment/f-line-alignment-base.d.ts +2 -8
- package/f-line-alignment/f-line-alignment.component.d.ts +6 -25
- package/f-node/providers.d.ts +1 -1
- package/f-storage/f-components-store.d.ts +2 -0
- package/f-storage/providers.d.ts +1 -1
- package/fesm2022/foblex-flow.mjs +638 -544
- package/fesm2022/foblex-flow.mjs.map +1 -1
- package/package.json +2 -2
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/get-node-move-restrictions.execution.mjs +0 -42
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/get-node-move-restrictions.request.mjs +0 -9
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/i-node-move-restrictions.mjs +0 -2
- package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/index.mjs +0 -4
- package/esm2022/f-draggable/node/node-move-preparation/node-move-preparation.validator.mjs +0 -39
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/get-node-move-restrictions.execution.d.ts +0 -12
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/i-node-move-restrictions.d.ts +0 -5
- package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/index.d.ts +0 -3
- package/f-draggable/node/node-move-preparation/node-move-preparation.validator.d.ts +0 -14
|
@@ -1,88 +1,22 @@
|
|
|
1
|
-
import { Component, inject, Input } from '@angular/core';
|
|
2
|
-
import { findClosestAlignment, RectExtensions, SizeExtensions } from '@foblex/2d';
|
|
3
|
-
import { LineService } from './domain';
|
|
1
|
+
import { Component, ElementRef, inject, Input } from '@angular/core';
|
|
4
2
|
import { F_LINE_ALIGNMENT, FLineAlignmentBase } from './f-line-alignment-base';
|
|
5
|
-
import {
|
|
3
|
+
import { RemoveLineAlignmentFromStoreRequest, AddLineAlignmentToStoreRequest, } from '../domain';
|
|
6
4
|
import { FMediator } from '@foblex/mediator';
|
|
7
5
|
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "../f-draggable";
|
|
9
|
-
import * as i2 from "@foblex/platform";
|
|
10
6
|
export class FLineAlignmentComponent extends FLineAlignmentBase {
|
|
11
|
-
elementReference;
|
|
12
|
-
fDraggableDataContext;
|
|
13
|
-
DEBOUNCE_TIME = 10;
|
|
14
7
|
fAlignThreshold = 10;
|
|
15
|
-
get hostElement() {
|
|
16
|
-
return this.elementReference.nativeElement;
|
|
17
|
-
}
|
|
18
|
-
lineService;
|
|
19
|
-
size = SizeExtensions.initialize();
|
|
20
|
-
draggedNodeRect = RectExtensions.initialize();
|
|
21
|
-
rects = [];
|
|
22
8
|
_fMediator = inject(FMediator);
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
return this._fCanvas.transform;
|
|
27
|
-
}
|
|
28
|
-
constructor(elementReference, fDraggableDataContext, fBrowser) {
|
|
29
|
-
super();
|
|
30
|
-
this.elementReference = elementReference;
|
|
31
|
-
this.fDraggableDataContext = fDraggableDataContext;
|
|
32
|
-
this.lineService = new LineService(fBrowser, this.hostElement);
|
|
33
|
-
}
|
|
34
|
-
ngAfterViewInit() {
|
|
35
|
-
this._fCanvas = this._fMediator.send(new GetCanvasRequest());
|
|
36
|
-
this.fDraggableDataContext.fLineAlignment = this;
|
|
37
|
-
}
|
|
38
|
-
initialize(allNodes, currentNodes) {
|
|
39
|
-
this.size = this._fMediator.send(new GetFlowHostElementRequest()).getBoundingClientRect();
|
|
40
|
-
this.rects = [];
|
|
41
|
-
const draggedNodeRects = currentNodes.map((x) => {
|
|
42
|
-
return this._fMediator.execute(new GetNormalizedElementRectRequest(x.hostElement, false));
|
|
43
|
-
});
|
|
44
|
-
this.draggedNodeRect = RectExtensions.union(draggedNodeRects) || RectExtensions.initialize();
|
|
45
|
-
const allNodesExcludeCurrents = allNodes.filter((x) => {
|
|
46
|
-
return !currentNodes.includes(x);
|
|
47
|
-
});
|
|
48
|
-
this.rects = allNodesExcludeCurrents.map((x) => {
|
|
49
|
-
return this._fMediator.execute(new GetNormalizedElementRectRequest(x.hostElement, false));
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
handle(difference) {
|
|
53
|
-
if (this._debounceTimer) {
|
|
54
|
-
clearTimeout(this._debounceTimer);
|
|
55
|
-
}
|
|
56
|
-
this._debounceTimer = setTimeout(() => this.drawIntersectingLines(difference), this.DEBOUNCE_TIME);
|
|
57
|
-
}
|
|
58
|
-
drawIntersectingLines(difference) {
|
|
59
|
-
const intersect = this.findNearestCoordinate(difference);
|
|
60
|
-
if (intersect.xResult.value !== undefined) {
|
|
61
|
-
this.lineService.drawVerticalLine(intersect.xResult.value, this.size, this._transform);
|
|
62
|
-
}
|
|
63
|
-
else {
|
|
64
|
-
this.lineService.hideVerticalLine();
|
|
65
|
-
}
|
|
66
|
-
if (intersect.yResult.value !== undefined) {
|
|
67
|
-
this.lineService.drawHorizontalLine(intersect.yResult.value, this.size, this._transform);
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
this.lineService.hideHorizontalLine();
|
|
71
|
-
}
|
|
9
|
+
_elementReference = inject(ElementRef);
|
|
10
|
+
get hostElement() {
|
|
11
|
+
return this._elementReference.nativeElement;
|
|
72
12
|
}
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
return findClosestAlignment(this.rects, rect, this.fAlignThreshold);
|
|
13
|
+
ngOnInit() {
|
|
14
|
+
this._fMediator.execute(new AddLineAlignmentToStoreRequest(this));
|
|
76
15
|
}
|
|
77
|
-
|
|
78
|
-
this.
|
|
79
|
-
this.lineService.hideHorizontalLine();
|
|
80
|
-
if (this._debounceTimer) {
|
|
81
|
-
clearTimeout(this._debounceTimer);
|
|
82
|
-
this._debounceTimer = null;
|
|
83
|
-
}
|
|
16
|
+
ngOnDestroy() {
|
|
17
|
+
this._fMediator.execute(new RemoveLineAlignmentFromStoreRequest());
|
|
84
18
|
}
|
|
85
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FLineAlignmentComponent, deps:
|
|
19
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FLineAlignmentComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
86
20
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: FLineAlignmentComponent, selector: "f-line-alignment", inputs: { fAlignThreshold: "fAlignThreshold" }, host: { classAttribute: "f-line-alignment f-component" }, providers: [
|
|
87
21
|
{ provide: F_LINE_ALIGNMENT, useExisting: FLineAlignmentComponent }
|
|
88
22
|
], exportAs: ["fComponent"], usesInheritance: true, ngImport: i0, template: "", isInline: true, styles: [":host{display:block;position:absolute;left:0;top:0;width:100%;height:100%;overflow:hidden;pointer-events:none;-webkit-user-select:none;user-select:none}\n"] });
|
|
@@ -94,7 +28,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
|
|
|
94
28
|
}, providers: [
|
|
95
29
|
{ provide: F_LINE_ALIGNMENT, useExisting: FLineAlignmentComponent }
|
|
96
30
|
], styles: [":host{display:block;position:absolute;left:0;top:0;width:100%;height:100%;overflow:hidden;pointer-events:none;-webkit-user-select:none;user-select:none}\n"] }]
|
|
97
|
-
}],
|
|
31
|
+
}], propDecorators: { fAlignThreshold: [{
|
|
98
32
|
type: Input
|
|
99
33
|
}] } });
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1saW5lLWFsaWdubWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtbGluZS1hbGlnbm1lbnQvZi1saW5lLWFsaWdubWVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQWMsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRixPQUFPLEVBQ0wsb0JBQW9CLEVBS3BCLGNBQWMsRUFDZCxjQUFjLEVBQ2YsTUFBTSxZQUFZLENBQUM7QUFDcEIsT0FBTyxFQUF3QixXQUFXLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDN0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHL0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLCtCQUErQixFQUFFLHlCQUF5QixFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7OztBQWdCN0MsTUFBTSxPQUFPLHVCQUF3QixTQUFRLGtCQUFrQjtJQThCbkQ7SUFDQTtJQTdCRixhQUFhLEdBQUcsRUFBRSxDQUFDO0lBR3BCLGVBQWUsR0FBVyxFQUFFLENBQUM7SUFFcEMsSUFBb0IsV0FBVztRQUM3QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7SUFDN0MsQ0FBQztJQUVPLFdBQVcsQ0FBYztJQUV6QixJQUFJLEdBQVUsY0FBYyxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBRTFDLGVBQWUsR0FBVSxjQUFjLENBQUMsVUFBVSxFQUFFLENBQUM7SUFFckQsS0FBSyxHQUFZLEVBQUUsQ0FBQztJQUVwQixVQUFVLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRS9CLFFBQVEsQ0FBMEI7SUFFbEMsY0FBYyxHQUFRLElBQUksQ0FBQztJ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O3NCQURyQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBpbmplY3QsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBmaW5kQ2xvc2VzdEFsaWdubWVudCxcbiAgSVBvaW50LFxuICBJUmVjdCxcbiAgSVNpemUsXG4gIElUcmFuc2Zvcm1Nb2RlbCxcbiAgUmVjdEV4dGVuc2lvbnMsXG4gIFNpemVFeHRlbnNpb25zXG59IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgSUxpbmVBbGlnbm1lbnRSZXN1bHQsIExpbmVTZXJ2aWNlIH0gZnJvbSAnLi9kb21haW4nO1xuaW1wb3J0IHsgRl9MSU5FX0FMSUdOTUVOVCwgRkxpbmVBbGlnbm1lbnRCYXNlIH0gZnJvbSAnLi9mLWxpbmUtYWxpZ25tZW50LWJhc2UnO1xuaW1wb3J0IHsgRkRyYWdnYWJsZURhdGFDb250ZXh0IH0gZnJvbSAnLi4vZi1kcmFnZ2FibGUnO1xuaW1wb3J0IHsgRk5vZGVCYXNlIH0gZnJvbSAnLi4vZi1ub2RlJztcbmltcG9ydCB7IEdldENhbnZhc1JlcXVlc3QsIEdldE5vcm1hbGl6ZWRFbGVtZW50UmVjdFJlcXVlc3QsIEdldEZsb3dIb3N0RWxlbWVudFJlcXVlc3QgfSBmcm9tICcuLi9kb21haW4nO1xuaW1wb3J0IHsgRk1lZGlhdG9yIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBCcm93c2VyU2VydmljZSB9IGZyb20gJ0Bmb2JsZXgvcGxhdGZvcm0nO1xuaW1wb3J0IHsgRkNhbnZhc0Jhc2UgfSBmcm9tICcuLi9mLWNhbnZhcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJmLWxpbmUtYWxpZ25tZW50XCIsXG4gIHRlbXBsYXRlOiBcIlwiLFxuICBzdHlsZVVybHM6IFsgXCIuL2YtbGluZS1hbGlnbm1lbnQuY29tcG9uZW50LnNjc3NcIiBdLFxuICBleHBvcnRBczogXCJmQ29tcG9uZW50XCIsXG4gIGhvc3Q6IHtcbiAgICAnY2xhc3MnOiAnZi1saW5lLWFsaWdubWVudCBmLWNvbXBvbmVudCdcbiAgfSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgeyBwcm92aWRlOiBGX0xJTkVfQUxJR05NRU5ULCB1c2VFeGlzdGluZzogRkxpbmVBbGlnbm1lbnRDb21wb25lbnQgfVxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGTGluZUFsaWdubWVudENvbXBvbmVudCBleHRlbmRzIEZMaW5lQWxpZ25tZW50QmFzZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuXG4gIHByaXZhdGUgREVCT1VOQ0VfVElNRSA9IDEwO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmQWxpZ25UaHJlc2hvbGQ6IG51bWJlciA9IDEwO1xuXG4gIHB1YmxpYyBvdmVycmlkZSBnZXQgaG9zdEVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWZlcmVuY2UubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIHByaXZhdGUgbGluZVNlcnZpY2U6IExpbmVTZXJ2aWNlO1xuXG4gIHByaXZhdGUgc2l6ZTogSVNpemUgPSBTaXplRXh0ZW5zaW9ucy5pbml0aWFsaXplKCk7XG5cbiAgcHJpdmF0ZSBkcmFnZ2VkTm9kZVJlY3Q6IElSZWN0ID0gUmVjdEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpO1xuXG4gIHByaXZhdGUgcmVjdHM6IElSZWN0W10gPSBbXTtcblxuICBwcml2YXRlIF9mTWVkaWF0b3IgPSBpbmplY3QoRk1lZGlhdG9yKTtcblxuICBwcml2YXRlIF9mQ2FudmFzOiBGQ2FudmFzQmFzZSB8IHVuZGVmaW5lZDtcblxuICBwcml2YXRlIF9kZWJvdW5jZVRpbWVyOiBhbnkgPSBudWxsO1xuXG4gIHByaXZhdGUgZ2V0IF90cmFuc2Zvcm0oKTogSVRyYW5zZm9ybU1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5fZkNhbnZhcyEudHJhbnNmb3JtO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmZXJlbmNlOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIGZEcmFnZ2FibGVEYXRhQ29udGV4dDogRkRyYWdnYWJsZURhdGFDb250ZXh0LFxuICAgIGZCcm93c2VyOiBCcm93c2VyU2VydmljZVxuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMubGluZVNlcnZpY2UgPSBuZXcgTGluZVNlcnZpY2UoZkJyb3dzZXIsIHRoaXMuaG9zdEVsZW1lbnQpO1xuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9mQ2FudmFzID0gdGhpcy5fZk1lZGlhdG9yLnNlbmQobmV3IEdldENhbnZhc1JlcXVlc3QoKSk7XG4gICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuZkxpbmVBbGlnbm1lbnQgPSB0aGlzO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGluaXRpYWxpemUoYWxsTm9kZXM6IEZOb2RlQmFzZVtdLCBjdXJyZW50Tm9kZXM6IEZOb2RlQmFzZVtdKTogdm9pZCB7XG4gICAgdGhpcy5zaXplID0gdGhpcy5fZk1lZGlhdG9yLnNlbmQ8SFRNTEVsZW1lbnQ+KG5ldyBHZXRGbG93SG9zdEVsZW1lbnRSZXF1ZXN0KCkpLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIHRoaXMucmVjdHMgPSBbXTtcbiAgICBjb25zdCBkcmFnZ2VkTm9kZVJlY3RzID0gY3VycmVudE5vZGVzLm1hcCgoeCkgPT4ge1xuICAgICAgcmV0dXJuIHRoaXMuX2ZNZWRpYXRvci5leGVjdXRlPElSZWN0PihuZXcgR2V0Tm9ybWFsaXplZEVsZW1lbnRSZWN0UmVxdWVzdCh4Lmhvc3RFbGVtZW50LCBmYWxzZSkpO1xuICAgIH0pO1xuICAgIHRoaXMuZHJhZ2dlZE5vZGVSZWN0ID0gUmVjdEV4dGVuc2lvbnMudW5pb24oZHJhZ2dlZE5vZGVSZWN0cykgfHwgUmVjdEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpO1xuXG4gICAgY29uc3QgYWxsTm9kZXNFeGNsdWRlQ3VycmVudHMgPSBhbGxOb2Rlcy5maWx0ZXIoKHgpID0+IHtcbiAgICAgIHJldHVybiAhY3VycmVudE5vZGVzLmluY2x1ZGVzKHgpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5yZWN0cyA9IGFsbE5vZGVzRXhjbHVkZUN1cnJlbnRzLm1hcCgoeCkgPT4ge1xuICAgICAgcmV0dXJuIHRoaXMuX2ZNZWRpYXRvci5leGVjdXRlPElSZWN0PihuZXcgR2V0Tm9ybWFsaXplZEVsZW1lbnRSZWN0UmVxdWVzdCh4Lmhvc3RFbGVtZW50LCBmYWxzZSkpO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGhhbmRsZShkaWZmZXJlbmNlOiBJUG9pbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fZGVib3VuY2VUaW1lcikge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX2RlYm91bmNlVGltZXIpO1xuICAgIH1cblxuICAgIHRoaXMuX2RlYm91bmNlVGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHRoaXMuZHJhd0ludGVyc2VjdGluZ0xpbmVzKGRpZmZlcmVuY2UpLCB0aGlzLkRFQk9VTkNFX1RJTUUpO1xuICB9XG5cbiAgcHJpdmF0ZSBkcmF3SW50ZXJzZWN0aW5nTGluZXMoZGlmZmVyZW5jZTogSVBvaW50KTogdm9pZCB7XG4gICAgY29uc3QgaW50ZXJzZWN0ID0gdGhpcy5maW5kTmVhcmVzdENvb3JkaW5hdGUoZGlmZmVyZW5jZSk7XG4gICAgaWYgKGludGVyc2VjdC54UmVzdWx0LnZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMubGluZVNlcnZpY2UuZHJhd1ZlcnRpY2FsTGluZShpbnRlcnNlY3QueFJlc3VsdC52YWx1ZSwgdGhpcy5zaXplLCB0aGlzLl90cmFuc2Zvcm0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxpbmVTZXJ2aWNlLmhpZGVWZXJ0aWNhbExpbmUoKTtcbiAgICB9XG4gICAgaWYgKGludGVyc2VjdC55UmVzdWx0LnZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMubGluZVNlcnZpY2UuZHJhd0hvcml6b250YWxMaW5lKGludGVyc2VjdC55UmVzdWx0LnZhbHVlLCB0aGlzLnNpemUsIHRoaXMuX3RyYW5zZm9ybSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubGluZVNlcnZpY2UuaGlkZUhvcml6b250YWxMaW5lKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGZpbmROZWFyZXN0Q29vcmRpbmF0ZShkaWZmZXJlbmNlOiBJUG9pbnQpOiBJTGluZUFsaWdubWVudFJlc3VsdCB7XG4gICAgY29uc3QgcmVjdCA9IFJlY3RFeHRlbnNpb25zLmFkZFBvaW50KHRoaXMuZHJhZ2dlZE5vZGVSZWN0LCBkaWZmZXJlbmNlKTtcblxuICAgIHJldHVybiBmaW5kQ2xvc2VzdEFsaWdubWVudCh0aGlzLnJlY3RzLCByZWN0LCB0aGlzLmZBbGlnblRocmVzaG9sZCk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgY29tcGxldGUoKTogdm9pZCB7XG4gICAgdGhpcy5saW5lU2VydmljZS5oaWRlVmVydGljYWxMaW5lKCk7XG4gICAgdGhpcy5saW5lU2VydmljZS5oaWRlSG9yaXpvbnRhbExpbmUoKTtcblxuICAgIGlmICh0aGlzLl9kZWJvdW5jZVRpbWVyKSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5fZGVib3VuY2VUaW1lcik7XG4gICAgICB0aGlzLl9kZWJvdW5jZVRpbWVyID0gbnVsbDtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1saW5lLWFsaWdubWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtbGluZS1hbGlnbm1lbnQvZi1saW5lLWFsaWdubWVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDL0UsT0FBTyxFQUNMLG1DQUFtQyxFQUNuQyw4QkFBOEIsR0FDL0IsTUFBTSxXQUFXLENBQUM7QUFDbkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQWM3QyxNQUFNLE9BQU8sdUJBQ1gsU0FBUSxrQkFBa0I7SUFHVixlQUFlLEdBQVcsRUFBRSxDQUFDO0lBRXJDLFVBQVUsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0IsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRS9DLElBQW9CLFdBQVc7UUFDN0IsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxDQUFDO0lBQzlDLENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSw4QkFBOEIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksbUNBQW1DLEVBQUUsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7dUdBbkJVLHVCQUF1QjsyRkFBdkIsdUJBQXVCLHFKQUp2QjtZQUNULEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSx1QkFBdUIsRUFBRTtTQUNwRSwyRUFSUyxFQUFFOzsyRkFVRCx1QkFBdUI7a0JBWm5DLFNBQVM7K0JBQ0Usa0JBQWtCLFlBQ2xCLEVBQUUsWUFFRixZQUFZLFFBQ2hCO3dCQUNKLE9BQU8sRUFBRSw4QkFBOEI7cUJBQ3hDLGFBQ1U7d0JBQ1QsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyx5QkFBeUIsRUFBRTtxQkFDcEU7OEJBTWUsZUFBZTtzQkFEOUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgaW5qZWN0LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZfTElORV9BTElHTk1FTlQsIEZMaW5lQWxpZ25tZW50QmFzZSB9IGZyb20gJy4vZi1saW5lLWFsaWdubWVudC1iYXNlJztcbmltcG9ydCB7XG4gIFJlbW92ZUxpbmVBbGlnbm1lbnRGcm9tU3RvcmVSZXF1ZXN0LFxuICBBZGRMaW5lQWxpZ25tZW50VG9TdG9yZVJlcXVlc3QsXG59IGZyb20gJy4uL2RvbWFpbic7XG5pbXBvcnQgeyBGTWVkaWF0b3IgfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcImYtbGluZS1hbGlnbm1lbnRcIixcbiAgdGVtcGxhdGU6IFwiXCIsXG4gIHN0eWxlVXJsczogWyBcIi4vZi1saW5lLWFsaWdubWVudC5jb21wb25lbnQuc2Nzc1wiIF0sXG4gIGV4cG9ydEFzOiBcImZDb21wb25lbnRcIixcbiAgaG9zdDoge1xuICAgICdjbGFzcyc6ICdmLWxpbmUtYWxpZ25tZW50IGYtY29tcG9uZW50J1xuICB9LFxuICBwcm92aWRlcnM6IFtcbiAgICB7IHByb3ZpZGU6IEZfTElORV9BTElHTk1FTlQsIHVzZUV4aXN0aW5nOiBGTGluZUFsaWdubWVudENvbXBvbmVudCB9XG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZMaW5lQWxpZ25tZW50Q29tcG9uZW50XG4gIGV4dGVuZHMgRkxpbmVBbGlnbm1lbnRCYXNlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBvdmVycmlkZSBmQWxpZ25UaHJlc2hvbGQ6IG51bWJlciA9IDEwO1xuXG4gIHByaXZhdGUgX2ZNZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuICBwcml2YXRlIF9lbGVtZW50UmVmZXJlbmNlID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuXG4gIHB1YmxpYyBvdmVycmlkZSBnZXQgaG9zdEVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLl9lbGVtZW50UmVmZXJlbmNlLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fZk1lZGlhdG9yLmV4ZWN1dGUobmV3IEFkZExpbmVBbGlnbm1lbnRUb1N0b3JlUmVxdWVzdCh0aGlzKSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZk1lZGlhdG9yLmV4ZWN1dGUobmV3IFJlbW92ZUxpbmVBbGlnbm1lbnRGcm9tU3RvcmVSZXF1ZXN0KCkpO1xuICB9XG59XG4iXX0=
|
|
@@ -20,6 +20,7 @@ export class FComponentsStore {
|
|
|
20
20
|
fInputs = [];
|
|
21
21
|
fOutlets = [];
|
|
22
22
|
fDraggable;
|
|
23
|
+
fLineAlignment;
|
|
23
24
|
addComponent(collection, component) {
|
|
24
25
|
collection.push(component);
|
|
25
26
|
this.countChanged();
|
|
@@ -46,4 +47,4 @@ export class FComponentsStore {
|
|
|
46
47
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FComponentsStore, decorators: [{
|
|
47
48
|
type: Injectable
|
|
48
49
|
}] });
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb21wb25lbnRzLXN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLXN0b3JhZ2UvZi1jb21wb25lbnRzLXN0b3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFTM0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFJekMsTUFBTSxPQUFPLGdCQUFnQjtJQUVYLGlCQUFpQixHQUFHLElBQUksUUFBUSxFQUFFLENBQUM7SUFFbkMsWUFBWSxHQUFHLElBQUksUUFBUSxFQUFFLENBQUM7SUFFOUIsYUFBYSxHQUFHLElBQUksUUFBUSxFQUFFLENBQUM7SUFFL0MsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLEtBQUssRUFBRSxXQUFZLENBQUM7SUFDbEMsQ0FBQztJQUVNLEtBQUssQ0FBd0I7SUFFN0IsT0FBTyxDQUEwQjtJQUVqQyxXQUFXLENBQThCO0lBRXpDLE1BQU0sR0FBZ0IsRUFBRSxDQUFDO0lBRXpCLFlBQVksR0FBc0IsRUFBRSxDQUFDO0lBRXJDLGVBQWUsQ0FBOEI7SUFFN0MsZUFBZSxDQUE4QjtJQUU3QyxRQUFRLEdBQWtCLEVBQUUsQ0FBQztJQUU3QixRQUFRLEdBQXFCLEVBQUUsQ0FBQztJQUVoQyxPQUFPLEdBQXFCLEVBQUUsQ0FBQztJQUUvQixRQUFRLEdBQXFCLEVBQUUsQ0FBQztJQUVoQyxVQUFVLENBQTZCO0lBRXZDLGNBQWMsQ0FBaUM7SUFFL0MsWUFBWSxDQUFJLFVBQWUsRUFBRSxTQUFZO1FBQ2xELFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFTSxlQUFlLENBQUksVUFBZSxFQUFFLFNBQVk7UUFDckQsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM1QyxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ2YsVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDNUIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3RCLENBQUM7SUFDSCxDQUFDO0lBRU0sWUFBWTtRQUNqQixJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVNLGdCQUFnQjtRQUNyQixJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDbEMsQ0FBQzt1R0E3RFUsZ0JBQWdCOzJHQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJVHJhbnNmb3JtTW9kZWwgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZDb25uZWN0aW9uQmFzZSwgRk1hcmtlckJhc2UgfSBmcm9tICcuLi9mLWNvbm5lY3Rpb24nO1xuaW1wb3J0IHsgRkZsb3dCYXNlIH0gZnJvbSAnLi4vZi1mbG93JztcbmltcG9ydCB7IEZDYW52YXNCYXNlIH0gZnJvbSAnLi4vZi1jYW52YXMnO1xuaW1wb3J0IHsgRkJhY2tncm91bmRCYXNlIH0gZnJvbSAnLi4vZi1iYWNrZ3JvdWQnO1xuaW1wb3J0IHsgRk5vZGVCYXNlIH0gZnJvbSAnLi4vZi1ub2RlJztcbmltcG9ydCB7IEZDb25uZWN0b3JCYXNlIH0gZnJvbSAnLi4vZi1jb25uZWN0b3JzJztcbmltcG9ydCB7IEZEcmFnZ2FibGVCYXNlIH0gZnJvbSAnLi4vZi1kcmFnZ2FibGUnO1xuaW1wb3J0IHsgRkNoYW5uZWwgfSBmcm9tICcuLi9yZWFjdGl2aXR5JztcbmltcG9ydCB7IEZMaW5lQWxpZ25tZW50QmFzZSB9IGZyb20gJy4uL2YtbGluZS1hbGlnbm1lbnQnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRkNvbXBvbmVudHNTdG9yZSB7XG5cbiAgcHVibGljIHJlYWRvbmx5IHRyYW5zZm9ybUNoYW5nZXMkID0gbmV3IEZDaGFubmVsKCk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGRhdGFDaGFuZ2VzJCA9IG5ldyBGQ2hhbm5lbCgpO1xuXG4gIHB1YmxpYyByZWFkb25seSBjb3VudENoYW5nZXMkID0gbmV3IEZDaGFubmVsKCk7XG5cbiAgcHVibGljIGdldCBmbG93SG9zdCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZkZsb3c/Lmhvc3RFbGVtZW50ITtcbiAgfVxuXG4gIHB1YmxpYyBmRmxvdzogRkZsb3dCYXNlIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBmQ2FudmFzOiBGQ2FudmFzQmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZkJhY2tncm91bmQ6IEZCYWNrZ3JvdW5kQmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZk5vZGVzOiBGTm9kZUJhc2VbXSA9IFtdO1xuXG4gIHB1YmxpYyBmQ29ubmVjdGlvbnM6IEZDb25uZWN0aW9uQmFzZVtdID0gW107XG5cbiAgcHVibGljIGZUZW1wQ29ubmVjdGlvbjogRkNvbm5lY3Rpb25CYXNlIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBmU25hcENvbm5lY3Rpb246IEZDb25uZWN0aW9uQmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZk1hcmtlcnM6IEZNYXJrZXJCYXNlW10gPSBbXTtcblxuICBwdWJsaWMgZk91dHB1dHM6IEZDb25uZWN0b3JCYXNlW10gPSBbXTtcblxuICBwdWJsaWMgZklucHV0czogRkNvbm5lY3RvckJhc2VbXSA9IFtdO1xuXG4gIHB1YmxpYyBmT3V0bGV0czogRkNvbm5lY3RvckJhc2VbXSA9IFtdO1xuXG4gIHB1YmxpYyBmRHJhZ2dhYmxlOiBGRHJhZ2dhYmxlQmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZkxpbmVBbGlnbm1lbnQ6IEZMaW5lQWxpZ25tZW50QmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgYWRkQ29tcG9uZW50PFQ+KGNvbGxlY3Rpb246IFRbXSwgY29tcG9uZW50OiBUKTogdm9pZCB7XG4gICAgY29sbGVjdGlvbi5wdXNoKGNvbXBvbmVudCk7XG4gICAgdGhpcy5jb3VudENoYW5nZWQoKTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVDb21wb25lbnQ8VD4oY29sbGVjdGlvbjogVFtdLCBjb21wb25lbnQ6IFQpOiB2b2lkIHtcbiAgICBjb25zdCBpbmRleCA9IGNvbGxlY3Rpb24uaW5kZXhPZihjb21wb25lbnQpO1xuICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICBjb2xsZWN0aW9uLnNwbGljZShpbmRleCwgMSk7XG4gICAgICB0aGlzLmNvdW50Q2hhbmdlZCgpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjb3VudENoYW5nZWQoKTogdm9pZCB7XG4gICAgdGhpcy5jb3VudENoYW5nZXMkLm5vdGlmeSgpO1xuICB9XG5cbiAgcHVibGljIGRhdGFDaGFuZ2VkKCk6IHZvaWQge1xuICAgIHRoaXMuZGF0YUNoYW5nZXMkLm5vdGlmeSgpO1xuICB9XG5cbiAgcHVibGljIHRyYW5zZm9ybUNoYW5nZWQoKTogdm9pZCB7XG4gICAgdGhpcy50cmFuc2Zvcm1DaGFuZ2VzJC5ub3RpZnkoKTtcbiAgfVxufVxuIl19
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { FBackgroundComponent } from './f-background.component';
|
|
2
2
|
import { FRectPatternComponent } from './f-rect-pattern';
|
|
3
3
|
import { FCirclePatternComponent } from './f-circle-pattern';
|
|
4
|
-
export declare const F_BACKGROUND_PROVIDERS: (typeof
|
|
4
|
+
export declare const F_BACKGROUND_PROVIDERS: (typeof FBackgroundComponent | typeof FCirclePatternComponent | typeof FRectPatternComponent)[];
|
|
@@ -4,4 +4,4 @@ import { FConnectionCenterDirective } from './f-connection-center';
|
|
|
4
4
|
import { FConnectionForCreateComponent } from './f-connection-for-create';
|
|
5
5
|
import { FMarkerDirective } from './f-marker';
|
|
6
6
|
import { FSnapConnectionComponent } from './f-snap-connection';
|
|
7
|
-
export declare const F_CONNECTION_PROVIDERS: (typeof
|
|
7
|
+
export declare const F_CONNECTION_PROVIDERS: (typeof FSnapConnectionComponent | typeof FConnectionDragHandleComponent | typeof FConnectionSelectionComponent | typeof FConnectionCenterDirective | typeof FMarkerDirective | typeof FConnectionComponent | typeof FConnectionForCreateComponent | typeof FConnectionTextPathDirective | typeof FConnectionTextComponent | typeof FConnectionGradientComponent | typeof FConnectionPathComponent)[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { FNodeInputDirective } from './f-node-input';
|
|
2
2
|
import { FNodeOutletDirective } from './f-node-outlet';
|
|
3
3
|
import { FNodeOutputDirective } from './f-node-output';
|
|
4
|
-
export declare const F_CONNECTORS_PROVIDERS: (typeof
|
|
4
|
+
export declare const F_CONNECTORS_PROVIDERS: (typeof FNodeOutputDirective | typeof FNodeOutletDirective | typeof FNodeInputDirective)[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { CreateConnectionDragHandlerExecution, CreateConnectionFinalizeExecution, CreateConnectionFromOutletPreparationExecution, CreateConnectionFromOutputPreparationExecution, CreateConnectionFromOutputPreparationValidator, CreateConnectionPreparationExecution, GetCanBeConnectedOutputByOutletExecution, GetCanBeConnectedOutputByOutletValidator } from './create-connection';
|
|
2
2
|
import { ReassignConnectionFinalizeExecution, ReassignConnectionPreparationExecution } from './reassign-connection';
|
|
3
3
|
import { GetInputUnderPointerExecution, GetInputUnderPointerValidator } from './get-input-under-pointer';
|
|
4
|
-
export declare const CONNECTIONS_PROVIDERS: (typeof
|
|
4
|
+
export declare const CONNECTIONS_PROVIDERS: (typeof CreateConnectionPreparationExecution | typeof CreateConnectionDragHandlerExecution | typeof CreateConnectionFinalizeExecution | typeof GetInputUnderPointerExecution | typeof ReassignConnectionPreparationExecution | typeof ReassignConnectionFinalizeExecution | typeof GetInputUnderPointerValidator | typeof CreateConnectionFromOutletPreparationExecution | typeof GetCanBeConnectedOutputByOutletExecution | typeof GetCanBeConnectedOutputByOutletValidator | typeof CreateConnectionFromOutputPreparationExecution | typeof CreateConnectionFromOutputPreparationValidator)[];
|
|
@@ -1,20 +1,19 @@
|
|
|
1
1
|
import { ReassignConnectionFinalizeRequest } from './reassign-connection-finalize.request';
|
|
2
|
-
import {
|
|
3
|
-
import { FDraggableDataContext } from '../../../f-draggable-data-context';
|
|
4
|
-
import { FMediator, IExecution } from '@foblex/mediator';
|
|
2
|
+
import { IExecution } from '@foblex/mediator';
|
|
5
3
|
import * as i0 from "@angular/core";
|
|
6
4
|
export declare class ReassignConnectionFinalizeExecution implements IExecution<ReassignConnectionFinalizeRequest, void> {
|
|
7
|
-
private
|
|
8
|
-
private
|
|
9
|
-
private
|
|
10
|
-
private get
|
|
11
|
-
private get
|
|
12
|
-
constructor(fComponentsStore: FComponentsStore, fDraggableDataContext: FDraggableDataContext, fMediator: FMediator);
|
|
5
|
+
private _fMediator;
|
|
6
|
+
private _fComponentsStore;
|
|
7
|
+
private _fDraggableDataContext;
|
|
8
|
+
private get _fDraggable();
|
|
9
|
+
private get _fDragHandler();
|
|
13
10
|
handle(request: ReassignConnectionFinalizeRequest): void;
|
|
14
|
-
private
|
|
15
|
-
private
|
|
16
|
-
private
|
|
17
|
-
private
|
|
11
|
+
private _isDroppedConnectionReassignEvent;
|
|
12
|
+
private _applyReassignEvent;
|
|
13
|
+
private _getInputUnderPointer;
|
|
14
|
+
private _isReassignToDifferentInput;
|
|
15
|
+
private _emitReassignConnectionEvent;
|
|
16
|
+
private _getEventData;
|
|
18
17
|
static ɵfac: i0.ɵɵFactoryDeclaration<ReassignConnectionFinalizeExecution, never>;
|
|
19
18
|
static ɵprov: i0.ɵɵInjectableDeclaration<ReassignConnectionFinalizeExecution>;
|
|
20
19
|
}
|
|
@@ -20,7 +20,9 @@ export declare class ReassignConnectionDragHandler implements IDraggableItem {
|
|
|
20
20
|
private getInput;
|
|
21
21
|
onPointerMove(difference: IPoint): void;
|
|
22
22
|
private _drawConnection;
|
|
23
|
+
private _getLineToPointer;
|
|
23
24
|
private _drawSnapConnection;
|
|
25
|
+
private _getLineToClosestInput;
|
|
24
26
|
getClosetInput(difference: IPoint): IClosestInput | undefined;
|
|
25
27
|
private _findClosestInput;
|
|
26
28
|
private _getClosestInputForSnapConnection;
|
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
import { IsArrayHasParentNodeRequest } from './is-array-has-parent-node.request';
|
|
2
|
-
import {
|
|
2
|
+
import { IExecution } from '@foblex/mediator';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export declare class IsArrayHasParentNodeExecution implements IExecution<IsArrayHasParentNodeRequest, boolean> {
|
|
5
|
-
private fMediator;
|
|
6
|
-
constructor(fMediator: FMediator);
|
|
7
5
|
handle(request: IsArrayHasParentNodeRequest): boolean;
|
|
8
|
-
private
|
|
9
|
-
private
|
|
10
|
-
private isParentNodeInArray;
|
|
6
|
+
private _getParentNodeIds;
|
|
7
|
+
private _isParentNodeInArray;
|
|
11
8
|
static ɵfac: i0.ɵɵFactoryDeclaration<IsArrayHasParentNodeExecution, never>;
|
|
12
9
|
static ɵprov: i0.ɵɵInjectableDeclaration<IsArrayHasParentNodeExecution>;
|
|
13
10
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { FNodeBase } from '../../../f-node';
|
|
2
2
|
export declare class IsArrayHasParentNodeRequest {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
constructor(
|
|
3
|
+
fParentNodes: FNodeBase[];
|
|
4
|
+
fDraggedNodes: FNodeBase[];
|
|
5
|
+
constructor(fParentNodes: FNodeBase[], fDraggedNodes: FNodeBase[]);
|
|
6
6
|
}
|
|
@@ -5,13 +5,14 @@ export declare class IsConnectionUnderNodeExecution implements IExecution<IsConn
|
|
|
5
5
|
private _fMediator;
|
|
6
6
|
private _fComponentsStore;
|
|
7
7
|
handle(request: IsConnectionUnderNodeRequest): void;
|
|
8
|
-
private
|
|
9
|
-
private
|
|
8
|
+
private _getOutputConnectors;
|
|
9
|
+
private _getInputConnectors;
|
|
10
10
|
private _getOutputConnectionsId;
|
|
11
11
|
private _getInputConnectionsId;
|
|
12
12
|
private _getConnectorsId;
|
|
13
13
|
private _calculateConnectionsUnderNode;
|
|
14
14
|
private _isConnectionHasIntersectionsWithNode;
|
|
15
|
+
private _emitNodeIntersectedWithConnections;
|
|
15
16
|
static ɵfac: i0.ɵɵFactoryDeclaration<IsConnectionUnderNodeExecution, never>;
|
|
16
17
|
static ɵprov: i0.ɵɵInjectableDeclaration<IsConnectionUnderNodeExecution>;
|
|
17
18
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { IsArrayHasParentNodeExecution } from './is-array-has-parent-node';
|
|
2
2
|
import { GetNormalizedParentNodeRectExecution } from './get-normalized-parent-node-rect';
|
|
3
3
|
import { IsConnectionUnderNodeExecution } from './is-connection-under-node';
|
|
4
|
-
export declare const DRAG_AND_DROP_COMMON_PROVIDERS: (typeof
|
|
4
|
+
export declare const DRAG_AND_DROP_COMMON_PROVIDERS: (typeof GetNormalizedParentNodeRectExecution | typeof IsArrayHasParentNodeExecution | typeof IsConnectionUnderNodeExecution)[];
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Point } from '@foblex/2d';
|
|
2
2
|
import { IDraggableItem } from './i-draggable-item';
|
|
3
|
-
import { FLineAlignmentBase } from '../f-line-alignment';
|
|
4
3
|
import { ICanChangeSelection } from '../mixins';
|
|
5
4
|
import * as i0 from "@angular/core";
|
|
6
5
|
export declare class FDraggableDataContext {
|
|
@@ -9,9 +8,9 @@ export declare class FDraggableDataContext {
|
|
|
9
8
|
onPointerDownScale: number;
|
|
10
9
|
onPointerDownPosition: Point;
|
|
11
10
|
draggableItems: IDraggableItem[];
|
|
12
|
-
fLineAlignment: FLineAlignmentBase | undefined;
|
|
13
11
|
reset(): void;
|
|
14
12
|
markSelectionAsChanged(): void;
|
|
13
|
+
isEmpty(): boolean;
|
|
15
14
|
static ɵfac: i0.ɵɵFactoryDeclaration<FDraggableDataContext, never>;
|
|
16
15
|
static ɵprov: i0.ɵɵInjectableDeclaration<FDraggableDataContext>;
|
|
17
16
|
}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { IDraggableItem } from '../i-draggable-item';
|
|
2
2
|
import { FConnectionBase } from '../../f-connection';
|
|
3
3
|
import { FMediator } from '@foblex/mediator';
|
|
4
|
-
import {
|
|
5
|
-
import { ILine, IPoint } from '@foblex/2d';
|
|
4
|
+
import { ILine, IMinMaxPoint, IPoint } from '@foblex/2d';
|
|
6
5
|
import { FComponentsStore } from '../../f-storage';
|
|
7
6
|
import { IConnectorWithRect } from '../../domain';
|
|
8
7
|
import * as i0 from "@angular/core";
|
|
@@ -18,7 +17,7 @@ export declare abstract class ConnectionBaseDragHandler implements IDraggableIte
|
|
|
18
17
|
private getInput;
|
|
19
18
|
private connectorNotFoundPrefix;
|
|
20
19
|
abstract onPointerMove(difference: IPoint): void;
|
|
21
|
-
protected getRestrictedDifference(difference: IPoint, restrictions:
|
|
20
|
+
protected getRestrictedDifference(difference: IPoint, restrictions: IMinMaxPoint): IPoint;
|
|
22
21
|
protected redrawConnection(line: ILine): void;
|
|
23
22
|
static ɵfac: i0.ɵɵFactoryDeclaration<ConnectionBaseDragHandler, never>;
|
|
24
23
|
static ɵdir: i0.ɵɵDirectiveDeclaration<ConnectionBaseDragHandler, never, never, {}, {}, never, never, false, never>;
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import { IPoint } from '@foblex/2d';
|
|
1
|
+
import { IMinMaxPoint, IPoint } from '@foblex/2d';
|
|
2
2
|
import { FConnectionBase } from '../../f-connection';
|
|
3
3
|
import { FMediator } from '@foblex/mediator';
|
|
4
4
|
import { ConnectionBaseDragHandler } from './connection-base-drag-handler';
|
|
5
5
|
import { FComponentsStore } from '../../f-storage';
|
|
6
6
|
export declare class ConnectionSourceDragHandler extends ConnectionBaseDragHandler {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
constructor(fMediator: FMediator, fComponentsStore: FComponentsStore, connection: FConnectionBase, minDistance: IPoint, maxDistance: IPoint);
|
|
7
|
+
restrictions: IMinMaxPoint;
|
|
8
|
+
constructor(fMediator: FMediator, fComponentsStore: FComponentsStore, connection: FConnectionBase, restrictions: IMinMaxPoint);
|
|
10
9
|
onPointerMove(difference: IPoint): void;
|
|
11
10
|
private getNewLineValue;
|
|
12
11
|
}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import { IPoint } from '@foblex/2d';
|
|
1
|
+
import { IMinMaxPoint, IPoint } from '@foblex/2d';
|
|
2
2
|
import { FConnectionBase } from '../../f-connection';
|
|
3
3
|
import { FMediator } from '@foblex/mediator';
|
|
4
4
|
import { ConnectionBaseDragHandler } from './connection-base-drag-handler';
|
|
5
5
|
import { FComponentsStore } from '../../f-storage';
|
|
6
6
|
export declare class ConnectionTargetDragHandler extends ConnectionBaseDragHandler {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
constructor(fMediator: FMediator, fComponentsStore: FComponentsStore, connection: FConnectionBase, minDistance: IPoint, maxDistance: IPoint);
|
|
7
|
+
restrictions: IMinMaxPoint;
|
|
8
|
+
constructor(fMediator: FMediator, fComponentsStore: FComponentsStore, connection: FConnectionBase, restrictions: IMinMaxPoint);
|
|
10
9
|
onPointerMove(difference: IPoint): void;
|
|
11
10
|
private getNewLineValue;
|
|
12
11
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IPoint } from '@foblex/2d';
|
|
1
|
+
import { IMinMaxPoint, IPoint } from '@foblex/2d';
|
|
2
2
|
import { FConnectionBase } from '../../f-connection';
|
|
3
3
|
import { FMediator } from '@foblex/mediator';
|
|
4
4
|
import { ConnectionBaseDragHandler } from './connection-base-drag-handler';
|
|
@@ -7,8 +7,8 @@ export declare class ConnectionDragHandler extends ConnectionBaseDragHandler {
|
|
|
7
7
|
private sourceRestrictions;
|
|
8
8
|
private targetRestrictions;
|
|
9
9
|
constructor(fMediator: FMediator, fComponentsStore: FComponentsStore, connection: FConnectionBase);
|
|
10
|
-
setOutputRestrictions(
|
|
11
|
-
setInputRestrictions(
|
|
10
|
+
setOutputRestrictions(restrictions: IMinMaxPoint): void;
|
|
11
|
+
setInputRestrictions(restrictions: IMinMaxPoint): void;
|
|
12
12
|
onPointerMove(difference: IPoint): void;
|
|
13
13
|
private getNewLineValue;
|
|
14
14
|
}
|
|
@@ -7,12 +7,15 @@ export declare class CreateMoveNodesDragModelFromSelectionExecution implements I
|
|
|
7
7
|
private _fComponentsStore;
|
|
8
8
|
private _fDraggableDataContext;
|
|
9
9
|
handle(request: CreateMoveNodesDragModelFromSelectionRequest): IDraggableItem[];
|
|
10
|
-
private
|
|
10
|
+
private _getDraggedNodes;
|
|
11
11
|
private _getNodesFromSelection;
|
|
12
12
|
private _findNode;
|
|
13
13
|
private _getNodesWithRestrictions;
|
|
14
|
-
private
|
|
15
|
-
private
|
|
14
|
+
private _getNodeMoveRestrictions;
|
|
15
|
+
private _isParentNodeInArray;
|
|
16
|
+
private _getChildrenItemsToDrag;
|
|
17
|
+
private _getChildrenNodes;
|
|
18
|
+
private _applyCommonRestrictions;
|
|
16
19
|
private getAllOutputIds;
|
|
17
20
|
private getOutputsForNode;
|
|
18
21
|
private getAllInputIds;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { CalculateCommonNodeMoveRestrictionsRequest } from './calculate-common-node-move-restrictions.request';
|
|
2
|
+
import { IMinMaxPoint } from '@foblex/2d';
|
|
3
|
+
import { IExecution } from '@foblex/mediator';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class CalculateCommonNodeMoveRestrictionsExecution implements IExecution<CalculateCommonNodeMoveRestrictionsRequest, IMinMaxPoint> {
|
|
6
|
+
handle(request: CalculateCommonNodeMoveRestrictionsRequest): IMinMaxPoint;
|
|
7
|
+
private _calculateCommonRestrictions;
|
|
8
|
+
private _clampRestrictions;
|
|
9
|
+
private _clampMinRestrictions;
|
|
10
|
+
private _clampMaxRestrictions;
|
|
11
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CalculateCommonNodeMoveRestrictionsExecution, never>;
|
|
12
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<CalculateCommonNodeMoveRestrictionsExecution>;
|
|
13
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { CalculateNodeMoveRestrictionsRequest } from './calculate-node-move-restrictions.request';
|
|
2
|
+
import { IMinMaxPoint } from '@foblex/2d';
|
|
3
|
+
import { IExecution } from '@foblex/mediator';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class CalculateNodeMoveRestrictionsExecution implements IExecution<CalculateNodeMoveRestrictionsRequest, IMinMaxPoint> {
|
|
6
|
+
private _fMediator;
|
|
7
|
+
handle(request: CalculateNodeMoveRestrictionsRequest): IMinMaxPoint;
|
|
8
|
+
private _getNodeRect;
|
|
9
|
+
private _getParentNodeRect;
|
|
10
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CalculateNodeMoveRestrictionsExecution, never>;
|
|
11
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<CalculateNodeMoveRestrictionsExecution>;
|
|
12
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { FNodeBase } from '../../../../../f-node';
|
|
2
|
-
export declare class
|
|
2
|
+
export declare class CalculateNodeMoveRestrictionsRequest {
|
|
3
3
|
fNode: FNodeBase;
|
|
4
4
|
hasParentNodeInSelected: boolean;
|
|
5
5
|
constructor(fNode: FNodeBase, hasParentNodeInSelected: boolean);
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { PutInputConnectionHandlersToArrayRequest } from './put-input-connection-handlers-to-array.request';
|
|
2
|
-
import {
|
|
3
|
-
import { FMediator, IExecution } from '@foblex/mediator';
|
|
2
|
+
import { IExecution } from '@foblex/mediator';
|
|
4
3
|
import { FNodeBase } from '../../../../../f-node';
|
|
5
4
|
import { FConnectionBase } from '../../../../../f-connection';
|
|
6
5
|
import * as i0 from "@angular/core";
|
|
7
6
|
export declare class PutInputConnectionHandlersToArrayExecution implements IExecution<PutInputConnectionHandlersToArrayRequest, void> {
|
|
8
|
-
private
|
|
9
|
-
private
|
|
10
|
-
private get
|
|
11
|
-
constructor(fComponentsStore: FComponentsStore, fMediator: FMediator);
|
|
7
|
+
private _fMediator;
|
|
8
|
+
private _fComponentsStore;
|
|
9
|
+
private get _fConnections();
|
|
12
10
|
handle(request: PutInputConnectionHandlersToArrayRequest): void;
|
|
13
11
|
getInputConnections(node: FNodeBase): FConnectionBase[];
|
|
14
12
|
private getInputsForNode;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { FNodeBase } from '../../../f-node';
|
|
2
|
-
import {
|
|
3
|
-
export interface INodeWithDistanceRestrictions extends
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
import { IMinMaxPoint } from '@foblex/2d';
|
|
3
|
+
export interface INodeWithDistanceRestrictions extends IMinMaxPoint {
|
|
4
|
+
fDraggedNode: FNodeBase;
|
|
5
|
+
fParentNodes?: FNodeBase[];
|
|
6
6
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
export * from './domain/calculate-common-node-move-restrictions';
|
|
1
2
|
export * from './domain/put-input-connection-handlers-to-array';
|
|
2
3
|
export * from './domain/put-output-connection-handlers-to-array';
|
|
3
|
-
export * from './domain/
|
|
4
|
+
export * from './domain/calculate-node-move-restrictions';
|
|
4
5
|
export * from './providers';
|
|
5
6
|
export * from './create-move-nodes-drag-model-from-selection.execution';
|
|
6
7
|
export * from './create-move-nodes-drag-model-from-selection.request';
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { CreateMoveNodesDragModelFromSelectionExecution } from './create-move-nodes-drag-model-from-selection.execution';
|
|
2
|
-
import {
|
|
2
|
+
import { CalculateNodeMoveRestrictionsExecution } from './domain/calculate-node-move-restrictions';
|
|
3
3
|
import { PutInputConnectionHandlersToArrayExecution } from './domain/put-input-connection-handlers-to-array';
|
|
4
4
|
import { PutOutputConnectionHandlersToArrayExecution } from './domain/put-output-connection-handlers-to-array';
|
|
5
|
-
|
|
5
|
+
import { CalculateCommonNodeMoveRestrictionsExecution } from './domain/calculate-common-node-move-restrictions';
|
|
6
|
+
export declare const CREATE_MOVE_NODE_DRAG_MODEL_FROM_SELECTION_PROVIDERS: (typeof CalculateCommonNodeMoveRestrictionsExecution | typeof CalculateNodeMoveRestrictionsExecution | typeof PutInputConnectionHandlersToArrayExecution | typeof PutOutputConnectionHandlersToArrayExecution | typeof CreateMoveNodesDragModelFromSelectionExecution)[];
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export * from './create-move-nodes-drag-model-from-selection';
|
|
2
|
+
export * from './line-alignment-preparation';
|
|
2
3
|
export * from './node-drag-to-parent-finalize';
|
|
3
4
|
export * from './node-drag-to-parent-preparation';
|
|
4
5
|
export * from './node-move-preparation';
|
|
@@ -8,6 +9,7 @@ export * from './connection-base-drag-handler';
|
|
|
8
9
|
export * from './connection-source.drag-handler';
|
|
9
10
|
export * from './connection-target.drag-handler';
|
|
10
11
|
export * from './f-drop-to-group.event';
|
|
12
|
+
export * from './line-alignment.drag-handler';
|
|
11
13
|
export * from './node.drag-handler';
|
|
12
14
|
export * from './node-drag-to-parent.drag-handler';
|
|
13
15
|
export * from './node-resize-by-child.drag-handler';
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { LineAlignmentPreparationRequest } from './line-alignment-preparation.request';
|
|
2
|
+
import { IExecution } from '@foblex/mediator';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class LineAlignmentPreparationExecution implements IExecution<LineAlignmentPreparationRequest, void> {
|
|
5
|
+
private _fMediator;
|
|
6
|
+
private _fComponentsStore;
|
|
7
|
+
private _fDraggableDataContext;
|
|
8
|
+
private _fBrowser;
|
|
9
|
+
private _lineService;
|
|
10
|
+
handle(request: LineAlignmentPreparationRequest): void;
|
|
11
|
+
private _getDraggedNodes;
|
|
12
|
+
private _addLineAlignmentDragHandler;
|
|
13
|
+
private _getFlowHostSize;
|
|
14
|
+
private _createLineService;
|
|
15
|
+
private _getDraggedNodesBoundingRect;
|
|
16
|
+
private _getStaticNodeRects;
|
|
17
|
+
private _getStaticNodes;
|
|
18
|
+
private _getCommonRestrictions;
|
|
19
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<LineAlignmentPreparationExecution, never>;
|
|
20
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<LineAlignmentPreparationExecution>;
|
|
21
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { IMinMaxPoint, IPoint, IRect, ISize } from '@foblex/2d';
|
|
2
|
+
import { IDraggableItem } from '../index';
|
|
3
|
+
import { FComponentsStore } from '../../f-storage';
|
|
4
|
+
import { ILineAlignmentResult, LineService } from '../../f-line-alignment';
|
|
5
|
+
export declare class LineAlignmentDragHandler implements IDraggableItem {
|
|
6
|
+
private _fComponentsStore;
|
|
7
|
+
private _lineService;
|
|
8
|
+
private _size;
|
|
9
|
+
private _draggedNodeRect;
|
|
10
|
+
private _rects;
|
|
11
|
+
private _restrictions;
|
|
12
|
+
private _debounceTimer;
|
|
13
|
+
private readonly _transform;
|
|
14
|
+
constructor(_fComponentsStore: FComponentsStore, _lineService: LineService, _size: ISize, _draggedNodeRect: IRect, _rects: IRect[], _restrictions: IMinMaxPoint);
|
|
15
|
+
onPointerMove(difference: IPoint): void;
|
|
16
|
+
private _drawIntersectingLines;
|
|
17
|
+
private _getDifference;
|
|
18
|
+
findNearestCoordinate(difference: IPoint): ILineAlignmentResult;
|
|
19
|
+
onPointerUp(): void;
|
|
20
|
+
}
|
|
@@ -7,12 +7,13 @@ export declare class NodeMovePreparationExecution implements IExecution<NodeMove
|
|
|
7
7
|
private _fDraggableDataContext;
|
|
8
8
|
private get _transform();
|
|
9
9
|
private get _fHost();
|
|
10
|
+
private _fNode;
|
|
10
11
|
handle(request: NodeMovePreparationRequest): void;
|
|
12
|
+
private _isValid;
|
|
13
|
+
private _isDragHandleElement;
|
|
11
14
|
private _getNode;
|
|
12
|
-
private
|
|
15
|
+
private _calculateDraggedItems;
|
|
13
16
|
private _dragModelFromSelection;
|
|
14
|
-
private _initializeLineAlignment;
|
|
15
|
-
private _filterNodesFromDraggableItems;
|
|
16
17
|
static ɵfac: i0.ɵɵFactoryDeclaration<NodeMovePreparationExecution, never>;
|
|
17
18
|
static ɵprov: i0.ɵɵInjectableDeclaration<NodeMovePreparationExecution>;
|
|
18
19
|
}
|