@foblex/flow 12.6.8 → 12.7.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 (48) hide show
  1. package/README.md +1 -1
  2. package/bundles/foblex-flow.umd.js +92 -22
  3. package/bundles/foblex-flow.umd.js.map +1 -1
  4. package/domain/f-connection/add-connection-to-store/add-connection-to-store-request.d.ts +5 -0
  5. package/domain/f-connection/add-connection-to-store/add-connection-to-store.execution.d.ts +11 -0
  6. package/domain/f-connection/add-connection-to-store/index.d.ts +2 -0
  7. package/domain/f-connection/index.d.ts +2 -0
  8. package/domain/f-connection/providers.d.ts +3 -1
  9. package/domain/f-connection/remove-connection-from-store/index.d.ts +2 -0
  10. package/domain/f-connection/remove-connection-from-store/remove-connection-from-store-request.d.ts +5 -0
  11. package/domain/f-connection/remove-connection-from-store/remove-connection-from-store.execution.d.ts +11 -0
  12. package/domain/providers.d.ts +1 -1
  13. package/esm2015/domain/f-background/add-pattern-to-background/add-pattern-to-background.execution.js +2 -2
  14. package/esm2015/domain/f-canvas/center-group-or-node/center-group-or-node.execution.js +2 -2
  15. package/esm2015/domain/f-canvas/fit-to-flow/fit-to-flow.execution.js +2 -2
  16. package/esm2015/domain/f-canvas/reset-scale-and-center/reset-scale-and-center.execution.js +2 -2
  17. package/esm2015/domain/f-connection/add-connection-to-store/add-connection-to-store-request.js +6 -0
  18. package/esm2015/domain/f-connection/add-connection-to-store/add-connection-to-store.execution.js +25 -0
  19. package/esm2015/domain/f-connection/add-connection-to-store/index.js +3 -0
  20. package/esm2015/domain/f-connection/index.js +3 -1
  21. package/esm2015/domain/f-connection/providers.js +5 -1
  22. package/esm2015/domain/f-connection/remove-connection-from-store/index.js +3 -0
  23. package/esm2015/domain/f-connection/remove-connection-from-store/remove-connection-from-store-request.js +6 -0
  24. package/esm2015/domain/f-connection/remove-connection-from-store/remove-connection-from-store.execution.js +29 -0
  25. package/esm2015/f-canvas/f-canvas.component.js +12 -5
  26. package/esm2015/f-connection/f-connection/f-connection.component.js +16 -13
  27. package/esm2015/f-connectors/e-f-connectable-side.js +2 -2
  28. package/esm2015/f-connectors/f-node-input/f-node-input.directive.js +4 -4
  29. package/esm2015/f-connectors/f-node-output/f-node-output.directive.js +3 -3
  30. package/esm2015/f-draggable/connections/reassign-connection/f-reassign-connection.event.js +3 -2
  31. package/esm2015/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.execution.js +3 -3
  32. package/esm2015/f-draggable/node/connection-source.drag-handler.js +2 -2
  33. package/esm2015/f-draggable/node/connection-target.drag-handler.js +2 -2
  34. package/esm2015/f-draggable/node/connection.drag-handler.js +2 -2
  35. package/esm2015/f-draggable/node-resize/node-resize.drag-handler.js +3 -2
  36. package/esm2015/f-external-item/domain/external-item-preparation/external-item-preparation.execution.js +3 -3
  37. package/esm2015/f-external-item/domain/external-item-preparation/external-item-preparation.validator.js +3 -3
  38. package/esm2015/f-external-item/domain/external-item.drag-handler.js +1 -1
  39. package/f-canvas/f-canvas.component.d.ts +1 -0
  40. package/f-connection/f-connection/f-connection.component.d.ts +3 -1
  41. package/f-connectors/e-f-connectable-side.d.ts +1 -1
  42. package/f-draggable/connections/reassign-connection/f-reassign-connection.event.d.ts +3 -1
  43. package/f-external-item/domain/external-item-preparation/external-item-preparation.execution.d.ts +1 -1
  44. package/f-external-item/domain/external-item-preparation/external-item-preparation.validator.d.ts +1 -1
  45. package/f-external-item/domain/external-item.drag-handler.d.ts +1 -1
  46. package/fesm2015/foblex-flow.js +87 -23
  47. package/fesm2015/foblex-flow.js.map +1 -1
  48. package/package.json +2 -2
@@ -0,0 +1,5 @@
1
+ import { FConnectionBase } from '../../../f-connection';
2
+ export declare class AddConnectionToStoreRequest {
3
+ fConnection: FConnectionBase;
4
+ constructor(fConnection: FConnectionBase);
5
+ }
@@ -0,0 +1,11 @@
1
+ import { IExecution } from '@foblex/mediator';
2
+ import { AddConnectionToStoreRequest } from './add-connection-to-store-request';
3
+ import { FComponentsStore } from '../../../f-storage';
4
+ import * as i0 from "@angular/core";
5
+ export declare class AddConnectionToStoreExecution implements IExecution<AddConnectionToStoreRequest, void> {
6
+ private fComponentsStore;
7
+ constructor(fComponentsStore: FComponentsStore);
8
+ handle(request: AddConnectionToStoreRequest): void;
9
+ static ɵfac: i0.ɵɵFactoryDeclaration<AddConnectionToStoreExecution, never>;
10
+ static ɵprov: i0.ɵɵInjectableDeclaration<AddConnectionToStoreExecution>;
11
+ }
@@ -0,0 +1,2 @@
1
+ export * from './add-connection-to-store.execution';
2
+ export * from './add-connection-to-store-request';
@@ -1,4 +1,6 @@
1
+ export * from './add-connection-to-store';
1
2
  export * from './find-closest-input-using-snap-threshold';
2
3
  export * from './get-all-can-be-connected-input-positions';
3
4
  export * from './get-connector-with-rect';
5
+ export * from './remove-connection-from-store';
4
6
  export * from './providers';
@@ -1,4 +1,6 @@
1
1
  import { FindClosestInputUsingSnapThresholdExecution } from './find-closest-input-using-snap-threshold';
2
2
  import { GetAllCanBeConnectedInputPositionsExecution } from './get-all-can-be-connected-input-positions';
3
3
  import { GetConnectorWithRectExecution } from './get-connector-with-rect';
