@foblex/flow 17.0.9 → 17.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/domain/f-background/providers.d.ts +1 -1
  2. package/domain/f-canvas/providers.d.ts +1 -1
  3. package/domain/f-draggable/providers.d.ts +1 -1
  4. package/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.d.ts +2 -3
  5. package/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.d.ts +2 -2
  6. package/domain/f-flow/get-flow-state/get-flow-state.execution.d.ts +4 -6
  7. package/domain/f-flow/get-flow-state/providers.d.ts +1 -1
  8. package/domain/f-flow/providers.d.ts +1 -1
  9. package/domain/f-node/calculate-nodes-bounding-box-normalized-position/calculate-nodes-bounding-box-normalized-position.request.d.ts +3 -0
  10. package/domain/f-node/providers.d.ts +1 -1
  11. package/domain/index.d.ts +1 -0
  12. package/domain/log-execution-time.d.ts +1 -0
  13. package/domain/providers.d.ts +1 -1
  14. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.mjs +17 -19
  15. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.mjs +5 -5
  16. package/esm2022/domain/f-flow/get-flow-state/get-flow-state.execution.mjs +14 -19
  17. package/esm2022/domain/f-line-alignment/add-line-alignment-to-store/add-line-alignment-to-store.execution.mjs +2 -2
  18. package/esm2022/domain/f-line-alignment/remove-line-alignment-from-store/remove-line-alignment-from-store.execution.mjs +2 -2
  19. package/esm2022/domain/f-node/calculate-nodes-bounding-box-normalized-position/calculate-nodes-bounding-box-normalized-position.execution.mjs +4 -4
  20. package/esm2022/domain/f-node/calculate-nodes-bounding-box-normalized-position/calculate-nodes-bounding-box-normalized-position.request.mjs +5 -1
  21. package/esm2022/domain/index.mjs +2 -1
  22. package/esm2022/domain/log-execution-time.mjs +16 -0
  23. package/esm2022/f-draggable/connections/create-connection/create-connection.drag-handler.mjs +3 -3
  24. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.execution.mjs +33 -33
  25. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.execution.mjs +1 -1
  26. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.mjs +9 -3
  27. package/esm2022/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.execution.mjs +8 -17
  28. package/esm2022/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.request.mjs +6 -6
  29. package/esm2022/f-draggable/domain/is-connection-under-node/is-connection-under-node.execution.mjs +25 -19
  30. package/esm2022/f-draggable/f-draggable-data-context.mjs +4 -2
  31. package/esm2022/f-draggable/node/connection-base-drag-handler.mjs +1 -1
  32. package/esm2022/f-draggable/node/connection-source.drag-handler.mjs +5 -7
  33. package/esm2022/f-draggable/node/connection-target.drag-handler.mjs +5 -7
  34. package/esm2022/f-draggable/node/connection.drag-handler.mjs +5 -5
  35. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.mjs +37 -22
  36. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/calculate-common-node-move-restrictions.execution.mjs +40 -0
  37. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/calculate-common-node-move-restrictions.request.mjs +7 -0
  38. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/index.mjs +3 -0
  39. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-restrictions/calculate-node-move-restrictions.execution.mjs +42 -0
  40. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-restrictions/calculate-node-move-restrictions.request.mjs +9 -0
  41. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-restrictions/index.mjs +3 -0
  42. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.execution.mjs +16 -21
  43. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.execution.mjs +4 -4
  44. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/i-node-with-distance-restrictions.mjs +1 -1
  45. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/index.mjs +3 -2
  46. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/providers.mjs +5 -3
  47. package/esm2022/f-draggable/node/index.mjs +3 -1
  48. package/esm2022/f-draggable/node/line-alignment-preparation/index.mjs +3 -0
  49. package/esm2022/f-draggable/node/line-alignment-preparation/line-alignment-preparation.execution.mjs +67 -0
  50. package/esm2022/f-draggable/node/line-alignment-preparation/line-alignment-preparation.request.mjs +3 -0
  51. package/esm2022/f-draggable/node/line-alignment.drag-handler.mjs +61 -0
  52. package/esm2022/f-draggable/node/node-move-finalize/node-move-finalize.execution.mjs +5 -3
  53. package/esm2022/f-draggable/node/node-move-preparation/index.mjs +1 -2
  54. package/esm2022/f-draggable/node/node-move-preparation/node-move-preparation.execution.mjs +26 -21
  55. package/esm2022/f-draggable/node/node-move-preparation/providers.mjs +1 -3
  56. package/esm2022/f-draggable/node/node.drag-handler.mjs +13 -19
  57. package/esm2022/f-draggable/node/providers.mjs +3 -1
  58. package/esm2022/f-line-alignment/f-line-alignment-base.mjs +1 -1
  59. package/esm2022/f-line-alignment/f-line-alignment.component.mjs +12 -78
  60. package/esm2022/f-storage/f-components-store.mjs +2 -1
  61. package/f-backgroud/providers.d.ts +1 -1
  62. package/f-connection/providers.d.ts +1 -1
  63. package/f-connectors/providers.d.ts +1 -1
  64. package/f-draggable/connections/providers.d.ts +1 -1
  65. package/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.execution.d.ts +12 -13
  66. package/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.d.ts +2 -0
  67. package/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.execution.d.ts +3 -6
  68. package/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.request.d.ts +3 -3
  69. package/f-draggable/domain/is-connection-under-node/is-connection-under-node.execution.d.ts +3 -2
  70. package/f-draggable/domain/providers.d.ts +1 -1
  71. package/f-draggable/f-draggable-data-context.d.ts +1 -2
  72. package/f-draggable/node/connection-base-drag-handler.d.ts +2 -3
  73. package/f-draggable/node/connection-source.drag-handler.d.ts +3 -4
  74. package/f-draggable/node/connection-target.drag-handler.d.ts +3 -4
  75. package/f-draggable/node/connection.drag-handler.d.ts +3 -3
  76. package/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.d.ts +6 -3
  77. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/calculate-common-node-move-restrictions.execution.d.ts +13 -0
  78. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/calculate-common-node-move-restrictions.request.d.ts +5 -0
  79. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-common-node-move-restrictions/index.d.ts +2 -0
  80. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-restrictions/calculate-node-move-restrictions.execution.d.ts +12 -0
  81. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/{get-node-move-restrictions/get-node-move-restrictions.request.d.ts → calculate-node-move-restrictions/calculate-node-move-restrictions.request.d.ts} +1 -1
  82. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/calculate-node-move-restrictions/index.d.ts +2 -0
  83. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.execution.d.ts +4 -6
  84. package/f-draggable/node/create-move-nodes-drag-model-from-selection/i-node-with-distance-restrictions.d.ts +4 -4
  85. package/f-draggable/node/create-move-nodes-drag-model-from-selection/index.d.ts +2 -1
  86. package/f-draggable/node/create-move-nodes-drag-model-from-selection/providers.d.ts +3 -2
  87. package/f-draggable/node/index.d.ts +2 -0
  88. package/f-draggable/node/line-alignment-preparation/index.d.ts +2 -0
  89. package/f-draggable/node/line-alignment-preparation/line-alignment-preparation.execution.d.ts +21 -0
  90. package/f-draggable/node/line-alignment-preparation/line-alignment-preparation.request.d.ts +2 -0
  91. package/f-draggable/node/line-alignment.drag-handler.d.ts +20 -0
  92. package/f-draggable/node/node-move-preparation/index.d.ts +0 -1
  93. package/f-draggable/node/node-move-preparation/node-move-preparation.execution.d.ts +4 -3
  94. package/f-draggable/node/node-move-preparation/providers.d.ts +1 -2
  95. package/f-draggable/node/node.drag-handler.d.ts +4 -7
  96. package/f-draggable/node/providers.d.ts +2 -1
  97. package/f-draggable/node-resize/node-resize-preparation/providers.d.ts +1 -1
  98. package/f-draggable/node-resize/providers.d.ts +1 -1
  99. package/f-draggable/providers.d.ts +1 -1
  100. package/f-line-alignment/f-line-alignment-base.d.ts +2 -8
  101. package/f-line-alignment/f-line-alignment.component.d.ts +6 -25
  102. package/f-node/providers.d.ts +1 -1
  103. package/f-storage/f-components-store.d.ts +2 -0
  104. package/f-storage/providers.d.ts +1 -1
  105. package/fesm2022/foblex-flow.mjs +638 -544
  106. package/fesm2022/foblex-flow.mjs.map +1 -1
  107. package/package.json +2 -2
  108. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/get-node-move-restrictions.execution.mjs +0 -42
  109. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/get-node-move-restrictions.request.mjs +0 -9
  110. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/i-node-move-restrictions.mjs +0 -2
  111. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/index.mjs +0 -4
  112. package/esm2022/f-draggable/node/node-move-preparation/node-move-preparation.validator.mjs +0 -39
  113. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/get-node-move-restrictions.execution.d.ts +0 -12
  114. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/i-node-move-restrictions.d.ts +0 -5
  115. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/index.d.ts +0 -3
  116. package/f-draggable/node/node-move-preparation/node-move-preparation.validator.d.ts +0 -14
@@ -2,4 +2,4 @@ import { AddPatternToBackgroundExecution } from './add-pattern-to-background';
2
2
  import { AddBackgroundToStoreExecution } from './add-background-to-store';
3
3
  import { RemoveBackgroundFromStoreExecution } from './remove-background-from-store';
4
4
  import { SetBackgroundTransformExecution } from './set-background-transform';
5
- export declare const F_BACKGROUND_FEATURES: (typeof AddBackgroundToStoreExecution | typeof AddPatternToBackgroundExecution | typeof RemoveBackgroundFromStoreExecution | typeof SetBackgroundTransformExecution)[];
5
+ export declare const F_BACKGROUND_FEATURES: (typeof AddPatternToBackgroundExecution | typeof AddBackgroundToStoreExecution | typeof RemoveBackgroundFromStoreExecution | typeof SetBackgroundTransformExecution)[];
@@ -9,4 +9,4 @@ import { AddCanvasToStoreExecution } from './add-canvas-to-store';
9
9
  import { RemoveCanvasFromStoreExecution } from './remove-canvas-from-store';
10
10
  import { GetCanvasExecution } from './get-canvas';
11
11
  import { RedrawCanvasWithAnimationExecution } from './redraw-canvas-with-animation';
12
- export declare const F_CANVAS_FEATURES: (typeof AddCanvasToStoreExecution | typeof CenterGroupOrNodeExecution | typeof FitToFlowExecution | typeof GetCanvasExecution | typeof InputCanvasPositionExecution | typeof InputCanvasScaleExecution | typeof RedrawCanvasWithAnimationExecution | typeof RemoveCanvasFromStoreExecution | typeof ResetScaleExecution | typeof ResetScaleAndCenterExecution | typeof UpdateScaleExecution)[];
12
+ export declare const F_CANVAS_FEATURES: (typeof ResetScaleAndCenterExecution | typeof FitToFlowExecution | typeof CenterGroupOrNodeExecution | typeof AddCanvasToStoreExecution | typeof GetCanvasExecution | typeof InputCanvasPositionExecution | typeof InputCanvasScaleExecution | typeof RedrawCanvasWithAnimationExecution | typeof RemoveCanvasFromStoreExecution | typeof ResetScaleExecution | typeof UpdateScaleExecution)[];
@@ -7,4 +7,4 @@ import { InitializeDragSequenceExecution } from './initialize-drag-sequence';
7
7
  import { OnPointerMoveExecution } from './on-pointer-move';
8
8
  import { IsDragStartedExecution } from './is-drag-started';
9
9
  import { StartDragSequenceExecution } from './start-drag-sequence';
10
- export declare const F_DRAGGABLE_FEATURES: (typeof EmitSelectionChangeEventExecution | typeof IsDragStartedExecution | typeof AddDndToStoreExecution | typeof EndDragSequenceExecution | typeof OnPointerMoveExecution | typeof InitializeDragSequenceExecution | typeof PrepareDragSequenceExecution | typeof StartDragSequenceExecution | typeof RemoveDndFromStoreExecution)[];
10
+ export declare const F_DRAGGABLE_FEATURES: (typeof AddDndToStoreExecution | typeof EmitSelectionChangeEventExecution | typeof EndDragSequenceExecution | typeof OnPointerMoveExecution | typeof InitializeDragSequenceExecution | typeof PrepareDragSequenceExecution | typeof IsDragStartedExecution | typeof StartDragSequenceExecution | typeof RemoveDndFromStoreExecution)[];
@@ -1,12 +1,11 @@
1
1
  import { GetFlowStateConnectionsRequest } from './get-flow-state-connections-request';
2
2
  import { IExecution } from '@foblex/mediator';
3
- import { FComponentsStore } from '../../../../f-storage';
4
3
  import { IFFlowStateConnection } from '../i-f-flow-state-connection';
5
4
  import * as i0 from "@angular/core";
6
5
  export declare class GetFlowStateConnectionsExecution implements IExecution<GetFlowStateConnectionsRequest, IFFlowStateConnection[]> {
7
- private fComponentsStore;
8
- constructor(fComponentsStore: FComponentsStore);
6
+ private _fComponentsStore;
9
7
  handle(request: GetFlowStateConnectionsRequest): IFFlowStateConnection[];
8
+ private _mapToConnectionState;
10
9
  static ɵfac: i0.ɵɵFactoryDeclaration<GetFlowStateConnectionsExecution, never>;
11
10
  static ɵprov: i0.ɵɵInjectableDeclaration<GetFlowStateConnectionsExecution>;
12
11
  }
@@ -7,8 +7,8 @@ export declare class GetFlowStateNodesExecution implements IExecution<GetFlowSta
7
7
  private fComponentsStore;
8
8
  constructor(fComponentsStore: FComponentsStore);
9
9
  handle(request: GetFlowStateNodesRequest): IFFlowStateNode[];
10
- private getOutputs;
11
- private getInputs;
10
+ private _getOutputs;
11
+ private _getInputs;
12
12
  static ɵfac: i0.ɵɵFactoryDeclaration<GetFlowStateNodesExecution, never>;
13
13
  static ɵprov: i0.ɵɵInjectableDeclaration<GetFlowStateNodesExecution>;
14
14
  }
@@ -1,14 +1,12 @@
1
1
  import { GetFlowStateRequest } from './get-flow-state.request';
2
- import { FMediator, IExecution } from '@foblex/mediator';
2
+ import { IExecution } from '@foblex/mediator';
3
3
  import { IFFlowState } from './i-f-flow-state';
4
- import { FComponentsStore } from '../../../f-storage';
5
4
  import * as i0 from "@angular/core";
6
5
  export declare class GetFlowStateExecution implements IExecution<GetFlowStateRequest, IFFlowState> {
7
- private fComponentsStore;
8
- private fMediator;
9
- constructor(fComponentsStore: FComponentsStore, fMediator: FMediator);
6
+ private _fMediator;
7
+ private _fComponentsStore;
10
8
  handle(payload: GetFlowStateRequest): IFFlowState;
11
- private getCanvasPosition;
9
+ private _getCanvasPosition;
12
10
  static ɵfac: i0.ɵɵFactoryDeclaration<GetFlowStateExecution, never>;
13
11
  static ɵprov: i0.ɵɵInjectableDeclaration<GetFlowStateExecution>;
14
12
  }
