@foblex/flow 17.0.8 → 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-draggable/emit-selection-change-event/emit-selection-change-event.execution.mjs +2 -2
- 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-connection/common/f-drag-handle/f-connection-drag-handle.component.mjs +6 -4
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.execution.mjs +25 -19
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/index.mjs +1 -2
- package/esm2022/f-draggable/connections/create-connection/create-connection.drag-handler.mjs +3 -3
- package/esm2022/f-draggable/connections/providers.mjs +3 -5
- 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/index.mjs +1 -2
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.execution.mjs +46 -42
- 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 +26 -22
- package/esm2022/f-draggable/f-draggable-base.mjs +1 -1
- package/esm2022/f-draggable/f-draggable-data-context.mjs +4 -2
- package/esm2022/f-draggable/f-draggable.directive.mjs +11 -7
- 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 +8 -6
- 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-draggable/single-select/index.mjs +1 -2
- package/esm2022/f-draggable/single-select/providers.mjs +1 -3
- package/esm2022/f-draggable/single-select/single-select.execution.mjs +8 -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/common/f-drag-handle/f-connection-drag-handle.component.d.ts +2 -0
- package/f-connection/providers.d.ts +1 -1
- package/f-connectors/providers.d.ts +1 -1
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.execution.d.ts +6 -6
- package/f-draggable/connections/create-connection/create-connection-preparation/index.d.ts +0 -1
- package/f-draggable/connections/providers.d.ts +3 -3
- 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-preparation/index.d.ts +0 -1
- package/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.execution.d.ts +14 -16
- 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/f-draggable-base.d.ts +1 -0
- package/f-draggable/f-draggable-data-context.d.ts +1 -2
- package/f-draggable/f-draggable.directive.d.ts +3 -1
- 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-finalize/node-move-finalize.execution.d.ts +1 -1
- 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-draggable/single-select/index.d.ts +0 -1
- package/f-draggable/single-select/providers.d.ts +1 -2
- package/f-draggable/single-select/single-select.execution.d.ts +1 -0
- 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-minimap/domain/providers.d.ts +1 -1
- 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 +654 -624
- package/fesm2022/foblex-flow.mjs.map +1 -1
- package/package.json +2 -2
- package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.validator.mjs +0 -35
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.validator.mjs +0 -47
- 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/esm2022/f-draggable/single-select/single-select.validator.mjs +0 -29
- package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.validator.d.ts +0 -15
- package/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.validator.d.ts +0 -20
- 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
- package/f-draggable/single-select/single-select.validator.d.ts +0 -13
package/fesm2022/foblex-flow.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { InjectionToken, inject, Injectable, Directive, ElementRef, Input, HostBinding, EventEmitter, DestroyRef, Output, booleanAttribute, Inject, Component, ChangeDetectionStrategy, ViewChild, Optional, ContentChildren, NgZone, ContentChild, NgModule } from '@angular/core';
|
|
3
|
-
import { RectExtensions, RoundedRect, TransformModelExtensions, PointExtensions, Point, SizeExtensions, LineExtensions, GetIntersections, setRectToElement, adjustRectToMinSize,
|
|
3
|
+
import { RectExtensions, RoundedRect, TransformModelExtensions, PointExtensions, Point, SizeExtensions, LineExtensions, GetIntersections, findClosestAlignment, setRectToElement, adjustRectToMinSize, setRectToViewBox } from '@foblex/2d';
|
|
4
4
|
import { __decorate } from 'tslib';
|
|
5
5
|
import * as i2 from '@foblex/mediator';
|
|
6
6
|
import { FExecutionRegister, FMediator, FValidatorRegister } from '@foblex/mediator';
|
|
@@ -229,6 +229,7 @@ class FComponentsStore {
|
|
|
229
229
|
fInputs = [];
|
|
230
230
|
fOutlets = [];
|
|
231
231
|
fDraggable;
|
|
232
|
+
fLineAlignment;
|
|
232
233
|
addComponent(collection, component) {
|
|
233
234
|
collection.push(component);
|
|
234
235
|
this.countChanged();
|
|
@@ -2243,6 +2244,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
|
|
|
2243
2244
|
const F_CONNECTION_DRAG_HANDLE_CLASS = 'f-connection-drag-handle';
|
|
2244
2245
|
class FConnectionDragHandleComponent {
|
|
2245
2246
|
elementReference;
|
|
2247
|
+
point;
|
|
2248
|
+
radius = 8;
|
|
2246
2249
|
class = F_CONNECTION_DRAG_HANDLE_CLASS;
|
|
2247
2250
|
get hostElement() {
|
|
2248
2251
|
return this.elementReference.nativeElement;
|
|
@@ -2251,9 +2254,9 @@ class FConnectionDragHandleComponent {
|
|
|
2251
2254
|
this.elementReference = elementReference;
|
|
2252
2255
|
}
|
|
2253
2256
|
redraw(penultimatePoint, endPoint) {
|
|
2254
|
-
|
|
2255
|
-
this.hostElement.setAttribute('cx', point.x.toString());
|
|
2256
|
-
this.hostElement.setAttribute('cy', point.y.toString());
|
|
2257
|
+
this.point = this._calculateCircleCenter(penultimatePoint, endPoint, 8);
|
|
2258
|
+
this.hostElement.setAttribute('cx', this.point.x.toString());
|
|
2259
|
+
this.hostElement.setAttribute('cy', this.point.y.toString());
|
|
2257
2260
|
}
|
|
2258
2261
|
_calculateCircleCenter(start, end, radius) {
|
|
2259
2262
|
const direction = { x: end.x - start.x, y: end.y - start.y };
|
|
@@ -3353,7 +3356,6 @@ class FDraggableDataContext {
|
|
|
3353
3356
|
onPointerDownScale = 1;
|
|
3354
3357
|
onPointerDownPosition = new Point(0, 0);
|
|
3355
3358
|
draggableItems = [];
|
|
3356
|
-
fLineAlignment;
|
|
3357
3359
|
reset() {
|
|
3358
3360
|
this.draggableItems = [];
|
|
3359
3361
|
this.onPointerDownScale = 1;
|
|
@@ -3362,6 +3364,9 @@ class FDraggableDataContext {
|
|
|
3362
3364
|
markSelectionAsChanged() {
|
|
3363
3365
|
this.isSelectedChanged = true;
|
|
3364
3366
|
}
|
|
3367
|
+
isEmpty() {
|
|
3368
|
+
return !this.draggableItems.length;
|
|
3369
|
+
}
|
|
3365
3370
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FDraggableDataContext, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
3366
3371
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FDraggableDataContext });
|
|
3367
3372
|
}
|
|
@@ -3642,13 +3647,13 @@ class CreateConnectionDragHandler {
|
|
|
3642
3647
|
}
|
|
3643
3648
|
}
|
|
3644
3649
|
_drawConnectionForCreate(fInputRect, fSide) {
|
|
3645
|
-
const line = this.fMediator.
|
|
3650
|
+
const line = this.fMediator.execute(new CalculateConnectionLineByBehaviorRequest(this.fOutputWithRect.fRect, fInputRect, this.fConnection.fBehavior, this.fOutputWithRect.fConnector.fConnectableSide, fSide));
|
|
3646
3651
|
this.fConnection.setLine(line.point1, this.fOutputWithRect.fConnector.fConnectableSide, line.point2, fSide);
|
|
3647
3652
|
this.fConnection.redraw();
|
|
3648
3653
|
}
|
|
3649
3654
|
_drawSnapConnection(fClosestInput) {
|
|
3650
3655
|
if (fClosestInput) {
|
|
3651
|
-
const line = this.fMediator.
|
|
3656
|
+
const line = this.fMediator.execute(new CalculateConnectionLineByBehaviorRequest(this.fOutputWithRect.fRect, fClosestInput.fRect, this.fSnapConnection.fBehavior, this.fOutputWithRect.fConnector.fConnectableSide, fClosestInput.fConnector.fConnectableSide));
|
|
3652
3657
|
this.fSnapConnection.show();
|
|
3653
3658
|
this.fSnapConnection.setLine(line.point1, this.fOutputWithRect.fConnector.fConnectableSide, line.point2, fClosestInput.fConnector.fConnectableSide);
|
|
3654
3659
|
this.fSnapConnection.redraw();
|
|
@@ -4013,31 +4018,37 @@ class CreateConnectionPreparationRequest {
|
|
|
4013
4018
|
}
|
|
4014
4019
|
|
|
4015
4020
|
let CreateConnectionPreparationExecution = class CreateConnectionPreparationExecution {
|
|
4016
|
-
|
|
4017
|
-
|
|
4018
|
-
|
|
4019
|
-
this.fComponentsStore = fComponentsStore;
|
|
4020
|
-
this.fMediator = fMediator;
|
|
4021
|
-
}
|
|
4021
|
+
_fMediator = inject(FMediator);
|
|
4022
|
+
_fComponentsStore = inject(FComponentsStore);
|
|
4023
|
+
_fDraggableDataContext = inject(FDraggableDataContext);
|
|
4022
4024
|
handle(request) {
|
|
4025
|
+
if (!this._isValid(request)) {
|
|
4026
|
+
return;
|
|
4027
|
+
}
|
|
4023
4028
|
if (isNodeOutlet(request.event.targetElement)) {
|
|
4024
|
-
this.
|
|
4029
|
+
this._fMediator.send(new CreateConnectionFromOutletPreparationRequest(request.event));
|
|
4025
4030
|
}
|
|
4026
|
-
else if (this.isNodeOutput(request.event.targetElement, this.
|
|
4027
|
-
this.
|
|
4031
|
+
else if (this.isNodeOutput(request.event.targetElement, this._getNode(request.event))) {
|
|
4032
|
+
this._fMediator.send(new CreateConnectionFromOutputPreparationRequest(request.event));
|
|
4028
4033
|
}
|
|
4029
4034
|
}
|
|
4030
|
-
|
|
4031
|
-
return this.
|
|
4035
|
+
_isValid(request) {
|
|
4036
|
+
return !!this._getNode(request.event) && this._isValidConditions();
|
|
4037
|
+
}
|
|
4038
|
+
_getNode(event) {
|
|
4039
|
+
return this._fComponentsStore
|
|
4032
4040
|
.fNodes.find(n => n.isContains(event.targetElement));
|
|
4033
4041
|
}
|
|
4042
|
+
_isValidConditions() {
|
|
4043
|
+
return !this._fDraggableDataContext.draggableItems.length && !!this._fComponentsStore.fTempConnection;
|
|
4044
|
+
}
|
|
4034
4045
|
isNodeOutput(targetElement, node) {
|
|
4035
4046
|
return isNodeOutput(targetElement) && !this.getOutlets(node).length;
|
|
4036
4047
|
}
|
|
4037
4048
|
getOutlets(node) {
|
|
4038
|
-
return this.
|
|
4049
|
+
return this._fComponentsStore.fOutlets.filter((x) => node.isContains(x.hostElement));
|
|
4039
4050
|
}
|
|
4040
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CreateConnectionPreparationExecution, deps: [
|
|
4051
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CreateConnectionPreparationExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4041
4052
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CreateConnectionPreparationExecution });
|
|
4042
4053
|
};
|
|
4043
4054
|
CreateConnectionPreparationExecution = __decorate([
|
|
@@ -4045,34 +4056,7 @@ CreateConnectionPreparationExecution = __decorate([
|
|
|
4045
4056
|
], CreateConnectionPreparationExecution);
|
|
4046
4057
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CreateConnectionPreparationExecution, decorators: [{
|
|
4047
4058
|
type: Injectable
|
|
4048
|
-
}]
|
|
4049
|
-
|
|
4050
|
-
let CreateConnectionPreparationValidator = class CreateConnectionPreparationValidator {
|
|
4051
|
-
fComponentsStore;
|
|
4052
|
-
fDraggableDataContext;
|
|
4053
|
-
constructor(fComponentsStore, fDraggableDataContext) {
|
|
4054
|
-
this.fComponentsStore = fComponentsStore;
|
|
4055
|
-
this.fDraggableDataContext = fDraggableDataContext;
|
|
4056
|
-
}
|
|
4057
|
-
handle(request) {
|
|
4058
|
-
return !!this.getNode(request.event) && this.isValidConditions();
|
|
4059
|
-
}
|
|
4060
|
-
getNode(event) {
|
|
4061
|
-
return this.fComponentsStore
|
|
4062
|
-
.fNodes.find(n => n.isContains(event.targetElement));
|
|
4063
|
-
}
|
|
4064
|
-
isValidConditions() {
|
|
4065
|
-
return !this.fDraggableDataContext.draggableItems.length && !!this.fComponentsStore.fTempConnection;
|
|
4066
|
-
}
|
|
4067
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CreateConnectionPreparationValidator, deps: [{ token: FComponentsStore }, { token: FDraggableDataContext }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4068
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CreateConnectionPreparationValidator });
|
|
4069
|
-
};
|
|
4070
|
-
CreateConnectionPreparationValidator = __decorate([
|
|
4071
|
-
FValidatorRegister(CreateConnectionPreparationRequest)
|
|
4072
|
-
], CreateConnectionPreparationValidator);
|
|
4073
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CreateConnectionPreparationValidator, decorators: [{
|
|
4074
|
-
type: Injectable
|
|
4075
|
-
}], ctorParameters: () => [{ type: FComponentsStore }, { type: FDraggableDataContext }] });
|
|
4059
|
+
}] });
|
|
4076
4060
|
|
|
4077
4061
|
class ReassignConnectionFinalizeRequest {
|
|
4078
4062
|
event;
|
|
@@ -4125,13 +4109,16 @@ class ReassignConnectionDragHandler {
|
|
|
4125
4109
|
}
|
|
4126
4110
|
}
|
|
4127
4111
|
_drawConnection(fInputRect, fSide) {
|
|
4128
|
-
const line = this.
|
|
4112
|
+
const line = this._getLineToPointer(fInputRect, fSide);
|
|
4129
4113
|
this.fConnection.setLine(line.point1, this.fOutputWithRect.fConnector.fConnectableSide, line.point2, fSide);
|
|
4130
4114
|
this.fConnection.redraw();
|
|
4131
4115
|
}
|
|
4116
|
+
_getLineToPointer(fInputRect, fSide) {
|
|
4117
|
+
return this.fMediator.execute(new CalculateConnectionLineByBehaviorRequest(this.fOutputWithRect.fRect, fInputRect, this.fConnection.fBehavior, this.fOutputWithRect.fConnector.fConnectableSide, fSide));
|
|
4118
|
+
}
|
|
4132
4119
|
_drawSnapConnection(fClosestInput) {
|
|
4133
4120
|
if (fClosestInput) {
|
|
4134
|
-
const line = this.
|
|
4121
|
+
const line = this._getLineToClosestInput(fClosestInput);
|
|
4135
4122
|
this.fSnapConnection.show();
|
|
4136
4123
|
this.fSnapConnection.setLine(line.point1, this.fOutputWithRect.fConnector.fConnectableSide, line.point2, fClosestInput.fConnector.fConnectableSide);
|
|
4137
4124
|
this.fSnapConnection.redraw();
|
|
@@ -4140,6 +4127,9 @@ class ReassignConnectionDragHandler {
|
|
|
4140
4127
|
this.fSnapConnection?.hide();
|
|
4141
4128
|
}
|
|
4142
4129
|
}
|
|
4130
|
+
_getLineToClosestInput(fClosestInput) {
|
|
4131
|
+
return this.fMediator.execute(new CalculateConnectionLineByBehaviorRequest(this.fOutputWithRect.fRect, fClosestInput.fRect, this.fSnapConnection.fBehavior, this.fOutputWithRect.fConnector.fConnectableSide, fClosestInput.fConnector.fConnectableSide));
|
|
4132
|
+
}
|
|
4143
4133
|
getClosetInput(difference) {
|
|
4144
4134
|
if (!this.fSnapConnection) {
|
|
4145
4135
|
return undefined;
|
|
@@ -4174,44 +4164,45 @@ class FReassignConnectionEvent {
|
|
|
4174
4164
|
}
|
|
4175
4165
|
|
|
4176
4166
|
let ReassignConnectionFinalizeExecution = class ReassignConnectionFinalizeExecution {
|
|
4177
|
-
|
|
4178
|
-
|
|
4179
|
-
|
|
4180
|
-
get
|
|
4181
|
-
return this.
|
|
4182
|
-
}
|
|
4183
|
-
get dragHandler() {
|
|
4184
|
-
return this.fDraggableDataContext.draggableItems[0];
|
|
4167
|
+
_fMediator = inject(FMediator);
|
|
4168
|
+
_fComponentsStore = inject(FComponentsStore);
|
|
4169
|
+
_fDraggableDataContext = inject(FDraggableDataContext);
|
|
4170
|
+
get _fDraggable() {
|
|
4171
|
+
return this._fComponentsStore.fDraggable;
|
|
4185
4172
|
}
|
|
4186
|
-
|
|
4187
|
-
this.
|
|
4188
|
-
this.fDraggableDataContext = fDraggableDataContext;
|
|
4189
|
-
this.fMediator = fMediator;
|
|
4173
|
+
get _fDragHandler() {
|
|
4174
|
+
return this._fDraggableDataContext.draggableItems[0];
|
|
4190
4175
|
}
|
|
4191
4176
|
handle(request) {
|
|
4192
|
-
if (!this.
|
|
4177
|
+
if (!this._isDroppedConnectionReassignEvent()) {
|
|
4193
4178
|
return;
|
|
4194
4179
|
}
|
|
4195
|
-
this.
|
|
4196
|
-
this.
|
|
4180
|
+
this._applyReassignEvent(request.event);
|
|
4181
|
+
this._fDragHandler.onPointerUp();
|
|
4197
4182
|
}
|
|
4198
|
-
|
|
4199
|
-
return this.
|
|
4183
|
+
_isDroppedConnectionReassignEvent() {
|
|
4184
|
+
return this._fDraggableDataContext.draggableItems.some((x) => x instanceof ReassignConnectionDragHandler);
|
|
4200
4185
|
}
|
|
4201
|
-
|
|
4202
|
-
const
|
|
4203
|
-
if (!!
|
|
4186
|
+
_applyReassignEvent(event) {
|
|
4187
|
+
const fInput = this._getInputUnderPointer(event);
|
|
4188
|
+
if (!!fInput && !this._isReassignToDifferentInput(fInput)) {
|
|
4204
4189
|
return;
|
|
4205
4190
|
}
|
|
4206
|
-
this.
|
|
4191
|
+
this._emitReassignConnectionEvent(event, fInput);
|
|
4207
4192
|
}
|
|
4208
|
-
|
|
4209
|
-
return this.
|
|
4193
|
+
_getInputUnderPointer(event) {
|
|
4194
|
+
return this._fMediator.send(new GetInputUnderPointerRequest(event, this._fDragHandler));
|
|
4210
4195
|
}
|
|
4211
|
-
|
|
4212
|
-
return this.
|
|
4196
|
+
_isReassignToDifferentInput(fInput) {
|
|
4197
|
+
return this._fDragHandler.fConnection.fInputId !== fInput.fId;
|
|
4213
4198
|
}
|
|
4214
|
-
|
|
4199
|
+
_emitReassignConnectionEvent(event, fInput) {
|
|
4200
|
+
this._fDraggable.fReassignConnection.emit(this._getEventData(event, fInput));
|
|
4201
|
+
}
|
|
4202
|
+
_getEventData(event, fInput) {
|
|
4203
|
+
return new FReassignConnectionEvent(this._fDragHandler.fConnection.fId, this._fDragHandler.fConnection.fOutputId, this._fDragHandler.fConnection.fInputId, fInput?.fId, event.getPosition());
|
|
4204
|
+
}
|
|
4205
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: ReassignConnectionFinalizeExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4215
4206
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: ReassignConnectionFinalizeExecution });
|
|
4216
4207
|
};
|
|
4217
4208
|
ReassignConnectionFinalizeExecution = __decorate([
|
|
@@ -4219,7 +4210,7 @@ ReassignConnectionFinalizeExecution = __decorate([
|
|
|
4219
4210
|
], ReassignConnectionFinalizeExecution);
|
|
4220
4211
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: ReassignConnectionFinalizeExecution, decorators: [{
|
|
4221
4212
|
type: Injectable
|
|
4222
|
-
}]
|
|
4213
|
+
}] });
|
|
4223
4214
|
|
|
4224
4215
|
class ReassignConnectionPreparationRequest {
|
|
4225
4216
|
event;
|
|
@@ -4229,50 +4220,57 @@ class ReassignConnectionPreparationRequest {
|
|
|
4229
4220
|
}
|
|
4230
4221
|
|
|
4231
4222
|
let ReassignConnectionPreparationExecution = class ReassignConnectionPreparationExecution {
|
|
4232
|
-
|
|
4233
|
-
|
|
4234
|
-
|
|
4235
|
-
|
|
4236
|
-
get
|
|
4237
|
-
return this.
|
|
4238
|
-
}
|
|
4239
|
-
get flowHost() {
|
|
4240
|
-
return this.fComponentsStore.fFlow.hostElement;
|
|
4223
|
+
_fMediator = inject(FMediator);
|
|
4224
|
+
_fComponentsStore = inject(FComponentsStore);
|
|
4225
|
+
_fDraggableDataContext = inject(FDraggableDataContext);
|
|
4226
|
+
_fConnection;
|
|
4227
|
+
get _transform() {
|
|
4228
|
+
return this._fComponentsStore.fCanvas.transform;
|
|
4241
4229
|
}
|
|
4242
|
-
get
|
|
4243
|
-
return this.
|
|
4230
|
+
get _fHost() {
|
|
4231
|
+
return this._fComponentsStore.fFlow.hostElement;
|
|
4244
4232
|
}
|
|
4245
|
-
|
|
4246
|
-
this.
|
|
4247
|
-
this.fDraggableDataContext = fDraggableDataContext;
|
|
4248
|
-
this.fMediator = fMediator;
|
|
4249
|
-
this.fBrowser = fBrowser;
|
|
4233
|
+
get _fConnections() {
|
|
4234
|
+
return this._fComponentsStore.fConnections;
|
|
4250
4235
|
}
|
|
4251
4236
|
handle(request) {
|
|
4252
|
-
|
|
4253
|
-
if (connectionToReassign.fDraggingDisabled) {
|
|
4237
|
+
if (!this._isValid(request)) {
|
|
4254
4238
|
return;
|
|
4255
4239
|
}
|
|
4256
|
-
this.
|
|
4257
|
-
this.
|
|
4258
|
-
|
|
4259
|
-
|
|
4260
|
-
|
|
4261
|
-
new ReassignConnectionDragHandler(this.fMediator, this.fComponentsStore, connectionToReassign)
|
|
4240
|
+
this._fDraggableDataContext.onPointerDownScale = this._transform.scale;
|
|
4241
|
+
this._fDraggableDataContext.onPointerDownPosition = Point.fromPoint(request.event.getPosition())
|
|
4242
|
+
.elementTransform(this._fHost).div(this._transform.scale);
|
|
4243
|
+
this._fDraggableDataContext.draggableItems = [
|
|
4244
|
+
new ReassignConnectionDragHandler(this._fMediator, this._fComponentsStore, this._fConnection)
|
|
4262
4245
|
];
|
|
4246
|
+
setTimeout(() => this._updateConnectionLayer());
|
|
4263
4247
|
}
|
|
4264
|
-
|
|
4265
|
-
|
|
4266
|
-
|
|
4267
|
-
}).find((x) => !!x);
|
|
4248
|
+
_isValid(request) {
|
|
4249
|
+
this._fConnection = this._getConnectionToReassign(this._getPointInFlow(request));
|
|
4250
|
+
return !!this._fConnection && !this._fDraggableDataContext.draggableItems.length;
|
|
4268
4251
|
}
|
|
4269
|
-
|
|
4270
|
-
return
|
|
4252
|
+
_getPointInFlow(request) {
|
|
4253
|
+
return Point.fromPoint(request.event.getPosition())
|
|
4254
|
+
.elementTransform(this._fHost)
|
|
4255
|
+
.sub(this._transform.scaledPosition).sub(this._transform.position)
|
|
4256
|
+
.div(this._transform.scale);
|
|
4271
4257
|
}
|
|
4272
|
-
|
|
4273
|
-
|
|
4258
|
+
_getConnectionToReassign(position) {
|
|
4259
|
+
const connections = this._getConnectionsFromPoint(position);
|
|
4260
|
+
return connections.length ? connections[0] : undefined;
|
|
4261
|
+
}
|
|
4262
|
+
_getConnectionsFromPoint(position) {
|
|
4263
|
+
return this._fConnections.filter((x) => {
|
|
4264
|
+
return this._isPointInsideCircle(position, x.fDragHandle.point) && !x.fDraggingDisabled;
|
|
4265
|
+
});
|
|
4266
|
+
}
|
|
4267
|
+
_isPointInsideCircle(point, circleCenter) {
|
|
4268
|
+
return (point.x - circleCenter.x) ** 2 + (point.y - circleCenter.y) ** 2 <= 8 ** 2;
|
|
4274
4269
|
}
|
|
4275
|
-
|
|
4270
|
+
_updateConnectionLayer() {
|
|
4271
|
+
this._fMediator.execute(new UpdateItemAndChildrenLayersRequest(this._fConnection, this._fComponentsStore.fCanvas.fConnectionsContainer.nativeElement));
|
|
4272
|
+
}
|
|
4273
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: ReassignConnectionPreparationExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4276
4274
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: ReassignConnectionPreparationExecution });
|
|
4277
4275
|
};
|
|
4278
4276
|
ReassignConnectionPreparationExecution = __decorate([
|
|
@@ -4280,44 +4278,7 @@ ReassignConnectionPreparationExecution = __decorate([
|
|
|
4280
4278
|
], ReassignConnectionPreparationExecution);
|
|
4281
4279
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: ReassignConnectionPreparationExecution, decorators: [{
|
|
4282
4280
|
type: Injectable
|
|
4283
|
-
}]
|
|
4284
|
-
|
|
4285
|
-
let ReassignConnectionPreparationValidator = class ReassignConnectionPreparationValidator {
|
|
4286
|
-
fComponentsStore;
|
|
4287
|
-
fDraggableDataContext;
|
|
4288
|
-
fBrowser;
|
|
4289
|
-
get fConnections() {
|
|
4290
|
-
return this.fComponentsStore.fConnections;
|
|
4291
|
-
}
|
|
4292
|
-
constructor(fComponentsStore, fDraggableDataContext, fBrowser) {
|
|
4293
|
-
this.fComponentsStore = fComponentsStore;
|
|
4294
|
-
this.fDraggableDataContext = fDraggableDataContext;
|
|
4295
|
-
this.fBrowser = fBrowser;
|
|
4296
|
-
}
|
|
4297
|
-
handle(request) {
|
|
4298
|
-
return !!this.getDragHandleElements(request.event.getPosition()).length
|
|
4299
|
-
&& !this.fDraggableDataContext.draggableItems.length;
|
|
4300
|
-
}
|
|
4301
|
-
getDragHandleElements(position) {
|
|
4302
|
-
return this.getElementsFromPoint(position).filter((x) => {
|
|
4303
|
-
return !!this.getConnectionHandler(x) && x.classList.contains(F_CONNECTION_DRAG_HANDLE_CLASS);
|
|
4304
|
-
});
|
|
4305
|
-
}
|
|
4306
|
-
getElementsFromPoint(position) {
|
|
4307
|
-
return this.fBrowser.document.elementsFromPoint(position.x, position.y);
|
|
4308
|
-
}
|
|
4309
|
-
getConnectionHandler(element) {
|
|
4310
|
-
return this.fConnections.find(c => c.isContains(element));
|
|
4311
|
-
}
|
|
4312
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: ReassignConnectionPreparationValidator, deps: [{ token: FComponentsStore }, { token: FDraggableDataContext }, { token: i1.BrowserService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4313
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: ReassignConnectionPreparationValidator });
|
|
4314
|
-
};
|
|
4315
|
-
ReassignConnectionPreparationValidator = __decorate([
|
|
4316
|
-
FValidatorRegister(ReassignConnectionPreparationRequest)
|
|
4317
|
-
], ReassignConnectionPreparationValidator);
|
|
4318
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: ReassignConnectionPreparationValidator, decorators: [{
|
|
4319
|
-
type: Injectable
|
|
4320
|
-
}], ctorParameters: () => [{ type: FComponentsStore }, { type: FDraggableDataContext }, { type: i1.BrowserService }] });
|
|
4281
|
+
}] });
|
|
4321
4282
|
|
|
4322
4283
|
const CONNECTIONS_PROVIDERS = [
|
|
4323
4284
|
GetInputUnderPointerExecution,
|
|
@@ -4330,10 +4291,8 @@ const CONNECTIONS_PROVIDERS = [
|
|
|
4330
4291
|
CreateConnectionFromOutputPreparationExecution,
|
|
4331
4292
|
CreateConnectionFromOutputPreparationValidator,
|
|
4332
4293
|
CreateConnectionPreparationExecution,
|
|
4333
|
-
CreateConnectionPreparationValidator,
|
|
4334
4294
|
ReassignConnectionFinalizeExecution,
|
|
4335
4295
|
ReassignConnectionPreparationExecution,
|
|
4336
|
-
ReassignConnectionPreparationValidator,
|
|
4337
4296
|
];
|
|
4338
4297
|
|
|
4339
4298
|
class GetNormalizedParentNodeRectRequest {
|
|
@@ -4383,66 +4342,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
|
|
|
4383
4342
|
}], ctorParameters: () => [{ type: FComponentsStore }, { type: i2.FMediator }] });
|
|
4384
4343
|
|
|
4385
4344
|
class IsArrayHasParentNodeRequest {
|
|
4386
|
-
|
|
4387
|
-
|
|
4388
|
-
constructor(
|
|
4389
|
-
this.
|
|
4390
|
-
this.
|
|
4391
|
-
}
|
|
4392
|
-
}
|
|
4393
|
-
|
|
4394
|
-
class GetParentNodesRequest {
|
|
4395
|
-
fNode;
|
|
4396
|
-
constructor(fNode) {
|
|
4397
|
-
this.fNode = fNode;
|
|
4345
|
+
fParentNodes;
|
|
4346
|
+
fDraggedNodes;
|
|
4347
|
+
constructor(fParentNodes, fDraggedNodes) {
|
|
4348
|
+
this.fParentNodes = fParentNodes;
|
|
4349
|
+
this.fDraggedNodes = fDraggedNodes;
|
|
4398
4350
|
}
|
|
4399
4351
|
}
|
|
4400
4352
|
|
|
4401
|
-
let GetParentNodesExecution = class GetParentNodesExecution {
|
|
4402
|
-
_fComponentsStore = inject(FComponentsStore);
|
|
4403
|
-
handle(request) {
|
|
4404
|
-
return this._getParentNodes(request.fNode, new Set(), []);
|
|
4405
|
-
}
|
|
4406
|
-
_getParentNodes(fNode, visited, result) {
|
|
4407
|
-
if (visited.has(fNode.fId)) {
|
|
4408
|
-
throw new Error('Circular reference detected in the node hierarchy. Node id: ' + fNode.fId);
|
|
4409
|
-
}
|
|
4410
|
-
visited.add(fNode.fId);
|
|
4411
|
-
const parent = this._fComponentsStore.fNodes.find((x) => x.fId === fNode.fParentId);
|
|
4412
|
-
if (!parent) {
|
|
4413
|
-
return result;
|
|
4414
|
-
}
|
|
4415
|
-
result.push(parent);
|
|
4416
|
-
return this._getParentNodes(parent, visited, result);
|
|
4417
|
-
}
|
|
4418
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetParentNodesExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4419
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetParentNodesExecution });
|
|
4420
|
-
};
|
|
4421
|
-
GetParentNodesExecution = __decorate([
|
|
4422
|
-
FExecutionRegister(GetParentNodesRequest)
|
|
4423
|
-
], GetParentNodesExecution);
|
|
4424
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetParentNodesExecution, decorators: [{
|
|
4425
|
-
type: Injectable
|
|
4426
|
-
}] });
|
|
4427
|
-
|
|
4428
4353
|
let IsArrayHasParentNodeExecution = class IsArrayHasParentNodeExecution {
|
|
4429
|
-
fMediator;
|
|
4430
|
-
constructor(fMediator) {
|
|
4431
|
-
this.fMediator = fMediator;
|
|
4432
|
-
}
|
|
4433
4354
|
handle(request) {
|
|
4434
|
-
return this.
|
|
4355
|
+
return this._isParentNodeInArray(this._getParentNodeIds(request.fParentNodes), request.fDraggedNodes);
|
|
4435
4356
|
}
|
|
4436
|
-
|
|
4437
|
-
return
|
|
4357
|
+
_getParentNodeIds(fParentNodes) {
|
|
4358
|
+
return fParentNodes.map((x) => x.fId);
|
|
4438
4359
|
}
|
|
4439
|
-
|
|
4440
|
-
return
|
|
4360
|
+
_isParentNodeInArray(parentNodeIds, fDraggedNodes) {
|
|
4361
|
+
return fDraggedNodes.some((x) => parentNodeIds.includes(x.fId));
|
|
4441
4362
|
}
|
|
4442
|
-
|
|
4443
|
-
return fNodes.some((x) => parentNodeIds.includes(x.fId));
|
|
4444
|
-
}
|
|
4445
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: IsArrayHasParentNodeExecution, deps: [{ token: i2.FMediator }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4363
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: IsArrayHasParentNodeExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4446
4364
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: IsArrayHasParentNodeExecution });
|
|
4447
4365
|
};
|
|
4448
4366
|
IsArrayHasParentNodeExecution = __decorate([
|
|
@@ -4450,7 +4368,7 @@ IsArrayHasParentNodeExecution = __decorate([
|
|
|
4450
4368
|
], IsArrayHasParentNodeExecution);
|
|
4451
4369
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: IsArrayHasParentNodeExecution, decorators: [{
|
|
4452
4370
|
type: Injectable
|
|
4453
|
-
}]
|
|
4371
|
+
}] });
|
|
4454
4372
|
|
|
4455
4373
|
class FNodeIntersectedWithConnections {
|
|
4456
4374
|
fNodeId;
|
|
@@ -4472,27 +4390,30 @@ let IsConnectionUnderNodeExecution = class IsConnectionUnderNodeExecution {
|
|
|
4472
4390
|
_fMediator = inject(FMediator);
|
|
4473
4391
|
_fComponentsStore = inject(FComponentsStore);
|
|
4474
4392
|
handle(request) {
|
|
4475
|
-
const
|
|
4476
|
-
const
|
|
4477
|
-
|
|
4478
|
-
|
|
4479
|
-
|
|
4480
|
-
|
|
4481
|
-
|
|
4482
|
-
|
|
4483
|
-
|
|
4484
|
-
|
|
4485
|
-
|
|
4486
|
-
|
|
4487
|
-
this._fComponentsStore.fDraggable?.fNodeIntersectedWithConnections.emit(new FNodeIntersectedWithConnections(fNode.fId, fConnectionsUnderNode.map((x) => x.fId)));
|
|
4488
|
-
}
|
|
4393
|
+
const fOutputConnectors = this._getOutputConnectors(request.fNode);
|
|
4394
|
+
const fInputConnectors = this._getInputConnectors(request.fNode);
|
|
4395
|
+
if (!fOutputConnectors.length || !fInputConnectors.length) {
|
|
4396
|
+
return;
|
|
4397
|
+
}
|
|
4398
|
+
const fOutputConnections = this._getOutputConnectionsId(fOutputConnectors);
|
|
4399
|
+
const fInputConnections = this._getInputConnectionsId(fInputConnectors);
|
|
4400
|
+
const fConnectionsUnderNode = this._calculateConnectionsUnderNode(request.fNode).filter((x) => {
|
|
4401
|
+
return !fOutputConnections.includes(x.fId) && !fInputConnections.includes(x.fId);
|
|
4402
|
+
});
|
|
4403
|
+
if (!fConnectionsUnderNode.length) {
|
|
4404
|
+
return;
|
|
4489
4405
|
}
|
|
4406
|
+
this._emitNodeIntersectedWithConnections(request.fNode, fConnectionsUnderNode);
|
|
4490
4407
|
}
|
|
4491
|
-
|
|
4492
|
-
return this._fComponentsStore.fOutputs.filter((x) =>
|
|
4408
|
+
_getOutputConnectors(fNode) {
|
|
4409
|
+
return this._fComponentsStore.fOutputs.filter((x) => {
|
|
4410
|
+
return fNode.isContains(x.hostElement) && x.canBeConnected;
|
|
4411
|
+
});
|
|
4493
4412
|
}
|
|
4494
|
-
|
|
4495
|
-
return this._fComponentsStore.fInputs.filter((x) =>
|
|
4413
|
+
_getInputConnectors(fNode) {
|
|
4414
|
+
return this._fComponentsStore.fInputs.filter((x) => {
|
|
4415
|
+
return fNode.isContains(x.hostElement) && x.canBeConnected;
|
|
4416
|
+
});
|
|
4496
4417
|
}
|
|
4497
4418
|
_getOutputConnectionsId(connectors) {
|
|
4498
4419
|
const connectorsId = this._getConnectorsId(connectors);
|
|
@@ -4511,13 +4432,14 @@ let IsConnectionUnderNodeExecution = class IsConnectionUnderNodeExecution {
|
|
|
4511
4432
|
}
|
|
4512
4433
|
_calculateConnectionsUnderNode(fNode) {
|
|
4513
4434
|
const fNodeRect = this._fMediator.send(new GetNormalizedElementRectRequest(fNode.hostElement, true));
|
|
4514
|
-
return this._fComponentsStore.fConnections.filter((x) =>
|
|
4515
|
-
return this._isConnectionHasIntersectionsWithNode(x, fNodeRect);
|
|
4516
|
-
});
|
|
4435
|
+
return this._fComponentsStore.fConnections.filter((x) => this._isConnectionHasIntersectionsWithNode(x, fNodeRect));
|
|
4517
4436
|
}
|
|
4518
4437
|
_isConnectionHasIntersectionsWithNode(fConnection, fNodeRect) {
|
|
4519
4438
|
return GetIntersections.getRoundedRectIntersectionsWithSVGPath(fConnection.fPath.hostElement, fNodeRect).length > 0;
|
|
4520
4439
|
}
|
|
4440
|
+
_emitNodeIntersectedWithConnections(fNode, fConnections) {
|
|
4441
|
+
this._fComponentsStore.fDraggable?.fNodeIntersectedWithConnections.emit(new FNodeIntersectedWithConnections(fNode.fId, fConnections.map((x) => x.fId)));
|
|
4442
|
+
}
|
|
4521
4443
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: IsConnectionUnderNodeExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4522
4444
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: IsConnectionUnderNodeExecution });
|
|
4523
4445
|
};
|
|
@@ -4552,6 +4474,47 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
|
|
|
4552
4474
|
type: Injectable
|
|
4553
4475
|
}] });
|
|
4554
4476
|
|
|
4477
|
+
class CalculateCommonNodeMoveRestrictionsRequest {
|
|
4478
|
+
restrictions;
|
|
4479
|
+
constructor(restrictions) {
|
|
4480
|
+
this.restrictions = restrictions;
|
|
4481
|
+
}
|
|
4482
|
+
}
|
|
4483
|
+
|
|
4484
|
+
let CalculateCommonNodeMoveRestrictionsExecution = class CalculateCommonNodeMoveRestrictionsExecution {
|
|
4485
|
+
handle(request) {
|
|
4486
|
+
return this._calculateCommonRestrictions(request.restrictions);
|
|
4487
|
+
}
|
|
4488
|
+
_calculateCommonRestrictions(restrictions) {
|
|
4489
|
+
return restrictions.reduce((result, x) => this._clampRestrictions(result, x), restrictions[0]);
|
|
4490
|
+
}
|
|
4491
|
+
_clampRestrictions(common, x) {
|
|
4492
|
+
common.min = this._clampMinRestrictions(common.min, x.min);
|
|
4493
|
+
common.max = this._clampMaxRestrictions(common.max, x.max);
|
|
4494
|
+
return common;
|
|
4495
|
+
}
|
|
4496
|
+
_clampMinRestrictions(common, node) {
|
|
4497
|
+
return {
|
|
4498
|
+
x: Math.max(common.x, node.x),
|
|
4499
|
+
y: Math.max(common.y, node.y),
|
|
4500
|
+
};
|
|
4501
|
+
}
|
|
4502
|
+
_clampMaxRestrictions(common, node) {
|
|
4503
|
+
return {
|
|
4504
|
+
x: Math.min(common.x, node.x),
|
|
4505
|
+
y: Math.min(common.y, node.y),
|
|
4506
|
+
};
|
|
4507
|
+
}
|
|
4508
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CalculateCommonNodeMoveRestrictionsExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4509
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CalculateCommonNodeMoveRestrictionsExecution });
|
|
4510
|
+
};
|
|
4511
|
+
CalculateCommonNodeMoveRestrictionsExecution = __decorate([
|
|
4512
|
+
FExecutionRegister(CalculateCommonNodeMoveRestrictionsRequest)
|
|
4513
|
+
], CalculateCommonNodeMoveRestrictionsExecution);
|
|
4514
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CalculateCommonNodeMoveRestrictionsExecution, decorators: [{
|
|
4515
|
+
type: Injectable
|
|
4516
|
+
}] });
|
|
4517
|
+
|
|
4555
4518
|
class PutInputConnectionHandlersToArrayRequest {
|
|
4556
4519
|
nodeDragHandler;
|
|
4557
4520
|
outputIds;
|
|
@@ -4618,11 +4581,11 @@ class ConnectionDragHandler extends ConnectionBaseDragHandler {
|
|
|
4618
4581
|
constructor(fMediator, fComponentsStore, connection) {
|
|
4619
4582
|
super(fMediator, fComponentsStore, connection);
|
|
4620
4583
|
}
|
|
4621
|
-
setOutputRestrictions(
|
|
4622
|
-
this.sourceRestrictions =
|
|
4584
|
+
setOutputRestrictions(restrictions) {
|
|
4585
|
+
this.sourceRestrictions = restrictions;
|
|
4623
4586
|
}
|
|
4624
|
-
setInputRestrictions(
|
|
4625
|
-
this.targetRestrictions =
|
|
4587
|
+
setInputRestrictions(restrictions) {
|
|
4588
|
+
this.targetRestrictions = restrictions;
|
|
4626
4589
|
}
|
|
4627
4590
|
onPointerMove(difference) {
|
|
4628
4591
|
this.redrawConnection(this.getNewLineValue(difference));
|
|
@@ -4633,30 +4596,24 @@ class ConnectionDragHandler extends ConnectionBaseDragHandler {
|
|
|
4633
4596
|
}
|
|
4634
4597
|
|
|
4635
4598
|
class ConnectionTargetDragHandler extends ConnectionBaseDragHandler {
|
|
4636
|
-
|
|
4637
|
-
|
|
4638
|
-
constructor(fMediator, fComponentsStore, connection, minDistance, maxDistance) {
|
|
4599
|
+
restrictions;
|
|
4600
|
+
constructor(fMediator, fComponentsStore, connection, restrictions) {
|
|
4639
4601
|
super(fMediator, fComponentsStore, connection);
|
|
4640
|
-
this.
|
|
4641
|
-
this.maxDistance = maxDistance;
|
|
4602
|
+
this.restrictions = restrictions;
|
|
4642
4603
|
}
|
|
4643
4604
|
onPointerMove(difference) {
|
|
4644
4605
|
this.redrawConnection(this.getNewLineValue(difference));
|
|
4645
4606
|
}
|
|
4646
4607
|
getNewLineValue(difference) {
|
|
4647
|
-
return this.fMediator.execute(new CalculateConnectionLineByBehaviorRequest(this.fOutputWithRect.fRect, RoundedRect.fromRoundedRect(this.fInputWithRect.fRect).addPoint(this.getRestrictedDifference({ ...difference },
|
|
4608
|
+
return this.fMediator.execute(new CalculateConnectionLineByBehaviorRequest(this.fOutputWithRect.fRect, RoundedRect.fromRoundedRect(this.fInputWithRect.fRect).addPoint(this.getRestrictedDifference({ ...difference }, this.restrictions)), this.connection.fBehavior, this.fOutputWithRect.fConnector.fConnectableSide, this.fInputWithRect.fConnector.fConnectableSide));
|
|
4648
4609
|
}
|
|
4649
4610
|
}
|
|
4650
4611
|
|
|
4651
4612
|
let PutInputConnectionHandlersToArrayExecution = class PutInputConnectionHandlersToArrayExecution {
|
|
4652
|
-
|
|
4653
|
-
|
|
4654
|
-
get
|
|
4655
|
-
return this.
|
|
4656
|
-
}
|
|
4657
|
-
constructor(fComponentsStore, fMediator) {
|
|
4658
|
-
this.fComponentsStore = fComponentsStore;
|
|
4659
|
-
this.fMediator = fMediator;
|
|
4613
|
+
_fMediator = inject(FMediator);
|
|
4614
|
+
_fComponentsStore = inject(FComponentsStore);
|
|
4615
|
+
get _fConnections() {
|
|
4616
|
+
return this._fComponentsStore.fConnections;
|
|
4660
4617
|
}
|
|
4661
4618
|
handle(request) {
|
|
4662
4619
|
this.getInputConnections(request.nodeDragHandler.fNode).forEach((connection) => {
|
|
@@ -4671,10 +4628,10 @@ let PutInputConnectionHandlersToArrayExecution = class PutInputConnectionHandler
|
|
|
4671
4628
|
}
|
|
4672
4629
|
getInputConnections(node) {
|
|
4673
4630
|
const inputIds = new Set(this.getInputsForNode(node).map((x) => x.fId));
|
|
4674
|
-
return this.
|
|
4631
|
+
return this._fConnections.filter((x) => inputIds.has(x.fInputId));
|
|
4675
4632
|
}
|
|
4676
4633
|
getInputsForNode(node) {
|
|
4677
|
-
return this.
|
|
4634
|
+
return this._fComponentsStore.fInputs.filter((x) => node.isContains(x.hostElement));
|
|
4678
4635
|
}
|
|
4679
4636
|
getExistingConnectionHandlerIndex(result, connection) {
|
|
4680
4637
|
return result.findIndex((x) => x instanceof ConnectionDragHandler && x.connection.fId === connection.fId);
|
|
@@ -4690,17 +4647,17 @@ let PutInputConnectionHandlersToArrayExecution = class PutInputConnectionHandler
|
|
|
4690
4647
|
return result;
|
|
4691
4648
|
}
|
|
4692
4649
|
getNewConnectionHandler(connection, nodeDragHandler) {
|
|
4693
|
-
const handler = new ConnectionDragHandler(this.
|
|
4694
|
-
handler.setInputRestrictions(nodeDragHandler.
|
|
4650
|
+
const handler = new ConnectionDragHandler(this._fMediator, this._fComponentsStore, connection);
|
|
4651
|
+
handler.setInputRestrictions(nodeDragHandler.restrictions);
|
|
4695
4652
|
return handler;
|
|
4696
4653
|
}
|
|
4697
4654
|
updateExistingConnectionHandler(result, index, nodeDragHandler) {
|
|
4698
|
-
result[index].setInputRestrictions(nodeDragHandler.
|
|
4655
|
+
result[index].setInputRestrictions(nodeDragHandler.restrictions);
|
|
4699
4656
|
}
|
|
4700
4657
|
getNewSourceConnectionHandler(connection, nodeDragHandler) {
|
|
4701
|
-
return new ConnectionTargetDragHandler(this.
|
|
4658
|
+
return new ConnectionTargetDragHandler(this._fMediator, this._fComponentsStore, connection, nodeDragHandler.restrictions);
|
|
4702
4659
|
}
|
|
4703
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: PutInputConnectionHandlersToArrayExecution, deps: [
|
|
4660
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: PutInputConnectionHandlersToArrayExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4704
4661
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: PutInputConnectionHandlersToArrayExecution });
|
|
4705
4662
|
};
|
|
4706
4663
|
PutInputConnectionHandlersToArrayExecution = __decorate([
|
|
@@ -4708,7 +4665,7 @@ PutInputConnectionHandlersToArrayExecution = __decorate([
|
|
|
4708
4665
|
], PutInputConnectionHandlersToArrayExecution);
|
|
4709
4666
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: PutInputConnectionHandlersToArrayExecution, decorators: [{
|
|
4710
4667
|
type: Injectable
|
|
4711
|
-
}]
|
|
4668
|
+
}] });
|
|
4712
4669
|
|
|
4713
4670
|
class PutOutputConnectionHandlersToArrayRequest {
|
|
4714
4671
|
nodeDragHandler;
|
|
@@ -4722,18 +4679,16 @@ class PutOutputConnectionHandlersToArrayRequest {
|
|
|
4722
4679
|
}
|
|
4723
4680
|
|
|
4724
4681
|
class ConnectionSourceDragHandler extends ConnectionBaseDragHandler {
|
|
4725
|
-
|
|
4726
|
-
|
|
4727
|
-
constructor(fMediator, fComponentsStore, connection, minDistance, maxDistance) {
|
|
4682
|
+
restrictions;
|
|
4683
|
+
constructor(fMediator, fComponentsStore, connection, restrictions) {
|
|
4728
4684
|
super(fMediator, fComponentsStore, connection);
|
|
4729
|
-
this.
|
|
4730
|
-
this.maxDistance = maxDistance;
|
|
4685
|
+
this.restrictions = restrictions;
|
|
4731
4686
|
}
|
|
4732
4687
|
onPointerMove(difference) {
|
|
4733
4688
|
this.redrawConnection(this.getNewLineValue(difference));
|
|
4734
4689
|
}
|
|
4735
4690
|
getNewLineValue(difference) {
|
|
4736
|
-
return this.fMediator.execute(new CalculateConnectionLineByBehaviorRequest(RoundedRect.fromRoundedRect(this.fOutputWithRect.fRect).addPoint(this.getRestrictedDifference({ ...difference },
|
|
4691
|
+
return this.fMediator.execute(new CalculateConnectionLineByBehaviorRequest(RoundedRect.fromRoundedRect(this.fOutputWithRect.fRect).addPoint(this.getRestrictedDifference({ ...difference }, this.restrictions)), this.fInputWithRect.fRect, this.connection.fBehavior, this.fOutputWithRect.fConnector.fConnectableSide, this.fInputWithRect.fConnector.fConnectableSide));
|
|
4737
4692
|
}
|
|
4738
4693
|
}
|
|
4739
4694
|
|
|
@@ -4780,14 +4735,14 @@ let PutOutputConnectionHandlersToArrayExecution = class PutOutputConnectionHandl
|
|
|
4780
4735
|
}
|
|
4781
4736
|
getNewConnectionHandler(connection, nodeDragHandler) {
|
|
4782
4737
|
const handler = new ConnectionDragHandler(this.fMediator, this.fComponentsStore, connection);
|
|
4783
|
-
handler.setOutputRestrictions(nodeDragHandler.
|
|
4738
|
+
handler.setOutputRestrictions(nodeDragHandler.restrictions);
|
|
4784
4739
|
return handler;
|
|
4785
4740
|
}
|
|
4786
4741
|
updateExistingConnectionHandler(result, index, nodeDragHandler) {
|
|
4787
|
-
result[index].setOutputRestrictions(nodeDragHandler.
|
|
4742
|
+
result[index].setOutputRestrictions(nodeDragHandler.restrictions);
|
|
4788
4743
|
}
|
|
4789
4744
|
getNewSourceConnectionHandler(connection, nodeDragHandler) {
|
|
4790
|
-
return new ConnectionSourceDragHandler(this.fMediator, this.fComponentsStore, connection, nodeDragHandler.
|
|
4745
|
+
return new ConnectionSourceDragHandler(this.fMediator, this.fComponentsStore, connection, nodeDragHandler.restrictions);
|
|
4791
4746
|
}
|
|
4792
4747
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: PutOutputConnectionHandlersToArrayExecution, deps: [{ token: FComponentsStore }, { token: i2.FMediator }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4793
4748
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: PutOutputConnectionHandlersToArrayExecution });
|
|
@@ -4799,7 +4754,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
|
|
|
4799
4754
|
type: Injectable
|
|
4800
4755
|
}], ctorParameters: () => [{ type: FComponentsStore }, { type: i2.FMediator }] });
|
|
4801
4756
|
|
|
4802
|
-
class
|
|
4757
|
+
class CalculateNodeMoveRestrictionsRequest {
|
|
4803
4758
|
fNode;
|
|
4804
4759
|
hasParentNodeInSelected;
|
|
4805
4760
|
constructor(fNode, hasParentNodeInSelected) {
|
|
@@ -4808,32 +4763,32 @@ class GetNodeMoveRestrictionsRequest {
|
|
|
4808
4763
|
}
|
|
4809
4764
|
}
|
|
4810
4765
|
|
|
4811
|
-
let
|
|
4766
|
+
let CalculateNodeMoveRestrictionsExecution = class CalculateNodeMoveRestrictionsExecution {
|
|
4812
4767
|
_fMediator = inject(FMediator);
|
|
4813
4768
|
handle(request) {
|
|
4814
|
-
if (request.fNode.fParentId
|
|
4815
|
-
|
|
4816
|
-
const fCurrentNodeRect = this._getNodeRect(request.fNode);
|
|
4817
|
-
return {
|
|
4818
|
-
min: PointExtensions.initialize(fParentNodeRect.x - fCurrentNodeRect.x, fParentNodeRect.y - fCurrentNodeRect.y),
|
|
4819
|
-
max: PointExtensions.initialize((fParentNodeRect.x + fParentNodeRect.width) - (fCurrentNodeRect.x + fCurrentNodeRect.width), (fParentNodeRect.y + fParentNodeRect.height) - (fCurrentNodeRect.y + fCurrentNodeRect.height))
|
|
4820
|
-
};
|
|
4769
|
+
if (!request.fNode.fParentId || request.hasParentNodeInSelected) {
|
|
4770
|
+
return { ...DEFAULT_RESTRICTIONS };
|
|
4821
4771
|
}
|
|
4822
|
-
|
|
4772
|
+
const fParentNodeRect = this._getParentNodeRect(request.fNode);
|
|
4773
|
+
const fCurrentNodeRect = this._getNodeRect(request.fNode);
|
|
4774
|
+
return {
|
|
4775
|
+
min: PointExtensions.initialize(fParentNodeRect.x - fCurrentNodeRect.x, fParentNodeRect.y - fCurrentNodeRect.y),
|
|
4776
|
+
max: PointExtensions.initialize((fParentNodeRect.x + fParentNodeRect.width) - (fCurrentNodeRect.x + fCurrentNodeRect.width), (fParentNodeRect.y + fParentNodeRect.height) - (fCurrentNodeRect.y + fCurrentNodeRect.height))
|
|
4777
|
+
};
|
|
4823
4778
|
}
|
|
4824
4779
|
_getNodeRect(fNode) {
|
|
4825
|
-
return this._fMediator.
|
|
4780
|
+
return this._fMediator.execute(new GetNormalizedElementRectRequest(fNode.hostElement, false));
|
|
4826
4781
|
}
|
|
4827
|
-
|
|
4828
|
-
return this._fMediator.
|
|
4782
|
+
_getParentNodeRect(fNode) {
|
|
4783
|
+
return this._fMediator.execute(new GetNormalizedParentNodeRectRequest(fNode));
|
|
4829
4784
|
}
|
|
4830
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type:
|
|
4831
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type:
|
|
4785
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CalculateNodeMoveRestrictionsExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4786
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CalculateNodeMoveRestrictionsExecution });
|
|
4832
4787
|
};
|
|
4833
|
-
|
|
4834
|
-
FExecutionRegister(
|
|
4835
|
-
],
|
|
4836
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type:
|
|
4788
|
+
CalculateNodeMoveRestrictionsExecution = __decorate([
|
|
4789
|
+
FExecutionRegister(CalculateNodeMoveRestrictionsRequest)
|
|
4790
|
+
], CalculateNodeMoveRestrictionsExecution);
|
|
4791
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CalculateNodeMoveRestrictionsExecution, decorators: [{
|
|
4837
4792
|
type: Injectable
|
|
4838
4793
|
}] });
|
|
4839
4794
|
const DEFAULT_RESTRICTIONS = {
|
|
@@ -4849,32 +4804,27 @@ class CreateMoveNodesDragModelFromSelectionRequest {
|
|
|
4849
4804
|
}
|
|
4850
4805
|
|
|
4851
4806
|
class NodeDragHandler {
|
|
4852
|
-
|
|
4853
|
-
fComponentsStore;
|
|
4807
|
+
_fComponentsStore;
|
|
4854
4808
|
fNode;
|
|
4855
|
-
|
|
4856
|
-
maxDistance;
|
|
4809
|
+
restrictions;
|
|
4857
4810
|
_onPointerDownPosition = PointExtensions.initialize();
|
|
4858
|
-
constructor(
|
|
4859
|
-
this.
|
|
4860
|
-
this.fComponentsStore = fComponentsStore;
|
|
4811
|
+
constructor(_fComponentsStore, fNode, restrictions) {
|
|
4812
|
+
this._fComponentsStore = _fComponentsStore;
|
|
4861
4813
|
this.fNode = fNode;
|
|
4862
|
-
this.
|
|
4863
|
-
this.maxDistance = maxDistance;
|
|
4814
|
+
this.restrictions = restrictions;
|
|
4864
4815
|
this._onPointerDownPosition = { ...fNode.position };
|
|
4865
4816
|
}
|
|
4866
4817
|
onPointerMove(difference) {
|
|
4867
|
-
const restrictedDifference = this._getDifference(difference
|
|
4818
|
+
const restrictedDifference = this._getDifference(difference);
|
|
4868
4819
|
this._redraw(this._getPosition(restrictedDifference));
|
|
4869
|
-
this.fDraggableDataContext.fLineAlignment?.handle(restrictedDifference);
|
|
4870
4820
|
}
|
|
4871
4821
|
_getPosition(difference) {
|
|
4872
4822
|
return Point.fromPoint(this._onPointerDownPosition).add(difference);
|
|
4873
4823
|
}
|
|
4874
|
-
_getDifference(difference
|
|
4824
|
+
_getDifference(difference) {
|
|
4875
4825
|
return {
|
|
4876
|
-
x: Math.min(Math.max(difference.x, restrictions.min.x), restrictions.max.x),
|
|
4877
|
-
y: Math.min(Math.max(difference.y, restrictions.min.y), restrictions.max.y)
|
|
4826
|
+
x: Math.min(Math.max(difference.x, this.restrictions.min.x), this.restrictions.max.x),
|
|
4827
|
+
y: Math.min(Math.max(difference.y, this.restrictions.min.y), this.restrictions.max.y)
|
|
4878
4828
|
};
|
|
4879
4829
|
}
|
|
4880
4830
|
_redraw(position) {
|
|
@@ -4885,13 +4835,12 @@ class NodeDragHandler {
|
|
|
4885
4835
|
this.fNode.positionChange.emit(this.fNode.position);
|
|
4886
4836
|
}
|
|
4887
4837
|
getDifferenceWithCellSize(difference) {
|
|
4888
|
-
const
|
|
4889
|
-
const position = this._getPosition(restrictedDifference);
|
|
4838
|
+
const position = this._getPosition(this._getDifference(difference));
|
|
4890
4839
|
return Point.fromPoint(this._applyCellSize(position)).sub(this._onPointerDownPosition);
|
|
4891
4840
|
}
|
|
4892
4841
|
_applyCellSize(position) {
|
|
4893
|
-
const hCellSize = this.
|
|
4894
|
-
const vCellSize = this.
|
|
4842
|
+
const hCellSize = this._fComponentsStore.fDraggable.hCellSize;
|
|
4843
|
+
const vCellSize = this._fComponentsStore.fDraggable.vCellSize;
|
|
4895
4844
|
return {
|
|
4896
4845
|
x: Math.round(position.x / hCellSize) * hCellSize,
|
|
4897
4846
|
y: Math.round(position.y / vCellSize) * vCellSize
|
|
@@ -4919,10 +4868,10 @@ let CreateMoveNodesDragModelFromSelectionExecution = class CreateMoveNodesDragMo
|
|
|
4919
4868
|
_fComponentsStore = inject(FComponentsStore);
|
|
4920
4869
|
_fDraggableDataContext = inject(FDraggableDataContext);
|
|
4921
4870
|
handle(request) {
|
|
4922
|
-
const
|
|
4923
|
-
return this.getDragHandlersWithConnections(this.getDragHandlersFromNodes(
|
|
4871
|
+
const fItemsToDrag = this._getNodesWithRestrictions(this._getDraggedNodes(request.nodeWithDisabledSelection));
|
|
4872
|
+
return this.getDragHandlersWithConnections(this.getDragHandlersFromNodes(fItemsToDrag), this.getAllOutputIds(fItemsToDrag), this.getAllInputIds(fItemsToDrag));
|
|
4924
4873
|
}
|
|
4925
|
-
|
|
4874
|
+
_getDraggedNodes(nodeWithDisabledSelection) {
|
|
4926
4875
|
const result = this._getNodesFromSelection();
|
|
4927
4876
|
if (nodeWithDisabledSelection) {
|
|
4928
4877
|
result.push(nodeWithDisabledSelection);
|
|
@@ -4935,32 +4884,46 @@ let CreateMoveNodesDragModelFromSelectionExecution = class CreateMoveNodesDragMo
|
|
|
4935
4884
|
.filter((x) => !!x);
|
|
4936
4885
|
}
|
|
4937
4886
|
_findNode(hostElement) {
|
|
4938
|
-
return this._fComponentsStore.fNodes
|
|
4887
|
+
return this._fComponentsStore.fNodes
|
|
4888
|
+
.find(n => n.isContains(hostElement));
|
|
4939
4889
|
}
|
|
4940
|
-
_getNodesWithRestrictions(
|
|
4890
|
+
_getNodesWithRestrictions(fDraggedNodes) {
|
|
4941
4891
|
const result = [];
|
|
4942
|
-
|
|
4943
|
-
const
|
|
4944
|
-
const restrictions = this.
|
|
4945
|
-
|
|
4946
|
-
result.push({ node: x, parentNodes, ...restrictions }, ...this.getChildrenItemsToDrag(x, restrictions));
|
|
4892
|
+
fDraggedNodes.forEach((x) => {
|
|
4893
|
+
const fParentNodes = this._fMediator.execute(new GetParentNodesRequest(x));
|
|
4894
|
+
const restrictions = this._getNodeMoveRestrictions(x, fParentNodes, fDraggedNodes);
|
|
4895
|
+
result.push({ fDraggedNode: x, fParentNodes, ...restrictions }, ...this._getChildrenItemsToDrag(x, restrictions));
|
|
4947
4896
|
});
|
|
4897
|
+
this._applyCommonRestrictions(result);
|
|
4948
4898
|
return result;
|
|
4949
4899
|
}
|
|
4950
|
-
|
|
4951
|
-
return this.
|
|
4900
|
+
_getNodeMoveRestrictions(fNode, fParentNodes, fDraggedNodes) {
|
|
4901
|
+
return this._fMediator.execute(new CalculateNodeMoveRestrictionsRequest(fNode, this._isParentNodeInArray(fParentNodes, fDraggedNodes)));
|
|
4952
4902
|
}
|
|
4953
|
-
|
|
4954
|
-
return this._fMediator.
|
|
4903
|
+
_isParentNodeInArray(fParentNodes, fDraggedNodes) {
|
|
4904
|
+
return this._fMediator.execute(new IsArrayHasParentNodeRequest(fParentNodes, fDraggedNodes));
|
|
4905
|
+
}
|
|
4906
|
+
_getChildrenItemsToDrag(node, restrictions) {
|
|
4907
|
+
return this._getChildrenNodes(node.fId).map((x) => ({ fDraggedNode: x, ...restrictions }));
|
|
4908
|
+
}
|
|
4909
|
+
_getChildrenNodes(fId) {
|
|
4910
|
+
return this._fMediator.execute(new GetDeepChildrenNodesAndGroupsRequest(fId));
|
|
4911
|
+
}
|
|
4912
|
+
_applyCommonRestrictions(restrictions) {
|
|
4913
|
+
const commonRestrictions = this._fMediator.execute(new CalculateCommonNodeMoveRestrictionsRequest(restrictions));
|
|
4914
|
+
restrictions.forEach((x) => {
|
|
4915
|
+
x.min = commonRestrictions.min;
|
|
4916
|
+
x.max = commonRestrictions.max;
|
|
4917
|
+
});
|
|
4955
4918
|
}
|
|
4956
4919
|
getAllOutputIds(items) {
|
|
4957
|
-
return flatMap(items, (item) => this.getOutputsForNode(item.
|
|
4920
|
+
return flatMap(items, (item) => this.getOutputsForNode(item.fDraggedNode).map((x) => x.fId));
|
|
4958
4921
|
}
|
|
4959
4922
|
getOutputsForNode(node) {
|
|
4960
4923
|
return this._fComponentsStore.fOutputs.filter((x) => node.isContains(x.hostElement));
|
|
4961
4924
|
}
|
|
4962
4925
|
getAllInputIds(items) {
|
|
4963
|
-
return flatMap(items, (item) => this.getInputsForNode(item.
|
|
4926
|
+
return flatMap(items, (item) => this.getInputsForNode(item.fDraggedNode).map((x) => x.fId));
|
|
4964
4927
|
}
|
|
4965
4928
|
getInputsForNode(node) {
|
|
4966
4929
|
return this._fComponentsStore.fInputs.filter((x) => node.isContains(x.hostElement));
|
|
@@ -4968,15 +4931,15 @@ let CreateMoveNodesDragModelFromSelectionExecution = class CreateMoveNodesDragMo
|
|
|
4968
4931
|
getDragHandlersFromNodes(items) {
|
|
4969
4932
|
let result = [];
|
|
4970
4933
|
items.forEach((node) => {
|
|
4971
|
-
result.push(new NodeDragHandler(this.
|
|
4934
|
+
result.push(new NodeDragHandler(this._fComponentsStore, node.fDraggedNode, { min: node.min, max: node.max }), ...(node.fParentNodes || []).map(() => new NodeResizeByChildDragHandler(this._fDraggableDataContext)));
|
|
4972
4935
|
});
|
|
4973
4936
|
return result;
|
|
4974
4937
|
}
|
|
4975
4938
|
getDragHandlersWithConnections(handlers, outputIds, inputIds) {
|
|
4976
4939
|
let result = handlers;
|
|
4977
|
-
handlers.filter((x) => x instanceof NodeDragHandler).forEach((
|
|
4978
|
-
this._fMediator.
|
|
4979
|
-
this._fMediator.
|
|
4940
|
+
handlers.filter((x) => x instanceof NodeDragHandler).forEach((x) => {
|
|
4941
|
+
this._fMediator.execute(new PutOutputConnectionHandlersToArrayRequest(x, inputIds, result));
|
|
4942
|
+
this._fMediator.execute(new PutInputConnectionHandlersToArrayRequest(x, outputIds, result));
|
|
4980
4943
|
});
|
|
4981
4944
|
return result;
|
|
4982
4945
|
}
|
|
@@ -4991,35 +4954,255 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
|
|
|
4991
4954
|
}] });
|
|
4992
4955
|
|
|
4993
4956
|
const CREATE_MOVE_NODE_DRAG_MODEL_FROM_SELECTION_PROVIDERS = [
|
|
4994
|
-
|
|
4957
|
+
CalculateCommonNodeMoveRestrictionsExecution,
|
|
4958
|
+
CalculateNodeMoveRestrictionsExecution,
|
|
4995
4959
|
PutInputConnectionHandlersToArrayExecution,
|
|
4996
4960
|
PutOutputConnectionHandlersToArrayExecution,
|
|
4997
4961
|
CreateMoveNodesDragModelFromSelectionExecution,
|
|
4998
4962
|
];
|
|
4999
4963
|
|
|
5000
|
-
class
|
|
5001
|
-
event;
|
|
5002
|
-
constructor(event) {
|
|
5003
|
-
this.event = event;
|
|
5004
|
-
}
|
|
4964
|
+
class LineAlignmentPreparationRequest {
|
|
5005
4965
|
}
|
|
5006
4966
|
|
|
5007
|
-
class
|
|
5008
|
-
|
|
5009
|
-
|
|
5010
|
-
|
|
5011
|
-
|
|
5012
|
-
|
|
5013
|
-
|
|
5014
|
-
}
|
|
5015
|
-
_onPointerDownPosition = PointExtensions.initialize();
|
|
4967
|
+
class LineAlignmentDragHandler {
|
|
4968
|
+
_fComponentsStore;
|
|
4969
|
+
_lineService;
|
|
4970
|
+
_size;
|
|
4971
|
+
_draggedNodeRect;
|
|
4972
|
+
_rects;
|
|
4973
|
+
_restrictions;
|
|
5016
4974
|
_debounceTimer = null;
|
|
5017
|
-
|
|
5018
|
-
constructor(
|
|
5019
|
-
this.
|
|
5020
|
-
this.
|
|
5021
|
-
this.
|
|
5022
|
-
this.
|
|
4975
|
+
_transform;
|
|
4976
|
+
constructor(_fComponentsStore, _lineService, _size, _draggedNodeRect, _rects, _restrictions) {
|
|
4977
|
+
this._fComponentsStore = _fComponentsStore;
|
|
4978
|
+
this._lineService = _lineService;
|
|
4979
|
+
this._size = _size;
|
|
4980
|
+
this._draggedNodeRect = _draggedNodeRect;
|
|
4981
|
+
this._rects = _rects;
|
|
4982
|
+
this._restrictions = _restrictions;
|
|
4983
|
+
this._transform = this._fComponentsStore.fCanvas?.transform;
|
|
4984
|
+
}
|
|
4985
|
+
onPointerMove(difference) {
|
|
4986
|
+
const restrictedDifference = this._getDifference(difference);
|
|
4987
|
+
if (this._debounceTimer) {
|
|
4988
|
+
clearTimeout(this._debounceTimer);
|
|
4989
|
+
}
|
|
4990
|
+
this._debounceTimer = setTimeout(() => this._drawIntersectingLines(restrictedDifference), 15);
|
|
4991
|
+
}
|
|
4992
|
+
_drawIntersectingLines(difference) {
|
|
4993
|
+
const intersect = this.findNearestCoordinate(difference);
|
|
4994
|
+
if (intersect.xResult.value !== undefined) {
|
|
4995
|
+
this._lineService.drawVerticalLine(intersect.xResult.value, this._size, this._transform);
|
|
4996
|
+
}
|
|
4997
|
+
else {
|
|
4998
|
+
this._lineService.hideVerticalLine();
|
|
4999
|
+
}
|
|
5000
|
+
if (intersect.yResult.value !== undefined) {
|
|
5001
|
+
this._lineService.drawHorizontalLine(intersect.yResult.value, this._size, this._transform);
|
|
5002
|
+
}
|
|
5003
|
+
else {
|
|
5004
|
+
this._lineService.hideHorizontalLine();
|
|
5005
|
+
}
|
|
5006
|
+
}
|
|
5007
|
+
_getDifference(difference) {
|
|
5008
|
+
return {
|
|
5009
|
+
x: Math.min(Math.max(difference.x, this._restrictions.min.x), this._restrictions.max.x),
|
|
5010
|
+
y: Math.min(Math.max(difference.y, this._restrictions.min.y), this._restrictions.max.y)
|
|
5011
|
+
};
|
|
5012
|
+
}
|
|
5013
|
+
findNearestCoordinate(difference) {
|
|
5014
|
+
const rect = RectExtensions.addPoint(this._draggedNodeRect, difference);
|
|
5015
|
+
return findClosestAlignment(this._rects, rect, this._fComponentsStore.fLineAlignment.fAlignThreshold);
|
|
5016
|
+
}
|
|
5017
|
+
onPointerUp() {
|
|
5018
|
+
this._lineService.hideVerticalLine();
|
|
5019
|
+
this._lineService.hideHorizontalLine();
|
|
5020
|
+
if (this._debounceTimer) {
|
|
5021
|
+
clearTimeout(this._debounceTimer);
|
|
5022
|
+
this._debounceTimer = null;
|
|
5023
|
+
}
|
|
5024
|
+
}
|
|
5025
|
+
}
|
|
5026
|
+
|
|
5027
|
+
class LineElement {
|
|
5028
|
+
hostElement;
|
|
5029
|
+
element;
|
|
5030
|
+
constructor(fBrowser, hostElement) {
|
|
5031
|
+
this.hostElement = hostElement;
|
|
5032
|
+
this.element = fBrowser.document.createElement('div');
|
|
5033
|
+
this.hostElement.appendChild(this.element);
|
|
5034
|
+
this.element.classList.add('f-line');
|
|
5035
|
+
}
|
|
5036
|
+
hide() {
|
|
5037
|
+
this.element.style.display = 'none';
|
|
5038
|
+
}
|
|
5039
|
+
show() {
|
|
5040
|
+
this.element.style.display = 'block';
|
|
5041
|
+
}
|
|
5042
|
+
draw(object) {
|
|
5043
|
+
this.element.style.position = 'absolute';
|
|
5044
|
+
Object.keys(object).forEach((key) => {
|
|
5045
|
+
// @ts-ignore
|
|
5046
|
+
this.element.style[key] = object[key] + 'px';
|
|
5047
|
+
});
|
|
5048
|
+
}
|
|
5049
|
+
}
|
|
5050
|
+
|
|
5051
|
+
class LineService {
|
|
5052
|
+
hostElement;
|
|
5053
|
+
fHorizontalLine;
|
|
5054
|
+
fVerticalLine;
|
|
5055
|
+
constructor(fBrowser, hostElement) {
|
|
5056
|
+
this.hostElement = hostElement;
|
|
5057
|
+
this.fHorizontalLine = new LineElement(fBrowser, this.hostElement);
|
|
5058
|
+
this.fVerticalLine = new LineElement(fBrowser, this.hostElement);
|
|
5059
|
+
this.fHorizontalLine.hide();
|
|
5060
|
+
this.fVerticalLine.hide();
|
|
5061
|
+
}
|
|
5062
|
+
drawVerticalLine(x, size, transform) {
|
|
5063
|
+
this.fVerticalLine.show();
|
|
5064
|
+
this.fVerticalLine.draw({
|
|
5065
|
+
left: x * transform.scale + transform.position.x + transform.scaledPosition.x,
|
|
5066
|
+
top: 0,
|
|
5067
|
+
width: 1,
|
|
5068
|
+
height: size.height
|
|
5069
|
+
});
|
|
5070
|
+
}
|
|
5071
|
+
drawHorizontalLine(y, size, transform) {
|
|
5072
|
+
this.fHorizontalLine.show();
|
|
5073
|
+
this.fHorizontalLine.draw({
|
|
5074
|
+
left: 0,
|
|
5075
|
+
top: y * transform.scale + transform.position.y + transform.scaledPosition.y,
|
|
5076
|
+
width: size.width,
|
|
5077
|
+
height: 1
|
|
5078
|
+
});
|
|
5079
|
+
}
|
|
5080
|
+
hideVerticalLine() {
|
|
5081
|
+
this.fVerticalLine.hide();
|
|
5082
|
+
}
|
|
5083
|
+
hideHorizontalLine() {
|
|
5084
|
+
this.fHorizontalLine.hide();
|
|
5085
|
+
}
|
|
5086
|
+
}
|
|
5087
|
+
|
|
5088
|
+
const F_LINE_ALIGNMENT = new InjectionToken('F_LINE_ALIGNMENT');
|
|
5089
|
+
class FLineAlignmentBase {
|
|
5090
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FLineAlignmentBase, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
5091
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.4", type: FLineAlignmentBase, ngImport: i0 });
|
|
5092
|
+
}
|
|
5093
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FLineAlignmentBase, decorators: [{
|
|
5094
|
+
type: Directive
|
|
5095
|
+
}] });
|
|
5096
|
+
|
|
5097
|
+
class FLineAlignmentComponent extends FLineAlignmentBase {
|
|
5098
|
+
fAlignThreshold = 10;
|
|
5099
|
+
_fMediator = inject(FMediator);
|
|
5100
|
+
_elementReference = inject(ElementRef);
|
|
5101
|
+
get hostElement() {
|
|
5102
|
+
return this._elementReference.nativeElement;
|
|
5103
|
+
}
|
|
5104
|
+
ngOnInit() {
|
|
5105
|
+
this._fMediator.execute(new AddLineAlignmentToStoreRequest(this));
|
|
5106
|
+
}
|
|
5107
|
+
ngOnDestroy() {
|
|
5108
|
+
this._fMediator.execute(new RemoveLineAlignmentFromStoreRequest());
|
|
5109
|
+
}
|
|
5110
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FLineAlignmentComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
5111
|
+
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: [
|
|
5112
|
+
{ provide: F_LINE_ALIGNMENT, useExisting: FLineAlignmentComponent }
|
|
5113
|
+
], 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"] });
|
|
5114
|
+
}
|
|
5115
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FLineAlignmentComponent, decorators: [{
|
|
5116
|
+
type: Component,
|
|
5117
|
+
args: [{ selector: "f-line-alignment", template: "", exportAs: "fComponent", host: {
|
|
5118
|
+
'class': 'f-line-alignment f-component'
|
|
5119
|
+
}, providers: [
|
|
5120
|
+
{ provide: F_LINE_ALIGNMENT, useExisting: FLineAlignmentComponent }
|
|
5121
|
+
], 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"] }]
|
|
5122
|
+
}], propDecorators: { fAlignThreshold: [{
|
|
5123
|
+
type: Input
|
|
5124
|
+
}] } });
|
|
5125
|
+
|
|
5126
|
+
const F_LINE_ALIGNMENT_PROVIDERS = [
|
|
5127
|
+
FLineAlignmentComponent
|
|
5128
|
+
];
|
|
5129
|
+
|
|
5130
|
+
let LineAlignmentPreparationExecution = class LineAlignmentPreparationExecution {
|
|
5131
|
+
_fMediator = inject(FMediator);
|
|
5132
|
+
_fComponentsStore = inject(FComponentsStore);
|
|
5133
|
+
_fDraggableDataContext = inject(FDraggableDataContext);
|
|
5134
|
+
_fBrowser = inject(BrowserService);
|
|
5135
|
+
_lineService;
|
|
5136
|
+
handle(request) {
|
|
5137
|
+
this._addLineAlignmentDragHandler(this._getDraggedNodes());
|
|
5138
|
+
}
|
|
5139
|
+
_getDraggedNodes() {
|
|
5140
|
+
return this._fDraggableDataContext.draggableItems
|
|
5141
|
+
.filter((x) => x instanceof NodeDragHandler)
|
|
5142
|
+
.map((x) => x.fNode);
|
|
5143
|
+
}
|
|
5144
|
+
_addLineAlignmentDragHandler(fNodes) {
|
|
5145
|
+
this._fDraggableDataContext.draggableItems.push(new LineAlignmentDragHandler(this._fComponentsStore, this._lineService || this._createLineService(), this._getFlowHostSize(), this._getDraggedNodesBoundingRect(fNodes), this._getStaticNodeRects(fNodes), this._getCommonRestrictions()));
|
|
5146
|
+
}
|
|
5147
|
+
_getFlowHostSize() {
|
|
5148
|
+
return this._fMediator.send(new GetFlowHostElementRequest())
|
|
5149
|
+
.getBoundingClientRect();
|
|
5150
|
+
}
|
|
5151
|
+
_createLineService() {
|
|
5152
|
+
this._lineService = new LineService(this._fBrowser, this._fComponentsStore.fLineAlignment.hostElement);
|
|
5153
|
+
return this._lineService;
|
|
5154
|
+
}
|
|
5155
|
+
_getDraggedNodesBoundingRect(fNodes) {
|
|
5156
|
+
return RectExtensions.union(fNodes.map((x) => {
|
|
5157
|
+
return this._fMediator.execute(new GetNormalizedElementRectRequest(x.hostElement, false));
|
|
5158
|
+
})) || RectExtensions.initialize();
|
|
5159
|
+
}
|
|
5160
|
+
_getStaticNodeRects(fNodes) {
|
|
5161
|
+
return this._getStaticNodes(fNodes).map((x) => {
|
|
5162
|
+
return this._fMediator.execute(new GetNormalizedElementRectRequest(x.hostElement, false));
|
|
5163
|
+
});
|
|
5164
|
+
}
|
|
5165
|
+
_getStaticNodes(fNodes) {
|
|
5166
|
+
return this._fComponentsStore.fNodes
|
|
5167
|
+
.filter((x) => !fNodes.includes(x));
|
|
5168
|
+
}
|
|
5169
|
+
_getCommonRestrictions() {
|
|
5170
|
+
return this._fDraggableDataContext.draggableItems
|
|
5171
|
+
.filter((x) => x instanceof NodeDragHandler)[0].restrictions;
|
|
5172
|
+
}
|
|
5173
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: LineAlignmentPreparationExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
5174
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: LineAlignmentPreparationExecution });
|
|
5175
|
+
};
|
|
5176
|
+
LineAlignmentPreparationExecution = __decorate([
|
|
5177
|
+
FExecutionRegister(LineAlignmentPreparationRequest)
|
|
5178
|
+
], LineAlignmentPreparationExecution);
|
|
5179
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: LineAlignmentPreparationExecution, decorators: [{
|
|
5180
|
+
type: Injectable
|
|
5181
|
+
}] });
|
|
5182
|
+
|
|
5183
|
+
class NodeDragToParentFinalizeRequest {
|
|
5184
|
+
event;
|
|
5185
|
+
constructor(event) {
|
|
5186
|
+
this.event = event;
|
|
5187
|
+
}
|
|
5188
|
+
}
|
|
5189
|
+
|
|
5190
|
+
class NodeDragToParentDragHandler {
|
|
5191
|
+
fComponentsStore;
|
|
5192
|
+
fDraggableDataContext;
|
|
5193
|
+
notDraggedNodesRects;
|
|
5194
|
+
DEBOUNCE_TIME = 15;
|
|
5195
|
+
get _transform() {
|
|
5196
|
+
return this.fComponentsStore.fCanvas.transform;
|
|
5197
|
+
}
|
|
5198
|
+
_onPointerDownPosition = PointExtensions.initialize();
|
|
5199
|
+
_debounceTimer = null;
|
|
5200
|
+
fNodeWithRect = null;
|
|
5201
|
+
constructor(fComponentsStore, fDraggableDataContext, notDraggedNodesRects) {
|
|
5202
|
+
this.fComponentsStore = fComponentsStore;
|
|
5203
|
+
this.fDraggableDataContext = fDraggableDataContext;
|
|
5204
|
+
this.notDraggedNodesRects = notDraggedNodesRects;
|
|
5205
|
+
this._onPointerDownPosition = this.fDraggableDataContext.onPointerDownPosition;
|
|
5023
5206
|
}
|
|
5024
5207
|
_toggleParentNode(difference) {
|
|
5025
5208
|
const isInclude = this._isNodeInsideAnotherNode(this._getNewPosition(difference));
|
|
@@ -5237,27 +5420,38 @@ let NodeMovePreparationExecution = class NodeMovePreparationExecution {
|
|
|
5237
5420
|
get _fHost() {
|
|
5238
5421
|
return this._fComponentsStore.fFlow.hostElement;
|
|
5239
5422
|
}
|
|
5423
|
+
_fNode;
|
|
5240
5424
|
handle(request) {
|
|
5241
|
-
|
|
5242
|
-
|
|
5425
|
+
if (!this._isValid(request)) {
|
|
5426
|
+
return;
|
|
5427
|
+
}
|
|
5243
5428
|
this._fDraggableDataContext.onPointerDownScale = this._transform.scale;
|
|
5244
5429
|
this._fDraggableDataContext.onPointerDownPosition = Point.fromPoint(request.event.getPosition())
|
|
5245
5430
|
.elementTransform(this._fHost).div(this._transform.scale);
|
|
5246
|
-
this._fDraggableDataContext.draggableItems =
|
|
5247
|
-
|
|
5248
|
-
|
|
5249
|
-
const result = this._fComponentsStore.fNodes.find(n => n.isContains(targetElement));
|
|
5250
|
-
if (!result) {
|
|
5251
|
-
throw new Error('Node not found');
|
|
5431
|
+
this._fDraggableDataContext.draggableItems = this._calculateDraggedItems(this._fNode);
|
|
5432
|
+
if (this._fComponentsStore.fLineAlignment) {
|
|
5433
|
+
this._fMediator.execute(new LineAlignmentPreparationRequest());
|
|
5252
5434
|
}
|
|
5253
|
-
|
|
5435
|
+
}
|
|
5436
|
+
_isValid(request) {
|
|
5437
|
+
return this._fDraggableDataContext.isEmpty()
|
|
5438
|
+
&& this._isDragHandleElement(request.event.targetElement)
|
|
5439
|
+
&& !!this._getNode(request.event.targetElement);
|
|
5440
|
+
}
|
|
5441
|
+
_isDragHandleElement(element) {
|
|
5442
|
+
return isClosestElementHasClass(element, '.f-drag-handle');
|
|
5443
|
+
}
|
|
5444
|
+
_getNode(element) {
|
|
5445
|
+
this._fNode = this._fComponentsStore.fNodes
|
|
5446
|
+
.find(x => x.isContains(element) && !x.fDraggingDisabled);
|
|
5447
|
+
return this._fNode;
|
|
5254
5448
|
}
|
|
5255
5449
|
//We drag nodes from selection model
|
|
5256
|
-
|
|
5450
|
+
_calculateDraggedItems(fNode) {
|
|
5257
5451
|
let result = [];
|
|
5258
5452
|
if (!fNode.fSelectionDisabled) {
|
|
5259
5453
|
// Need to select node before drag
|
|
5260
|
-
this._fMediator.
|
|
5454
|
+
this._fMediator.execute(new SelectAndUpdateNodeLayerRequest(fNode));
|
|
5261
5455
|
result = this._dragModelFromSelection();
|
|
5262
5456
|
}
|
|
5263
5457
|
else {
|
|
@@ -5267,14 +5461,7 @@ let NodeMovePreparationExecution = class NodeMovePreparationExecution {
|
|
|
5267
5461
|
return result;
|
|
5268
5462
|
}
|
|
5269
5463
|
_dragModelFromSelection(nodeWithDisabledSelection) {
|
|
5270
|
-
return this._fMediator.
|
|
5271
|
-
}
|
|
5272
|
-
_initializeLineAlignment(itemsToDrag) {
|
|
5273
|
-
this._fDraggableDataContext.fLineAlignment?.initialize(this._fComponentsStore.fNodes, this._filterNodesFromDraggableItems(itemsToDrag));
|
|
5274
|
-
}
|
|
5275
|
-
_filterNodesFromDraggableItems(items) {
|
|
5276
|
-
return items.filter((x) => x instanceof NodeDragHandler)
|
|
5277
|
-
.map(x => x.fNode);
|
|
5464
|
+
return this._fMediator.execute(new CreateMoveNodesDragModelFromSelectionRequest(nodeWithDisabledSelection));
|
|
5278
5465
|
}
|
|
5279
5466
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NodeMovePreparationExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
5280
5467
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NodeMovePreparationExecution });
|
|
@@ -5286,39 +5473,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
|
|
|
5286
5473
|
type: Injectable
|
|
5287
5474
|
}] });
|
|
5288
5475
|
|
|
5289
|
-
let NodeMovePreparationValidator = class NodeMovePreparationValidator {
|
|
5290
|
-
_fComponentsStore = inject(FComponentsStore);
|
|
5291
|
-
_fDraggableDataContext = inject(FDraggableDataContext);
|
|
5292
|
-
handle(request) {
|
|
5293
|
-
return this._isDragHandlesEmpty()
|
|
5294
|
-
&& this._isDragHandleElement(request.event.targetElement)
|
|
5295
|
-
&& this._isNodeCanBeDragged(this._getNode(request.event.targetElement));
|
|
5296
|
-
}
|
|
5297
|
-
_isDragHandlesEmpty() {
|
|
5298
|
-
return !this._fDraggableDataContext.draggableItems.length;
|
|
5299
|
-
}
|
|
5300
|
-
_isDragHandleElement(element) {
|
|
5301
|
-
return isClosestElementHasClass(element, '.f-drag-handle');
|
|
5302
|
-
}
|
|
5303
|
-
_isNodeCanBeDragged(fNode) {
|
|
5304
|
-
return !!fNode && !fNode.fDraggingDisabled;
|
|
5305
|
-
}
|
|
5306
|
-
_getNode(element) {
|
|
5307
|
-
return this._fComponentsStore.fNodes.find(x => x.isContains(element));
|
|
5308
|
-
}
|
|
5309
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NodeMovePreparationValidator, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
5310
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NodeMovePreparationValidator });
|
|
5311
|
-
};
|
|
5312
|
-
NodeMovePreparationValidator = __decorate([
|
|
5313
|
-
FValidatorRegister(NodeMovePreparationRequest)
|
|
5314
|
-
], NodeMovePreparationValidator);
|
|
5315
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NodeMovePreparationValidator, decorators: [{
|
|
5316
|
-
type: Injectable
|
|
5317
|
-
}] });
|
|
5318
|
-
|
|
5319
5476
|
const NODE_MOVE_PREPARATION_PROVIDERS = [
|
|
5320
5477
|
NodeMovePreparationExecution,
|
|
5321
|
-
NodeMovePreparationValidator,
|
|
5322
5478
|
];
|
|
5323
5479
|
|
|
5324
5480
|
class NodeMoveFinalizeRequest {
|
|
@@ -5344,8 +5500,7 @@ let NodeMoveFinalizeExecution = class NodeMoveFinalizeExecution {
|
|
|
5344
5500
|
.find((x) => x instanceof NodeDragHandler);
|
|
5345
5501
|
const differenceWithCellSize = firstNodeOrGroup.getDifferenceWithCellSize(difference);
|
|
5346
5502
|
this._finalizeMove(differenceWithCellSize);
|
|
5347
|
-
this.
|
|
5348
|
-
this._applyConnectionUnderNode();
|
|
5503
|
+
this._applyConnectionUnderDroppedNode();
|
|
5349
5504
|
}
|
|
5350
5505
|
_isValid() {
|
|
5351
5506
|
return this._fDraggableDataContext.draggableItems.some((x) => x instanceof NodeDragHandler);
|
|
@@ -5369,7 +5524,9 @@ let NodeMoveFinalizeExecution = class NodeMoveFinalizeExecution {
|
|
|
5369
5524
|
return this._applyLineAlignmentDifference(difference, this._getLineAlignmentDifference(difference));
|
|
5370
5525
|
}
|
|
5371
5526
|
_getLineAlignmentDifference(difference) {
|
|
5372
|
-
return this._fDraggableDataContext.
|
|
5527
|
+
return this._fDraggableDataContext.draggableItems
|
|
5528
|
+
.find((x) => x instanceof LineAlignmentDragHandler)
|
|
5529
|
+
?.findNearestCoordinate(difference);
|
|
5373
5530
|
}
|
|
5374
5531
|
_applyLineAlignmentDifference(difference, intersection) {
|
|
5375
5532
|
if (intersection) {
|
|
@@ -5378,9 +5535,9 @@ let NodeMoveFinalizeExecution = class NodeMoveFinalizeExecution {
|
|
|
5378
5535
|
}
|
|
5379
5536
|
return difference;
|
|
5380
5537
|
}
|
|
5381
|
-
|
|
5538
|
+
_applyConnectionUnderDroppedNode() {
|
|
5382
5539
|
const isDraggedJustOneNode = this._fDraggableDataContext.draggableItems[0] instanceof NodeDragHandler;
|
|
5383
|
-
if (isDraggedJustOneNode) {
|
|
5540
|
+
if (isDraggedJustOneNode && this._fComponentsStore.fDraggable?.emitWhenNodeIntersectedWithConnection) {
|
|
5384
5541
|
const fNode = this._fDraggableDataContext.draggableItems[0].fNode;
|
|
5385
5542
|
setTimeout(() => this._fMediator.execute(new IsConnectionUnderNodeRequest(fNode)));
|
|
5386
5543
|
}
|
|
@@ -5397,6 +5554,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
|
|
|
5397
5554
|
|
|
5398
5555
|
const NODE_PROVIDERS = [
|
|
5399
5556
|
...CREATE_MOVE_NODE_DRAG_MODEL_FROM_SELECTION_PROVIDERS,
|
|
5557
|
+
LineAlignmentPreparationExecution,
|
|
5400
5558
|
NodeMoveFinalizeExecution,
|
|
5401
5559
|
...NODE_MOVE_PREPARATION_PROVIDERS,
|
|
5402
5560
|
...NODE_DRAG_TO_PARENT_PREPARATION_PROVIDERS,
|
|
@@ -5860,6 +6018,9 @@ let SingleSelectExecution = class SingleSelectExecution {
|
|
|
5860
6018
|
this.fMediator = fMediator;
|
|
5861
6019
|
}
|
|
5862
6020
|
handle(request) {
|
|
6021
|
+
if (!this._isValid(request)) {
|
|
6022
|
+
return;
|
|
6023
|
+
}
|
|
5863
6024
|
const { event } = request;
|
|
5864
6025
|
const item = this.getSelectableItem(event);
|
|
5865
6026
|
if (item) {
|
|
@@ -5867,6 +6028,10 @@ let SingleSelectExecution = class SingleSelectExecution {
|
|
|
5867
6028
|
}
|
|
5868
6029
|
this.isMultiselectEnabled(event) ? this.multiSelect(item) : this.singleSelect(item);
|
|
5869
6030
|
}
|
|
6031
|
+
_isValid(request) {
|
|
6032
|
+
return this.fComponentsStore.fFlow.hostElement.contains(request.event.targetElement)
|
|
6033
|
+
&& !this.fDraggableDataContext.draggableItems.length;
|
|
6034
|
+
}
|
|
5870
6035
|
getSelectableItem(event) {
|
|
5871
6036
|
return this._findNode(event.targetElement) || this.getConnectionHandler(event.targetElement);
|
|
5872
6037
|
}
|
|
@@ -5935,30 +6100,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
|
|
|
5935
6100
|
type: Injectable
|
|
5936
6101
|
}], ctorParameters: () => [{ type: i1.PlatformService }, { type: FComponentsStore }, { type: FDraggableDataContext }, { type: i2.FMediator }] });
|
|
5937
6102
|
|
|
5938
|
-
let SingleSelectValidator = class SingleSelectValidator {
|
|
5939
|
-
fComponentsStore;
|
|
5940
|
-
fDraggableDataContext;
|
|
5941
|
-
constructor(fComponentsStore, fDraggableDataContext) {
|
|
5942
|
-
this.fComponentsStore = fComponentsStore;
|
|
5943
|
-
this.fDraggableDataContext = fDraggableDataContext;
|
|
5944
|
-
}
|
|
5945
|
-
handle(request) {
|
|
5946
|
-
return this.fComponentsStore.fFlow.hostElement.contains(request.event.targetElement)
|
|
5947
|
-
&& !this.fDraggableDataContext.draggableItems.length;
|
|
5948
|
-
}
|
|
5949
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: SingleSelectValidator, deps: [{ token: FComponentsStore }, { token: FDraggableDataContext }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
5950
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: SingleSelectValidator });
|
|
5951
|
-
};
|
|
5952
|
-
SingleSelectValidator = __decorate([
|
|
5953
|
-
FValidatorRegister(SingleSelectRequest)
|
|
5954
|
-
], SingleSelectValidator);
|
|
5955
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: SingleSelectValidator, decorators: [{
|
|
5956
|
-
type: Injectable
|
|
5957
|
-
}], ctorParameters: () => [{ type: FComponentsStore }, { type: FDraggableDataContext }] });
|
|
5958
|
-
|
|
5959
6103
|
const SINGLE_SELECT_PROVIDERS = [
|
|
5960
6104
|
SingleSelectExecution,
|
|
5961
|
-
SingleSelectValidator
|
|
5962
6105
|
];
|
|
5963
6106
|
|
|
5964
6107
|
class FDraggableBase extends DragAndDropBase {
|
|
@@ -6305,6 +6448,7 @@ class FDraggableDirective extends FDraggableBase {
|
|
|
6305
6448
|
}
|
|
6306
6449
|
fSelectionChange = new EventEmitter();
|
|
6307
6450
|
fNodeIntersectedWithConnections = new EventEmitter();
|
|
6451
|
+
emitWhenNodeIntersectedWithConnection = false;
|
|
6308
6452
|
fCreateNode = new EventEmitter();
|
|
6309
6453
|
fReassignConnection = new EventEmitter();
|
|
6310
6454
|
fCreateConnection = new EventEmitter();
|
|
@@ -6323,11 +6467,11 @@ class FDraggableDirective extends FDraggableBase {
|
|
|
6323
6467
|
super.subscribe(this._fBrowser.document);
|
|
6324
6468
|
}
|
|
6325
6469
|
onPointerDown(event) {
|
|
6326
|
-
this._fMediator.
|
|
6470
|
+
this._fMediator.execute(new InitializeDragSequenceRequest());
|
|
6327
6471
|
this.plugins.forEach((p) => p.onPointerDown?.(event));
|
|
6328
|
-
this._fMediator.
|
|
6329
|
-
this._fMediator.
|
|
6330
|
-
this._fMediator.
|
|
6472
|
+
this._fMediator.execute(new SingleSelectRequest(event));
|
|
6473
|
+
this._fMediator.execute(new ReassignConnectionPreparationRequest(event));
|
|
6474
|
+
this._fMediator.execute(new CreateConnectionPreparationRequest(event));
|
|
6331
6475
|
const isMouseLeftButton = event.isMouseLeftButton();
|
|
6332
6476
|
if (!isMouseLeftButton) {
|
|
6333
6477
|
this.finalizeDragSequence();
|
|
@@ -6369,7 +6513,7 @@ class FDraggableDirective extends FDraggableBase {
|
|
|
6369
6513
|
super.unsubscribe();
|
|
6370
6514
|
}
|
|
6371
6515
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FDraggableDirective, deps: [{ token: NgZone, optional: true }, { token: i1.BrowserService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
6372
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "
|
|
6516
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.2.4", type: FDraggableDirective, selector: "f-flow[fDraggable]", inputs: { disabled: ["fDraggableDisabled", "disabled"], emitWhenNodeIntersectedWithConnection: ["emitWhenNodeIntersectedWithConnection", "emitWhenNodeIntersectedWithConnection", booleanAttribute], vCellSize: "vCellSize", hCellSize: "hCellSize" }, outputs: { fSelectionChange: "fSelectionChange", fNodeIntersectedWithConnections: "fNodeIntersectedWithConnections", fCreateNode: "fCreateNode", fReassignConnection: "fReassignConnection", fCreateConnection: "fCreateConnection", fDropToGroup: "fDropToGroup" }, queries: [{ propertyName: "plugins", predicate: F_DRAG_AND_DROP_PLUGIN, descendants: true }], exportAs: ["fDraggable"], usesInheritance: true, ngImport: i0 });
|
|
6373
6517
|
}
|
|
6374
6518
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FDraggableDirective, decorators: [{
|
|
6375
6519
|
type: Directive,
|
|
@@ -6389,6 +6533,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
|
|
|
6389
6533
|
type: Output
|
|
6390
6534
|
}], fNodeIntersectedWithConnections: [{
|
|
6391
6535
|
type: Output
|
|
6536
|
+
}], emitWhenNodeIntersectedWithConnection: [{
|
|
6537
|
+
type: Input,
|
|
6538
|
+
args: [{ transform: booleanAttribute }]
|
|
6392
6539
|
}], fCreateNode: [{
|
|
6393
6540
|
type: Output
|
|
6394
6541
|
}], fReassignConnection: [{
|
|
@@ -7702,23 +7849,21 @@ class GetFlowStateConnectionsRequest {
|
|
|
7702
7849
|
}
|
|
7703
7850
|
|
|
7704
7851
|
let GetFlowStateConnectionsExecution = class GetFlowStateConnectionsExecution {
|
|
7705
|
-
|
|
7706
|
-
constructor(fComponentsStore) {
|
|
7707
|
-
this.fComponentsStore = fComponentsStore;
|
|
7708
|
-
}
|
|
7852
|
+
_fComponentsStore = inject(FComponentsStore);
|
|
7709
7853
|
handle(request) {
|
|
7710
|
-
return this.
|
|
7711
|
-
|
|
7712
|
-
|
|
7713
|
-
|
|
7714
|
-
|
|
7715
|
-
|
|
7716
|
-
|
|
7717
|
-
|
|
7718
|
-
|
|
7719
|
-
|
|
7854
|
+
return this._fComponentsStore.fConnections.map(this._mapToConnectionState);
|
|
7855
|
+
}
|
|
7856
|
+
_mapToConnectionState(x) {
|
|
7857
|
+
return {
|
|
7858
|
+
id: x.fId,
|
|
7859
|
+
fOutputId: x.fOutputId,
|
|
7860
|
+
fInputId: x.fInputId,
|
|
7861
|
+
fType: x.fType,
|
|
7862
|
+
fBehavior: x.fBehavior,
|
|
7863
|
+
isSelected: x.isSelected()
|
|
7864
|
+
};
|
|
7720
7865
|
}
|
|
7721
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetFlowStateConnectionsExecution, deps: [
|
|
7866
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetFlowStateConnectionsExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
7722
7867
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetFlowStateConnectionsExecution });
|
|
7723
7868
|
};
|
|
7724
7869
|
GetFlowStateConnectionsExecution = __decorate([
|
|
@@ -7726,7 +7871,7 @@ GetFlowStateConnectionsExecution = __decorate([
|
|
|
7726
7871
|
], GetFlowStateConnectionsExecution);
|
|
7727
7872
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetFlowStateConnectionsExecution, decorators: [{
|
|
7728
7873
|
type: Injectable
|
|
7729
|
-
}]
|
|
7874
|
+
}] });
|
|
7730
7875
|
|
|
7731
7876
|
class GetFlowStateNodesRequest {
|
|
7732
7877
|
type;
|
|
@@ -7747,13 +7892,13 @@ let GetFlowStateNodesExecution = class GetFlowStateNodesExecution {
|
|
|
7747
7892
|
parent: x.fParentId,
|
|
7748
7893
|
position: x.position,
|
|
7749
7894
|
size: x.size,
|
|
7750
|
-
fOutputs: this.
|
|
7751
|
-
fInputs: this.
|
|
7895
|
+
fOutputs: this._getOutputs(x.hostElement),
|
|
7896
|
+
fInputs: this._getInputs(x.hostElement),
|
|
7752
7897
|
isSelected: x.isSelected()
|
|
7753
7898
|
};
|
|
7754
7899
|
});
|
|
7755
7900
|
}
|
|
7756
|
-
|
|
7901
|
+
_getOutputs(hostElement) {
|
|
7757
7902
|
return this.fComponentsStore.fOutputs.filter((x) => hostElement.contains(x.hostElement)).map((x) => {
|
|
7758
7903
|
return {
|
|
7759
7904
|
id: x.fId,
|
|
@@ -7761,7 +7906,7 @@ let GetFlowStateNodesExecution = class GetFlowStateNodesExecution {
|
|
|
7761
7906
|
};
|
|
7762
7907
|
});
|
|
7763
7908
|
}
|
|
7764
|
-
|
|
7909
|
+
_getInputs(hostElement) {
|
|
7765
7910
|
return this.fComponentsStore.fInputs.filter((x) => hostElement.contains(x.hostElement)).map((x) => {
|
|
7766
7911
|
return {
|
|
7767
7912
|
id: x.fId,
|
|
@@ -7783,25 +7928,21 @@ class GetFlowStateRequest {
|
|
|
7783
7928
|
}
|
|
7784
7929
|
|
|
7785
7930
|
let GetFlowStateExecution = class GetFlowStateExecution {
|
|
7786
|
-
|
|
7787
|
-
|
|
7788
|
-
constructor(fComponentsStore, fMediator) {
|
|
7789
|
-
this.fComponentsStore = fComponentsStore;
|
|
7790
|
-
this.fMediator = fMediator;
|
|
7791
|
-
}
|
|
7931
|
+
_fMediator = inject(FMediator);
|
|
7932
|
+
_fComponentsStore = inject(FComponentsStore);
|
|
7792
7933
|
handle(payload) {
|
|
7793
7934
|
return {
|
|
7794
|
-
position: this.
|
|
7795
|
-
scale: this.
|
|
7796
|
-
nodes: this.
|
|
7797
|
-
groups: this.
|
|
7798
|
-
connections: this.
|
|
7935
|
+
position: this._getCanvasPosition(this._fComponentsStore.fCanvas.transform),
|
|
7936
|
+
scale: this._fComponentsStore.fCanvas.transform.scale,
|
|
7937
|
+
nodes: this._fMediator.send(new GetFlowStateNodesRequest(FNodeDirective)),
|
|
7938
|
+
groups: this._fMediator.send(new GetFlowStateNodesRequest(FGroupDirective)),
|
|
7939
|
+
connections: this._fMediator.send(new GetFlowStateConnectionsRequest())
|
|
7799
7940
|
};
|
|
7800
7941
|
}
|
|
7801
|
-
|
|
7942
|
+
_getCanvasPosition(transform) {
|
|
7802
7943
|
return PointExtensions.sum(transform.position, transform.scaledPosition);
|
|
7803
7944
|
}
|
|
7804
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetFlowStateExecution, deps: [
|
|
7945
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetFlowStateExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
7805
7946
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetFlowStateExecution });
|
|
7806
7947
|
};
|
|
7807
7948
|
GetFlowStateExecution = __decorate([
|
|
@@ -7809,7 +7950,7 @@ GetFlowStateExecution = __decorate([
|
|
|
7809
7950
|
], GetFlowStateExecution);
|
|
7810
7951
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetFlowStateExecution, decorators: [{
|
|
7811
7952
|
type: Injectable
|
|
7812
|
-
}]
|
|
7953
|
+
}] });
|
|
7813
7954
|
|
|
7814
7955
|
const GET_FLOW_STATE_PROVIDERS = [
|
|
7815
7956
|
GetFlowStateExecution,
|
|
@@ -7853,7 +7994,7 @@ class AddLineAlignmentToStoreRequest {
|
|
|
7853
7994
|
let AddLineAlignmentToStoreExecution = class AddLineAlignmentToStoreExecution {
|
|
7854
7995
|
_fComponentsStore = inject(FComponentsStore);
|
|
7855
7996
|
handle(request) {
|
|
7856
|
-
|
|
7997
|
+
this._fComponentsStore.fLineAlignment = request.fComponent;
|
|
7857
7998
|
}
|
|
7858
7999
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: AddLineAlignmentToStoreExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
7859
8000
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: AddLineAlignmentToStoreExecution });
|
|
@@ -7871,7 +8012,7 @@ class RemoveLineAlignmentFromStoreRequest {
|
|
|
7871
8012
|
let RemoveLineAlignmentFromStoreExecution = class RemoveLineAlignmentFromStoreExecution {
|
|
7872
8013
|
_fComponentsStore = inject(FComponentsStore);
|
|
7873
8014
|
handle(request) {
|
|
7874
|
-
this._fComponentsStore.
|
|
8015
|
+
this._fComponentsStore.fLineAlignment = undefined;
|
|
7875
8016
|
}
|
|
7876
8017
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: RemoveLineAlignmentFromStoreExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
7877
8018
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: RemoveLineAlignmentFromStoreExecution });
|
|
@@ -7937,15 +8078,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
|
|
|
7937
8078
|
}] });
|
|
7938
8079
|
|
|
7939
8080
|
class CalculateNodesBoundingBoxNormalizedPositionRequest {
|
|
8081
|
+
fNodes;
|
|
8082
|
+
constructor(fNodes) {
|
|
8083
|
+
this.fNodes = fNodes;
|
|
8084
|
+
}
|
|
7940
8085
|
}
|
|
7941
8086
|
|
|
7942
8087
|
let CalculateNodesBoundingBoxNormalizedPositionExecution = class CalculateNodesBoundingBoxNormalizedPositionExecution {
|
|
7943
8088
|
_fComponentsStore = inject(FComponentsStore);
|
|
7944
8089
|
handle(request) {
|
|
7945
|
-
return RectExtensions.union(this._getNodesRects());
|
|
8090
|
+
return RectExtensions.union(this._getNodesRects(request.fNodes || this._fComponentsStore.fNodes));
|
|
7946
8091
|
}
|
|
7947
|
-
_getNodesRects() {
|
|
7948
|
-
return
|
|
8092
|
+
_getNodesRects(fNodes) {
|
|
8093
|
+
return fNodes.map((x) => {
|
|
7949
8094
|
return this._getElementRect(x, RectExtensions.fromElement(x.hostElement));
|
|
7950
8095
|
});
|
|
7951
8096
|
}
|
|
@@ -8016,6 +8161,40 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
|
|
|
8016
8161
|
type: Injectable
|
|
8017
8162
|
}] });
|
|
8018
8163
|
|
|
8164
|
+
class GetParentNodesRequest {
|
|
8165
|
+
fNode;
|
|
8166
|
+
constructor(fNode) {
|
|
8167
|
+
this.fNode = fNode;
|
|
8168
|
+
}
|
|
8169
|
+
}
|
|
8170
|
+
|
|
8171
|
+
let GetParentNodesExecution = class GetParentNodesExecution {
|
|
8172
|
+
_fComponentsStore = inject(FComponentsStore);
|
|
8173
|
+
handle(request) {
|
|
8174
|
+
return this._getParentNodes(request.fNode, new Set(), []);
|
|
8175
|
+
}
|
|
8176
|
+
_getParentNodes(fNode, visited, result) {
|
|
8177
|
+
if (visited.has(fNode.fId)) {
|
|
8178
|
+
throw new Error('Circular reference detected in the node hierarchy. Node id: ' + fNode.fId);
|
|
8179
|
+
}
|
|
8180
|
+
visited.add(fNode.fId);
|
|
8181
|
+
const parent = this._fComponentsStore.fNodes.find((x) => x.fId === fNode.fParentId);
|
|
8182
|
+
if (!parent) {
|
|
8183
|
+
return result;
|
|
8184
|
+
}
|
|
8185
|
+
result.push(parent);
|
|
8186
|
+
return this._getParentNodes(parent, visited, result);
|
|
8187
|
+
}
|
|
8188
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetParentNodesExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
8189
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetParentNodesExecution });
|
|
8190
|
+
};
|
|
8191
|
+
GetParentNodesExecution = __decorate([
|
|
8192
|
+
FExecutionRegister(GetParentNodesRequest)
|
|
8193
|
+
], GetParentNodesExecution);
|
|
8194
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetParentNodesExecution, decorators: [{
|
|
8195
|
+
type: Injectable
|
|
8196
|
+
}] });
|
|
8197
|
+
|
|
8019
8198
|
class UpdateNodeWhenStateOrSizeChangedRequest {
|
|
8020
8199
|
fComponent;
|
|
8021
8200
|
destroyRef;
|
|
@@ -8259,6 +8438,22 @@ function isMobile() {
|
|
|
8259
8438
|
return /android|iPad|iPhone|iPod/i.test(navigator.userAgent || navigator.vendor || window['opera']);
|
|
8260
8439
|
}
|
|
8261
8440
|
|
|
8441
|
+
function LogExecutionTime(label) {
|
|
8442
|
+
return function (target, propertyKey, descriptor) {
|
|
8443
|
+
const originalMethod = descriptor.value;
|
|
8444
|
+
descriptor.value = function (...args) {
|
|
8445
|
+
console.time(label || String(propertyKey));
|
|
8446
|
+
const result = originalMethod.apply(this, args);
|
|
8447
|
+
if (result instanceof Promise) {
|
|
8448
|
+
return result.finally(() => console.timeEnd(label || String(propertyKey)));
|
|
8449
|
+
}
|
|
8450
|
+
console.timeEnd(label || String(propertyKey));
|
|
8451
|
+
return result;
|
|
8452
|
+
};
|
|
8453
|
+
return descriptor;
|
|
8454
|
+
};
|
|
8455
|
+
}
|
|
8456
|
+
|
|
8262
8457
|
const COMMON_PROVIDERS = [
|
|
8263
8458
|
...F_CANVAS_FEATURES,
|
|
8264
8459
|
...F_CONNECTION_FEATURES,
|
|
@@ -8634,171 +8829,6 @@ const F_CANVAS_PROVIDERS = [
|
|
|
8634
8829
|
FCanvasComponent,
|
|
8635
8830
|
];
|
|
8636
8831
|
|
|
8637
|
-
class LineElement {
|
|
8638
|
-
hostElement;
|
|
8639
|
-
element;
|
|
8640
|
-
constructor(fBrowser, hostElement) {
|
|
8641
|
-
this.hostElement = hostElement;
|
|
8642
|
-
this.element = fBrowser.document.createElement('div');
|
|
8643
|
-
this.hostElement.appendChild(this.element);
|
|
8644
|
-
this.element.classList.add('f-line');
|
|
8645
|
-
}
|
|
8646
|
-
hide() {
|
|
8647
|
-
this.element.style.display = 'none';
|
|
8648
|
-
}
|
|
8649
|
-
show() {
|
|
8650
|
-
this.element.style.display = 'block';
|
|
8651
|
-
}
|
|
8652
|
-
draw(object) {
|
|
8653
|
-
this.element.style.position = 'absolute';
|
|
8654
|
-
Object.keys(object).forEach((key) => {
|
|
8655
|
-
// @ts-ignore
|
|
8656
|
-
this.element.style[key] = object[key] + 'px';
|
|
8657
|
-
});
|
|
8658
|
-
}
|
|
8659
|
-
}
|
|
8660
|
-
|
|
8661
|
-
class LineService {
|
|
8662
|
-
hostElement;
|
|
8663
|
-
fHorizontalLine;
|
|
8664
|
-
fVerticalLine;
|
|
8665
|
-
constructor(fBrowser, hostElement) {
|
|
8666
|
-
this.hostElement = hostElement;
|
|
8667
|
-
this.fHorizontalLine = new LineElement(fBrowser, this.hostElement);
|
|
8668
|
-
this.fVerticalLine = new LineElement(fBrowser, this.hostElement);
|
|
8669
|
-
this.fHorizontalLine.hide();
|
|
8670
|
-
this.fVerticalLine.hide();
|
|
8671
|
-
}
|
|
8672
|
-
drawVerticalLine(x, size, transform) {
|
|
8673
|
-
this.fVerticalLine.show();
|
|
8674
|
-
this.fVerticalLine.draw({
|
|
8675
|
-
left: x * transform.scale + transform.position.x + transform.scaledPosition.x,
|
|
8676
|
-
top: 0,
|
|
8677
|
-
width: 1,
|
|
8678
|
-
height: size.height
|
|
8679
|
-
});
|
|
8680
|
-
}
|
|
8681
|
-
drawHorizontalLine(y, size, transform) {
|
|
8682
|
-
this.fHorizontalLine.show();
|
|
8683
|
-
this.fHorizontalLine.draw({
|
|
8684
|
-
left: 0,
|
|
8685
|
-
top: y * transform.scale + transform.position.y + transform.scaledPosition.y,
|
|
8686
|
-
width: size.width,
|
|
8687
|
-
height: 1
|
|
8688
|
-
});
|
|
8689
|
-
}
|
|
8690
|
-
hideVerticalLine() {
|
|
8691
|
-
this.fVerticalLine.hide();
|
|
8692
|
-
}
|
|
8693
|
-
hideHorizontalLine() {
|
|
8694
|
-
this.fHorizontalLine.hide();
|
|
8695
|
-
}
|
|
8696
|
-
}
|
|
8697
|
-
|
|
8698
|
-
const F_LINE_ALIGNMENT = new InjectionToken('F_LINE_ALIGNMENT');
|
|
8699
|
-
class FLineAlignmentBase {
|
|
8700
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FLineAlignmentBase, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
8701
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.4", type: FLineAlignmentBase, ngImport: i0 });
|
|
8702
|
-
}
|
|
8703
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FLineAlignmentBase, decorators: [{
|
|
8704
|
-
type: Directive
|
|
8705
|
-
}] });
|
|
8706
|
-
|
|
8707
|
-
class FLineAlignmentComponent extends FLineAlignmentBase {
|
|
8708
|
-
elementReference;
|
|
8709
|
-
fDraggableDataContext;
|
|
8710
|
-
DEBOUNCE_TIME = 10;
|
|
8711
|
-
fAlignThreshold = 10;
|
|
8712
|
-
get hostElement() {
|
|
8713
|
-
return this.elementReference.nativeElement;
|
|
8714
|
-
}
|
|
8715
|
-
lineService;
|
|
8716
|
-
size = SizeExtensions.initialize();
|
|
8717
|
-
draggedNodeRect = RectExtensions.initialize();
|
|
8718
|
-
rects = [];
|
|
8719
|
-
_fMediator = inject(FMediator);
|
|
8720
|
-
_fCanvas;
|
|
8721
|
-
_debounceTimer = null;
|
|
8722
|
-
get _transform() {
|
|
8723
|
-
return this._fCanvas.transform;
|
|
8724
|
-
}
|
|
8725
|
-
constructor(elementReference, fDraggableDataContext, fBrowser) {
|
|
8726
|
-
super();
|
|
8727
|
-
this.elementReference = elementReference;
|
|
8728
|
-
this.fDraggableDataContext = fDraggableDataContext;
|
|
8729
|
-
this.lineService = new LineService(fBrowser, this.hostElement);
|
|
8730
|
-
}
|
|
8731
|
-
ngAfterViewInit() {
|
|
8732
|
-
this._fCanvas = this._fMediator.send(new GetCanvasRequest());
|
|
8733
|
-
this.fDraggableDataContext.fLineAlignment = this;
|
|
8734
|
-
}
|
|
8735
|
-
initialize(allNodes, currentNodes) {
|
|
8736
|
-
this.size = this._fMediator.send(new GetFlowHostElementRequest()).getBoundingClientRect();
|
|
8737
|
-
this.rects = [];
|
|
8738
|
-
const draggedNodeRects = currentNodes.map((x) => {
|
|
8739
|
-
return this._fMediator.execute(new GetNormalizedElementRectRequest(x.hostElement, false));
|
|
8740
|
-
});
|
|
8741
|
-
this.draggedNodeRect = RectExtensions.union(draggedNodeRects) || RectExtensions.initialize();
|
|
8742
|
-
const allNodesExcludeCurrents = allNodes.filter((x) => {
|
|
8743
|
-
return !currentNodes.includes(x);
|
|
8744
|
-
});
|
|
8745
|
-
this.rects = allNodesExcludeCurrents.map((x) => {
|
|
8746
|
-
return this._fMediator.execute(new GetNormalizedElementRectRequest(x.hostElement, false));
|
|
8747
|
-
});
|
|
8748
|
-
}
|
|
8749
|
-
handle(difference) {
|
|
8750
|
-
if (this._debounceTimer) {
|
|
8751
|
-
clearTimeout(this._debounceTimer);
|
|
8752
|
-
}
|
|
8753
|
-
this._debounceTimer = setTimeout(() => this.drawIntersectingLines(difference), this.DEBOUNCE_TIME);
|
|
8754
|
-
}
|
|
8755
|
-
drawIntersectingLines(difference) {
|
|
8756
|
-
const intersect = this.findNearestCoordinate(difference);
|
|
8757
|
-
if (intersect.xResult.value !== undefined) {
|
|
8758
|
-
this.lineService.drawVerticalLine(intersect.xResult.value, this.size, this._transform);
|
|
8759
|
-
}
|
|
8760
|
-
else {
|
|
8761
|
-
this.lineService.hideVerticalLine();
|
|
8762
|
-
}
|
|
8763
|
-
if (intersect.yResult.value !== undefined) {
|
|
8764
|
-
this.lineService.drawHorizontalLine(intersect.yResult.value, this.size, this._transform);
|
|
8765
|
-
}
|
|
8766
|
-
else {
|
|
8767
|
-
this.lineService.hideHorizontalLine();
|
|
8768
|
-
}
|
|
8769
|
-
}
|
|
8770
|
-
findNearestCoordinate(difference) {
|
|
8771
|
-
const rect = RectExtensions.addPoint(this.draggedNodeRect, difference);
|
|
8772
|
-
return findClosestAlignment(this.rects, rect, this.fAlignThreshold);
|
|
8773
|
-
}
|
|
8774
|
-
complete() {
|
|
8775
|
-
this.lineService.hideVerticalLine();
|
|
8776
|
-
this.lineService.hideHorizontalLine();
|
|
8777
|
-
if (this._debounceTimer) {
|
|
8778
|
-
clearTimeout(this._debounceTimer);
|
|
8779
|
-
this._debounceTimer = null;
|
|
8780
|
-
}
|
|
8781
|
-
}
|
|
8782
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FLineAlignmentComponent, deps: [{ token: i0.ElementRef }, { token: FDraggableDataContext }, { token: i1.BrowserService }], target: i0.ɵɵFactoryTarget.Component });
|
|
8783
|
-
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: [
|
|
8784
|
-
{ provide: F_LINE_ALIGNMENT, useExisting: FLineAlignmentComponent }
|
|
8785
|
-
], 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"] });
|
|
8786
|
-
}
|
|
8787
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FLineAlignmentComponent, decorators: [{
|
|
8788
|
-
type: Component,
|
|
8789
|
-
args: [{ selector: "f-line-alignment", template: "", exportAs: "fComponent", host: {
|
|
8790
|
-
'class': 'f-line-alignment f-component'
|
|
8791
|
-
}, providers: [
|
|
8792
|
-
{ provide: F_LINE_ALIGNMENT, useExisting: FLineAlignmentComponent }
|
|
8793
|
-
], 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"] }]
|
|
8794
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: FDraggableDataContext }, { type: i1.BrowserService }], propDecorators: { fAlignThreshold: [{
|
|
8795
|
-
type: Input
|
|
8796
|
-
}] } });
|
|
8797
|
-
|
|
8798
|
-
const F_LINE_ALIGNMENT_PROVIDERS = [
|
|
8799
|
-
FLineAlignmentComponent
|
|
8800
|
-
];
|
|
8801
|
-
|
|
8802
8832
|
class FMinimapData {
|
|
8803
8833
|
element;
|
|
8804
8834
|
scale;
|
|
@@ -9251,5 +9281,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
|
|
|
9251
9281
|
* Generated bundle index. Do not edit.
|
|
9252
9282
|
*/
|
|
9253
9283
|
|
|
9254
|
-
export { AddBackgroundToStoreExecution, AddBackgroundToStoreRequest, AddCanvasToStoreExecution, AddCanvasToStoreRequest, AddConnectionForCreateToStoreExecution, AddConnectionForCreateToStoreRequest, AddConnectionMarkerToStoreExecution, AddConnectionMarkerToStoreRequest, AddConnectionToStoreExecution, AddConnectionToStoreRequest, AddDndToStoreExecution, AddDndToStoreRequest, AddFlowToStoreExecution, AddFlowToStoreRequest, AddInputToStoreExecution, AddInputToStoreRequest, AddLineAlignmentToStoreExecution, AddLineAlignmentToStoreRequest, AddNodeToStoreExecution, AddNodeToStoreRequest, AddOutletToStoreExecution, AddOutletToStoreRequest, AddOutputToStoreExecution, AddOutputToStoreRequest, AddPatternToBackgroundExecution, AddPatternToBackgroundRequest, AddSnapConnectionToStoreExecution, AddSnapConnectionToStoreRequest, ApplyChildResizeRestrictionsExecution, ApplyChildResizeRestrictionsRequest, ApplyParentResizeRestrictionsExecution, ApplyParentResizeRestrictionsRequest, CANVAS_MOVE_FINALIZE_PROVIDERS, CANVAS_MOVE_PREPARATION_PROVIDERS, CANVAS_PROVIDERS, COMMON_PROVIDERS, CONNECTIONS_PROVIDERS, CONNECTION_GRADIENT, CONNECTION_PATH, CONNECTION_TEXT, CREATE_MOVE_NODE_DRAG_MODEL_FROM_SELECTION_PROVIDERS, CalculateCenterBetweenPointsHandler, CalculateCenterBetweenPointsRequest, CalculateChangedPositionExecution, CalculateChangedPositionRequest, CalculateChangedSizeExecution, CalculateChangedSizeRequest, CalculateConnectionCenterHandler, CalculateConnectionCenterRequest, CalculateConnectionLineByBehaviorExecution, CalculateConnectionLineByBehaviorRequest, CalculateConnectorConnectableSideHandler, CalculateConnectorConnectableSideRequest, CalculateFlowPointFromMinimapPointExecution, CalculateFlowPointFromMinimapPointRequest, CalculateNodesBoundingBoxExecution, CalculateNodesBoundingBoxNormalizedPositionExecution, CalculateNodesBoundingBoxNormalizedPositionRequest, CalculateNodesBoundingBoxRequest, CanvasDragHandler, CanvasMoveFinalizeExecution, CanvasMoveFinalizeRequest, CanvasMovePreparationExecution, CanvasMovePreparationRequest, CanvasMovePreparationValidator, CenterGroupOrNodeExecution, CenterGroupOrNodeRequest, ClearSelectionExecution, ClearSelectionRequest, ConnectionBaseDragHandler, ConnectionDragHandler, ConnectionSourceDragHandler, ConnectionTargetDragHandler, CreateConnectionDragHandler, CreateConnectionDragHandlerExecution, CreateConnectionDragHandlerRequest, CreateConnectionFinalizeExecution, CreateConnectionFinalizeRequest, CreateConnectionFromOutletPreparationExecution, CreateConnectionFromOutletPreparationRequest, CreateConnectionFromOutputPreparationExecution, CreateConnectionFromOutputPreparationRequest, CreateConnectionFromOutputPreparationValidator, CreateConnectionMarkersExecution, CreateConnectionMarkersRequest, CreateConnectionPreparationExecution, CreateConnectionPreparationRequest, CreateConnectionPreparationValidator, CreateMoveNodesDragModelFromSelectionExecution, CreateMoveNodesDragModelFromSelectionRequest, DRAG_AND_DROP_COMMON_PROVIDERS, EFConnectableSide, EFConnectionBehavior, EFConnectionType, EFMarkerType, EFResizeHandleType, EXTERNAL_ITEM_FINALIZE_PROVIDERS, EXTERNAL_ITEM_PREPARATION_PROVIDERS, EmitSelectionChangeEventExecution, EmitSelectionChangeEventRequest, EndDragSequenceExecution, EndDragSequenceRequest, ExternalItemDragHandler, ExternalItemFinalizeExecution, ExternalItemFinalizeRequest, ExternalItemPreparationExecution, ExternalItemPreparationRequest, ExternalItemPreparationValidator, FBackgroundBase, FBackgroundComponent, FBezierPathBuilder, FCanvasBase, FCanvasChangeEvent, FCanvasComponent, FChannel, FChannelHub, FCirclePatternComponent, FComponentsStore, FConnectionBase, FConnectionCenterDirective, FConnectionComponent, FConnectionDragHandleComponent, FConnectionFactory, FConnectionForCreateComponent, FConnectionGradientComponent, FConnectionPathComponent, FConnectionSelectionComponent, FConnectionTextComponent, FConnectionTextPathDirective, FConnectorBase, FCreateConnectionEvent, FCreateNodeEvent, FDragHandleDirective, FDraggableBase, FDraggableDataContext, FDraggableDirective, FDropToGroupEvent, FExternalItemBase, FExternalItemDirective, FExternalItemService, FFlowBase, FFlowComponent, FFlowModule, FGroupDirective, FLineAlignmentBase, FLineAlignmentComponent, FMarkerBase, FMarkerDirective, FMinimapCanvasDirective, FMinimapComponent, FMinimapData, FMinimapDragHandler, FMinimapFlowDirective, FMinimapViewDirective, FNodeBase, FNodeDirective, FNodeInputBase, FNodeInputDirective, FNodeIntersectedWithConnections, FNodeOutletBase, FNodeOutletDirective, FNodeOutputBase, FNodeOutputDirective, FReassignConnectionEvent, FRectPatternComponent, FResizeChannel, FResizeHandleDirective, FRotateHandleDirective, FSegmentPathBuilder, FSelectionAreaBase, FSelectionAreaComponent, FSelectionChangeEvent, FSnapConnectionComponent, FStraightPathBuilder, FZoomBase, FZoomDirective, F_BACKGROUND, F_BACKGROUND_FEATURES, F_BACKGROUND_PATTERN, F_BACKGROUND_PROVIDERS, F_CANVAS, F_CANVAS_FEATURES, F_CANVAS_PROVIDERS, F_CONNECTION_BUILDERS, F_CONNECTION_DRAG_HANDLE_CLASS, F_CONNECTION_FEATURES, F_CONNECTION_IDENTIFIERS, F_CONNECTION_PROVIDERS, F_CONNECTORS_FEATURES, F_CONNECTORS_PROVIDERS, F_DRAGGABLE_FEATURES, F_DRAGGABLE_PROVIDERS, F_DRAG_AND_DROP_PLUGIN, F_DRAG_HANDLE, F_EXTERNAL_ITEM, F_EXTERNAL_ITEM_DRAG_AND_DROP_PROVIDERS, F_EXTERNAL_ITEM_PROVIDERS, F_FLOW, F_FLOW_FEATURES, F_FLOW_PROVIDERS, F_LINE_ALIGNMENT, F_LINE_ALIGNMENT_FEATURES, F_LINE_ALIGNMENT_PROVIDERS, F_MARKER, F_MINIMAP_DRAG_AND_DROP_PROVIDERS, F_MINIMAP_PROVIDERS, F_NODE, F_NODE_FEATURES, F_NODE_INPUT, F_NODE_OUTLET, F_NODE_OUTPUT, F_NODE_PROVIDERS, F_RESIZE_HANDLE, F_SELECTED_CLASS, F_SELECTION_AREA_DRAG_AND_DROP_PROVIDERS, F_SELECTION_AREA_PROVIDERS, F_SELECTION_FEATURES, F_STORAGE_PROVIDERS, F_ZOOM, F_ZOOM_PROVIDERS, FindClosestInputExecution, FindClosestInputRequest, FitToFlowExecution, FitToFlowRequest, GET_FLOW_STATE_PROVIDERS, GetAllCanBeConnectedInputPositionsExecution, GetAllCanBeConnectedInputPositionsRequest, GetCanBeConnectedOutputByOutletExecution, GetCanBeConnectedOutputByOutletRequest, GetCanBeConnectedOutputByOutletValidator, GetCanBeSelectedItemsExecution, GetCanBeSelectedItemsRequest, GetCanvasExecution, GetCanvasRequest, GetConnectorWithRectExecution, GetConnectorWithRectRequest, GetCurrentSelectionExecution, GetCurrentSelectionRequest, GetDeepChildrenNodesAndGroupsExecution, GetDeepChildrenNodesAndGroupsRequest, GetElementRoundedRectExecution, GetElementRoundedRectRequest, GetFlowExecution, GetFlowHostElementExecution, GetFlowHostElementRequest, GetFlowRequest, GetFlowStateConnectionsExecution, GetFlowStateConnectionsRequest, GetFlowStateExecution, GetFlowStateNodesExecution, GetFlowStateNodesRequest, GetFlowStateRequest, GetInputUnderPointerExecution, GetInputUnderPointerRequest, GetInputUnderPointerValidator, GetNodeMoveRestrictionsExecution, GetNodeMoveRestrictionsRequest, GetNodePaddingExecution, GetNodePaddingRequest, GetNodeResizeRestrictionsExecution, GetNodeResizeRestrictionsRequest, GetNodesExecution, GetNodesRequest, GetNormalizedChildrenNodesRectExecution, GetNormalizedChildrenNodesRectRequest, GetNormalizedElementRectExecution, GetNormalizedElementRectRequest, GetNormalizedParentNodeRectExecution, GetNormalizedParentNodeRectRequest, GetNormalizedPointExecution, GetNormalizedPointRequest, GetParentNodesExecution, GetParentNodesRequest, InitializeDragSequenceExecution, InitializeDragSequenceRequest, InputCanvasPositionExecution, InputCanvasPositionRequest, InputCanvasScaleExecution, InputCanvasScaleRequest, IsArrayHasParentNodeExecution, IsArrayHasParentNodeRequest, IsConnectionUnderNodeExecution, IsConnectionUnderNodeRequest, IsDragStartedExecution, IsDragStartedRequest, LineElement, LineService, ListenCountChangesExecution, ListenCountChangesRequest, ListenDataChangesExecution, ListenDataChangesRequest, ListenTransformChangesExecution, ListenTransformChangesRequest, MINIMAP_DRAG_FINALIZE_PROVIDERS, MINIMAP_DRAG_PREPARATION_PROVIDERS, MinimapCalculateSvgScaleAndViewBoxExecution, MinimapCalculateSvgScaleAndViewBoxRequest, MinimapCalculateViewBoxExecution, MinimapCalculateViewBoxRequest, MinimapDragFinalizeExecution, MinimapDragFinalizeRequest, MinimapDragFinalizeValidator, MinimapDragPreparationExecution, MinimapDragPreparationRequest, MinimapDragPreparationValidator, MinimapDrawNodesExecution, MinimapDrawNodesRequest, MoveFrontElementsBeforeTargetElementExecution, MoveFrontElementsBeforeTargetElementRequest, NODE_DRAG_TO_PARENT_FINALIZE_PROVIDERS, NODE_DRAG_TO_PARENT_PREPARATION_PROVIDERS, NODE_MOVE_PREPARATION_PROVIDERS, NODE_PROVIDERS, NODE_RESIZE_FINALIZE_PROVIDERS, NODE_RESIZE_PREPARATION_PROVIDERS, NODE_RESIZE_PROVIDERS, NodeDragHandler, NodeDragToParentDragHandler, NodeDragToParentFinalizeExecution, NodeDragToParentFinalizeRequest, NodeDragToParentPreparationExecution, NodeDragToParentPreparationRequest, NodeDragToParentPreparationValidator, NodeMoveFinalizeExecution, NodeMoveFinalizeRequest, NodeMovePreparationExecution, NodeMovePreparationRequest, NodeMovePreparationValidator, NodeResizeByChildDragHandler, NodeResizeDragHandler, NodeResizeFinalizeExecution, NodeResizeFinalizeRequest, NodeResizePreparationExecution, NodeResizePreparationRequest, NodeResizePreparationValidator, NotifyDataChangedExecution, NotifyDataChangedRequest, NotifyTransformChangedExecution, NotifyTransformChangedRequest, OnPointerMoveExecution, OnPointerMoveRequest, PrepareDragSequenceExecution, PrepareDragSequenceRequest, PreventDefaultIsExternalItemExecution, PreventDefaultIsExternalItemRequest, PutInputConnectionHandlersToArrayExecution, PutInputConnectionHandlersToArrayRequest, PutOutputConnectionHandlersToArrayExecution, PutOutputConnectionHandlersToArrayRequest, RESIZE_DIRECTIONS, ReassignConnectionDragHandler, ReassignConnectionFinalizeExecution, ReassignConnectionFinalizeRequest, ReassignConnectionPreparationExecution, ReassignConnectionPreparationRequest, ReassignConnectionPreparationValidator, RedrawCanvasWithAnimationExecution, RedrawCanvasWithAnimationRequest, RedrawConnectionsExecution, RedrawConnectionsRequest, RemoveBackgroundFromStoreExecution, RemoveBackgroundFromStoreRequest, RemoveCanvasFromStoreExecution, RemoveCanvasFromStoreRequest, RemoveConnectionForCreateFromStoreExecution, RemoveConnectionForCreateFromStoreRequest, RemoveConnectionFromStoreExecution, RemoveConnectionFromStoreRequest, RemoveConnectionMarkerFromStoreExecution, RemoveConnectionMarkerFromStoreRequest, RemoveDndFromStoreExecution, RemoveDndFromStoreRequest, RemoveFlowFromStoreExecution, RemoveFlowFromStoreRequest, RemoveInputFromStoreExecution, RemoveInputFromStoreRequest, RemoveLineAlignmentFromStoreExecution, RemoveLineAlignmentFromStoreRequest, RemoveNodeFromStoreExecution, RemoveNodeFromStoreRequest, RemoveOutletFromStoreExecution, RemoveOutletFromStoreRequest, RemoveOutputFromStoreExecution, RemoveOutputFromStoreRequest, RemoveSnapConnectionFromStoreExecution, RemoveSnapConnectionFromStoreRequest, ResetScaleAndCenterExecution, ResetScaleAndCenterRequest, ResetScaleExecution, ResetScaleRequest, SELECTION_AREA_FINALIZE_PROVIDERS, SELECTION_AREA_PREPARATION_PROVIDERS, SINGLE_SELECT_PROVIDERS, SelectAllExecution, SelectAllRequest, SelectAndUpdateNodeLayerExecution, SelectAndUpdateNodeLayerRequest, SelectExecution, SelectRequest, SelectionAreaDragHandle, SelectionAreaFinalizeExecution, SelectionAreaFinalizeRequest, SelectionAreaFinalizeValidator, SelectionAreaPreparationExecution, SelectionAreaPreparationRequest, SelectionAreaPreparationValidator, SetBackgroundTransformExecution, SetBackgroundTransformRequest, SingleSelectExecution, SingleSelectRequest, SingleSelectValidator, SortItemLayersExecution, SortItemLayersRequest, SortItemsByParentExecution, SortItemsByParentRequest, SortNodeLayersExecution, SortNodeLayersRequest, StartDragSequenceExecution, StartDragSequenceRequest, UpdateItemAndChildrenLayersExecution, UpdateItemAndChildrenLayersRequest, UpdateNodeWhenStateOrSizeChangedExecution, UpdateNodeWhenStateOrSizeChangedRequest, UpdateScaleExecution, UpdateScaleRequest, createSVGElement, debounceTime, fixedCenterBehavior, fixedOutboundBehavior, floatingBehavior, getExternalItem, getMarkerEndId, getMarkerSelectedEndId, getMarkerSelectedStartId, getMarkerStartId, isExternalItem, isMobile, isNode, isNodeOutlet, isNodeOutput, mixinChangeSelection, mixinChangeVisibility, notifyOnStart, transitionEnd };
|
|
9284
|
+
export { AddBackgroundToStoreExecution, AddBackgroundToStoreRequest, AddCanvasToStoreExecution, AddCanvasToStoreRequest, AddConnectionForCreateToStoreExecution, AddConnectionForCreateToStoreRequest, AddConnectionMarkerToStoreExecution, AddConnectionMarkerToStoreRequest, AddConnectionToStoreExecution, AddConnectionToStoreRequest, AddDndToStoreExecution, AddDndToStoreRequest, AddFlowToStoreExecution, AddFlowToStoreRequest, AddInputToStoreExecution, AddInputToStoreRequest, AddLineAlignmentToStoreExecution, AddLineAlignmentToStoreRequest, AddNodeToStoreExecution, AddNodeToStoreRequest, AddOutletToStoreExecution, AddOutletToStoreRequest, AddOutputToStoreExecution, AddOutputToStoreRequest, AddPatternToBackgroundExecution, AddPatternToBackgroundRequest, AddSnapConnectionToStoreExecution, AddSnapConnectionToStoreRequest, ApplyChildResizeRestrictionsExecution, ApplyChildResizeRestrictionsRequest, ApplyParentResizeRestrictionsExecution, ApplyParentResizeRestrictionsRequest, CANVAS_MOVE_FINALIZE_PROVIDERS, CANVAS_MOVE_PREPARATION_PROVIDERS, CANVAS_PROVIDERS, COMMON_PROVIDERS, CONNECTIONS_PROVIDERS, CONNECTION_GRADIENT, CONNECTION_PATH, CONNECTION_TEXT, CREATE_MOVE_NODE_DRAG_MODEL_FROM_SELECTION_PROVIDERS, CalculateCenterBetweenPointsHandler, CalculateCenterBetweenPointsRequest, CalculateChangedPositionExecution, CalculateChangedPositionRequest, CalculateChangedSizeExecution, CalculateChangedSizeRequest, CalculateCommonNodeMoveRestrictionsExecution, CalculateCommonNodeMoveRestrictionsRequest, CalculateConnectionCenterHandler, CalculateConnectionCenterRequest, CalculateConnectionLineByBehaviorExecution, CalculateConnectionLineByBehaviorRequest, CalculateConnectorConnectableSideHandler, CalculateConnectorConnectableSideRequest, CalculateFlowPointFromMinimapPointExecution, CalculateFlowPointFromMinimapPointRequest, CalculateNodeMoveRestrictionsExecution, CalculateNodeMoveRestrictionsRequest, CalculateNodesBoundingBoxExecution, CalculateNodesBoundingBoxNormalizedPositionExecution, CalculateNodesBoundingBoxNormalizedPositionRequest, CalculateNodesBoundingBoxRequest, CanvasDragHandler, CanvasMoveFinalizeExecution, CanvasMoveFinalizeRequest, CanvasMovePreparationExecution, CanvasMovePreparationRequest, CanvasMovePreparationValidator, CenterGroupOrNodeExecution, CenterGroupOrNodeRequest, ClearSelectionExecution, ClearSelectionRequest, ConnectionBaseDragHandler, ConnectionDragHandler, ConnectionSourceDragHandler, ConnectionTargetDragHandler, CreateConnectionDragHandler, CreateConnectionDragHandlerExecution, CreateConnectionDragHandlerRequest, CreateConnectionFinalizeExecution, CreateConnectionFinalizeRequest, CreateConnectionFromOutletPreparationExecution, CreateConnectionFromOutletPreparationRequest, CreateConnectionFromOutputPreparationExecution, CreateConnectionFromOutputPreparationRequest, CreateConnectionFromOutputPreparationValidator, CreateConnectionMarkersExecution, CreateConnectionMarkersRequest, CreateConnectionPreparationExecution, CreateConnectionPreparationRequest, CreateMoveNodesDragModelFromSelectionExecution, CreateMoveNodesDragModelFromSelectionRequest, DRAG_AND_DROP_COMMON_PROVIDERS, EFConnectableSide, EFConnectionBehavior, EFConnectionType, EFMarkerType, EFResizeHandleType, EXTERNAL_ITEM_FINALIZE_PROVIDERS, EXTERNAL_ITEM_PREPARATION_PROVIDERS, EmitSelectionChangeEventExecution, EmitSelectionChangeEventRequest, EndDragSequenceExecution, EndDragSequenceRequest, ExternalItemDragHandler, ExternalItemFinalizeExecution, ExternalItemFinalizeRequest, ExternalItemPreparationExecution, ExternalItemPreparationRequest, ExternalItemPreparationValidator, FBackgroundBase, FBackgroundComponent, FBezierPathBuilder, FCanvasBase, FCanvasChangeEvent, FCanvasComponent, FChannel, FChannelHub, FCirclePatternComponent, FComponentsStore, FConnectionBase, FConnectionCenterDirective, FConnectionComponent, FConnectionDragHandleComponent, FConnectionFactory, FConnectionForCreateComponent, FConnectionGradientComponent, FConnectionPathComponent, FConnectionSelectionComponent, FConnectionTextComponent, FConnectionTextPathDirective, FConnectorBase, FCreateConnectionEvent, FCreateNodeEvent, FDragHandleDirective, FDraggableBase, FDraggableDataContext, FDraggableDirective, FDropToGroupEvent, FExternalItemBase, FExternalItemDirective, FExternalItemService, FFlowBase, FFlowComponent, FFlowModule, FGroupDirective, FLineAlignmentBase, FLineAlignmentComponent, FMarkerBase, FMarkerDirective, FMinimapCanvasDirective, FMinimapComponent, FMinimapData, FMinimapDragHandler, FMinimapFlowDirective, FMinimapViewDirective, FNodeBase, FNodeDirective, FNodeInputBase, FNodeInputDirective, FNodeIntersectedWithConnections, FNodeOutletBase, FNodeOutletDirective, FNodeOutputBase, FNodeOutputDirective, FReassignConnectionEvent, FRectPatternComponent, FResizeChannel, FResizeHandleDirective, FRotateHandleDirective, FSegmentPathBuilder, FSelectionAreaBase, FSelectionAreaComponent, FSelectionChangeEvent, FSnapConnectionComponent, FStraightPathBuilder, FZoomBase, FZoomDirective, F_BACKGROUND, F_BACKGROUND_FEATURES, F_BACKGROUND_PATTERN, F_BACKGROUND_PROVIDERS, F_CANVAS, F_CANVAS_FEATURES, F_CANVAS_PROVIDERS, F_CONNECTION_BUILDERS, F_CONNECTION_DRAG_HANDLE_CLASS, F_CONNECTION_FEATURES, F_CONNECTION_IDENTIFIERS, F_CONNECTION_PROVIDERS, F_CONNECTORS_FEATURES, F_CONNECTORS_PROVIDERS, F_DRAGGABLE_FEATURES, F_DRAGGABLE_PROVIDERS, F_DRAG_AND_DROP_PLUGIN, F_DRAG_HANDLE, F_EXTERNAL_ITEM, F_EXTERNAL_ITEM_DRAG_AND_DROP_PROVIDERS, F_EXTERNAL_ITEM_PROVIDERS, F_FLOW, F_FLOW_FEATURES, F_FLOW_PROVIDERS, F_LINE_ALIGNMENT, F_LINE_ALIGNMENT_FEATURES, F_LINE_ALIGNMENT_PROVIDERS, F_MARKER, F_MINIMAP_DRAG_AND_DROP_PROVIDERS, F_MINIMAP_PROVIDERS, F_NODE, F_NODE_FEATURES, F_NODE_INPUT, F_NODE_OUTLET, F_NODE_OUTPUT, F_NODE_PROVIDERS, F_RESIZE_HANDLE, F_SELECTED_CLASS, F_SELECTION_AREA_DRAG_AND_DROP_PROVIDERS, F_SELECTION_AREA_PROVIDERS, F_SELECTION_FEATURES, F_STORAGE_PROVIDERS, F_ZOOM, F_ZOOM_PROVIDERS, FindClosestInputExecution, FindClosestInputRequest, FitToFlowExecution, FitToFlowRequest, GET_FLOW_STATE_PROVIDERS, GetAllCanBeConnectedInputPositionsExecution, GetAllCanBeConnectedInputPositionsRequest, GetCanBeConnectedOutputByOutletExecution, GetCanBeConnectedOutputByOutletRequest, GetCanBeConnectedOutputByOutletValidator, GetCanBeSelectedItemsExecution, GetCanBeSelectedItemsRequest, GetCanvasExecution, GetCanvasRequest, GetConnectorWithRectExecution, GetConnectorWithRectRequest, GetCurrentSelectionExecution, GetCurrentSelectionRequest, GetDeepChildrenNodesAndGroupsExecution, GetDeepChildrenNodesAndGroupsRequest, GetElementRoundedRectExecution, GetElementRoundedRectRequest, GetFlowExecution, GetFlowHostElementExecution, GetFlowHostElementRequest, GetFlowRequest, GetFlowStateConnectionsExecution, GetFlowStateConnectionsRequest, GetFlowStateExecution, GetFlowStateNodesExecution, GetFlowStateNodesRequest, GetFlowStateRequest, GetInputUnderPointerExecution, GetInputUnderPointerRequest, GetInputUnderPointerValidator, GetNodePaddingExecution, GetNodePaddingRequest, GetNodeResizeRestrictionsExecution, GetNodeResizeRestrictionsRequest, GetNodesExecution, GetNodesRequest, GetNormalizedChildrenNodesRectExecution, GetNormalizedChildrenNodesRectRequest, GetNormalizedElementRectExecution, GetNormalizedElementRectRequest, GetNormalizedParentNodeRectExecution, GetNormalizedParentNodeRectRequest, GetNormalizedPointExecution, GetNormalizedPointRequest, GetParentNodesExecution, GetParentNodesRequest, InitializeDragSequenceExecution, InitializeDragSequenceRequest, InputCanvasPositionExecution, InputCanvasPositionRequest, InputCanvasScaleExecution, InputCanvasScaleRequest, IsArrayHasParentNodeExecution, IsArrayHasParentNodeRequest, IsConnectionUnderNodeExecution, IsConnectionUnderNodeRequest, IsDragStartedExecution, IsDragStartedRequest, LineAlignmentDragHandler, LineAlignmentPreparationExecution, LineAlignmentPreparationRequest, LineElement, LineService, ListenCountChangesExecution, ListenCountChangesRequest, ListenDataChangesExecution, ListenDataChangesRequest, ListenTransformChangesExecution, ListenTransformChangesRequest, LogExecutionTime, MINIMAP_DRAG_FINALIZE_PROVIDERS, MINIMAP_DRAG_PREPARATION_PROVIDERS, MinimapCalculateSvgScaleAndViewBoxExecution, MinimapCalculateSvgScaleAndViewBoxRequest, MinimapCalculateViewBoxExecution, MinimapCalculateViewBoxRequest, MinimapDragFinalizeExecution, MinimapDragFinalizeRequest, MinimapDragFinalizeValidator, MinimapDragPreparationExecution, MinimapDragPreparationRequest, MinimapDragPreparationValidator, MinimapDrawNodesExecution, MinimapDrawNodesRequest, MoveFrontElementsBeforeTargetElementExecution, MoveFrontElementsBeforeTargetElementRequest, NODE_DRAG_TO_PARENT_FINALIZE_PROVIDERS, NODE_DRAG_TO_PARENT_PREPARATION_PROVIDERS, NODE_MOVE_PREPARATION_PROVIDERS, NODE_PROVIDERS, NODE_RESIZE_FINALIZE_PROVIDERS, NODE_RESIZE_PREPARATION_PROVIDERS, NODE_RESIZE_PROVIDERS, NodeDragHandler, NodeDragToParentDragHandler, NodeDragToParentFinalizeExecution, NodeDragToParentFinalizeRequest, NodeDragToParentPreparationExecution, NodeDragToParentPreparationRequest, NodeDragToParentPreparationValidator, NodeMoveFinalizeExecution, NodeMoveFinalizeRequest, NodeMovePreparationExecution, NodeMovePreparationRequest, NodeResizeByChildDragHandler, NodeResizeDragHandler, NodeResizeFinalizeExecution, NodeResizeFinalizeRequest, NodeResizePreparationExecution, NodeResizePreparationRequest, NodeResizePreparationValidator, NotifyDataChangedExecution, NotifyDataChangedRequest, NotifyTransformChangedExecution, NotifyTransformChangedRequest, OnPointerMoveExecution, OnPointerMoveRequest, PrepareDragSequenceExecution, PrepareDragSequenceRequest, PreventDefaultIsExternalItemExecution, PreventDefaultIsExternalItemRequest, PutInputConnectionHandlersToArrayExecution, PutInputConnectionHandlersToArrayRequest, PutOutputConnectionHandlersToArrayExecution, PutOutputConnectionHandlersToArrayRequest, RESIZE_DIRECTIONS, ReassignConnectionDragHandler, ReassignConnectionFinalizeExecution, ReassignConnectionFinalizeRequest, ReassignConnectionPreparationExecution, ReassignConnectionPreparationRequest, RedrawCanvasWithAnimationExecution, RedrawCanvasWithAnimationRequest, RedrawConnectionsExecution, RedrawConnectionsRequest, RemoveBackgroundFromStoreExecution, RemoveBackgroundFromStoreRequest, RemoveCanvasFromStoreExecution, RemoveCanvasFromStoreRequest, RemoveConnectionForCreateFromStoreExecution, RemoveConnectionForCreateFromStoreRequest, RemoveConnectionFromStoreExecution, RemoveConnectionFromStoreRequest, RemoveConnectionMarkerFromStoreExecution, RemoveConnectionMarkerFromStoreRequest, RemoveDndFromStoreExecution, RemoveDndFromStoreRequest, RemoveFlowFromStoreExecution, RemoveFlowFromStoreRequest, RemoveInputFromStoreExecution, RemoveInputFromStoreRequest, RemoveLineAlignmentFromStoreExecution, RemoveLineAlignmentFromStoreRequest, RemoveNodeFromStoreExecution, RemoveNodeFromStoreRequest, RemoveOutletFromStoreExecution, RemoveOutletFromStoreRequest, RemoveOutputFromStoreExecution, RemoveOutputFromStoreRequest, RemoveSnapConnectionFromStoreExecution, RemoveSnapConnectionFromStoreRequest, ResetScaleAndCenterExecution, ResetScaleAndCenterRequest, ResetScaleExecution, ResetScaleRequest, SELECTION_AREA_FINALIZE_PROVIDERS, SELECTION_AREA_PREPARATION_PROVIDERS, SINGLE_SELECT_PROVIDERS, SelectAllExecution, SelectAllRequest, SelectAndUpdateNodeLayerExecution, SelectAndUpdateNodeLayerRequest, SelectExecution, SelectRequest, SelectionAreaDragHandle, SelectionAreaFinalizeExecution, SelectionAreaFinalizeRequest, SelectionAreaFinalizeValidator, SelectionAreaPreparationExecution, SelectionAreaPreparationRequest, SelectionAreaPreparationValidator, SetBackgroundTransformExecution, SetBackgroundTransformRequest, SingleSelectExecution, SingleSelectRequest, SortItemLayersExecution, SortItemLayersRequest, SortItemsByParentExecution, SortItemsByParentRequest, SortNodeLayersExecution, SortNodeLayersRequest, StartDragSequenceExecution, StartDragSequenceRequest, UpdateItemAndChildrenLayersExecution, UpdateItemAndChildrenLayersRequest, UpdateNodeWhenStateOrSizeChangedExecution, UpdateNodeWhenStateOrSizeChangedRequest, UpdateScaleExecution, UpdateScaleRequest, createSVGElement, debounceTime, fixedCenterBehavior, fixedOutboundBehavior, floatingBehavior, getExternalItem, getMarkerEndId, getMarkerSelectedEndId, getMarkerSelectedStartId, getMarkerStartId, isExternalItem, isMobile, isNode, isNodeOutlet, isNodeOutput, mixinChangeSelection, mixinChangeVisibility, notifyOnStart, transitionEnd };
|
|
9255
9285
|
//# sourceMappingURL=foblex-flow.mjs.map
|