4
- export declare const F_CONNECTION_FEATURES: (typeof FindClosestInputUsingSnapThresholdExecution | typeof GetAllCanBeConnectedInputPositionsExecution | typeof GetConnectorWithRectExecution)[];
4
+ import { AddConnectionToStoreExecution } from './add-connection-to-store';
5
+ import { RemoveConnectionFromStoreExecution } from './remove-connection-from-store';
6
+ export declare const F_CONNECTION_FEATURES: (typeof AddConnectionToStoreExecution | typeof FindClosestInputUsingSnapThresholdExecution | typeof GetAllCanBeConnectedInputPositionsExecution | typeof GetConnectorWithRectExecution | typeof RemoveConnectionFromStoreExecution)[];
@@ -0,0 +1,2 @@
1
+ export * from './remove-connection-from-store.execution';
2
+ export * from './remove-connection-from-store-request';
@@ -0,0 +1,5 @@
1
+ import { FConnectionBase } from '../../../f-connection';
2
+ export declare class RemoveConnectionFromStoreRequest {
3
+ fConnection: FConnectionBase;
4
+ constructor(fConnection: FConnectionBase);
5
+ }
@@ -0,0 +1,11 @@
1
+ import { IExecution } from '@foblex/mediator';
2
+ import { RemoveConnectionFromStoreRequest } from './remove-connection-from-store-request';
3
+ import { FComponentsStore } from '../../../f-storage';
4
+ import * as i0 from "@angular/core";
5
+ export declare class RemoveConnectionFromStoreExecution implements IExecution<RemoveConnectionFromStoreRequest, void> {
6
+ private fComponentsStore;
7
+ constructor(fComponentsStore: FComponentsStore);
8
+ handle(request: RemoveConnectionFromStoreRequest): void;
9
+ static ɵfac: i0.ɵɵFactoryDeclaration<RemoveConnectionFromStoreExecution, never>;
10
+ static ɵprov: i0.ɵɵInjectableDeclaration<RemoveConnectionFromStoreExecution>;
11
+ }
@@ -14,4 +14,4 @@ import { SortItemLayersExecution, SortItemsByParentExecution, SortNodeLayersExec
14
14
  import { GetDeepChildrenNodesAndGroupsExecution } from './get-deep-children-nodes-and-groups';
15
15
  import { CreateRoundedRectFromElementExecution } from './create-rounded-rect-from-element';
16
16
  import { ShowConnectionsAfterCalculationsExecution } from './show-connections-after-calculations';
17
- export declare const COMMON_PROVIDERS: (typeof import("./f-canvas").CenterGroupOrNodeExecution | typeof import("./f-canvas").FitToFlowExecution | typeof import("./f-canvas").InputCanvasPositionExecution | typeof import("./f-canvas").InputCanvasScaleExecution | typeof import("./f-canvas").ResetScaleExecution | typeof import("./f-canvas").ResetScaleAndCenterExecution | typeof import("./f-canvas").UpdateScaleExecution | typeof import("./f-connection").FindClosestInputUsingSnapThresholdExecution | typeof import("./f-connection").GetAllCanBeConnectedInputPositionsExecution | typeof import("./f-connection").GetConnectorWithRectExecution | typeof import("./f-background").AddPatternToBackgroundExecution | typeof CreateConnectionMarkersExecution | typeof CreateRoundedRectFromElementExecution | typeof EmitTransformChangesExecution | typeof import("./f-selection").ClearSelectionExecution | typeof import("./f-selection").GetSelectionExecution | typeof import("./f-selection").SelectExecution | typeof import("./f-selection").SelectAllExecution | typeof import("./f-selection").SelectAndUpdateNodeLayerExecution | typeof GetCanBeSelectedItemsExecution | typeof GetDeepChildrenNodesAndGroupsExecution | typeof GetConnectionLineExecution | typeof GetElementRectInFlowExecution | typeof import("./get-flow-state").GetFlowStateExecution | typeof import("./get-flow-state").GetFlowStateNodesExecution | typeof import("./get-flow-state").GetFlowStateConnectionsExecution | typeof GetScaledNodeRectsWithFlowPositionExecution | typeof GetNodesRectExecution | typeof GetPositionInFlowExecution | typeof IsConnectionUnderNodeExecution | typeof RedrawConnectionsExecution | typeof ShowConnectionsAfterCalculationsExecution | typeof SortItemLayersExecution | typeof SortItemsByParentExecution | typeof SortNodeLayersExecution | typeof SubscribeOnTransformChangesExecution | typeof UpdateItemAndChildrenLayersExecution | typeof MoveFrontElementsBeforeTargetElementExecution)[];
17
+ export declare const COMMON_PROVIDERS: (typeof import("./f-canvas").CenterGroupOrNodeExecution | typeof import("./f-canvas").FitToFlowExecution | typeof import("./f-canvas").InputCanvasPositionExecution | typeof import("./f-canvas").InputCanvasScaleExecution | typeof import("./f-canvas").ResetScaleExecution | typeof import("./f-canvas").ResetScaleAndCenterExecution | typeof import("./f-canvas").UpdateScaleExecution | typeof import("./f-connection").AddConnectionToStoreExecution | typeof import("./f-connection").FindClosestInputUsingSnapThresholdExecution | typeof import("./f-connection").GetAllCanBeConnectedInputPositionsExecution | typeof import("./f-connection").GetConnectorWithRectExecution | typeof import("./f-connection").RemoveConnectionFromStoreExecution | typeof import("./f-background").AddPatternToBackgroundExecution | typeof CreateConnectionMarkersExecution | typeof CreateRoundedRectFromElementExecution | typeof EmitTransformChangesExecution | typeof import("./f-selection").ClearSelectionExecution | typeof import("./f-selection").GetSelectionExecution | typeof import("./f-selection").SelectExecution | typeof import("./f-selection").SelectAllExecution | typeof import("./f-selection").SelectAndUpdateNodeLayerExecution | typeof GetCanBeSelectedItemsExecution | typeof GetDeepChildrenNodesAndGroupsExecution | typeof GetConnectionLineExecution | typeof GetElementRectInFlowExecution | typeof import("./get-flow-state").GetFlowStateExecution | typeof import("./get-flow-state").GetFlowStateNodesExecution | typeof import("./get-flow-state").GetFlowStateConnectionsExecution | typeof GetScaledNodeRectsWithFlowPositionExecution | typeof GetNodesRectExecution | typeof GetPositionInFlowExecution | typeof IsConnectionUnderNodeExecution | typeof RedrawConnectionsExecution | typeof ShowConnectionsAfterCalculationsExecution | typeof SortItemLayersExecution | typeof SortItemsByParentExecution | typeof SortNodeLayersExecution | typeof SubscribeOnTransformChangesExecution | typeof UpdateItemAndChildrenLayersExecution | typeof MoveFrontElementsBeforeTargetElementExecution)[];
@@ -3,7 +3,7 @@ import { TransformModelExtensions } from '@foblex/2d';
3
3
  import { AddPatternToBackgroundRequest } from './add-pattern-to-background.request';
4
4
  import { Injectable } from '@angular/core';
5
5
  import { FExecutionRegister } from '@foblex/mediator';
6
- import { createSVGElement } from '../../index';
6
+ import { createSVGElement } from '../../../domain';
7
7
  import * as i0 from "@angular/core";
8
8
  import * as i1 from "../../../f-storage";
9
9
  import * as i2 from "@foblex/platform";
@@ -45,4 +45,4 @@ export { AddPatternToBackgroundExecution };
45
45
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AddPatternToBackgroundExecution, decorators: [{
46
46
  type: Injectable
47
47
  }], ctorParameters: function () { return [{ type: i1.FComponentsStore }, { type: i2.BrowserService }]; } });
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXBhdHRlcm4tdG8tYmFja2dyb3VuZC5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLWJhY2tncm91bmQvYWRkLXBhdHRlcm4tdG8tYmFja2dyb3VuZC9hZGQtcGF0dGVybi10by1iYWNrZ3JvdW5kLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3RELE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGtCQUFrQixFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDOzs7O0FBSy9DLElBQUksUUFBUSxHQUFXLENBQUMsQ0FBQztJQUlaLCtCQUErQixTQUEvQiwrQkFBK0I7SUFNMUMsWUFDVSxnQkFBa0MsRUFDbEMsUUFBd0I7UUFEeEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxhQUFRLEdBQVIsUUFBUSxDQUFnQjtJQUVsQyxDQUFDO0lBUkQsSUFBWSxXQUFXO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVksQ0FBQztJQUM1QyxDQUFDO0lBUU0sTUFBTSxDQUFDLE9BQXNDOztRQUNsRCxNQUFNLFFBQVEsR0FBRyxDQUFBLE1BQUEsT0FBTyxDQUFDLFFBQVEsMENBQUUsV0FBVyxDQUFDLG9CQUFvQixDQUFDLFNBQVMsQ0FBQyxLQUFJLEVBQUUsQ0FBQztRQUNyRixNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUUsQ0FBQyxDQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUM1RCxJQUFJLE9BQU8sRUFBRTtZQUNYLE1BQU0sSUFBSSxHQUFHLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDckQsT0FBTyxDQUFDLEVBQUUsR0FBRyx1QkFBdUIsR0FBRyxRQUFRLEVBQUUsQ0FBQztZQUNsRCxNQUFBLE9BQU8sQ0FBQyxRQUFRLDBDQUFFLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUN2QyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzFCLE1BQUEsTUFBQSxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsMENBQUUsVUFBVSwwQ0FBRSxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUQsTUFBTSxJQUFJLEdBQUcsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNyRCxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxPQUFPLEdBQUcsT0FBTyxDQUFDLEVBQUUsR0FBRyxHQUFHLENBQUMsQ0FBQztZQUN0RCxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztZQUNuQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUNwQyxNQUFBLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLFVBQVUsMENBQUUsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzNELE1BQU0sU0FBUyxHQUFHLENBQUEsTUFBQSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTywwQ0FBRSxTQUFTLEtBQUksd0JBQXdCLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDakcsTUFBQSxPQUFPLENBQUMsUUFBUSwwQ0FBRSxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDM0M7SUFDSCxDQUFDO0NBQ0YsQ0FBQTs2SEE5QlksK0JBQStCO2lJQUEvQiwrQkFBK0I7QUFBL0IsK0JBQStCO0lBRDNDLGtCQUFrQixDQUFDLDZCQUE2QixDQUFDO0dBQ3JDLCtCQUErQixDQThCM0M7U0E5QlksK0JBQStCOzRGQUEvQiwrQkFBK0I7a0JBRjNDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2Zvcm1Nb2RlbEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEFkZFBhdHRlcm5Ub0JhY2tncm91bmRSZXF1ZXN0IH0gZnJvbSAnLi9hZGQtcGF0dGVybi10by1iYWNrZ3JvdW5kLnJlcXVlc3QnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBjcmVhdGVTVkdFbGVtZW50IH0gZnJvbSAnLi4vLi4vaW5kZXgnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBCcm93c2VyU2VydmljZSB9IGZyb20gJ0Bmb2JsZXgvcGxhdGZvcm0nO1xuaW1wb3J0IHsgRkJhY2tncm91bmRCYXNlIH0gZnJvbSAnLi4vLi4vLi4vZi1iYWNrZ3JvdWQnO1xuXG5sZXQgdW5pcXVlSWQ6IG51bWJlciA9IDA7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoQWRkUGF0dGVyblRvQmFja2dyb3VuZFJlcXVlc3QpXG5leHBvcnQgY2xhc3MgQWRkUGF0dGVyblRvQmFja2dyb3VuZEV4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248QWRkUGF0dGVyblRvQmFja2dyb3VuZFJlcXVlc3QsIHZvaWQ+IHtcblxuICBwcml2YXRlIGdldCBmQmFja2dyb3VuZCgpOiBGQmFja2dyb3VuZEJhc2Uge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkJhY2tncm91bmQhO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgIHByaXZhdGUgZkJyb3dzZXI6IEJyb3dzZXJTZXJ2aWNlXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBBZGRQYXR0ZXJuVG9CYWNrZ3JvdW5kUmVxdWVzdCk6IHZvaWQge1xuICAgIGNvbnN0IGNoaWxkcmVuID0gcmVxdWVzdC5mUGF0dGVybj8uaG9zdEVsZW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3BhdHRlcm4nKSB8fCBbXTtcbiAgICBjb25zdCBwYXR0ZXJuID0gY2hpbGRyZW4ubGVuZ3RoID8gY2hpbGRyZW5bIDAgXSA6IHVuZGVmaW5lZDtcbiAgICBpZiAocGF0dGVybikge1xuICAgICAgY29uc3QgZGVmcyA9IGNyZWF0ZVNWR0VsZW1lbnQoJ2RlZnMnLCB0aGlzLmZCcm93c2VyKTtcbiAgICAgIHBhdHRlcm4uaWQgPSAnZi1iYWNrZ3JvdW5kLXBhdHRlcm4tJyArIHVuaXF1ZUlkKys7XG4gICAgICByZXF1ZXN0LmZQYXR0ZXJuPy5ob3N0RWxlbWVudC5yZW1vdmUoKTtcbiAgICAgIGRlZnMuYXBwZW5kQ2hpbGQocGF0dGVybik7XG4gICAgICB0aGlzLmZCYWNrZ3JvdW5kLmhvc3RFbGVtZW50Py5maXJzdENoaWxkPy5hcHBlbmRDaGlsZChkZWZzKTtcbiAgICAgIGNvbnN0IHJlY3QgPSBjcmVhdGVTVkdFbGVtZW50KCdyZWN0JywgdGhpcy5mQnJvd3Nlcik7XG4gICAgICByZWN0LnNldEF0dHJpYnV0ZSgnZmlsbCcsICd1cmwoIycgKyBwYXR0ZXJuLmlkICsgJyknKTtcbiAgICAgIHJlY3Quc2V0QXR0cmlidXRlKCd3aWR0aCcsICcxMDAlJyk7XG4gICAgICByZWN0LnNldEF0dHJpYnV0ZSgnaGVpZ2h0JywgJzEwMCUnKTtcbiAgICAgIHRoaXMuZkJhY2tncm91bmQuaG9zdEVsZW1lbnQuZmlyc3RDaGlsZD8uYXBwZW5kQ2hpbGQocmVjdCk7XG4gICAgICBjb25zdCB0cmFuc2Zvcm0gPSB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcz8udHJhbnNmb3JtIHx8IFRyYW5zZm9ybU1vZGVsRXh0ZW5zaW9ucy5kZWZhdWx0KCk7XG4gICAgICByZXF1ZXN0LmZQYXR0ZXJuPy5zZXRUcmFuc2Zvcm0odHJhbnNmb3JtKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXBhdHRlcm4tdG8tYmFja2dyb3VuZC5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLWJhY2tncm91bmQvYWRkLXBhdHRlcm4tdG8tYmFja2dyb3VuZC9hZGQtcGF0dGVybi10by1iYWNrZ3JvdW5kLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3RELE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGtCQUFrQixFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFLbkQsSUFBSSxRQUFRLEdBQVcsQ0FBQyxDQUFDO0lBSVosK0JBQStCLFNBQS9CLCtCQUErQjtJQU0xQyxZQUNVLGdCQUFrQyxFQUNsQyxRQUF3QjtRQUR4QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLGFBQVEsR0FBUixRQUFRLENBQWdCO0lBRWxDLENBQUM7SUFSRCxJQUFZLFdBQVc7UUFDckIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsV0FBWSxDQUFDO0lBQzVDLENBQUM7SUFRTSxNQUFNLENBQUMsT0FBc0M7O1FBQ2xELE1BQU0sUUFBUSxHQUFHLENBQUEsTUFBQSxPQUFPLENBQUMsUUFBUSwwQ0FBRSxXQUFXLENBQUMsb0JBQW9CLENBQUMsU0FBUyxDQUFDLEtBQUksRUFBRSxDQUFDO1FBQ3JGLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBRSxDQUFDLENBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQzVELElBQUksT0FBTyxFQUFFO1lBQ1gsTUFBTSxJQUFJLEdBQUcsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNyRCxPQUFPLENBQUMsRUFBRSxHQUFHLHVCQUF1QixHQUFHLFFBQVEsRUFBRSxDQUFDO1lBQ2xELE1BQUEsT0FBTyxDQUFDLFFBQVEsMENBQUUsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDMUIsTUFBQSxNQUFBLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVywwQ0FBRSxVQUFVLDBDQUFFLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM1RCxNQUFNLElBQUksR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3JELElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLE9BQU8sR0FBRyxPQUFPLENBQUMsRUFBRSxHQUFHLEdBQUcsQ0FBQyxDQUFDO1lBQ3RELElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ25DLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ3BDLE1BQUEsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsVUFBVSwwQ0FBRSxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDM0QsTUFBTSxTQUFTLEdBQUcsQ0FBQSxNQUFBLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLDBDQUFFLFNBQVMsS0FBSSx3QkFBd0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNqRyxNQUFBLE9BQU8sQ0FBQyxRQUFRLDBDQUFFLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUMzQztJQUNILENBQUM7Q0FDRixDQUFBOzZIQTlCWSwrQkFBK0I7aUlBQS9CLCtCQUErQjtBQUEvQiwrQkFBK0I7SUFEM0Msa0JBQWtCLENBQUMsNkJBQTZCLENBQUM7R0FDckMsK0JBQStCLENBOEIzQztTQTlCWSwrQkFBK0I7NEZBQS9CLCtCQUErQjtrQkFGM0MsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zZm9ybU1vZGVsRXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgQWRkUGF0dGVyblRvQmFja2dyb3VuZFJlcXVlc3QgfSBmcm9tICcuL2FkZC1wYXR0ZXJuLXRvLWJhY2tncm91bmQucmVxdWVzdCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IGNyZWF0ZVNWR0VsZW1lbnQgfSBmcm9tICcuLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBCcm93c2VyU2VydmljZSB9IGZyb20gJ0Bmb2JsZXgvcGxhdGZvcm0nO1xuaW1wb3J0IHsgRkJhY2tncm91bmRCYXNlIH0gZnJvbSAnLi4vLi4vLi4vZi1iYWNrZ3JvdWQnO1xuXG5sZXQgdW5pcXVlSWQ6IG51bWJlciA9IDA7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoQWRkUGF0dGVyblRvQmFja2dyb3VuZFJlcXVlc3QpXG5leHBvcnQgY2xhc3MgQWRkUGF0dGVyblRvQmFja2dyb3VuZEV4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248QWRkUGF0dGVyblRvQmFja2dyb3VuZFJlcXVlc3QsIHZvaWQ+IHtcblxuICBwcml2YXRlIGdldCBmQmFja2dyb3VuZCgpOiBGQmFja2dyb3VuZEJhc2Uge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkJhY2tncm91bmQhO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgIHByaXZhdGUgZkJyb3dzZXI6IEJyb3dzZXJTZXJ2aWNlXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBBZGRQYXR0ZXJuVG9CYWNrZ3JvdW5kUmVxdWVzdCk6IHZvaWQge1xuICAgIGNvbnN0IGNoaWxkcmVuID0gcmVxdWVzdC5mUGF0dGVybj8uaG9zdEVsZW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3BhdHRlcm4nKSB8fCBbXTtcbiAgICBjb25zdCBwYXR0ZXJuID0gY2hpbGRyZW4ubGVuZ3RoID8gY2hpbGRyZW5bIDAgXSA6IHVuZGVmaW5lZDtcbiAgICBpZiAocGF0dGVybikge1xuICAgICAgY29uc3QgZGVmcyA9IGNyZWF0ZVNWR0VsZW1lbnQoJ2RlZnMnLCB0aGlzLmZCcm93c2VyKTtcbiAgICAgIHBhdHRlcm4uaWQgPSAnZi1iYWNrZ3JvdW5kLXBhdHRlcm4tJyArIHVuaXF1ZUlkKys7XG4gICAgICByZXF1ZXN0LmZQYXR0ZXJuPy5ob3N0RWxlbWVudC5yZW1vdmUoKTtcbiAgICAgIGRlZnMuYXBwZW5kQ2hpbGQocGF0dGVybik7XG4gICAgICB0aGlzLmZCYWNrZ3JvdW5kLmhvc3RFbGVtZW50Py5maXJzdENoaWxkPy5hcHBlbmRDaGlsZChkZWZzKTtcbiAgICAgIGNvbnN0IHJlY3QgPSBjcmVhdGVTVkdFbGVtZW50KCdyZWN0JywgdGhpcy5mQnJvd3Nlcik7XG4gICAgICByZWN0LnNldEF0dHJpYnV0ZSgnZmlsbCcsICd1cmwoIycgKyBwYXR0ZXJuLmlkICsgJyknKTtcbiAgICAgIHJlY3Quc2V0QXR0cmlidXRlKCd3aWR0aCcsICcxMDAlJyk7XG4gICAgICByZWN0LnNldEF0dHJpYnV0ZSgnaGVpZ2h0JywgJzEwMCUnKTtcbiAgICAgIHRoaXMuZkJhY2tncm91bmQuaG9zdEVsZW1lbnQuZmlyc3RDaGlsZD8uYXBwZW5kQ2hpbGQocmVjdCk7XG4gICAgICBjb25zdCB0cmFuc2Zvcm0gPSB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcz8udHJhbnNmb3JtIHx8IFRyYW5zZm9ybU1vZGVsRXh0ZW5zaW9ucy5kZWZhdWx0KCk7XG4gICAgICByZXF1ZXN0LmZQYXR0ZXJuPy5zZXRUcmFuc2Zvcm0odHJhbnNmb3JtKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -3,7 +3,7 @@ import { Injectable } from '@angular/core';
3
3
  import { CenterGroupOrNodeRequest } from './center-group-or-node-request';
4
4
  import { FExecutionRegister } from '@foblex/mediator';
5
5
  import { PointExtensions, RectExtensions } from '@foblex/2d';
6
- import { F_CANVAS_ANIMATION_DURATION } from '../../index';
6
+ import { F_CANVAS_ANIMATION_DURATION } from '../../../domain';
7
7
  import * as i0 from "@angular/core";
8
8
  import * as i1 from "../../../f-storage";