@@ -1,4 +1,4 @@
1
1
  import { GetFlowStateExecution } from './get-flow-state.execution';
2
2
  import { GetFlowStateNodesExecution } from './get-flow-state-nodes';
3
3
  import { GetFlowStateConnectionsExecution } from './get-flow-state-connections';
4
- export declare const GET_FLOW_STATE_PROVIDERS: (typeof GetFlowStateExecution | typeof GetFlowStateNodesExecution | typeof GetFlowStateConnectionsExecution)[];
4
+ export declare const GET_FLOW_STATE_PROVIDERS: (typeof GetFlowStateConnectionsExecution | typeof GetFlowStateNodesExecution | typeof GetFlowStateExecution)[];
@@ -2,4 +2,4 @@ import { GetFlowHostElementExecution } from './get-flow-host-element';
2
2
  import { AddFlowToStoreExecution } from './add-flow-to-store';
3
3
  import { RemoveFlowFromStoreExecution } from './remove-flow-from-store';
4
4
  import { GetFlowExecution } from './get-flow';
5
- export declare const F_FLOW_FEATURES: (typeof AddFlowToStoreExecution | typeof GetFlowExecution | typeof GetFlowHostElementExecution | typeof import("./get-flow-state").GetFlowStateExecution | typeof import("./get-flow-state").GetFlowStateNodesExecution | typeof import("./get-flow-state").GetFlowStateConnectionsExecution | typeof RemoveFlowFromStoreExecution)[];
5
+ export declare const F_FLOW_FEATURES: (typeof import("./get-flow-state").GetFlowStateConnectionsExecution | typeof import("./get-flow-state").GetFlowStateNodesExecution | typeof import("./get-flow-state").GetFlowStateExecution | typeof AddFlowToStoreExecution | typeof GetFlowExecution | typeof GetFlowHostElementExecution | typeof RemoveFlowFromStoreExecution)[];
@@ -1,2 +1,5 @@
1
+ import { FNodeBase } from '../../../f-node';
1
2
  export declare class CalculateNodesBoundingBoxNormalizedPositionRequest {
3
+ fNodes?: FNodeBase[] | undefined;
4
+ constructor(fNodes?: FNodeBase[] | undefined);
2
5
  }
@@ -6,4 +6,4 @@ import { CalculateNodesBoundingBoxExecution } from './calculate-nodes-bounding-b
6
6
  import { CalculateNodesBoundingBoxNormalizedPositionExecution } from './calculate-nodes-bounding-box-normalized-position';
7
7
  import { GetNodePaddingExecution } from './get-node-padding';
8
8
  import { GetParentNodesExecution } from './get-parent-nodes';
9
- export declare const F_NODE_FEATURES: (typeof GetParentNodesExecution | typeof AddNodeToStoreExecution | typeof CalculateNodesBoundingBoxExecution | typeof CalculateNodesBoundingBoxNormalizedPositionExecution | typeof GetNodePaddingExecution | typeof GetNodesExecution | typeof UpdateNodeWhenStateOrSizeChangedExecution | typeof RemoveNodeFromStoreExecution)[];
9
+ export declare const F_NODE_FEATURES: (typeof CalculateNodesBoundingBoxNormalizedPositionExecution | typeof AddNodeToStoreExecution | typeof CalculateNodesBoundingBoxExecution | typeof GetNodePaddingExecution | typeof GetNodesExecution | typeof GetParentNodesExecution | typeof UpdateNodeWhenStateOrSizeChangedExecution | typeof RemoveNodeFromStoreExecution)[];
package/domain/index.d.ts CHANGED
@@ -16,5 +16,6 @@ export * from './update-item-and-children-layers';
16
16
  export * from './create-dom-element';
17
17
  export * from './i-map';
18
18
  export * from './is-mobile';
19
+ export * from './log-execution-time';
19
20
  export * from './providers';
20
21
  export * from './transition-end';
@@ -0,0 +1 @@
1
+ export declare function LogExecutionTime(label?: string): MethodDecorator;
@@ -4,4 +4,4 @@ import { GetNormalizedPointExecution } from './get-normalized-point';
4
4
  import { SortItemLayersExecution, SortItemsByParentExecution, SortNodeLayersExecution } from './sort-item-layers';
5
5
  import { GetDeepChildrenNodesAndGroupsExecution } from './get-deep-children-nodes-and-groups';
6
6
  import { GetElementRoundedRectExecution } from './get-element-rounded-rect';
7
- export declare const COMMON_PROVIDERS: (typeof GetElementRoundedRectExecution | typeof import("./f-node").GetParentNodesExecution | typeof import("./f-canvas").AddCanvasToStoreExecution | typeof import("./f-canvas").CenterGroupOrNodeExecution | typeof import("./f-canvas").FitToFlowExecution | typeof import("./f-canvas").InputCanvasPositionExecution | typeof import("./f-canvas").InputCanvasScaleExecution | typeof import("./f-canvas").RedrawCanvasWithAnimationExecution | typeof import("./f-canvas").ResetScaleAndCenterExecution | typeof import("./f-canvas").UpdateScaleExecution | typeof import("./f-connection").AddConnectionForCreateToStoreExecution | typeof import("./f-connection").AddConnectionMarkerToStoreExecution | typeof import("./f-connection").AddConnectionToStoreExecution | typeof import("./f-connection").AddSnapConnectionToStoreExecution | typeof import("./f-connection").CreateConnectionMarkersExecution | typeof import("./f-connection").FindClosestInputExecution | typeof import("./f-connection").GetAllCanBeConnectedInputPositionsExecution | typeof import("./f-connection").CalculateConnectionLineByBehaviorExecution | typeof import("./f-connection").GetConnectorWithRectExecution | typeof import("./f-connection").RedrawConnectionsExecution | typeof import("./f-connection").RemoveConnectionFromStoreExecution | typeof import("./f-connection").RemoveConnectionMarkerFromStoreExecution | typeof import("./f-background").AddBackgroundToStoreExecution | typeof import("./f-background").AddPatternToBackgroundExecution | typeof import("./f-background").RemoveBackgroundFromStoreExecution | typeof import("./f-background").SetBackgroundTransformExecution | typeof import("./f-connectors").AddInputToStoreExecution | typeof import("./f-connectors").AddOutletToStoreExecution | typeof import("./f-connectors").AddOutputToStoreExecution | typeof import("./f-connectors").RemoveInputFromStoreExecution | typeof import("./f-connectors").RemoveOutletFromStoreExecution | typeof import("./f-connectors").RemoveOutputFromStoreExecution | typeof import("./f-draggable").AddDndToStoreExecution | typeof import("./f-draggable").OnPointerMoveExecution | typeof import("./f-flow").AddFlowToStoreExecution | typeof import("./f-flow").GetFlowStateExecution | typeof import("./f-flow").GetFlowStateNodesExecution | typeof import("./f-flow").GetFlowStateConnectionsExecution | typeof import("./f-line-alignment").AddLineAlignmentToStoreExecution | typeof import("./f-node").AddNodeToStoreExecution | typeof import("./f-node").GetNodePaddingExecution | typeof import("./f-node").UpdateNodeWhenStateOrSizeChangedExecution | typeof import("./f-node").RemoveNodeFromStoreExecution | typeof import("./f-selection").ClearSelectionExecution | typeof import("./f-selection").GetCanBeSelectedItemsExecution | typeof import("./f-selection").SelectExecution | typeof import("./f-selection").SelectAllExecution | typeof import("./f-selection").SelectAndUpdateNodeLayerExecution | typeof GetDeepChildrenNodesAndGroupsExecution | typeof GetNormalizedElementRectExecution | typeof GetNormalizedPointExecution | typeof SortItemLayersExecution | typeof SortItemsByParentExecution | typeof SortNodeLayersExecution | typeof UpdateItemAndChildrenLayersExecution | typeof MoveFrontElementsBeforeTargetElementExecution)[];
7
+ export declare const COMMON_PROVIDERS: (typeof import("./f-flow").GetFlowStateNodesExecution | typeof import("./f-line-alignment").AddLineAlignmentToStoreExecution | typeof import("./f-node").CalculateNodesBoundingBoxNormalizedPositionExecution | typeof import("./f-canvas").ResetScaleAndCenterExecution | typeof import("./f-canvas").FitToFlowExecution | typeof import("./f-canvas").CenterGroupOrNodeExecution | typeof import("./f-background").AddPatternToBackgroundExecution | typeof import("./f-canvas").AddCanvasToStoreExecution | typeof import("./f-canvas").InputCanvasPositionExecution | typeof import("./f-canvas").InputCanvasScaleExecution | typeof import("./f-canvas").RedrawCanvasWithAnimationExecution | typeof import("./f-canvas").UpdateScaleExecution | typeof import("./f-connection").AddConnectionForCreateToStoreExecution | typeof import("./f-connection").AddConnectionMarkerToStoreExecution | typeof import("./f-connection").AddConnectionToStoreExecution | typeof import("./f-connection").AddSnapConnectionToStoreExecution | typeof import("./f-connection").CreateConnectionMarkersExecution | typeof import("./f-connection").FindClosestInputExecution | typeof import("./f-connection").GetAllCanBeConnectedInputPositionsExecution | typeof import("./f-connection").CalculateConnectionLineByBehaviorExecution | typeof import("./f-connection").GetConnectorWithRectExecution | typeof import("./f-connection").RedrawConnectionsExecution | typeof import("./f-connection").RemoveConnectionFromStoreExecution | typeof import("./f-connection").RemoveConnectionMarkerFromStoreExecution | typeof import("./f-background").AddBackgroundToStoreExecution | typeof import("./f-background").RemoveBackgroundFromStoreExecution | typeof import("./f-background").SetBackgroundTransformExecution | typeof import("./f-connectors").AddInputToStoreExecution | typeof import("./f-connectors").AddOutletToStoreExecution | typeof import("./f-connectors").AddOutputToStoreExecution | typeof import("./f-connectors").RemoveInputFromStoreExecution | typeof import("./f-connectors").RemoveOutletFromStoreExecution | typeof import("./f-connectors").RemoveOutputFromStoreExecution | typeof import("./f-draggable").AddDndToStoreExecution | typeof import("./f-draggable").OnPointerMoveExecution | typeof import("./f-flow").AddFlowToStoreExecution | typeof import("./f-node").AddNodeToStoreExecution | typeof import("./f-node").GetNodePaddingExecution | typeof import("./f-node").GetParentNodesExecution | typeof import("./f-node").UpdateNodeWhenStateOrSizeChangedExecution | typeof import("./f-node").RemoveNodeFromStoreExecution | typeof GetElementRoundedRectExecution | typeof import("./f-selection").ClearSelectionExecution | typeof import("./f-selection").GetCanBeSelectedItemsExecution | typeof import("./f-selection").SelectExecution | typeof import("./f-selection").SelectAllExecution | typeof import("./f-selection").SelectAndUpdateNodeLayerExecution | typeof GetDeepChildrenNodesAndGroupsExecution | typeof GetNormalizedElementRectExecution | typeof GetNormalizedPointExecution | typeof SortItemLayersExecution | typeof SortItemsByParentExecution | typeof SortNodeLayersExecution | typeof UpdateItemAndChildrenLayersExecution | typeof MoveFrontElementsBeforeTargetElementExecution)[];
@@ -1,27 +1,25 @@
1
1
  import { __decorate } from "tslib";
2
- import { Injectable } from '@angular/core';
2
+ import { inject, Injectable } from '@angular/core';
3
3
  import { GetFlowStateConnectionsRequest } from './get-flow-state-connections-request';
4
4
  import { FExecutionRegister } from '@foblex/mediator';
5
+ import { FComponentsStore } from '../../../../f-storage';
5
6
  import * as i0 from "@angular/core";
6
- import * as i1 from "../../../../f-storage";
7
7
  let GetFlowStateConnectionsExecution = class GetFlowStateConnectionsExecution {
8
- fComponentsStore;
9
- constructor(fComponentsStore) {
10
- this.fComponentsStore = fComponentsStore;
11
- }
8
+ _fComponentsStore = inject(FComponentsStore);
12
9
  handle(request) {
13
- return this.fComponentsStore.fConnections.map((x) => {
14
- return {
15
- id: x.fId,
16
- fOutputId: x.fOutputId,
17
- fInputId: x.fInputId,
18
- fType: x.fType,
19
- fBehavior: x.fBehavior,
20
- isSelected: x.isSelected()
21
- };
22
- });
10
+ return this._fComponentsStore.fConnections.map(this._mapToConnectionState);
11
+ }
12
+ _mapToConnectionState(x) {
13
+ return {
14
+ id: x.fId,
15
+ fOutputId: x.fOutputId,
16
+ fInputId: x.fInputId,
17
+ fType: x.fType,
18
+ fBehavior: x.fBehavior,
19
+ isSelected: x.isSelected()
20
+ };
23
21
  }
24
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetFlowStateConnectionsExecution, deps: [{ token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Injectable });
22
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetFlowStateConnectionsExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
25
23
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetFlowStateConnectionsExecution });
26
24
  };
