@foblex/flow 17.8.1 → 17.8.3

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.
Files changed (61) hide show
  1. package/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions-request.d.ts +6 -0
  2. package/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions.d.ts +45 -0
  3. package/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/index.d.ts +2 -0
  4. package/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position-request.d.ts +6 -0
  5. package/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position.d.ts +20 -0
  6. package/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-internal-position/index.d.ts +2 -0
  7. package/domain/f-node/calculate-node-connectors-connectable-sides/calculate-node-connectors-connectable-sides-request.d.ts +6 -0
  8. package/domain/f-node/calculate-node-connectors-connectable-sides/calculate-node-connectors-connectable-sides.d.ts +59 -0
  9. package/domain/f-node/calculate-node-connectors-connectable-sides/index.d.ts +4 -0
  10. package/domain/f-node/index.d.ts +1 -0
  11. package/domain/f-node/providers.d.ts +4 -3
  12. package/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed-request.d.ts +2 -2
  13. package/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed.d.ts +0 -23
  14. package/domain/providers.d.ts +1 -1
  15. package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions-request.mjs +8 -0
  16. package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions.mjs +92 -0
  17. package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/index.mjs +3 -0
  18. package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position-request.mjs +8 -0
  19. package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position.mjs +55 -0
  20. package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-connectable-side-by-internal-position/index.mjs +3 -0
  21. package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-node-connectors-connectable-sides-request.mjs +8 -0
  22. package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/calculate-node-connectors-connectable-sides.mjs +99 -0
  23. package/esm2022/domain/f-node/calculate-node-connectors-connectable-sides/index.mjs +5 -0
  24. package/esm2022/domain/f-node/index.mjs +2 -1
  25. package/esm2022/domain/f-node/providers.mjs +8 -4
  26. package/esm2022/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed-request.mjs +1 -1
  27. package/esm2022/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed.mjs +10 -67
  28. package/esm2022/f-connection/common/f-connection-base.mjs +3 -3
  29. package/esm2022/f-connectors/e-f-connectable-side.mjs +2 -1
  30. package/esm2022/f-connectors/f-connector-base.mjs +1 -1
  31. package/esm2022/f-connectors/f-node-input/f-node-input.directive.mjs +4 -1
  32. package/esm2022/f-connectors/f-node-outlet/f-node-outlet.directive.mjs +4 -1
  33. package/esm2022/f-connectors/f-node-output/f-node-output.directive.mjs +4 -1
  34. package/esm2022/f-node/f-group.directive.mjs +20 -12
  35. package/esm2022/f-node/f-node-base.mjs +2 -2
  36. package/esm2022/f-node/f-node.directive.mjs +15 -3
  37. package/f-backgroud/providers.d.ts +1 -1
  38. package/f-connection/providers.d.ts +1 -1
  39. package/f-connectors/e-f-connectable-side.d.ts +1 -0
  40. package/f-connectors/f-connector-base.d.ts +1 -0
  41. package/f-connectors/f-node-input/f-node-input.directive.d.ts +1 -0
  42. package/f-connectors/f-node-outlet/f-node-outlet.directive.d.ts +1 -0
  43. package/f-connectors/f-node-output/f-node-output.directive.d.ts +1 -0
  44. package/f-connectors/providers.d.ts +1 -1
  45. package/f-draggable/domain/providers.d.ts +1 -1
  46. package/f-draggable/f-connection/providers.d.ts +1 -1
  47. package/f-draggable/f-drop-to-group/providers.d.ts +1 -1
  48. package/f-draggable/f-node-move/create-drag-model-from-selection/providers.d.ts +1 -1
  49. package/f-draggable/f-node-move/providers.d.ts +1 -1
  50. package/f-draggable/providers.d.ts +1 -1
  51. package/f-minimap/domain/providers.d.ts +1 -1
  52. package/f-minimap/providers.d.ts +1 -1
  53. package/f-node/f-group.directive.d.ts +4 -1
  54. package/f-node/f-node-base.d.ts +1 -1
  55. package/f-node/f-node.directive.d.ts +3 -0
  56. package/f-node/providers.d.ts +1 -1
  57. package/f-selection-area/domain/providers.d.ts +1 -1
  58. package/f-storage/providers.d.ts +1 -1
  59. package/fesm2022/foblex-flow.mjs +293 -72
  60. package/fesm2022/foblex-flow.mjs.map +1 -1
  61. package/package.json +1 -1
@@ -1097,6 +1097,7 @@ var EFConnectableSide;
1097
1097
  EFConnectableSide["TOP"] = "top";
1098
1098
  EFConnectableSide["RIGHT"] = "right";
1099
1099
  EFConnectableSide["BOTTOM"] = "bottom";
1100
+ EFConnectableSide["CALCULATE"] = "calculate";
1100
1101
  EFConnectableSide["AUTO"] = "auto";