9
9
  let CenterGroupOrNodeExecution = class CenterGroupOrNodeExecution {
@@ -46,4 +46,4 @@ export { CenterGroupOrNodeExecution };
46
46
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CenterGroupOrNodeExecution, decorators: [{
47
47
  type: Injectable
48
48
  }], ctorParameters: function () { return [{ type: i1.FComponentsStore }]; } });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VudGVyLWdyb3VwLW9yLW5vZGUuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1jYW52YXMvY2VudGVyLWdyb3VwLW9yLW5vZGUvY2VudGVyLWdyb3VwLW9yLW5vZGUuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xFLE9BQU8sRUFBa0MsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUc3RixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxhQUFhLENBQUM7OztJQUk3QywwQkFBMEIsU0FBMUIsMEJBQTBCO0lBTXJDLFlBQ1UsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFFNUMsQ0FBQztJQVBELElBQVksU0FBUztRQUNuQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFRLENBQUMsU0FBUyxDQUFDO0lBQ2xELENBQUM7SUFPTSxNQUFNLENBQUMsT0FBaUM7UUFDN0MsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTNFLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFRLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNsSCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBUSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDdkQsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLDJCQUEyQixDQUFDLENBQUM7SUFDOUYsQ0FBQztJQUVNLFFBQVEsQ0FBQyxTQUFnQixFQUFFLFNBQWdCLEVBQUUsUUFBZ0I7UUFDbEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLEdBQUcsZUFBZSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzdELElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxHQUFHLGVBQWUsQ0FBQyxVQUFVLENBQ2xELENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQzNFLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQzlFLENBQUM7SUFDSixDQUFDO0lBRU8sT0FBTyxDQUFDLEVBQVU7UUFDeEIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRU8sV0FBVyxDQUFDLEtBQWdCO1FBQ2xDLE9BQU8sY0FBYyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVPLFdBQVc7UUFDakIsT0FBTyxjQUFjLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDOUUsQ0FBQztDQUNGLENBQUE7d0hBM0NZLDBCQUEwQjs0SEFBMUIsMEJBQTBCO0FBQTFCLDBCQUEwQjtJQUR0QyxrQkFBa0IsQ0FBQyx3QkFBd0IsQ0FBQztHQUNoQywwQkFBMEIsQ0EyQ3RDO1NBM0NZLDBCQUEwQjs0RkFBMUIsMEJBQTBCO2tCQUZ0QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2VudGVyR3JvdXBPck5vZGVSZXF1ZXN0IH0gZnJvbSAnLi9jZW50ZXItZ3JvdXAtb3Itbm9kZS1yZXF1ZXN0JztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgSVBvaW50LCBJUmVjdCwgSVRyYW5zZm9ybU1vZGVsLCBQb2ludEV4dGVuc2lvbnMsIFJlY3RFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZOb2RlQmFzZSB9IGZyb20gJy4uLy4uLy4uL2Ytbm9kZSc7XG5pbXBvcnQgeyBGX0NBTlZBU19BTklNQVRJT05fRFVSQVRJT04gfSBmcm9tICcuLi8uLi9pbmRleCc7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoQ2VudGVyR3JvdXBPck5vZGVSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIENlbnRlckdyb3VwT3JOb2RlRXhlY3V0aW9uIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxDZW50ZXJHcm91cE9yTm9kZVJlcXVlc3QsIHZvaWQ+IHtcblxuICBwcml2YXRlIGdldCB0cmFuc2Zvcm0oKTogSVRyYW5zZm9ybU1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhLnRyYW5zZm9ybTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZSxcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IENlbnRlckdyb3VwT3JOb2RlUmVxdWVzdCk6IHZvaWQge1xuICAgIGNvbnN0IGZOb2RlID0gdGhpcy5nZXROb2RlKHJlcXVlc3QuaWQpO1xuICAgIGlmICghZk5vZGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnRvQ2VudGVyKHRoaXMuZ2V0Tm9kZVJlY3QoZk5vZGUpLCB0aGlzLmdldEZsb3dSZWN0KCksIGZOb2RlLnBvc2l0aW9uKTtcblxuICAgIHJlcXVlc3QuYW5pbWF0ZWQgPyB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyEucmVkcmF3V2l0aEFuaW1hdGlvbigpIDogdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhLnJlZHJhdygpO1xuICAgIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzIS5lbWl0Q2FudmFzQ2hhbmdlRXZlbnQoKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuZkNvbXBvbmVudHNTdG9yZS5jb21wb25lbnREYXRhQ2hhbmdlZCgpLCBGX0NBTlZBU19BTklNQVRJT05fRFVSQVRJT04pO1xuICB9XG5cbiAgcHVibGljIHRvQ2VudGVyKGZOb2RlUmVjdDogSVJlY3QsIGZGbG93UmVjdDogSVJlY3QsIHBvc2l0aW9uOiBJUG9pbnQpOiB2b2lkIHtcbiAgICB0aGlzLnRyYW5zZm9ybS5zY2FsZWRQb3NpdGlvbiA9IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCk7XG4gICAgdGhpcy50cmFuc2Zvcm0ucG9zaXRpb24gPSBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZShcbiAgICAgIChmRmxvd1JlY3Qud2lkdGggLSBmTm9kZVJlY3Qud2lkdGgpIC8gMiAtIHBvc2l0aW9uLnggKiB0aGlzLnRyYW5zZm9ybS5zY2FsZSxcbiAgICAgIChmRmxvd1JlY3QuaGVpZ2h0IC0gZk5vZGVSZWN0LmhlaWdodCkgLyAyIC0gcG9zaXRpb24ueSAqIHRoaXMudHJhbnNmb3JtLnNjYWxlXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Tm9kZShpZDogc3RyaW5nKTogRk5vZGVCYXNlIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZOb2Rlcy5maW5kKCh4KSA9PiB4LmZJZCA9PT0gaWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXROb2RlUmVjdChmTm9kZTogRk5vZGVCYXNlKTogSVJlY3Qge1xuICAgIHJldHVybiBSZWN0RXh0ZW5zaW9ucy5mcm9tRWxlbWVudChmTm9kZS5ob3N0RWxlbWVudCk7XG4gIH1cblxuICBwcml2YXRlIGdldEZsb3dSZWN0KCk6IElSZWN0IHtcbiAgICByZXR1cm4gUmVjdEV4dGVuc2lvbnMuZnJvbUVsZW1lbnQodGhpcy5mQ29tcG9uZW50c1N0b3JlLmZGbG93IS5ob3N0RWxlbWVudCk7XG4gIH1cbn1cbiJdfQ==
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VudGVyLWdyb3VwLW9yLW5vZGUuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1jYW52YXMvY2VudGVyLWdyb3VwLW9yLW5vZGUvY2VudGVyLWdyb3VwLW9yLW5vZGUuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xFLE9BQU8sRUFBa0MsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUc3RixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7O0lBSWpELDBCQUEwQixTQUExQiwwQkFBMEI7SUFNckMsWUFDVSxnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUU1QyxDQUFDO0lBUEQsSUFBWSxTQUFTO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQVEsQ0FBQyxTQUFTLENBQUM7SUFDbEQsQ0FBQztJQU9NLE1BQU0sQ0FBQyxPQUFpQztRQUM3QyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN2QyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFM0UsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQVEsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2xILElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFRLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUN2RCxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLG9CQUFvQixFQUFFLEVBQUUsMkJBQTJCLENBQUMsQ0FBQztJQUM5RixDQUFDO0lBRU0sUUFBUSxDQUFDLFNBQWdCLEVBQUUsU0FBZ0IsRUFBRSxRQUFnQjtRQUNsRSxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsR0FBRyxlQUFlLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDN0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEdBQUcsZUFBZSxDQUFDLFVBQVUsQ0FDbEQsQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFDM0UsQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FDOUUsQ0FBQztJQUNKLENBQUM7SUFFTyxPQUFPLENBQUMsRUFBVTtRQUN4QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFTyxXQUFXLENBQUMsS0FBZ0I7UUFDbEMsT0FBTyxjQUFjLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRU8sV0FBVztRQUNqQixPQUFPLGNBQWMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM5RSxDQUFDO0NBQ0YsQ0FBQTt3SEEzQ1ksMEJBQTBCOzRIQUExQiwwQkFBMEI7QUFBMUIsMEJBQTBCO0lBRHRDLGtCQUFrQixDQUFDLHdCQUF3QixDQUFDO0dBQ2hDLDBCQUEwQixDQTJDdEM7U0EzQ1ksMEJBQTBCOzRGQUExQiwwQkFBMEI7a0JBRnRDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDZW50ZXJHcm91cE9yTm9kZVJlcXVlc3QgfSBmcm9tICcuL2NlbnRlci1ncm91cC1vci1ub2RlLXJlcXVlc3QnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBJUG9pbnQsIElSZWN0LCBJVHJhbnNmb3JtTW9kZWwsIFBvaW50RXh0ZW5zaW9ucywgUmVjdEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgRk5vZGVCYXNlIH0gZnJvbSAnLi4vLi4vLi4vZi1ub2RlJztcbmltcG9ydCB7IEZfQ0FOVkFTX0FOSU1BVElPTl9EVVJBVElPTiB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbic7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoQ2VudGVyR3JvdXBPck5vZGVSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIENlbnRlckdyb3VwT3JOb2RlRXhlY3V0aW9uIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxDZW50ZXJHcm91cE9yTm9kZVJlcXVlc3QsIHZvaWQ+IHtcblxuICBwcml2YXRlIGdldCB0cmFuc2Zvcm0oKTogSVRyYW5zZm9ybU1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhLnRyYW5zZm9ybTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZSxcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IENlbnRlckdyb3VwT3JOb2RlUmVxdWVzdCk6IHZvaWQge1xuICAgIGNvbnN0IGZOb2RlID0gdGhpcy5nZXROb2RlKHJlcXVlc3QuaWQpO1xuICAgIGlmICghZk5vZGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnRvQ2VudGVyKHRoaXMuZ2V0Tm9kZVJlY3QoZk5vZGUpLCB0aGlzLmdldEZsb3dSZWN0KCksIGZOb2RlLnBvc2l0aW9uKTtcblxuICAgIHJlcXVlc3QuYW5pbWF0ZWQgPyB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyEucmVkcmF3V2l0aEFuaW1hdGlvbigpIDogdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhLnJlZHJhdygpO1xuICAgIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzIS5lbWl0Q2FudmFzQ2hhbmdlRXZlbnQoKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuZkNvbXBvbmVudHNTdG9yZS5jb21wb25lbnREYXRhQ2hhbmdlZCgpLCBGX0NBTlZBU19BTklNQVRJT05fRFVSQVRJT04pO1xuICB9XG5cbiAgcHVibGljIHRvQ2VudGVyKGZOb2RlUmVjdDogSVJlY3QsIGZGbG93UmVjdDogSVJlY3QsIHBvc2l0aW9uOiBJUG9pbnQpOiB2b2lkIHtcbiAgICB0aGlzLnRyYW5zZm9ybS5zY2FsZWRQb3NpdGlvbiA9IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCk7XG4gICAgdGhpcy50cmFuc2Zvcm0ucG9zaXRpb24gPSBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZShcbiAgICAgIChmRmxvd1JlY3Qud2lkdGggLSBmTm9kZVJlY3Qud2lkdGgpIC8gMiAtIHBvc2l0aW9uLnggKiB0aGlzLnRyYW5zZm9ybS5zY2FsZSxcbiAgICAgIChmRmxvd1JlY3QuaGVpZ2h0IC0gZk5vZGVSZWN0LmhlaWdodCkgLyAyIC0gcG9zaXRpb24ueSAqIHRoaXMudHJhbnNmb3JtLnNjYWxlXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Tm9kZShpZDogc3RyaW5nKTogRk5vZGVCYXNlIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZOb2Rlcy5maW5kKCh4KSA9PiB4LmZJZCA9PT0gaWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXROb2RlUmVjdChmTm9kZTogRk5vZGVCYXNlKTogSVJlY3Qge1xuICAgIHJldHVybiBSZWN0RXh0ZW5zaW9ucy5mcm9tRWxlbWVudChmTm9kZS5ob3N0RWxlbWVudCk7XG4gIH1cblxuICBwcml2YXRlIGdldEZsb3dSZWN0KCk6IElSZWN0IHtcbiAgICByZXR1cm4gUmVjdEV4dGVuc2lvbnMuZnJvbUVsZW1lbnQodGhpcy5mQ29tcG9uZW50c1N0b3JlLmZGbG93IS5ob3N0RWxlbWVudCk7XG4gIH1cbn1cbiJdfQ==
@@ -3,7 +3,7 @@ import { Injectable } from '@angular/core';
3
3
  import { FitToFlowRequest } from './fit-to-flow-request';
4
4
  import { FExecutionRegister } from '@foblex/mediator';
5
5
  import { PointExtensions, RectExtensions } from '@foblex/2d';
6
- import { F_CANVAS_ANIMATION_DURATION, GetNodesRectRequest } from '../../index';
6
+ import { F_CANVAS_ANIMATION_DURATION, GetNodesRectRequest } from '../../../domain';
7
7
  import * as i0 from "@angular/core";
8
8
  import * as i1 from "../../../f-storage";
9
9
  import * as i2 from "@foblex/mediator";