27
25
  GetFlowStateConnectionsExecution = __decorate([
@@ -30,5 +28,5 @@ GetFlowStateConnectionsExecution = __decorate([
30
28
  export { GetFlowStateConnectionsExecution };
31
29
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetFlowStateConnectionsExecution, decorators: [{
32
30
  type: Injectable
33
- }], ctorParameters: () => [{ type: i1.FComponentsStore }] });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWZsb3ctc3RhdGUtY29ubmVjdGlvbnMuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1mbG93L2dldC1mbG93LXN0YXRlL2dldC1mbG93LXN0YXRlLWNvbm5lY3Rpb25zL2dldC1mbG93LXN0YXRlLWNvbm5lY3Rpb25zLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN0RixPQUFPLEVBQUUsa0JBQWtCLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQzs7O0FBTTNELElBQU0sZ0NBQWdDLEdBQXRDLE1BQU0sZ0NBQWdDO0lBR2pDO0lBRFYsWUFDVSxnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUU1QyxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQXVDO1FBQ25ELE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNsRCxPQUFPO2dCQUNMLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRztnQkFDVCxTQUFTLEVBQUUsQ0FBQyxDQUFDLFNBQVM7Z0JBQ3RCLFFBQVEsRUFBRSxDQUFDLENBQUMsUUFBUTtnQkFDcEIsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLO2dCQUNkLFNBQVMsRUFBRSxDQUFDLENBQUMsU0FBUztnQkFDdEIsVUFBVSxFQUFFLENBQUMsQ0FBQyxVQUFVLEVBQUU7YUFDM0IsQ0FBQTtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt1R0FsQlUsZ0NBQWdDOzJHQUFoQyxnQ0FBZ0M7O0FBQWhDLGdDQUFnQztJQUQ1QyxrQkFBa0IsQ0FBQyw4QkFBOEIsQ0FBQztHQUN0QyxnQ0FBZ0MsQ0FtQjVDOzsyRkFuQlksZ0NBQWdDO2tCQUY1QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR2V0Rmxvd1N0YXRlQ29ubmVjdGlvbnNSZXF1ZXN0IH0gZnJvbSAnLi9nZXQtZmxvdy1zdGF0ZS1jb25uZWN0aW9ucy1yZXF1ZXN0JztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBJRkZsb3dTdGF0ZUNvbm5lY3Rpb24gfSBmcm9tICcuLi9pLWYtZmxvdy1zdGF0ZS1jb25uZWN0aW9uJztcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihHZXRGbG93U3RhdGVDb25uZWN0aW9uc1JlcXVlc3QpXG5leHBvcnQgY2xhc3MgR2V0Rmxvd1N0YXRlQ29ubmVjdGlvbnNFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPEdldEZsb3dTdGF0ZUNvbm5lY3Rpb25zUmVxdWVzdCwgSUZGbG93U3RhdGVDb25uZWN0aW9uW10+IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmUsXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBHZXRGbG93U3RhdGVDb25uZWN0aW9uc1JlcXVlc3QpOiBJRkZsb3dTdGF0ZUNvbm5lY3Rpb25bXSB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ29ubmVjdGlvbnMubWFwKCh4KSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpZDogeC5mSWQsXG4gICAgICAgIGZPdXRwdXRJZDogeC5mT3V0cHV0SWQsXG4gICAgICAgIGZJbnB1dElkOiB4LmZJbnB1dElkLFxuICAgICAgICBmVHlwZTogeC5mVHlwZSxcbiAgICAgICAgZkJlaGF2aW9yOiB4LmZCZWhhdmlvcixcbiAgICAgICAgaXNTZWxlY3RlZDogeC5pc1NlbGVjdGVkKClcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIl19
31
+ }] });
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWZsb3ctc3RhdGUtY29ubmVjdGlvbnMuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1mbG93L2dldC1mbG93LXN0YXRlL2dldC1mbG93LXN0YXRlLWNvbm5lY3Rpb25zL2dldC1mbG93LXN0YXRlLWNvbm5lY3Rpb25zLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDdEYsT0FBTyxFQUFFLGtCQUFrQixFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBTWxELElBQU0sZ0NBQWdDLEdBQXRDLE1BQU0sZ0NBQWdDO0lBRW5DLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBRTlDLE1BQU0sQ0FBQyxPQUF1QztRQUNuRCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFTyxxQkFBcUIsQ0FBQyxDQUFrQjtRQUM5QyxPQUFPO1lBQ0wsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHO1lBQ1QsU0FBUyxFQUFFLENBQUMsQ0FBQyxTQUFTO1lBQ3RCLFFBQVEsRUFBRSxDQUFDLENBQUMsUUFBUTtZQUNwQixLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUs7WUFDZCxTQUFTLEVBQUUsQ0FBQyxDQUFDLFNBQVM7WUFDdEIsVUFBVSxFQUFFLENBQUMsQ0FBQyxVQUFVLEVBQUU7U0FDM0IsQ0FBQTtJQUNILENBQUM7dUdBakJVLGdDQUFnQzsyR0FBaEMsZ0NBQWdDOztBQUFoQyxnQ0FBZ0M7SUFENUMsa0JBQWtCLENBQUMsOEJBQThCLENBQUM7R0FDdEMsZ0NBQWdDLENBa0I1Qzs7MkZBbEJZLGdDQUFnQztrQkFGNUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR2V0Rmxvd1N0YXRlQ29ubmVjdGlvbnNSZXF1ZXN0IH0gZnJvbSAnLi9nZXQtZmxvdy1zdGF0ZS1jb25uZWN0aW9ucy1yZXF1ZXN0JztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBJRkZsb3dTdGF0ZUNvbm5lY3Rpb24gfSBmcm9tICcuLi9pLWYtZmxvdy1zdGF0ZS1jb25uZWN0aW9uJztcbmltcG9ydCB7IEZDb25uZWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uL2YtY29ubmVjdGlvbic7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoR2V0Rmxvd1N0YXRlQ29ubmVjdGlvbnNSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIEdldEZsb3dTdGF0ZUNvbm5lY3Rpb25zRXhlY3V0aW9uIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxHZXRGbG93U3RhdGVDb25uZWN0aW9uc1JlcXVlc3QsIElGRmxvd1N0YXRlQ29ubmVjdGlvbltdPiB7XG5cbiAgcHJpdmF0ZSBfZkNvbXBvbmVudHNTdG9yZSA9IGluamVjdChGQ29tcG9uZW50c1N0b3JlKTtcblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IEdldEZsb3dTdGF0ZUNvbm5lY3Rpb25zUmVxdWVzdCk6IElGRmxvd1N0YXRlQ29ubmVjdGlvbltdIHtcbiAgICByZXR1cm4gdGhpcy5fZkNvbXBvbmVudHNTdG9yZS5mQ29ubmVjdGlvbnMubWFwKHRoaXMuX21hcFRvQ29ubmVjdGlvblN0YXRlKTtcbiAgfVxuXG4gIHByaXZhdGUgX21hcFRvQ29ubmVjdGlvblN0YXRlKHg6IEZDb25uZWN0aW9uQmFzZSk6IElGRmxvd1N0YXRlQ29ubmVjdGlvbiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlkOiB4LmZJZCxcbiAgICAgIGZPdXRwdXRJZDogeC5mT3V0cHV0SWQsXG4gICAgICBmSW5wdXRJZDogeC5mSW5wdXRJZCxcbiAgICAgIGZUeXBlOiB4LmZUeXBlLFxuICAgICAgZkJlaGF2aW9yOiB4LmZCZWhhdmlvcixcbiAgICAgIGlzU2VsZWN0ZWQ6IHguaXNTZWxlY3RlZCgpXG4gICAgfVxuICB9XG59XG4iXX0=
@@ -16,13 +16,13 @@ let GetFlowStateNodesExecution = class GetFlowStateNodesExecution {
16
16
  parent: x.fParentId,
17
17
  position: x.position,
18
18
  size: x.size,
19
- fOutputs: this.getOutputs(x.hostElement),
20
- fInputs: this.getInputs(x.hostElement),
19
+ fOutputs: this._getOutputs(x.hostElement),
20
+ fInputs: this._getInputs(x.hostElement),
21
21
  isSelected: x.isSelected()
22
22
  };
23
23
  });
24
24
  }