1101
1102
  })(EFConnectableSide || (EFConnectableSide = {}));
1102
1103
 
@@ -1349,7 +1350,9 @@ class FNodeBase extends MIXIN_BASE$1 {
1349
1350
  }
1350
1351
 
1351
1352
  let uniqueId$b = 0;
1353
+ const _DEBOUNCE_TIME$2 = 3;
1352
1354
  class FGroupDirective extends FNodeBase {
1355
+ _debounceTimer = null;
1353
1356
  _destroyRef = inject(DestroyRef);
1354
1357
  _mediator = inject(FMediator);
1355
1358
  fId = input(`f-group-${uniqueId$b++}`, { alias: 'fGroupId' });
@@ -1415,6 +1418,16 @@ class FGroupDirective extends FNodeBase {
1415
1418
  redraw() {
1416
1419
  super.redraw();
1417
1420
  this._mediator.execute(new NotifyTransformChangedRequest());
1421
+ this._updateConnectorsSides();
1422
+ }
1423
+ _updateConnectorsSides() {
1424
+ if (this._debounceTimer) {
1425
+ clearTimeout(this._debounceTimer);
1426
+ }
1427
+ this._debounceTimer = setTimeout(() => this._calculateNodeConnectorsConnectableSides(), _DEBOUNCE_TIME$2);
1428
+ }
1429
+ _calculateNodeConnectorsConnectableSides() {
1430
+ this._mediator.execute(new CalculateNodeConnectorsConnectableSidesRequest(this));
1418
1431
  }
1419
1432
  ngAfterViewInit() {
1420
1433
  if (!this.browser.isBrowser()) {
@@ -1432,24 +1445,20 @@ class FGroupDirective extends FNodeBase {
1432
1445
  this._mediator.execute(new RemoveNodeFromStoreRequest(this));
1433
1446
  }
1434
1447
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FGroupDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
1435
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: FGroupDirective, selector: "[fGroup]", inputs: { fId: { classPropertyName: "fId", publicName: "fGroupId", isSignal: true, isRequired: false, transformFunction: null }, fParentId: { classPropertyName: "fParentId", publicName: "fGroupParentId", isSignal: true, isRequired: false, transformFunction: null }, position: { classPropertyName: "position", publicName: "fGroupPosition", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "fGroupSize", isSignal: true, isRequired: false, transformFunction: null }, rotate: { classPropertyName: "rotate", publicName: "fGroupRotate", isSignal: true, isRequired: false, transformFunction: null }, fConnectOnNode: { classPropertyName: "fConnectOnNode", publicName: "fConnectOnNode", isSignal: true, isRequired: false, transformFunction: null }, fMinimapClass: { classPropertyName: "fMinimapClass", publicName: "fMinimapClass", isSignal: true, isRequired: false, transformFunction: null }, fDraggingDisabled: { classPropertyName: "fDraggingDisabled", publicName: "fGroupDraggingDisabled", isSignal: true, isRequired: false, transformFunction: null }, fSelectionDisabled: { classPropertyName: "fSelectionDisabled", publicName: "fGroupSelectionDisabled", isSignal: true, isRequired: false, transformFunction: null }, fIncludePadding: { classPropertyName: "fIncludePadding", publicName: "fIncludePadding", isSignal: true, isRequired: false, transformFunction: null }, fAutoExpandOnChildHit: { classPropertyName: "fAutoExpandOnChildHit", publicName: "fAutoExpandOnChildHit", isSignal: true, isRequired: false, transformFunction: null }, fAutoSizeToFitChildren: { classPropertyName: "fAutoSizeToFitChildren", publicName: "fAutoSizeToFitChildren", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { position: "fGroupPositionChange", sizeChange: "fGroupSizeChange", rotate: "fGroupRotateChange" }, host: { properties: { "attr.data-f-group-id": "fId()", "class.f-group-dragging-disabled": "fDraggingDisabled()", "class.f-group-selection-disabled": "fSelectionDisabled()" }, classAttribute: "f-group f-component" }, providers: [
1436
- { provide: F_NODE, useExisting: FGroupDirective },
1437
- ], exportAs: ["fComponent"], usesInheritance: true, ngImport: i0 });
1448
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: FGroupDirective, selector: "[fGroup]", inputs: { fId: { classPropertyName: "fId", publicName: "fGroupId", isSignal: true, isRequired: false, transformFunction: null }, fParentId: { classPropertyName: "fParentId", publicName: "fGroupParentId", isSignal: true, isRequired: false, transformFunction: null }, position: { classPropertyName: "position", publicName: "fGroupPosition", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "fGroupSize", isSignal: true, isRequired: false, transformFunction: null }, rotate: { classPropertyName: "rotate", publicName: "fGroupRotate", isSignal: true, isRequired: false, transformFunction: null }, fConnectOnNode: { classPropertyName: "fConnectOnNode", publicName: "fConnectOnNode", isSignal: true, isRequired: false, transformFunction: null }, fMinimapClass: { classPropertyName: "fMinimapClass", publicName: "fMinimapClass", isSignal: true, isRequired: false, transformFunction: null }, fDraggingDisabled: { classPropertyName: "fDraggingDisabled", publicName: "fGroupDraggingDisabled", isSignal: true, isRequired: false, transformFunction: null }, fSelectionDisabled: { classPropertyName: "fSelectionDisabled", publicName: "fGroupSelectionDisabled", isSignal: true, isRequired: false, transformFunction: null }, fIncludePadding: { classPropertyName: "fIncludePadding", publicName: "fIncludePadding", isSignal: true, isRequired: false, transformFunction: null }, fAutoExpandOnChildHit: { classPropertyName: "fAutoExpandOnChildHit", publicName: "fAutoExpandOnChildHit", isSignal: true, isRequired: false, transformFunction: null }, fAutoSizeToFitChildren: { classPropertyName: "fAutoSizeToFitChildren", publicName: "fAutoSizeToFitChildren", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { position: "fGroupPositionChange", sizeChange: "fGroupSizeChange", rotate: "fGroupRotateChange" }, host: { properties: { "attr.data-f-group-id": "fId()", "class.f-group-dragging-disabled": "fDraggingDisabled()", "class.f-group-selection-disabled": "fSelectionDisabled()" }, classAttribute: "f-group f-component" }, providers: [{ provide: F_NODE, useExisting: FGroupDirective }], exportAs: ["fComponent"], usesInheritance: true, ngImport: i0 });
1438
1449
  }
1439
1450
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FGroupDirective, decorators: [{
1440
1451
  type: Directive,
1441
1452
  args: [{
1442
- selector: "[fGroup]",
1443
- exportAs: "fComponent",
1453
+ selector: '[fGroup]',
1454
+ exportAs: 'fComponent',
1444
1455
  host: {
1445
1456
  '[attr.data-f-group-id]': 'fId()',
1446
- class: "f-group f-component",
1457
+ class: 'f-group f-component',
1447
1458
  '[class.f-group-dragging-disabled]': 'fDraggingDisabled()',
1448
1459
  '[class.f-group-selection-disabled]': 'fSelectionDisabled()',
1449
1460
  },
1450
- providers: [
1451
- { provide: F_NODE, useExisting: FGroupDirective },
1452
- ],
1461
+ providers: [{ provide: F_NODE, useExisting: FGroupDirective }],
1453
1462
  }]
1454
1463
  }], ctorParameters: () => [{ type: i0.ElementRef }] });
1455
1464
 
@@ -1465,7 +1474,9 @@ function stringAttribute(value) {
1465
1474
  }
1466
1475
 
1467
1476
  let uniqueId$a = 0;
1477
+ const _DEBOUNCE_TIME$1 = 3;
1468
1478
  class FNodeDirective extends FNodeBase {
1479
+ _debounceTimer = null;
1469
1480
  _destroyRef = inject(DestroyRef);
1470
1481
  _mediator = inject(FMediator);
1471
1482
  fId = input(`f-node-${uniqueId$a++}`, {
@@ -1534,6 +1545,16 @@ class FNodeDirective extends FNodeBase {
1534
1545
  redraw() {
1535
1546
  super.redraw();
1536
1547
  this._mediator.execute(new NotifyTransformChangedRequest());
1548
+ this._updateConnectorsSides();
1549
+ }
1550
+ _updateConnectorsSides() {
1551
+ if (this._debounceTimer) {
1552
+ clearTimeout(this._debounceTimer);
1553
+ }
1554
+ this._debounceTimer = setTimeout(() => this._calculateNodeConnectorsConnectableSides(), _DEBOUNCE_TIME$1);
1555
+ }
1556
+ _calculateNodeConnectorsConnectableSides() {
1557
+ this._mediator.execute(new CalculateNodeConnectorsConnectableSidesRequest(this));
1537
1558
  }
1538
1559
  ngAfterViewInit() {
1539
1560
  if (!this.browser.isBrowser()) {
@@ -1605,6 +1626,9 @@ class FNodeInputDirective extends FNodeInputBase {
1605
1626
  get fNodeId() {
1606
1627
  return this._node.fId();
1607
1628
  }
1629
+ get fNodeHost() {
1630
+ return this._node.hostElement;
1631
+ }
1608
1632
  ngOnInit() {
1609
1633
  this._mediator.execute(new AddInputToStoreRequest(this));
1610
1634
  this._node.addConnector(this);
@@ -1702,6 +1726,9 @@ class FNodeOutletDirective extends FNodeOutletBase {
1702
1726
  get fNodeId() {
1703
1727
  return this._node.fId();
1704
1728
  }
1729
+ get fNodeHost() {
1730
+ return this._node.hostElement;
1731
+ }
1705
1732
  ngOnInit() {
1706
1733
  this._mediator.execute(new AddOutletToStoreRequest(this));
1707
1734
  }
@@ -1769,6 +1796,9 @@ class FNodeOutputDirective extends FNodeOutputBase {
1769
1796
  get fNodeId() {
1770
1797
  return this._node.fId();
1771
1798
  }
1799
+ get fNodeHost() {
1800
+ return this._node.hostElement;
1801
+ }
1772
1802
  ngOnInit() {
1773
1803
  this._mediator.execute(new AddOutputToStoreRequest(this));
1774
1804
  this._node.addConnector(this);
@@ -2924,7 +2954,7 @@ class FConnectionBase extends MIXIN_BASE {
2924
2954
  });
2925
2955
  }
2926
2956
  _createTransformString(position, rotate = 0) {
2927
- return `position: fixed; pointer-events: all; transform: translate(-50%, -50%) rotate(${rotate}deg); left: ${position.x}px; top: ${position.y}px`;
2957
+ return `position: absolute; pointer-events: all; transform: translate(-50%, -50%) rotate(${rotate}deg); left: ${position.x}px; top: ${position.y}px`;
2928
2958
  }
2929
2959
  markChildrenAsSelected() {
2930
2960
  this.fPath().select();
@@ -10515,6 +10545,250 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
10515
10545
  type: Injectable
10516
10546
  }] });
10517
10547
 
10548
+ class CalculateConnectableSideByConnectedPositionsRequest {
10549
+ connector;
10550
+ static fToken = Symbol('CalculateConnectableSideByConnectedPositionsRequest');
10551
+ constructor(connector) {
10552
+ this.connector = connector;
10553
+ }
10554
+ }
10555
+
10556
+ class CalculateConnectableSideByInternalPositionRequest {
10557
+ connector;
10558
+ static fToken = Symbol('CalculateConnectableSideByInternalPositionRequest');
10559
+ constructor(connector) {
10560
+ this.connector = connector;
10561
+ }
10562
+ }
10563
+
10564
+ /**
10565
+ * Execution that calculates the connectable side for a connector
10566
+ * based on the internal position of the connector relative to its node host.
10567
+ */
10568
+ let CalculateConnectableSideByInternalPosition = class CalculateConnectableSideByInternalPosition {
10569
+ handle({ connector, }) {
10570
+ return this._getSideByDelta(connector.hostElement, connector.fNodeHost);
10571
+ }
10572
+ /**
10573
+ * Determines the side of the connector relative to the node host based on the minimum distance.
10574
+ * @param connectorHost
10575
+ * @param nodeHost
10576
+ * @private
10577
+ */
10578
+ _getSideByDelta(connectorHost, nodeHost) {
10579
+ let result;
10580
+ const childRect = RectExtensions.fromElement(connectorHost);
10581
+ const parentRect = nodeHost.getBoundingClientRect();
10582
+ const deltaLeft = childRect.gravityCenter.x - parentRect.left;
10583
+ const deltaRight = parentRect.right - childRect.gravityCenter.x;
10584
+ const deltaTop = childRect.gravityCenter.y - parentRect.top;
10585
+ const deltaBottom = parentRect.bottom - childRect.gravityCenter.y;
10586
+ const minDelta = Math.min(deltaLeft, deltaRight, deltaTop, deltaBottom);
10587
+ if (minDelta === deltaLeft) {
10588
+ result = EFConnectableSide.LEFT;
10589
+ }
10590
+ else if (minDelta === deltaRight) {
10591
+ result = EFConnectableSide.RIGHT;
10592
+ }
10593
+ else if (minDelta === deltaTop) {
10594
+ result = EFConnectableSide.TOP;
10595
+ }
10596
+ else {
10597
+ result = EFConnectableSide.BOTTOM;
10598
+ }
10599
+ return result;
10600
+ }
10601
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateConnectableSideByInternalPosition, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
10602
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateConnectableSideByInternalPosition });
10603
+ };
10604
+ CalculateConnectableSideByInternalPosition = __decorate([
10605
+ FExecutionRegister(CalculateConnectableSideByInternalPositionRequest)
10606
+ ], CalculateConnectableSideByInternalPosition);
10607
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateConnectableSideByInternalPosition, decorators: [{
10608
+ type: Injectable
10609
+ }] });
10610
+
10611
+ /**
10612
+ * Execution that calculates the connectable side for a connector
10613
+ * based on the positions of its connected connectors.
10614
+ */
10615
+ let CalculateConnectableSideByConnectedPositions = class CalculateConnectableSideByConnectedPositions {
10616
+ _mediator = inject(FMediator);
10617
+ /**
10618
+ * Handles the request to calculate the connectable side for a connector
10619
+ * based on the positions of its connected connectors.
10620
+ *
10621
+ * @param request - Contains the connector host element and its connected connectors.
10622
+ * @returns {EFConnectableSide} - The calculated connectable side.
10623
+ */
10624
+ handle({ connector, }) {
10625
+ const selfCenter = RectExtensions.fromElement(connector.hostElement).gravityCenter;
10626
+ const targetCenters = this._getConnectedCenters(connector.hostElement, connector.toConnector);
10627
+ if (!targetCenters.length) {
10628
+ return this._mediator.execute(new CalculateConnectableSideByInternalPositionRequest(connector));
10629
+ }
10630
+ const avg = this._calculateAveragePoint(targetCenters);
10631
+ return this._determineSide(selfCenter, avg);
10632
+ }
10633
+ /**
10634
+ * Extracts the gravity centers of connected connectors, excluding the current connector.
10635
+ *
10636
+ * @param selfHost - The host element of the current connector.
10637
+ * @param connected - The list of connected connectors.
10638
+ * @returns {Array<{x: number, y: number}>} - An array of gravity center coordinates.
10639
+ */
10640
+ _getConnectedCenters(selfHost, connected) {
10641
+ return (connected ?? [])
10642
+ .map((c) => c?.hostElement)
10643
+ .filter((el) => !!el && el !== selfHost)
10644
+ .map((el) => RectExtensions.fromElement(el).gravityCenter);
10645
+ }
10646
+ /**
10647
+ * Calculates the average point (center of mass) from a set of points.
10648
+ *
10649
+ * @param points - An array of point objects with x and y coordinates.
10650
+ * @returns {{x: number, y: number}} - The average x and y coordinate.
10651
+ */
10652
+ _calculateAveragePoint(points) {
10653
+ const sum = points.reduce((result, p) => {
10654
+ result.x += p.x;
10655
+ result.y += p.y;
10656
+ return result;
10657
+ }, PointExtensions.initialize());
10658
+ return {
10659
+ x: sum.x / points.length,
10660
+ y: sum.y / points.length,
10661
+ };
10662
+ }
10663
+ /**
10664
+ * Determines the connectable side of the current connector relative to the
10665
+ * average position of its connected connectors.
10666
+ *
10667
+ * @param self - The gravity center of the current connector.
10668
+ * @param avg - The average gravity center of connected connectors.
10669
+ * @returns {EFConnectableSide} - The chosen side (LEFT, RIGHT, TOP, BOTTOM).
10670
+ */
10671
+ _determineSide(self, avg) {
10672
+ const dx = avg.x - self.x;
10673
+ const dy = avg.y - self.y;
10674
+ const snapEps = 2; // px — hysteresis threshold to avoid side-flipping near diagonals
10675
+ if (Math.abs(dx) - Math.abs(dy) > snapEps) {
10676
+ return dx < 0 ? EFConnectableSide.LEFT : EFConnectableSide.RIGHT;
10677
+ }
10678
+ if (Math.abs(dy) - Math.abs(dx) > snapEps) {
10679
+ return dy < 0 ? EFConnectableSide.TOP : EFConnectableSide.BOTTOM;
10680
+ }
10681
+ // When differences are nearly equal, prefer vertical orientation for stability
10682
+ return dy < 0 ? EFConnectableSide.TOP : EFConnectableSide.BOTTOM;
10683
+ }
10684
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateConnectableSideByConnectedPositions, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
10685
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateConnectableSideByConnectedPositions });
10686
+ };
10687
+ CalculateConnectableSideByConnectedPositions = __decorate([
10688
+ FExecutionRegister(CalculateConnectableSideByConnectedPositionsRequest)
10689
+ ], CalculateConnectableSideByConnectedPositions);
10690
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateConnectableSideByConnectedPositions, decorators: [{
10691
+ type: Injectable
10692
+ }] });
10693
+
10694
+ class CalculateNodeConnectorsConnectableSidesRequest {
10695
+ node;
10696
+ static fToken = Symbol('CalculateNodeConnectorsConnectableSidesRequest');
10697
+ constructor(node) {
10698
+ this.node = node;
10699
+ }
10700
+ }
10701
+
10702
+ /**
10703
+ * Execution that calculates connectable sides for all connectors of a node.
10704
+ *
10705
+ * Responsibility:
10706
+ * - For each connector, decide the effective connectable side according to:
10707
+ * - AUTO -> by internal position relative to node host
10708
+ * - CALCULATE -> by positions of connected connectors
10709
+ * - explicit -> use the user-defined side as-is
10710
+ * - For each `toConnector` whose user side is CALCULATE, recalculate it as well.
10711
+ */
10712
+ let CalculateNodeConnectorsConnectableSides = class CalculateNodeConnectorsConnectableSides {
10713
+ _mediator = inject(FMediator);
10714
+ /**
10715
+ * Orchestrates side calculation for all connectors of the given node.
10716
+ *
10717
+ * @param request.node - Node whose connectors should be recalculated.
10718
+ */
10719
+ handle({ node }) {
10720
+ node.connectors.forEach((connector) => {
10721
+ this._updateConnectorSide(connector);
10722
+ this._updateConnectedTargets(connector);
10723
+ });
10724
+ }
10725
+ /**
10726
+ * Calculates and assigns the connectable side for a single connector.
10727
+ *
10728
+ * @param connector - The connector being updated.
10729
+ */
10730
+ _updateConnectorSide(connector) {
10731
+ connector.fConnectableSide = this._resolveSideForConnector(connector);
10732
+ }
10733
+ /**
10734
+ * Recalculates connectable sides for all `toConnector` items that are marked as CALCULATE.
10735
+ *
10736
+ * @param source - The source connector whose outgoing connections should be processed.
10737
+ */
10738
+ _updateConnectedTargets(source) {
10739
+ source.toConnector.forEach((target) => {
10740
+ if (target.userFConnectableSide === EFConnectableSide.CALCULATE) {
10741
+ target.fConnectableSide = this._resolveSideByConnectedPositions(target);
10742
+ }
10743
+ });
10744
+ }
10745
+ /**
10746
+ * Resolves the effective side for a connector according to its user preference.
10747
+ *
10748
+ * @param connector - The connector to resolve side for.
10749
+ * @returns {EFConnectableSide} - The resolved side.
10750
+ */
10751
+ _resolveSideForConnector(connector) {
10752
+ const preference = connector.userFConnectableSide;
10753
+ if (preference === EFConnectableSide.AUTO) {
10754
+ return this._resolveSideByInternalPosition(connector);
10755
+ }
10756
+ if (preference === EFConnectableSide.CALCULATE) {
10757
+ return this._resolveSideByConnectedPositions(connector);
10758
+ }
10759
+ // Explicit side set by the user
10760
+ return preference;
10761
+ }
10762
+ /**
10763
+ * Calculates side using the connector's internal position relative to the node host.
10764
+ * Delegates to `CalculateConnectableSideByInternalPositionRequest`.
10765
+ *
10766
+ * @param connector - Current connector.
10767
+ * @returns {EFConnectableSide}
10768
+ */
10769
+ _resolveSideByInternalPosition(connector) {
10770
+ return this._mediator.execute(new CalculateConnectableSideByInternalPositionRequest(connector));
10771
+ }
10772
+ /**
10773
+ * Calculates side using average positions of connectors connected to the given connector.
10774
+ * Delegates to `CalculateConnectableSideByConnectedPositionsRequest`.
10775
+ *
10776
+ * @param connector - Current connector.
10777
+ * @returns {EFConnectableSide}
10778
+ */
10779
+ _resolveSideByConnectedPositions(connector) {
10780
+ return this._mediator.execute(new CalculateConnectableSideByConnectedPositionsRequest(connector));
10781
+ }
10782
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateNodeConnectorsConnectableSides, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
10783
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateNodeConnectorsConnectableSides });
10784
+ };
10785
+ CalculateNodeConnectorsConnectableSides = __decorate([
10786
+ FExecutionRegister(CalculateNodeConnectorsConnectableSidesRequest)
10787
+ ], CalculateNodeConnectorsConnectableSides);
10788
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalculateNodeConnectorsConnectableSides, decorators: [{
10789
+ type: Injectable
10790
+ }] });
10791
+
10518
10792
  class CalculateNodesBoundingBoxRequest {
10519
10793
  static fToken = Symbol('CalculateNodesBoundingBoxRequest');
10520
10794
  }