@@ -53,4 +53,4 @@ export { FitToFlowExecution };
53
53
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FitToFlowExecution, decorators: [{
54
54
  type: Injectable
55
55
  }], ctorParameters: function () { return [{ type: i1.FComponentsStore }, { type: i2.FMediator }]; } });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml0LXRvLWZsb3cuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1jYW52YXMvZml0LXRvLWZsb3cvZml0LXRvLWZsb3cuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxrQkFBa0IsRUFBeUIsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RSxPQUFPLEVBQWtDLGVBQWUsRUFBRSxjQUFjLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFN0YsT0FBTyxFQUFFLDJCQUEyQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFDOzs7O0lBSWxFLGtCQUFrQixTQUFsQixrQkFBa0I7SUFNN0IsWUFDVSxnQkFBa0MsRUFDbEMsU0FBb0I7UUFEcEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxjQUFTLEdBQVQsU0FBUyxDQUFXO0lBRTlCLENBQUM7SUFSRCxJQUFZLFNBQVM7UUFDbkIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBUSxDQUFDLFNBQVMsQ0FBQztJQUNsRCxDQUFDO0lBUU0sTUFBTSxDQUFDLE9BQXlCO1FBQ3JDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFlLElBQUksbUJBQW1CLEVBQUUsQ0FBQyxJQUFJLGNBQWMsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUMvRyxJQUFJLFVBQVUsQ0FBQyxLQUFLLEtBQUssQ0FBQyxJQUFJLFVBQVUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3JELE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxXQUFXLENBQ2QsVUFBVSxFQUNWLGNBQWMsQ0FBQyxXQUFXLENB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QUFHLENBQUMsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9FLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9FLE9BQU8sZUFBZSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUE7SUFDbkQsQ0FBQztDQUNGLENBQUE7Z0hBcERZLGtCQUFrQjtvSEFBbEIsa0JBQWtCO0FBQWxCLGtCQUFrQjtJQUQ5QixrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FBQztHQUN4QixrQkFBa0IsQ0FvRDlCO1NBcERZLGtCQUFrQjs0RkFBbEIsa0JBQWtCO2tCQUY5QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRml0VG9GbG93UmVxdWVzdCB9IGZyb20gJy4vZml0LXRvLWZsb3ctcmVxdWVzdCc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgSVBvaW50LCBJUmVjdCwgSVRyYW5zZm9ybU1vZGVsLCBQb2ludEV4dGVuc2lvbnMsIFJlY3RFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZfQ0FOVkFTX0FOSU1BVElPTl9EVVJBVElPTiwgR2V0Tm9kZXNSZWN0UmVxdWVzdCB9IGZyb20gJy4uLy4uL2luZGV4JztcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihGaXRUb0Zsb3dSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIEZpdFRvRmxvd0V4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248Rml0VG9GbG93UmVxdWVzdCwgdm9pZD4ge1xuXG4gIHByaXZhdGUgZ2V0IHRyYW5zZm9ybSgpOiBJVHJhbnNmb3JtTW9kZWwge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyEudHJhbnNmb3JtO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgIHByaXZhdGUgZk1lZGlhdG9yOiBGTWVkaWF0b3JcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IEZpdFRvRmxvd1JlcXVlc3QpOiB2b2lkIHtcbiAgICBjb25zdCBmTm9kZXNSZWN0ID0gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJUmVjdCB8IG51bGw+KG5ldyBHZXROb2Rlc1JlY3RSZXF1ZXN0KCkpIHx8IFJlY3RFeHRlbnNpb25zLmluaXRpYWxpemUoKTtcbiAgICBpZiAoZk5vZGVzUmVjdC53aWR0aCA9PT0gMCB8fCBmTm9kZXNSZWN0LmhlaWdodCA9PT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuZml0VG9QYXJlbnQoXG4gICAgICBmTm9kZXNSZWN0LFxuICAgICAgUmVjdEV4dGVuc2lvbnMuZnJvbUVsZW1lbnQodGhpcy5mQ29tcG9uZW50c1N0b3JlLmZGbG93IS5ob3N0RWxlbWVudCksXG4gICAgICB0aGlzLmZDb21wb25lbnRzU3RvcmUuZk5vZGVzLm1hcCgoeCkgPT4geC5wb3NpdGlvbiksXG4gICAgICByZXF1ZXN0LnRvQ2VudGVyXG4gICAgKTtcbiAgICByZXF1ZXN0LmFuaW1hdGVkID8gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhLnJlZHJhd1dpdGhBbmltYXRpb24oKSA6IHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzIS5yZWRyYXcoKTtcbiAgICB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyEuZW1pdENhbnZhc0NoYW5nZUV2ZW50KCk7XG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmZDb21wb25lbnRzU3RvcmUuY29tcG9uZW50RGF0YUNoYW5nZWQoKSwgRl9DQU5WQVNfQU5JTUFUSU9OX0RVUkFUSU9OKTtcbiAgfVxuXG4gIHB1YmxpYyBmaXRUb1BhcmVudChyZWN0OiBJUmVjdCwgcGFyZW50UmVjdDogSVJlY3QsIHBvaW50czogSVBvaW50W10sIHRvQ2VudGVyOiBJUG9pbnQpOiB2b2lkIHtcbiAgICB0aGlzLnRyYW5zZm9ybS5zY2FsZWRQb3NpdGlvbiA9IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCk7XG4gICAgdGhpcy50cmFuc2Zvcm0ucG9zaXRpb24gPSB0aGlzLmdldFplcm9Qb3NpdGlvbldpdGhvdXRTY2FsZShwb2ludHMpO1xuICAgIGNvbnN0IGl0ZW1zQ29udGFpbmVyV2lkdGggPSAocmVjdC53aWR0aCAvIHRoaXMudHJhbnNmb3JtLnNjYWxlKSArIHRvQ2VudGVyLng7XG4gICAgY29uc3QgaXRlbXNDb250YWluZXJIZWlnaHQgPSAocmVjdC5oZWlnaHQgLyB0aGlzLnRyYW5zZm9ybS5zY2FsZSkgKyB0b0NlbnRlci55O1xuICAgIGlmIChcbiAgICAgIChpdGVtc0NvbnRhaW5lcldpZHRoID4gcGFyZW50UmVjdC53aWR0aCB8fCBpdGVtc0NvbnRhaW5lckhlaWdodCA+IHBhcmVudFJlY3QuaGVpZ2h0KSB8fFxuICAgICAgaXRlbXNDb250YWluZXJXaWR0aCA8IHBhcmVudFJlY3Qud2lkdGggJiYgaXRlbXNDb250YWluZXJIZWlnaHQgPCBwYXJlbnRSZWN0LmhlaWdodFxuICAgICkge1xuICAgICAgdGhpcy50cmFuc2Zvcm0uc2NhbGUgPSBNYXRoLm1pbihwYXJlbnRSZWN0LndpZHRoIC8gaXRlbXNDb250YWluZXJXaWR0aCwgcGFyZW50UmVjdC5oZWlnaHQgLyBpdGVtc0NvbnRhaW5lckhlaWdodCk7XG4gICAgfVxuXG4gICAgY29uc3QgbmV3WCA9IChwYXJlbnRSZWN0LndpZHRoIC0gaXRlbXNDb250YWluZXJXaWR0aCAqIHRoaXMudHJhbnNmb3JtLnNjYWxlKSAvIDIgLSB0aGlzLnRyYW5zZm9ybS5wb3NpdGlvbi54ICogdGhpcy50cmFuc2Zvcm0uc2NhbGU7XG4gICAgY29uc3QgbmV3WSA9IChwYXJlbnRSZWN0LmhlaWdodCAtIGl0ZW1zQ29udGFpbmVySGVpZ2h0ICogdGhpcy50cmFuc2Zvcm0uc2NhbGUpIC8gMiAtIHRoaXMudHJhbnNmb3JtLnBvc2l0aW9uLnkgKiB0aGlzLnRyYW5zZm9ybS5zY2FsZTtcblxuICAgIHRoaXMudHJhbnNmb3JtLnBvc2l0aW9uID0gUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUobmV3WCArICh0b0NlbnRlci54IC8gMikgKiB0aGlzLnRyYW5zZm9ybS5zY2FsZSwgbmV3WSArICh0b0NlbnRlci55IC8gMikgKiB0aGlzLnRyYW5zZm9ybS5zY2FsZSlcbiAgfVxuXG4gIHByaXZhdGUgZ2V0WmVyb1Bvc2l0aW9uV2l0aG91dFNjYWxlKHBvaW50czogSVBvaW50W10pOiBJUG9pbnQge1xuICAgIGNvbnN0IHhQb2ludCA9IHBvaW50cy5sZW5ndGggPyBNYXRoLm1pbiguLi5wb2ludHMubWFwKChwb2ludCkgPT4gcG9pbnQueCkpIDogMDtcbiAgICBjb25zdCB5UG9pbnQgPSBwb2ludHMubGVuZ3RoID8gTWF0aC5taW4oLi4ucG9pbnRzLm1hcCgocG9pbnQpID0+IHBvaW50LnkpKSA6IDA7XG4gICAgcmV0dXJuIFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKHhQb2ludCwgeVBvaW50KVxuICB9XG59XG4iXX0=
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml0LXRvLWZsb3cuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1jYW52YXMvZml0LXRvLWZsb3cvZml0LXRvLWZsb3cuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxrQkFBa0IsRUFBeUIsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RSxPQUFPLEVBQWtDLGVBQWUsRUFBRSxjQUFjLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFN0YsT0FBTyxFQUFFLDJCQUEyQixFQUFFLG1CQUFtQixFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7SUFJdEUsa0JBQWtCLFNBQWxCLGtCQUFrQjtJQU03QixZQUNVLGdCQUFrQyxFQUNsQyxTQUFvQjtRQURwQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLGNBQVMsR0FBVCxTQUFTLENBQVc7SUFFOUIsQ0FBQztJQVJELElBQVksU0FBUztRQUNuQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFRLENBQUMsU0FBUyxDQUFDO0lBQ2xELENBQUM7SUFRTSxNQUFNLENBQUMsT0FBeUI7UUFDckMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQWUsSUFBSSxtQkFBbUIsRUFBRSxDQUFDLElBQUksY0FBYyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQy9HLElBQUksVUFBVSxDQUFDLEtBQUssS0FBSyxDQUFDLElBQUksVUFBVSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDckQsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLFdBQVcsQ0FDZCxVQUFVLEVBQ1YsY0FBYyxDQUFDLFdBQVcs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LEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDL0UsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDL0UsT0FBTyxlQUFlLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQTtJQUNuRCxDQUFDO0NBQ0YsQ0FBQTtnSEFwRFksa0JBQWtCO29IQUFsQixrQkFBa0I7QUFBbEIsa0JBQWtCO0lBRDlCLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDO0dBQ3hCLGtCQUFrQixDQW9EOUI7U0FwRFksa0JBQWtCOzRGQUFsQixrQkFBa0I7a0JBRjlCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGaXRUb0Zsb3dSZXF1ZXN0IH0gZnJvbSAnLi9maXQtdG8tZmxvdy1yZXF1ZXN0JztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBJUG9pbnQsIElSZWN0LCBJVHJhbnNmb3JtTW9kZWwsIFBvaW50RXh0ZW5zaW9ucywgUmVjdEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgRl9DQU5WQVNfQU5JTUFUSU9OX0RVUkFUSU9OLCBHZXROb2Rlc1JlY3RSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJztcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihGaXRUb0Zsb3dSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIEZpdFRvRmxvd0V4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248Rml0VG9GbG93UmVxdWVzdCwgdm9pZD4ge1xuXG4gIHByaXZhdGUgZ2V0IHRyYW5zZm9ybSgpOiBJVHJhbnNmb3JtTW9kZWwge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyEudHJhbnNmb3JtO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgIHByaXZhdGUgZk1lZGlhdG9yOiBGTWVkaWF0b3JcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IEZpdFRvRmxvd1JlcXVlc3QpOiB2b2lkIHtcbiAgICBjb25zdCBmTm9kZXNSZWN0ID0gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJUmVjdCB8IG51bGw+KG5ldyBHZXROb2Rlc1JlY3RSZXF1ZXN0KCkpIHx8IFJlY3RFeHRlbnNpb25zLmluaXRpYWxpemUoKTtcbiAgICBpZiAoZk5vZGVzUmVjdC53aWR0aCA9PT0gMCB8fCBmTm9kZXNSZWN0LmhlaWdodCA9PT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuZml0VG9QYXJlbnQoXG4gICAgICBmTm9kZXNSZWN0LFxuICAgICAgUmVjdEV4dGVuc2lvbnMuZnJvbUVsZW1lbnQodGhpcy5mQ29tcG9uZW50c1N0b3JlLmZGbG93IS5ob3N0RWxlbWVudCksXG4gICAgICB0aGlzLmZDb21wb25lbnRzU3RvcmUuZk5vZGVzLm1hcCgoeCkgPT4geC5wb3NpdGlvbiksXG4gICAgICByZXF1ZXN0LnRvQ2VudGVyXG4gICAgKTtcbiAgICByZXF1ZXN0LmFuaW1hdGVkID8gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhLnJlZHJhd1dpdGhBbmltYXRpb24oKSA6IHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzIS5yZWRyYXcoKTtcbiAgICB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyEuZW1pdENhbnZhc0NoYW5nZUV2ZW50KCk7XG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmZDb21wb25lbnRzU3RvcmUuY29tcG9uZW50RGF0YUNoYW5nZWQoKSwgRl9DQU5WQVNfQU5JTUFUSU9OX0RVUkFUSU9OKTtcbiAgfVxuXG4gIHB1YmxpYyBmaXRUb1BhcmVudChyZWN0OiBJUmVjdCwgcGFyZW50UmVjdDogSVJlY3QsIHBvaW50czogSVBvaW50W10sIHRvQ2VudGVyOiBJUG9pbnQpOiB2b2lkIHtcbiAgICB0aGlzLnRyYW5zZm9ybS5zY2FsZWRQb3NpdGlvbiA9IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCk7XG4gICAgdGhpcy50cmFuc2Zvcm0ucG9zaXRpb24gPSB0aGlzLmdldFplcm9Qb3NpdGlvbldpdGhvdXRTY2FsZShwb2ludHMpO1xuICAgIGNvbnN0IGl0ZW1zQ29udGFpbmVyV2lkdGggPSAocmVjdC53aWR0aCAvIHRoaXMudHJhbnNmb3JtLnNjYWxlKSArIHRvQ2VudGVyLng7XG4gICAgY29uc3QgaXRlbXNDb250YWluZXJIZWlnaHQgPSAocmVjdC5oZWlnaHQgLyB0aGlzLnRyYW5zZm9ybS5zY2FsZSkgKyB0b0NlbnRlci55O1xuICAgIGlmIChcbiAgICAgIChpdGVtc0NvbnRhaW5lcldpZHRoID4gcGFyZW50UmVjdC53aWR0aCB8fCBpdGVtc0NvbnRhaW5lckhlaWdodCA+IHBhcmVudFJlY3QuaGVpZ2h0KSB8fFxuICAgICAgaXRlbXNDb250YWluZXJXaWR0aCA8IHBhcmVudFJlY3Qud2lkdGggJiYgaXRlbXNDb250YWluZXJIZWlnaHQgPCBwYXJlbnRSZWN0LmhlaWdodFxuICAgICkge1xuICAgICAgdGhpcy50cmFuc2Zvcm0uc2NhbGUgPSBNYXRoLm1pbihwYXJlbnRSZWN0LndpZHRoIC8gaXRlbXNDb250YWluZXJXaWR0aCwgcGFyZW50UmVjdC5oZWlnaHQgLyBpdGVtc0NvbnRhaW5lckhlaWdodCk7XG4gICAgfVxuXG4gICAgY29uc3QgbmV3WCA9IChwYXJlbnRSZWN0LndpZHRoIC0gaXRlbXNDb250YWluZXJXaWR0aCAqIHRoaXMudHJhbnNmb3JtLnNjYWxlKSAvIDIgLSB0aGlzLnRyYW5zZm9ybS5wb3NpdGlvbi54ICogdGhpcy50cmFuc2Zvcm0uc2NhbGU7XG4gICAgY29uc3QgbmV3WSA9IChwYXJlbnRSZWN0LmhlaWdodCAtIGl0ZW1zQ29udGFpbmVySGVpZ2h0ICogdGhpcy50cmFuc2Zvcm0uc2NhbGUpIC8gMiAtIHRoaXMudHJhbnNmb3JtLnBvc2l0aW9uLnkgKiB0aGlzLnRyYW5zZm9ybS5zY2FsZTtcblxuICAgIHRoaXMudHJhbnNmb3JtLnBvc2l0aW9uID0gUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUobmV3WCArICh0b0NlbnRlci54IC8gMikgKiB0aGlzLnRyYW5zZm9ybS5zY2FsZSwgbmV3WSArICh0b0NlbnRlci55IC8gMikgKiB0aGlzLnRyYW5zZm9ybS5zY2FsZSlcbiAgfVxuXG4gIHByaXZhdGUgZ2V0WmVyb1Bvc2l0aW9uV2l0aG91dFNjYWxlKHBvaW50czogSVBvaW50W10pOiBJUG9pbnQge1xuICAgIGNvbnN0IHhQb2ludCA9IHBvaW50cy5sZW5ndGggPyBNYXRoLm1pbiguLi5wb2ludHMubWFwKChwb2ludCkgPT4gcG9pbnQueCkpIDogMDtcbiAgICBjb25zdCB5UG9pbnQgPSBwb2ludHMubGVuZ3RoID8gTWF0aC5taW4oLi4ucG9pbnRzLm1hcCgocG9pbnQpID0+IHBvaW50LnkpKSA6IDA7XG4gICAgcmV0dXJuIFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKHhQb2ludCwgeVBvaW50KVxuICB9XG59XG4iXX0=
@@ -3,7 +3,7 @@ import { Injectable } from '@angular/core';
3
3
  import { ResetScaleAndCenterRequest } from './reset-scale-and-center-request';
4
4
  import { FExecutionRegister } from '@foblex/mediator';
5
5
  import { PointExtensions, RectExtensions } from '@foblex/2d';