25
- getOutputs(hostElement) {
25
+ _getOutputs(hostElement) {
26
26
  return this.fComponentsStore.fOutputs.filter((x) => hostElement.contains(x.hostElement)).map((x) => {
27
27
  return {
28
28
  id: x.fId,
@@ -30,7 +30,7 @@ let GetFlowStateNodesExecution = class GetFlowStateNodesExecution {
30
30
  };
31
31
  });
32
32
  }
33
- getInputs(hostElement) {
33
+ _getInputs(hostElement) {
34
34
  return this.fComponentsStore.fInputs.filter((x) => hostElement.contains(x.hostElement)).map((x) => {
35
35
  return {
36
36
  id: x.fId,
@@ -48,4 +48,4 @@ export { GetFlowStateNodesExecution };
48
48
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetFlowStateNodesExecution, decorators: [{
49
49
  type: Injectable
50
50
  }], ctorParameters: () => [{ type: i1.FComponentsStore }] });
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWZsb3ctc3RhdGUtbm9kZXMuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1mbG93L2dldC1mbG93LXN0YXRlL2dldC1mbG93LXN0YXRlLW5vZGVzL2dldC1mbG93LXN0YXRlLW5vZGVzLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsa0JBQWtCLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQzs7O0FBTzNELElBQU0sMEJBQTBCLEdBQWhDLE1BQU0sMEJBQTBCO0lBRzNCO0lBRFYsWUFDVSxnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUU1QyxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQWlDO1FBQzdDLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsWUFBWSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDckYsT0FBTztnQkFDTCxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUc7Z0JBQ1QsTUFBTSxFQUFFLENBQUMsQ0FBQyxTQUFTO2dCQUNuQixRQUFRLEVBQUUsQ0FBQyxDQUFDLFFBQVE7Z0JBQ3BCLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSTtnQkFDWixRQUFRLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDO2dCQUN4QyxPQUFPLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDO2dCQUN0QyxVQUFVLEVBQUUsQ0FBQyxDQUFDLFVBQVUsRUFBRTthQUMzQixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sVUFBVSxDQUFDLFdBQXdCO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDakcsT0FBTztnQkFDTCxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUc7Z0JBQ1QsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLGdCQUFnQjthQUNyQyxDQUFBO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sU0FBUyxDQUFDLFdBQXdCO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDaEcsT0FBTztnQkFDTCxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUc7Z0JBQ1QsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLGdCQUFnQjthQUNyQyxDQUFBO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3VHQXJDVSwwQkFBMEI7MkdBQTFCLDBCQUEwQjs7QUFBMUIsMEJBQTBCO0lBRHRDLGtCQUFrQixDQUFDLHdCQUF3QixDQUFDO0dBQ2hDLDBCQUEwQixDQXNDdEM7OzJGQXRDWSwwQkFBMEI7a0JBRnRDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBHZXRGbG93U3RhdGVOb2Rlc1JlcXVlc3QgfSBmcm9tICcuL2dldC1mbG93LXN0YXRlLW5vZGVzLXJlcXVlc3QnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBJRkZsb3dTdGF0ZU5vZGUgfSBmcm9tICcuLi9pLWYtZmxvdy1zdGF0ZS1ub2RlJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgSUZGbG93U3RhdGVDb25uZWN0b3IgfSBmcm9tICcuLi9pLWYtZmxvdy1zdGF0ZS1jb25uZWN0b3InO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKEdldEZsb3dTdGF0ZU5vZGVzUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBHZXRGbG93U3RhdGVOb2Rlc0V4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248R2V0Rmxvd1N0YXRlTm9kZXNSZXF1ZXN0LCBJRkZsb3dTdGF0ZU5vZGVbXT4ge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZSxcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IEdldEZsb3dTdGF0ZU5vZGVzUmVxdWVzdCk6IElGRmxvd1N0YXRlTm9kZVtdIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZOb2Rlcy5maWx0ZXIoKHgpID0+IHggaW5zdGFuY2VvZiByZXF1ZXN0LnR5cGUpLm1hcCgoeCkgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWQ6IHguZklkLFxuICAgICAgICBwYXJlbnQ6IHguZlBhcmVudElkLFxuICAgICAgICBwb3NpdGlvbjogeC5wb3NpdGlvbixcbiAgICAgICAgc2l6ZTogeC5zaXplLFxuICAgICAgICBmT3V0cHV0czogdGhpcy5nZXRPdXRwdXRzKHguaG9zdEVsZW1lbnQpLFxuICAgICAgICBmSW5wdXRzOiB0aGlzLmdldElucHV0cyh4Lmhvc3RFbGVtZW50KSxcbiAgICAgICAgaXNTZWxlY3RlZDogeC5pc1NlbGVjdGVkKClcbiAgICAgIH07XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldE91dHB1dHMoaG9zdEVsZW1lbnQ6IEhUTUxFbGVtZW50KTogSUZGbG93U3RhdGVDb25uZWN0b3JbXSB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mT3V0cHV0cy5maWx0ZXIoKHgpID0+IGhvc3RFbGVtZW50LmNvbnRhaW5zKHguaG9zdEVsZW1lbnQpKS5tYXAoKHgpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGlkOiB4LmZJZCxcbiAgICAgICAgZkNvbm5lY3RhYmxlU2lkZTogeC5mQ29ubmVjdGFibGVTaWRlXG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldElucHV0cyhob3N0RWxlbWVudDogSFRNTEVsZW1lbnQpOiBJRkZsb3dTdGF0ZUNvbm5lY3RvcltdIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZJbnB1dHMuZmlsdGVyKCh4KSA9PiBob3N0RWxlbWVudC5jb250YWlucyh4Lmhvc3RFbGVtZW50KSkubWFwKCh4KSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpZDogeC5mSWQsXG4gICAgICAgIGZDb25uZWN0YWJsZVNpZGU6IHguZkNvbm5lY3RhYmxlU2lkZVxuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWZsb3ctc3RhdGUtbm9kZXMuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1mbG93L2dldC1mbG93LXN0YXRlL2dldC1mbG93LXN0YXRlLW5vZGVzL2dldC1mbG93LXN0YXRlLW5vZGVzLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsa0JBQWtCLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQzs7O0FBTzNELElBQU0sMEJBQTBCLEdBQWhDLE1BQU0sMEJBQTBCO0lBRzNCO0lBRFYsWUFDVSxnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUU1QyxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQWlDO1FBQzdDLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsWUFBWSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDckYsT0FBTztnQkFDTCxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUc7Z0JBQ1QsTUFBTSxFQUFFLENBQUMsQ0FBQyxTQUFTO2dCQUNuQixRQUFRLEVBQUUsQ0FBQyxDQUFDLFFBQVE7Z0JBQ3BCLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSTtnQkFDWixRQUFRLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDO2dCQUN6QyxPQUFPLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDO2dCQUN2QyxVQUFVLEVBQUUsQ0FBQyxDQUFDLFVBQVUsRUFBRTthQUMzQixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sV0FBVyxDQUFDLFdBQXdCO1FBQzFDLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDakcsT0FBTztnQkFDTCxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUc7Z0JBQ1QsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLGdCQUFnQjthQUNyQyxDQUFBO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sVUFBVSxDQUFDLFdBQXdCO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDaEcsT0FBTztnQkFDTCxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUc7Z0JBQ1QsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLGdCQUFnQjthQUNyQyxDQUFBO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3VHQXJDVSwwQkFBMEI7MkdBQTFCLDBCQUEwQjs7QUFBMUIsMEJBQTBCO0lBRHRDLGtCQUFrQixDQUFDLHdCQUF3QixDQUFDO0dBQ2hDLDBCQUEwQixDQXNDdEM7OzJGQXRDWSwwQkFBMEI7a0JBRnRDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBHZXRGbG93U3RhdGVOb2Rlc1JlcXVlc3QgfSBmcm9tICcuL2dldC1mbG93LXN0YXRlLW5vZGVzLXJlcXVlc3QnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBJRkZsb3dTdGF0ZU5vZGUgfSBmcm9tICcuLi9pLWYtZmxvdy1zdGF0ZS1ub2RlJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgSUZGbG93U3RhdGVDb25uZWN0b3IgfSBmcm9tICcuLi9pLWYtZmxvdy1zdGF0ZS1jb25uZWN0b3InO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKEdldEZsb3dTdGF0ZU5vZGVzUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBHZXRGbG93U3RhdGVOb2Rlc0V4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248R2V0Rmxvd1N0YXRlTm9kZXNSZXF1ZXN0LCBJRkZsb3dTdGF0ZU5vZGVbXT4ge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZSxcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IEdldEZsb3dTdGF0ZU5vZGVzUmVxdWVzdCk6IElGRmxvd1N0YXRlTm9kZVtdIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZOb2Rlcy5maWx0ZXIoKHgpID0+IHggaW5zdGFuY2VvZiByZXF1ZXN0LnR5cGUpLm1hcCgoeCkgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWQ6IHguZklkLFxuICAgICAgICBwYXJlbnQ6IHguZlBhcmVudElkLFxuICAgICAgICBwb3NpdGlvbjogeC5wb3NpdGlvbixcbiAgICAgICAgc2l6ZTogeC5zaXplLFxuICAgICAgICBmT3V0cHV0czogdGhpcy5fZ2V0T3V0cHV0cyh4Lmhvc3RFbGVtZW50KSxcbiAgICAgICAgZklucHV0czogdGhpcy5fZ2V0SW5wdXRzKHguaG9zdEVsZW1lbnQpLFxuICAgICAgICBpc1NlbGVjdGVkOiB4LmlzU2VsZWN0ZWQoKVxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldE91dHB1dHMoaG9zdEVsZW1lbnQ6IEhUTUxFbGVtZW50KTogSUZGbG93U3RhdGVDb25uZWN0b3JbXSB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mT3V0cHV0cy5maWx0ZXIoKHgpID0+IGhvc3RFbGVtZW50LmNvbnRhaW5zKHguaG9zdEVsZW1lbnQpKS5tYXAoKHgpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGlkOiB4LmZJZCxcbiAgICAgICAgZkNvbm5lY3RhYmxlU2lkZTogeC5mQ29ubmVjdGFibGVTaWRlXG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRJbnB1dHMoaG9zdEVsZW1lbnQ6IEhUTUxFbGVtZW50KTogSUZGbG93U3RhdGVDb25uZWN0b3JbXSB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mSW5wdXRzLmZpbHRlcigoeCkgPT4gaG9zdEVsZW1lbnQuY29udGFpbnMoeC5ob3N0RWxlbWVudCkpLm1hcCgoeCkgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWQ6IHguZklkLFxuICAgICAgICBmQ29ubmVjdGFibGVTaWRlOiB4LmZDb25uZWN0YWJsZVNpZGVcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -1,34 +1,29 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { GetFlowStateRequest } from './get-flow-state.request';
3
- import { Injectable } from '@angular/core';
4
- import { FExecutionRegister } from '@foblex/mediator';
3
+ import { inject, Injectable } from '@angular/core';
4
+ import { FExecutionRegister, FMediator } from '@foblex/mediator';
5
+ import { FComponentsStore } from '../../../f-storage';
5
6
  import { FGroupDirective, FNodeDirective } from '../../../f-node';
6
7
  import { PointExtensions } from '@foblex/2d';
7
8
  import { GetFlowStateNodesRequest } from './get-flow-state-nodes';
8
9
  import { GetFlowStateConnectionsRequest } from './get-flow-state-connections';
9
10
  import * as i0 from "@angular/core";
10
- import * as i1 from "../../../f-storage";
11
- import * as i2 from "@foblex/mediator";
12
11
  let GetFlowStateExecution = class GetFlowStateExecution {
13
- fComponentsStore;
14
- fMediator;
15
- constructor(fComponentsStore, fMediator) {
16
- this.fComponentsStore = fComponentsStore;
17
- this.fMediator = fMediator;
18
- }
12
+ _fMediator = inject(FMediator);
13
+ _fComponentsStore = inject(FComponentsStore);
19
14
  handle(payload) {
20
15
  return {
21
- position: this.getCanvasPosition(this.fComponentsStore.fCanvas.transform),
22
- scale: this.fComponentsStore.fCanvas.transform.scale,
23
- nodes: this.fMediator.send(new GetFlowStateNodesRequest(FNodeDirective)),
24
- groups: this.fMediator.send(new GetFlowStateNodesRequest(FGroupDirective)),
25
- connections: this.fMediator.send(new GetFlowStateConnectionsRequest())
16
+ position: this._getCanvasPosition(this._fComponentsStore.fCanvas.transform),
17
+ scale: this._fComponentsStore.fCanvas.transform.scale,
18
+ nodes: this._fMediator.send(new GetFlowStateNodesRequest(FNodeDirective)),
19
+ groups: this._fMediator.send(new GetFlowStateNodesRequest(FGroupDirective)),
20
+ connections: this._fMediator.send(new GetFlowStateConnectionsRequest())
26
21
  };
27
22
  }
28
- getCanvasPosition(transform) {
23
+ _getCanvasPosition(transform) {
29
24
  return PointExtensions.sum(transform.position, transform.scaledPosition);
30
25
  }
31
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetFlowStateExecution, deps: [{ token: i1.FComponentsStore }, { token: i2.FMediator }], target: i0.ɵɵFactoryTarget.Injectable });
26
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetFlowStateExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
32
27
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetFlowStateExecution });
33
28
  };
34
29
  GetFlowStateExecution = __decorate([
@@ -37,5 +32,5 @@ GetFlowStateExecution = __decorate([
37
32
  export { GetFlowStateExecution };
38
33
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GetFlowStateExecution, decorators: [{
39
34
  type: Injectable
40
- }], ctorParameters: () => [{ type: i1.FComponentsStore }, { type: i2.FMediator }] });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWZsb3ctc3RhdGUuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1mbG93L2dldC1mbG93LXN0YXRlL2dldC1mbG93LXN0YXRlLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQXlCLE1BQU0sa0JBQWtCLENBQUM7QUFHN0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRSxPQUFPLEVBQTJCLGVBQWUsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN0RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7OztBQUl2RSxJQUFNLHFCQUFxQixHQUEzQixNQUFNLHFCQUFxQjtJQUd0QjtJQUNBO0lBRlYsWUFDVSxnQkFBa0MsRUFDbEMsU0FBb0I7UUFEcEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxjQUFTLEdBQVQsU0FBUyxDQUFXO0lBRTlCLENBQUM7SUFFTSxNQUFNLENBQUMsT0FBNEI7UUFDeEMsT0FBTztZQUNMLFFBQVEsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQVEsQ0FBQyxTQUFTLENBQUM7WUFDMUUsS0FBSyxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFRLENBQUMsU0FBUyxDQUFDLEtBQUs7WUFDckQsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksd0JBQXdCLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDeEUsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksd0JBQXdCLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDMUUsV0FBVyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksOEJBQThCLEVBQUUsQ0FBQztTQUN2RSxDQUFBO0lBQ0gsQ0FBQztJQUVPLGlCQUFpQixDQUFDLFNBQTBCO1FBQ2xELE9BQU8sZUFBZSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUMzRSxDQUFDO3VHQXBCVSxxQkFBcUI7MkdBQXJCLHFCQUFxQjs7QUFBckIscUJBQXFCO0lBRGpDLGtCQUFrQixDQUFDLG1CQUFtQixDQUFDO0dBQzNCLHFCQUFxQixDQXFCakM7OzJGQXJCWSxxQkFBcUI7a0JBRmpDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHZXRGbG93U3RhdGVSZXF1ZXN0IH0gZnJvbSAnLi9nZXQtZmxvdy1zdGF0ZS5yZXF1ZXN0JztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBJRkZsb3dTdGF0ZSB9IGZyb20gJy4vaS1mLWZsb3ctc3RhdGUnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGR3JvdXBEaXJlY3RpdmUsIEZOb2RlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZi1ub2RlJztcbmltcG9ydCB7IElQb2ludCwgSVRyYW5zZm9ybU1vZGVsLCBQb2ludEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEdldEZsb3dTdGF0ZU5vZGVzUmVxdWVzdCB9IGZyb20gJy4vZ2V0LWZsb3ctc3RhdGUtbm9kZXMnO1xuaW1wb3J0IHsgR2V0Rmxvd1N0YXRlQ29ubmVjdGlvbnNSZXF1ZXN0IH0gZnJvbSAnLi9nZXQtZmxvdy1zdGF0ZS1jb25uZWN0aW9ucyc7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoR2V0Rmxvd1N0YXRlUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBHZXRGbG93U3RhdGVFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPEdldEZsb3dTdGF0ZVJlcXVlc3QsIElGRmxvd1N0YXRlPiB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgIHByaXZhdGUgZk1lZGlhdG9yOiBGTWVkaWF0b3JcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHBheWxvYWQ6IEdldEZsb3dTdGF0ZVJlcXVlc3QpOiBJRkZsb3dTdGF0ZSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHBvc2l0aW9uOiB0aGlzLmdldENhbnZhc1Bvc2l0aW9uKHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzIS50cmFuc2Zvcm0pLFxuICAgICAgc2NhbGU6IHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzIS50cmFuc2Zvcm0uc2NhbGUsXG4gICAgICBub2RlczogdGhpcy5mTWVkaWF0b3Iuc2VuZChuZXcgR2V0Rmxvd1N0YXRlTm9kZXNSZXF1ZXN0KEZOb2RlRGlyZWN0aXZlKSksXG4gICAgICBncm91cHM6IHRoaXMuZk1lZGlhdG9yLnNlbmQobmV3IEdldEZsb3dTdGF0ZU5vZGVzUmVxdWVzdChGR3JvdXBEaXJlY3RpdmUpKSxcbiAgICAgIGNvbm5lY3Rpb25zOiB0aGlzLmZNZWRpYXRvci5zZW5kKG5ldyBHZXRGbG93U3RhdGVDb25uZWN0aW9uc1JlcXVlc3QoKSlcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldENhbnZhc1Bvc2l0aW9uKHRyYW5zZm9ybTogSVRyYW5zZm9ybU1vZGVsKTogSVBvaW50IHtcbiAgICByZXR1cm4gUG9pbnRFeHRlbnNpb25zLnN1bSh0cmFuc2Zvcm0ucG9zaXRpb24sIHRyYW5zZm9ybS5zY2FsZWRQb3NpdGlvbik7XG4gIH1cbn1cblxuXG5cbiJdfQ==
35
+ }] });
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWZsb3ctc3RhdGUuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1mbG93L2dldC1mbG93LXN0YXRlL2dldC1mbG93LXN0YXRlLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBRTdFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEUsT0FBTyxFQUEyQixlQUFlLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDdEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBSXZFLElBQU0scUJBQXFCLEdBQTNCLE1BQU0scUJBQXFCO0lBRXhCLFVBQVUsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0IsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFFOUMsTUFBTSxDQUFDLE9BQTRCO1FBQ3hDLE9BQU87WUFDTCxRQUFRLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFRLENBQUMsU0FBUyxDQUFDO1lBQzVFLEtBQUssRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLO1lBQ3RELEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLHdCQUF3QixDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ3pFLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLHdCQUF3QixDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQzNFLFdBQVcsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLDhCQUE4QixFQUFFLENBQUM7U0FDeEUsQ0FBQTtJQUNILENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxTQUEwQjtRQUNuRCxPQUFPLGVBQWUsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDM0UsQ0FBQzt1R0FqQlUscUJBQXFCOzJHQUFyQixxQkFBcUI7O0FBQXJCLHFCQUFxQjtJQURqQyxrQkFBa0IsQ0FBQyxtQkFBbUIsQ0FBQztHQUMzQixxQkFBcUIsQ0FrQmpDOzsyRkFsQlkscUJBQXFCO2tCQUZqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgR2V0Rmxvd1N0YXRlUmVxdWVzdCB9IGZyb20gJy4vZ2V0LWZsb3ctc3RhdGUucmVxdWVzdCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBJRkZsb3dTdGF0ZSB9IGZyb20gJy4vaS1mLWZsb3ctc3RhdGUnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGR3JvdXBEaXJlY3RpdmUsIEZOb2RlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZi1ub2RlJztcbmltcG9ydCB7IElQb2ludCwgSVRyYW5zZm9ybU1vZGVsLCBQb2ludEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEdldEZsb3dTdGF0ZU5vZGVzUmVxdWVzdCB9IGZyb20gJy4vZ2V0LWZsb3ctc3RhdGUtbm9kZXMnO1xuaW1wb3J0IHsgR2V0Rmxvd1N0YXRlQ29ubmVjdGlvbnNSZXF1ZXN0IH0gZnJvbSAnLi9nZXQtZmxvdy1zdGF0ZS1jb25uZWN0aW9ucyc7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoR2V0Rmxvd1N0YXRlUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBHZXRGbG93U3RhdGVFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPEdldEZsb3dTdGF0ZVJlcXVlc3QsIElGRmxvd1N0YXRlPiB7XG5cbiAgcHJpdmF0ZSBfZk1lZGlhdG9yID0gaW5qZWN0KEZNZWRpYXRvcik7XG4gIHByaXZhdGUgX2ZDb21wb25lbnRzU3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSk7XG5cbiAgcHVibGljIGhhbmRsZShwYXlsb2FkOiBHZXRGbG93U3RhdGVSZXF1ZXN0KTogSUZGbG93U3RhdGUge1xuICAgIHJldHVybiB7XG4gICAgICBwb3NpdGlvbjogdGhpcy5fZ2V0Q2FudmFzUG9zaXRpb24odGhpcy5fZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzIS50cmFuc2Zvcm0pLFxuICAgICAgc2NhbGU6IHRoaXMuX2ZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyEudHJhbnNmb3JtLnNjYWxlLFxuICAgICAgbm9kZXM6IHRoaXMuX2ZNZWRpYXRvci5zZW5kKG5ldyBHZXRGbG93U3RhdGVOb2Rlc1JlcXVlc3QoRk5vZGVEaXJlY3RpdmUpKSxcbiAgICAgIGdyb3VwczogdGhpcy5fZk1lZGlhdG9yLnNlbmQobmV3IEdldEZsb3dTdGF0ZU5vZGVzUmVxdWVzdChGR3JvdXBEaXJlY3RpdmUpKSxcbiAgICAgIGNvbm5lY3Rpb25zOiB0aGlzLl9mTWVkaWF0b3Iuc2VuZChuZXcgR2V0Rmxvd1N0YXRlQ29ubmVjdGlvbnNSZXF1ZXN0KCkpXG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Q2FudmFzUG9zaXRpb24odHJhbnNmb3JtOiBJVHJhbnNmb3JtTW9kZWwpOiBJUG9pbnQge1xuICAgIHJldHVybiBQb2ludEV4dGVuc2lvbnMuc3VtKHRyYW5zZm9ybS5wb3NpdGlvbiwgdHJhbnNmb3JtLnNjYWxlZFBvc2l0aW9uKTtcbiAgfVxufVxuXG5cblxuIl19
@@ -7,7 +7,7 @@ import * as i0 from "@angular/core";
7
7
  let AddLineAlignmentToStoreExecution = class AddLineAlignmentToStoreExecution {
8
8
  _fComponentsStore = inject(FComponentsStore);
9
9
  handle(request) {
10
- //this._fComponentsStore.fFlow = request.fComponent;
10
+ this._fComponentsStore.fLineAlignment = request.fComponent;
11
11
  }
12
12
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: AddLineAlignmentToStoreExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
13
13
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: AddLineAlignmentToStoreExecution });
@@ -19,4 +19,4 @@ export { AddLineAlignmentToStoreExecution };
19
19
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: AddLineAlignmentToStoreExecution, decorators: [{
20
20
  type: Injectable
21
21
  }] });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWxpbmUtYWxpZ25tZW50LXRvLXN0b3JlLmV4ZWN1dGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2YtbGluZS1hbGlnbm1lbnQvYWRkLWxpbmUtYWxpZ25tZW50LXRvLXN0b3JlL2FkZC1saW5lLWFsaWdubWVudC10by1zdG9yZS5leGVjdXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQUkvQyxJQUFNLGdDQUFnQyxHQUF0QyxNQUFNLGdDQUFnQztJQUVuQyxpQkFBaUIsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUU5QyxNQUFNLENBQUMsT0FBdUM7UUFDbkQsb0RBQW9EO0lBQ3RELENBQUM7dUdBTlUsZ0NBQWdDOzJHQUFoQyxnQ0FBZ0M7O0FBQWhDLGdDQUFnQztJQUQ1QyxrQkFBa0IsQ0FBQyw4QkFBOEIsQ0FBQztHQUN0QyxnQ0FBZ0MsQ0FPNUM7OzJGQVBZLGdDQUFnQztrQkFGNUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBBZGRMaW5lQWxpZ25tZW50VG9TdG9yZVJlcXVlc3QgfSBmcm9tICcuL2FkZC1saW5lLWFsaWdubWVudC10by1zdG9yZS1yZXF1ZXN0JztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKEFkZExpbmVBbGlnbm1lbnRUb1N0b3JlUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBBZGRMaW5lQWxpZ25tZW50VG9TdG9yZUV4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248QWRkTGluZUFsaWdubWVudFRvU3RvcmVSZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSBfZkNvbXBvbmVudHNTdG9yZSA9IGluamVjdChGQ29tcG9uZW50c1N0b3JlKTtcblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IEFkZExpbmVBbGlnbm1lbnRUb1N0b3JlUmVxdWVzdCk6IHZvaWQge1xuICAgIC8vdGhpcy5fZkNvbXBvbmVudHNTdG9yZS5mRmxvdyA9IHJlcXVlc3QuZkNvbXBvbmVudDtcbiAgfVxufVxuIl19
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWxpbmUtYWxpZ25tZW50LXRvLXN0b3JlLmV4ZWN1dGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2YtbGluZS1hbGlnbm1lbnQvYWRkLWxpbmUtYWxpZ25tZW50LXRvLXN0b3JlL2FkZC1saW5lLWFsaWdubWVudC10by1zdG9yZS5leGVjdXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQUkvQyxJQUFNLGdDQUFnQyxHQUF0QyxNQUFNLGdDQUFnQztJQUVuQyxpQkFBaUIsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUU5QyxNQUFNLENBQUMsT0FBdUM7UUFDbkQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGNBQWMsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDO0lBQzdELENBQUM7dUdBTlUsZ0NBQWdDOzJHQUFoQyxnQ0FBZ0M7O0FBQWhDLGdDQUFnQztJQUQ1QyxrQkFBa0IsQ0FBQyw4QkFBOEIsQ0FBQztHQUN0QyxnQ0FBZ0MsQ0FPNUM7OzJGQVBZLGdDQUFnQztrQkFGNUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBBZGRMaW5lQWxpZ25tZW50VG9TdG9yZVJlcXVlc3QgfSBmcm9tICcuL2FkZC1saW5lLWFsaWdubWVudC10by1zdG9yZS1yZXF1ZXN0JztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKEFkZExpbmVBbGlnbm1lbnRUb1N0b3JlUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBBZGRMaW5lQWxpZ25tZW50VG9TdG9yZUV4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248QWRkTGluZUFsaWdubWVudFRvU3RvcmVSZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSBfZkNvbXBvbmVudHNTdG9yZSA9IGluamVjdChGQ29tcG9uZW50c1N0b3JlKTtcblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IEFkZExpbmVBbGlnbm1lbnRUb1N0b3JlUmVxdWVzdCk6IHZvaWQge1xuICAgIHRoaXMuX2ZDb21wb25lbnRzU3RvcmUuZkxpbmVBbGlnbm1lbnQgPSByZXF1ZXN0LmZDb21wb25lbnQ7XG4gIH1cbn1cbiJdfQ==
@@ -7,7 +7,7 @@ import * as i0 from "@angular/core";
7
7
  let RemoveLineAlignmentFromStoreExecution = class RemoveLineAlignmentFromStoreExecution {
8
8
  _fComponentsStore = inject(FComponentsStore);
9
9
  handle(request) {
10
- this._fComponentsStore.fFlow = undefined;
10
+ this._fComponentsStore.fLineAlignment = undefined;
11
11
  }
12
12
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: RemoveLineAlignmentFromStoreExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
13
13
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: RemoveLineAlignmentFromStoreExecution });
@@ -19,4 +19,4 @@ export { RemoveLineAlignmentFromStoreExecution };
19
19
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: RemoveLineAlignmentFromStoreExecution, decorators: [{
20
20
  type: Injectable
21
21
  }] });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLWxpbmUtYWxpZ25tZW50LWZyb20tc3RvcmUuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1saW5lLWFsaWdubWVudC9yZW1vdmUtbGluZS1hbGlnbm1lbnQtZnJvbS1zdG9yZS9yZW1vdmUtbGluZS1hbGlnbm1lbnQtZnJvbS1zdG9yZS5leGVjdXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQUkvQyxJQUFNLHFDQUFxQyxHQUEzQyxNQUFNLHFDQUFxQztJQUV4QyxpQkFBaUIsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUU5QyxNQUFNLENBQUMsT0FBNEM7UUFDeEQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssR0FBRyxTQUFTLENBQUM7SUFDM0MsQ0FBQzt1R0FOVSxxQ0FBcUM7MkdBQXJDLHFDQUFxQzs7QUFBckMscUNBQXFDO0lBRGpELGtCQUFrQixDQUFDLG1DQUFtQyxDQUFDO0dBQzNDLHFDQUFxQyxDQU9qRDs7MkZBUFkscUNBQXFDO2tCQUZqRCxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IFJlbW92ZUxpbmVBbGlnbm1lbnRGcm9tU3RvcmVSZXF1ZXN0IH0gZnJvbSAnLi9yZW1vdmUtbGluZS1hbGlnbm1lbnQtZnJvbS1zdG9yZS1yZXF1ZXN0JztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKFJlbW92ZUxpbmVBbGlnbm1lbnRGcm9tU3RvcmVSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIFJlbW92ZUxpbmVBbGlnbm1lbnRGcm9tU3RvcmVFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPFJlbW92ZUxpbmVBbGlnbm1lbnRGcm9tU3RvcmVSZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSBfZkNvbXBvbmVudHNTdG9yZSA9IGluamVjdChGQ29tcG9uZW50c1N0b3JlKTtcblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IFJlbW92ZUxpbmVBbGlnbm1lbnRGcm9tU3RvcmVSZXF1ZXN0KTogdm9pZCB7XG4gICAgdGhpcy5fZkNvbXBvbmVudHNTdG9yZS5mRmxvdyA9IHVuZGVmaW5lZDtcbiAgfVxufVxuIl19
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLWxpbmUtYWxpZ25tZW50LWZyb20tc3RvcmUuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1saW5lLWFsaWdubWVudC9yZW1vdmUtbGluZS1hbGlnbm1lbnQtZnJvbS1zdG9yZS9yZW1vdmUtbGluZS1hbGlnbm1lbnQtZnJvbS1zdG9yZS5leGVjdXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQUkvQyxJQUFNLHFDQUFxQyxHQUEzQyxNQUFNLHFDQUFxQztJQUV4QyxpQkFBaUIsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUU5QyxNQUFNLENBQUMsT0FBNEM7UUFDeEQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGNBQWMsR0FBRyxTQUFTLENBQUM7SUFDcEQsQ0FBQzt1R0FOVSxxQ0FBcUM7MkdBQXJDLHFDQUFxQzs7QUFBckMscUNBQXFDO0lBRGpELGtCQUFrQixDQUFDLG1DQUFtQyxDQUFDO0dBQzNDLHFDQUFxQyxDQU9qRDs7MkZBUFkscUNBQXFDO2tCQUZqRCxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IFJlbW92ZUxpbmVBbGlnbm1lbnRGcm9tU3RvcmVSZXF1ZXN0IH0gZnJvbSAnLi9yZW1vdmUtbGluZS1hbGlnbm1lbnQtZnJvbS1zdG9yZS1yZXF1ZXN0JztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKFJlbW92ZUxpbmVBbGlnbm1lbnRGcm9tU3RvcmVSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIFJlbW92ZUxpbmVBbGlnbm1lbnRGcm9tU3RvcmVFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPFJlbW92ZUxpbmVBbGlnbm1lbnRGcm9tU3RvcmVSZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSBfZkNvbXBvbmVudHNTdG9yZSA9IGluamVjdChGQ29tcG9uZW50c1N0b3JlKTtcblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IFJlbW92ZUxpbmVBbGlnbm1lbnRGcm9tU3RvcmVSZXF1ZXN0KTogdm9pZCB7XG4gICAgdGhpcy5fZkNvbXBvbmVudHNTdG9yZS5mTGluZUFsaWdubWVudCA9IHVuZGVmaW5lZDtcbiAgfVxufVxuIl19
@@ -8,10 +8,10 @@ import * as i0 from "@angular/core";
8
8
  let CalculateNodesBoundingBoxNormalizedPositionExecution = class CalculateNodesBoundingBoxNormalizedPositionExecution {
9
9
  _fComponentsStore = inject(FComponentsStore);
10
10
  handle(request) {
11
- return RectExtensions.union(this._getNodesRects());
11
+ return RectExtensions.union(this._getNodesRects(request.fNodes || this._fComponentsStore.fNodes));
12
12
  }
13
- _getNodesRects() {
14
- return this._fComponentsStore.fNodes.map((x) => {
13
+ _getNodesRects(fNodes) {
14
+ return fNodes.map((x) => {
15
15
  return this._getElementRect(x, RectExtensions.fromElement(x.hostElement));
16
16
  });
17
17
  }
@@ -28,4 +28,4 @@ export { CalculateNodesBoundingBoxNormalizedPositionExecution };
28
28
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: CalculateNodesBoundingBoxNormalizedPositionExecution, decorators: [{
29
29
  type: Injectable
30
30
  }] });
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLW5vZGVzLWJvdW5kaW5nLWJveC1ub3JtYWxpemVkLXBvc2l0aW9uLmV4ZWN1dGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2Ytbm9kZS9jYWxjdWxhdGUtbm9kZXMtYm91bmRpbmctYm94LW5vcm1hbGl6ZWQtcG9zaXRpb24vY2FsY3VsYXRlLW5vZGVzLWJvdW5kaW5nLWJveC1ub3JtYWxpemVkLXBvc2l0aW9uLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFTLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0RBQWtELEVBQUUsTUFBTSw0REFBNEQsQ0FBQztBQUNoSSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsa0JBQWtCLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQzs7QUFLM0QsSUFBTSxvREFBb0QsR0FBMUQsTUFBTSxvREFBb0Q7SUFFdkQsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFFOUMsTUFBTSxDQUFDLE9BQTJEO1FBQ3ZFLE9BQU8sY0FBYyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRU8sY0FBYztRQUNwQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDN0MsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsRUFBRSxjQUFjLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQzVFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGVBQWUsQ0FBQyxLQUFnQixFQUFFLElBQVc7UUFDbkQsT0FBTyxjQUFjLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQy9GLENBQUM7dUdBaEJVLG9EQUFvRDsyR0FBcEQsb0RBQW9EOztBQUFwRCxvREFBb0Q7SUFEaEUsa0JBQWtCLENBQUMsa0RBQWtELENBQUM7R0FDMUQsb0RBQW9ELENBaUJoRTs7MkZBakJZLG9EQUFvRDtrQkFGaEUsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElSZWN0LCBSZWN0RXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgQ2FsY3VsYXRlTm9kZXNCb3VuZGluZ0JveE5vcm1hbGl6ZWRQb3NpdGlvblJlcXVlc3QgfSBmcm9tICcuL2NhbGN1bGF0ZS1ub2Rlcy1ib3VuZGluZy1ib3gtbm9ybWFsaXplZC1wb3NpdGlvbi5yZXF1ZXN0JztcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IEZOb2RlQmFzZSB9IGZyb20gJy4uLy4uLy4uL2Ytbm9kZSc7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoQ2FsY3VsYXRlTm9kZXNCb3VuZGluZ0JveE5vcm1hbGl6ZWRQb3NpdGlvblJlcXVlc3QpXG5leHBvcnQgY2xhc3MgQ2FsY3VsYXRlTm9kZXNCb3VuZGluZ0JveE5vcm1hbGl6ZWRQb3NpdGlvbkV4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248Q2FsY3VsYXRlTm9kZXNCb3VuZGluZ0JveE5vcm1hbGl6ZWRQb3NpdGlvblJlcXVlc3QsIElSZWN0IHwgbnVsbD4ge1xuXG4gIHByaXZhdGUgX2ZDb21wb25lbnRzU3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSk7XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBDYWxjdWxhdGVOb2Rlc0JvdW5kaW5nQm94Tm9ybWFsaXplZFBvc2l0aW9uUmVxdWVzdCk6IElSZWN0IHwgbnVsbCB7XG4gICAgcmV0dXJuIFJlY3RFeHRlbnNpb25zLnVuaW9uKHRoaXMuX2dldE5vZGVzUmVjdHMoKSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXROb2Rlc1JlY3RzKCk6IElSZWN0W10ge1xuICAgIHJldHVybiB0aGlzLl9mQ29tcG9uZW50c1N0b3JlLmZOb2Rlcy5tYXAoKHgpID0+IHtcbiAgICAgIHJldHVybiB0aGlzLl9nZXRFbGVtZW50UmVjdCh4LCBSZWN0RXh0ZW5zaW9ucy5mcm9tRWxlbWVudCh4Lmhvc3RFbGVtZW50KSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRFbGVtZW50UmVjdChmTm9kZTogRk5vZGVCYXNlLCByZWN0OiBJUmVjdCk6IElSZWN0IHtcbiAgICByZXR1cm4gUmVjdEV4dGVuc2lvbnMuaW5pdGlhbGl6ZShmTm9kZS5wb3NpdGlvbi54LCBmTm9kZS5wb3NpdGlvbi55LCByZWN0LndpZHRoLCByZWN0LmhlaWdodClcbiAgfVxufVxuIl19
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLW5vZGVzLWJvdW5kaW5nLWJveC1ub3JtYWxpemVkLXBvc2l0aW9uLmV4ZWN1dGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2Ytbm9kZS9jYWxjdWxhdGUtbm9kZXMtYm91bmRpbmctYm94LW5vcm1hbGl6ZWQtcG9zaXRpb24vY2FsY3VsYXRlLW5vZGVzLWJvdW5kaW5nLWJveC1ub3JtYWxpemVkLXBvc2l0aW9uLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFTLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0RBQWtELEVBQUUsTUFBTSw0REFBNEQsQ0FBQztBQUNoSSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsa0JBQWtCLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQzs7QUFLM0QsSUFBTSxvREFBb0QsR0FBMUQsTUFBTSxvREFBb0Q7SUFFdkQsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFFOUMsTUFBTSxDQUFDLE9BQTJEO1FBQ3ZFLE9BQU8sY0FBYyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDcEcsQ0FBQztJQUVPLGNBQWMsQ0FBQyxNQUFtQjtRQUN4QyxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUN0QixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxFQUFFLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDNUUsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sZUFBZSxDQUFDLEtBQWdCLEVBQUUsSUFBVztRQUNuRCxPQUFPLGNBQWMsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDL0YsQ0FBQzt1R0FoQlUsb0RBQW9EOzJHQUFwRCxvREFBb0Q7O0FBQXBELG9EQUFvRDtJQURoRSxrQkFBa0IsQ0FBQyxrREFBa0QsQ0FBQztHQUMxRCxvREFBb0QsQ0FpQmhFOzsyRkFqQlksb0RBQW9EO2tCQUZoRSxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVJlY3QsIFJlY3RFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBDYWxjdWxhdGVOb2Rlc0JvdW5kaW5nQm94Tm9ybWFsaXplZFBvc2l0aW9uUmVxdWVzdCB9IGZyb20gJy4vY2FsY3VsYXRlLW5vZGVzLWJvdW5kaW5nLWJveC1ub3JtYWxpemVkLXBvc2l0aW9uLnJlcXVlc3QnO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgRk5vZGVCYXNlIH0gZnJvbSAnLi4vLi4vLi4vZi1ub2RlJztcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihDYWxjdWxhdGVOb2Rlc0JvdW5kaW5nQm94Tm9ybWFsaXplZFBvc2l0aW9uUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBDYWxjdWxhdGVOb2Rlc0JvdW5kaW5nQm94Tm9ybWFsaXplZFBvc2l0aW9uRXhlY3V0aW9uIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxDYWxjdWxhdGVOb2Rlc0JvdW5kaW5nQm94Tm9ybWFsaXplZFBvc2l0aW9uUmVxdWVzdCwgSVJlY3QgfCBudWxsPiB7XG5cbiAgcHJpdmF0ZSBfZkNvbXBvbmVudHNTdG9yZSA9IGluamVjdChGQ29tcG9uZW50c1N0b3JlKTtcblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IENhbGN1bGF0ZU5vZGVzQm91bmRpbmdCb3hOb3JtYWxpemVkUG9zaXRpb25SZXF1ZXN0KTogSVJlY3QgfCBudWxsIHtcbiAgICByZXR1cm4gUmVjdEV4dGVuc2lvbnMudW5pb24odGhpcy5fZ2V0Tm9kZXNSZWN0cyhyZXF1ZXN0LmZOb2RlcyB8fCB0aGlzLl9mQ29tcG9uZW50c1N0b3JlLmZOb2RlcykpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Tm9kZXNSZWN0cyhmTm9kZXM6IEZOb2RlQmFzZVtdKTogSVJlY3RbXSB7XG4gICAgcmV0dXJuIGZOb2Rlcy5tYXAoKHgpID0+IHtcbiAgICAgIHJldHVybiB0aGlzLl9nZXRFbGVtZW50UmVjdCh4LCBSZWN0RXh0ZW5zaW9ucy5mcm9tRWxlbWVudCh4Lmhvc3RFbGVtZW50KSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRFbGVtZW50UmVjdChmTm9kZTogRk5vZGVCYXNlLCByZWN0OiBJUmVjdCk6IElSZWN0IHtcbiAgICByZXR1cm4gUmVjdEV4dGVuc2lvbnMuaW5pdGlhbGl6ZShmTm9kZS5wb3NpdGlvbi54LCBmTm9kZS5wb3NpdGlvbi55LCByZWN0LndpZHRoLCByZWN0LmhlaWdodClcbiAgfVxufVxuIl19
@@ -1,3 +1,7 @@
1
1
  export class CalculateNodesBoundingBoxNormalizedPositionRequest {
2
+ fNodes;
3
+ constructor(fNodes) {
4
+ this.fNodes = fNodes;
5
+ }
2
6
  }
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLW5vZGVzLWJvdW5kaW5nLWJveC1ub3JtYWxpemVkLXBvc2l0aW9uLnJlcXVlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLW5vZGUvY2FsY3VsYXRlLW5vZGVzLWJvdW5kaW5nLWJveC1ub3JtYWxpemVkLXBvc2l0aW9uL2NhbGN1bGF0ZS1ub2Rlcy1ib3VuZGluZy1ib3gtbm9ybWFsaXplZC1wb3NpdGlvbi5yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxrREFBa0Q7Q0FFOUQiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgQ2FsY3VsYXRlTm9kZXNCb3VuZGluZ0JveE5vcm1hbGl6ZWRQb3NpdGlvblJlcXVlc3Qge1xuXG59XG4iXX0=
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLW5vZGVzLWJvdW5kaW5nLWJveC1ub3JtYWxpemVkLXBvc2l0aW9uLnJlcXVlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLW5vZGUvY2FsY3VsYXRlLW5vZGVzLWJvdW5kaW5nLWJveC1ub3JtYWxpemVkLXBvc2l0aW9uL2NhbGN1bGF0ZS1ub2Rlcy1ib3VuZGluZy1ib3gtbm9ybWFsaXplZC1wb3NpdGlvbi5yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxrREFBa0Q7SUFHcEQ7SUFEVCxZQUNTLE1BQW9CO1FBQXBCLFdBQU0sR0FBTixNQUFNLENBQWM7SUFFN0IsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRk5vZGVCYXNlIH0gZnJvbSAnLi4vLi4vLi4vZi1ub2RlJztcblxuZXhwb3J0IGNsYXNzIENhbGN1bGF0ZU5vZGVzQm91bmRpbmdCb3hOb3JtYWxpemVkUG9zaXRpb25SZXF1ZXN0IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZk5vZGVzPzogRk5vZGVCYXNlW10sXG4gICkge1xuICB9XG59XG4iXX0=
@@ -16,6 +16,7 @@ export * from './update-item-and-children-layers';
16
16
  export * from './create-dom-element';
17
17
  export * from './i-map';
18
18
  export * from './is-mobile';
19
+ export * from './log-execution-time';
19
20
  export * from './providers';
20
21
  export * from './transition-end';
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFDO0FBRTNDLGNBQWMsZ0JBQWdCLENBQUM7QUFFL0IsY0FBYyxZQUFZLENBQUM7QUFFM0IsY0FBYyxnQkFBZ0IsQ0FBQztBQUUvQixjQUFjLGdCQUFnQixDQUFDO0FBRS9CLGNBQWMsZUFBZSxDQUFDO0FBRTlCLGNBQWMsVUFBVSxDQUFDO0FBRXpCLGNBQWMsb0JBQW9CLENBQUM7QUFFbkMsY0FBYyxVQUFVLENBQUM7QUFFekIsY0FBYyxlQUFlLENBQUM7QUFFOUIsY0FBYyxzQ0FBc0MsQ0FBQztBQUVyRCxjQUFjLCtCQUErQixDQUFDO0FBRTlDLGNBQWMsd0JBQXdCLENBQUM7QUFFdkMsY0FBYyxvQkFBb0IsQ0FBQztBQUVuQyxjQUFjLG1DQUFtQyxDQUFDO0FBRWxELGNBQWMsc0JBQXNCLENBQUM7QUFFckMsY0FBYyxTQUFTLENBQUM7QUFFeEIsY0FBYyxhQUFhLENBQUM7QUFFNUIsY0FBYyxhQUFhLENBQUM7QUFFNUIsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZ2V0LWVsZW1lbnQtcm91bmRlZC1yZWN0JztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWJhY2tncm91bmQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtY2FudmFzJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWNvbm5lY3Rpb24nO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtY29ubmVjdG9ycyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1kcmFnZ2FibGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtZmxvdyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1saW5lLWFsaWdubWVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1ub2RlJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLXNlbGVjdGlvbic7XG5cbmV4cG9ydCAqIGZyb20gJy4vZ2V0LWRlZXAtY2hpbGRyZW4tbm9kZXMtYW5kLWdyb3Vwcyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZ2V0LW5vcm1hbGl6ZWQtZWxlbWVudC1yZWN0JztcblxuZXhwb3J0ICogZnJvbSAnLi9nZXQtbm9ybWFsaXplZC1wb2ludCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vc29ydC1pdGVtLWxheWVycyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vdXBkYXRlLWl0ZW0tYW5kLWNoaWxkcmVuLWxheWVycyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vY3JlYXRlLWRvbS1lbGVtZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9pLW1hcCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vaXMtbW9iaWxlJztcblxuZXhwb3J0ICogZnJvbSAnLi9wcm92aWRlcnMnO1xuXG5leHBvcnQgKiBmcm9tICcuL3RyYW5zaXRpb24tZW5kJztcblxuIl19
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFDO0FBRTNDLGNBQWMsZ0JBQWdCLENBQUM7QUFFL0IsY0FBYyxZQUFZLENBQUM7QUFFM0IsY0FBYyxnQkFBZ0IsQ0FBQztBQUUvQixjQUFjLGdCQUFnQixDQUFDO0FBRS9CLGNBQWMsZUFBZSxDQUFDO0FBRTlCLGNBQWMsVUFBVSxDQUFDO0FBRXpCLGNBQWMsb0JBQW9CLENBQUM7QUFFbkMsY0FBYyxVQUFVLENBQUM7QUFFekIsY0FBYyxlQUFlLENBQUM7QUFFOUIsY0FBYyxzQ0FBc0MsQ0FBQztBQUVyRCxjQUFjLCtCQUErQixDQUFDO0FBRTlDLGNBQWMsd0JBQXdCLENBQUM7QUFFdkMsY0FBYyxvQkFBb0IsQ0FBQztBQUVuQyxjQUFjLG1DQUFtQyxDQUFDO0FBRWxELGNBQWMsc0JBQXNCLENBQUM7QUFFckMsY0FBYyxTQUFTLENBQUM7QUFFeEIsY0FBYyxhQUFhLENBQUM7QUFFNUIsY0FBYyxzQkFBc0IsQ0FBQztBQUVyQyxjQUFjLGFBQWEsQ0FBQztBQUU1QixjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9nZXQtZWxlbWVudC1yb3VuZGVkLXJlY3QnO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtYmFja2dyb3VuZCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1jYW52YXMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtY29ubmVjdGlvbic7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1jb25uZWN0b3JzJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWRyYWdnYWJsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1mbG93JztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWxpbmUtYWxpZ25tZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9mLW5vZGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2Ytc2VsZWN0aW9uJztcblxuZXhwb3J0ICogZnJvbSAnLi9nZXQtZGVlcC1jaGlsZHJlbi1ub2Rlcy1hbmQtZ3JvdXBzJztcblxuZXhwb3J0ICogZnJvbSAnLi9nZXQtbm9ybWFsaXplZC1lbGVtZW50LXJlY3QnO1xuXG5leHBvcnQgKiBmcm9tICcuL2dldC1ub3JtYWxpemVkLXBvaW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9zb3J0LWl0ZW0tbGF5ZXJzJztcblxuZXhwb3J0ICogZnJvbSAnLi91cGRhdGUtaXRlbS1hbmQtY2hpbGRyZW4tbGF5ZXJzJztcblxuZXhwb3J0ICogZnJvbSAnLi9jcmVhdGUtZG9tLWVsZW1lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2ktbWFwJztcblxuZXhwb3J0ICogZnJvbSAnLi9pcy1tb2JpbGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xvZy1leGVjdXRpb24tdGltZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vcHJvdmlkZXJzJztcblxuZXhwb3J0ICogZnJvbSAnLi90cmFuc2l0aW9uLWVuZCc7XG5cbiJdfQ==
@@ -0,0 +1,16 @@
1
+ export function LogExecutionTime(label) {
2
+ return function (target, propertyKey, descriptor) {
3
+ const originalMethod = descriptor.value;
4
+ descriptor.value = function (...args) {
5
+ console.time(label || String(propertyKey));
6
+ const result = originalMethod.apply(this, args);
7
+ if (result instanceof Promise) {
8
+ return result.finally(() => console.timeEnd(label || String(propertyKey)));
9
+ }
10
+ console.timeEnd(label || String(propertyKey));
11
+ return result;
12
+ };
13
+ return descriptor;
14
+ };
15
+ }
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLWV4ZWN1dGlvbi10aW1lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vbG9nLWV4ZWN1dGlvbi10aW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxLQUFjO0lBQzdDLE9BQU8sVUFDTCxNQUFjLEVBQ2QsV0FBNEIsRUFDNUIsVUFBd0M7UUFFeEMsTUFBTSxjQUFjLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQztRQUN4QyxVQUFVLENBQUMsS0FBSyxHQUFHLFVBQVUsR0FBRyxJQUFXO1lBQ3pDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1lBQzNDLE1BQU0sTUFBTSxHQUFHLGNBQWMsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBRWhELElBQUksTUFBTSxZQUFZLE9BQU8sRUFBRSxDQUFDO2dCQUM5QixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM3RSxDQUFDO1lBRUQsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7WUFDOUMsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQyxDQUFDO1FBRUYsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBMb2dFeGVjdXRpb25UaW1lKGxhYmVsPzogc3RyaW5nKTogTWV0aG9kRGVjb3JhdG9yIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIChcbiAgICB0YXJnZXQ6IE9iamVjdCxcbiAgICBwcm9wZXJ0eUtleTogc3RyaW5nIHwgc3ltYm9sLFxuICAgIGRlc2NyaXB0b3I6IFR5cGVkUHJvcGVydHlEZXNjcmlwdG9yPGFueT5cbiAgKTogVHlwZWRQcm9wZXJ0eURlc2NyaXB0b3I8YW55PiB8IHZvaWQge1xuICAgIGNvbnN0IG9yaWdpbmFsTWV0aG9kID0gZGVzY3JpcHRvci52YWx1ZTtcbiAgICBkZXNjcmlwdG9yLnZhbHVlID0gZnVuY3Rpb24gKC4uLmFyZ3M6IGFueVtdKSB7XG4gICAgICBjb25zb2xlLnRpbWUobGFiZWwgfHwgU3RyaW5nKHByb3BlcnR5S2V5KSk7XG4gICAgICBjb25zdCByZXN1bHQgPSBvcmlnaW5hbE1ldGhvZC5hcHBseSh0aGlzLCBhcmdzKTtcblxuICAgICAgaWYgKHJlc3VsdCBpbnN0YW5jZW9mIFByb21pc2UpIHtcbiAgICAgICAgcmV0dXJuIHJlc3VsdC5maW5hbGx5KCgpID0+IGNvbnNvbGUudGltZUVuZChsYWJlbCB8fCBTdHJpbmcocHJvcGVydHlLZXkpKSk7XG4gICAgICB9XG5cbiAgICAgIGNvbnNvbGUudGltZUVuZChsYWJlbCB8fCBTdHJpbmcocHJvcGVydHlLZXkpKTtcbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfTtcblxuICAgIHJldHVybiBkZXNjcmlwdG9yO1xuICB9O1xufVxuIl19
@@ -49,13 +49,13 @@ export class CreateConnectionDragHandler {
49
49
  }
50
50
  }
51
51
  _drawConnectionForCreate(fInputRect, fSide) {
52
- const line = this.fMediator.send(new CalculateConnectionLineByBehaviorRequest(this.fOutputWithRect.fRect, fInputRect, this.fConnection.fBehavior, this.fOutputWithRect.fConnector.fConnectableSide, fSide));
52
+ const line = this.fMediator.execute(new CalculateConnectionLineByBehaviorRequest(this.fOutputWithRect.fRect, fInputRect, this.fConnection.fBehavior, this.fOutputWithRect.fConnector.fConnectableSide, fSide));
53
53
  this.fConnection.setLine(line.point1, this.fOutputWithRect.fConnector.fConnectableSide, line.point2, fSide);
54
54
  this.fConnection.redraw();
55
55
  }
56
56
  _drawSnapConnection(fClosestInput) {
57
57
  if (fClosestInput) {
58
- const line = this.fMediator.send(new CalculateConnectionLineByBehaviorRequest(this.fOutputWithRect.fRect, fClosestInput.fRect, this.fSnapConnection.fBehavior, this.fOutputWithRect.fConnector.fConnectableSide, fClosestInput.fConnector.fConnectableSide));
58
+ const line = this.fMediator.execute(new CalculateConnectionLineByBehaviorRequest(this.fOutputWithRect.fRect, fClosestInput.fRect, this.fSnapConnection.fBehavior, this.fOutputWithRect.fConnector.fConnectableSide, fClosestInput.fConnector.fConnectableSide));
59
59
  this.fSnapConnection.show();
60
60
  this.fSnapConnection.setLine(line.point1, this.fOutputWithRect.fConnector.fConnectableSide, line.point2, fClosestInput.fConnector.fConnectableSide);
61
61
  this.fSnapConnection.redraw();
@@ -82,4 +82,4 @@ export class CreateConnectionDragHandler {
82
82
  this.fSnapConnection?.hide();
83
83
  }
84
84
  }
85
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNvbm5lY3Rpb24uZHJhZy1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9jb25uZWN0aW9ucy9jcmVhdGUtY29ubmVjdGlvbi9jcmVhdGUtY29ubmVjdGlvbi5kcmFnLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLHVCQUF1QixFQUN2Qix5Q0FBeUMsRUFDekMsd0NBQXdDLEVBQ3hDLDJCQUEyQixFQUU1QixNQUFNLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFBRSxpQkFBaUIsRUFBa0IsTUFBTSx1QkFBdUIsQ0FBQztBQUUxRSxPQUFPLEVBQUUsV0FBVyxFQUFpQixlQUFlLEVBQUUsY0FBYyxFQUFFLEtBQUssR0FBRyxNQUFNLFlBQVksQ0FBQztBQUdqRyxNQUFNLE9BQU8sMkJBQTJCO0lBaUI1QjtJQUNBO0lBQ0E7SUFDQTtJQWxCRixlQUFlLEdBQWdCLElBQUksV0FBVyxFQUFFLENBQUM7SUFFekQsSUFBVyxXQUFXO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWdCLENBQUM7SUFDaEQsQ0FBQztJQUVELElBQVksZUFBZTtRQUN6QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUEyQyxDQUFDO0lBQzNFLENBQUM7SUFFTyxlQUFlLENBQXNCO0lBRXJDLG9CQUFvQixHQUF5QixFQUFFLENBQUM7SUFFeEQsWUFDVSxTQUFvQixFQUNwQixnQkFBa0MsRUFDbEMsT0FBdUIsRUFDdkIscUJBQTZCO1FBSDdCLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDcEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxZQUFPLEdBQVAsT0FBTyxDQUFnQjtRQUN2QiwwQkFBcUIsR0FBckIscUJBQXFCLENBQVE7SUFFdkMsQ0FBQztJQUVNLG1CQUFtQjtRQUN4QixJQUFJLENB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QUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUNwSCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLGVBQWUsRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUMvQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJRHJhZ2dhYmxlSXRlbSB9IGZyb20gJy4uLy4uL2ktZHJhZ2dhYmxlLWl0ZW0nO1xuaW1wb3J0IHtcbiAgRmluZENsb3Nlc3RJbnB1dFJlcXVlc3QsXG4gIEdldEFsbENhbkJlQ29ubmVjdGVkSW5wdXRQb3NpdGlvbnNSZXF1ZXN0LFxuICBDYWxjdWxhdGVDb25uZWN0aW9uTGluZUJ5QmVoYXZpb3JSZXF1ZXN0LFxuICBHZXRDb25uZWN0b3JXaXRoUmVjdFJlcXVlc3QsXG4gIElDb25uZWN0b3JXaXRoUmVjdCwgSUNsb3Nlc3RJbnB1dFxufSBmcm9tICcuLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgRkNvbm5lY3Rpb25CYXNlLCBGU25hcENvbm5lY3Rpb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9mLWNvbm5lY3Rpb24nO1xuaW1wb3J0IHsgRUZDb25uZWN0YWJsZVNpZGUsIEZDb25uZWN0b3JCYXNlIH0gZnJvbSAnLi4vLi4vLi4vZi1jb25uZWN0b3JzJztcbmltcG9ydCB7IEZNZWRpYXRvciB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgUm91bmRlZFJlY3QsIElMaW5lLCBJUG9pbnQsIFBvaW50RXh0ZW5zaW9ucywgUmVjdEV4dGVuc2lvbnMsIFBvaW50LCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5cbmV4cG9ydCBjbGFzcyBDcmVhdGVDb25uZWN0aW9uRHJhZ0hhbmRsZXIgaW1wbGVtZW50cyBJRHJhZ2dhYmxlSXRlbSB7XG5cbiAgcHJpdmF0ZSB0b0Nvbm5lY3RvclJlY3Q6IFJvdW5kZWRSZWN0ID0gbmV3IFJvdW5kZWRSZWN0KCk7XG5cbiAgcHVibGljIGdldCBmQ29ubmVjdGlvbigpOiBGQ29ubmVjdGlvbkJhc2Uge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZlRlbXBDb25uZWN0aW9uITtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGZTbmFwQ29ubmVjdGlvbigpOiBGU25hcENvbm5lY3Rpb25Db21wb25lbnQgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZlNuYXBDb25uZWN0aW9uIGFzIEZTbmFwQ29ubmVjdGlvbkNvbXBvbmVudDtcbiAgfVxuXG4gIHByaXZhdGUgZk91dHB1dFdpdGhSZWN0ITogSUNvbm5lY3RvcldpdGhSZWN0O1xuXG4gIHByaXZhdGUgY2FuQmVDb25uZWN0ZWRJbnB1dHM6IElDb25uZWN0b3JXaXRoUmVjdFtdID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmTWVkaWF0b3I6IEZNZWRpYXRvcixcbiAgICBwcml2YXRlIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmUsXG4gICAgcHJpdmF0ZSBmT3V0cHV0OiBGQ29ubmVjdG9yQmFzZSxcbiAgICBwcml2YXRlIG9uUG9pbnRlckRvd25Qb3NpdGlvbjogSVBvaW50LFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBwcmVwYXJlRHJhZ1NlcXVlbmNlKCk6IHZvaWQge1xuICAgIHRoaXMuX2luaXRpYWxpemVTbmFwQ29ubmVjdGlvbigpO1xuICAgIHRoaXMuX2luaXRpYWxpemVDb25uZWN0aW9uRm9yQ3JlYXRlKCk7XG5cbiAgICB0aGlzLmNhbkJlQ29ubmVjdGVkSW5wdXRzID0gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJQ29ubmVjdG9yV2l0aFJlY3RbXT4oXG4gICAgICBuZXcgR2V0QWxsQ2FuQmVDb25uZWN0ZWRJbnB1dFBvc2l0aW9uc1JlcXVlc3QodGhpcy5mT3V0cHV0LmZJZClcbiAgICApO1xuXG4gICAgdGhpcy5mT3V0cHV0V2l0aFJlY3QgPSB0aGlzLmZNZWRpYXRvci5zZW5kPElDb25uZWN0b3JXaXRoUmVjdD4obmV3IEdldENvbm5lY3RvcldpdGhSZWN0UmVxdWVzdCh0aGlzLmZPdXRwdXQpKTtcblxuICAgIHRoaXMudG9Db25uZWN0b3JSZWN0ID0gUm91bmRlZFJlY3QuZnJvbVJlY3QoXG4gICAgICBSZWN0RXh0ZW5zaW9ucy5pbml0aWFsaXplKHRoaXMub25Qb2ludGVyRG93blBvc2l0aW9uLngsIHRoaXMub25Qb2ludGVyRG93blBvc2l0aW9uLnkpXG4gICAgKTtcblxuICAgIHRoaXMuZkNvbm5lY3Rpb24uc2hvdygpO1xuICAgIHRoaXMub25Qb2ludGVyTW92ZShQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2luaXRpYWxpemVTbmFwQ29ubmVjdGlvbigpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZlNuYXBDb25uZWN0aW9uKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuZlNuYXBDb25uZWN0aW9uLmZPdXRwdXRJZCA9IHRoaXMuZk91dHB1dC5mSWQ7XG4gICAgdGhpcy5mU25hcENvbm5lY3Rpb24uaW5pdGlhbGl6ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaW5pdGlhbGl6ZUNvbm5lY3Rpb25Gb3JDcmVhdGUoKTogdm9pZCB7XG4gICAgdGhpcy5mQ29ubmVjdGlvbi5mT3V0cHV0SWQgPSB0aGlzLmZPdXRwdXQuZklkO1xuICAgIHRoaXMuZkNvbm5lY3Rpb24uaW5pdGlhbGl6ZSgpO1xuICB9XG5cbiAgcHVibGljIG9uUG9pbnRlck1vdmUoZGlmZmVyZW5jZTogSVBvaW50KTogdm9pZCB7XG4gICAgY29uc3QgZkNsb3Nlc3RJbnB1dCA9IHRoaXMuX2ZpbmRDbG9zZXN0SW5wdXQoZGlmZmVyZW5jZSk7XG5cbiAgICB0aGlzLl9kcmF3Q29ubmVjdGlvbkZvckNyZWF0ZSh0aGlzLnRvQ29ubmVjdG9yUmVjdC5hZGRQb2ludChkaWZmZXJlbmNlKSwgZkNsb3Nlc3RJbnB1dD8uZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlIHx8IEVGQ29ubmVjdGFibGVTaWRlLlRPUCk7XG5cbiAgICBpZiAodGhpcy5mU25hcENvbm5lY3Rpb24pIHtcbiAgICAgIHRoaXMuX2RyYXdTbmFwQ29ubmVjdGlvbih0aGlzLl9nZXRDbG9zZXN0SW5wdXRGb3JTbmFwQ29ubmVjdGlvbihmQ2xvc2VzdElucHV0KSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZHJhd0Nvbm5lY3Rpb25Gb3JDcmVhdGUoZklucHV0UmVjdDogUm91bmRlZFJlY3QsIGZTaWRlOiBFRkNvbm5lY3RhYmxlU2lkZSk6IHZvaWQge1xuICAgIGNvbnN0IGxpbmUgPSB0aGlzLmZNZWRpYXRvci5zZW5kPElMaW5lPihuZXcgQ2FsY3VsYXRlQ29ubmVjdGlvbkxpbmVCeUJlaGF2aW9yUmVxdWVzdChcbiAgICAgICAgdGhpcy5mT3V0cHV0V2l0aFJlY3QuZlJlY3QsXG4gICAgICAgIGZJbnB1dFJlY3QsXG4gICAgICAgIHRoaXMuZkNvbm5lY3Rpb24uZkJlaGF2aW9yLFxuICAgICAgICB0aGlzLmZPdXRwdXRXaXRoUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsXG4gICAgICAgIGZTaWRlXG4gICAgICApXG4gICAgKTtcblxuICAgIHRoaXMuZkNvbm5lY3Rpb24uc2V0TGluZShsaW5lLnBvaW50MSwgdGhpcy5mT3V0cHV0V2l0aFJlY3QuZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlLCBsaW5lLnBvaW50MiwgZlNpZGUpO1xuICAgIHRoaXMuZkNvbm5lY3Rpb24ucmVkcmF3KCk7XG4gIH1cblxuICBwcml2YXRlIF9kcmF3U25hcENvbm5lY3Rpb24oZkNsb3Nlc3RJbnB1dDogSUNsb3Nlc3RJbnB1dCB8IHVuZGVmaW5lZCk6IHZvaWQge1xuICAgIGlmIChmQ2xvc2VzdElucHV0KSB7XG4gICAgICBjb25zdCBsaW5lID0gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJTGluZT4obmV3IENhbGN1bGF0ZUNvbm5lY3Rpb25MaW5lQnlCZWhhdmlvclJlcXVlc3QoXG4gICAgICAgICAgdGhpcy5mT3V0cHV0V2l0aFJlY3QuZlJlY3QsXG4gICAgICAgICAgZkNsb3Nlc3RJbnB1dC5mUmVjdCxcbiAgICAgICAgICB0aGlzLmZTbmFwQ29ubmVjdGlvbiEuZkJlaGF2aW9yLFxuICAgICAgICAgIHRoaXMuZk91dHB1dFdpdGhSZWN0LmZDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSxcbiAgICAgICAgICBmQ2xvc2VzdElucHV0LmZDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZVxuICAgICAgICApXG4gICAgICApO1xuICAgICAgdGhpcy5mU25hcENvbm5lY3Rpb24hLnNob3coKTtcbiAgICAgIHRoaXMuZlNuYXBDb25uZWN0aW9uIS5zZXRMaW5lKGxpbmUucG9pbnQxLCB0aGlzLmZPdXRwdXRXaXRoUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsIGxpbmUucG9pbnQyLCBmQ2xvc2VzdElucHV0LmZDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSk7XG4gICAgICB0aGlzLmZTbmFwQ29ubmVjdGlvbiEucmVkcmF3KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZlNuYXBDb25uZWN0aW9uPy5oaWRlKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldENsb3NldElucHV0KGRpZmZlcmVuY2U6IElQb2ludCk6IElDbG9zZXN0SW5wdXQgfCB1bmRlZmluZWQge1xuICAgIGlmICghdGhpcy5mU25hcENvbm5lY3Rpb24pIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuX2dldENsb3Nlc3RJbnB1dEZvclNuYXBDb25uZWN0aW9uKHRoaXMuX2ZpbmRDbG9zZXN0SW5wdXQoZGlmZmVyZW5jZSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZmluZENsb3Nlc3RJbnB1dChkaWZmZXJlbmNlOiBJUG9pbnQpOiBJQ2xvc2VzdElucHV0IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJQ2xvc2VzdElucHV0IHwgdW5kZWZpbmVkPihcbiAgICAgIG5ldyBGaW5kQ2xvc2VzdElucHV0UmVxdWVzdChcbiAgICAgICAgUG9pbnQuZnJvbVBvaW50KHRoaXMudG9Db25uZWN0b3JSZWN0KS5hZGQoZGlmZmVyZW5jZSksXG4gICAgICAgIHRoaXMuY2FuQmVDb25uZWN0ZWRJbnB1dHMsXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldENsb3Nlc3RJbnB1dEZvclNuYXBDb25uZWN0aW9uKGZDbG9zZXN0SW5wdXQ6IElDbG9zZXN0SW5wdXQgfCB1bmRlZmluZWQpOiBJQ2xvc2VzdElucHV0IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gZkNsb3Nlc3RJbnB1dCAmJiBmQ2xvc2VzdElucHV0LmRpc3RhbmNlIDwgdGhpcy5mU25hcENvbm5lY3Rpb24hLmZTbmFwVGhyZXNob2xkID8gZkNsb3Nlc3RJbnB1dCA6IHVuZGVmaW5lZDtcbiAgfVxuXG4gIHB1YmxpYyBvblBvaW50ZXJVcCgpOiB2b2lkIHtcbiAgICB0aGlzLmZDb25uZWN0aW9uLnJlZHJhdygpO1xuICAgIHRoaXMuZkNvbm5lY3Rpb24uaGlkZSgpO1xuICAgIHRoaXMuZlNuYXBDb25uZWN0aW9uPy5oaWRlKCk7XG4gIH1cbn1cbiJdfQ==
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNvbm5lY3Rpb24uZHJhZy1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9jb25uZWN0aW9ucy9jcmVhdGUtY29ubmVjdGlvbi9jcmVhdGUtY29ubmVjdGlvbi5kcmFnLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLHVCQUF1QixFQUN2Qix5Q0FBeUMsRUFDekMsd0NBQXdDLEVBQ3hDLDJCQUEyQixFQUU1QixNQUFNLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFBRSxpQkFBaUIsRUFBa0IsTUFBTSx1QkFBdUIsQ0FBQztBQUUxRSxPQUFPLEVBQUUsV0FBVyxFQUFpQixlQUFlLEVBQUUsY0FBYyxFQUFFLEtBQUssR0FBRyxNQUFNLFlBQVksQ0FBQztBQUdqRyxNQUFNLE9BQU8sMkJBQTJCO0lBaUI1QjtJQUNBO0lBQ0E7SUFDQTtJQWxCRixlQUFlLEdBQWdCLElBQUksV0FBVyxFQUFFLENBQUM7SUFFekQsSUFBVyxXQUFXO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWdCLENBQUM7SUFDaEQsQ0FBQztJQUVELElBQVksZUFBZTtRQUN6QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUEyQyxDQUFDO0lBQzNFLENBQUM7SUFFTyxlQUFlLENBQXNCO0lBRXJDLG9CQUFvQixHQUF5QixFQUFFLENBQUM7SUFFeEQsWUFDVSxTQUFvQixFQUNwQixnQkFBa0MsRUFDbEMsT0FBdUIsRUFDdkIscUJBQTZCO1FBSDdCLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDcEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxZQUFPLEdBQVAsT0FBTyxDQUFnQjtRQUN2QiwwQkFBcUIsR0FBckIscUJBQXFCLENBQVE7SUFFdkMsQ0FBQztJQUVNLG1CQUFtQjtRQUN4QixJQUFJLENB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QUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUNwSCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLGVBQWUsRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUMvQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJRHJhZ2dhYmxlSXRlbSB9IGZyb20gJy4uLy4uL2ktZHJhZ2dhYmxlLWl0ZW0nO1xuaW1wb3J0IHtcbiAgRmluZENsb3Nlc3RJbnB1dFJlcXVlc3QsXG4gIEdldEFsbENhbkJlQ29ubmVjdGVkSW5wdXRQb3NpdGlvbnNSZXF1ZXN0LFxuICBDYWxjdWxhdGVDb25uZWN0aW9uTGluZUJ5QmVoYXZpb3JSZXF1ZXN0LFxuICBHZXRDb25uZWN0b3JXaXRoUmVjdFJlcXVlc3QsXG4gIElDb25uZWN0b3JXaXRoUmVjdCwgSUNsb3Nlc3RJbnB1dFxufSBmcm9tICcuLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgRkNvbm5lY3Rpb25CYXNlLCBGU25hcENvbm5lY3Rpb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9mLWNvbm5lY3Rpb24nO1xuaW1wb3J0IHsgRUZDb25uZWN0YWJsZVNpZGUsIEZDb25uZWN0b3JCYXNlIH0gZnJvbSAnLi4vLi4vLi4vZi1jb25uZWN0b3JzJztcbmltcG9ydCB7IEZNZWRpYXRvciB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgUm91bmRlZFJlY3QsIElMaW5lLCBJUG9pbnQsIFBvaW50RXh0ZW5zaW9ucywgUmVjdEV4dGVuc2lvbnMsIFBvaW50LCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5cbmV4cG9ydCBjbGFzcyBDcmVhdGVDb25uZWN0aW9uRHJhZ0hhbmRsZXIgaW1wbGVtZW50cyBJRHJhZ2dhYmxlSXRlbSB7XG5cbiAgcHJpdmF0ZSB0b0Nvbm5lY3RvclJlY3Q6IFJvdW5kZWRSZWN0ID0gbmV3IFJvdW5kZWRSZWN0KCk7XG5cbiAgcHVibGljIGdldCBmQ29ubmVjdGlvbigpOiBGQ29ubmVjdGlvbkJhc2Uge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZlRlbXBDb25uZWN0aW9uITtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGZTbmFwQ29ubmVjdGlvbigpOiBGU25hcENvbm5lY3Rpb25Db21wb25lbnQgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZlNuYXBDb25uZWN0aW9uIGFzIEZTbmFwQ29ubmVjdGlvbkNvbXBvbmVudDtcbiAgfVxuXG4gIHByaXZhdGUgZk91dHB1dFdpdGhSZWN0ITogSUNvbm5lY3RvcldpdGhSZWN0O1xuXG4gIHByaXZhdGUgY2FuQmVDb25uZWN0ZWRJbnB1dHM6IElDb25uZWN0b3JXaXRoUmVjdFtdID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmTWVkaWF0b3I6IEZNZWRpYXRvcixcbiAgICBwcml2YXRlIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmUsXG4gICAgcHJpdmF0ZSBmT3V0cHV0OiBGQ29ubmVjdG9yQmFzZSxcbiAgICBwcml2YXRlIG9uUG9pbnRlckRvd25Qb3NpdGlvbjogSVBvaW50LFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBwcmVwYXJlRHJhZ1NlcXVlbmNlKCk6IHZvaWQge1xuICAgIHRoaXMuX2luaXRpYWxpemVTbmFwQ29ubmVjdGlvbigpO1xuICAgIHRoaXMuX2luaXRpYWxpemVDb25uZWN0aW9uRm9yQ3JlYXRlKCk7XG5cbiAgICB0aGlzLmNhbkJlQ29ubmVjdGVkSW5wdXRzID0gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJQ29ubmVjdG9yV2l0aFJlY3RbXT4oXG4gICAgICBuZXcgR2V0QWxsQ2FuQmVDb25uZWN0ZWRJbnB1dFBvc2l0aW9uc1JlcXVlc3QodGhpcy5mT3V0cHV0LmZJZClcbiAgICApO1xuXG4gICAgdGhpcy5mT3V0cHV0V2l0aFJlY3QgPSB0aGlzLmZNZWRpYXRvci5zZW5kPElDb25uZWN0b3JXaXRoUmVjdD4obmV3IEdldENvbm5lY3RvcldpdGhSZWN0UmVxdWVzdCh0aGlzLmZPdXRwdXQpKTtcblxuICAgIHRoaXMudG9Db25uZWN0b3JSZWN0ID0gUm91bmRlZFJlY3QuZnJvbVJlY3QoXG4gICAgICBSZWN0RXh0ZW5zaW9ucy5pbml0aWFsaXplKHRoaXMub25Qb2ludGVyRG93blBvc2l0aW9uLngsIHRoaXMub25Qb2ludGVyRG93blBvc2l0aW9uLnkpXG4gICAgKTtcblxuICAgIHRoaXMuZkNvbm5lY3Rpb24uc2hvdygpO1xuICAgIHRoaXMub25Qb2ludGVyTW92ZShQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2luaXRpYWxpemVTbmFwQ29ubmVjdGlvbigpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZlNuYXBDb25uZWN0aW9uKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuZlNuYXBDb25uZWN0aW9uLmZPdXRwdXRJZCA9IHRoaXMuZk91dHB1dC5mSWQ7XG4gICAgdGhpcy5mU25hcENvbm5lY3Rpb24uaW5pdGlhbGl6ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaW5pdGlhbGl6ZUNvbm5lY3Rpb25Gb3JDcmVhdGUoKTogdm9pZCB7XG4gICAgdGhpcy5mQ29ubmVjdGlvbi5mT3V0cHV0SWQgPSB0aGlzLmZPdXRwdXQuZklkO1xuICAgIHRoaXMuZkNvbm5lY3Rpb24uaW5pdGlhbGl6ZSgpO1xuICB9XG5cbiAgcHVibGljIG9uUG9pbnRlck1vdmUoZGlmZmVyZW5jZTogSVBvaW50KTogdm9pZCB7XG4gICAgY29uc3QgZkNsb3Nlc3RJbnB1dCA9IHRoaXMuX2ZpbmRDbG9zZXN0SW5wdXQoZGlmZmVyZW5jZSk7XG5cbiAgICB0aGlzLl9kcmF3Q29ubmVjdGlvbkZvckNyZWF0ZSh0aGlzLnRvQ29ubmVjdG9yUmVjdC5hZGRQb2ludChkaWZmZXJlbmNlKSwgZkNsb3Nlc3RJbnB1dD8uZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlIHx8IEVGQ29ubmVjdGFibGVTaWRlLlRPUCk7XG5cbiAgICBpZiAodGhpcy5mU25hcENvbm5lY3Rpb24pIHtcbiAgICAgIHRoaXMuX2RyYXdTbmFwQ29ubmVjdGlvbih0aGlzLl9nZXRDbG9zZXN0SW5wdXRGb3JTbmFwQ29ubmVjdGlvbihmQ2xvc2VzdElucHV0KSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZHJhd0Nvbm5lY3Rpb25Gb3JDcmVhdGUoZklucHV0UmVjdDogUm91bmRlZFJlY3QsIGZTaWRlOiBFRkNvbm5lY3RhYmxlU2lkZSk6IHZvaWQge1xuICAgIGNvbnN0IGxpbmUgPSB0aGlzLmZNZWRpYXRvci5leGVjdXRlPElMaW5lPihuZXcgQ2FsY3VsYXRlQ29ubmVjdGlvbkxpbmVCeUJlaGF2aW9yUmVxdWVzdChcbiAgICAgICAgdGhpcy5mT3V0cHV0V2l0aFJlY3QuZlJlY3QsXG4gICAgICAgIGZJbnB1dFJlY3QsXG4gICAgICAgIHRoaXMuZkNvbm5lY3Rpb24uZkJlaGF2aW9yLFxuICAgICAgICB0aGlzLmZPdXRwdXRXaXRoUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsXG4gICAgICAgIGZTaWRlXG4gICAgICApXG4gICAgKTtcblxuICAgIHRoaXMuZkNvbm5lY3Rpb24uc2V0TGluZShsaW5lLnBvaW50MSwgdGhpcy5mT3V0cHV0V2l0aFJlY3QuZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlLCBsaW5lLnBvaW50MiwgZlNpZGUpO1xuICAgIHRoaXMuZkNvbm5lY3Rpb24ucmVkcmF3KCk7XG4gIH1cblxuICBwcml2YXRlIF9kcmF3U25hcENvbm5lY3Rpb24oZkNsb3Nlc3RJbnB1dDogSUNsb3Nlc3RJbnB1dCB8IHVuZGVmaW5lZCk6IHZvaWQge1xuICAgIGlmIChmQ2xvc2VzdElucHV0KSB7XG4gICAgICBjb25zdCBsaW5lID0gdGhpcy5mTWVkaWF0b3IuZXhlY3V0ZTxJTGluZT4obmV3IENhbGN1bGF0ZUNvbm5lY3Rpb25MaW5lQnlCZWhhdmlvclJlcXVlc3QoXG4gICAgICAgICAgdGhpcy5mT3V0cHV0V2l0aFJlY3QuZlJlY3QsXG4gICAgICAgICAgZkNsb3Nlc3RJbnB1dC5mUmVjdCxcbiAgICAgICAgICB0aGlzLmZTbmFwQ29ubmVjdGlvbiEuZkJlaGF2aW9yLFxuICAgICAgICAgIHRoaXMuZk91dHB1dFdpdGhSZWN0LmZDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSxcbiAgICAgICAgICBmQ2xvc2VzdElucHV0LmZDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZVxuICAgICAgICApXG4gICAgICApO1xuICAgICAgdGhpcy5mU25hcENvbm5lY3Rpb24hLnNob3coKTtcbiAgICAgIHRoaXMuZlNuYXBDb25uZWN0aW9uIS5zZXRMaW5lKGxpbmUucG9pbnQxLCB0aGlzLmZPdXRwdXRXaXRoUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsIGxpbmUucG9pbnQyLCBmQ2xvc2VzdElucHV0LmZDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSk7XG4gICAgICB0aGlzLmZTbmFwQ29ubmVjdGlvbiEucmVkcmF3KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZlNuYXBDb25uZWN0aW9uPy5oaWRlKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldENsb3NldElucHV0KGRpZmZlcmVuY2U6IElQb2ludCk6IElDbG9zZXN0SW5wdXQgfCB1bmRlZmluZWQge1xuICAgIGlmICghdGhpcy5mU25hcENvbm5lY3Rpb24pIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuX2dldENsb3Nlc3RJbnB1dEZvclNuYXBDb25uZWN0aW9uKHRoaXMuX2ZpbmRDbG9zZXN0SW5wdXQoZGlmZmVyZW5jZSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZmluZENsb3Nlc3RJbnB1dChkaWZmZXJlbmNlOiBJUG9pbnQpOiBJQ2xvc2VzdElucHV0IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJQ2xvc2VzdElucHV0IHwgdW5kZWZpbmVkPihcbiAgICAgIG5ldyBGaW5kQ2xvc2VzdElucHV0UmVxdWVzdChcbiAgICAgICAgUG9pbnQuZnJvbVBvaW50KHRoaXMudG9Db25uZWN0b3JSZWN0KS5hZGQoZGlmZmVyZW5jZSksXG4gICAgICAgIHRoaXMuY2FuQmVDb25uZWN0ZWRJbnB1dHMsXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldENsb3Nlc3RJbnB1dEZvclNuYXBDb25uZWN0aW9uKGZDbG9zZXN0SW5wdXQ6IElDbG9zZXN0SW5wdXQgfCB1bmRlZmluZWQpOiBJQ2xvc2VzdElucHV0IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gZkNsb3Nlc3RJbnB1dCAmJiBmQ2xvc2VzdElucHV0LmRpc3RhbmNlIDwgdGhpcy5mU25hcENvbm5lY3Rpb24hLmZTbmFwVGhyZXNob2xkID8gZkNsb3Nlc3RJbnB1dCA6IHVuZGVmaW5lZDtcbiAgfVxuXG4gIHB1YmxpYyBvblBvaW50ZXJVcCgpOiB2b2lkIHtcbiAgICB0aGlzLmZDb25uZWN0aW9uLnJlZHJhdygpO1xuICAgIHRoaXMuZkNvbm5lY3Rpb24uaGlkZSgpO1xuICAgIHRoaXMuZlNuYXBDb25uZWN0aW9uPy5oaWRlKCk7XG4gIH1cbn1cbiJdfQ==