@@ -10833,79 +11107,23 @@ class UpdateNodeWhenStateOrSizeChangedRequest {
10833
11107
  */
10834
11108
  let UpdateNodeWhenStateOrSizeChanged = class UpdateNodeWhenStateOrSizeChanged {
10835
11109
  _mediator = inject(FMediator);
10836
- _store = inject(FComponentsStore);
10837
11110
  /**
10838
11111
  * Handles the request to update the node's connectors based on state or size changes.
10839
11112
  * It listens for resize events and recalculates the connectable sides of the connectors.
10840
11113
  * @param request
10841
11114
  */
10842
11115
  handle({ nodeOrGroup, destroyRef }) {
10843
- const { hostElement, connectors, stateChanges } = nodeOrGroup;
10844
- new FChannelHub(new FResizeChannel(hostElement), stateChanges).pipe(notifyOnStart(), debounceTime(10)).listen(destroyRef, () => {
10845
- this._calculateConnectorsConnectableSide(connectors, hostElement);
11116
+ const { hostElement, stateChanges } = nodeOrGroup;
11117
+ new FChannelHub(new FResizeChannel(hostElement), stateChanges)
11118
+ .pipe(notifyOnStart(), debounceTime(10))
11119
+ .listen(destroyRef, () => {
10846
11120
  this._mediator.execute(new NotifyDataChangedRequest());
10847
11121
  if (!this._isDragging()) {
11122
+ this._mediator.execute(new CalculateNodeConnectorsConnectableSidesRequest(nodeOrGroup));
10848
11123
  this._mediator.execute(new FitToChildNodesAndGroupsRequest(nodeOrGroup));
10849
11124
  }
10850
11125
  });
10851
11126
  }
10852
- /**
10853
- * Calculates the connectable side for each connector based on its position relative to the node host.
10854
- * @param fConnectors
10855
- * @param fNodeHost
10856
- * @private
10857
- */
10858
- _calculateConnectorsConnectableSide(fConnectors, fNodeHost) {
10859
- fConnectors.forEach((x) => {
10860
- x.fConnectableSide = this._calculateConnectorConnectableSide(x, fNodeHost);
10861
- });
10862
- }
10863
- /**
10864
- * Calculates the connectable side of a connector based on its user-defined side or its position relative to the node host.
10865
- * @param fConnector
10866
- * @param fNodeHost
10867
- * @returns {EFConnectableSide}
10868
- * @private
10869
- */
10870
- _calculateConnectorConnectableSide(fConnector, fNodeHost) {
10871
- let result;
10872
- if (fConnector.userFConnectableSide === EFConnectableSide.AUTO) {
10873
- result = this._getSideByDelta(fConnector.hostElement, fNodeHost);
10874
- }
10875
- else {
10876
- result = fConnector.userFConnectableSide;
10877
- }
10878
- return result;
10879
- }
10880
- /**
10881
- * Determines the side of the connector relative to the node host based on the minimum distance.
10882
- * @param fConnectorHost
10883
- * @param fNodeHost
10884
- * @private
10885
- */
10886
- _getSideByDelta(fConnectorHost, fNodeHost) {
10887
- let result;
10888
- const childRect = RectExtensions.fromElement(fConnectorHost);
10889
- const parentRect = fNodeHost.getBoundingClientRect();
10890
- const deltaLeft = childRect.gravityCenter.x - parentRect.left;
10891
- const deltaRight = parentRect.right - childRect.gravityCenter.x;
10892
- const deltaTop = childRect.gravityCenter.y - parentRect.top;
10893
- const deltaBottom = parentRect.bottom - childRect.gravityCenter.y;
10894
- const minDelta = Math.min(deltaLeft, deltaRight, deltaTop, deltaBottom);
10895
- if (minDelta === deltaLeft) {
10896
- result = EFConnectableSide.LEFT;
10897
- }
10898
- else if (minDelta === deltaRight) {
10899
- result = EFConnectableSide.RIGHT;
10900
- }
10901
- else if (minDelta === deltaTop) {
10902
- result = EFConnectableSide.TOP;
10903
- }
10904
- else {
10905
- result = EFConnectableSide.BOTTOM;
10906
- }
10907
- return result;
10908
- }
10909
11127
  _isDragging() {
10910
11128
  return this._mediator.execute(new IsDragStartedRequest());
10911
11129
  }
@@ -10950,7 +11168,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
10950
11168
  */
10951
11169
  const F_NODE_FEATURES = [
10952
11170
  AddNodeToStore,
11171
+ CalculateConnectableSideByConnectedPositions,
11172
+ CalculateConnectableSideByInternalPosition,
10953
11173
  CalculateInputConnections,
11174
+ CalculateNodeConnectorsConnectableSides,
10954
11175
  CalculateNodesBoundingBox,
10955
11176
  CalculateNodesBoundingBoxNormalizedPosition,
10956
11177
  CalculateOutputConnections,
@@ -12212,5 +12433,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
12212
12433
  * Generated bundle index. Do not edit.
12213
12434
  */
12214
12435
 
12215
- 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, CANVAS_PROVIDERS, COMMON_PROVIDERS, CONNECTIONS_PROVIDERS, CONNECTION_GRADIENT, CONNECTION_PATH, CONNECTION_TEXT, CREATE_MOVE_NODE_DRAG_MODEL_FROM_SELECTION_PROVIDERS, CalculateCenterBetweenPointsHandler, CalculateCenterBetweenPointsRequest, CalculateChangedRectFromDifference, CalculateChangedRectFromDifferenceRequest, CalculateClosestConnector, CalculateClosestConnectorRequest, CalculateConnectionCenterHandler, CalculateConnectionCenterRequest, CalculateConnectionLineByBehavior, CalculateConnectionLineByBehaviorRequest, CalculateDirectChildrenUnionRect, CalculateDirectChildrenUnionRectRequest, CalculateDragLimits, CalculateDragLimitsRequest, CalculateFlowPointFromMinimapPointExecution, CalculateFlowPointFromMinimapPointRequest, CalculateInputConnections, CalculateInputConnectionsRequest, CalculateNodesBoundingBox, CalculateNodesBoundingBoxNormalizedPosition, CalculateNodesBoundingBoxNormalizedPositionRequest, CalculateNodesBoundingBoxRequest, CalculateOutputConnections, CalculateOutputConnectionsRequest, CalculateResizeLimits, CalculateResizeLimitsRequest, CenterGroupOrNodeExecution, CenterGroupOrNodeRequest, ClearSelectionExecution, ClearSelectionRequest, ConnectionContentLayoutEngine, CreateConnectionMarkersExecution, CreateConnectionMarkersRequest, 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, FCreateConnectionDragHandler, FCreateConnectionDragHandlerPreparationExecution, FCreateConnectionDragHandlerPreparationRequest, FCreateConnectionEvent, FCreateConnectionFinalizeExecution, FCreateConnectionFinalizeRequest, FCreateConnectionFromOutletPreparationExecution, FCreateConnectionFromOutletPreparationRequest, FCreateConnectionFromOutputPreparationExecution, FCreateConnectionFromOutputPreparationRequest, FCreateConnectionPreparationExecution, FCreateConnectionPreparationRequest, 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, GetAllCanBeConnectedInputsAndRectsExecution, GetAllCanBeConnectedInputsAndRectsRequest, GetAllCanBeConnectedSourceConnectorsAndRectsExecution, GetAllCanBeConnectedSourceConnectorsAndRectsRequest, 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, GetNodes, GetNodesRequest, 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, expandRectFromBaseline, fixedCenterBehavior, fixedOutboundBehavior, floatingBehavior, getExternalItem, getMarkerEndId, getMarkerSelectedEndId, getMarkerSelectedStartId, getMarkerStartId, infinityMinMax, isClosestConnectorInsideSnapThreshold, isDragBlocker, isDragHandleEnd, isDragHandleStart, isExternalItem, isMobile, isNode, isNodeOutlet, isNodeOutput, isPointerInsideStartOrEndDragHandles, isRotateHandle, isValidEventTrigger, mixinChangeSelection, mixinChangeVisibility, notifyOnStart, roundedRectFromPoint, stringAttribute, transitionEnd };
12436
+ 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, CANVAS_PROVIDERS, COMMON_PROVIDERS, 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, CalculateDirectChildrenUnionRect, CalculateDirectChildrenUnionRectRequest, CalculateDragLimits, CalculateDragLimitsRequest, CalculateFlowPointFromMinimapPointExecution, CalculateFlowPointFromMinimapPointRequest, CalculateInputConnections, CalculateInputConnectionsRequest, CalculateNodeConnectorsConnectableSides, CalculateNodeConnectorsConnectableSidesRequest, CalculateNodesBoundingBox, CalculateNodesBoundingBoxNormalizedPosition, CalculateNodesBoundingBoxNormalizedPositionRequest, CalculateNodesBoundingBoxRequest, CalculateOutputConnections, CalculateOutputConnectionsRequest, CalculateResizeLimits, CalculateResizeLimitsRequest, CenterGroupOrNodeExecution, CenterGroupOrNodeRequest, ClearSelectionExecution, ClearSelectionRequest, ConnectionContentLayoutEngine, CreateConnectionMarkersExecution, CreateConnectionMarkersRequest, 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, FCreateConnectionDragHandler, FCreateConnectionDragHandlerPreparationExecution, FCreateConnectionDragHandlerPreparationRequest, FCreateConnectionEvent, FCreateConnectionFinalizeExecution, FCreateConnectionFinalizeRequest, FCreateConnectionFromOutletPreparationExecution, FCreateConnectionFromOutletPreparationRequest, FCreateConnectionFromOutputPreparationExecution, FCreateConnectionFromOutputPreparationRequest, FCreateConnectionPreparationExecution, FCreateConnectionPreparationRequest, 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, GetAllCanBeConnectedInputsAndRectsExecution, GetAllCanBeConnectedInputsAndRectsRequest, GetAllCanBeConnectedSourceConnectorsAndRectsExecution, GetAllCanBeConnectedSourceConnectorsAndRectsRequest, 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, GetNodes, GetNodesRequest, 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, expandRectFromBaseline, fixedCenterBehavior, fixedOutboundBehavior, floatingBehavior, getExternalItem, getMarkerEndId, getMarkerSelectedEndId, getMarkerSelectedStartId, getMarkerStartId, infinityMinMax, isClosestConnectorInsideSnapThreshold, isDragBlocker, isDragHandleEnd, isDragHandleStart, isExternalItem, isMobile, isNode, isNodeOutlet, isNodeOutput, isPointerInsideStartOrEndDragHandles, isRotateHandle, isValidEventTrigger, mixinChangeSelection, mixinChangeVisibility, notifyOnStart, roundedRectFromPoint, stringAttribute, transitionEnd };
12216
12437
  //# sourceMappingURL=foblex-flow.mjs.map