6
- import { F_CANVAS_ANIMATION_DURATION, GetNodesRectRequest } from '../../index';
6
+ import { F_CANVAS_ANIMATION_DURATION, GetNodesRectRequest } from '../../../domain';
7
7
  import * as i0 from "@angular/core";
8
8
  import * as i1 from "../../../f-storage";
9
9
  import * as i2 from "@foblex/mediator";
@@ -48,4 +48,4 @@ export { ResetScaleAndCenterExecution };
48
48
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ResetScaleAndCenterExecution, decorators: [{
49
49
  type: Injectable
50
50
  }], ctorParameters: function () { return [{ type: i1.FComponentsStore }, { type: i2.FMediator }]; } });
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXQtc2NhbGUtYW5kLWNlbnRlci5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLWNhbnZhcy9yZXNldC1zY2FsZS1hbmQtY2VudGVyL3Jlc2V0LXNjYWxlLWFuZC1jZW50ZXIuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxrQkFBa0IsRUFBeUIsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RSxPQUFPLEVBQWtDLGVBQWUsRUFBRSxjQUFjLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDN0YsT0FBTyxFQUFFLDJCQUEyQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFDOzs7O0lBTWxFLDRCQUE0QixTQUE1Qiw0QkFBNEI7SUFNdkMsWUFDVSxnQkFBa0MsRUFDbEMsU0FBb0I7UUFEcEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxjQUFTLEdBQVQsU0FBUyxDQUFXO0lBRTlCLENBQUM7SUFSRCxJQUFZLFNBQVM7UUFDbkIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBUSxDQUFDLFNBQVMsQ0FBQztJQUNsRCxDQUFDO0lBUU0sTUFBTSxDQUFDLE9BQW1DO1FBQy9DLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFlLElBQUksbUJBQW1CLEVBQUUsQ0FBQyxJQUFJLGNBQWMsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUMvRyxJQUFJLFVBQVUsQ0FBQyxLQUFLLEtBQUssQ0FBQyxJQUFJLFVBQVUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3JELE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxpQkFBaUIsQ0FDcEIsVUFBVSxFQUNWLGNBQWMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQU0sQ0FBQyxXQUFXLENBQUMsRUFDcEUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FDcEQsQ0FBQztRQUVGLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFRLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNsSCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBUSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDdkQsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLDJCQUEyQixDQUFDLENBQUM7SUFDOUYsQ0FBQztJQUVNLGlCQUFpQixDQUFDLElBQVcsRUFBRSxVQUFpQixFQUFFLE1BQWdCO1FBQ3ZFLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxHQUFHLGVBQWUsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUM3RCxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsMkJBQTJCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFbkUsTUFBTSxJQUFJLEdBQUcsQ0FBQyxVQUFVLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQ3BHLE1BQU0sSUFBSSxHQUFHLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUV0RyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEdBQUcsZUFBZSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVPLDJCQUEyQixDQUFDLE1BQWdCO1FBQ2xELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9FLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9FLE9BQU8sZUFBZSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUE7SUFDbkQsQ0FBQztDQUNGLENBQUE7MEhBNUNZLDRCQUE0Qjs4SEFBNUIsNEJBQTRCO0FBQTVCLDRCQUE0QjtJQUR4QyxrQkFBa0IsQ0FBQywwQkFBMEIsQ0FBQztHQUNsQyw0QkFBNEIsQ0E0Q3hDO1NBNUNZLDRCQUE0Qjs0RkFBNUIsNEJBQTRCO2tCQUZ4QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmVzZXRTY2FsZUFuZENlbnRlclJlcXVlc3QgfSBmcm9tICcuL3Jlc2V0LXNjYWxlLWFuZC1jZW50ZXItcmVxdWVzdCc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgSVBvaW50LCBJUmVjdCwgSVRyYW5zZm9ybU1vZGVsLCBQb2ludEV4dGVuc2lvbnMsIFJlY3RFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBGX0NBTlZBU19BTklNQVRJT05fRFVSQVRJT04sIEdldE5vZGVzUmVjdFJlcXVlc3QgfSBmcm9tICcuLi8uLi9pbmRleCc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcblxuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKFJlc2V0U2NhbGVBbmRDZW50ZXJSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIFJlc2V0U2NhbGVBbmRDZW50ZXJFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPFJlc2V0U2NhbGVBbmRDZW50ZXJSZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSBnZXQgdHJhbnNmb3JtKCk6IElUcmFuc2Zvcm1Nb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzIS50cmFuc2Zvcm07XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmUsXG4gICAgcHJpdmF0ZSBmTWVkaWF0b3I6IEZNZWRpYXRvclxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogUmVzZXRTY2FsZUFuZENlbnRlclJlcXVlc3QpOiB2b2lkIHtcbiAgICBjb25zdCBmTm9kZXNSZWN0ID0gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJUmVjdCB8IG51bGw+KG5ldyBHZXROb2Rlc1JlY3RSZXF1ZXN0KCkpIHx8IFJlY3RFeHRlbnNpb25zLmluaXRpYWxpemUoKTtcbiAgICBpZiAoZk5vZGVzUmVjdC53aWR0aCA9PT0gMCB8fCBmTm9kZXNSZWN0LmhlaWdodCA9PT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLm9uZVRvT25lQ2VudGVyaW5nKFxuICAgICAgZk5vZGVzUmVjdCxcbiAgICAgIFJlY3RFeHRlbnNpb25zLmZyb21FbGVtZW50KHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mRmxvdyEuaG9zdEVsZW1lbnQpLFxuICAgICAgdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZOb2Rlcy5tYXAoKHgpID0+IHgucG9zaXRpb24pXG4gICAgKTtcblxuICAgIHJlcXVlc3QuYW5pbWF0ZWQgPyB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyEucmVkcmF3V2l0aEFuaW1hdGlvbigpIDogdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhLnJlZHJhdygpO1xuICAgIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzIS5lbWl0Q2FudmFzQ2hhbmdlRXZlbnQoKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuZkNvbXBvbmVudHNTdG9yZS5jb21wb25lbnREYXRhQ2hhbmdlZCgpLCBGX0NBTlZBU19BTklNQVRJT05fRFVSQVRJT04pO1xuICB9XG5cbiAgcHVibGljIG9uZVRvT25lQ2VudGVyaW5nKHJlY3Q6IElSZWN0LCBwYXJlbnRSZWN0OiBJUmVjdCwgcG9pbnRzOiBJUG9pbnRbXSk6IHZvaWQge1xuICAgIHRoaXMudHJhbnNmb3JtLnNjYWxlZFBvc2l0aW9uID0gUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoKTtcbiAgICB0aGlzLnRyYW5zZm9ybS5wb3NpdGlvbiA9IHRoaXMuZ2V0WmVyb1Bvc2l0aW9uV2l0aG91dFNjYWxlKHBvaW50cyk7XG5cbiAgICBjb25zdCBuZXdYID0gKHBhcmVudFJlY3Qud2lkdGggLSByZWN0LndpZHRoIC8gdGhpcy50cmFuc2Zvcm0uc2NhbGUpIC8gMiAtIHRoaXMudHJhbnNmb3JtLnBvc2l0aW9uLng7XG4gICAgY29uc3QgbmV3WSA9IChwYXJlbnRSZWN0LmhlaWdodCAtIHJlY3QuaGVpZ2h0IC8gdGhpcy50cmFuc2Zvcm0uc2NhbGUpIC8gMiAtIHRoaXMudHJhbnNmb3JtLnBvc2l0aW9uLnk7XG5cbiAgICB0aGlzLnRyYW5zZm9ybS5zY2FsZSA9IDE7XG4gICAgdGhpcy50cmFuc2Zvcm0ucG9zaXRpb24gPSBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZShuZXdYLCBuZXdZKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0WmVyb1Bvc2l0aW9uV2l0aG91dFNjYWxlKHBvaW50czogSVBvaW50W10pOiBJUG9pbnQge1xuICAgIGNvbnN0IHhQb2ludCA9IHBvaW50cy5sZW5ndGggPyBNYXRoLm1pbiguLi5wb2ludHMubWFwKChwb2ludCkgPT4gcG9pbnQueCkpIDogMDtcbiAgICBjb25zdCB5UG9pbnQgPSBwb2ludHMubGVuZ3RoID8gTWF0aC5taW4oLi4ucG9pbnRzLm1hcCgocG9pbnQpID0+IHBvaW50LnkpKSA6IDA7XG4gICAgcmV0dXJuIFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKHhQb2ludCwgeVBvaW50KVxuICB9XG59XG4iXX0=
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXQtc2NhbGUtYW5kLWNlbnRlci5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLWNhbnZhcy9yZXNldC1zY2FsZS1hbmQtY2VudGVyL3Jlc2V0LXNjYWxlLWFuZC1jZW50ZXIuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxrQkFBa0IsRUFBeUIsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RSxPQUFPLEVBQWtDLGVBQWUsRUFBRSxjQUFjLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDN0YsT0FBTyxFQUFFLDJCQUEyQixFQUFFLG1CQUFtQixFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7SUFNdEUsNEJBQTRCLFNBQTVCLDRCQUE0QjtJQU12QyxZQUNVLGdCQUFrQyxFQUNsQyxTQUFvQjtRQURwQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLGNBQVMsR0FBVCxTQUFTLENBQVc7SUFFOUIsQ0FBQztJQVJELElBQVksU0FBUztRQUNuQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFRLENBQUMsU0FBUyxDQUFDO0lBQ2xELENBQUM7SUFRTSxNQUFNLENBQUMsT0FBbUM7UUFDL0MsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQWUsSUFBSSxtQkFBbUIsRUFBRSxDQUFDLElBQUksY0FBYyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQy9HLElBQUksVUFBVSxDQUFDLEtBQUssS0FBSyxDQUFDLElBQUksVUFBVSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDckQsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLGlCQUFpQixDQUNwQixVQUFVLEVBQ1YsY0FBYyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBTSxDQUFDLFdBQVcsQ0FBQyxFQUNwRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUNwRCxDQUFDO1FBRUYsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQVEsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2xILElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFRLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUN2RCxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLG9CQUFvQixFQUFFLEVBQUUsMkJBQTJCLENBQUMsQ0FBQztJQUM5RixDQUFDO0lBRU0saUJBQWlCLENBQUMsSUFBVyxFQUFFLFVBQWlCLEVBQUUsTUFBZ0I7UUFDdkUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLEdBQUcsZUFBZSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzdELElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVuRSxNQUFNLElBQUksR0FBRyxDQUFDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDcEcsTUFBTSxJQUFJLEdBQUcsQ0FBQyxVQUFVLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBRXRHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztRQUN6QixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsR0FBRyxlQUFlLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRU8sMkJBQTJCLENBQUMsTUFBZ0I7UUFDbEQsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDL0UsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDL0UsT0FBTyxlQUFlLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQTtJQUNuRCxDQUFDO0NBQ0YsQ0FBQTswSEE1Q1ksNEJBQTRCOzhIQUE1Qiw0QkFBNEI7QUFBNUIsNEJBQTRCO0lBRHhDLGtCQUFrQixDQUFDLDBCQUEwQixDQUFDO0dBQ2xDLDRCQUE0QixDQTRDeEM7U0E1Q1ksNEJBQTRCOzRGQUE1Qiw0QkFBNEI7a0JBRnhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZXNldFNjYWxlQW5kQ2VudGVyUmVxdWVzdCB9IGZyb20gJy4vcmVzZXQtc2NhbGUtYW5kLWNlbnRlci1yZXF1ZXN0JztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgRk1lZGlhdG9yLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBJUG9pbnQsIElSZWN0LCBJVHJhbnNmb3JtTW9kZWwsIFBvaW50RXh0ZW5zaW9ucywgUmVjdEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZfQ0FOVkFTX0FOSU1BVElPTl9EVVJBVElPTiwgR2V0Tm9kZXNSZWN0UmVxdWVzdCB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcblxuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKFJlc2V0U2NhbGVBbmRDZW50ZXJSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIFJlc2V0U2NhbGVBbmRDZW50ZXJFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPFJlc2V0U2NhbGVBbmRDZW50ZXJSZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSBnZXQgdHJhbnNmb3JtKCk6IElUcmFuc2Zvcm1Nb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzIS50cmFuc2Zvcm07XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmUsXG4gICAgcHJpdmF0ZSBmTWVkaWF0b3I6IEZNZWRpYXRvclxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogUmVzZXRTY2FsZUFuZENlbnRlclJlcXVlc3QpOiB2b2lkIHtcbiAgICBjb25zdCBmTm9kZXNSZWN0ID0gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJUmVjdCB8IG51bGw+KG5ldyBHZXROb2Rlc1JlY3RSZXF1ZXN0KCkpIHx8IFJlY3RFeHRlbnNpb25zLmluaXRpYWxpemUoKTtcbiAgICBpZiAoZk5vZGVzUmVjdC53aWR0aCA9PT0gMCB8fCBmTm9kZXNSZWN0LmhlaWdodCA9PT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLm9uZVRvT25lQ2VudGVyaW5nKFxuICAgICAgZk5vZGVzUmVjdCxcbiAgICAgIFJlY3RFeHRlbnNpb25zLmZyb21FbGVtZW50KHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mRmxvdyEuaG9zdEVsZW1lbnQpLFxuICAgICAgdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZOb2Rlcy5tYXAoKHgpID0+IHgucG9zaXRpb24pXG4gICAgKTtcblxuICAgIHJlcXVlc3QuYW5pbWF0ZWQgPyB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyEucmVkcmF3V2l0aEFuaW1hdGlvbigpIDogdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhLnJlZHJhdygpO1xuICAgIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzIS5lbWl0Q2FudmFzQ2hhbmdlRXZlbnQoKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuZkNvbXBvbmVudHNTdG9yZS5jb21wb25lbnREYXRhQ2hhbmdlZCgpLCBGX0NBTlZBU19BTklNQVRJT05fRFVSQVRJT04pO1xuICB9XG5cbiAgcHVibGljIG9uZVRvT25lQ2VudGVyaW5nKHJlY3Q6IElSZWN0LCBwYXJlbnRSZWN0OiBJUmVjdCwgcG9pbnRzOiBJUG9pbnRbXSk6IHZvaWQge1xuICAgIHRoaXMudHJhbnNmb3JtLnNjYWxlZFBvc2l0aW9uID0gUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoKTtcbiAgICB0aGlzLnRyYW5zZm9ybS5wb3NpdGlvbiA9IHRoaXMuZ2V0WmVyb1Bvc2l0aW9uV2l0aG91dFNjYWxlKHBvaW50cyk7XG5cbiAgICBjb25zdCBuZXdYID0gKHBhcmVudFJlY3Qud2lkdGggLSByZWN0LndpZHRoIC8gdGhpcy50cmFuc2Zvcm0uc2NhbGUpIC8gMiAtIHRoaXMudHJhbnNmb3JtLnBvc2l0aW9uLng7XG4gICAgY29uc3QgbmV3WSA9IChwYXJlbnRSZWN0LmhlaWdodCAtIHJlY3QuaGVpZ2h0IC8gdGhpcy50cmFuc2Zvcm0uc2NhbGUpIC8gMiAtIHRoaXMudHJhbnNmb3JtLnBvc2l0aW9uLnk7XG5cbiAgICB0aGlzLnRyYW5zZm9ybS5zY2FsZSA9IDE7XG4gICAgdGhpcy50cmFuc2Zvcm0ucG9zaXRpb24gPSBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZShuZXdYLCBuZXdZKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0WmVyb1Bvc2l0aW9uV2l0aG91dFNjYWxlKHBvaW50czogSVBvaW50W10pOiBJUG9pbnQge1xuICAgIGNvbnN0IHhQb2ludCA9IHBvaW50cy5sZW5ndGggPyBNYXRoLm1pbiguLi5wb2ludHMubWFwKChwb2ludCkgPT4gcG9pbnQueCkpIDogMDtcbiAgICBjb25zdCB5UG9pbnQgPSBwb2ludHMubGVuZ3RoID8gTWF0aC5taW4oLi4ucG9pbnRzLm1hcCgocG9pbnQpID0+IHBvaW50LnkpKSA6IDA7XG4gICAgcmV0dXJuIFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKHhQb2ludCwgeVBvaW50KVxuICB9XG59XG4iXX0=
@@ -0,0 +1,6 @@
1
+ export class AddConnectionToStoreRequest {
2
+ constructor(fConnection) {
3
+ this.fConnection = fConnection;
4
+ }
5
+ }
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWNvbm5lY3Rpb24tdG8tc3RvcmUtcmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2YtY29ubmVjdGlvbi9hZGQtY29ubmVjdGlvbi10by1zdG9yZS9hZGQtY29ubmVjdGlvbi10by1zdG9yZS1yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTywyQkFBMkI7SUFFcEMsWUFDVyxXQUE0QjtRQUE1QixnQkFBVyxHQUFYLFdBQVcsQ0FBaUI7SUFFdkMsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRkNvbm5lY3Rpb25CYXNlIH0gZnJvbSAnLi4vLi4vLi4vZi1jb25uZWN0aW9uJztcblxuZXhwb3J0IGNsYXNzIEFkZENvbm5lY3Rpb25Ub1N0b3JlUmVxdWVzdCB7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIGZDb25uZWN0aW9uOiBGQ29ubmVjdGlvbkJhc2VcbiAgICApIHtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,25 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { FExecutionRegister } from '@foblex/mediator';
4
+ import { AddConnectionToStoreRequest } from './add-connection-to-store-request';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../../f-storage";
7
+ let AddConnectionToStoreExecution = class AddConnectionToStoreExecution {
8
+ constructor(fComponentsStore) {
9
+ this.fComponentsStore = fComponentsStore;
10
+ }
11
+ handle(request) {
12
+ this.fComponentsStore.fConnections.push(request.fConnection);
13
+ this.fComponentsStore.componentDataChanged();
14
+ }
15
+ };
16
+ AddConnectionToStoreExecution.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AddConnectionToStoreExecution, deps: [{ token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Injectable });
17
+ AddConnectionToStoreExecution.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AddConnectionToStoreExecution });
18
+ AddConnectionToStoreExecution = __decorate([
19
+ FExecutionRegister(AddConnectionToStoreRequest)
20
+ ], AddConnectionToStoreExecution);
21
+ export { AddConnectionToStoreExecution };
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AddConnectionToStoreExecution, decorators: [{
23
+ type: Injectable
24
+ }], ctorParameters: function () { return [{ type: i1.FComponentsStore }]; } });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWNvbm5lY3Rpb24tdG8tc3RvcmUuZXhlY3V0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1jb25uZWN0aW9uL2FkZC1jb25uZWN0aW9uLXRvLXN0b3JlL2FkZC1jb25uZWN0aW9uLXRvLXN0b3JlLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7O0lBS25FLDZCQUE2QixTQUE3Qiw2QkFBNkI7SUFFeEMsWUFDWSxnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUU5QyxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQW9DO1FBQ2hELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM3RCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztJQUMvQyxDQUFDO0NBQ0YsQ0FBQTsySEFYWSw2QkFBNkI7K0hBQTdCLDZCQUE2QjtBQUE3Qiw2QkFBNkI7SUFEekMsa0JBQWtCLENBQUMsMkJBQTJCLENBQUM7R0FDbkMsNkJBQTZCLENBV3pDO1NBWFksNkJBQTZCOzRGQUE3Qiw2QkFBNkI7a0JBRnpDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IEFkZENvbm5lY3Rpb25Ub1N0b3JlUmVxdWVzdCB9IGZyb20gJy4vYWRkLWNvbm5lY3Rpb24tdG8tc3RvcmUtcmVxdWVzdCc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihBZGRDb25uZWN0aW9uVG9TdG9yZVJlcXVlc3QpXG5leHBvcnQgY2xhc3MgQWRkQ29ubmVjdGlvblRvU3RvcmVFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPEFkZENvbm5lY3Rpb25Ub1N0b3JlUmVxdWVzdCwgdm9pZD4ge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBBZGRDb25uZWN0aW9uVG9TdG9yZVJlcXVlc3QpOiB2b2lkIHtcbiAgICB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNvbm5lY3Rpb25zLnB1c2gocmVxdWVzdC5mQ29ubmVjdGlvbik7XG4gICAgdGhpcy5mQ29tcG9uZW50c1N0b3JlLmNvbXBvbmVudERhdGFDaGFuZ2VkKCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './add-connection-to-store.execution';
2
+ export * from './add-connection-to-store-request';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLWNvbm5lY3Rpb24vYWRkLWNvbm5lY3Rpb24tdG8tc3RvcmUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQ0FBcUMsQ0FBQztBQUVwRCxjQUFjLG1DQUFtQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hZGQtY29ubmVjdGlvbi10by1zdG9yZS5leGVjdXRpb24nO1xuXG5leHBvcnQgKiBmcm9tICcuL2FkZC1jb25uZWN0aW9uLXRvLXN0b3JlLXJlcXVlc3QnO1xuIl19
@@ -1,5 +1,7 @@
1
+ export * from './add-connection-to-store';
1
2
  export * from './find-closest-input-using-snap-threshold';
