@foblex/flow 17.8.5 → 17.8.7
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/drag-rect-cache.d.ts +8 -0
- package/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior-request.d.ts +7 -7
- package/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior.d.ts +37 -3
- package/domain/f-connection/calculate-connection-line-by-behavior/index.d.ts +4 -3
- package/domain/f-connection/calculate-connection-line-by-behavior/models/calculate-behavior-request.d.ts +8 -0
- package/domain/f-connection/calculate-connection-line-by-behavior/{fixed-center-behavior.d.ts → utils/fixed-center-behavior.d.ts} +2 -2
- package/domain/f-connection/calculate-connection-line-by-behavior/{fixed-outbound-behavior.d.ts → utils/fixed-outbound-behavior.d.ts} +2 -2
- package/domain/f-connection/calculate-connection-line-by-behavior/{floating-behavior.d.ts → utils/floating-behavior.d.ts} +2 -2
- package/domain/f-connection/providers.d.ts +2 -2
- package/domain/f-connection/redraw-connections/index.d.ts +1 -1
- package/domain/f-connection/redraw-connections/{redraw-connections.execution.d.ts → redraw-connections.d.ts} +3 -3
- package/domain/f-draggable/emit-selection-change-event/emit-selection-change-event.execution.d.ts +1 -1
- package/domain/f-flow/providers.d.ts +1 -1
- package/domain/f-line-alignment/add-line-alignment-to-store/add-line-alignment-to-store-request.d.ts +2 -2
- package/domain/f-line-alignment/add-line-alignment-to-store/{add-line-alignment-to-store.execution.d.ts → add-line-alignment-to-store.d.ts} +4 -4
- package/domain/f-line-alignment/add-line-alignment-to-store/index.d.ts +1 -1
- package/domain/f-line-alignment/providers.d.ts +3 -3
- package/domain/f-line-alignment/remove-line-alignment-from-store/index.d.ts +1 -1
- package/domain/f-line-alignment/remove-line-alignment-from-store/{remove-line-alignment-from-store.execution.d.ts → remove-line-alignment-from-store.d.ts} +4 -4
- package/domain/f-node/get-parent-nodes/get-parent-nodes.d.ts +1 -1
- package/domain/f-node/get-parent-nodes/get-parent-nodes.request.d.ts +2 -2
- package/domain/f-node/remove-node-from-store/remove-node-from-store-request.d.ts +2 -2
- package/domain/f-node/remove-node-from-store/remove-node-from-store.d.ts +1 -1
- package/domain/f-zoom/providers.d.ts +1 -1
- package/domain/index.d.ts +1 -0
- package/domain/providers.d.ts +4 -3
- package/domain/update-item-and-children-layers/move-front-elements-before-target-element/index.d.ts +2 -2
- package/domain/update-item-and-children-layers/move-front-elements-before-target-element/{move-front-elements-before-target-element.request.d.ts → move-front-elements-before-target-element-request.d.ts} +4 -4
- package/domain/update-item-and-children-layers/move-front-elements-before-target-element/{move-front-elements-before-target-element.execution.d.ts → move-front-elements-before-target-element.d.ts} +4 -4
- package/esm2022/domain/drag-rect-cache.mjs +19 -0
- package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior-request.mjs +4 -4
- package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior.mjs +126 -13
- package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/index.mjs +5 -4
- package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/models/calculate-behavior-request.mjs +2 -0
- package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/utils/fixed-center-behavior.mjs +12 -0
- package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/utils/fixed-outbound-behavior.mjs +31 -0
- package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/utils/floating-behavior.mjs +22 -0
- package/esm2022/domain/f-connection/providers.mjs +3 -3
- package/esm2022/domain/f-connection/redraw-connections/index.mjs +2 -2
- package/esm2022/domain/f-connection/redraw-connections/redraw-connections.mjs +75 -0
- package/esm2022/domain/f-draggable/emit-selection-change-event/emit-selection-change-event-request.mjs +1 -1
- package/esm2022/domain/f-draggable/emit-selection-change-event/emit-selection-change-event.execution.mjs +2 -2
- package/esm2022/domain/f-line-alignment/add-line-alignment-to-store/add-line-alignment-to-store-request.mjs +4 -4
- package/esm2022/domain/f-line-alignment/add-line-alignment-to-store/add-line-alignment-to-store.mjs +25 -0
- package/esm2022/domain/f-line-alignment/add-line-alignment-to-store/index.mjs +2 -2
- package/esm2022/domain/f-line-alignment/providers.mjs +4 -7
- package/esm2022/domain/f-line-alignment/remove-line-alignment-from-store/index.mjs +2 -2
- package/esm2022/domain/f-line-alignment/remove-line-alignment-from-store/remove-line-alignment-from-store.mjs +25 -0
- package/esm2022/domain/f-node/calculate-nodes-bounding-box-normalized-position/calculate-nodes-bounding-box-normalized-position.mjs +1 -1
- package/esm2022/domain/f-node/fit-to-child-nodes-and-groups/fit-to-child-nodes-and-groups-request.mjs +1 -1
- package/esm2022/domain/f-node/get-parent-nodes/get-parent-nodes.mjs +8 -8
- package/esm2022/domain/f-node/get-parent-nodes/get-parent-nodes.request.mjs +4 -4
- package/esm2022/domain/f-node/remove-node-from-store/remove-node-from-store-request.mjs +4 -4
- package/esm2022/domain/f-node/remove-node-from-store/remove-node-from-store.mjs +3 -3
- package/esm2022/domain/index.mjs +2 -1
- package/esm2022/domain/providers.mjs +5 -5
- package/esm2022/domain/update-item-and-children-layers/move-front-elements-before-target-element/index.mjs +3 -3
- package/esm2022/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element-request.mjs +15 -0
- package/esm2022/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element.mjs +34 -0
- package/esm2022/f-canvas/f-canvas.component.mjs +2 -2
- package/esm2022/f-connection/common/domain/adaptive-curve-builder.mjs +201 -0
- package/esm2022/f-connection/common/domain/index.mjs +2 -1
- package/esm2022/f-connection/common/e-f-connection-connectable-side.mjs +12 -0
- package/esm2022/f-connection/common/e-f-connection-type.mjs +2 -1
- package/esm2022/f-connection/common/f-connection-base.mjs +28 -5
- package/esm2022/f-connection/common/index.mjs +2 -1
- package/esm2022/f-connection/f-connection/f-connection.component.mjs +13 -3
- package/esm2022/f-connection/f-connection-builder/f-connection-factory.mjs +9 -17
- package/esm2022/f-connection/f-connection-content/f-connection-content.mjs +10 -4
- package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-content-layout-engine.mjs +4 -5
- package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-content-place.mjs +3 -2
- package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +14 -4
- package/esm2022/f-connection/f-snap-connection/f-snap-connection.component.mjs +14 -4
- package/esm2022/f-draggable/f-connection/f-create-connection/f-create-connection.drag-handler.mjs +5 -5
- package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-source.drag-handler.mjs +5 -5
- package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-target.drag-handler.mjs +5 -5
- package/esm2022/f-draggable/f-draggable.directive.mjs +3 -2
- package/esm2022/f-draggable/f-node-move/connection-drag-handlers/base-connection.drag-handler.mjs +3 -3
- package/esm2022/f-draggable/f-node-move/move-preparation/f-node-move-preparation.execution.mjs +1 -1
- package/esm2022/f-flow/f-flow.component.mjs +2 -2
- package/esm2022/f-node/f-group.directive.mjs +1 -7
- package/esm2022/f-node/f-node.directive.mjs +1 -7
- package/f-connection/common/domain/adaptive-curve-builder.d.ts +102 -0
- package/f-connection/common/domain/index.d.ts +1 -0
- package/f-connection/common/e-f-connection-connectable-side.d.ts +10 -0
- package/f-connection/common/e-f-connection-type.d.ts +2 -1
- package/f-connection/common/f-connection-base.d.ts +14 -2
- package/f-connection/common/index.d.ts +1 -0
- package/f-connection/f-connection/f-connection.component.d.ts +4 -2
- package/f-connection/f-connection-builder/f-connection-factory.d.ts +2 -4
- package/f-connection/f-connection-content/f-connection-content.d.ts +2 -2
- package/f-connection/f-connection-for-create/f-connection-for-create.component.d.ts +4 -2
- package/f-connection/f-snap-connection/f-snap-connection.component.d.ts +4 -2
- package/f-connection/providers.d.ts +1 -1
- package/f-connectors/providers.d.ts +1 -1
- package/f-draggable/f-connection/providers.d.ts +1 -1
- package/f-draggable/f-drop-to-group/providers.d.ts +1 -1
- package/f-draggable/f-node-move/create-drag-model-from-selection/providers.d.ts +1 -1
- package/f-draggable/f-node-move/providers.d.ts +1 -1
- package/f-draggable/providers.d.ts +1 -1
- package/f-minimap/domain/providers.d.ts +1 -1
- package/f-minimap/providers.d.ts +1 -1
- package/f-selection-area/domain/providers.d.ts +1 -1
- package/f-storage/providers.d.ts +1 -1
- package/fesm2022/foblex-flow.mjs +504 -127
- package/fesm2022/foblex-flow.mjs.map +1 -1
- package/package.json +1 -1
- package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/fixed-center-behavior.mjs +0 -12
- package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/fixed-outbound-behavior.mjs +0 -31
- package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/floating-behavior.mjs +0 -22
- package/esm2022/domain/f-connection/redraw-connections/redraw-connections.execution.mjs +0 -73
- package/esm2022/domain/f-line-alignment/add-line-alignment-to-store/add-line-alignment-to-store.execution.mjs +0 -25
- package/esm2022/domain/f-line-alignment/remove-line-alignment-from-store/remove-line-alignment-from-store.execution.mjs +0 -25
- package/esm2022/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element.execution.mjs +0 -34
- package/esm2022/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element.request.mjs +0 -15
package/fesm2022/foblex-flow.mjs
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { InjectionToken, inject, Injectable, Directive, input, computed, signal, Injector, Renderer2, effect, untracked, DestroyRef, model, output, booleanAttribute, ElementRef, Input, viewChild, Component, ChangeDetectionStrategy,
|
|
2
|
+
import { InjectionToken, inject, Injectable, Directive, input, computed, signal, Injector, Renderer2, effect, untracked, DestroyRef, model, output, booleanAttribute, ElementRef, Input, viewChild, Component, ChangeDetectionStrategy, isDevMode, contentChildren, numberAttribute, ViewContainerRef, TemplateRef, EventEmitter, NgZone, Output, ContentChildren, contentChild, NgModule } from '@angular/core';
|
|
3
3
|
import { RectExtensions, RoundedRect, TransformModelExtensions, PointExtensions, Point, LineExtensions, GetIntersections, SizeExtensions, findClosestAlignment, setRectToElement, adjustRectToMinSize, setRectToViewBox } from '@foblex/2d';
|
|
4
4
|
import { __decorate } from 'tslib';
|
|
5
5
|
import { FExecutionRegister, FMediator } from '@foblex/mediator';
|
|
6
6
|
import { BrowserService, PlatformService, EOperationSystem } from '@foblex/platform';
|
|
7
7
|
import { normalizeDomElementId, castToEnum, isClosestElementHasClass, flatMap, getOrCreateRootNodeForViewRef, deepCloneNode, disableDragInteractions, extendStyles, getDataAttrValueFromClosestElementWithClass } from '@foblex/utils';
|
|
8
|
+
import { coerceNumberProperty } from '@angular/cdk/coercion';
|
|
8
9
|
import { CommonModule } from '@angular/common';
|
|
9
10
|
|
|
10
11
|
const F_BACKGROUND_PATTERN = new InjectionToken('F_BACKGROUND_PATTERN');
|
|
@@ -1023,14 +1024,14 @@ function createSVGElement$1(tag, fBrowser) {
|
|
|
1023
1024
|
class CalculateConnectionLineByBehaviorRequest {
|
|
1024
1025
|
sourceRect;
|
|
1025
1026
|
targetRect;
|
|
1026
|
-
|
|
1027
|
+
connection;
|
|
1027
1028
|
sourceConnectableSide;
|
|
1028
1029
|
targetConnectableSide;
|
|
1029
1030
|
static fToken = Symbol('CalculateConnectionLineByBehaviorRequest');
|
|
1030
|
-
constructor(sourceRect, targetRect,
|
|
1031
|
+
constructor(sourceRect, targetRect, connection, sourceConnectableSide, targetConnectableSide) {
|
|
1031
1032
|
this.sourceRect = sourceRect;
|
|
1032
1033
|
this.targetRect = targetRect;
|
|
1033
|
-
this.
|
|
1034
|
+
this.connection = connection;
|
|
1034
1035
|
this.sourceConnectableSide = sourceConnectableSide;
|
|
1035
1036
|
this.targetConnectableSide = targetConnectableSide;
|
|
1036
1037
|
}
|
|
@@ -1411,12 +1412,6 @@ class FGroupDirective extends FNodeBase {
|
|
|
1411
1412
|
super.parentChanges();
|
|
1412
1413
|
}
|
|
1413
1414
|
ngOnInit() {
|
|
1414
|
-
this.setStyle('position', 'absolute');
|
|
1415
|
-
this.setStyle('transform-origin', 'center');
|
|
1416
|
-
this.setStyle('user-select', 'none');
|
|
1417
|
-
this.setStyle('pointer-events', 'all');
|
|
1418
|
-
this.setStyle('left', '0');
|
|
1419
|
-
this.setStyle('top', '0');
|
|
1420
1415
|
super.redraw();
|
|
1421
1416
|
this._mediator.execute(new AddNodeToStoreRequest(this));
|
|
1422
1417
|
}
|
|
@@ -1538,12 +1533,6 @@ class FNodeDirective extends FNodeBase {
|
|
|
1538
1533
|
super.parentChanges();
|
|
1539
1534
|
}
|
|
1540
1535
|
ngOnInit() {
|
|
1541
|
-
this.setStyle('position', 'absolute');
|
|
1542
|
-
this.setStyle('transform-origin', 'center');
|
|
1543
|
-
this.setStyle('user-select', 'none');
|
|
1544
|
-
this.setStyle('pointer-events', 'all');
|
|
1545
|
-
this.setStyle('left', '0');
|
|
1546
|
-
this.setStyle('top', '0');
|
|
1547
1536
|
super.redraw();
|
|
1548
1537
|
this._mediator.execute(new AddNodeToStoreRequest(this));
|
|
1549
1538
|
}
|
|
@@ -1869,6 +1858,205 @@ const F_CONNECTORS_PROVIDERS = [
|
|
|
1869
1858
|
FNodeOutputDirective,
|
|
1870
1859
|
];
|
|
1871
1860
|
|
|
1861
|
+
/**
|
|
1862
|
+
* AdaptiveCurveBuilder
|
|
1863
|
+
*
|
|
1864
|
+
* Builds a smooth **adaptive connector curve** between two points using a cubic Bézier path,
|
|
1865
|
+
* but with control points computed differently from a classic “Bezier” connector.
|
|
1866
|
+
*
|
|
1867
|
+
* Key differences from a classic Bézier builder:
|
|
1868
|
+
* - Control handles are **aligned with the port side** (LEFT/RIGHT/TOP/BOTTOM),
|
|
1869
|
+
* yet are **slightly blended toward the target direction** to reduce harsh S-shapes.
|
|
1870
|
+
* - Handle lengths are **adaptive**: based on the `offset` (your “padding” from ports)
|
|
1871
|
+
* and the projected distance along the side’s axis. This produces a subtler curvature
|
|
1872
|
+
* and a distinct look & feel compared to a standard Bézier connector.
|
|
1873
|
+
*
|
|
1874
|
+
* Compatibility:
|
|
1875
|
+
* - Implements {@link IFConnectionBuilder}; output shape is the same:
|
|
1876
|
+
* SVG path, sampled points for hit-testing, and connection center.
|
|
1877
|
+
* - Only the four base sides are expected to be passed here:
|
|
1878
|
+
* {@link EFConnectableSide.LEFT}, {@link EFConnectableSide.RIGHT},
|
|
1879
|
+
* {@link EFConnectableSide.TOP}, {@link EFConnectableSide.BOTTOM}.
|
|
1880
|
+
*
|
|
1881
|
+
* Usage example:
|
|
1882
|
+
* ```ts
|
|
1883
|
+
* const builder = new AdaptiveCurveBuilder();
|
|
1884
|
+
* const res = builder.handle({
|
|
1885
|
+
* source: { x: 100, y: 120 },
|
|
1886
|
+
* sourceSide: EFConnectableSide.RIGHT,
|
|
1887
|
+
* target: { x: 340, y: 220 },
|
|
1888
|
+
* targetSide: EFConnectableSide.LEFT,
|
|
1889
|
+
* offset: 16, // acts as padding + minimal handle baseline
|
|
1890
|
+
* });
|
|
1891
|
+
* // res.path -> SVG "M … C …" string
|
|
1892
|
+
* // res.points -> sampled points along the curve
|
|
1893
|
+
* ```
|
|
1894
|
+
*/
|
|
1895
|
+
class AdaptiveCurveBuilder {
|
|
1896
|
+
/**
|
|
1897
|
+
* Returns a unit direction vector for a given side.
|
|
1898
|
+
*
|
|
1899
|
+
* @param side - One of LEFT/RIGHT/TOP/BOTTOM.
|
|
1900
|
+
* @returns Unit vector pointing outwards from the side.
|
|
1901
|
+
* @remarks
|
|
1902
|
+
* Only base sides should reach this builder. A fallback `{0,0}` is returned
|
|
1903
|
+
* defensively, but should not occur in normal usage.
|
|
1904
|
+
*/
|
|
1905
|
+
static _dir(side) {
|
|
1906
|
+
switch (side) {
|
|
1907
|
+
case EFConnectableSide.LEFT:
|
|
1908
|
+
return { x: -1, y: 0 };
|
|
1909
|
+
case EFConnectableSide.RIGHT:
|
|
1910
|
+
return { x: 1, y: 0 };
|
|
1911
|
+
case EFConnectableSide.TOP:
|
|
1912
|
+
return { x: 0, y: -1 };
|
|
1913
|
+
case EFConnectableSide.BOTTOM:
|
|
1914
|
+
return { x: 0, y: 1 };
|
|
1915
|
+
}
|
|
1916
|
+
return { x: 0, y: 0 };
|
|
1917
|
+
}
|
|
1918
|
+
/**
|
|
1919
|
+
* Checks whether a side is horizontal (LEFT/RIGHT).
|
|
1920
|
+
*
|
|
1921
|
+
* @param side - Side to check.
|
|
1922
|
+
* @returns `true` for LEFT/RIGHT, otherwise `false`.
|
|
1923
|
+
*/
|
|
1924
|
+
static _isH(side) {
|
|
1925
|
+
return side === EFConnectableSide.LEFT || side === EFConnectableSide.RIGHT;
|
|
1926
|
+
}
|
|
1927
|
+
/**
|
|
1928
|
+
* Computes a **soft** handle length for a control point.
|
|
1929
|
+
*
|
|
1930
|
+
* The handle length is derived from:
|
|
1931
|
+
* - `offset` (acts as padding & the baseline handle),
|
|
1932
|
+
* - distance projected along the side’s axis (dx for horizontal, dy for vertical),
|
|
1933
|
+
* - a conservative upper bound to avoid bloated curves.
|
|
1934
|
+
*
|
|
1935
|
+
* @param p0 - Start (or end) point of the segment.
|
|
1936
|
+
* @param p3 - Opposite end (or start) point.
|
|
1937
|
+
* @param side - Side at which the handle originates.
|
|
1938
|
+
* @param offset - Visual padding/minimal handle baseline (must be ≥ 0).
|
|
1939
|
+
* @returns A bounded positive handle length.
|
|
1940
|
+
*/
|
|
1941
|
+
static _handleLen(p0, p3, side, offset) {
|
|
1942
|
+
const dx = Math.abs(p3.x - p0.x);
|
|
1943
|
+
const dy = Math.abs(p3.y - p0.y);
|
|
1944
|
+
const d = Math.hypot(dx, dy);
|
|
1945
|
+
const along = this._isH(side) ? dx : dy;
|
|
1946
|
+
const MIN = Math.max(8, offset);
|
|
1947
|
+
const MAX = offset + 0.5 * d; // upper cap to keep the shape compact
|
|
1948
|
+
const len = offset * 1.05 + along * 0.3; // moderate growth along the axis
|
|
1949
|
+
return Math.min(MAX, Math.max(MIN, len));
|
|
1950
|
+
}
|
|
1951
|
+
/**
|
|
1952
|
+
* Computes a control point by taking the side direction and **lightly blending**
|
|
1953
|
+
* it toward the target direction. This reduces harsh inflections while keeping
|
|
1954
|
+
* the perceptual attachment to the port side.
|
|
1955
|
+
*
|
|
1956
|
+
* @param side - Base side defining the primary direction (LEFT/RIGHT/TOP/BOTTOM).
|
|
1957
|
+
* @param source - Anchor point where the control handle is attached.
|
|
1958
|
+
* @param target - Opposite end; used to orient the handle slightly toward the goal.
|
|
1959
|
+
* @param handle - Handle length (see {@link _handleLen}).
|
|
1960
|
+
* @returns Control point coordinates for the cubic Bézier segment.
|
|
1961
|
+
*/
|
|
1962
|
+
static _softControl(side, source, target, handle) {
|
|
1963
|
+
const v = this._dir(side);
|
|
1964
|
+
const dx = target.x - source.x;
|
|
1965
|
+
const dy = target.y - source.y;
|
|
1966
|
+
const dist = Math.hypot(dx, dy) || 1;
|
|
1967
|
+
const tx = dx / dist;
|
|
1968
|
+
const ty = dy / dist;
|
|
1969
|
+
// Orientation of side vs. target direction (in [-1, 1])
|
|
1970
|
+
const dot = v.x * tx + v.y * ty;
|
|
1971
|
+
// Small base blend toward the target; slightly increase if the side points away.
|
|
1972
|
+
const baseBlend = 0.12;
|
|
1973
|
+
const extra = Math.max(0, -dot) * 0.08; // add a bit when pointing “backwards”
|
|
1974
|
+
const blend = Math.min(0.2, baseBlend + extra);
|
|
1975
|
+
const dirX = v.x * (1 - blend) + tx * blend;
|
|
1976
|
+
const dirY = v.y * (1 - blend) + ty * blend;
|
|
1977
|
+
const len = Math.hypot(dirX, dirY) || 1;
|
|
1978
|
+
return { x: source.x + (dirX / len) * handle, y: source.y + (dirY / len) * handle };
|
|
1979
|
+
}
|
|
1980
|
+
/**
|
|
1981
|
+
* Builds an adaptive connector between `source` and `target`.
|
|
1982
|
+
*
|
|
1983
|
+
* @param request - Connection build request.
|
|
1984
|
+
* @param request.source - Start point of the connector.
|
|
1985
|
+
* @param request.sourceSide - Side at the source port (LEFT/RIGHT/TOP/BOTTOM).
|
|
1986
|
+
* @param request.target - End point of the connector.
|
|
1987
|
+
* @param request.targetSide - Side at the target port (LEFT/RIGHT/TOP/BOTTOM).
|
|
1988
|
+
* @param request.offset - Visual padding & minimal handle baseline (≥ 0).
|
|
1989
|
+
*
|
|
1990
|
+
* @returns Standard {@link IFConnectionBuilderResponse}:
|
|
1991
|
+
* - `path`: SVG cubic path (“M … C …”),
|
|
1992
|
+
* - `points`: discretized samples along the curve,
|
|
1993
|
+
* - `connectionCenter`: approximate visual center for labeling/interaction,
|
|
1994
|
+
* - `secondPoint`/`penultimatePoint`: first/second control points (for tooling).
|
|
1995
|
+
*
|
|
1996
|
+
* @remarks
|
|
1997
|
+
* The returned path slightly offsets the end point by +0.0002 on both axes
|
|
1998
|
+
* to avoid edge cases in some renderers and hit-testing implementations.
|
|
1999
|
+
*/
|
|
2000
|
+
handle(request) {
|
|
2001
|
+
const { source, sourceSide, target, targetSide } = request;
|
|
2002
|
+
const offset = Math.max(0, request.offset ?? 0);
|
|
2003
|
+
const p0 = { x: source.x, y: source.y };
|
|
2004
|
+
const p3 = { x: target.x, y: target.y };
|
|
2005
|
+
const h0 = AdaptiveCurveBuilder._handleLen(p0, p3, sourceSide, offset);
|
|
2006
|
+
const h3 = AdaptiveCurveBuilder._handleLen(p3, p0, targetSide, offset);
|
|
2007
|
+
const c1 = AdaptiveCurveBuilder._softControl(sourceSide, p0, p3, h0);
|
|
2008
|
+
const c2 = AdaptiveCurveBuilder._softControl(targetSide, p3, p0, h3);
|
|
2009
|
+
const path = `M ${p0.x} ${p0.y} C ${c1.x} ${c1.y}, ${c2.x} ${c2.y}, ${p3.x + 0.0002} ${p3.y + 0.0002}`;
|
|
2010
|
+
const connectionCenter = new CalculateConnectionCenterHandler().handle(new CalculateConnectionCenterRequest([p0, c1, c2, p3]));
|
|
2011
|
+
return {
|
|
2012
|
+
path,
|
|
2013
|
+
connectionCenter,
|
|
2014
|
+
secondPoint: c1,
|
|
2015
|
+
penultimatePoint: c2,
|
|
2016
|
+
points: _sampleCubic$1(p0, c1, c2, p3, 32),
|
|
2017
|
+
};
|
|
2018
|
+
}
|
|
2019
|
+
}
|
|
2020
|
+
/**
|
|
2021
|
+
* Evaluates a cubic Bézier at parameter `t` in [0, 1].
|
|
2022
|
+
*
|
|
2023
|
+
* @param p0 - Start point.
|
|
2024
|
+
* @param p1 - First control point.
|
|
2025
|
+
* @param p2 - Second control point.
|
|
2026
|
+
* @param p3 - End point.
|
|
2027
|
+
* @param t - Parameter in [0, 1].
|
|
2028
|
+
* @returns Point on the curve at `t`.
|
|
2029
|
+
*/
|
|
2030
|
+
function bez3$1(p0, p1, p2, p3, t) {
|
|
2031
|
+
const u = 1 - t, tt = t * t, uu = u * u, uuu = uu * u, ttt = tt * t;
|
|
2032
|
+
return {
|
|
2033
|
+
x: uuu * p0.x + 3 * uu * t * p1.x + 3 * u * tt * p2.x + ttt * p3.x,
|
|
2034
|
+
y: uuu * p0.y + 3 * uu * t * p1.y + 3 * u * tt * p2.y + ttt * p3.y,
|
|
2035
|
+
};
|
|
2036
|
+
}
|
|
2037
|
+
/**
|
|
2038
|
+
* Uniformly samples a cubic Bézier segment.
|
|
2039
|
+
*
|
|
2040
|
+
* @param p0 - Start point.
|
|
2041
|
+
* @param p1 - First control point.
|
|
2042
|
+
* @param p2 - Second control point.
|
|
2043
|
+
* @param p3 - End point.
|
|
2044
|
+
* @param samples - Number of sub-segments (default: 32). The function returns `samples + 1` points.
|
|
2045
|
+
* @returns Array of sampled points including both endpoints.
|
|
2046
|
+
* @remarks
|
|
2047
|
+
* Sampling is uniform in parameter `t`, not in arc length. This is typically
|
|
2048
|
+
* sufficient for hit-testing and bounding boxes; if you need error-bounded
|
|
2049
|
+
* flattening, consider an adaptive subdivision strategy instead.
|
|
2050
|
+
*/
|
|
2051
|
+
function _sampleCubic$1(p0, p1, p2, p3, samples = 32) {
|
|
2052
|
+
const out = new Array(samples + 1);
|
|
2053
|
+
out[0] = { ...p0 };
|
|
2054
|
+
for (let i = 1; i <= samples; i++) {
|
|
2055
|
+
out[i] = bez3$1(p0, p1, p2, p3, i / samples);
|
|
2056
|
+
}
|
|
2057
|
+
return out;
|
|
2058
|
+
}
|
|
2059
|
+
|
|
1872
2060
|
class FBezierPathBuilder {
|
|
1873
2061
|
static _getConnectorOffset(distance, offset) {
|
|
1874
2062
|
if (distance >= offset) {
|
|
@@ -2449,34 +2637,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
2449
2637
|
const F_CONNECTION_BUILDERS = new InjectionToken('F_CONNECTION_BUILDERS');
|
|
2450
2638
|
|
|
2451
2639
|
class FConnectionFactory {
|
|
2452
|
-
|
|
2640
|
+
_builders = {
|
|
2453
2641
|
[EFConnectionType.STRAIGHT]: new FStraightPathBuilder(),
|
|
2454
2642
|
[EFConnectionType.BEZIER]: new FBezierPathBuilder(),
|
|
2643
|
+
[EFConnectionType.ADAPTIVE_CURVE]: new AdaptiveCurveBuilder(),
|
|
2455
2644
|
[EFConnectionType.SEGMENT]: new FSegmentPathBuilder(),
|
|
2645
|
+
...(inject(F_CONNECTION_BUILDERS, { optional: true }) || {}),
|
|
2456
2646
|
};
|
|
2457
|
-
constructor(builders) {
|
|
2458
|
-
if (builders) {
|
|
2459
|
-
this.builders = { ...this.builders, ...builders };
|
|
2460
|
-
}
|
|
2461
|
-
}
|
|
2462
2647
|
handle(request) {
|
|
2463
|
-
const builder = this.
|
|
2648
|
+
const builder = this._builders[request.type];
|
|
2464
2649
|
if (!builder) {
|
|
2465
2650
|
throw new Error(`FConnectionBuilder not found for type ${request.type}`);
|
|
2466
2651
|
}
|
|
2467
2652
|
return builder.handle(request.payload);
|
|
2468
2653
|
}
|
|
2469
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionFactory, deps: [
|
|
2654
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2470
2655
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionFactory });
|
|
2471
2656
|
}
|
|
2472
2657
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionFactory, decorators: [{
|
|
2473
2658
|
type: Injectable
|
|
2474
|
-
}]
|
|
2475
|
-
type: Optional
|
|
2476
|
-
}, {
|
|
2477
|
-
type: Inject,
|
|
2478
|
-
args: [F_CONNECTION_BUILDERS]
|
|
2479
|
-
}] }] });
|
|
2659
|
+
}] });
|
|
2480
2660
|
|
|
2481
2661
|
let warnedFConnectionCenter = false;
|
|
2482
2662
|
/** @deprecated '[fConnectionCenter] is deprecated and will be removed in v18.0.0. Use FConnectionContent directive instead.' */
|
|
@@ -2759,7 +2939,7 @@ class PolylineContentPlace {
|
|
|
2759
2939
|
return { x, y };
|
|
2760
2940
|
}
|
|
2761
2941
|
_sizeAlongDirection(element, dir) {
|
|
2762
|
-
const rect =
|
|
2942
|
+
const rect = DragRectCache.fromElement(element);
|
|
2763
2943
|
return Math.abs(dir.x) * rect.width + Math.abs(dir.y) * rect.height;
|
|
2764
2944
|
}
|
|
2765
2945
|
_normalize180(angleDeg) {
|
|
@@ -2800,16 +2980,15 @@ class ConnectionContentLayoutEngine {
|
|
|
2800
2980
|
const total = sampler.totalLength;
|
|
2801
2981
|
for (const item of contents) {
|
|
2802
2982
|
const { position, rotationDeg } = this._placement.compute(sampler, item);
|
|
2803
|
-
|
|
2804
|
-
item.hostElement.setAttribute('style', style);
|
|
2983
|
+
item.hostElement.style.transform = this._createTransformString(position, rotationDeg);
|
|
2805
2984
|
}
|
|
2806
2985
|
return total;
|
|
2807
2986
|
}
|
|
2808
2987
|
_createTransformString(position, rotationDeg) {
|
|
2809
|
-
return `position
|
|
2988
|
+
return `translate3d(${position.x}px, ${position.y}px, 0) translate(-50%, -50%) rotate(${rotationDeg}deg)`;
|
|
2810
2989
|
}
|
|
2811
2990
|
}
|
|
2812
|
-
function calculatePathPointsIfEmpty({ point1, point2 }, { secondPoint, connectionCenter, penultimatePoint }) {
|
|
2991
|
+
function calculatePathPointsIfEmpty({ point1, point2 }, { secondPoint, connectionCenter, penultimatePoint, }) {
|
|
2813
2992
|
return [point1, secondPoint || point1, connectionCenter, penultimatePoint || point2, point2];
|
|
2814
2993
|
}
|
|
2815
2994
|
|
|
@@ -2857,7 +3036,10 @@ class FConnectionContent {
|
|
|
2857
3036
|
* - `0.5` — at the middle of the connection (default).
|
|
2858
3037
|
*/
|
|
2859
3038
|
position = input(0.5, {
|
|
2860
|
-
transform: (
|
|
3039
|
+
transform: (x) => {
|
|
3040
|
+
const v = coerceNumberProperty(x);
|
|
3041
|
+
return v < 0 ? 0 : v > 1 ? 1 : v;
|
|
3042
|
+
},
|
|
2861
3043
|
});
|
|
2862
3044
|
/**
|
|
2863
3045
|
* Perpendicular offset from the connection line (in pixels).
|
|
@@ -2867,7 +3049,9 @@ class FConnectionContent {
|
|
|
2867
3049
|
* - Negative values shift it to the left.
|
|
2868
3050
|
* - Default: `0` (no shift).
|
|
2869
3051
|
*/
|
|
2870
|
-
offset = input(0
|
|
3052
|
+
offset = input(0, {
|
|
3053
|
+
transform: (x) => coerceNumberProperty(x),
|
|
3054
|
+
});
|
|
2871
3055
|
/**
|
|
2872
3056
|
* Controls the orientation (rotation) of the content relative to the connection.
|
|
2873
3057
|
*
|
|
@@ -2903,6 +3087,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
2903
3087
|
}]
|
|
2904
3088
|
}] });
|
|
2905
3089
|
|
|
3090
|
+
var EFConnectionConnectableSide;
|
|
3091
|
+
(function (EFConnectionConnectableSide) {
|
|
3092
|
+
EFConnectionConnectableSide["DEFAULT"] = "default";
|
|
3093
|
+
EFConnectionConnectableSide["TOP"] = "top";
|
|
3094
|
+
EFConnectionConnectableSide["BOTTOM"] = "bottom";
|
|
3095
|
+
EFConnectionConnectableSide["LEFT"] = "left";
|
|
3096
|
+
EFConnectionConnectableSide["RIGHT"] = "right";
|
|
3097
|
+
EFConnectionConnectableSide["CALCULATE"] = "calculate";
|
|
3098
|
+
EFConnectionConnectableSide["CALCULATE_HORIZONTAL"] = "calculate_horizontal";
|
|
3099
|
+
EFConnectionConnectableSide["CALCULATE_VERTICAL"] = "calculate_vertical";
|
|
3100
|
+
})(EFConnectionConnectableSide || (EFConnectionConnectableSide = {}));
|
|
3101
|
+
|
|
2906
3102
|
const MIXIN_BASE = mixinChangeSelection(mixinChangeVisibility(class {
|
|
2907
3103
|
hostElement;
|
|
2908
3104
|
constructor(hostElement) {
|
|
@@ -2932,6 +3128,10 @@ class FConnectionBase extends MIXIN_BASE {
|
|
|
2932
3128
|
fConnectionContents = contentChildren(FConnectionContent, {
|
|
2933
3129
|
descendants: true,
|
|
2934
3130
|
});
|
|
3131
|
+
fInputSide = signal(EFConnectionConnectableSide.DEFAULT);
|
|
3132
|
+
_sourceSide = EFConnectableSide.AUTO;
|
|
3133
|
+
fOutputSide = signal(EFConnectionConnectableSide.DEFAULT);
|
|
3134
|
+
_targetSide = EFConnectableSide.AUTO;
|
|
2935
3135
|
_penultimatePoint = PointExtensions.initialize();
|
|
2936
3136
|
_secondPoint = PointExtensions.initialize();
|
|
2937
3137
|
constructor() {
|
|
@@ -2945,9 +3145,9 @@ class FConnectionBase extends MIXIN_BASE {
|
|
|
2945
3145
|
isContains(element) {
|
|
2946
3146
|
return (this.hostElement.firstChild?.lastChild).contains(element);
|
|
2947
3147
|
}
|
|
2948
|
-
setLine({ point1, point2 }
|
|
3148
|
+
setLine({ point1, point2 }) {
|
|
2949
3149
|
this.line = LineExtensions.initialize(point1, point2);
|
|
2950
|
-
const pathResult = this._getPathResult(point1,
|
|
3150
|
+
const pathResult = this._getPathResult(point1, point2);
|
|
2951
3151
|
this.path = pathResult.path;
|
|
2952
3152
|
this._penultimatePoint = pathResult.penultimatePoint || point1;
|
|
2953
3153
|
this._secondPoint = pathResult.secondPoint || point2;
|
|
@@ -2957,12 +3157,19 @@ class FConnectionBase extends MIXIN_BASE {
|
|
|
2957
3157
|
_contents() {
|
|
2958
3158
|
return Array.from(this.fConnectionContents()?.values() ?? []);
|
|
2959
3159
|
}
|
|
2960
|
-
_getPathResult(source,
|
|
3160
|
+
_getPathResult(source, target) {
|
|
2961
3161
|
const radius = this.fRadius > 0 ? this.fRadius : 0;
|
|
2962
3162
|
const offset = this.fOffset > 0 ? this.fOffset : 1;
|
|
2963
3163
|
return this._connectionFactory.handle({
|
|
2964
3164
|
type: this.fType,
|
|
2965
|
-
payload: {
|
|
3165
|
+
payload: {
|
|
3166
|
+
source,
|
|
3167
|
+
sourceSide: this._sourceSide,
|
|
3168
|
+
target,
|
|
3169
|
+
targetSide: this._targetSide,
|
|
3170
|
+
radius,
|
|
3171
|
+
offset,
|
|
3172
|
+
},
|
|
2966
3173
|
});
|
|
2967
3174
|
}
|
|
2968
3175
|
_createTransformString(position, rotate = 0) {
|
|
@@ -2982,6 +3189,16 @@ class FConnectionBase extends MIXIN_BASE {
|
|
|
2982
3189
|
this.fDragHandleStart()?.redraw(this._secondPoint, this.line.point1);
|
|
2983
3190
|
this.fTextComponent().redraw(this.line);
|
|
2984
3191
|
}
|
|
3192
|
+
/**
|
|
3193
|
+
* Applies the resolved sides to the connection. Don't call this method directly; it's used internally.
|
|
3194
|
+
*
|
|
3195
|
+
* @param sourceSide The resolved side for the source element.
|
|
3196
|
+
* @param targetSide The resolved side for the target element.
|
|
3197
|
+
*/
|
|
3198
|
+
_applyResolvedSidesToConnection(sourceSide, targetSide) {
|
|
3199
|
+
this._sourceSide = sourceSide;
|
|
3200
|
+
this._targetSide = targetSide;
|
|
3201
|
+
}
|
|
2985
3202
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionBase, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
2986
3203
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "18.2.13", type: FConnectionBase, inputs: { fStartColor: { classPropertyName: "fStartColor", publicName: "fStartColor", isSignal: true, isRequired: false, transformFunction: null }, fEndColor: { classPropertyName: "fEndColor", publicName: "fEndColor", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "fConnectionCenters", predicate: FConnectionCenterDirective, descendants: true, isSignal: true }, { propertyName: "fConnectionContents", predicate: FConnectionContent, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "fDefs", first: true, predicate: ["defs"], descendants: true, isSignal: true }, { propertyName: "fPath", first: true, predicate: CONNECTION_PATH, descendants: true, isSignal: true }, { propertyName: "fGradient", first: true, predicate: CONNECTION_GRADIENT, descendants: true, isSignal: true }, { propertyName: "fDragHandleStart", first: true, predicate: FConnectionDragHandleStartComponent, descendants: true, isSignal: true }, { propertyName: "fDragHandleEnd", first: true, predicate: FConnectionDragHandleEndComponent, descendants: true, isSignal: true }, { propertyName: "fSelection", first: true, predicate: FConnectionSelectionComponent, descendants: true, isSignal: true }, { propertyName: "fTextComponent", first: true, predicate: CONNECTION_TEXT, descendants: true, isSignal: true }, { propertyName: "fConnectionCenter", first: true, predicate: ["fConnectionCenter"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0 });
|
|
2987
3204
|
}
|
|
@@ -3001,6 +3218,7 @@ var EFConnectionType;
|
|
|
3001
3218
|
EFConnectionType["SEGMENT"] = "segment";
|
|
3002
3219
|
EFConnectionType["STRAIGHT"] = "straight";
|
|
3003
3220
|
EFConnectionType["BEZIER"] = "bezier";
|
|
3221
|
+
EFConnectionType["ADAPTIVE_CURVE"] = "adaptive-curve";
|
|
3004
3222
|
})(EFConnectionType || (EFConnectionType = {}));
|
|
3005
3223
|
|
|
3006
3224
|
let uniqueId$6 = 0;
|
|
@@ -3014,6 +3232,16 @@ class FConnectionForCreateComponent extends FConnectionBase {
|
|
|
3014
3232
|
fOffset = 12;
|
|
3015
3233
|
fBehavior = EFConnectionBehavior.FIXED;
|
|
3016
3234
|
fType = EFConnectionType.STRAIGHT;
|
|
3235
|
+
fInputSide = input(EFConnectionConnectableSide.DEFAULT, {
|
|
3236
|
+
transform: (x) => {
|
|
3237
|
+
return castToEnum(x, 'fInputSide', EFConnectionConnectableSide);
|
|
3238
|
+
},
|
|
3239
|
+
});
|
|
3240
|
+
fOutputSide = input(EFConnectionConnectableSide.DEFAULT, {
|
|
3241
|
+
transform: (x) => {
|
|
3242
|
+
return castToEnum(x, 'fOutputSide', EFConnectionConnectableSide);
|
|
3243
|
+
},
|
|
3244
|
+
});
|
|
3017
3245
|
get boundingElement() {
|
|
3018
3246
|
return this.fPath().hostElement;
|
|
3019
3247
|
}
|
|
@@ -3031,7 +3259,7 @@ class FConnectionForCreateComponent extends FConnectionBase {
|
|
|
3031
3259
|
this._mediator.execute(new RemoveConnectionForCreateFromStoreRequest());
|
|
3032
3260
|
}
|
|
3033
3261
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionForCreateComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
3034
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FConnectionForCreateComponent, selector: "f-connection-for-create", inputs: { fRadius:
|
|
3262
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FConnectionForCreateComponent, selector: "f-connection-for-create", inputs: { fRadius: { classPropertyName: "fRadius", publicName: "fRadius", isSignal: false, isRequired: false, transformFunction: numberAttribute }, fOffset: { classPropertyName: "fOffset", publicName: "fOffset", isSignal: false, isRequired: false, transformFunction: numberAttribute }, fBehavior: { classPropertyName: "fBehavior", publicName: "fBehavior", isSignal: false, isRequired: false, transformFunction: (value) => castToEnum(value, 'fBehavior', EFConnectionBehavior) }, fType: { classPropertyName: "fType", publicName: "fType", isSignal: false, isRequired: false, transformFunction: null }, fInputSide: { classPropertyName: "fInputSide", publicName: "fInputSide", isSignal: true, isRequired: false, transformFunction: null }, fOutputSide: { classPropertyName: "fOutputSide", publicName: "fOutputSide", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "f-component f-connection f-connection-for-create" }, providers: [{ provide: F_CONNECTION, useExisting: FConnectionForCreateComponent }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<svg xmlns=\"http://www.w3.org/2000/svg\">\n <defs #defs></defs>\n <g class=\"f-connection-group\">\n <linearGradient fConnectionGradient></linearGradient>\n <path fConnectionSelection [attr.d]=\"path\"></path>\n <g>\n <path f-connection-path [attr.d]=\"path\"></path>\n <circle f-connection-drag-handle-start r=\"8\"></circle>\n <circle f-connection-drag-handle-end r=\"8\"></circle>\n </g>\n <text f-connection-text></text>\n </g>\n <ng-content></ng-content>\n</svg>\n@if (fConnectionCenters().length) {\n <div #fConnectionCenter class=\"f-connection-center\">\n <ng-content select=\"[fConnectionCenter]\"></ng-content>\n </div>\n}\n\n@if (fConnectionContents().length) {\n <ng-content select=\"[fConnectionContent]\"></ng-content>\n}\n", styles: [":host{pointer-events:none;position:absolute}:host svg{overflow:visible}:host svg .f-connection-group{pointer-events:all}:host .f-connection-center,:host .f-connection-content{pointer-events:all}\n"], dependencies: [{ kind: "component", type: FConnectionTextComponent, selector: "text[f-connection-text]" }, { kind: "component", type: FConnectionDragHandleStartComponent, selector: "circle[f-connection-drag-handle-start]" }, { kind: "component", type: FConnectionDragHandleEndComponent, selector: "circle[f-connection-drag-handle-end]" }, { kind: "component", type: FConnectionGradientComponent, selector: "linearGradient[fConnectionGradient]" }, { kind: "component", type: FConnectionPathComponent, selector: "path[f-connection-path]" }, { kind: "component", type: FConnectionSelectionComponent, selector: "path[fConnectionSelection]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3035
3263
|
}
|
|
3036
3264
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionForCreateComponent, decorators: [{
|
|
3037
3265
|
type: Component,
|
|
@@ -3074,6 +3302,16 @@ class FConnectionComponent extends FConnectionBase {
|
|
|
3074
3302
|
alias: 'fReassignDisabled',
|
|
3075
3303
|
transform: booleanAttribute,
|
|
3076
3304
|
});
|
|
3305
|
+
fInputSide = input(EFConnectionConnectableSide.DEFAULT, {
|
|
3306
|
+
transform: (x) => {
|
|
3307
|
+
return castToEnum(x, 'fInputSide', EFConnectionConnectableSide);
|
|
3308
|
+
},
|
|
3309
|
+
});
|
|
3310
|
+
fOutputSide = input(EFConnectionConnectableSide.DEFAULT, {
|
|
3311
|
+
transform: (x) => {
|
|
3312
|
+
return castToEnum(x, 'fOutputSide', EFConnectionConnectableSide);
|
|
3313
|
+
},
|
|
3314
|
+
});
|
|
3077
3315
|
get boundingElement() {
|
|
3078
3316
|
return this.fPath().hostElement;
|
|
3079
3317
|
}
|
|
@@ -3088,7 +3326,7 @@ class FConnectionComponent extends FConnectionBase {
|
|
|
3088
3326
|
this._mediator.execute(new RemoveConnectionFromStoreRequest(this));
|
|
3089
3327
|
}
|
|
3090
3328
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
3091
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FConnectionComponent, selector: "f-connection", inputs: { fId: { classPropertyName: "fId", publicName: "fConnectionId", isSignal: true, isRequired: false, transformFunction: null }, fText: { classPropertyName: "fText", publicName: "fText", isSignal: false, isRequired: false, transformFunction: null }, fTextStartOffset: { classPropertyName: "fTextStartOffset", publicName: "fTextStartOffset", isSignal: false, isRequired: false, transformFunction: null }, fOutputId: { classPropertyName: "fOutputId", publicName: "fOutputId", isSignal: true, isRequired: false, transformFunction: null }, fInputId: { classPropertyName: "fInputId", publicName: "fInputId", isSignal: true, isRequired: false, transformFunction: null }, fRadius: { classPropertyName: "fRadius", publicName: "fRadius", isSignal: false, isRequired: false, transformFunction: numberAttribute }, fOffset: { classPropertyName: "fOffset", publicName: "fOffset", isSignal: false, isRequired: false, transformFunction: numberAttribute }, fBehavior: { classPropertyName: "fBehavior", publicName: "fBehavior", isSignal: false, isRequired: false, transformFunction: (value) => castToEnum(value, 'fBehavior', EFConnectionBehavior) }, fType: { classPropertyName: "fType", publicName: "fType", isSignal: false, isRequired: false, transformFunction: null }, fSelectionDisabled: { classPropertyName: "fSelectionDisabled", publicName: "fSelectionDisabled", isSignal: true, isRequired: false, transformFunction: null }, fReassignableStart: { classPropertyName: "fReassignableStart", publicName: "fReassignableStart", isSignal: true, isRequired: false, transformFunction: null }, fDraggingDisabled: { classPropertyName: "fDraggingDisabled", publicName: "fReassignDisabled", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.id": "fId()", "class.f-connection-selection-disabled": "fSelectionDisabled()", "class.f-connection-reassign-disabled": "fDraggingDisabled()" }, classAttribute: "f-component f-connection" }, providers: [{ provide: F_CONNECTION, useExisting: FConnectionComponent }], exportAs: ["fComponent"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<svg\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"overflow: visible; display: block; vertical-align: middle;\"\n>\n <defs #defs></defs>\n <ng-content></ng-content>\n <g class=\"f-connection-group\">\n <linearGradient fConnectionGradient></linearGradient>\n <path fConnectionSelection [attr.d]=\"path\"></path>\n <g>\n <path f-connection-path [attr.d]=\"path\"></path>\n @if (fReassignableStart()) {\n <circle f-connection-drag-handle-start r=\"8\"></circle>\n }\n <circle f-connection-drag-handle-end r=\"8\"></circle>\n </g>\n <text f-connection-text></text>\n </g>\n</svg>\n@if (fConnectionCenters().length) {\n <div #fConnectionCenter class=\"f-connection-center\">\n <ng-content select=\"[fConnectionCenter]\"></ng-content>\n </div>\n}\n\n@if (fConnectionContents().length) {\n <ng-content select=\"[fConnectionContent]\"></ng-content>\n}\n", styles: [":host{pointer-events:none;position:absolute}:host svg{overflow:visible}:host svg .f-connection-group{pointer-events:all}:host .f-connection-center,:host .f-connection-content{pointer-events:all}\n"], dependencies: [{ kind: "component", type: FConnectionTextComponent, selector: "text[f-connection-text]" }, { kind: "component", type: FConnectionDragHandleStartComponent, selector: "circle[f-connection-drag-handle-start]" }, { kind: "component", type: FConnectionDragHandleEndComponent, selector: "circle[f-connection-drag-handle-end]" }, { kind: "component", type: FConnectionGradientComponent, selector: "linearGradient[fConnectionGradient]" }, { kind: "component", type: FConnectionPathComponent, selector: "path[f-connection-path]" }, { kind: "component", type: FConnectionSelectionComponent, selector: "path[fConnectionSelection]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3329
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FConnectionComponent, selector: "f-connection", inputs: { fId: { classPropertyName: "fId", publicName: "fConnectionId", isSignal: true, isRequired: false, transformFunction: null }, fText: { classPropertyName: "fText", publicName: "fText", isSignal: false, isRequired: false, transformFunction: null }, fTextStartOffset: { classPropertyName: "fTextStartOffset", publicName: "fTextStartOffset", isSignal: false, isRequired: false, transformFunction: null }, fOutputId: { classPropertyName: "fOutputId", publicName: "fOutputId", isSignal: true, isRequired: false, transformFunction: null }, fInputId: { classPropertyName: "fInputId", publicName: "fInputId", isSignal: true, isRequired: false, transformFunction: null }, fRadius: { classPropertyName: "fRadius", publicName: "fRadius", isSignal: false, isRequired: false, transformFunction: numberAttribute }, fOffset: { classPropertyName: "fOffset", publicName: "fOffset", isSignal: false, isRequired: false, transformFunction: numberAttribute }, fBehavior: { classPropertyName: "fBehavior", publicName: "fBehavior", isSignal: false, isRequired: false, transformFunction: (value) => castToEnum(value, 'fBehavior', EFConnectionBehavior) }, fType: { classPropertyName: "fType", publicName: "fType", isSignal: false, isRequired: false, transformFunction: null }, fSelectionDisabled: { classPropertyName: "fSelectionDisabled", publicName: "fSelectionDisabled", isSignal: true, isRequired: false, transformFunction: null }, fReassignableStart: { classPropertyName: "fReassignableStart", publicName: "fReassignableStart", isSignal: true, isRequired: false, transformFunction: null }, fDraggingDisabled: { classPropertyName: "fDraggingDisabled", publicName: "fReassignDisabled", isSignal: true, isRequired: false, transformFunction: null }, fInputSide: { classPropertyName: "fInputSide", publicName: "fInputSide", isSignal: true, isRequired: false, transformFunction: null }, fOutputSide: { classPropertyName: "fOutputSide", publicName: "fOutputSide", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.id": "fId()", "class.f-connection-selection-disabled": "fSelectionDisabled()", "class.f-connection-reassign-disabled": "fDraggingDisabled()" }, classAttribute: "f-component f-connection" }, providers: [{ provide: F_CONNECTION, useExisting: FConnectionComponent }], exportAs: ["fComponent"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<svg\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"overflow: visible; display: block; vertical-align: middle;\"\n>\n <defs #defs></defs>\n <ng-content></ng-content>\n <g class=\"f-connection-group\">\n <linearGradient fConnectionGradient></linearGradient>\n <path fConnectionSelection [attr.d]=\"path\"></path>\n <g>\n <path f-connection-path [attr.d]=\"path\"></path>\n @if (fReassignableStart()) {\n <circle f-connection-drag-handle-start r=\"8\"></circle>\n }\n <circle f-connection-drag-handle-end r=\"8\"></circle>\n </g>\n <text f-connection-text></text>\n </g>\n</svg>\n@if (fConnectionCenters().length) {\n <div #fConnectionCenter class=\"f-connection-center\">\n <ng-content select=\"[fConnectionCenter]\"></ng-content>\n </div>\n}\n\n@if (fConnectionContents().length) {\n <ng-content select=\"[fConnectionContent]\"></ng-content>\n}\n", styles: [":host{pointer-events:none;position:absolute}:host svg{overflow:visible}:host svg .f-connection-group{pointer-events:all}:host .f-connection-center,:host .f-connection-content{pointer-events:all}\n"], dependencies: [{ kind: "component", type: FConnectionTextComponent, selector: "text[f-connection-text]" }, { kind: "component", type: FConnectionDragHandleStartComponent, selector: "circle[f-connection-drag-handle-start]" }, { kind: "component", type: FConnectionDragHandleEndComponent, selector: "circle[f-connection-drag-handle-end]" }, { kind: "component", type: FConnectionGradientComponent, selector: "linearGradient[fConnectionGradient]" }, { kind: "component", type: FConnectionPathComponent, selector: "path[f-connection-path]" }, { kind: "component", type: FConnectionSelectionComponent, selector: "path[fConnectionSelection]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3092
3330
|
}
|
|
3093
3331
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionComponent, decorators: [{
|
|
3094
3332
|
type: Component,
|
|
@@ -3184,6 +3422,16 @@ class FSnapConnectionComponent extends FConnectionBase {
|
|
|
3184
3422
|
fOffset = 12;
|
|
3185
3423
|
fBehavior = EFConnectionBehavior.FIXED;
|
|
3186
3424
|
fType = EFConnectionType.STRAIGHT;
|
|
3425
|
+
fInputSide = input(EFConnectionConnectableSide.DEFAULT, {
|
|
3426
|
+
transform: (x) => {
|
|
3427
|
+
return castToEnum(x, 'fInputSide', EFConnectionConnectableSide);
|
|
3428
|
+
},
|
|
3429
|
+
});
|
|
3430
|
+
fOutputSide = input(EFConnectionConnectableSide.DEFAULT, {
|
|
3431
|
+
transform: (x) => {
|
|
3432
|
+
return castToEnum(x, 'fOutputSide', EFConnectionConnectableSide);
|
|
3433
|
+
},
|
|
3434
|
+
});
|
|
3187
3435
|
get boundingElement() {
|
|
3188
3436
|
return this.fPath().hostElement;
|
|
3189
3437
|
}
|
|
@@ -3201,7 +3449,7 @@ class FSnapConnectionComponent extends FConnectionBase {
|
|
|
3201
3449
|
this._mediator.execute(new RemoveSnapConnectionFromStoreRequest());
|
|
3202
3450
|
}
|
|
3203
3451
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FSnapConnectionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
3204
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FSnapConnectionComponent, selector: "f-snap-connection", inputs: { fSnapThreshold:
|
|
3452
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FSnapConnectionComponent, selector: "f-snap-connection", inputs: { fSnapThreshold: { classPropertyName: "fSnapThreshold", publicName: "fSnapThreshold", isSignal: false, isRequired: false, transformFunction: numberAttribute }, fRadius: { classPropertyName: "fRadius", publicName: "fRadius", isSignal: false, isRequired: false, transformFunction: numberAttribute }, fOffset: { classPropertyName: "fOffset", publicName: "fOffset", isSignal: false, isRequired: false, transformFunction: numberAttribute }, fBehavior: { classPropertyName: "fBehavior", publicName: "fBehavior", isSignal: false, isRequired: false, transformFunction: (value) => castToEnum(value, 'fBehavior', EFConnectionBehavior) }, fType: { classPropertyName: "fType", publicName: "fType", isSignal: false, isRequired: false, transformFunction: null }, fInputSide: { classPropertyName: "fInputSide", publicName: "fInputSide", isSignal: true, isRequired: false, transformFunction: null }, fOutputSide: { classPropertyName: "fOutputSide", publicName: "fOutputSide", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "f-component f-connection f-snap-connection" }, providers: [{ provide: F_CONNECTION, useExisting: FSnapConnectionComponent }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<svg xmlns=\"http://www.w3.org/2000/svg\">\n <defs #defs></defs>\n <g class=\"f-connection-group\">\n <linearGradient fConnectionGradient></linearGradient>\n <path fConnectionSelection [attr.d]=\"path\"></path>\n <g>\n <path f-connection-path [attr.d]=\"path\"></path>\n <circle f-connection-drag-handle-start r=\"8\"></circle>\n <circle f-connection-drag-handle-end r=\"8\"></circle>\n </g>\n <text f-connection-text></text>\n </g>\n <ng-content></ng-content>\n</svg>\n@if (fConnectionCenters().length) {\n <div #fConnectionCenter class=\"f-connection-center\">\n <ng-content select=\"[fConnectionCenter]\"></ng-content>\n </div>\n}\n\n@if (fConnectionContents().length) {\n <ng-content select=\"[fConnectionContent]\"></ng-content>\n}\n", styles: [":host{pointer-events:none;position:absolute}:host svg{overflow:visible}:host svg .f-connection-group{pointer-events:all}:host .f-connection-center,:host .f-connection-content{pointer-events:all}\n"], dependencies: [{ kind: "component", type: FConnectionTextComponent, selector: "text[f-connection-text]" }, { kind: "component", type: FConnectionDragHandleStartComponent, selector: "circle[f-connection-drag-handle-start]" }, { kind: "component", type: FConnectionDragHandleEndComponent, selector: "circle[f-connection-drag-handle-end]" }, { kind: "component", type: FConnectionGradientComponent, selector: "linearGradient[fConnectionGradient]" }, { kind: "component", type: FConnectionPathComponent, selector: "path[f-connection-path]" }, { kind: "component", type: FConnectionSelectionComponent, selector: "path[fConnectionSelection]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3205
3453
|
}
|
|
3206
3454
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FSnapConnectionComponent, decorators: [{
|
|
3207
3455
|
type: Component,
|
|
@@ -3244,7 +3492,7 @@ const F_CONNECTION_PROVIDERS = [
|
|
|
3244
3492
|
* It constructs a line between the intersections of the connectors rectangles and line from the centers of the connector rectangles
|
|
3245
3493
|
* @param payload
|
|
3246
3494
|
*/
|
|
3247
|
-
function floatingBehavior({ sourceRect, targetRect
|
|
3495
|
+
function floatingBehavior({ sourceRect, targetRect }) {
|
|
3248
3496
|
return _getIntersectionsLine(_fromRoundedRectIntersections(sourceRect, targetRect), _toRoundedRectIntersections(sourceRect, targetRect), sourceRect, targetRect);
|
|
3249
3497
|
}
|
|
3250
3498
|
function _fromRoundedRectIntersections(sourceRect, targetRect) {
|
|
@@ -3265,7 +3513,7 @@ function _getIntersectionsLine(from, to, sourceRect, targetRect) {
|
|
|
3265
3513
|
* It constructs a line between the gravity centers of the connector rectangles
|
|
3266
3514
|
* @param payload
|
|
3267
3515
|
*/
|
|
3268
|
-
function fixedCenterBehavior({ sourceRect, targetRect
|
|
3516
|
+
function fixedCenterBehavior({ sourceRect, targetRect }) {
|
|
3269
3517
|
return {
|
|
3270
3518
|
point1: sourceRect.gravityCenter,
|
|
3271
3519
|
point2: targetRect.gravityCenter,
|
|
@@ -3303,16 +3551,128 @@ function _getPosition(rect, side) {
|
|
|
3303
3551
|
}
|
|
3304
3552
|
|
|
3305
3553
|
/**
|
|
3306
|
-
*
|
|
3554
|
+
* Small epsilon to treat near-zero differences as negligible.
|
|
3555
|
+
*/
|
|
3556
|
+
const EPSILON = 0.5;
|
|
3557
|
+
/**
|
|
3558
|
+
* Registry of all connection behavior handlers.
|
|
3559
|
+
*/
|
|
3560
|
+
const BEHAVIOR_HANDLERS = {
|
|
3561
|
+
[EFConnectionBehavior.FLOATING]: floatingBehavior,
|
|
3562
|
+
[EFConnectionBehavior.FIXED_CENTER]: fixedCenterBehavior,
|
|
3563
|
+
[EFConnectionBehavior.FIXED]: fixedOutboundBehavior,
|
|
3564
|
+
};
|
|
3565
|
+
/**
|
|
3566
|
+
* Calculates connection lines based on behavior rules.
|
|
3567
|
+
* It determines which sides of the source and target should connect,
|
|
3568
|
+
* then delegates to a registered behavior handler.
|
|
3307
3569
|
*/
|
|
3308
3570
|
let CalculateConnectionLineByBehavior = class CalculateConnectionLineByBehavior {
|
|
3309
|
-
|
|
3310
|
-
|
|
3311
|
-
|
|
3312
|
-
|
|
3313
|
-
|
|
3314
|
-
|
|
3315
|
-
|
|
3571
|
+
/**
|
|
3572
|
+
* Main execution entry point.
|
|
3573
|
+
*
|
|
3574
|
+
* @param request The request containing source, target, and connection details.
|
|
3575
|
+
* @returns A calculated connection line (ILine).
|
|
3576
|
+
*/
|
|
3577
|
+
handle(request) {
|
|
3578
|
+
const vectors = this._calculateDirectionalVectors(request.sourceRect.gravityCenter.x, request.sourceRect.gravityCenter.y, request.targetRect.gravityCenter.x, request.targetRect.gravityCenter.y);
|
|
3579
|
+
const sourceSide = this._determineSourceSide(request, vectors);
|
|
3580
|
+
const targetSide = this._determineTargetSide(request, vectors);
|
|
3581
|
+
request.connection._applyResolvedSidesToConnection(sourceSide, targetSide);
|
|
3582
|
+
const handler = this._getBehaviorHandler(request.connection.fBehavior);
|
|
3583
|
+
return handler({
|
|
3584
|
+
sourceRect: request.sourceRect,
|
|
3585
|
+
targetRect: request.targetRect,
|
|
3586
|
+
sourceConnectableSide: sourceSide,
|
|
3587
|
+
targetConnectableSide: targetSide,
|
|
3588
|
+
});
|
|
3589
|
+
}
|
|
3590
|
+
/**
|
|
3591
|
+
* Computes the directional deltas between two rectangles.
|
|
3592
|
+
*/
|
|
3593
|
+
_calculateDirectionalVectors(sourceX, sourceY, targetX, targetY) {
|
|
3594
|
+
const sourceToTargetX = targetX - sourceX;
|
|
3595
|
+
const sourceToTargetY = targetY - sourceY;
|
|
3596
|
+
return {
|
|
3597
|
+
sourceToTargetX,
|
|
3598
|
+
sourceToTargetY,
|
|
3599
|
+
targetToSourceX: -sourceToTargetX,
|
|
3600
|
+
targetToSourceY: -sourceToTargetY,
|
|
3601
|
+
};
|
|
3602
|
+
}
|
|
3603
|
+
/**
|
|
3604
|
+
* Determines the side for the source element.
|
|
3605
|
+
*/
|
|
3606
|
+
_determineSourceSide(request, vectors) {
|
|
3607
|
+
return this._resolveConnectableSide(request.connection.fOutputSide(), vectors.sourceToTargetX, vectors.sourceToTargetY, request.sourceConnectableSide);
|
|
3608
|
+
}
|
|
3609
|
+
/**
|
|
3610
|
+
* Determines the side for the target element.
|
|
3611
|
+
*/
|
|
3612
|
+
_determineTargetSide(request, vectors) {
|
|
3613
|
+
return this._resolveConnectableSide(request.connection.fInputSide(), vectors.targetToSourceX, vectors.targetToSourceY, request.targetConnectableSide);
|
|
3614
|
+
}
|
|
3615
|
+
/**
|
|
3616
|
+
* Resolves which side of a shape to connect to based on direction, fallback, and connection mode.
|
|
3617
|
+
*
|
|
3618
|
+
* @param requestedSide The side mode (e.g. CALCULATE, CALCULATE_HORIZONTAL, FIXED, etc.).
|
|
3619
|
+
* @param deltaX Difference in X between source and target.
|
|
3620
|
+
* @param deltaY Difference in Y between source and target.
|
|
3621
|
+
* @param fallbackSide The default fallback side if calculation is ambiguous.
|
|
3622
|
+
*/
|
|
3623
|
+
_resolveConnectableSide(requestedSide, deltaX, deltaY, fallbackSide) {
|
|
3624
|
+
if (requestedSide === EFConnectionConnectableSide.DEFAULT) {
|
|
3625
|
+
return fallbackSide;
|
|
3626
|
+
}
|
|
3627
|
+
const absoluteX = Math.abs(deltaX);
|
|
3628
|
+
const absoluteY = Math.abs(deltaY);
|
|
3629
|
+
const isNearZero = absoluteX < EPSILON && absoluteY < EPSILON;
|
|
3630
|
+
if (isNearZero) {
|
|
3631
|
+
return fallbackSide;
|
|
3632
|
+
}
|
|
3633
|
+
const isHorizontalDominant = absoluteX >= absoluteY;
|
|
3634
|
+
switch (requestedSide) {
|
|
3635
|
+
case EFConnectionConnectableSide.CALCULATE:
|
|
3636
|
+
return isHorizontalDominant
|
|
3637
|
+
? deltaX >= 0
|
|
3638
|
+
? EFConnectableSide.RIGHT
|
|
3639
|
+
: EFConnectableSide.LEFT
|
|
3640
|
+
: deltaY >= 0
|
|
3641
|
+
? EFConnectableSide.BOTTOM
|
|
3642
|
+
: EFConnectableSide.TOP;
|
|
3643
|
+
case EFConnectionConnectableSide.CALCULATE_HORIZONTAL:
|
|
3644
|
+
if (absoluteX < EPSILON) {
|
|
3645
|
+
return fallbackSide;
|
|
3646
|
+
}
|
|
3647
|
+
return deltaX >= 0 ? EFConnectableSide.RIGHT : EFConnectableSide.LEFT;
|
|
3648
|
+
case EFConnectionConnectableSide.CALCULATE_VERTICAL:
|
|
3649
|
+
if (absoluteY < EPSILON) {
|
|
3650
|
+
return fallbackSide;
|
|
3651
|
+
}
|
|
3652
|
+
return deltaY >= 0 ? EFConnectableSide.BOTTOM : EFConnectableSide.TOP;
|
|
3653
|
+
case EFConnectionConnectableSide.TOP:
|
|
3654
|
+
return EFConnectableSide.TOP;
|
|
3655
|
+
case EFConnectionConnectableSide.BOTTOM:
|
|
3656
|
+
return EFConnectableSide.BOTTOM;
|
|
3657
|
+
case EFConnectionConnectableSide.LEFT:
|
|
3658
|
+
return EFConnectableSide.LEFT;
|
|
3659
|
+
case EFConnectionConnectableSide.RIGHT:
|
|
3660
|
+
return EFConnectableSide.RIGHT;
|
|
3661
|
+
default:
|
|
3662
|
+
return fallbackSide;
|
|
3663
|
+
}
|
|
3664
|
+
}
|
|
3665
|
+
/**
|
|
3666
|
+
* Returns the appropriate handler for the given connection behavior.
|
|
3667
|
+
*
|
|
3668
|
+
* @throws Error if no handler is registered for the behavior.
|
|
3669
|
+
*/
|
|
3670
|
+
_getBehaviorHandler(behavior) {
|
|
3671
|
+
const handler = BEHAVIOR_HANDLERS[behavior];
|
|
3672
|
+
if (!handler) {
|
|
3673
|
+
throw new Error(`[Behavior] No handler for behavior: ${behavior}`);
|
|
3674
|
+
}
|
|
3675
|
+
return handler;
|
|
3316
3676
|
}
|
|
3317
3677
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateConnectionLineByBehavior, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
3318
3678
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateConnectionLineByBehavior });
|
|
@@ -3436,12 +3796,30 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
3436
3796
|
type: Injectable
|
|
3437
3797
|
}] });
|
|
3438
3798
|
|
|
3799
|
+
class DragRectCache {
|
|
3800
|
+
static _cache = new WeakMap();
|
|
3801
|
+
static fromElement(element) {
|
|
3802
|
+
const rect = this._cache.get(element) || RectExtensions.fromElement(element);
|
|
3803
|
+
this._cache.set(element, rect);
|
|
3804
|
+
return rect;
|
|
3805
|
+
}
|
|
3806
|
+
static set(element) {
|
|
3807
|
+
this._cache.set(element, RectExtensions.fromElement(element));
|
|
3808
|
+
}
|
|
3809
|
+
static invalidate(element) {
|
|
3810
|
+
this._cache.delete(element);
|
|
3811
|
+
}
|
|
3812
|
+
static invalidateAll() {
|
|
3813
|
+
this._cache = new WeakMap();
|
|
3814
|
+
}
|
|
3815
|
+
}
|
|
3816
|
+
|
|
3439
3817
|
/**
|
|
3440
3818
|
* Execution that redraws connections in the FComponentsStore.
|
|
3441
3819
|
* It resets connectors, sets markers for temporary and snap connections,
|
|
3442
3820
|
* and sets up connections based on the stored outputs and inputs.
|
|
3443
3821
|
*/
|
|
3444
|
-
let
|
|
3822
|
+
let RedrawConnections = class RedrawConnections {
|
|
3445
3823
|
_mediator = inject(FMediator);
|
|
3446
3824
|
_store = inject(FComponentsStore);
|
|
3447
3825
|
handle(_request) {
|
|
@@ -3455,6 +3833,7 @@ let RedrawConnectionsExecution = class RedrawConnectionsExecution {
|
|
|
3455
3833
|
this._store.fConnections.forEach((x) => {
|
|
3456
3834
|
this._setupConnection(this._getOutput(x.fOutputId()), this._getInput(x.fInputId()), x);
|
|
3457
3835
|
});
|
|
3836
|
+
DragRectCache.invalidateAll();
|
|
3458
3837
|
}
|
|
3459
3838
|
_getOutput(id) {
|
|
3460
3839
|
const result = this._store.fOutputs.find((x) => x.fId() === id);
|
|
@@ -3479,23 +3858,23 @@ let RedrawConnectionsExecution = class RedrawConnectionsExecution {
|
|
|
3479
3858
|
fInput.setConnected(fOutput);
|
|
3480
3859
|
const line = this._getLine(fOutput, fInput, fConnection);
|
|
3481
3860
|
this._setMarkers(fConnection);
|
|
3482
|
-
fConnection.setLine(line
|
|
3861
|
+
fConnection.setLine(line);
|
|
3483
3862
|
fConnection.initialize();
|
|
3484
3863
|
fConnection.isSelected() ? fConnection.markAsSelected() : null;
|
|
3485
3864
|
}
|
|
3486
3865
|
_getLine(output, input, connection) {
|
|
3487
|
-
return this._mediator.execute(new CalculateConnectionLineByBehaviorRequest(this._mediator.execute(new GetNormalizedConnectorRectRequest(output.hostElement)), this._mediator.execute(new GetNormalizedConnectorRectRequest(input.hostElement)), connection
|
|
3866
|
+
return this._mediator.execute(new CalculateConnectionLineByBehaviorRequest(this._mediator.execute(new GetNormalizedConnectorRectRequest(output.hostElement)), this._mediator.execute(new GetNormalizedConnectorRectRequest(input.hostElement)), connection, output.fConnectableSide, input.fConnectableSide));
|
|
3488
3867
|
}
|
|
3489
3868
|
_setMarkers(connection) {
|
|
3490
3869
|
this._mediator.execute(new CreateConnectionMarkersRequest(connection));
|
|
3491
3870
|
}
|
|
3492
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type:
|
|
3493
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type:
|
|
3871
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RedrawConnections, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
3872
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RedrawConnections });
|
|
3494
3873
|
};
|
|
3495
|
-
|
|
3874
|
+
RedrawConnections = __decorate([
|
|
3496
3875
|
FExecutionRegister(RedrawConnectionsRequest)
|
|
3497
|
-
],
|
|
3498
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type:
|
|
3876
|
+
], RedrawConnections);
|
|
3877
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RedrawConnections, decorators: [{
|
|
3499
3878
|
type: Injectable
|
|
3500
3879
|
}] });
|
|
3501
3880
|
|
|
@@ -3613,7 +3992,7 @@ const F_CONNECTION_FEATURES = [
|
|
|
3613
3992
|
AddSnapConnectionToStoreExecution,
|
|
3614
3993
|
CreateConnectionMarkersExecution,
|
|
3615
3994
|
CalculateConnectionLineByBehavior,
|
|
3616
|
-
|
|
3995
|
+
RedrawConnections,
|
|
3617
3996
|
RemoveConnectionForCreateFromStoreExecution,
|
|
3618
3997
|
RemoveConnectionFromStoreExecution,
|
|
3619
3998
|
RemoveConnectionMarkerFromStoreExecution,
|
|
@@ -4735,15 +5114,15 @@ class FCreateConnectionDragHandler {
|
|
|
4735
5114
|
}
|
|
4736
5115
|
}
|
|
4737
5116
|
_drawConnectionForCreate(toConnectorRect, fSide) {
|
|
4738
|
-
const line = this._mediator.execute(new CalculateConnectionLineByBehaviorRequest(this._fOutputWithRect.fRect, toConnectorRect, this._connection
|
|
4739
|
-
this._connection.setLine(line
|
|
5117
|
+
const line = this._mediator.execute(new CalculateConnectionLineByBehaviorRequest(this._fOutputWithRect.fRect, toConnectorRect, this._connection, this._fOutputWithRect.fConnector.fConnectableSide, fSide));
|
|
5118
|
+
this._connection.setLine(line);
|
|
4740
5119
|
this._connection.redraw();
|
|
4741
5120
|
}
|
|
4742
5121
|
_drawSnapConnection(fClosestInput) {
|
|
4743
5122
|
if (fClosestInput) {
|
|
4744
|
-
const line = this._mediator.execute(new CalculateConnectionLineByBehaviorRequest(this._fOutputWithRect.fRect, fClosestInput.fRect, this._snapConnection
|
|
5123
|
+
const line = this._mediator.execute(new CalculateConnectionLineByBehaviorRequest(this._fOutputWithRect.fRect, fClosestInput.fRect, this._snapConnection, this._fOutputWithRect.fConnector.fConnectableSide, fClosestInput.fConnector.fConnectableSide));
|
|
4745
5124
|
this._snapConnection?.show();
|
|
4746
|
-
this._snapConnection?.setLine(line
|
|
5125
|
+
this._snapConnection?.setLine(line);
|
|
4747
5126
|
this._snapConnection?.redraw();
|
|
4748
5127
|
}
|
|
4749
5128
|
else {
|
|
@@ -5081,18 +5460,18 @@ class FReassignTargetDragHandler {
|
|
|
5081
5460
|
}
|
|
5082
5461
|
_drawConnection(newPoint, fSide) {
|
|
5083
5462
|
const line = this._calculateNewLine(newPoint, fSide);
|
|
5084
|
-
this._connection.setLine(line
|
|
5463
|
+
this._connection.setLine(line);
|
|
5085
5464
|
this._connection.redraw();
|
|
5086
5465
|
}
|
|
5087
5466
|
_calculateNewLine(targetPoint, fSide) {
|
|
5088
|
-
return this._mediator.execute(new CalculateConnectionLineByBehaviorRequest(this._sourceConnectorRect, roundedRectFromPoint(targetPoint), this._connection
|
|
5467
|
+
return this._mediator.execute(new CalculateConnectionLineByBehaviorRequest(this._sourceConnectorRect, roundedRectFromPoint(targetPoint), this._connection, this._sourceConnector.fConnectableSide, fSide));
|
|
5089
5468
|
}
|
|
5090
5469
|
_drawSnapConnection(closestConnector) {
|
|
5091
5470
|
const snapConnection = this._snapConnection;
|
|
5092
5471
|
if (closestConnector) {
|
|
5093
5472
|
const line = this._getLineToClosestTargetConnector(closestConnector, snapConnection);
|
|
5094
5473
|
snapConnection.show();
|
|
5095
|
-
snapConnection.setLine(line
|
|
5474
|
+
snapConnection.setLine(line);
|
|
5096
5475
|
snapConnection.redraw();
|
|
5097
5476
|
}
|
|
5098
5477
|
else {
|
|
@@ -5100,7 +5479,7 @@ class FReassignTargetDragHandler {
|
|
|
5100
5479
|
}
|
|
5101
5480
|
}
|
|
5102
5481
|
_getLineToClosestTargetConnector(fClosestInput, snapConnection) {
|
|
5103
|
-
return this._mediator.execute(new CalculateConnectionLineByBehaviorRequest(this._sourceConnectorRect, fClosestInput.fRect, snapConnection
|
|
5482
|
+
return this._mediator.execute(new CalculateConnectionLineByBehaviorRequest(this._sourceConnectorRect, fClosestInput.fRect, snapConnection, this._sourceConnector.fConnectableSide, fClosestInput.fConnector.fConnectableSide));
|
|
5104
5483
|
}
|
|
5105
5484
|
onPointerUp() {
|
|
5106
5485
|
this._drawConnection(this._connectorRect, this._targetConnectorAndRect.fConnector.fConnectableSide);
|
|
@@ -5162,18 +5541,18 @@ class FReassignSourceDragHandler {
|
|
|
5162
5541
|
}
|
|
5163
5542
|
_drawConnection(newPoint, fSide) {
|
|
5164
5543
|
const line = this._calculateNewLine(newPoint, fSide);
|
|
5165
|
-
this._connection.setLine(line
|
|
5544
|
+
this._connection.setLine(line);
|
|
5166
5545
|
this._connection.redraw();
|
|
5167
5546
|
}
|
|
5168
5547
|
_calculateNewLine(sourcePoint, fSide) {
|
|
5169
|
-
return this._mediator.execute(new CalculateConnectionLineByBehaviorRequest(roundedRectFromPoint(sourcePoint), this._targetConnectorAndRect.fRect, this._connection
|
|
5548
|
+
return this._mediator.execute(new CalculateConnectionLineByBehaviorRequest(roundedRectFromPoint(sourcePoint), this._targetConnectorAndRect.fRect, this._connection, fSide, this._targetConnectorAndRect.fConnector.fConnectableSide));
|
|
5170
5549
|
}
|
|
5171
5550
|
_drawSnapConnection(fClosestConnector) {
|
|
5172
5551
|
const snapConnection = this._snapConnection;
|
|
5173
5552
|
if (fClosestConnector) {
|
|
5174
5553
|
const line = this._getLineToClosestSourceConnector(fClosestConnector, snapConnection);
|
|
5175
5554
|
snapConnection.show();
|
|
5176
|
-
snapConnection.setLine(line
|
|
5555
|
+
snapConnection.setLine(line);
|
|
5177
5556
|
snapConnection.redraw();
|
|
5178
5557
|
}
|
|
5179
5558
|
else {
|
|
@@ -5181,7 +5560,7 @@ class FReassignSourceDragHandler {
|
|
|
5181
5560
|
}
|
|
5182
5561
|
}
|
|
5183
5562
|
_getLineToClosestSourceConnector(fClosestInput, snapConnection) {
|
|
5184
|
-
return this._mediator.execute(new CalculateConnectionLineByBehaviorRequest(fClosestInput.fRect, this._targetConnectorAndRect.fRect, snapConnection
|
|
5563
|
+
return this._mediator.execute(new CalculateConnectionLineByBehaviorRequest(fClosestInput.fRect, this._targetConnectorAndRect.fRect, snapConnection, fClosestInput.fConnector.fConnectableSide, this._targetConnector.fConnectableSide));
|
|
5185
5564
|
}
|
|
5186
5565
|
onPointerUp() {
|
|
5187
5566
|
this._drawConnection(this._connectorRect, this._sourceConnectorAndRect.fConnector.fConnectableSide);
|
|
@@ -5550,10 +5929,10 @@ class BaseConnectionDragHandler {
|
|
|
5550
5929
|
this._redrawConnection(this._recalculateConnection());
|
|
5551
5930
|
}
|
|
5552
5931
|
_recalculateConnection() {
|
|
5553
|
-
return this._mediator.execute(new CalculateConnectionLineByBehaviorRequest(RoundedRect.fromRoundedRect(this._fOutputWithRect.fRect).addPoint(this._sourceDifference), RoundedRect.fromRoundedRect(this._fInputWithRect.fRect).addPoint(this._targetDifference), this.fConnection
|
|
5932
|
+
return this._mediator.execute(new CalculateConnectionLineByBehaviorRequest(RoundedRect.fromRoundedRect(this._fOutputWithRect.fRect).addPoint(this._sourceDifference), RoundedRect.fromRoundedRect(this._fInputWithRect.fRect).addPoint(this._targetDifference), this.fConnection, this._fOutputWithRect.fConnector.fConnectableSide, this._fInputWithRect.fConnector.fConnectableSide));
|
|
5554
5933
|
}
|
|
5555
5934
|
_redrawConnection(line) {
|
|
5556
|
-
this.fConnection.setLine(line
|
|
5935
|
+
this.fConnection.setLine(line);
|
|
5557
5936
|
this.fConnection.redraw();
|
|
5558
5937
|
}
|
|
5559
5938
|
_connectorNotFoundPrefix(message) {
|
|
@@ -8900,6 +9279,7 @@ class FDraggableDirective extends FDraggableBase {
|
|
|
8900
9279
|
this._mediator.execute(new EndDragSequenceRequest());
|
|
8901
9280
|
}
|
|
8902
9281
|
finalizeDragSequence() {
|
|
9282
|
+
DragRectCache.invalidateAll();
|
|
8903
9283
|
this._mediator.execute(new EmitSelectionChangeEventRequest());
|
|
8904
9284
|
this._result.clear();
|
|
8905
9285
|
}
|
|
@@ -9782,7 +10162,7 @@ class MoveFrontElementsBeforeTargetElementRequest {
|
|
|
9782
10162
|
* Execution that moves elements in the FItemsContainer before a target element.
|
|
9783
10163
|
* It removes elements that should not be in front and inserts them before the target element.
|
|
9784
10164
|
*/
|
|
9785
|
-
let
|
|
10165
|
+
let MoveFrontElementsBeforeTargetElement = class MoveFrontElementsBeforeTargetElement {
|
|
9786
10166
|
handle(request) {
|
|
9787
10167
|
const elementsToMove = [];
|
|
9788
10168
|
for (let i = request.targetIndex + 1; i < request.allElements.length; i++) {
|
|
@@ -9796,13 +10176,13 @@ let MoveFrontElementsBeforeTargetElementExecution = class MoveFrontElementsBefor
|
|
|
9796
10176
|
request.fItemsContainer.insertBefore(x, request.allElements[request.targetIndex]);
|
|
9797
10177
|
});
|
|
9798
10178
|
}
|
|
9799
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type:
|
|
9800
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type:
|
|
10179
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MoveFrontElementsBeforeTargetElement, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
10180
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MoveFrontElementsBeforeTargetElement });
|
|
9801
10181
|
};
|
|
9802
|
-
|
|
10182
|
+
MoveFrontElementsBeforeTargetElement = __decorate([
|
|
9803
10183
|
FExecutionRegister(MoveFrontElementsBeforeTargetElementRequest)
|
|
9804
|
-
],
|
|
9805
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type:
|
|
10184
|
+
], MoveFrontElementsBeforeTargetElement);
|
|
10185
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MoveFrontElementsBeforeTargetElement, decorators: [{
|
|
9806
10186
|
type: Injectable
|
|
9807
10187
|
}] });
|
|
9808
10188
|
|
|
@@ -9994,7 +10374,7 @@ let EmitSelectionChangeEventExecution = class EmitSelectionChangeEventExecution
|
|
|
9994
10374
|
return this._store.fDraggable.fSelectionChange;
|
|
9995
10375
|
}
|
|
9996
10376
|
_dragContext = inject(FDraggableDataContext);
|
|
9997
|
-
handle(
|
|
10377
|
+
handle(_request) {
|
|
9998
10378
|
if (!this._dragContext.isSelectedChanged) {
|
|
9999
10379
|
return;
|
|
10000
10380
|
}
|
|
@@ -10689,10 +11069,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
10689
11069
|
}] });
|
|
10690
11070
|
|
|
10691
11071
|
class GetParentNodesRequest {
|
|
10692
|
-
|
|
11072
|
+
nodeOrGroup;
|
|
10693
11073
|
static fToken = Symbol('GetParentNodesRequest');
|
|
10694
|
-
constructor(
|
|
10695
|
-
this.
|
|
11074
|
+
constructor(nodeOrGroup) {
|
|
11075
|
+
this.nodeOrGroup = nodeOrGroup;
|
|
10696
11076
|
}
|
|
10697
11077
|
}
|
|
10698
11078
|
|
|
@@ -10701,15 +11081,15 @@ class GetParentNodesRequest {
|
|
|
10701
11081
|
*/
|
|
10702
11082
|
let GetParentNodes = class GetParentNodes {
|
|
10703
11083
|
_store = inject(FComponentsStore);
|
|
10704
|
-
handle(
|
|
10705
|
-
return this._getParentNodes(
|
|
11084
|
+
handle({ nodeOrGroup }) {
|
|
11085
|
+
return this._getParentNodes(nodeOrGroup, new Set(), []);
|
|
10706
11086
|
}
|
|
10707
|
-
_getParentNodes(
|
|
10708
|
-
if (visited.has(
|
|
10709
|
-
throw new Error('Circular reference detected in the node hierarchy. Node id: ' +
|
|
11087
|
+
_getParentNodes(nodeOrGroup, visited, result) {
|
|
11088
|
+
if (visited.has(nodeOrGroup.fId())) {
|
|
11089
|
+
throw new Error('Circular reference detected in the node hierarchy. Node id: ' + nodeOrGroup.fId());
|
|
10710
11090
|
}
|
|
10711
|
-
visited.add(
|
|
10712
|
-
const parent = this._store.fNodes.find((x) => x.fId() ===
|
|
11091
|
+
visited.add(nodeOrGroup.fId());
|
|
11092
|
+
const parent = this._store.fNodes.find((x) => x.fId() === nodeOrGroup.fParentId());
|
|
10713
11093
|
if (!parent) {
|
|
10714
11094
|
return result;
|
|
10715
11095
|
}
|
|
@@ -10772,10 +11152,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
10772
11152
|
}] });
|
|
10773
11153
|
|
|
10774
11154
|
class RemoveNodeFromStoreRequest {
|
|
10775
|
-
|
|
11155
|
+
instance;
|
|
10776
11156
|
static fToken = Symbol('RemoveNodeFromStoreRequest');
|
|
10777
|
-
constructor(
|
|
10778
|
-
this.
|
|
11157
|
+
constructor(instance) {
|
|
11158
|
+
this.instance = instance;
|
|
10779
11159
|
}
|
|
10780
11160
|
}
|
|
10781
11161
|
|
|
@@ -10784,8 +11164,8 @@ class RemoveNodeFromStoreRequest {
|
|
|
10784
11164
|
*/
|
|
10785
11165
|
let RemoveNodeFromStore = class RemoveNodeFromStore {
|
|
10786
11166
|
_store = inject(FComponentsStore);
|
|
10787
|
-
handle(
|
|
10788
|
-
this._store.removeComponent(this._store.fNodes,
|
|
11167
|
+
handle({ instance }) {
|
|
11168
|
+
this._store.removeComponent(this._store.fNodes, instance);
|
|
10789
11169
|
}
|
|
10790
11170
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RemoveNodeFromStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
10791
11171
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RemoveNodeFromStore });
|
|
@@ -11331,28 +11711,28 @@ const F_FLOW_FEATURES = [
|
|
|
11331
11711
|
];
|
|
11332
11712
|
|
|
11333
11713
|
class AddLineAlignmentToStoreRequest {
|
|
11334
|
-
|
|
11714
|
+
instance;
|
|
11335
11715
|
static fToken = Symbol('AddLineAlignmentToStoreRequest');
|
|
11336
|
-
constructor(
|
|
11337
|
-
this.
|
|
11716
|
+
constructor(instance) {
|
|
11717
|
+
this.instance = instance;
|
|
11338
11718
|
}
|
|
11339
11719
|
}
|
|
11340
11720
|
|
|
11341
11721
|
/**
|
|
11342
11722
|
* Execution that adds a line alignment to the FComponentsStore.
|
|
11343
11723
|
*/
|
|
11344
|
-
let
|
|
11724
|
+
let AddLineAlignmentToStore = class AddLineAlignmentToStore {
|
|
11345
11725
|
_store = inject(FComponentsStore);
|
|
11346
|
-
handle(
|
|
11347
|
-
this._store.fLineAlignment =
|
|
11726
|
+
handle({ instance }) {
|
|
11727
|
+
this._store.fLineAlignment = instance;
|
|
11348
11728
|
}
|
|
11349
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type:
|
|
11350
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type:
|
|
11729
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AddLineAlignmentToStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
11730
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AddLineAlignmentToStore });
|
|
11351
11731
|
};
|
|
11352
|
-
|
|
11732
|
+
AddLineAlignmentToStore = __decorate([
|
|
11353
11733
|
FExecutionRegister(AddLineAlignmentToStoreRequest)
|
|
11354
|
-
],
|
|
11355
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type:
|
|
11734
|
+
], AddLineAlignmentToStore);
|
|
11735
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AddLineAlignmentToStore, decorators: [{
|
|
11356
11736
|
type: Injectable
|
|
11357
11737
|
}] });
|
|
11358
11738
|
|
|
@@ -11363,18 +11743,18 @@ class RemoveLineAlignmentFromStoreRequest {
|
|
|
11363
11743
|
/**
|
|
11364
11744
|
* Execution that removes a line alignment from the FComponentsStore.
|
|
11365
11745
|
*/
|
|
11366
|
-
let
|
|
11746
|
+
let RemoveLineAlignmentFromStore = class RemoveLineAlignmentFromStore {
|
|
11367
11747
|
_store = inject(FComponentsStore);
|
|
11368
|
-
handle(
|
|
11748
|
+
handle(_request) {
|
|
11369
11749
|
this._store.fLineAlignment = undefined;
|
|
11370
11750
|
}
|
|
11371
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type:
|
|
11372
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type:
|
|
11751
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RemoveLineAlignmentFromStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
11752
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RemoveLineAlignmentFromStore });
|
|
11373
11753
|
};
|
|
11374
|
-
|
|
11754
|
+
RemoveLineAlignmentFromStore = __decorate([
|
|
11375
11755
|
FExecutionRegister(RemoveLineAlignmentFromStoreRequest)
|
|
11376
|
-
],
|
|
11377
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type:
|
|
11756
|
+
], RemoveLineAlignmentFromStore);
|
|
11757
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RemoveLineAlignmentFromStore, decorators: [{
|
|
11378
11758
|
type: Injectable
|
|
11379
11759
|
}] });
|
|
11380
11760
|
|
|
@@ -11383,10 +11763,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
11383
11763
|
* These executions handle the addition and removal of line alignments
|
|
11384
11764
|
* in the FComponentsStore.
|
|
11385
11765
|
*/
|
|
11386
|
-
const F_LINE_ALIGNMENT_FEATURES = [
|
|
11387
|
-
AddLineAlignmentToStoreExecution,
|
|
11388
|
-
RemoveLineAlignmentFromStoreExecution,
|
|
11389
|
-
];
|
|
11766
|
+
const F_LINE_ALIGNMENT_FEATURES = [AddLineAlignmentToStore, RemoveLineAlignmentFromStore];
|
|
11390
11767
|
|
|
11391
11768
|
class AddZoomToStoreRequest {
|
|
11392
11769
|
fComponent;
|
|
@@ -11764,7 +12141,7 @@ const COMMON_PROVIDERS = [
|
|
|
11764
12141
|
SortItemsByParentExecution,
|
|
11765
12142
|
SortNodeLayersExecution,
|
|
11766
12143
|
UpdateItemAndChildrenLayersExecution,
|
|
11767
|
-
|
|
12144
|
+
MoveFrontElementsBeforeTargetElement,
|
|
11768
12145
|
];
|
|
11769
12146
|
|
|
11770
12147
|
let uniqueId$2 = 0;
|
|
@@ -12159,7 +12536,7 @@ class FCanvasComponent extends FCanvasBase {
|
|
|
12159
12536
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FCanvasComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
12160
12537
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.13", type: FCanvasComponent, isStandalone: true, selector: "f-canvas", inputs: { position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null }, scale: { classPropertyName: "scale", publicName: "scale", isSignal: true, isRequired: false, transformFunction: null }, debounceTime: { classPropertyName: "debounceTime", publicName: "debounceTime", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { fCanvasChange: "fCanvasChange" }, host: { classAttribute: "f-component f-canvas" }, providers: [
|
|
12161
12538
|
{ provide: F_CANVAS, useExisting: FCanvasComponent },
|
|
12162
|
-
], viewQueries: [{ propertyName: "fGroupsContainer", first: true, predicate: ["fGroupsContainer"], descendants: true, isSignal: true }, { propertyName: "fNodesContainer", first: true, predicate: ["fNodesContainer"], descendants: true, isSignal: true }, { propertyName: "fConnectionsContainer", first: true, predicate: ["fConnectionsContainer"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ng-container>\n <div #fGroupsContainer>\n <ng-content select=\"[fGroup]\"></ng-content>\n </div>\n <div #fConnectionsContainer>\n <ng-content select=\"f-snap-connection\"></ng-content>\n <ng-content select=\"f-connection\"></ng-content>\n <ng-content select=\"f-connection-for-create\"></ng-content>\n </div>\n\n <div #fNodesContainer>\n <ng-content select=\"[fNode]\"></ng-content>\n </div>\n</ng-container>\n", styles: [":host{position:absolute;overflow:visible;width:100%;height:100%;left:0;top:0;transform-origin:0 0;pointer-events:none}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
12539
|
+
], viewQueries: [{ propertyName: "fGroupsContainer", first: true, predicate: ["fGroupsContainer"], descendants: true, isSignal: true }, { propertyName: "fNodesContainer", first: true, predicate: ["fNodesContainer"], descendants: true, isSignal: true }, { propertyName: "fConnectionsContainer", first: true, predicate: ["fConnectionsContainer"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ng-container>\n <div #fGroupsContainer>\n <ng-content select=\"[fGroup]\"></ng-content>\n </div>\n <div #fConnectionsContainer>\n <ng-content select=\"f-snap-connection\"></ng-content>\n <ng-content select=\"f-connection\"></ng-content>\n <ng-content select=\"f-connection-for-create\"></ng-content>\n </div>\n\n <div #fNodesContainer>\n <ng-content select=\"[fNode]\"></ng-content>\n </div>\n</ng-container>\n", styles: [":host{position:absolute;overflow:visible;width:100%;height:100%;left:0;top:0;transform-origin:0 0;pointer-events:none;will-change:transform;transform:translateZ(0)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
12163
12540
|
}
|
|
12164
12541
|
__decorate([
|
|
12165
12542
|
Deprecated('setScale')
|
|
@@ -12173,7 +12550,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
12173
12550
|
'class': 'f-component f-canvas',
|
|
12174
12551
|
}, providers: [
|
|
12175
12552
|
{ provide: F_CANVAS, useExisting: FCanvasComponent },
|
|
12176
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container>\n <div #fGroupsContainer>\n <ng-content select=\"[fGroup]\"></ng-content>\n </div>\n <div #fConnectionsContainer>\n <ng-content select=\"f-snap-connection\"></ng-content>\n <ng-content select=\"f-connection\"></ng-content>\n <ng-content select=\"f-connection-for-create\"></ng-content>\n </div>\n\n <div #fNodesContainer>\n <ng-content select=\"[fNode]\"></ng-content>\n </div>\n</ng-container>\n", styles: [":host{position:absolute;overflow:visible;width:100%;height:100%;left:0;top:0;transform-origin:0 0;pointer-events:none}\n"] }]
|
|
12553
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container>\n <div #fGroupsContainer>\n <ng-content select=\"[fGroup]\"></ng-content>\n </div>\n <div #fConnectionsContainer>\n <ng-content select=\"f-snap-connection\"></ng-content>\n <ng-content select=\"f-connection\"></ng-content>\n <ng-content select=\"f-connection-for-create\"></ng-content>\n </div>\n\n <div #fNodesContainer>\n <ng-content select=\"[fNode]\"></ng-content>\n </div>\n</ng-container>\n", styles: [":host{position:absolute;overflow:visible;width:100%;height:100%;left:0;top:0;transform-origin:0 0;pointer-events:none;will-change:transform;transform:translateZ(0)}\n"] }]
|
|
12177
12554
|
}], propDecorators: { setZoom: [], resetZoom: [] } });
|
|
12178
12555
|
|
|
12179
12556
|
const F_CANVAS_PROVIDERS = [
|
|
@@ -12410,7 +12787,7 @@ class FFlowComponent extends FFlowBase {
|
|
|
12410
12787
|
...COMMON_PROVIDERS,
|
|
12411
12788
|
...F_DRAGGABLE_PROVIDERS,
|
|
12412
12789
|
{ provide: F_FLOW, useExisting: FFlowComponent },
|
|
12413
|
-
], usesInheritance: true, ngImport: i0, template: "<ng-container>\n <ng-content select=\"[fDefinitions]\"></ng-content>\n\n <ng-content select=\"f-background\"></ng-content>\n\n <ng-content select=\"f-line-alignment\"></ng-content>\n\n <ng-content select=\"f-canvas\"></ng-content>\n\n <ng-content select=\"f-selection-area\"></ng-content>\n\n <ng-content></ng-content>\n</ng-container>\n", styles: [":host{display:block;position:relative;width:100%;height:100%;overflow:hidden;pointer-events:all;-webkit-user-select:none;user-select:none;touch-action:none}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
12790
|
+
], usesInheritance: true, ngImport: i0, template: "<ng-container>\n <ng-content select=\"[fDefinitions]\"></ng-content>\n\n <ng-content select=\"f-background\"></ng-content>\n\n <ng-content select=\"f-line-alignment\"></ng-content>\n\n <ng-content select=\"f-canvas\"></ng-content>\n\n <ng-content select=\"f-selection-area\"></ng-content>\n\n <ng-content></ng-content>\n</ng-container>\n", styles: [":host{display:block;position:relative;width:100%;height:100%;overflow:hidden;pointer-events:all;-webkit-user-select:none;user-select:none;touch-action:none}::ng-deep .f-connection-content{position:fixed;left:0;top:0;pointer-events:all;transform-origin:50% 50%;will-change:transform}::ng-deep .f-node,::ng-deep .f-group{position:absolute;transform-origin:center;-webkit-user-select:none;user-select:none;pointer-events:all;left:0;top:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
12414
12791
|
}
|
|
12415
12792
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FFlowComponent, decorators: [{
|
|
12416
12793
|
type: Component,
|
|
@@ -12425,7 +12802,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
12425
12802
|
...COMMON_PROVIDERS,
|
|
12426
12803
|
...F_DRAGGABLE_PROVIDERS,
|
|
12427
12804
|
{ provide: F_FLOW, useExisting: FFlowComponent },
|
|
12428
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container>\n <ng-content select=\"[fDefinitions]\"></ng-content>\n\n <ng-content select=\"f-background\"></ng-content>\n\n <ng-content select=\"f-line-alignment\"></ng-content>\n\n <ng-content select=\"f-canvas\"></ng-content>\n\n <ng-content select=\"f-selection-area\"></ng-content>\n\n <ng-content></ng-content>\n</ng-container>\n", styles: [":host{display:block;position:relative;width:100%;height:100%;overflow:hidden;pointer-events:all;-webkit-user-select:none;user-select:none;touch-action:none}\n"] }]
|
|
12805
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container>\n <ng-content select=\"[fDefinitions]\"></ng-content>\n\n <ng-content select=\"f-background\"></ng-content>\n\n <ng-content select=\"f-line-alignment\"></ng-content>\n\n <ng-content select=\"f-canvas\"></ng-content>\n\n <ng-content select=\"f-selection-area\"></ng-content>\n\n <ng-content></ng-content>\n</ng-container>\n", styles: [":host{display:block;position:relative;width:100%;height:100%;overflow:hidden;pointer-events:all;-webkit-user-select:none;user-select:none;touch-action:none}::ng-deep .f-connection-content{position:fixed;left:0;top:0;pointer-events:all;transform-origin:50% 50%;will-change:transform}::ng-deep .f-node,::ng-deep .f-group{position:absolute;transform-origin:center;-webkit-user-select:none;user-select:none;pointer-events:all;left:0;top:0}\n"] }]
|
|
12429
12806
|
}] });
|
|
12430
12807
|
|
|
12431
12808
|
const F_FLOW_PROVIDERS = [
|
|
@@ -12639,5 +13016,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
12639
13016
|
* Generated bundle index. Do not edit.
|
|
12640
13017
|
*/
|
|
12641
13018
|
|
|
12642
|
-
export { AddBackgroundToStoreExecution, AddBackgroundToStoreRequest, AddCanvasToStoreExecution, AddCanvasToStoreRequest, AddConnectionForCreateToStoreExecution, AddConnectionForCreateToStoreRequest, AddConnectionMarkerToStoreExecution, AddConnectionMarkerToStoreRequest, AddConnectionToStoreExecution, AddConnectionToStoreRequest, AddDndToStoreExecution, AddDndToStoreRequest, AddFlowToStoreExecution, AddFlowToStoreRequest, AddInputToStore, AddInputToStoreRequest, AddLineAlignmentToStoreExecution, AddLineAlignmentToStoreRequest, AddNodeToStore, AddNodeToStoreRequest, AddOutletToStore, AddOutletToStoreRequest, AddOutputToStore, AddOutputToStoreRequest, AddPatternToBackgroundExecution, AddPatternToBackgroundRequest, AddSnapConnectionToStoreExecution, AddSnapConnectionToStoreRequest, AddZoomToStoreExecution, AddZoomToStoreRequest, ApplyChildResizeConstraints, ApplyChildResizeConstraintsRequest, ApplyParentResizeConstraints, ApplyParentResizeConstraintsRequest, BaseConnectionDragHandler, BuildDragHierarchy, BuildDragHierarchyRequest, BuildDragHierarchyResponse, CALCULATABLE_SIDES, CANVAS_PROVIDERS, COMMON_PROVIDERS, CONNECTABLE_SIDE_EPSILON, CONNECTIONS_PROVIDERS, CONNECTION_GRADIENT, CONNECTION_PATH, CONNECTION_TEXT, CREATE_MOVE_NODE_DRAG_MODEL_FROM_SELECTION_PROVIDERS, CalculateCenterBetweenPointsHandler, CalculateCenterBetweenPointsRequest, CalculateChangedRectFromDifference, CalculateChangedRectFromDifferenceRequest, CalculateClosestConnector, CalculateClosestConnectorRequest, CalculateConnectableSideByConnectedPositions, CalculateConnectableSideByConnectedPositionsRequest, CalculateConnectableSideByInternalPosition, CalculateConnectableSideByInternalPositionRequest, CalculateConnectionCenterHandler, CalculateConnectionCenterRequest, CalculateConnectionLineByBehavior, CalculateConnectionLineByBehaviorRequest, CalculateConnectorsConnectableSides, CalculateConnectorsConnectableSidesRequest, CalculateDirectChildrenUnionRect, CalculateDirectChildrenUnionRectRequest, CalculateDragLimits, CalculateDragLimitsRequest, CalculateFlowPointFromMinimapPointExecution, CalculateFlowPointFromMinimapPointRequest, CalculateInputConnections, CalculateInputConnectionsRequest, CalculateNodesBoundingBox, CalculateNodesBoundingBoxNormalizedPosition, CalculateNodesBoundingBoxNormalizedPositionRequest, CalculateNodesBoundingBoxRequest, CalculateOutputConnections, CalculateOutputConnectionsRequest, CalculateResizeLimits, CalculateResizeLimitsRequest, CalculateSourceConnectorsToConnect, CalculateSourceConnectorsToConnectRequest, CalculateTargetConnectorsToConnect, CalculateTargetConnectorsToConnectRequest, CenterGroupOrNodeExecution, CenterGroupOrNodeRequest, ClearSelectionExecution, ClearSelectionRequest, ConnectionContentLayoutEngine, CreateConnectionFromOutputPreparation, CreateConnectionFromOutputPreparationRequest, CreateConnectionMarkersExecution, CreateConnectionMarkersRequest, CreateConnectionPreparation, CreateConnectionPreparationRequest, CreateDragModelFromSelection, CreateDragModelFromSelectionRequest, CreateInputConnectionHandlerAndSetToNodeHandler, CreateInputConnectionHandlerAndSetToNodeHandlerRequest, CreateOutputConnectionHandlerAndSetToNodeHandler, CreateOutputConnectionHandlerAndSetToNodeHandlerRequest, CreateSnapLines, CreateSnapLinesRequest, CreateSummaryDragHandler, CreateSummaryDragHandlerRequest, DRAG_AND_DROP_COMMON_PROVIDERS, Deprecated, DragAndDropBase, DragConstraintPipeline, DropToGroupFinalize, DropToGroupFinalizeRequest, DropToGroupPreparation, DropToGroupPreparationRequest, EFConnectableSide, EFConnectionBehavior, EFConnectionType, EFMarkerType, EFResizeHandleType, EFZoomDirection, EmitSelectionChangeEventExecution, EmitSelectionChangeEventRequest, EndDragSequenceExecution, EndDragSequenceRequest, EventExtensions, ExternalRectConstraint, FBackgroundBase, FBackgroundComponent, FBezierPathBuilder, FCanvasBase, FCanvasChangeEvent, FCanvasComponent, FCanvasDragHandler, FCanvasMoveFinalizeExecution, FCanvasMoveFinalizeRequest, FCanvasMovePreparationExecution, FCanvasMovePreparationRequest, FChannel, FChannelHub, FCirclePatternComponent, FComponentsStore, FConnectionBase, FConnectionCenterDirective, FConnectionComponent, FConnectionContent, FConnectionDragHandleEndComponent, FConnectionDragHandleStartComponent, FConnectionFactory, FConnectionForCreateComponent, FConnectionGradientComponent, FConnectionPathComponent, FConnectionSelectionComponent, FConnectionTextComponent, FConnectionTextPathDirective, FConnectorBase, FConnectorsStore, FCreateConnectionDragHandler, FCreateConnectionDragHandlerPreparationExecution, FCreateConnectionDragHandlerPreparationRequest, FCreateConnectionEvent, FCreateConnectionFinalizeExecution, FCreateConnectionFinalizeRequest, FCreateConnectionFromOutletPreparationExecution, FCreateConnectionFromOutletPreparationRequest, FCreateNodeEvent, FDragBlockerDirective, FDragHandleDirective, FDragHandlerResult, FDragStartedEvent, FDraggableBase, FDraggableDataContext, FDraggableDirective, FDropToGroupEvent, FExternalItemBase, FExternalItemCreatePlaceholderExecution, FExternalItemCreatePlaceholderRequest, FExternalItemCreatePreviewExecution, FExternalItemCreatePreviewRequest, FExternalItemDirective, FExternalItemDragHandler, FExternalItemFinalizeExecution, FExternalItemFinalizeRequest, FExternalItemPlaceholderDirective, FExternalItemPreparationExecution, FExternalItemPreparationRequest, FExternalItemPreviewDirective, FExternalItemService, FFlowBase, FFlowComponent, FFlowModule, FGroupDirective, FLineAlignmentBase, FLineAlignmentComponent, FMarkerBase, FMarkerDirective, FMinimapCanvasDirective, FMinimapComponent, FMinimapData, FMinimapDragHandler, FMinimapFlowDirective, FMinimapViewDirective, FMoveNodesEvent, FNodeBase, FNodeDirective, FNodeDropToGroupDragHandler, FNodeInputBase, FNodeInputDirective, FNodeIntersectedWithConnections, FNodeMoveFinalizeExecution, FNodeMoveFinalizeRequest, FNodeMovePreparationExecution, FNodeMovePreparationRequest, FNodeOutletBase, FNodeOutletDirective, FNodeOutputBase, FNodeOutputDirective, FNodeRotateDragHandler, FNodeRotateFinalizeExecution, FNodeRotateFinalizeRequest, FNodeRotatePreparationExecution, FNodeRotatePreparationRequest, FReassignConnectionDragHandler, FReassignConnectionEvent, FReassignConnectionFinalizeExecution, FReassignConnectionFinalizeRequest, FReassignConnectionPreparationExecution, FReassignConnectionPreparationRequest, FReassignSourceDragHandler, FReassignTargetDragHandler, FRectPatternComponent, FResizeChannel, FResizeHandleDirective, FRotateHandleDirective, FSegmentPathBuilder, FSelectionAreaBase, FSelectionAreaComponent, FSelectionChangeEvent, FSingleSelectExecution, FSingleSelectRequest, FSnapConnectionComponent, FSourceConnectorBase, FStraightPathBuilder, FZoomBase, FZoomDirective, F_AFTER_MAIN_PLUGIN, F_BACKGROUND, F_BACKGROUND_FEATURES, F_BACKGROUND_PATTERN, F_BACKGROUND_PROVIDERS, F_BEFORE_MAIN_PLUGIN, F_CANVAS, F_CANVAS_FEATURES, F_CANVAS_PROVIDERS, F_CONNECTION_BUILDERS, F_CONNECTION_FEATURES, F_CONNECTION_IDENTIFIERS, F_CONNECTION_PROVIDERS, F_CONNECTORS_FEATURES, F_CONNECTORS_PROVIDERS, F_CSS_CLASS, F_DRAGGABLE_FEATURES, F_DRAGGABLE_PROVIDERS, 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_SELECTED_CLASS, F_SELECTION_AREA_DRAG_AND_DROP_PROVIDERS, F_SELECTION_AREA_PROVIDERS, F_SELECTION_FEATURES, F_STORAGE_PROVIDERS, F_ZOOM, F_ZOOM_FEATURES, F_ZOOM_PROVIDERS, F_ZOOM_TAG, FindConnectableConnectorUsingPriorityAndPositionExecution, FindConnectableConnectorUsingPriorityAndPositionRequest, FitToChildNodesAndGroups, FitToChildNodesAndGroupsRequest, FitToFlowExecution, FitToFlowRequest, GET_FLOW_STATE_PROVIDERS, GetCanBeSelectedItemsExecution, GetCanBeSelectedItemsRequest, GetCanvasExecution, GetCanvasRequest, GetChildNodeIds, GetChildNodeIdsRequest, GetConnectorAndRect, GetConnectorAndRectRequest, GetCurrentSelectionExecution, GetCurrentSelectionRequest, GetDeepChildrenNodesAndGroupsExecution, GetDeepChildrenNodesAndGroupsRequest, GetElementRoundedRectExecution, GetElementRoundedRectRequest, GetFirstConnectableOutputExecution, GetFirstConnectableOutputRequest, GetFlowExecution, GetFlowHostElementExecution, GetFlowHostElementRequest, GetFlowRequest, GetFlowStateConnectionsExecution, GetFlowStateConnectionsRequest, GetFlowStateExecution, GetFlowStateNodesExecution, GetFlowStateNodesRequest, GetFlowStateRequest, GetNodeBoundingIncludePaddings, GetNodeBoundingIncludePaddingsRequest, GetNodeBoundingIncludePaddingsResponse, GetNodePadding, GetNodePaddingRequest, GetNormalizedConnectorRectExecution, GetNormalizedConnectorRectRequest, GetNormalizedElementRectExecution, GetNormalizedElementRectRequest, GetNormalizedParentNodeRectExecution, GetNormalizedParentNodeRectRequest, GetNormalizedPointExecution, GetNormalizedPointRequest, GetParentNodes, GetParentNodesRequest, IMouseEvent, IPointerEvent, IPointerUpEvent, ITouchDownEvent, ITouchMoveEvent, InitializeDragSequenceExecution, InitializeDragSequenceRequest, InputCanvasPositionExecution, InputCanvasPositionRequest, InputCanvasScaleExecution, InputCanvasScaleRequest, IsArrayHasParentNodeExecution, IsArrayHasParentNodeRequest, IsConnectionUnderNodeExecution, IsConnectionUnderNodeRequest, IsDragStarted, IsDragStartedRequest, ListenCountChangesExecution, ListenCountChangesRequest, ListenDataChangesExecution, ListenDataChangesRequest, ListenTransformChangesExecution, ListenTransformChangesRequest, LogExecutionTime, MINIMAP_DRAG_FINALIZE_PROVIDERS, MINIMAP_DRAG_PREPARATION_PROVIDERS, MOUSE_EVENT_IGNORE_TIME, MarkConnectableConnectors, MarkConnectableConnectorsRequest, MinimapCalculateSvgScaleAndViewBoxExecution, MinimapCalculateSvgScaleAndViewBoxRequest, MinimapCalculateViewBoxExecution, MinimapCalculateViewBoxRequest, MinimapDragFinalizeExecution, MinimapDragFinalizeRequest, MinimapDragPreparationExecution, MinimapDragPreparationRequest, MinimapDrawNodesExecution, MinimapDrawNodesRequest, MoveDragHandler, MoveFrontElementsBeforeTargetElementExecution, MoveFrontElementsBeforeTargetElementRequest, MoveSummaryDragHandler, NODE_DROP_TO_GROUP_PROVIDERS, NODE_PROVIDERS, NODE_RESIZE_PROVIDERS, NODE_ROTATE_PROVIDERS, NodeResizeDragHandler, NodeResizeFinalize, NodeResizeFinalizeRequest, NodeResizePreparation, NodeResizePreparationRequest, NotifyDataChangedExecution, NotifyDataChangedRequest, NotifyTransformChangedExecution, NotifyTransformChangedRequest, OnPointerMoveExecution, OnPointerMoveRequest, Polyline, PolylineContentAlign, PolylineContentPlace, PolylineSampler, PrepareDragSequenceExecution, PrepareDragSequenceRequest, PreventDefaultIsExternalItemExecution, PreventDefaultIsExternalItemRequest, RESIZE_DIRECTIONS, RectConstraint, RedrawCanvasWithAnimationExecution, RedrawCanvasWithAnimationRequest, RedrawConnectionsExecution, RedrawConnectionsRequest, RemoveBackgroundFromStoreExecution, RemoveBackgroundFromStoreRequest, RemoveCanvasFromStoreExecution, RemoveCanvasFromStoreRequest, RemoveConnectionForCreateFromStoreExecution, RemoveConnectionForCreateFromStoreRequest, RemoveConnectionFromStoreExecution, RemoveConnectionFromStoreRequest, RemoveConnectionMarkerFromStoreExecution, RemoveConnectionMarkerFromStoreRequest, RemoveDndFromStoreExecution, RemoveDndFromStoreRequest, RemoveFlowFromStoreExecution, RemoveFlowFromStoreRequest, RemoveInputFromStore, RemoveInputFromStoreRequest, RemoveLineAlignmentFromStoreExecution, RemoveLineAlignmentFromStoreRequest, RemoveNodeFromStore, RemoveNodeFromStoreRequest, RemoveOutletFromStoreExecution, RemoveOutletFromStoreRequest, RemoveOutputFromStoreExecution, RemoveOutputFromStoreRequest, RemoveSnapConnectionFromStoreExecution, RemoveSnapConnectionFromStoreRequest, RemoveZoomFromStoreExecution, RemoveZoomFromStoreRequest, ResetScaleAndCenterExecution, ResetScaleAndCenterRequest, ResetScaleExecution, ResetScaleRequest, ResetZoomExecution, ResetZoomRequest, SINGLE_SELECT_PROVIDERS, SelectAllExecution, SelectAllRequest, SelectAndUpdateNodeLayerExecution, SelectAndUpdateNodeLayerRequest, SelectExecution, SelectRequest, SelectionAreaDragHandle, SelectionAreaFinalizeExecution, SelectionAreaFinalizeRequest, SelectionAreaPreparationExecution, SelectionAreaPreparationRequest, SetBackgroundTransformExecution, SetBackgroundTransformRequest, SetZoomExecution, SetZoomRequest, SnapLineElement, SnapLineService, SnapLinesDragHandler, SnapToGrid, SortContainersForDropByLayer, SortContainersForDropByLayerRequest, SortItemLayersExecution, SortItemLayersRequest, SortItemsByParentExecution, SortItemsByParentRequest, SortNodeLayersExecution, SortNodeLayersRequest, SourceConnectionDragHandler, SourceTargetConnectionDragHandler, StartDragSequenceExecution, StartDragSequenceRequest, TargetConnectionDragHandler, UnmarkConnectableConnectors, UnmarkConnectableConnectorsRequest, UpdateItemAndChildrenLayersExecution, UpdateItemAndChildrenLayersRequest, UpdateNodeWhenStateOrSizeChanged, UpdateNodeWhenStateOrSizeChangedRequest, UpdateScaleExecution, UpdateScaleRequest, createSVGElement, debounceTime, defaultEventTrigger, determineSide, expandRectFromBaseline, fixedCenterBehavior, fixedOutboundBehavior, floatingBehavior, getExternalItem, getMarkerEndId, getMarkerSelectedEndId, getMarkerSelectedStartId, getMarkerStartId, infinityMinMax, isCalculateMode, isClosestConnectorInsideSnapThreshold, isDragBlocker, isDragHandleEnd, isDragHandleStart, isExternalItem, isMobile, isNode, isNodeOutlet, isNodeOutput, isPointerInsideStartOrEndDragHandles, isRotateHandle, isValidEventTrigger, mixinChangeSelection, mixinChangeVisibility, notifyOnStart, roundedRectFromPoint, stringAttribute, transitionEnd };
|
|
13019
|
+
export { AdaptiveCurveBuilder, AddBackgroundToStoreExecution, AddBackgroundToStoreRequest, AddCanvasToStoreExecution, AddCanvasToStoreRequest, AddConnectionForCreateToStoreExecution, AddConnectionForCreateToStoreRequest, AddConnectionMarkerToStoreExecution, AddConnectionMarkerToStoreRequest, AddConnectionToStoreExecution, AddConnectionToStoreRequest, AddDndToStoreExecution, AddDndToStoreRequest, AddFlowToStoreExecution, AddFlowToStoreRequest, AddInputToStore, AddInputToStoreRequest, AddLineAlignmentToStore, AddLineAlignmentToStoreRequest, AddNodeToStore, AddNodeToStoreRequest, AddOutletToStore, AddOutletToStoreRequest, AddOutputToStore, AddOutputToStoreRequest, AddPatternToBackgroundExecution, AddPatternToBackgroundRequest, AddSnapConnectionToStoreExecution, AddSnapConnectionToStoreRequest, AddZoomToStoreExecution, AddZoomToStoreRequest, ApplyChildResizeConstraints, ApplyChildResizeConstraintsRequest, ApplyParentResizeConstraints, ApplyParentResizeConstraintsRequest, BaseConnectionDragHandler, BuildDragHierarchy, BuildDragHierarchyRequest, BuildDragHierarchyResponse, CALCULATABLE_SIDES, CANVAS_PROVIDERS, COMMON_PROVIDERS, CONNECTABLE_SIDE_EPSILON, CONNECTIONS_PROVIDERS, CONNECTION_GRADIENT, CONNECTION_PATH, CONNECTION_TEXT, CREATE_MOVE_NODE_DRAG_MODEL_FROM_SELECTION_PROVIDERS, CalculateCenterBetweenPointsHandler, CalculateCenterBetweenPointsRequest, CalculateChangedRectFromDifference, CalculateChangedRectFromDifferenceRequest, CalculateClosestConnector, CalculateClosestConnectorRequest, CalculateConnectableSideByConnectedPositions, CalculateConnectableSideByConnectedPositionsRequest, CalculateConnectableSideByInternalPosition, CalculateConnectableSideByInternalPositionRequest, CalculateConnectionCenterHandler, CalculateConnectionCenterRequest, CalculateConnectionLineByBehavior, CalculateConnectionLineByBehaviorRequest, CalculateConnectorsConnectableSides, CalculateConnectorsConnectableSidesRequest, CalculateDirectChildrenUnionRect, CalculateDirectChildrenUnionRectRequest, CalculateDragLimits, CalculateDragLimitsRequest, CalculateFlowPointFromMinimapPointExecution, CalculateFlowPointFromMinimapPointRequest, CalculateInputConnections, CalculateInputConnectionsRequest, CalculateNodesBoundingBox, CalculateNodesBoundingBoxNormalizedPosition, CalculateNodesBoundingBoxNormalizedPositionRequest, CalculateNodesBoundingBoxRequest, CalculateOutputConnections, CalculateOutputConnectionsRequest, CalculateResizeLimits, CalculateResizeLimitsRequest, CalculateSourceConnectorsToConnect, CalculateSourceConnectorsToConnectRequest, CalculateTargetConnectorsToConnect, CalculateTargetConnectorsToConnectRequest, CenterGroupOrNodeExecution, CenterGroupOrNodeRequest, ClearSelectionExecution, ClearSelectionRequest, ConnectionContentLayoutEngine, CreateConnectionFromOutputPreparation, CreateConnectionFromOutputPreparationRequest, CreateConnectionMarkersExecution, CreateConnectionMarkersRequest, CreateConnectionPreparation, CreateConnectionPreparationRequest, CreateDragModelFromSelection, CreateDragModelFromSelectionRequest, CreateInputConnectionHandlerAndSetToNodeHandler, CreateInputConnectionHandlerAndSetToNodeHandlerRequest, CreateOutputConnectionHandlerAndSetToNodeHandler, CreateOutputConnectionHandlerAndSetToNodeHandlerRequest, CreateSnapLines, CreateSnapLinesRequest, CreateSummaryDragHandler, CreateSummaryDragHandlerRequest, DRAG_AND_DROP_COMMON_PROVIDERS, Deprecated, DragAndDropBase, DragConstraintPipeline, DragRectCache, DropToGroupFinalize, DropToGroupFinalizeRequest, DropToGroupPreparation, DropToGroupPreparationRequest, EFConnectableSide, EFConnectionBehavior, EFConnectionConnectableSide, EFConnectionType, EFMarkerType, EFResizeHandleType, EFZoomDirection, EmitSelectionChangeEventExecution, EmitSelectionChangeEventRequest, EndDragSequenceExecution, EndDragSequenceRequest, EventExtensions, ExternalRectConstraint, FBackgroundBase, FBackgroundComponent, FBezierPathBuilder, FCanvasBase, FCanvasChangeEvent, FCanvasComponent, FCanvasDragHandler, FCanvasMoveFinalizeExecution, FCanvasMoveFinalizeRequest, FCanvasMovePreparationExecution, FCanvasMovePreparationRequest, FChannel, FChannelHub, FCirclePatternComponent, FComponentsStore, FConnectionBase, FConnectionCenterDirective, FConnectionComponent, FConnectionContent, FConnectionDragHandleEndComponent, FConnectionDragHandleStartComponent, FConnectionFactory, FConnectionForCreateComponent, FConnectionGradientComponent, FConnectionPathComponent, FConnectionSelectionComponent, FConnectionTextComponent, FConnectionTextPathDirective, FConnectorBase, FConnectorsStore, FCreateConnectionDragHandler, FCreateConnectionDragHandlerPreparationExecution, FCreateConnectionDragHandlerPreparationRequest, FCreateConnectionEvent, FCreateConnectionFinalizeExecution, FCreateConnectionFinalizeRequest, FCreateConnectionFromOutletPreparationExecution, FCreateConnectionFromOutletPreparationRequest, FCreateNodeEvent, FDragBlockerDirective, FDragHandleDirective, FDragHandlerResult, FDragStartedEvent, FDraggableBase, FDraggableDataContext, FDraggableDirective, FDropToGroupEvent, FExternalItemBase, FExternalItemCreatePlaceholderExecution, FExternalItemCreatePlaceholderRequest, FExternalItemCreatePreviewExecution, FExternalItemCreatePreviewRequest, FExternalItemDirective, FExternalItemDragHandler, FExternalItemFinalizeExecution, FExternalItemFinalizeRequest, FExternalItemPlaceholderDirective, FExternalItemPreparationExecution, FExternalItemPreparationRequest, FExternalItemPreviewDirective, FExternalItemService, FFlowBase, FFlowComponent, FFlowModule, FGroupDirective, FLineAlignmentBase, FLineAlignmentComponent, FMarkerBase, FMarkerDirective, FMinimapCanvasDirective, FMinimapComponent, FMinimapData, FMinimapDragHandler, FMinimapFlowDirective, FMinimapViewDirective, FMoveNodesEvent, FNodeBase, FNodeDirective, FNodeDropToGroupDragHandler, FNodeInputBase, FNodeInputDirective, FNodeIntersectedWithConnections, FNodeMoveFinalizeExecution, FNodeMoveFinalizeRequest, FNodeMovePreparationExecution, FNodeMovePreparationRequest, FNodeOutletBase, FNodeOutletDirective, FNodeOutputBase, FNodeOutputDirective, FNodeRotateDragHandler, FNodeRotateFinalizeExecution, FNodeRotateFinalizeRequest, FNodeRotatePreparationExecution, FNodeRotatePreparationRequest, FReassignConnectionDragHandler, FReassignConnectionEvent, FReassignConnectionFinalizeExecution, FReassignConnectionFinalizeRequest, FReassignConnectionPreparationExecution, FReassignConnectionPreparationRequest, FReassignSourceDragHandler, FReassignTargetDragHandler, FRectPatternComponent, FResizeChannel, FResizeHandleDirective, FRotateHandleDirective, FSegmentPathBuilder, FSelectionAreaBase, FSelectionAreaComponent, FSelectionChangeEvent, FSingleSelectExecution, FSingleSelectRequest, FSnapConnectionComponent, FSourceConnectorBase, FStraightPathBuilder, FZoomBase, FZoomDirective, F_AFTER_MAIN_PLUGIN, F_BACKGROUND, F_BACKGROUND_FEATURES, F_BACKGROUND_PATTERN, F_BACKGROUND_PROVIDERS, F_BEFORE_MAIN_PLUGIN, F_CANVAS, F_CANVAS_FEATURES, F_CANVAS_PROVIDERS, F_CONNECTION_BUILDERS, F_CONNECTION_FEATURES, F_CONNECTION_IDENTIFIERS, F_CONNECTION_PROVIDERS, F_CONNECTORS_FEATURES, F_CONNECTORS_PROVIDERS, F_CSS_CLASS, F_DRAGGABLE_FEATURES, F_DRAGGABLE_PROVIDERS, 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_SELECTED_CLASS, F_SELECTION_AREA_DRAG_AND_DROP_PROVIDERS, F_SELECTION_AREA_PROVIDERS, F_SELECTION_FEATURES, F_STORAGE_PROVIDERS, F_ZOOM, F_ZOOM_FEATURES, F_ZOOM_PROVIDERS, F_ZOOM_TAG, FindConnectableConnectorUsingPriorityAndPositionExecution, FindConnectableConnectorUsingPriorityAndPositionRequest, FitToChildNodesAndGroups, FitToChildNodesAndGroupsRequest, FitToFlowExecution, FitToFlowRequest, GET_FLOW_STATE_PROVIDERS, GetCanBeSelectedItemsExecution, GetCanBeSelectedItemsRequest, GetCanvasExecution, GetCanvasRequest, GetChildNodeIds, GetChildNodeIdsRequest, GetConnectorAndRect, GetConnectorAndRectRequest, GetCurrentSelectionExecution, GetCurrentSelectionRequest, GetDeepChildrenNodesAndGroupsExecution, GetDeepChildrenNodesAndGroupsRequest, GetElementRoundedRectExecution, GetElementRoundedRectRequest, GetFirstConnectableOutputExecution, GetFirstConnectableOutputRequest, GetFlowExecution, GetFlowHostElementExecution, GetFlowHostElementRequest, GetFlowRequest, GetFlowStateConnectionsExecution, GetFlowStateConnectionsRequest, GetFlowStateExecution, GetFlowStateNodesExecution, GetFlowStateNodesRequest, GetFlowStateRequest, GetNodeBoundingIncludePaddings, GetNodeBoundingIncludePaddingsRequest, GetNodeBoundingIncludePaddingsResponse, GetNodePadding, GetNodePaddingRequest, GetNormalizedConnectorRectExecution, GetNormalizedConnectorRectRequest, GetNormalizedElementRectExecution, GetNormalizedElementRectRequest, GetNormalizedParentNodeRectExecution, GetNormalizedParentNodeRectRequest, GetNormalizedPointExecution, GetNormalizedPointRequest, GetParentNodes, GetParentNodesRequest, IMouseEvent, IPointerEvent, IPointerUpEvent, ITouchDownEvent, ITouchMoveEvent, InitializeDragSequenceExecution, InitializeDragSequenceRequest, InputCanvasPositionExecution, InputCanvasPositionRequest, InputCanvasScaleExecution, InputCanvasScaleRequest, IsArrayHasParentNodeExecution, IsArrayHasParentNodeRequest, IsConnectionUnderNodeExecution, IsConnectionUnderNodeRequest, IsDragStarted, IsDragStartedRequest, ListenCountChangesExecution, ListenCountChangesRequest, ListenDataChangesExecution, ListenDataChangesRequest, ListenTransformChangesExecution, ListenTransformChangesRequest, LogExecutionTime, MINIMAP_DRAG_FINALIZE_PROVIDERS, MINIMAP_DRAG_PREPARATION_PROVIDERS, MOUSE_EVENT_IGNORE_TIME, MarkConnectableConnectors, MarkConnectableConnectorsRequest, MinimapCalculateSvgScaleAndViewBoxExecution, MinimapCalculateSvgScaleAndViewBoxRequest, MinimapCalculateViewBoxExecution, MinimapCalculateViewBoxRequest, MinimapDragFinalizeExecution, MinimapDragFinalizeRequest, MinimapDragPreparationExecution, MinimapDragPreparationRequest, MinimapDrawNodesExecution, MinimapDrawNodesRequest, MoveDragHandler, MoveFrontElementsBeforeTargetElement, MoveFrontElementsBeforeTargetElementRequest, MoveSummaryDragHandler, NODE_DROP_TO_GROUP_PROVIDERS, NODE_PROVIDERS, NODE_RESIZE_PROVIDERS, NODE_ROTATE_PROVIDERS, NodeResizeDragHandler, NodeResizeFinalize, NodeResizeFinalizeRequest, NodeResizePreparation, NodeResizePreparationRequest, NotifyDataChangedExecution, NotifyDataChangedRequest, NotifyTransformChangedExecution, NotifyTransformChangedRequest, OnPointerMoveExecution, OnPointerMoveRequest, Polyline, PolylineContentAlign, PolylineContentPlace, PolylineSampler, PrepareDragSequenceExecution, PrepareDragSequenceRequest, PreventDefaultIsExternalItemExecution, PreventDefaultIsExternalItemRequest, RESIZE_DIRECTIONS, RectConstraint, RedrawCanvasWithAnimationExecution, RedrawCanvasWithAnimationRequest, RedrawConnections, RedrawConnectionsRequest, RemoveBackgroundFromStoreExecution, RemoveBackgroundFromStoreRequest, RemoveCanvasFromStoreExecution, RemoveCanvasFromStoreRequest, RemoveConnectionForCreateFromStoreExecution, RemoveConnectionForCreateFromStoreRequest, RemoveConnectionFromStoreExecution, RemoveConnectionFromStoreRequest, RemoveConnectionMarkerFromStoreExecution, RemoveConnectionMarkerFromStoreRequest, RemoveDndFromStoreExecution, RemoveDndFromStoreRequest, RemoveFlowFromStoreExecution, RemoveFlowFromStoreRequest, RemoveInputFromStore, RemoveInputFromStoreRequest, RemoveLineAlignmentFromStore, RemoveLineAlignmentFromStoreRequest, RemoveNodeFromStore, RemoveNodeFromStoreRequest, RemoveOutletFromStoreExecution, RemoveOutletFromStoreRequest, RemoveOutputFromStoreExecution, RemoveOutputFromStoreRequest, RemoveSnapConnectionFromStoreExecution, RemoveSnapConnectionFromStoreRequest, RemoveZoomFromStoreExecution, RemoveZoomFromStoreRequest, ResetScaleAndCenterExecution, ResetScaleAndCenterRequest, ResetScaleExecution, ResetScaleRequest, ResetZoomExecution, ResetZoomRequest, SINGLE_SELECT_PROVIDERS, SelectAllExecution, SelectAllRequest, SelectAndUpdateNodeLayerExecution, SelectAndUpdateNodeLayerRequest, SelectExecution, SelectRequest, SelectionAreaDragHandle, SelectionAreaFinalizeExecution, SelectionAreaFinalizeRequest, SelectionAreaPreparationExecution, SelectionAreaPreparationRequest, SetBackgroundTransformExecution, SetBackgroundTransformRequest, SetZoomExecution, SetZoomRequest, SnapLineElement, SnapLineService, SnapLinesDragHandler, SnapToGrid, SortContainersForDropByLayer, SortContainersForDropByLayerRequest, SortItemLayersExecution, SortItemLayersRequest, SortItemsByParentExecution, SortItemsByParentRequest, SortNodeLayersExecution, SortNodeLayersRequest, SourceConnectionDragHandler, SourceTargetConnectionDragHandler, StartDragSequenceExecution, StartDragSequenceRequest, TargetConnectionDragHandler, UnmarkConnectableConnectors, UnmarkConnectableConnectorsRequest, UpdateItemAndChildrenLayersExecution, UpdateItemAndChildrenLayersRequest, UpdateNodeWhenStateOrSizeChanged, UpdateNodeWhenStateOrSizeChangedRequest, UpdateScaleExecution, UpdateScaleRequest, createSVGElement, debounceTime, defaultEventTrigger, determineSide, expandRectFromBaseline, fixedCenterBehavior, fixedOutboundBehavior, floatingBehavior, getExternalItem, getMarkerEndId, getMarkerSelectedEndId, getMarkerSelectedStartId, getMarkerStartId, infinityMinMax, isCalculateMode, isClosestConnectorInsideSnapThreshold, isDragBlocker, isDragHandleEnd, isDragHandleStart, isExternalItem, isMobile, isNode, isNodeOutlet, isNodeOutput, isPointerInsideStartOrEndDragHandles, isRotateHandle, isValidEventTrigger, mixinChangeSelection, mixinChangeVisibility, notifyOnStart, roundedRectFromPoint, stringAttribute, transitionEnd };
|
|
12643
13020
|
//# sourceMappingURL=foblex-flow.mjs.map
|