2
3
  export * from './get-all-can-be-connected-input-positions';
3
4
  export * from './get-connector-with-rect';
5
+ export * from './remove-connection-from-store';
4
6
  export * from './providers';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLWNvbm5lY3Rpb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywyQ0FBMkMsQ0FBQztBQUUxRCxjQUFjLDRDQUE0QyxDQUFDO0FBRTNELGNBQWMsMkJBQTJCLENBQUM7QUFFMUMsY0FBYyxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2ZpbmQtY2xvc2VzdC1pbnB1dC11c2luZy1zbmFwLXRocmVzaG9sZCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZ2V0LWFsbC1jYW4tYmUtY29ubmVjdGVkLWlucHV0LXBvc2l0aW9ucyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZ2V0LWNvbm5lY3Rvci13aXRoLXJlY3QnO1xuXG5leHBvcnQgKiBmcm9tICcuL3Byb3ZpZGVycyc7XG4iXX0=
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLWNvbm5lY3Rpb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywyQkFBMkIsQ0FBQztBQUUxQyxjQUFjLDJDQUEyQyxDQUFDO0FBRTFELGNBQWMsNENBQTRDLENBQUM7QUFFM0QsY0FBYywyQkFBMkIsQ0FBQztBQUUxQyxjQUFjLGdDQUFnQyxDQUFDO0FBRS9DLGNBQWMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hZGQtY29ubmVjdGlvbi10by1zdG9yZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZmluZC1jbG9zZXN0LWlucHV0LXVzaW5nLXNuYXAtdGhyZXNob2xkJztcblxuZXhwb3J0ICogZnJvbSAnLi9nZXQtYWxsLWNhbi1iZS1jb25uZWN0ZWQtaW5wdXQtcG9zaXRpb25zJztcblxuZXhwb3J0ICogZnJvbSAnLi9nZXQtY29ubmVjdG9yLXdpdGgtcmVjdCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vcmVtb3ZlLWNvbm5lY3Rpb24tZnJvbS1zdG9yZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vcHJvdmlkZXJzJztcbiJdfQ==
@@ -1,9 +1,13 @@
1
1
  import { FindClosestInputUsingSnapThresholdExecution } from './find-closest-input-using-snap-threshold';
2
2
  import { GetAllCanBeConnectedInputPositionsExecution } from './get-all-can-be-connected-input-positions';
3
3
  import { GetConnectorWithRectExecution } from './get-connector-with-rect';
4
+ import { AddConnectionToStoreExecution } from './add-connection-to-store';
5
+ import { RemoveConnectionFromStoreExecution } from './remove-connection-from-store';
4
6
  export const F_CONNECTION_FEATURES = [
7
+ AddConnectionToStoreExecution,
5
8
  FindClosestInputUsingSnapThresholdExecution,
6
9
  GetAllCanBeConnectedInputPositionsExecution,
7
10
  GetConnectorWithRectExecution,
11
+ RemoveConnectionFromStoreExecution
8
12
  ];
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1jb25uZWN0aW9uL3Byb3ZpZGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsMkNBQTJDLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUN4RyxPQUFPLEVBQUUsMkNBQTJDLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUN6RyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUUxRSxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRztJQUVuQywyQ0FBMkM7SUFFM0MsMkNBQTJDO0lBRTNDLDZCQUE2QjtDQUM5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmluZENsb3Nlc3RJbnB1dFVzaW5nU25hcFRocmVzaG9sZEV4ZWN1dGlvbiB9IGZyb20gJy4vZmluZC1jbG9zZXN0LWlucHV0LXVzaW5nLXNuYXAtdGhyZXNob2xkJztcbmltcG9ydCB7IEdldEFsbENhbkJlQ29ubmVjdGVkSW5wdXRQb3NpdGlvbnNFeGVjdXRpb24gfSBmcm9tICcuL2dldC1hbGwtY2FuLWJlLWNvbm5lY3RlZC1pbnB1dC1wb3NpdGlvbnMnO1xuaW1wb3J0IHsgR2V0Q29ubmVjdG9yV2l0aFJlY3RFeGVjdXRpb24gfSBmcm9tICcuL2dldC1jb25uZWN0b3Itd2l0aC1yZWN0JztcblxuZXhwb3J0IGNvbnN0IEZfQ09OTkVDVElPTl9GRUFUVVJFUyA9IFtcblxuICBGaW5kQ2xvc2VzdElucHV0VXNpbmdTbmFwVGhyZXNob2xkRXhlY3V0aW9uLFxuXG4gIEdldEFsbENhbkJlQ29ubmVjdGVkSW5wdXRQb3NpdGlvbnNFeGVjdXRpb24sXG5cbiAgR2V0Q29ubmVjdG9yV2l0aFJlY3RFeGVjdXRpb24sXG5dO1xuIl19
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1jb25uZWN0aW9uL3Byb3ZpZGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsMkNBQTJDLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUN4RyxPQUFPLEVBQUUsMkNBQTJDLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUN6RyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVwRixNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRztJQUVuQyw2QkFBNkI7SUFFN0IsMkNBQTJDO0lBRTNDLDJDQUEyQztJQUUzQyw2QkFBNkI7SUFFN0Isa0NBQWtDO0NBQ25DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaW5kQ2xvc2VzdElucHV0VXNpbmdTbmFwVGhyZXNob2xkRXhlY3V0aW9uIH0gZnJvbSAnLi9maW5kLWNsb3Nlc3QtaW5wdXQtdXNpbmctc25hcC10aHJlc2hvbGQnO1xuaW1wb3J0IHsgR2V0QWxsQ2FuQmVDb25uZWN0ZWRJbnB1dFBvc2l0aW9uc0V4ZWN1dGlvbiB9IGZyb20gJy4vZ2V0LWFsbC1jYW4tYmUtY29ubmVjdGVkLWlucHV0LXBvc2l0aW9ucyc7XG5pbXBvcnQgeyBHZXRDb25uZWN0b3JXaXRoUmVjdEV4ZWN1dGlvbiB9IGZyb20gJy4vZ2V0LWNvbm5lY3Rvci13aXRoLXJlY3QnO1xuaW1wb3J0IHsgQWRkQ29ubmVjdGlvblRvU3RvcmVFeGVjdXRpb24gfSBmcm9tICcuL2FkZC1jb25uZWN0aW9uLXRvLXN0b3JlJztcbmltcG9ydCB7IFJlbW92ZUNvbm5lY3Rpb25Gcm9tU3RvcmVFeGVjdXRpb24gfSBmcm9tICcuL3JlbW92ZS1jb25uZWN0aW9uLWZyb20tc3RvcmUnO1xuXG5leHBvcnQgY29uc3QgRl9DT05ORUNUSU9OX0ZFQVRVUkVTID0gW1xuXG4gIEFkZENvbm5lY3Rpb25Ub1N0b3JlRXhlY3V0aW9uLFxuXG4gIEZpbmRDbG9zZXN0SW5wdXRVc2luZ1NuYXBUaHJlc2hvbGRFeGVjdXRpb24sXG5cbiAgR2V0QWxsQ2FuQmVDb25uZWN0ZWRJbnB1dFBvc2l0aW9uc0V4ZWN1dGlvbixcblxuICBHZXRDb25uZWN0b3JXaXRoUmVjdEV4ZWN1dGlvbixcblxuICBSZW1vdmVDb25uZWN0aW9uRnJvbVN0b3JlRXhlY3V0aW9uXG5dO1xuIl19
@@ -0,0 +1,3 @@
1
+ export * from './remove-connection-from-store.execution';
2
+ export * from './remove-connection-from-store-request';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLWNvbm5lY3Rpb24vcmVtb3ZlLWNvbm5lY3Rpb24tZnJvbS1zdG9yZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDBDQUEwQyxDQUFDO0FBRXpELGNBQWMsd0NBQXdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3JlbW92ZS1jb25uZWN0aW9uLWZyb20tc3RvcmUuZXhlY3V0aW9uJztcblxuZXhwb3J0ICogZnJvbSAnLi9yZW1vdmUtY29ubmVjdGlvbi1mcm9tLXN0b3JlLXJlcXVlc3QnO1xuIl19
@@ -0,0 +1,6 @@
1
+ export class RemoveConnectionFromStoreRequest {
2
+ constructor(fConnection) {
3
+ this.fConnection = fConnection;
4
+ }
5
+ }
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLWNvbm5lY3Rpb24tZnJvbS1zdG9yZS1yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kb21haW4vZi1jb25uZWN0aW9uL3JlbW92ZS1jb25uZWN0aW9uLWZyb20tc3RvcmUvcmVtb3ZlLWNvbm5lY3Rpb24tZnJvbS1zdG9yZS1yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxnQ0FBZ0M7SUFFekMsWUFDUyxXQUE0QjtRQUE1QixnQkFBVyxHQUFYLFdBQVcsQ0FBaUI7SUFFckMsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRkNvbm5lY3Rpb25CYXNlIH0gZnJvbSAnLi4vLi4vLi4vZi1jb25uZWN0aW9uJztcblxuZXhwb3J0IGNsYXNzIFJlbW92ZUNvbm5lY3Rpb25Gcm9tU3RvcmVSZXF1ZXN0IHtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgcHVibGljIGZDb25uZWN0aW9uOiBGQ29ubmVjdGlvbkJhc2VcbiAgICApIHtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,29 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { FExecutionRegister } from '@foblex/mediator';
4
+ import { RemoveConnectionFromStoreRequest } from './remove-connection-from-store-request';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../../f-storage";
7
+ let RemoveConnectionFromStoreExecution = class RemoveConnectionFromStoreExecution {
8
+ constructor(fComponentsStore) {
9
+ this.fComponentsStore = fComponentsStore;
10
+ }
11
+ handle(request) {
12
+ const index = this.fComponentsStore.fConnections.indexOf(request.fConnection);
13
+ if (index === -1) {
14
+ throw new Error(`Connection not found in store`);
15
+ }
16
+ this.fComponentsStore.fConnections.splice(index, 1);
17
+ this.fComponentsStore.componentDataChanged();
18
+ }
19
+ };
20
+ RemoveConnectionFromStoreExecution.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RemoveConnectionFromStoreExecution, deps: [{ token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Injectable });
21
+ RemoveConnectionFromStoreExecution.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RemoveConnectionFromStoreExecution });
22
+ RemoveConnectionFromStoreExecution = __decorate([
23
+ FExecutionRegister(RemoveConnectionFromStoreRequest)
24
+ ], RemoveConnectionFromStoreExecution);
25
+ export { RemoveConnectionFromStoreExecution };
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RemoveConnectionFromStoreExecution, decorators: [{
27
+ type: Injectable
28
+ }], ctorParameters: function () { return [{ type: i1.FComponentsStore }]; } });
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLWNvbm5lY3Rpb24tZnJvbS1zdG9yZS5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLWNvbm5lY3Rpb24vcmVtb3ZlLWNvbm5lY3Rpb24tZnJvbS1zdG9yZS9yZW1vdmUtY29ubmVjdGlvbi1mcm9tLXN0b3JlLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7O0lBSzdFLGtDQUFrQyxTQUFsQyxrQ0FBa0M7SUFFN0MsWUFDVSxnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUU1QyxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQXlDO1FBQ3JELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM5RSxJQUFJLEtBQUssS0FBSyxDQUFDLENBQUMsRUFBRTtZQUNoQixNQUFNLElBQUksS0FBSyxDQUFDLCtCQUErQixDQUFDLENBQUM7U0FDbEQ7UUFDRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLG9CQUFvQixFQUFFLENBQUM7SUFDL0MsQ0FBQztDQUNGLENBQUE7Z0lBZlksa0NBQWtDO29JQUFsQyxrQ0FBa0M7QUFBbEMsa0NBQWtDO0lBRDlDLGtCQUFrQixDQUFDLGdDQUFnQyxDQUFDO0dBQ3hDLGtDQUFrQyxDQWU5QztTQWZZLGtDQUFrQzs0RkFBbEMsa0NBQWtDO2tCQUY5QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBSZW1vdmVDb25uZWN0aW9uRnJvbVN0b3JlUmVxdWVzdCB9IGZyb20gJy4vcmVtb3ZlLWNvbm5lY3Rpb24tZnJvbS1zdG9yZS1yZXF1ZXN0JztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKFJlbW92ZUNvbm5lY3Rpb25Gcm9tU3RvcmVSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIFJlbW92ZUNvbm5lY3Rpb25Gcm9tU3RvcmVFeGVjdXRpb24gaW1wbGVtZW50cyBJRXhlY3V0aW9uPFJlbW92ZUNvbm5lY3Rpb25Gcm9tU3RvcmVSZXF1ZXN0LCB2b2lkPiB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBSZW1vdmVDb25uZWN0aW9uRnJvbVN0b3JlUmVxdWVzdCk6IHZvaWQge1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDb25uZWN0aW9ucy5pbmRleE9mKHJlcXVlc3QuZkNvbm5lY3Rpb24pO1xuICAgIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgQ29ubmVjdGlvbiBub3QgZm91bmQgaW4gc3RvcmVgKTtcbiAgICB9XG4gICAgdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDb25uZWN0aW9ucy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5jb21wb25lbnREYXRhQ2hhbmdlZCgpO1xuICB9XG59XG4iXX0=
@@ -36,11 +36,18 @@ export class FCanvasComponent extends FCanvasBase {
36
36
  }
37
37
  redrawWithAnimation() {
38
38
  var _a;
39
+ let duration = F_CANVAS_ANIMATION_DURATION;
40
+ if (this.isMobile()) {
41
+ duration = 80;
42
+ }
39
43
  (_a = this.fComponentsStore.fBackground) === null || _a === void 0 ? void 0 : _a.setTransform(this.transform);
40
- this.hostElement.setAttribute("style", `transition: transform ${F_CANVAS_ANIMATION_DURATION}ms ease-in-out; transform: ${TransformModelExtensions.toString(this.transform)}`);
41
- setTimeout(() => {
42
- this.redraw();
43
- }, F_CANVAS_ANIMATION_DURATION);
44
+ this.hostElement.setAttribute("style", `transition: transform ${duration}ms ease-in-out; transform: ${TransformModelExtensions.toString(this.transform)}`);
45
+ setTimeout(() => this.redraw(), F_CANVAS_ANIMATION_DURATION);
46
+ }
47
+ isMobile() {
48
+ // @ts-ignore
49
+ const userAgent = navigator.userAgent || navigator.vendor || window['opera'];
50
+ return /android|iPad|iPhone|iPod/i.test(userAgent);
44
51
  }
45
52
  centerGroupOrNode(id, animated = true) {
46
53
  this.fMediator.send(new CenterGroupOrNodeRequest(id, animated));
@@ -93,4 +100,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
93
100
  type: ViewChild,
94
101
  args: ['fConnectionsContainer', { static: true }]
95
102
  }] } });
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jYW52YXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNhbnZhcy9mLWNhbnZhcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY2FudmFzL2YtY2FudmFzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsR0FDdEUsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLFdBQVcsRUFBRSxRQUFRLEVBQ3RCLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFVLGVBQWUsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQU8vRSxPQUFPLEVBQ0wsd0JBQXdCLEVBQ3hCLDJCQUEyQixFQUMzQiwyQkFBMkIsRUFDM0IsZ0JBQWdCLEVBQ2hCLDBCQUEwQixFQUMxQix1QkFBdUIsRUFDdkIsMEJBQTBCLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEdBQ2xFLE1BQU0sV0FBVyxDQUFDOzs7O0FBZW5CLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxXQUFXO0lBZ0MvQyxZQUNVLGdCQUF5QyxFQUN6QyxTQUFvQixFQUNwQixnQkFBa0M7UUFFMUMsS0FBSyxFQUFFLENBQUM7UUFKQSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXlCO1FBQ3pDLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDcEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQWhDNUIsa0JBQWEsR0FBcUMsSUFBSSxZQUFZLEVBQXNCLENBQUM7SUFtQ3pHLENBQUM7SUFqQ0QsSUFDVyxRQUFRLENBQUMsS0FBeUI7UUFDM0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSwwQkFBMEIsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELElBQ1csS0FBSyxDQUFDLEtBQXlCO1FBQ3hDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksdUJBQXVCLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFRCxJQUFvQixNQUFNO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBb0IsV0FBVztRQUM3QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7SUFDN0MsQ0FBQztJQW1CTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7SUFDdkMsQ0FBQztJQUVlLE1BQU07O1FBQ3BCLE1BQUEsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsMENBQUUsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNoRSxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsY0FBZSx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBRSxFQUFFLENBQUMsQ0FBQztRQUM1RyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLDJCQUEyQixFQUFFLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRWUsbUJBQW1COztRQUNqQyxNQUFBLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLDBDQUFFLFlBQVksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDaEUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLHlCQUEwQiwyQkFBNEIsOEJBQStCLHdCQUF3QixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2xMLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDaEIsQ0FBQyxFQUFFLDJCQUEyQixDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVNLGlCQUFpQixDQUFDLEVBQVUsRUFBRSxXQUFvQixJQUFJO1FBQzNELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksd0JBQXdCLENBQUMsRUFBRSxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVNLFdBQVcsQ0FBQyxXQUFtQixlQUFlLENBQUMsVUFBVSxFQUFFLEVBQUUsV0FBb0IsSUFBSTtRQUMxRixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFTSxtQkFBbUIsQ0FBQyxXQUFvQixJQUFJO1FBQ2pELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksMEJBQTBCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRWUsT0FBTyxDQUFDLEtBQWEsRUFBRSxhQUFxQixlQUFlLENBQUMsVUFBVSxFQUFFO1FBQ3RGLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksa0JBQWtCLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVlLFNBQVM7UUFDdkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxpQkFBaUIsRUFBRSxDQUFDLENBQUM7SUFDL0MsQ0FBQzs7OEdBNUVVLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLG9MQUxoQjtRQUNULEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUU7S0FDckQsaWNDbENILGtiQWNBOzRGRHVCYSxnQkFBZ0I7a0JBYjVCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFVBQVU7b0JBQ3BCLFdBQVcsRUFBRSwyQkFBMkI7b0JBQ3hDLFNBQVMsRUFBRSxDQUFFLDJCQUEyQixDQUFFO29CQUMxQyxRQUFRLEVBQUUsWUFBWTtvQkFDdEIsSUFBSSxFQUFFO3dCQUNKLE9BQU8sRUFBRSxzQkFBc0I7cUJBQ2hDO29CQUNELFNBQVMsRUFBRTt3QkFDVCxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsV0FBVyxrQkFBa0IsRUFBRTtxQkFDckQ7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEO3dKQUlpQixhQUFhO3NCQUQ1QixNQUFNO2dCQUlJLFFBQVE7c0JBRGxCLEtBQUs7Z0JBTUssS0FBSztzQkFEZixLQUFLO2dCQWNVLGdCQUFnQjtzQkFEL0IsU0FBUzt1QkFBQyxrQkFBa0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSS9CLGVBQWU7c0JBRDlCLFNBQVM7dUJBQUMsaUJBQWlCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUk5QixxQkFBcUI7c0JBRHBDLFNBQVM7dUJBQUMsdUJBQXVCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCxcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7XG4gIEZDYW52YXNCYXNlLCBGX0NBTlZBU1xufSBmcm9tICcuL2YtY2FudmFzLWJhc2UnO1xuaW1wb3J0IHsgSVBvaW50LCBQb2ludEV4dGVuc2lvbnMsIFRyYW5zZm9ybU1vZGVsRXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHtcbiAgRkNhbnZhc0NoYW5nZUV2ZW50LFxufSBmcm9tICcuL2RvbWFpbic7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZOb2RlQmFzZSB9IGZyb20gJy4uL2Ytbm9kZSc7XG5pbXBvcnQgeyBGTWVkaWF0b3IgfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7XG4gIENlbnRlckdyb3VwT3JOb2RlUmVxdWVzdCxcbiAgRW1pdFRyYW5zZm9ybUNoYW5nZXNSZXF1ZXN0LFxuICBGX0NBTlZBU19BTklNQVRJT05fRFVSQVRJT04sXG4gIEZpdFRvRmxvd1JlcXVlc3QsXG4gIElucHV0Q2FudmFzUG9zaXRpb25SZXF1ZXN0LFxuICBJbnB1dENhbnZhc1NjYWxlUmVxdWVzdCxcbiAgUmVzZXRTY2FsZUFuZENlbnRlclJlcXVlc3QsIFJlc2V0U2NhbGVSZXF1ZXN0LCBVcGRhdGVTY2FsZVJlcXVlc3QsXG59IGZyb20gJy4uL2RvbWFpbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2YtY2FudmFzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2YtY2FudmFzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbICcuL2YtY2FudmFzLmNvbXBvbmVudC5zY3NzJyBdLFxuICBleHBvcnRBczogJ2ZDb21wb25lbnQnLFxuICBob3N0OiB7XG4gICAgJ2NsYXNzJzogJ2YtY29tcG9uZW50IGYtY2FudmFzJyxcbiAgfSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgeyBwcm92aWRlOiBGX0NBTlZBUywgdXNlRXhpc3Rpbmc6IEZDYW52YXNDb21wb25lbnQgfVxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRkNhbnZhc0NvbXBvbmVudCBleHRlbmRzIEZDYW52YXNCYXNlIGltcGxlbWVudHMgT25Jbml0IHtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIG92ZXJyaWRlIGZDYW52YXNDaGFuZ2U6IEV2ZW50RW1pdHRlcjxGQ2FudmFzQ2hhbmdlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxGQ2FudmFzQ2hhbmdlRXZlbnQ+KCk7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBwb3NpdGlvbih2YWx1ZTogSVBvaW50IHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5mTWVkaWF0b3Iuc2VuZChuZXcgSW5wdXRDYW52YXNQb3NpdGlvblJlcXVlc3QodGhpcy50cmFuc2Zvcm0sIHZhbHVlKSk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNjYWxlKHZhbHVlOiBudW1iZXIgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLmZNZWRpYXRvci5zZW5kKG5ldyBJbnB1dENhbnZhc1NjYWxlUmVxdWVzdCh0aGlzLnRyYW5zZm9ybSwgdmFsdWUpKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBnZXQgZk5vZGVzKCk6IEZOb2RlQmFzZVtdIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZOb2RlcztcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBnZXQgaG9zdEVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWZlcmVuY2UubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIEBWaWV3Q2hpbGQoJ2ZHcm91cHNDb250YWluZXInLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwdWJsaWMgb3ZlcnJpZGUgZkdyb3Vwc0NvbnRhaW5lciE6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gIEBWaWV3Q2hpbGQoJ2ZOb2Rlc0NvbnRhaW5lcicsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHB1YmxpYyBvdmVycmlkZSBmTm9kZXNDb250YWluZXIhOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICBAVmlld0NoaWxkKCdmQ29ubmVjdGlvbnNDb250YWluZXInLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwdWJsaWMgb3ZlcnJpZGUgZkNvbm5lY3Rpb25zQ29udGFpbmVyITogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmZXJlbmNlOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIGZNZWRpYXRvcjogRk1lZGlhdG9yLFxuICAgIHByaXZhdGUgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZSxcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyA9IHRoaXM7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgcmVkcmF3KCk6IHZvaWQge1xuICAgIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQmFja2dyb3VuZD8uc2V0VHJhbnNmb3JtKHRoaXMudHJhbnNmb3JtKTtcbiAgICB0aGlzLmhvc3RFbGVtZW50LnNldEF0dHJpYnV0ZShcInN0eWxlXCIsIGB0cmFuc2Zvcm06ICR7IFRyYW5zZm9ybU1vZGVsRXh0ZW5zaW9ucy50b1N0cmluZyh0aGlzLnRyYW5zZm9ybSkgfWApO1xuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQobmV3IEVtaXRUcmFuc2Zvcm1DaGFuZ2VzUmVxdWVzdCgpKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSByZWRyYXdXaXRoQW5pbWF0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQmFja2dyb3VuZD8uc2V0VHJhbnNmb3JtKHRoaXMudHJhbnNmb3JtKTtcbiAgICB0aGlzLmhvc3RFbGVtZW50LnNldEF0dHJpYnV0ZShcInN0eWxlXCIsIGB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHsgRl9DQU5WQVNfQU5JTUFUSU9OX0RVUkFUSU9OIH1tcyBlYXNlLWluLW91dDsgdHJhbnNmb3JtOiAkeyBUcmFuc2Zvcm1Nb2RlbEV4dGVuc2lvbnMudG9TdHJpbmcodGhpcy50cmFuc2Zvcm0pIH1gKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMucmVkcmF3KCk7XG4gICAgfSwgRl9DQU5WQVNfQU5JTUFUSU9OX0RVUkFUSU9OKTtcbiAgfVxuXG4gIHB1YmxpYyBjZW50ZXJHcm91cE9yTm9kZShpZDogc3RyaW5nLCBhbmltYXRlZDogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcbiAgICB0aGlzLmZNZWRpYXRvci5zZW5kKG5ldyBDZW50ZXJHcm91cE9yTm9kZVJlcXVlc3QoaWQsIGFuaW1hdGVkKSk7XG4gIH1cblxuICBwdWJsaWMgZml0VG9TY3JlZW4odG9DZW50ZXI6IElQb2ludCA9IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCksIGFuaW1hdGVkOiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQobmV3IEZpdFRvRmxvd1JlcXVlc3QodG9DZW50ZXIsIGFuaW1hdGVkKSk7XG4gIH1cblxuICBwdWJsaWMgcmVzZXRTY2FsZUFuZENlbnRlcihhbmltYXRlZDogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcbiAgICB0aGlzLmZNZWRpYXRvci5zZW5kKG5ldyBSZXNldFNjYWxlQW5kQ2VudGVyUmVxdWVzdChhbmltYXRlZCkpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIHNldFpvb20oc2NhbGU6IG51bWJlciwgdG9Qb3NpdGlvbjogSVBvaW50ID0gUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoKSk6IHZvaWQge1xuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQobmV3IFVwZGF0ZVNjYWxlUmVxdWVzdChzY2FsZSwgdG9Qb3NpdGlvbikpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIHJlc2V0Wm9vbSgpOiB2b2lkIHtcbiAgICB0aGlzLmZNZWRpYXRvci5zZW5kKG5ldyBSZXNldFNjYWxlUmVxdWVzdCgpKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lcj5cbiAgPGRpdiAjZkdyb3Vwc0NvbnRhaW5lcj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZkdyb3VwXVwiPjwvbmctY29udGVudD5cbiAgPC9kaXY+XG4gIDxkaXYgI2ZDb25uZWN0aW9uc0NvbnRhaW5lcj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJmLXNuYXAtY29ubmVjdGlvblwiPjwvbmctY29udGVudD5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJmLWNvbm5lY3Rpb25cIj48L25nLWNvbnRlbnQ+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZi1jb25uZWN0aW9uLWZvci1jcmVhdGVcIj48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuXG4gIDxkaXYgI2ZOb2Rlc0NvbnRhaW5lcj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZk5vZGVdXCI+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jYW52YXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNhbnZhcy9mLWNhbnZhcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY2FudmFzL2YtY2FudmFzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsR0FDdEUsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLFdBQVcsRUFBRSxRQUFRLEVBQ3RCLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFVLGVBQWUsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQU8vRSxPQUFPLEVBQ0wsd0JBQXdCLEVBQ3hCLDJCQUEyQixFQUMzQiwyQkFBMkIsRUFDM0IsZ0JBQWdCLEVBQ2hCLDBCQUEwQixFQUMxQix1QkFBdUIsRUFDdkIsMEJBQTBCLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEdBQ2xFLE1BQU0sV0FBVyxDQUFDOzs7O0FBZW5CLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxXQUFXO0lBZ0MvQyxZQUNVLGdCQUF5QyxFQUN6QyxTQUFvQixFQUNwQixnQkFBa0M7UUFFMUMsS0FBSyxFQUFFLENBQUM7UUFKQSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXlCO1FBQ3pDLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDcEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQWhDNUIsa0JBQWEsR0FBcUMsSUFBSSxZQUFZLEVBQXNCLENBQUM7SUFtQ3pHLENBQUM7SUFqQ0QsSUFDVyxRQUFRLENBQUMsS0FBeUI7UUFDM0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSwwQkFBMEIsQ0FBQyxJQUFJ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Q0FBQyxJQUFJLGlCQUFpQixFQUFFLENBQUMsQ0FBQztJQUMvQyxDQUFDOzs4R0FwRlUsZ0JBQWdCO2tHQUFoQixnQkFBZ0Isb0xBTGhCO1FBQ1QsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRTtLQUNyRCxpY0NsQ0gsa2JBY0E7NEZEdUJhLGdCQUFnQjtrQkFiNUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsVUFBVTtvQkFDcEIsV0FBVyxFQUFFLDJCQUEyQjtvQkFDeEMsU0FBUyxFQUFFLENBQUUsMkJBQTJCLENBQUU7b0JBQzFDLFFBQVEsRUFBRSxZQUFZO29CQUN0QixJQUFJLEVBQUU7d0JBQ0osT0FBTyxFQUFFLHNCQUFzQjtxQkFDaEM7b0JBQ0QsU0FBUyxFQUFFO3dCQUNULEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxXQUFXLGtCQUFrQixFQUFFO3FCQUNyRDtvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7d0pBSWlCLGFBQWE7c0JBRDVCLE1BQU07Z0JBSUksUUFBUTtzQkFEbEIsS0FBSztnQkFNSyxLQUFLO3NCQURmLEtBQUs7Z0JBY1UsZ0JBQWdCO3NCQUQvQixTQUFTO3VCQUFDLGtCQUFrQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFJL0IsZUFBZTtzQkFEOUIsU0FBUzt1QkFBQyxpQkFBaUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSTlCLHFCQUFxQjtzQkFEcEMsU0FBUzt1QkFBQyx1QkFBdUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkLFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtcbiAgRkNhbnZhc0Jhc2UsIEZfQ0FOVkFTXG59IGZyb20gJy4vZi1jYW52YXMtYmFzZSc7XG5pbXBvcnQgeyBJUG9pbnQsIFBvaW50RXh0ZW5zaW9ucywgVHJhbnNmb3JtTW9kZWxFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQge1xuICBGQ2FudmFzQ2hhbmdlRXZlbnQsXG59IGZyb20gJy4vZG9tYWluJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgRk5vZGVCYXNlIH0gZnJvbSAnLi4vZi1ub2RlJztcbmltcG9ydCB7IEZNZWRpYXRvciB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHtcbiAgQ2VudGVyR3JvdXBPck5vZGVSZXF1ZXN0LFxuICBFbWl0VHJhbnNmb3JtQ2hhbmdlc1JlcXVlc3QsXG4gIEZfQ0FOVkFTX0FOSU1BVElPTl9EVVJBVElPTixcbiAgRml0VG9GbG93UmVxdWVzdCxcbiAgSW5wdXRDYW52YXNQb3NpdGlvblJlcXVlc3QsXG4gIElucHV0Q2FudmFzU2NhbGVSZXF1ZXN0LFxuICBSZXNldFNjYWxlQW5kQ2VudGVyUmVxdWVzdCwgUmVzZXRTY2FsZVJlcXVlc3QsIFVwZGF0ZVNjYWxlUmVxdWVzdCxcbn0gZnJvbSAnLi4vZG9tYWluJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZi1jYW52YXMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZi1jYW52YXMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsgJy4vZi1jYW52YXMuY29tcG9uZW50LnNjc3MnIF0sXG4gIGV4cG9ydEFzOiAnZkNvbXBvbmVudCcsXG4gIGhvc3Q6IHtcbiAgICAnY2xhc3MnOiAnZi1jb21wb25lbnQgZi1jYW52YXMnLFxuICB9LFxuICBwcm92aWRlcnM6IFtcbiAgICB7IHByb3ZpZGU6IEZfQ0FOVkFTLCB1c2VFeGlzdGluZzogRkNhbnZhc0NvbXBvbmVudCB9XG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBGQ2FudmFzQ29tcG9uZW50IGV4dGVuZHMgRkNhbnZhc0Jhc2UgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZkNhbnZhc0NoYW5nZTogRXZlbnRFbWl0dGVyPEZDYW52YXNDaGFuZ2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEZDYW52YXNDaGFuZ2VFdmVudD4oKTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHBvc2l0aW9uKHZhbHVlOiBJUG9pbnQgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLmZNZWRpYXRvci5zZW5kKG5ldyBJbnB1dENhbnZhc1Bvc2l0aW9uUmVxdWVzdCh0aGlzLnRyYW5zZm9ybSwgdmFsdWUpKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgc2NhbGUodmFsdWU6IG51bWJlciB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQobmV3IElucHV0Q2FudmFzU2NhbGVSZXF1ZXN0KHRoaXMudHJhbnNmb3JtLCB2YWx1ZSkpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGdldCBmTm9kZXMoKTogRk5vZGVCYXNlW10ge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZk5vZGVzO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGdldCBob3N0RWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZmVyZW5jZS5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgQFZpZXdDaGlsZCgnZkdyb3Vwc0NvbnRhaW5lcicsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHB1YmxpYyBvdmVycmlkZSBmR3JvdXBzQ29udGFpbmVyITogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgQFZpZXdDaGlsZCgnZk5vZGVzQ29udGFpbmVyJywgeyBzdGF0aWM6IHRydWUgfSlcbiAgcHVibGljIG92ZXJyaWRlIGZOb2Rlc0NvbnRhaW5lciE6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gIEBWaWV3Q2hpbGQoJ2ZDb25uZWN0aW9uc0NvbnRhaW5lcicsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHB1YmxpYyBvdmVycmlkZSBmQ29ubmVjdGlvbnNDb250YWluZXIhOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsZW1lbnRSZWZlcmVuY2U6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgZk1lZGlhdG9yOiBGTWVkaWF0b3IsXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCkge1xuICAgIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzID0gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSByZWRyYXcoKTogdm9pZCB7XG4gICAgdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZCYWNrZ3JvdW5kPy5zZXRUcmFuc2Zvcm0odGhpcy50cmFuc2Zvcm0pO1xuICAgIHRoaXMuaG9zdEVsZW1lbnQuc2V0QXR0cmlidXRlKFwic3R5bGVcIiwgYHRyYW5zZm9ybTogJHsgVHJhbnNmb3JtTW9kZWxFeHRlbnNpb25zLnRvU3RyaW5nKHRoaXMudHJhbnNmb3JtKSB9YCk7XG4gICAgdGhpcy5mTWVkaWF0b3Iuc2VuZChuZXcgRW1pdFRyYW5zZm9ybUNoYW5nZXNSZXF1ZXN0KCkpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIHJlZHJhd1dpdGhBbmltYXRpb24oKTogdm9pZCB7XG4gICAgbGV0IGR1cmF0aW9uID0gRl9DQU5WQVNfQU5JTUFUSU9OX0RVUkFUSU9OO1xuICAgIGlmICh0aGlzLmlzTW9iaWxlKCkpIHtcbiAgICAgIGR1cmF0aW9uID0gODA7XG4gICAgfVxuICAgIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQmFja2dyb3VuZD8uc2V0VHJhbnNmb3JtKHRoaXMudHJhbnNmb3JtKTtcbiAgICB0aGlzLmhvc3RFbGVtZW50LnNldEF0dHJpYnV0ZShcInN0eWxlXCIsIGB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHsgZHVyYXRpb24gfW1zIGVhc2UtaW4tb3V0OyB0cmFuc2Zvcm06ICR7IFRyYW5zZm9ybU1vZGVsRXh0ZW5zaW9ucy50b1N0cmluZyh0aGlzLnRyYW5zZm9ybSkgfWApO1xuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5yZWRyYXcoKSwgRl9DQU5WQVNfQU5JTUFUSU9OX0RVUkFUSU9OKTtcbiAgfVxuXG4gIHByaXZhdGUgaXNNb2JpbGUoKTogYm9vbGVhbiB7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGNvbnN0IHVzZXJBZ2VudCA9IG5hdmlnYXRvci51c2VyQWdlbnQgfHwgbmF2aWdhdG9yLnZlbmRvciB8fCB3aW5kb3dbICdvcGVyYScgXTtcbiAgICByZXR1cm4gL2FuZHJvaWR8aVBhZHxpUGhvbmV8aVBvZC9pLnRlc3QodXNlckFnZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBjZW50ZXJHcm91cE9yTm9kZShpZDogc3RyaW5nLCBhbmltYXRlZDogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcbiAgICB0aGlzLmZNZWRpYXRvci5zZW5kKG5ldyBDZW50ZXJHcm91cE9yTm9kZVJlcXVlc3QoaWQsIGFuaW1hdGVkKSk7XG4gIH1cblxuICBwdWJsaWMgZml0VG9TY3JlZW4odG9DZW50ZXI6IElQb2ludCA9IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCksIGFuaW1hdGVkOiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQobmV3IEZpdFRvRmxvd1JlcXVlc3QodG9DZW50ZXIsIGFuaW1hdGVkKSk7XG4gIH1cblxuICBwdWJsaWMgcmVzZXRTY2FsZUFuZENlbnRlcihhbmltYXRlZDogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcbiAgICB0aGlzLmZNZWRpYXRvci5zZW5kKG5ldyBSZXNldFNjYWxlQW5kQ2VudGVyUmVxdWVzdChhbmltYXRlZCkpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIHNldFpvb20oc2NhbGU6IG51bWJlciwgdG9Qb3NpdGlvbjogSVBvaW50ID0gUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoKSk6IHZvaWQge1xuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQobmV3IFVwZGF0ZVNjYWxlUmVxdWVzdChzY2FsZSwgdG9Qb3NpdGlvbikpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIHJlc2V0Wm9vbSgpOiB2b2lkIHtcbiAgICB0aGlzLmZNZWRpYXRvci5zZW5kKG5ldyBSZXNldFNjYWxlUmVxdWVzdCgpKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lcj5cbiAgPGRpdiAjZkdyb3Vwc0NvbnRhaW5lcj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZkdyb3VwXVwiPjwvbmctY29udGVudD5cbiAgPC9kaXY+XG4gIDxkaXYgI2ZDb25uZWN0aW9uc0NvbnRhaW5lcj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJmLXNuYXAtY29ubmVjdGlvblwiPjwvbmctY29udGVudD5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJmLWNvbm5lY3Rpb25cIj48L25nLWNvbnRlbnQ+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZi1jb25uZWN0aW9uLWZvci1jcmVhdGVcIj48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuXG4gIDxkaXYgI2ZOb2Rlc0NvbnRhaW5lcj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZk5vZGVdXCI+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19