@foblex/flow 1.5.4 → 1.5.6

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 (127) hide show
  1. package/domain/clear-selection/clear-selection.handler.d.ts +11 -0
  2. package/domain/clear-selection/clear-selection.request.d.ts +2 -0
  3. package/domain/clear-selection/index.d.ts +2 -0
  4. package/domain/get-connection-vector/get-connection-vector.handler.d.ts +1 -1
  5. package/domain/get-element-rect-in-flow/get-element-rect-in-flow-request.d.ts +4 -0
  6. package/domain/{get-element-rect-in-flow.handler.d.ts → get-element-rect-in-flow/get-element-rect-in-flow.handler.d.ts} +4 -3
  7. package/domain/get-element-rect-in-flow/index.d.ts +2 -0
  8. package/domain/get-input-rect-in-flow/get-input-rect-in-flow-request.d.ts +4 -0
  9. package/domain/get-input-rect-in-flow/get-input-rect-in-flow-response.d.ts +7 -0
  10. package/domain/get-input-rect-in-flow/get-input-rect-in-flow.handler.d.ts +14 -0
  11. package/domain/get-input-rect-in-flow/index.d.ts +3 -0
  12. package/domain/get-nodes-rect/get-nodes-rect.handler.d.ts +11 -0
  13. package/domain/get-nodes-rect/get-nodes-rect.request.d.ts +2 -0
  14. package/domain/get-nodes-rect/index.d.ts +2 -0
  15. package/domain/get-output-rect-in-flow/get-output-rect-in-flow.handler.d.ts +3 -3
  16. package/domain/get-selection/get-selection.handler.d.ts +11 -0
  17. package/domain/get-selection/get-selection.request.d.ts +2 -0
  18. package/domain/get-selection/index.d.ts +2 -0
  19. package/domain/index.d.ts +6 -5
  20. package/domain/providers.d.ts +7 -5
  21. package/domain/redraw-connections/redraw-connections.handler.d.ts +1 -3
  22. package/domain/select-all/index.d.ts +2 -0
  23. package/domain/{select-all.handler.d.ts → select-all/select-all.handler.d.ts} +5 -4
  24. package/domain/select-all/select-all.request.d.ts +2 -0
  25. package/errors/conflict-error.d.ts +6 -0
  26. package/errors/create-error-class.d.ts +1 -0
  27. package/errors/errors.d.ts +3 -0
  28. package/errors/index.d.ts +4 -0
  29. package/errors/not-found-error.d.ts +6 -0
  30. package/esm2022/domain/clear-selection/clear-selection.handler.mjs +28 -0
  31. package/esm2022/domain/clear-selection/clear-selection.request.mjs +3 -0
  32. package/esm2022/domain/clear-selection/index.mjs +3 -0
  33. package/esm2022/domain/get-connection-vector/get-connection-vector.handler.mjs +3 -3
  34. package/esm2022/domain/get-element-rect-in-flow/get-element-rect-in-flow-request.mjs +6 -0
  35. package/esm2022/domain/get-element-rect-in-flow/get-element-rect-in-flow.handler.mjs +35 -0
  36. package/esm2022/domain/get-element-rect-in-flow/index.mjs +3 -0
  37. package/esm2022/domain/get-input-rect-in-flow/get-input-rect-in-flow-request.mjs +6 -0
  38. package/esm2022/domain/get-input-rect-in-flow/get-input-rect-in-flow-response.mjs +7 -0
  39. package/esm2022/domain/get-input-rect-in-flow/get-input-rect-in-flow.handler.mjs +34 -0
  40. package/esm2022/domain/get-input-rect-in-flow/index.mjs +4 -0
  41. package/esm2022/domain/get-nodes-rect/get-nodes-rect.handler.mjs +30 -0
  42. package/esm2022/domain/get-nodes-rect/get-nodes-rect.request.mjs +3 -0
  43. package/esm2022/domain/get-nodes-rect/index.mjs +3 -0
  44. package/esm2022/domain/get-output-rect-in-flow/get-output-rect-in-flow.handler.mjs +9 -8
  45. package/esm2022/domain/get-selection/get-selection.handler.mjs +35 -0
  46. package/esm2022/domain/get-selection/get-selection.request.mjs +3 -0
  47. package/esm2022/domain/get-selection/index.mjs +3 -0
  48. package/esm2022/domain/index.mjs +7 -6
  49. package/esm2022/domain/providers.mjs +12 -8
  50. package/esm2022/domain/redraw-connections/redraw-connections.handler.mjs +8 -9
  51. package/esm2022/domain/select-all/index.mjs +3 -0
  52. package/esm2022/domain/select-all/select-all.handler.mjs +38 -0
  53. package/esm2022/domain/select-all/select-all.request.mjs +3 -0
  54. package/esm2022/errors/conflict-error.mjs +7 -0
  55. package/esm2022/errors/create-error-class.mjs +11 -0
  56. package/esm2022/errors/errors.mjs +12 -0
  57. package/esm2022/errors/index.mjs +5 -0
  58. package/esm2022/errors/not-found-error.mjs +7 -0
  59. package/esm2022/f-canvas/f-canvas.component.mjs +15 -12
  60. package/esm2022/f-connection/common/e-f-connection-behavior.mjs +2 -1
  61. package/esm2022/f-connectors/f-connector-base.mjs +2 -1
  62. package/esm2022/f-connectors/f-node-output/f-node-output-base.mjs +2 -2
  63. package/esm2022/f-connectors/f-node-output/f-node-output.directive.mjs +9 -2
  64. package/esm2022/f-draggable/connections/create-connection/create-connection.on-pointer-up.mjs +3 -3
  65. package/esm2022/f-draggable/connections/create-connection/create-connection.prepare-drag-sequence.mjs +9 -10
  66. package/esm2022/f-draggable/connections/find-inputs-under-pointer/find-inputs-under-pointer.handler.mjs +3 -3
  67. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.mjs +5 -6
  68. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection.prepare-drag-sequence.mjs +2 -2
  69. package/esm2022/f-draggable/external-item/external-item.drag-handler.mjs +1 -4
  70. package/esm2022/f-draggable/external-item/external-item.on-pointer-up.mjs +9 -8
  71. package/esm2022/f-draggable/external-item/external-item.prepare-drag-sequence.mjs +4 -1
  72. package/esm2022/f-draggable/f-draggable-base.mjs +148 -7
  73. package/esm2022/f-draggable/f-draggable.directive.mjs +19 -24
  74. package/esm2022/f-draggable/f-selection-change-event.mjs +7 -0
  75. package/esm2022/f-draggable/index.mjs +2 -2
  76. package/esm2022/f-draggable/node/connection-source.drag-handler.mjs +4 -5
  77. package/esm2022/f-draggable/node/connection-target.drag-handler.mjs +4 -5
  78. package/esm2022/f-draggable/node/connection.drag-handler.mjs +4 -5
  79. package/esm2022/f-draggable/node/domain/is-connection-under-node/is-connection-under-node.handler.mjs +10 -7
  80. package/esm2022/f-draggable/node/node.prepare-drag-sequence.mjs +8 -9
  81. package/esm2022/f-draggable/selection-area/get-can-be-selected-items/get-can-be-selected-items.handler.mjs +9 -8
  82. package/esm2022/f-draggable/single-select/index.mjs +1 -2
  83. package/esm2022/f-draggable/single-select/single-select.on-pointer-down.mjs +2 -2
  84. package/esm2022/f-external-item/f-external-item-base.mjs +1 -1
  85. package/esm2022/f-external-item/f-external-item.directive.mjs +10 -6
  86. package/esm2022/f-flow/f-flow.component.mjs +24 -12
  87. package/esm2022/f-line-alignment/f-line-alignment.component.mjs +9 -8
  88. package/f-canvas/f-canvas.component.d.ts +3 -5
  89. package/f-connection/common/e-f-connection-behavior.d.ts +1 -0
  90. package/f-connectors/f-connector-base.d.ts +1 -0
  91. package/f-connectors/f-node-output/f-node-output-base.d.ts +1 -0
  92. package/f-connectors/f-node-output/f-node-output.directive.d.ts +3 -1
  93. package/f-draggable/connections/create-connection/create-connection.prepare-drag-sequence.d.ts +1 -3
  94. package/f-draggable/connections/providers.d.ts +1 -1
  95. package/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.d.ts +1 -3
  96. package/f-draggable/external-item/external-item.drag-handler.d.ts +1 -2
  97. package/f-draggable/external-item/external-item.on-pointer-up.d.ts +3 -3
  98. package/f-draggable/f-draggable-base.d.ts +38 -8
  99. package/f-draggable/f-draggable.directive.d.ts +6 -4
  100. package/f-draggable/index.d.ts +1 -1
  101. package/f-draggable/node/connection-source.drag-handler.d.ts +1 -3
  102. package/f-draggable/node/connection-target.drag-handler.d.ts +1 -3
  103. package/f-draggable/node/connection.drag-handler.d.ts +1 -3
  104. package/f-draggable/node/domain/is-connection-under-node/is-connection-under-node.handler.d.ts +4 -3
  105. package/f-draggable/node/node.prepare-drag-sequence.d.ts +2 -3
  106. package/f-draggable/node/providers.d.ts +1 -1
  107. package/f-draggable/selection-area/get-can-be-selected-items/get-can-be-selected-items.handler.d.ts +3 -3
  108. package/f-draggable/single-select/index.d.ts +0 -1
  109. package/f-external-item/f-external-item-base.d.ts +7 -6
  110. package/f-external-item/f-external-item.directive.d.ts +6 -5
  111. package/f-flow/f-flow.component.d.ts +7 -4
  112. package/f-line-alignment/f-line-alignment.component.d.ts +3 -3
  113. package/fesm2022/foblex-flow.mjs +1735 -1609
  114. package/fesm2022/foblex-flow.mjs.map +1 -1
  115. package/package.json +1 -1
  116. package/domain/errors.d.ts +0 -3
  117. package/domain/get-all-nodes-rect.handler.d.ts +0 -10
  118. package/domain/get-input-rect-in-flow.handler.d.ts +0 -19
  119. package/esm2022/domain/errors.mjs +0 -10
  120. package/esm2022/domain/get-all-nodes-rect.handler.mjs +0 -23
  121. package/esm2022/domain/get-element-rect-in-flow.handler.mjs +0 -28
  122. package/esm2022/domain/get-input-rect-in-flow.handler.mjs +0 -25
  123. package/esm2022/domain/select-all.handler.mjs +0 -31
  124. package/esm2022/f-draggable/i-drag-and-drop-base.mjs +0 -147
  125. package/esm2022/f-draggable/single-select/f-selection-change-event.mjs +0 -7
  126. package/f-draggable/i-drag-and-drop-base.d.ts +0 -34
  127. /package/f-draggable/{single-select/f-selection-change-event.d.ts → f-selection-change-event.d.ts} +0 -0
@@ -1,10 +1,12 @@
1
1
  import { RectExtensions } from '@foblex/core';
2
2
  import { Injectable } from '@angular/core';
3
3
  import { EFDraggableType } from '../../../e-f-draggable-type';
4
+ import { GetElementRectInFlowRequest } from '../../../../domain';
4
5
  import * as i0 from "@angular/core";
5
6
  import * as i1 from "../../../../f-components-store";
6
7
  import * as i2 from "../../../f-draggable-data-context";
7
- import * as i3 from "../../../../domain";
8
+ import * as i3 from "../../../../f-mediator";
9
+ import * as i4 from "../../../../domain";
8
10
  export class IsConnectionUnderNodeHandler {
9
11
  get transform() {
10
12
  return this.fComponentsStore.fCanvas.transform;
@@ -12,10 +14,10 @@ export class IsConnectionUnderNodeHandler {
12
14
  get flowHost() {
13
15
  return this.fComponentsStore.fFlow.hostElement;
14
16
  }
15
- constructor(fComponentsStore, fDraggableDataContext, getElementRectInFlowHandler, getOutgoingConnectionsHandler, getIncomingConnectionsHandler) {
17
+ constructor(fComponentsStore, fDraggableDataContext, fMediator, getOutgoingConnectionsHandler, getIncomingConnectionsHandler) {
16
18
  this.fComponentsStore = fComponentsStore;
17
19
  this.fDraggableDataContext = fDraggableDataContext;
18
- this.getElementRectInFlowHandler = getElementRectInFlowHandler;
20
+ this.fMediator = fMediator;
19
21
  this.getOutgoingConnectionsHandler = getOutgoingConnectionsHandler;
20
22
  this.getIncomingConnectionsHandler = getIncomingConnectionsHandler;
21
23
  }
@@ -39,6 +41,7 @@ export class IsConnectionUnderNodeHandler {
39
41
  if (outgoingConnections.length === 0 && incomingConnections.length === 0) {
40
42
  const connections = this.findConnectionsUnderNode(fNode);
41
43
  if (connections.length) {
44
+ //TODO: need to implement
42
45
  }
43
46
  }
44
47
  }
@@ -55,16 +58,16 @@ export class IsConnectionUnderNodeHandler {
55
58
  return this.fComponentsStore.fInputs.filter((x) => node.isContains(x.hostElement));
56
59
  }
57
60
  findConnectionsUnderNode(node) {
58
- const nodeRect = this.getElementRectInFlowHandler.handle(node.hostElement);
61
+ const nodeRect = this.fMediator.send(new GetElementRectInFlowRequest(node.hostElement));
59
62
  return this.fComponentsStore.fConnections.filter((x) => {
60
63
  const intersection = RectExtensions.intersectionWithVector(nodeRect, x.vector.point1, x.vector.point2);
61
64
  return (intersection || []).length > 0;
62
65
  });
63
66
  }
64
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: IsConnectionUnderNodeHandler, deps: [{ token: i1.FComponentsStore }, { token: i2.FDraggableDataContext }, { token: i3.GetElementRectInFlowHandler }, { token: i3.GetOutgoingConnectionsHandler }, { token: i3.GetIncomingConnectionsHandler }], target: i0.ɵɵFactoryTarget.Injectable }); }
67
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: IsConnectionUnderNodeHandler, deps: [{ token: i1.FComponentsStore }, { token: i2.FDraggableDataContext }, { token: i3.FFlowMediator }, { token: i4.GetOutgoingConnectionsHandler }, { token: i4.GetIncomingConnectionsHandler }], target: i0.ɵɵFactoryTarget.Injectable }); }
65
68
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: IsConnectionUnderNodeHandler }); }
66
69
  }
67
70
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: IsConnectionUnderNodeHandler, decorators: [{
68
71
  type: Injectable
69
- }], ctorParameters: () => [{ type: i1.FComponentsStore }, { type: i2.FDraggableDataContext }, { type: i3.GetElementRectInFlowHandler }, { type: i3.GetOutgoingConnectionsHandler }, { type: i3.GetIncomingConnectionsHandler }] });
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtY29ubmVjdGlvbi11bmRlci1ub2RlLmhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL25vZGUvZG9tYWluL2lzLWNvbm5lY3Rpb24tdW5kZXItbm9kZS9pcy1jb25uZWN0aW9uLXVuZGVyLW5vZGUuaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTZCLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSTNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7QUFXOUQsTUFBTSxPQUFPLDRCQUE0QjtJQUV2QyxJQUFZLFNBQVM7UUFDbkIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBUSxDQUFDLFNBQVMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsSUFBWSxRQUFRO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQU0sQ0FBQyxXQUFXLENBQUM7SUFDbEQsQ0FBQztJQUVELFlBQ1ksZ0JBQWtDLEVBQ2xDLHFCQUE0QyxFQUM1QywyQkFBd0QsRUFDeEQsNkJBQTRELEVBQzVELDZCQUE0RDtRQUo1RCxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDNUMsZ0NBQTJCLEdBQTNCLDJCQUEyQixDQUE2QjtRQUN4RCxrQ0FBNkIsR0FBN0IsNkJBQTZCLENBQStCO1FBQzVELGtDQUE2QixHQUE3Qiw2QkFBNkIsQ0FBK0I7SUFFeEUsQ0FBQztJQUVNLE1BQU07UUFFWCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdEMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNaLE9BQU87U0FDUjtRQUVELE1BQU0sS0FBSyxH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QUMsTUFBTSxDQUFDLENBQUM7WUFDdkcsT0FBTyxDQUFDLFlBQVksSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFBO1FBQ3hDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs4R0F6RVUsNEJBQTRCO2tIQUE1Qiw0QkFBNEI7OzJGQUE1Qiw0QkFBNEI7a0JBRHhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJSGFuZGxlciwgSVRyYW5zZm9ybU1vZGVsLCBSZWN0RXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZi1jb21wb25lbnRzLXN0b3JlJztcbmltcG9ydCB7IEZEcmFnZ2FibGVEYXRhQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uL2YtZHJhZ2dhYmxlLWRhdGEtY29udGV4dCc7XG5pbXBvcnQgeyBOb2RlRHJhZ0hhbmRsZXIgfSBmcm9tICcuLi8uLi9ub2RlLmRyYWctaGFuZGxlcic7XG5pbXBvcnQgeyBFRkRyYWdnYWJsZVR5cGUgfSBmcm9tICcuLi8uLi8uLi9lLWYtZHJhZ2dhYmxlLXR5cGUnO1xuaW1wb3J0IHtcbiAgR2V0RWxlbWVudFJlY3RJbkZsb3dIYW5kbGVyLFxuICBHZXRJbmNvbWluZ0Nvbm5lY3Rpb25zSGFuZGxlcixcbiAgR2V0T3V0Z29pbmdDb25uZWN0aW9uc0hhbmRsZXJcbn0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IEZDb25uZWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uL2YtY29ubmVjdGlvbic7XG5pbXBvcnQgeyBGTm9kZUJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi9mLW5vZGUnO1xuaW1wb3J0IHsgRkNvbm5lY3RvckJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi9mLWNvbm5lY3RvcnMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgSXNDb25uZWN0aW9uVW5kZXJOb2RlSGFuZGxlciBpbXBsZW1lbnRzIElIYW5kbGVyPHZvaWQ+IHtcblxuICBwcml2YXRlIGdldCB0cmFuc2Zvcm0oKTogSVRyYW5zZm9ybU1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhLnRyYW5zZm9ybTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGZsb3dIb3N0KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZGbG93IS5ob3N0RWxlbWVudDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgICAgcHJpdmF0ZSBmRHJhZ2dhYmxlRGF0YUNvbnRleHQ6IEZEcmFnZ2FibGVEYXRhQ29udGV4dCxcbiAgICAgIHByaXZhdGUgZ2V0RWxlbWVudFJlY3RJbkZsb3dIYW5kbGVyOiBHZXRFbGVtZW50UmVjdEluRmxvd0hhbmRsZXIsXG4gICAgICBwcml2YXRlIGdldE91dGdvaW5nQ29ubmVjdGlvbnNIYW5kbGVyOiBHZXRPdXRnb2luZ0Nvbm5lY3Rpb25zSGFuZGxlcixcbiAgICAgIHByaXZhdGUgZ2V0SW5jb21pbmdDb25uZWN0aW9uc0hhbmRsZXI6IEdldEluY29taW5nQ29ubmVjdGlvbnNIYW5kbGVyXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZSgpOiB2b2lkIHtcblxuICAgIGNvbnN0IGlzVmFsaWQgPSB0aGlzLmlzVmFsaWRSZXF1ZXN0KCk7XG4gICAgaWYgKCFpc1ZhbGlkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZk5vZGUgPSAodGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuZHJhZ2dhYmxlSXRlbXNbIDAgXSBhcyBOb2RlRHJhZ0hhbmRsZXIpLmZOb2RlO1xuXG4gICAgY29uc3Qgb3V0cHV0c09mTm9kZSA9IHRoaXMuZ2V0T3V0cHV0c0Zvck5vZGUoZk5vZGUpO1xuICAgIGNvbnN0IGlucHV0c09mTm9kZSA9IHRoaXMuZ2V0SW5wdXRzRm9yTm9kZShmTm9kZSk7XG5cbiAgICBjb25zdCBpc0NhbnRCZUNvbm5lY3RlZEJ5T3V0cHV0ID0gb3V0cHV0c09mTm9kZS5zb21lKCh4KSA9PiAheC5jYW5CZUNvbm5lY3RlZCk7XG5cbiAgICBjb25zdCBpc0NhbnRCZUNvbm5lY3RlZEJ5SW5wdXQgPSB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNvbm5lY3Rpb25zLnNvbWUoKHgpID0+IHtcbiAgICAgIHJldHVybiBpbnB1dHNPZk5vZGUuZmluZCgoaW5wdXQpID0+IGlucHV0LmlkID09PSB4LmZJbnB1dElkKTtcbiAgICB9KTtcblxuICAgIGlmICghaXNDYW50QmVDb25uZWN0ZWRCeUlucHV0ICYmIG91dHB1dHNPZk5vZGUubGVuZ3RoICYmICFpc0NhbnRCZUNvbm5lY3RlZEJ5T3V0cHV0ICYmIGlucHV0c09mTm9kZS5sZW5ndGgpIHtcbiAgICAgIGNvbnN0IG91dHB1dCA9IG91dHB1dHNPZk5vZGVbIDAgXTtcbiAgICAgIGNvbnN0IGlucHV0ID0gaW5wdXRzT2ZOb2RlWyAwIF07XG4gICAgICBjb25zdCBvdXRnb2luZ0Nvbm5lY3Rpb25zID0gdGhpcy5nZXRPdXRnb2luZ0Nvbm5lY3Rpb25zSGFuZGxlci5oYW5kbGUoWyBvdXRwdXQgXSk7XG4gICAgICBjb25zdCBpbmNvbWluZ0Nvbm5lY3Rpb25zID0gdGhpcy5nZXRJbmNvbWluZ0Nvbm5lY3Rpb25zSGFuZGxlci5oYW5kbGUoWyBpbnB1dCBdKTtcbiAgICAgIGlmIChvdXRnb2luZ0Nvbm5lY3Rpb25zLmxlbmd0aCA9PT0gMCAmJiBpbmNvbWluZ0Nvbm5lY3Rpb25zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICBjb25zdCBjb25uZWN0aW9ucyA9IHRoaXMuZmluZENvbm5lY3Rpb25zVW5kZXJOb2RlKGZOb2RlKTtcbiAgICAgICAgaWYgKGNvbm5lY3Rpb25zLmxlbmd0aCkge1xuXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGlzVmFsaWRSZXF1ZXN0KCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHJlc3VsdCA9XG4gICAgICAgIHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LmRyYWdnYWJsZUl0ZW1zLmxlbmd0aCA9PT0gMSAmJlxuICAgICAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5kcmFnZ2FibGVJdGVtc1sgMCBdLnR5cGUgPT09IEVGRHJhZ2dhYmxlVHlwZS5OT0RFO1xuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0T3V0cHV0c0Zvck5vZGUobm9kZTogRk5vZGVCYXNlKTogRkNvbm5lY3RvckJhc2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mT3V0cHV0cy5maWx0ZXIoKHgpID0+IG5vZGUuaXNDb250YWlucyh4Lmhvc3RFbGVtZW50KSk7XG4gIH1cblxuICBwcml2YXRlIGdldElucHV0c0Zvck5vZGUobm9kZTogRk5vZGVCYXNlKTogRkNvbm5lY3RvckJhc2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mSW5wdXRzLmZpbHRlcigoeCkgPT4gbm9kZS5pc0NvbnRhaW5zKHguaG9zdEVsZW1lbnQpKTtcbiAgfVxuXG4gIHByaXZhdGUgZmluZENvbm5lY3Rpb25zVW5kZXJOb2RlKG5vZGU6IEZOb2RlQmFzZSk6IEZDb25uZWN0aW9uQmFzZVtdIHtcbiAgICBjb25zdCBub2RlUmVjdCA9IHRoaXMuZ2V0RWxlbWVudFJlY3RJbkZsb3dIYW5kbGVyLmhhbmRsZShub2RlLmhvc3RFbGVtZW50KTtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDb25uZWN0aW9ucy5maWx0ZXIoKHgpID0+IHtcbiAgICAgIGNvbnN0IGludGVyc2VjdGlvbiA9IFJlY3RFeHRlbnNpb25zLmludGVyc2VjdGlvbldpdGhWZWN0b3Iobm9kZVJlY3QsIHgudmVjdG9yLnBvaW50MSwgeC52ZWN0b3IucG9pbnQyKTtcbiAgICAgIHJldHVybiAoaW50ZXJzZWN0aW9uIHx8IFtdKS5sZW5ndGggPiAwXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
72
+ }], ctorParameters: () => [{ type: i1.FComponentsStore }, { type: i2.FDraggableDataContext }, { type: i3.FFlowMediator }, { type: i4.GetOutgoingConnectionsHandler }, { type: i4.GetIncomingConnectionsHandler }] });
73
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtY29ubmVjdGlvbi11bmRlci1ub2RlLmhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL25vZGUvZG9tYWluL2lzLWNvbm5lY3Rpb24tdW5kZXItbm9kZS9pcy1jb25uZWN0aW9uLXVuZGVyLW5vZGUuaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9DLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNoRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSTNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RCxPQUFPLEVBQ0wsMkJBQTJCLEVBRzVCLE1BQU0sb0JBQW9CLENBQUM7Ozs7OztBQU81QixNQUFNLE9BQU8sNEJBQTRCO0lBRXZDLElBQVksU0FBUztRQUNuQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFRLENBQUMsU0FBUyxDQUFDO0lBQ2xELENBQUM7SUFFRCxJQUFZLFFBQVE7UUFDbEIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBTSxDQUFDLFdBQVcsQ0FBQztJQUNsRCxDQUFDO0lBRUQsWUFDWSxnQkFBa0MsRUFDbEMscUJBQTRDLEVBQzVDLFNBQXdCLEVBQ3hCLDZCQUE0RCxFQUM1RCw2QkFBNEQ7UUFKNUQscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLGNBQVMsR0FBVCxTQUFTLENBQWU7UUFDeEIsa0NBQTZCLEdBQTdCLDZCQUE2QixDQUErQjtRQUM1RCxrQ0FBNkIsR0FBN0IsNkJBQTZCLENBQStCO0lBRXhFLENBQUM7SUFFTSxNQUFNO1FBRVgsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxP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Q0FBQyxzQkFBc0IsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN2RyxPQUFPLENBQUMsWUFBWSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUE7UUFDeEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzhHQXpFVSw0QkFBNEI7a0hBQTVCLDRCQUE0Qjs7MkZBQTVCLDRCQUE0QjtrQkFEeEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElIYW5kbGVyLCBJUmVjdCwgSVRyYW5zZm9ybU1vZGVsLCBSZWN0RXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZi1jb21wb25lbnRzLXN0b3JlJztcbmltcG9ydCB7IEZEcmFnZ2FibGVEYXRhQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uL2YtZHJhZ2dhYmxlLWRhdGEtY29udGV4dCc7XG5pbXBvcnQgeyBOb2RlRHJhZ0hhbmRsZXIgfSBmcm9tICcuLi8uLi9ub2RlLmRyYWctaGFuZGxlcic7XG5pbXBvcnQgeyBFRkRyYWdnYWJsZVR5cGUgfSBmcm9tICcuLi8uLi8uLi9lLWYtZHJhZ2dhYmxlLXR5cGUnO1xuaW1wb3J0IHtcbiAgR2V0RWxlbWVudFJlY3RJbkZsb3dSZXF1ZXN0LFxuICBHZXRJbmNvbWluZ0Nvbm5lY3Rpb25zSGFuZGxlcixcbiAgR2V0T3V0Z29pbmdDb25uZWN0aW9uc0hhbmRsZXJcbn0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IEZDb25uZWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uL2YtY29ubmVjdGlvbic7XG5pbXBvcnQgeyBGTm9kZUJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi9mLW5vZGUnO1xuaW1wb3J0IHsgRkNvbm5lY3RvckJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi9mLWNvbm5lY3RvcnMnO1xuaW1wb3J0IHsgRkZsb3dNZWRpYXRvciB9IGZyb20gJy4uLy4uLy4uLy4uL2YtbWVkaWF0b3InO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgSXNDb25uZWN0aW9uVW5kZXJOb2RlSGFuZGxlciBpbXBsZW1lbnRzIElIYW5kbGVyPHZvaWQ+IHtcblxuICBwcml2YXRlIGdldCB0cmFuc2Zvcm0oKTogSVRyYW5zZm9ybU1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhLnRyYW5zZm9ybTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGZsb3dIb3N0KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZGbG93IS5ob3N0RWxlbWVudDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgICAgcHJpdmF0ZSBmRHJhZ2dhYmxlRGF0YUNvbnRleHQ6IEZEcmFnZ2FibGVEYXRhQ29udGV4dCxcbiAgICAgIHByaXZhdGUgZk1lZGlhdG9yOiBGRmxvd01lZGlhdG9yLFxuICAgICAgcHJpdmF0ZSBnZXRPdXRnb2luZ0Nvbm5lY3Rpb25zSGFuZGxlcjogR2V0T3V0Z29pbmdDb25uZWN0aW9uc0hhbmRsZXIsXG4gICAgICBwcml2YXRlIGdldEluY29taW5nQ29ubmVjdGlvbnNIYW5kbGVyOiBHZXRJbmNvbWluZ0Nvbm5lY3Rpb25zSGFuZGxlclxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUoKTogdm9pZCB7XG5cbiAgICBjb25zdCBpc1ZhbGlkID0gdGhpcy5pc1ZhbGlkUmVxdWVzdCgpO1xuICAgIGlmICghaXNWYWxpZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGZOb2RlID0gKHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LmRyYWdnYWJsZUl0ZW1zWyAwIF0gYXMgTm9kZURyYWdIYW5kbGVyKS5mTm9kZTtcblxuICAgIGNvbnN0IG91dHB1dHNPZk5vZGUgPSB0aGlzLmdldE91dHB1dHNGb3JOb2RlKGZOb2RlKTtcbiAgICBjb25zdCBpbnB1dHNPZk5vZGUgPSB0aGlzLmdldElucHV0c0Zvck5vZGUoZk5vZGUpO1xuXG4gICAgY29uc3QgaXNDYW50QmVDb25uZWN0ZWRCeU91dHB1dCA9IG91dHB1dHNPZk5vZGUuc29tZSgoeCkgPT4gIXguY2FuQmVDb25uZWN0ZWQpO1xuXG4gICAgY29uc3QgaXNDYW50QmVDb25uZWN0ZWRCeUlucHV0ID0gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDb25uZWN0aW9ucy5zb21lKCh4KSA9PiB7XG4gICAgICByZXR1cm4gaW5wdXRzT2ZOb2RlLmZpbmQoKGlucHV0KSA9PiBpbnB1dC5pZCA9PT0geC5mSW5wdXRJZCk7XG4gICAgfSk7XG5cbiAgICBpZiAoIWlzQ2FudEJlQ29ubmVjdGVkQnlJbnB1dCAmJiBvdXRwdXRzT2ZOb2RlLmxlbmd0aCAmJiAhaXNDYW50QmVDb25uZWN0ZWRCeU91dHB1dCAmJiBpbnB1dHNPZk5vZGUubGVuZ3RoKSB7XG4gICAgICBjb25zdCBvdXRwdXQgPSBvdXRwdXRzT2ZOb2RlWyAwIF07XG4gICAgICBjb25zdCBpbnB1dCA9IGlucHV0c09mTm9kZVsgMCBdO1xuICAgICAgY29uc3Qgb3V0Z29pbmdDb25uZWN0aW9ucyA9IHRoaXMuZ2V0T3V0Z29pbmdDb25uZWN0aW9uc0hhbmRsZXIuaGFuZGxlKFsgb3V0cHV0IF0pO1xuICAgICAgY29uc3QgaW5jb21pbmdDb25uZWN0aW9ucyA9IHRoaXMuZ2V0SW5jb21pbmdDb25uZWN0aW9uc0hhbmRsZXIuaGFuZGxlKFsgaW5wdXQgXSk7XG4gICAgICBpZiAob3V0Z29pbmdDb25uZWN0aW9ucy5sZW5ndGggPT09IDAgJiYgaW5jb21pbmdDb25uZWN0aW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgY29uc3QgY29ubmVjdGlvbnMgPSB0aGlzLmZpbmRDb25uZWN0aW9uc1VuZGVyTm9kZShmTm9kZSk7XG4gICAgICAgIGlmIChjb25uZWN0aW9ucy5sZW5ndGgpIHtcbiAgICAgICAgICAvL1RPRE86IG5lZWQgdG8gaW1wbGVtZW50XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGlzVmFsaWRSZXF1ZXN0KCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHJlc3VsdCA9XG4gICAgICAgIHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LmRyYWdnYWJsZUl0ZW1zLmxlbmd0aCA9PT0gMSAmJlxuICAgICAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5kcmFnZ2FibGVJdGVtc1sgMCBdLnR5cGUgPT09IEVGRHJhZ2dhYmxlVHlwZS5OT0RFO1xuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0T3V0cHV0c0Zvck5vZGUobm9kZTogRk5vZGVCYXNlKTogRkNvbm5lY3RvckJhc2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mT3V0cHV0cy5maWx0ZXIoKHgpID0+IG5vZGUuaXNDb250YWlucyh4Lmhvc3RFbGVtZW50KSk7XG4gIH1cblxuICBwcml2YXRlIGdldElucHV0c0Zvck5vZGUobm9kZTogRk5vZGVCYXNlKTogRkNvbm5lY3RvckJhc2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mSW5wdXRzLmZpbHRlcigoeCkgPT4gbm9kZS5pc0NvbnRhaW5zKHguaG9zdEVsZW1lbnQpKTtcbiAgfVxuXG4gIHByaXZhdGUgZmluZENvbm5lY3Rpb25zVW5kZXJOb2RlKG5vZGU6IEZOb2RlQmFzZSk6IEZDb25uZWN0aW9uQmFzZVtdIHtcbiAgICBjb25zdCBub2RlUmVjdCA9IHRoaXMuZk1lZGlhdG9yLnNlbmQ8SVJlY3Q+KG5ldyBHZXRFbGVtZW50UmVjdEluRmxvd1JlcXVlc3Qobm9kZS5ob3N0RWxlbWVudCkpO1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNvbm5lY3Rpb25zLmZpbHRlcigoeCkgPT4ge1xuICAgICAgY29uc3QgaW50ZXJzZWN0aW9uID0gUmVjdEV4dGVuc2lvbnMuaW50ZXJzZWN0aW9uV2l0aFZlY3Rvcihub2RlUmVjdCwgeC52ZWN0b3IucG9pbnQxLCB4LnZlY3Rvci5wb2ludDIpO1xuICAgICAgcmV0dXJuIChpbnRlcnNlY3Rpb24gfHwgW10pLmxlbmd0aCA+IDBcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -18,11 +18,10 @@ export class NodePrepareDragSequence {
18
18
  get flowHost() {
19
19
  return this.fComponentsStore.fFlow.hostElement;
20
20
  }
21
- constructor(fComponentsStore, fDraggableDataContext, updateNodeLayerHandler, getInputRectInFlowHandler, getOutgoingConnectionsHandler, getIncomingConnectionsHandler, fMediator) {
21
+ constructor(fComponentsStore, fDraggableDataContext, updateNodeLayerHandler, getOutgoingConnectionsHandler, getIncomingConnectionsHandler, fMediator) {
22
22
  this.fComponentsStore = fComponentsStore;
23
23
  this.fDraggableDataContext = fDraggableDataContext;
24
24
  this.updateNodeLayerHandler = updateNodeLayerHandler;
25
- this.getInputRectInFlowHandler = getInputRectInFlowHandler;
26
25
  this.getOutgoingConnectionsHandler = getOutgoingConnectionsHandler;
27
26
  this.getIncomingConnectionsHandler = getIncomingConnectionsHandler;
28
27
  this.fMediator = fMediator;
@@ -66,10 +65,10 @@ export class NodePrepareDragSequence {
66
65
  const outputConnections = this.getOutgoingConnectionsHandler.handle(this.getOutputsForNode(nodeHandler.fNode));
67
66
  outputConnections.forEach((c) => {
68
67
  if (allInputIds.includes(c.fInputId)) {
69
- itemsToDrag.push(new ConnectionDragHandler(this.getInputRectInFlowHandler, this.fMediator, c));
68
+ itemsToDrag.push(new ConnectionDragHandler(this.fMediator, c));
70
69
  }
71
70
  else {
72
- itemsToDrag.push(new ConnectionSourceDragHandler(this.getInputRectInFlowHandler, this.fMediator, c));
71
+ itemsToDrag.push(new ConnectionSourceDragHandler(this.fMediator, c));
73
72
  }
74
73
  });
75
74
  const inputConnections = this.getIncomingConnectionsHandler.handle(this.getInputsForNode(nodeHandler.fNode));
@@ -77,11 +76,11 @@ export class NodePrepareDragSequence {
77
76
  if (allOutputIds.includes(c.fOutputId)) {
78
77
  const index = itemsToDrag.findIndex((x) => x.type === EFDraggableType.CONNECTION && x.connection.fConnectionId === c.fConnectionId);
79
78
  if (index !== -1) {
80
- itemsToDrag.push(new ConnectionDragHandler(this.getInputRectInFlowHandler, this.fMediator, c));
79
+ itemsToDrag.push(new ConnectionDragHandler(this.fMediator, c));
81
80
  }
82
81
  }
83
82
  else {
84
- itemsToDrag.push(new ConnectionTargetDragHandler(this.getInputRectInFlowHandler, this.fMediator, c));
83
+ itemsToDrag.push(new ConnectionTargetDragHandler(this.fMediator, c));
85
84
  }
86
85
  });
87
86
  });
@@ -93,10 +92,10 @@ export class NodePrepareDragSequence {
93
92
  getOutputsForNode(node) {
94
93
  return this.fComponentsStore.fOutputs.filter((x) => node.isContains(x.hostElement));
95
94
  }
96
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: NodePrepareDragSequence, deps: [{ token: i1.FComponentsStore }, { token: i2.FDraggableDataContext }, { token: i3.UpdateNodeLayerHandler }, { token: i3.GetInputRectInFlowHandler }, { token: i3.GetOutgoingConnectionsHandler }, { token: i3.GetIncomingConnectionsHandler }, { token: i4.FFlowMediator }], target: i0.ɵɵFactoryTarget.Injectable }); }
95
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: NodePrepareDragSequence, deps: [{ token: i1.FComponentsStore }, { token: i2.FDraggableDataContext }, { token: i3.UpdateNodeLayerHandler }, { token: i3.GetOutgoingConnectionsHandler }, { token: i3.GetIncomingConnectionsHandler }, { token: i4.FFlowMediator }], target: i0.ɵɵFactoryTarget.Injectable }); }
97
96
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: NodePrepareDragSequence }); }
98
97
  }
99
98
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: NodePrepareDragSequence, decorators: [{
100
99
  type: Injectable
101
- }], ctorParameters: () => [{ type: i1.FComponentsStore }, { type: i2.FDraggableDataContext }, { type: i3.UpdateNodeLayerHandler }, { type: i3.GetInputRectInFlowHandler }, { type: i3.GetOutgoingConnectionsHandler }, { type: i3.GetIncomingConnectionsHandler }, { type: i4.FFlowMediator }] });
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5wcmVwYXJlLWRyYWctc2VxdWVuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL25vZGUvbm9kZS5wcmVwYXJlLWRyYWctc2VxdWVuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUE0QyxLQUFLLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDL0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBS2xFLE9BQU8sRUFBYSxnQkFBZ0IsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7Ozs7O0FBSzNELE1BQU0sT0FBTyx1QkFBdUI7SUFFbEMsSUFBWSxTQUFTO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQVEsQ0FBQyxTQUFTLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQVksUUFBUTtRQUNsQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFNLENBQUMsV0FBVyxDQUFDO0lBQ2xELENBQUM7SUFFRCxZQUNZLGdCQUFrQyxFQUNsQyxxQkFBNEMsRUFDNUMsc0JBQThDLEVBQzlDLHlCQUFvRCxFQUNwRCw2QkFBNEQsRUFDNUQsNkJBQTRELEVBQzVELFNBQXdCO1FBTnhCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QywyQkFBc0IsR0FBdEIsc0JB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VSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ3JGLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxJQUFlO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDdEYsQ0FBQzs4R0F6R1UsdUJBQXVCO2tIQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBRG5DLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJSGFuZGxlciwgSVBvaW50ZXJFdmVudCwgSVRyYW5zZm9ybU1vZGVsLCBQb2ludCB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vZi1jb21wb25lbnRzLXN0b3JlJztcbmltcG9ydCB7IEZEcmFnZ2FibGVEYXRhQ29udGV4dCB9IGZyb20gJy4uL2YtZHJhZ2dhYmxlLWRhdGEtY29udGV4dCc7XG5pbXBvcnQgeyBJRHJhZ2dhYmxlSXRlbSB9IGZyb20gJy4uL2ktZHJhZ2dhYmxlLWl0ZW0nO1xuaW1wb3J0IHsgRUZEcmFnZ2FibGVUeXBlIH0gZnJvbSAnLi4vZS1mLWRyYWdnYWJsZS10eXBlJztcbmltcG9ydCB7IE5vZGVEcmFnSGFuZGxlciB9IGZyb20gJy4vbm9kZS5kcmFnLWhhbmRsZXInO1xuaW1wb3J0IHsgQ29ubmVjdGlvblRhcmdldERyYWdIYW5kbGVyIH0gZnJvbSAnLi9jb25uZWN0aW9uLXRhcmdldC5kcmFnLWhhbmRsZXInO1xuaW1wb3J0IHsgQ29ubmVjdGlvblNvdXJjZURyYWdIYW5kbGVyIH0gZnJvbSAnLi9jb25uZWN0aW9uLXNvdXJjZS5kcmFnLWhhbmRsZXInO1xuaW1wb3J0IHsgQ29ubmVjdGlvbkRyYWdIYW5kbGVyIH0gZnJvbSAnLi9jb25uZWN0aW9uLmRyYWctaGFuZGxlcic7XG5pbXBvcnQge1xuICBHZXRJbmNvbWluZ0Nvbm5lY3Rpb25zSGFuZGxlciwgR2V0SW5wdXRSZWN0SW5GbG93SGFuZGxlcixcbiAgR2V0T3V0Z29pbmdDb25uZWN0aW9uc0hhbmRsZXIsIFVwZGF0ZU5vZGVMYXllckhhbmRsZXJcbn0gZnJvbSAnLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IEZOb2RlQmFzZSwgaXNOb2RlRHJhZ0hhbmRsZSB9IGZyb20gJy4uLy4uL2Ytbm9kZSc7XG5pbXBvcnQgeyBGQ29ubmVjdG9yQmFzZSB9IGZyb20gJy4uLy4uL2YtY29ubmVjdG9ycyc7XG5pbXBvcnQgeyBGRmxvd01lZGlhdG9yIH0gZnJvbSAnLi4vLi4vZi1tZWRpYXRvcic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBOb2RlUHJlcGFyZURyYWdTZXF1ZW5jZSBpbXBsZW1lbnRzIElIYW5kbGVyPElQb2ludGVyRXZlbnQsIHZvaWQ+IHtcblxuICBwcml2YXRlIGdldCB0cmFuc2Zvcm0oKTogSVRyYW5zZm9ybU1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhLnRyYW5zZm9ybTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGZsb3dIb3N0KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZGbG93IS5ob3N0RWxlbWVudDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgICAgcHJpdmF0ZSBmRHJhZ2dhYmxlRGF0YUNvbnRleHQ6IEZEcmFnZ2FibGVEYXRhQ29udGV4dCxcbiAgICAgIHByaXZhdGUgdXBkYXRlTm9kZUxheWVySGFuZGxlcjogVXBkYXRlTm9kZUxheWVySGFuZGxlcixcbiAgICAgIHByaXZhdGUgZ2V0SW5wdXRSZWN0SW5GbG93SGFuZGxlcjogR2V0SW5wdXRSZWN0SW5GbG93SGFuZGxlcixcbiAgICAgIHByaXZhdGUgZ2V0T3V0Z29pbmdDb25uZWN0aW9uc0hhbmRsZXI6IEdldE91dGdvaW5nQ29ubmVjdGlvbnNIYW5kbGVyLFxuICAgICAgcHJpdmF0ZSBnZXRJbmNvbWluZ0Nvbm5lY3Rpb25zSGFuZGxlcjogR2V0SW5jb21pbmdDb25uZWN0aW9uc0hhbmRsZXIsXG4gICAgICBwcml2YXRlIGZNZWRpYXRvcjogRkZsb3dNZWRpYXRvclxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUoZXZlbnQ6IElQb2ludGVyRXZlbnQpOiB2b2lkIHtcblxuICAgIGNvbnN0IG5vZGUgPSB0aGlzLmZDb21wb25lbnRzU3RvcmUuZmluZE5vZGUoZXZlbnQudGFyZ2V0RWxlbWVudCk7XG4gICAgY29uc3QgcG9pbnRlclBvc2l0aW9uSW5GbG93ID0gUG9pbnQuZnJvbVBvaW50KGV2ZW50LmdldFBvc2l0aW9uKCkpLmVsZW1lbnRUcmFuc2Zvcm0odGhpcy5mbG93SG9zdCk7XG5cbiAgICBpZiAobm9kZSAmJiAhbm9kZS5kaXNhYmxlZCAmJiAhdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuZHJhZ2dhYmxlSXRlbXMubGVuZ3RoKSB7XG4gICAgICBpZiAoaXNOb2RlRHJhZ0hhbmRsZShldmVudC50YXJnZXRFbGVtZW50KSkge1xuICAgICAgICBpZiAoIXRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LnNlbGVjdGVkSXRlbXMuaW5jbHVkZXMobm9kZSkpIHtcbiAgICAgICAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5zZWxlY3RlZEl0ZW1zLnB1c2gobm9kZSk7XG4gICAgICAgICAgbm9kZS5zZWxlY3QoKTtcbiAgICAgICAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5pc1NlbGVjdGVkQ2hhbmdlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy51cGRhdGVOb2RlTGF5ZXJIYW5kbGVyLmhhbmRsZShub2RlKTtcbiAgICAgICAgY29uc3QgaXRlbXNUb0RyYWc6IElEcmFnZ2FibGVJdGVtW10gPSB0aGlzLmNhbGN1bGF0ZURyYWdnYWJsZUNvbm5lY3Rpb25zQW5kTm9kZXMoKTtcblxuICAgICAgICBjb25zdCBkcmFnZ2VkTm9kZXMgPSBpdGVtc1RvRHJhZy5maWx0ZXIoKHgpID0+IHtcbiAgICAgICAgICByZXR1cm4geC50eXBlID09PSBFRkRyYWdnYWJsZVR5cGUuTk9ERTtcbiAgICAgICAgfSkubWFwKCh4KSA9PiAoeCBhcyBOb2RlRHJhZ0hhbmRsZXIpLmZOb2RlKTtcblxuICAgICAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5mTGluZUFsaWdubWVudD8uaW5pdGlhbGl6ZSh0aGlzLmZDb21wb25lbnRzU3RvcmUuZk5vZGVzLCBkcmFnZ2VkTm9kZXMpO1xuXG4gICAgICAgIHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0Lm9uUG9pbnRlckRvd25TY2FsZSA9IHRoaXMudHJhbnNmb3JtLnNjYWxlO1xuICAgICAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5vblBvaW50ZXJEb3duUG9zaXRpb24gPSBwb2ludGVyUG9zaXRpb25JbkZsb3cuZGl2KHRoaXMudHJhbnNmb3JtLnNjYWxlKTtcbiAgICAgICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuZHJhZ2dhYmxlSXRlbXMgPSBpdGVtc1RvRHJhZztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNhbGN1bGF0ZURyYWdnYWJsZUNvbm5lY3Rpb25zQW5kTm9kZXMoKTogSURyYWdnYWJsZUl0ZW1bXSB7XG4gICAgbGV0IGl0ZW1zVG9EcmFnOiBJRHJhZ2dhYmxlSXRlbVtdID0gW107XG5cbiAgICBjb25zdCBzZWxlY3RlZE5vZGVzID0gdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuc2VsZWN0ZWRJdGVtcy5tYXAoKHgpID0+IHtcbiAgICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZmluZE5vZGUoeC5ob3N0RWxlbWVudCk7XG4gICAgfSkuZmlsdGVyKCh4KSA9PiAhIXgpIGFzIEZOb2RlQmFzZVtdO1xuXG4gICAgY29uc3Qgbm9kZURyYWdIYW5kbGVycyA9IHNlbGVjdGVkTm9kZXMubWFwKCh4KSA9PiBuZXcgTm9kZURyYWdIYW5kbGVyKHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LCB4KSk7XG4gICAgaXRlbXNUb0RyYWcgPSBub2RlRHJhZ0hhbmRsZXJzO1xuXG4gICAgY29uc3QgYWxsT3V0cHV0SWRzOiBhbnlbXSA9IHNlbGVjdGVkTm9kZXMucmVkdWNlKChyZXN1bHQ6IEZDb25uZWN0b3JCYXNlW10sIHg6IEZOb2RlQmFzZSkgPT4ge1xuICAgICAgcmV0dXJuIHJlc3VsdC5jb25jYXQodGhpcy5nZXRPdXRwdXRzRm9yTm9kZSh4KSk7XG4gICAgfSwgW10pLm1hcCgoeCkgPT4geC5pZCk7XG5cbiAgICBjb25zdCBhbGxJbnB1dElkczogYW55W10gPSBzZWxlY3RlZE5vZGVzLnJlZHVjZSgocmVzdWx0OiBGQ29ubmVjdG9yQmFzZVtdLCB4OiBGTm9kZUJhc2UpID0+IHtcbiAgICAgIHJldHVybiByZXN1bHQuY29uY2F0KHRoaXMuZ2V0SW5wdXRzRm9yTm9kZSh4KSk7XG4gICAgfSwgW10pLm1hcCgoeCkgPT4geC5pZCk7XG5cbiAgICBub2RlRHJhZ0hhbmRsZXJzLmZvckVhY2goKG5vZGVIYW5kbGVyKSA9PiB7XG4gICAgICBjb25zdCBvdXRwdXRDb25uZWN0aW9ucyA9IHRoaXMuZ2V0T3V0Z29pbmdDb25uZWN0aW9uc0hhbmRsZXIuaGFuZGxlKHRoaXMuZ2V0T3V0cHV0c0Zvck5vZGUobm9kZUhhbmRsZXIuZk5vZGUpKTtcbiAgICAgIG91dHB1dENvbm5lY3Rpb25zLmZvckVhY2goKGMpID0+IHtcbiAgICAgICAgaWYgKGFsbElucHV0SWRzLmluY2x1ZGVzKGMuZklucHV0SWQpKSB7XG4gICAgICAgICAgaXRlbXNUb0RyYWcucHVzaChcbiAgICAgICAgICAgICAgbmV3IENvbm5lY3Rpb25EcmFnSGFuZGxlcih0aGlzLmdldElucHV0UmVjdEluRmxvd0hhbmRsZXIsIHRoaXMuZk1lZGlhdG9yLCBjKVxuICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaXRlbXNUb0RyYWcucHVzaChcbiAgICAgICAgICAgICAgbmV3IENvbm5lY3Rpb25Tb3VyY2VEcmFnSGFuZGxlcih0aGlzLmdldElucHV0UmVjdEluRmxvd0hhbmRsZXIsIHRoaXMuZk1lZGlhdG9yLCBjKVxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgY29uc3QgaW5wdXRDb25uZWN0aW9ucyA9IHRoaXMuZ2V0SW5jb21pbmdDb25uZWN0aW9uc0hhbmRsZXIuaGFuZGxlKHRoaXMuZ2V0SW5wdXRzRm9yTm9kZShub2RlSGFuZGxlci5mTm9kZSkpO1xuICAgICAgaW5wdXRDb25uZWN0aW9ucy5mb3JFYWNoKChjKSA9PiB7XG4gICAgICAgIGlmIChhbGxPdXRwdXRJZHMuaW5jbHVkZXMoYy5mT3V0cHV0SWQpKSB7XG4gICAgICAgICAgY29uc3QgaW5kZXggPSBpdGVtc1RvRHJhZy5maW5kSW5kZXgoKHgpID0+IHgudHlwZSA9PT0gRUZEcmFnZ2FibGVUeXBlLkNPTk5FQ1RJT04gJiYgKHggYXMgQ29ubmVjdGlvbkRyYWdIYW5kbGVyKS5jb25uZWN0aW9uLmZDb25uZWN0aW9uSWQgPT09IGMuZkNvbm5lY3Rpb25JZCk7XG4gICAgICAgICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgICAgICAgaXRlbXNUb0RyYWcucHVzaChcbiAgICAgICAgICAgICAgICBuZXcgQ29ubmVjdGlvbkRyYWdIYW5kbGVyKHRoaXMuZ2V0SW5wdXRSZWN0SW5GbG93SGFuZGxlciwgdGhpcy5mTWVkaWF0b3IsIGMpXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpdGVtc1RvRHJhZy5wdXNoKFxuICAgICAgICAgICAgICBuZXcgQ29ubmVjdGlvblRhcmdldERyYWdIYW5kbGVyKHRoaXMuZ2V0SW5wdXRSZWN0SW5GbG93SGFuZGxlciwgdGhpcy5mTWVkaWF0b3IsIGMpXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gICAgcmV0dXJuIGl0ZW1zVG9EcmFnO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRJbnB1dHNGb3JOb2RlKG5vZGU6IEZOb2RlQmFzZSk6IEZDb25uZWN0b3JCYXNlW10ge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZklucHV0cy5maWx0ZXIoKHgpID0+IG5vZGUuaXNDb250YWlucyh4Lmhvc3RFbGVtZW50KSk7XG4gIH1cblxuICBwcml2YXRlIGdldE91dHB1dHNGb3JOb2RlKG5vZGU6IEZOb2RlQmFzZSk6IEZDb25uZWN0b3JCYXNlW10ge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZk91dHB1dHMuZmlsdGVyKCh4KSA9PiBub2RlLmlzQ29udGFpbnMoeC5ob3N0RWxlbWVudCkpO1xuICB9XG59XG4iXX0=
100
+ }], ctorParameters: () => [{ type: i1.FComponentsStore }, { type: i2.FDraggableDataContext }, { type: i3.UpdateNodeLayerHandler }, { type: i3.GetOutgoingConnectionsHandler }, { type: i3.GetIncomingConnectionsHandler }, { type: i4.FFlowMediator }] });
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5wcmVwYXJlLWRyYWctc2VxdWVuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL25vZGUvbm9kZS5wcmVwYXJlLWRyYWctc2VxdWVuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUE0QyxLQUFLLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDL0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBS2xFLE9BQU8sRUFBYSxnQkFBZ0IsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7Ozs7O0FBSzNELE1BQU0sT0FBTyx1QkFBdUI7SUFFbEMsSUFBWSxTQUFTO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQVEsQ0FBQyxTQUFTLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQVksUUFBUTtRQUNsQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFNLENBQUMsV0FBVyxDQUFDO0lBQ2xELENBQUM7SUFFRCxZQUNZLGdCQUFrQyxFQUNsQyxxQkFBNEMsRUFDNUMsc0JBQThDLEVBQzlDLDZCQUE0RCxFQUM1RCw2QkFBNEQsRUFDNUQsU0FBd0I7UUFMeEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFD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RUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUN0RixDQUFDOzhHQXhHVSx1QkFBdUI7a0hBQXZCLHVCQUF1Qjs7MkZBQXZCLHVCQUF1QjtrQkFEbkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElIYW5kbGVyLCBJUG9pbnRlckV2ZW50LCBJVHJhbnNmb3JtTW9kZWwsIFBvaW50IH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi9mLWNvbXBvbmVudHMtc3RvcmUnO1xuaW1wb3J0IHsgRkRyYWdnYWJsZURhdGFDb250ZXh0IH0gZnJvbSAnLi4vZi1kcmFnZ2FibGUtZGF0YS1jb250ZXh0JztcbmltcG9ydCB7IElEcmFnZ2FibGVJdGVtIH0gZnJvbSAnLi4vaS1kcmFnZ2FibGUtaXRlbSc7XG5pbXBvcnQgeyBFRkRyYWdnYWJsZVR5cGUgfSBmcm9tICcuLi9lLWYtZHJhZ2dhYmxlLXR5cGUnO1xuaW1wb3J0IHsgTm9kZURyYWdIYW5kbGVyIH0gZnJvbSAnLi9ub2RlLmRyYWctaGFuZGxlcic7XG5pbXBvcnQgeyBDb25uZWN0aW9uVGFyZ2V0RHJhZ0hhbmRsZXIgfSBmcm9tICcuL2Nvbm5lY3Rpb24tdGFyZ2V0LmRyYWctaGFuZGxlcic7XG5pbXBvcnQgeyBDb25uZWN0aW9uU291cmNlRHJhZ0hhbmRsZXIgfSBmcm9tICcuL2Nvbm5lY3Rpb24tc291cmNlLmRyYWctaGFuZGxlcic7XG5pbXBvcnQgeyBDb25uZWN0aW9uRHJhZ0hhbmRsZXIgfSBmcm9tICcuL2Nvbm5lY3Rpb24uZHJhZy1oYW5kbGVyJztcbmltcG9ydCB7XG4gIEdldEluY29taW5nQ29ubmVjdGlvbnNIYW5kbGVyLFxuICBHZXRPdXRnb2luZ0Nvbm5lY3Rpb25zSGFuZGxlciwgVXBkYXRlTm9kZUxheWVySGFuZGxlclxufSBmcm9tICcuLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgRk5vZGVCYXNlLCBpc05vZGVEcmFnSGFuZGxlIH0gZnJvbSAnLi4vLi4vZi1ub2RlJztcbmltcG9ydCB7IEZDb25uZWN0b3JCYXNlIH0gZnJvbSAnLi4vLi4vZi1jb25uZWN0b3JzJztcbmltcG9ydCB7IEZGbG93TWVkaWF0b3IgfSBmcm9tICcuLi8uLi9mLW1lZGlhdG9yJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE5vZGVQcmVwYXJlRHJhZ1NlcXVlbmNlIGltcGxlbWVudHMgSUhhbmRsZXI8SVBvaW50ZXJFdmVudCwgdm9pZD4ge1xuXG4gIHByaXZhdGUgZ2V0IHRyYW5zZm9ybSgpOiBJVHJhbnNmb3JtTW9kZWwge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyEudHJhbnNmb3JtO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgZmxvd0hvc3QoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkZsb3chLmhvc3RFbGVtZW50O1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgICBwcml2YXRlIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmUsXG4gICAgICBwcml2YXRlIGZEcmFnZ2FibGVEYXRhQ29udGV4dDogRkRyYWdnYWJsZURhdGFDb250ZXh0LFxuICAgICAgcHJpdmF0ZSB1cGRhdGVOb2RlTGF5ZXJIYW5kbGVyOiBVcGRhdGVOb2RlTGF5ZXJIYW5kbGVyLFxuICAgICAgcHJpdmF0ZSBnZXRPdXRnb2luZ0Nvbm5lY3Rpb25zSGFuZGxlcjogR2V0T3V0Z29pbmdDb25uZWN0aW9uc0hhbmRsZXIsXG4gICAgICBwcml2YXRlIGdldEluY29taW5nQ29ubmVjdGlvbnNIYW5kbGVyOiBHZXRJbmNvbWluZ0Nvbm5lY3Rpb25zSGFuZGxlcixcbiAgICAgIHByaXZhdGUgZk1lZGlhdG9yOiBGRmxvd01lZGlhdG9yXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShldmVudDogSVBvaW50ZXJFdmVudCk6IHZvaWQge1xuXG4gICAgY29uc3Qgbm9kZSA9IHRoaXMuZkNvbXBvbmVudHNTdG9yZS5maW5kTm9kZShldmVudC50YXJnZXRFbGVtZW50KTtcbiAgICBjb25zdCBwb2ludGVyUG9zaXRpb25JbkZsb3cgPSBQb2ludC5mcm9tUG9pbnQoZXZlbnQuZ2V0UG9zaXRpb24oKSkuZWxlbWVudFRyYW5zZm9ybSh0aGlzLmZsb3dIb3N0KTtcblxuICAgIGlmIChub2RlICYmICFub2RlLmRpc2FibGVkICYmICF0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5kcmFnZ2FibGVJdGVtcy5sZW5ndGgpIHtcbiAgICAgIGlmIChpc05vZGVEcmFnSGFuZGxlKGV2ZW50LnRhcmdldEVsZW1lbnQpKSB7XG4gICAgICAgIGlmICghdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuc2VsZWN0ZWRJdGVtcy5pbmNsdWRlcyhub2RlKSkge1xuICAgICAgICAgIHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LnNlbGVjdGVkSXRlbXMucHVzaChub2RlKTtcbiAgICAgICAgICBub2RlLnNlbGVjdCgpO1xuICAgICAgICAgIHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LmlzU2VsZWN0ZWRDaGFuZ2VkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnVwZGF0ZU5vZGVMYXllckhhbmRsZXIuaGFuZGxlKG5vZGUpO1xuICAgICAgICBjb25zdCBpdGVtc1RvRHJhZzogSURyYWdnYWJsZUl0ZW1bXSA9IHRoaXMuY2FsY3VsYXRlRHJhZ2dhYmxlQ29ubmVjdGlvbnNBbmROb2RlcygpO1xuXG4gICAgICAgIGNvbnN0IGRyYWdnZWROb2RlcyA9IGl0ZW1zVG9EcmFnLmZpbHRlcigoeCkgPT4ge1xuICAgICAgICAgIHJldHVybiB4LnR5cGUgPT09IEVGRHJhZ2dhYmxlVHlwZS5OT0RFO1xuICAgICAgICB9KS5tYXAoKHgpID0+ICh4IGFzIE5vZGVEcmFnSGFuZGxlcikuZk5vZGUpO1xuXG4gICAgICAgIHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LmZMaW5lQWxpZ25tZW50Py5pbml0aWFsaXplKHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mTm9kZXMsIGRyYWdnZWROb2Rlcyk7XG5cbiAgICAgICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQub25Qb2ludGVyRG93blNjYWxlID0gdGhpcy50cmFuc2Zvcm0uc2NhbGU7XG4gICAgICAgIHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0Lm9uUG9pbnRlckRvd25Qb3NpdGlvbiA9IHBvaW50ZXJQb3NpdGlvbkluRmxvdy5kaXYodGhpcy50cmFuc2Zvcm0uc2NhbGUpO1xuICAgICAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5kcmFnZ2FibGVJdGVtcyA9IGl0ZW1zVG9EcmFnO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY2FsY3VsYXRlRHJhZ2dhYmxlQ29ubmVjdGlvbnNBbmROb2RlcygpOiBJRHJhZ2dhYmxlSXRlbVtdIHtcbiAgICBsZXQgaXRlbXNUb0RyYWc6IElEcmFnZ2FibGVJdGVtW10gPSBbXTtcblxuICAgIGNvbnN0IHNlbGVjdGVkTm9kZXMgPSB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5zZWxlY3RlZEl0ZW1zLm1hcCgoeCkgPT4ge1xuICAgICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5maW5kTm9kZSh4Lmhvc3RFbGVtZW50KTtcbiAgICB9KS5maWx0ZXIoKHgpID0+ICEheCkgYXMgRk5vZGVCYXNlW107XG5cbiAgICBjb25zdCBub2RlRHJhZ0hhbmRsZXJzID0gc2VsZWN0ZWROb2Rlcy5tYXAoKHgpID0+IG5ldyBOb2RlRHJhZ0hhbmRsZXIodGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQsIHgpKTtcbiAgICBpdGVtc1RvRHJhZyA9IG5vZGVEcmFnSGFuZGxlcnM7XG5cbiAgICBjb25zdCBhbGxPdXRwdXRJZHM6IGFueVtdID0gc2VsZWN0ZWROb2Rlcy5yZWR1Y2UoKHJlc3VsdDogRkNvbm5lY3RvckJhc2VbXSwgeDogRk5vZGVCYXNlKSA9PiB7XG4gICAgICByZXR1cm4gcmVzdWx0LmNvbmNhdCh0aGlzLmdldE91dHB1dHNGb3JOb2RlKHgpKTtcbiAgICB9LCBbXSkubWFwKCh4KSA9PiB4LmlkKTtcblxuICAgIGNvbnN0IGFsbElucHV0SWRzOiBhbnlbXSA9IHNlbGVjdGVkTm9kZXMucmVkdWNlKChyZXN1bHQ6IEZDb25uZWN0b3JCYXNlW10sIHg6IEZOb2RlQmFzZSkgPT4ge1xuICAgICAgcmV0dXJuIHJlc3VsdC5jb25jYXQodGhpcy5nZXRJbnB1dHNGb3JOb2RlKHgpKTtcbiAgICB9LCBbXSkubWFwKCh4KSA9PiB4LmlkKTtcblxuICAgIG5vZGVEcmFnSGFuZGxlcnMuZm9yRWFjaCgobm9kZUhhbmRsZXIpID0+IHtcbiAgICAgIGNvbnN0IG91dHB1dENvbm5lY3Rpb25zID0gdGhpcy5nZXRPdXRnb2luZ0Nvbm5lY3Rpb25zSGFuZGxlci5oYW5kbGUodGhpcy5nZXRPdXRwdXRzRm9yTm9kZShub2RlSGFuZGxlci5mTm9kZSkpO1xuICAgICAgb3V0cHV0Q29ubmVjdGlvbnMuZm9yRWFjaCgoYykgPT4ge1xuICAgICAgICBpZiAoYWxsSW5wdXRJZHMuaW5jbHVkZXMoYy5mSW5wdXRJZCkpIHtcbiAgICAgICAgICBpdGVtc1RvRHJhZy5wdXNoKFxuICAgICAgICAgICAgICBuZXcgQ29ubmVjdGlvbkRyYWdIYW5kbGVyKHRoaXMuZk1lZGlhdG9yLCBjKVxuICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaXRlbXNUb0RyYWcucHVzaChcbiAgICAgICAgICAgICAgbmV3IENvbm5lY3Rpb25Tb3VyY2VEcmFnSGFuZGxlcih0aGlzLmZNZWRpYXRvciwgYylcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIGNvbnN0IGlucHV0Q29ubmVjdGlvbnMgPSB0aGlzLmdldEluY29taW5nQ29ubmVjdGlvbnNIYW5kbGVyLmhhbmRsZSh0aGlzLmdldElucHV0c0Zvck5vZGUobm9kZUhhbmRsZXIuZk5vZGUpKTtcbiAgICAgIGlucHV0Q29ubmVjdGlvbnMuZm9yRWFjaCgoYykgPT4ge1xuICAgICAgICBpZiAoYWxsT3V0cHV0SWRzLmluY2x1ZGVzKGMuZk91dHB1dElkKSkge1xuICAgICAgICAgIGNvbnN0IGluZGV4ID0gaXRlbXNUb0RyYWcuZmluZEluZGV4KCh4KSA9PiB4LnR5cGUgPT09IEVGRHJhZ2dhYmxlVHlwZS5DT05ORUNUSU9OICYmICh4IGFzIENvbm5lY3Rpb25EcmFnSGFuZGxlcikuY29ubmVjdGlvbi5mQ29ubmVjdGlvbklkID09PSBjLmZDb25uZWN0aW9uSWQpO1xuICAgICAgICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICAgIGl0ZW1zVG9EcmFnLnB1c2goXG4gICAgICAgICAgICAgICAgbmV3IENvbm5lY3Rpb25EcmFnSGFuZGxlcih0aGlzLmZNZWRpYXRvciwgYylcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGl0ZW1zVG9EcmFnLnB1c2goXG4gICAgICAgICAgICAgIG5ldyBDb25uZWN0aW9uVGFyZ2V0RHJhZ0hhbmRsZXIodGhpcy5mTWVkaWF0b3IsIGMpXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gICAgcmV0dXJuIGl0ZW1zVG9EcmFnO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRJbnB1dHNGb3JOb2RlKG5vZGU6IEZOb2RlQmFzZSk6IEZDb25uZWN0b3JCYXNlW10ge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZklucHV0cy5maWx0ZXIoKHgpID0+IG5vZGUuaXNDb250YWlucyh4Lmhvc3RFbGVtZW50KSk7XG4gIH1cblxuICBwcml2YXRlIGdldE91dHB1dHNGb3JOb2RlKG5vZGU6IEZOb2RlQmFzZSk6IEZDb25uZWN0b3JCYXNlW10ge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZk91dHB1dHMuZmlsdGVyKCh4KSA9PiBub2RlLmlzQ29udGFpbnMoeC5ob3N0RWxlbWVudCkpO1xuICB9XG59XG4iXX0=
@@ -1,9 +1,10 @@
1
1
  import { Injectable } from '@angular/core';
2
2
  import { RectExtensions } from '@foblex/core';
3
+ import { GetElementRectInFlowRequest } from '../../../domain';
3
4
  import * as i0 from "@angular/core";
4
5
  import * as i1 from "../../../f-components-store";
5
6
  import * as i2 from "../../f-draggable-data-context";
6
- import * as i3 from "../../../domain";
7
+ import * as i3 from "../../../f-mediator";
7
8
  export class GetCanBeSelectedItemsHandler {
8
9
  get fNodes() {
9
10
  return this.fComponentsStore.fNodes;
@@ -14,10 +15,10 @@ export class GetCanBeSelectedItemsHandler {
14
15
  get transform() {
15
16
  return this.fComponentsStore.fCanvas.transform;
16
17
  }
17
- constructor(fComponentsStore, fDraggableDataContext, getElementRectInFlowHandler) {
18
+ constructor(fComponentsStore, fDraggableDataContext, fMediator) {
18
19
  this.fComponentsStore = fComponentsStore;
19
20
  this.fDraggableDataContext = fDraggableDataContext;
20
- this.getElementRectInFlowHandler = getElementRectInFlowHandler;
21
+ this.fMediator = fMediator;
21
22
  }
22
23
  handle() {
23
24
  const nodeRects = this.getNodesWithRects();
@@ -29,7 +30,7 @@ export class GetCanBeSelectedItemsHandler {
29
30
  }
30
31
  getNodesWithRects() {
31
32
  return this.fNodes.map((x) => {
32
- const rect = this.getElementRectInFlowHandler.handle(x.hostElement);
33
+ const rect = this.fMediator.send(new GetElementRectInFlowRequest(x.hostElement));
33
34
  return {
34
35
  element: x,
35
36
  rect: RectExtensions.mult(rect, this.transform.scale)
@@ -38,17 +39,17 @@ export class GetCanBeSelectedItemsHandler {
38
39
  }
39
40
  getConnectionsWithRects() {
40
41
  return this.fConnections.map((x) => {
41
- const rect = this.getElementRectInFlowHandler.handle(x.boundingElement);
42
+ const rect = this.fMediator.send(new GetElementRectInFlowRequest(x.boundingElement));
42
43
  return {
43
44
  element: x,
44
45
  rect: RectExtensions.mult(rect, this.transform.scale)
45
46
  };
46
47
  });
47
48
  }
48
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: GetCanBeSelectedItemsHandler, deps: [{ token: i1.FComponentsStore }, { token: i2.FDraggableDataContext }, { token: i3.GetElementRectInFlowHandler }], target: i0.ɵɵFactoryTarget.Injectable }); }
49
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: GetCanBeSelectedItemsHandler, deps: [{ token: i1.FComponentsStore }, { token: i2.FDraggableDataContext }, { token: i3.FFlowMediator }], target: i0.ɵɵFactoryTarget.Injectable }); }
49
50
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: GetCanBeSelectedItemsHandler }); }
50
51
  }
51
52
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: GetCanBeSelectedItemsHandler, decorators: [{
52
53
  type: Injectable
53
- }], ctorParameters: () => [{ type: i1.FComponentsStore }, { type: i2.FDraggableDataContext }, { type: i3.GetElementRectInFlowHandler }] });
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWNhbi1iZS1zZWxlY3RlZC1pdGVtcy5oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9zZWxlY3Rpb24tYXJlYS9nZXQtY2FuLWJlLXNlbGVjdGVkLWl0ZW1zL2dldC1jYW4tYmUtc2VsZWN0ZWQtaXRlbXMuaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBb0MsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDOzs7OztBQVNoRixNQUFNLE9BQU8sNEJBQTRCO0lBRXZDLElBQVksTUFBTTtRQUNoQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUM7SUFDdEMsQ0FBQztJQUVELElBQVksWUFBWTtRQUN0QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUM7SUFDNUMsQ0FBQztJQUVELElBQVksU0FBUztRQUNuQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFRLENBQUMsU0FBUyxDQUFDO0lBQ2xELENBQUM7SUFFRCxZQUNZLGdCQUFrQyxFQUNsQyxxQkFBNEMsRUFDNUMsMkJBQXdEO1FBRnhELHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxnQ0FBMkIsR0FBM0IsMkJBQTJCLENBQTZCO0lBRXBFLENBQUM7SUFFTSxNQUFNO1FBQ1gsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFFM0MsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7UUFFakQsTUFBTSxNQUFNLEdBQUcsQ0FBRSxHQUFHLFNBQVMsRUFBRSxHQUFHLFNBQVMsQ0FBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ3pELE9BQU8sQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdkUsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU8saUJBQWlCO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUUzQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsMkJBQTJCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUNwRSxPQUFPO2dCQUNMLE9BQU8sRUFBRSxDQUFDO2dCQUNWLElBQUksRUFBRSxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQzthQUN0RCxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sdUJBQXVCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNqQyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsMkJBQTJCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUN4RSxPQUFPO2dCQUNMLE9BQU8sRUFBRSxDQUFDO2dCQUNWLElBQUksRUFBRSxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQzthQUN0RCxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzhHQXBEVSw0QkFBNEI7a0hBQTVCLDRCQUE0Qjs7MkZBQTVCLDRCQUE0QjtrQkFEeEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElIYW5kbGVyLCBJUmVjdCwgSVRyYW5zZm9ybU1vZGVsLCBSZWN0RXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBJU2VsZWN0YWJsZVdpdGhSZWN0IH0gZnJvbSAnLi9pLXNlbGVjdGFibGUtd2l0aC1yZWN0JztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLWNvbXBvbmVudHMtc3RvcmUnO1xuaW1wb3J0IHsgRkRyYWdnYWJsZURhdGFDb250ZXh0IH0gZnJvbSAnLi4vLi4vZi1kcmFnZ2FibGUtZGF0YS1jb250ZXh0JztcbmltcG9ydCB7IEdldEVsZW1lbnRSZWN0SW5GbG93SGFuZGxlciB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBGQ29ubmVjdGlvbkJhc2UsIElTZWxlY3RhYmxlIH0gZnJvbSAnLi4vLi4vLi4vZi1jb25uZWN0aW9uJztcbmltcG9ydCB7IEZOb2RlQmFzZSB9IGZyb20gJy4uLy4uLy4uL2Ytbm9kZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBHZXRDYW5CZVNlbGVjdGVkSXRlbXNIYW5kbGVyIGltcGxlbWVudHMgSUhhbmRsZXI8dm9pZCwgSVNlbGVjdGFibGVXaXRoUmVjdFtdPiB7XG5cbiAgcHJpdmF0ZSBnZXQgZk5vZGVzKCk6IEZOb2RlQmFzZVtdIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZOb2RlcztcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGZDb25uZWN0aW9ucygpOiBGQ29ubmVjdGlvbkJhc2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ29ubmVjdGlvbnM7XG4gIH1cblxuICBwcml2YXRlIGdldCB0cmFuc2Zvcm0oKTogSVRyYW5zZm9ybU1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhLnRyYW5zZm9ybTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgICAgcHJpdmF0ZSBmRHJhZ2dhYmxlRGF0YUNvbnRleHQ6IEZEcmFnZ2FibGVEYXRhQ29udGV4dCxcbiAgICAgIHByaXZhdGUgZ2V0RWxlbWVudFJlY3RJbkZsb3dIYW5kbGVyOiBHZXRFbGVtZW50UmVjdEluRmxvd0hhbmRsZXJcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKCk6IElTZWxlY3RhYmxlV2l0aFJlY3RbXSB7XG4gICAgY29uc3Qgbm9kZVJlY3RzID0gdGhpcy5nZXROb2Rlc1dpdGhSZWN0cygpO1xuXG4gICAgY29uc3QgbGluZVJlY3RzID0gdGhpcy5nZXRDb25uZWN0aW9uc1dpdGhSZWN0cygpO1xuXG4gICAgY29uc3QgcmVzdWx0ID0gWyAuLi5ub2RlUmVjdHMsIC4uLmxpbmVSZWN0cyBdLmZpbHRlcigoeCkgPT4ge1xuICAgICAgcmV0dXJuICF0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5zZWxlY3RlZEl0ZW1zLmluY2x1ZGVzKHguZWxlbWVudCk7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXROb2Rlc1dpdGhSZWN0cygpOiB7IGVsZW1lbnQ6IElTZWxlY3RhYmxlLCByZWN0OiBJUmVjdCB9W10ge1xuICAgIHJldHVybiB0aGlzLmZOb2Rlcy5tYXAoKHgpID0+IHtcblxuICAgICAgY29uc3QgcmVjdCA9IHRoaXMuZ2V0RWxlbWVudFJlY3RJbkZsb3dIYW5kbGVyLmhhbmRsZSh4Lmhvc3RFbGVtZW50KTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGVsZW1lbnQ6IHgsXG4gICAgICAgIHJlY3Q6IFJlY3RFeHRlbnNpb25zLm11bHQocmVjdCwgdGhpcy50cmFuc2Zvcm0uc2NhbGUpXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb25uZWN0aW9uc1dpdGhSZWN0cygpOiB7IGVsZW1lbnQ6IElTZWxlY3RhYmxlLCByZWN0OiBJUmVjdCB9W10ge1xuICAgIHJldHVybiB0aGlzLmZDb25uZWN0aW9ucy5tYXAoKHgpID0+IHtcbiAgICAgIGNvbnN0IHJlY3QgPSB0aGlzLmdldEVsZW1lbnRSZWN0SW5GbG93SGFuZGxlci5oYW5kbGUoeC5ib3VuZGluZ0VsZW1lbnQpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZWxlbWVudDogeCxcbiAgICAgICAgcmVjdDogUmVjdEV4dGVuc2lvbnMubXVsdChyZWN0LCB0aGlzLnRyYW5zZm9ybS5zY2FsZSlcbiAgICAgIH07XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
54
+ }], ctorParameters: () => [{ type: i1.FComponentsStore }, { type: i2.FDraggableDataContext }, { type: i3.FFlowMediator }] });
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWNhbi1iZS1zZWxlY3RlZC1pdGVtcy5oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9zZWxlY3Rpb24tYXJlYS9nZXQtY2FuLWJlLXNlbGVjdGVkLWl0ZW1zL2dldC1jYW4tYmUtc2VsZWN0ZWQtaXRlbXMuaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBb0MsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBT2hGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7OztBQUc5RCxNQUFNLE9BQU8sNEJBQTRCO0lBRXZDLElBQVksTUFBTTtRQUNoQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUM7SUFDdEMsQ0FBQztJQUVELElBQVksWUFBWTtRQUN0QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUM7SUFDNUMsQ0FBQztJQUVELElBQVksU0FBUztRQUNuQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFRLENBQUMsU0FBUyxDQUFDO0lBQ2xELENBQUM7SUFFRCxZQUNZLGdCQUFrQyxFQUNsQyxxQkFBNEMsRUFDNUMsU0FBd0I7UUFGeEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLGNBQVMsR0FBVCxTQUFTLENBQWU7SUFFcEMsQ0FBQztJQUVNLE1BQU07UUFDWCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUUzQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztRQUVqRCxNQUFNLE1BQU0sR0FBRyxDQUFFLEdBQUcsU0FBUyxFQUFFLEdBQUcsU0FBUyxDQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDekQsT0FBTyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN2RSxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTyxpQkFBaUI7UUFDdkIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBRTNCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFRLElBQUksMkJBQTJCLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7WUFDeEYsT0FBTztnQkFDTCxPQUFPLEVBQUUsQ0FBQztnQkFDVixJQUFJLEVBQUUsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7YUFDdEQsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLHVCQUF1QjtRQUM3QixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDakMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQVEsSUFBSSwyQkFBMkIsQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQztZQUM1RixPQUFPO2dCQUNMLE9BQU8sRUFBRSxDQUFDO2dCQUNWLElBQUksRUFBRSxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQzthQUN0RCxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzhHQXBEVSw0QkFBNEI7a0hBQTVCLDRCQUE0Qjs7MkZBQTVCLDRCQUE0QjtrQkFEeEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElIYW5kbGVyLCBJUmVjdCwgSVRyYW5zZm9ybU1vZGVsLCBSZWN0RXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBJU2VsZWN0YWJsZVdpdGhSZWN0IH0gZnJvbSAnLi9pLXNlbGVjdGFibGUtd2l0aC1yZWN0JztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLWNvbXBvbmVudHMtc3RvcmUnO1xuaW1wb3J0IHsgRkRyYWdnYWJsZURhdGFDb250ZXh0IH0gZnJvbSAnLi4vLi4vZi1kcmFnZ2FibGUtZGF0YS1jb250ZXh0JztcbmltcG9ydCB7IEZDb25uZWN0aW9uQmFzZSwgSVNlbGVjdGFibGUgfSBmcm9tICcuLi8uLi8uLi9mLWNvbm5lY3Rpb24nO1xuaW1wb3J0IHsgRk5vZGVCYXNlIH0gZnJvbSAnLi4vLi4vLi4vZi1ub2RlJztcbmltcG9ydCB7IEZGbG93TWVkaWF0b3IgfSBmcm9tICcuLi8uLi8uLi9mLW1lZGlhdG9yJztcbmltcG9ydCB7IEdldEVsZW1lbnRSZWN0SW5GbG93UmVxdWVzdCB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBHZXRDYW5CZVNlbGVjdGVkSXRlbXNIYW5kbGVyIGltcGxlbWVudHMgSUhhbmRsZXI8dm9pZCwgSVNlbGVjdGFibGVXaXRoUmVjdFtdPiB7XG5cbiAgcHJpdmF0ZSBnZXQgZk5vZGVzKCk6IEZOb2RlQmFzZVtdIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZOb2RlcztcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGZDb25uZWN0aW9ucygpOiBGQ29ubmVjdGlvbkJhc2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ29ubmVjdGlvbnM7XG4gIH1cblxuICBwcml2YXRlIGdldCB0cmFuc2Zvcm0oKTogSVRyYW5zZm9ybU1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhLnRyYW5zZm9ybTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgICAgcHJpdmF0ZSBmRHJhZ2dhYmxlRGF0YUNvbnRleHQ6IEZEcmFnZ2FibGVEYXRhQ29udGV4dCxcbiAgICAgIHByaXZhdGUgZk1lZGlhdG9yOiBGRmxvd01lZGlhdG9yLFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUoKTogSVNlbGVjdGFibGVXaXRoUmVjdFtdIHtcbiAgICBjb25zdCBub2RlUmVjdHMgPSB0aGlzLmdldE5vZGVzV2l0aFJlY3RzKCk7XG5cbiAgICBjb25zdCBsaW5lUmVjdHMgPSB0aGlzLmdldENvbm5lY3Rpb25zV2l0aFJlY3RzKCk7XG5cbiAgICBjb25zdCByZXN1bHQgPSBbIC4uLm5vZGVSZWN0cywgLi4ubGluZVJlY3RzIF0uZmlsdGVyKCh4KSA9PiB7XG4gICAgICByZXR1cm4gIXRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LnNlbGVjdGVkSXRlbXMuaW5jbHVkZXMoeC5lbGVtZW50KTtcbiAgICB9KTtcblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBwcml2YXRlIGdldE5vZGVzV2l0aFJlY3RzKCk6IHsgZWxlbWVudDogSVNlbGVjdGFibGUsIHJlY3Q6IElSZWN0IH1bXSB7XG4gICAgcmV0dXJuIHRoaXMuZk5vZGVzLm1hcCgoeCkgPT4ge1xuXG4gICAgICBjb25zdCByZWN0ID0gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJUmVjdD4obmV3IEdldEVsZW1lbnRSZWN0SW5GbG93UmVxdWVzdCh4Lmhvc3RFbGVtZW50KSk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBlbGVtZW50OiB4LFxuICAgICAgICByZWN0OiBSZWN0RXh0ZW5zaW9ucy5tdWx0KHJlY3QsIHRoaXMudHJhbnNmb3JtLnNjYWxlKVxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29ubmVjdGlvbnNXaXRoUmVjdHMoKTogeyBlbGVtZW50OiBJU2VsZWN0YWJsZSwgcmVjdDogSVJlY3QgfVtdIHtcbiAgICByZXR1cm4gdGhpcy5mQ29ubmVjdGlvbnMubWFwKCh4KSA9PiB7XG4gICAgICBjb25zdCByZWN0ID0gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJUmVjdD4obmV3IEdldEVsZW1lbnRSZWN0SW5GbG93UmVxdWVzdCh4LmJvdW5kaW5nRWxlbWVudCkpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZWxlbWVudDogeCxcbiAgICAgICAgcmVjdDogUmVjdEV4dGVuc2lvbnMubXVsdChyZWN0LCB0aGlzLnRyYW5zZm9ybS5zY2FsZSlcbiAgICAgIH07XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,4 +1,3 @@
1
1
  export * from './providers';
2
- export * from './f-selection-change-event';
3
2
  export * from './single-select.on-pointer-down';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL3NpbmdsZS1zZWxlY3QvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFFNUIsY0FBYyw0QkFBNEIsQ0FBQztBQUUzQyxjQUFjLGlDQUFpQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9wcm92aWRlcnMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2Ytc2VsZWN0aW9uLWNoYW5nZS1ldmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vc2luZ2xlLXNlbGVjdC5vbi1wb2ludGVyLWRvd24nO1xuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL3NpbmdsZS1zZWxlY3QvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFFNUIsY0FBYyxpQ0FBaUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcHJvdmlkZXJzJztcblxuZXhwb3J0ICogZnJvbSAnLi9zaW5nbGUtc2VsZWN0Lm9uLXBvaW50ZXItZG93bic7XG4iXX0=
@@ -27,7 +27,7 @@ export class SingleSelectOnPointerDown {
27
27
  if (node) {
28
28
  if (!this.fDraggableDataContext.selectedItems.includes(node)) {
29
29
  this.fDraggableDataContext.selectedItems.push(node);
30
- if (element?.hostElement.id !== node.hostElement.id) {
30
+ if (element?.hostElement.dataset['fNodeId'] !== node.hostElement.dataset['fNodeId']) {
31
31
  this.fDraggableDataContext.isSelectedChanged = true;
32
32
  }
33
33
  }
@@ -76,4 +76,4 @@ export class SingleSelectOnPointerDown {
76
76
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: SingleSelectOnPointerDown, decorators: [{
77
77
  type: Injectable
78
78
  }], ctorParameters: () => [{ type: i1.FComponentsStore }, { type: i2.FDraggableDataContext }, { type: i3.GetConnectionHandler }, { type: i3.UpdateConnectionLayerHandler }] });
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2luZ2xlLXNlbGVjdC5vbi1wb2ludGVyLWRvd24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL3NpbmdsZS1zZWxlY3Qvc2luZ2xlLXNlbGVjdC5vbi1wb2ludGVyLWRvd24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUEyQixvQkFBb0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBTTNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7O0FBR2hFLE1BQU0sT0FBTyx5QkFBeUI7SUFFcEMsWUFDWSxnQkFBa0MsRUFDbEMscUJBQTRDLEVBQzVDLG9CQUEwQyxFQUMxQyw0QkFBMEQ7UUFIMUQscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsaUNBQTRCLEdBQTVCLDRCQUE0QixDQUE4QjtJQUV0RSxDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQW9CO1FBRWhDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxFQUFFO1lBQzNFLE9BQU87U0FDUjtRQUNELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2pFLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FB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QUUsQ0FBQzthQUNaO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzhHQXhFVSx5QkFBeUI7a0hBQXpCLHlCQUF5Qjs7MkZBQXpCLHlCQUF5QjtrQkFEckMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElIYW5kbGVyLCBJUG9pbnRlckV2ZW50LCBNb3VzZUV2ZW50RXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vZi1jb21wb25lbnRzLXN0b3JlJztcbmltcG9ydCB7IEZEcmFnZ2FibGVEYXRhQ29udGV4dCB9IGZyb20gJy4uL2YtZHJhZ2dhYmxlLWRhdGEtY29udGV4dCc7XG5pbXBvcnQgeyBHZXRDb25uZWN0aW9uSGFuZGxlciwgVXBkYXRlQ29ubmVjdGlvbkxheWVySGFuZGxlciB9IGZyb20gJy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBGTm9kZUJhc2UgfSBmcm9tICcuLi8uLi9mLW5vZGUnO1xuaW1wb3J0IHsgSVNlbGVjdGFibGUgfSBmcm9tICcuLi8uLi9mLWNvbm5lY3Rpb24nO1xuaW1wb3J0IHsgaXNOb2RlT3V0bGV0LCBpc05vZGVPdXRwdXQgfSBmcm9tICcuLi8uLi9mLWNvbm5lY3RvcnMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2luZ2xlU2VsZWN0T25Qb2ludGVyRG93biBpbXBsZW1lbnRzIElIYW5kbGVyPElQb2ludGVyRXZlbnQsIHZvaWQ+IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAgIHByaXZhdGUgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZSxcbiAgICAgIHByaXZhdGUgZkRyYWdnYWJsZURhdGFDb250ZXh0OiBGRHJhZ2dhYmxlRGF0YUNvbnRleHQsXG4gICAgICBwcml2YXRlIGdldENvbm5lY3Rpb25IYW5kbGVyOiBHZXRDb25uZWN0aW9uSGFuZGxlcixcbiAgICAgIHByaXZhdGUgdXBkYXRlQ29ubmVjdGlvbkxheWVySGFuZGxlcjogVXBkYXRlQ29ubmVjdGlvbkxheWVySGFuZGxlclxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUoZXZlbnQ6IElQb2ludGVyRXZlbnQpOiB2b2lkIHtcblxuICAgIGlmICghdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZGbG93Py5ob3N0RWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXRFbGVtZW50KSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBub2RlID0gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZpbmROb2RlKGV2ZW50LnRhcmdldEVsZW1lbnQpO1xuICAgIGNvbnN0IGNvbm5lY3Rpb24gPSB0aGlzLmdldENvbm5lY3Rpb25IYW5kbGVyLmhhbmRsZShldmVudC50YXJnZXRFbGVtZW50KTtcbiAgICB0aGlzLmRlc2VsZWN0QWxsKG5vZGUsIGV2ZW50KTtcblxuICAgIGxldCBlbGVtZW50OiBJU2VsZWN0YWJsZSB8IHVuZGVmaW5lZDtcbiAgICBpZiAodGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuc2VsZWN0ZWRJdGVtcy5sZW5ndGgpIHtcbiAgICAgIGVsZW1lbnQgPSB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5zZWxlY3RlZEl0ZW1zWyAwIF07XG4gICAgfVxuXG4gICAgdGhpcy5yZXNldFNlbGVjdGlvbklmTm90TXVsdGlzZWxlY3QoZXZlbnQpO1xuXG4gICAgaWYgKG5vZGUpIHtcbiAgICAgIGlmICghdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuc2VsZWN0ZWRJdGVtcy5pbmNsdWRlcyhub2RlKSkge1xuICAgICAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5zZWxlY3RlZEl0ZW1zLnB1c2gobm9kZSk7XG4gICAgICAgIGlmIChlbGVtZW50Py5ob3N0RWxlbWVudC5pZCAhPT0gbm9kZS5ob3N0RWxlbWVudC5pZCkge1xuICAgICAgICAgIHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LmlzU2VsZWN0ZWRDaGFuZ2VkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuc2VsZWN0ZWRJdGVtcy5zcGxpY2UodGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuc2VsZWN0ZWRJdGVtcy5pbmRleE9mKG5vZGUpLCAxKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGNvbm5lY3Rpb24pIHtcbiAgICAgIHRoaXMudXBkYXRlQ29ubmVjdGlvbkxheWVySGFuZGxlci5oYW5kbGUoY29ubmVjdGlvbik7XG4gICAgICBpZiAoIXRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LnNlbGVjdGVkSXRlbXMuaW5jbHVkZXMoY29ubmVjdGlvbikpIHtcbiAgICAgICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuc2VsZWN0ZWRJdGVtcy5wdXNoKGNvbm5lY3Rpb24pO1xuICAgICAgICBpZiAoZWxlbWVudD8uaG9zdEVsZW1lbnQuaWQgIT09IGNvbm5lY3Rpb24uaG9zdEVsZW1lbnQuaWQpIHtcbiAgICAgICAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5pc1NlbGVjdGVkQ2hhbmdlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LnNlbGVjdGVkSXRlbXMuc3BsaWNlKHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LnNlbGVjdGVkSXRlbXMuaW5kZXhPZihjb25uZWN0aW9uKSwgMSk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuc2VsZWN0SWZOb3RTZWxlY3RlZCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBkZXNlbGVjdEFsbChub2RlOiBGTm9kZUJhc2UgfCB1bmRlZmluZWQsIGV2ZW50OiBJUG9pbnRlckV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuc2VsZWN0ZWRJdGVtcy5mb3JFYWNoKCh4KSA9PiB7XG4gICAgICBpZiAoeCAhPT0gbm9kZSB8fCAoIWlzTm9kZU91dGxldChldmVudC50YXJnZXRFbGVtZW50KSAmJiAhaXNOb2RlT3V0cHV0KGV2ZW50LnRhcmdldEVsZW1lbnQpKSkge1xuICAgICAgICB4LmRlc2VsZWN0KCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHJlc2V0U2VsZWN0aW9uSWZOb3RNdWx0aXNlbGVjdChldmVudDogSVBvaW50ZXJFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IGlzTXVsdGlzZWxlY3QgPVxuICAgICAgICBNb3VzZUV2ZW50RXh0ZW5zaW9ucy5pc0NvbW1hbmRCdXR0b24oZXZlbnQub3JpZ2luYWxFdmVudCkgfHxcbiAgICAgICAgTW91c2VFdmVudEV4dGVuc2lvbnMuaXNTaGlmdFByZXNzZWQoZXZlbnQub3JpZ2luYWxFdmVudCk7XG4gICAgaWYgKCFpc011bHRpc2VsZWN0KSB7XG4gICAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5zZWxlY3RlZEl0ZW1zID0gW107XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZWxlY3RJZk5vdFNlbGVjdGVkKCk6IHZvaWQge1xuICAgIHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LnNlbGVjdGVkSXRlbXMuZm9yRWFjaCgoeCkgPT4ge1xuICAgICAgaWYgKCF4LmlzU2VsZWN0ZWQoKSkge1xuICAgICAgICB4LnNlbGVjdCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2luZ2xlLXNlbGVjdC5vbi1wb2ludGVyLWRvd24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL3NpbmdsZS1zZWxlY3Qvc2luZ2xlLXNlbGVjdC5vbi1wb2ludGVyLWRvd24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUEyQixvQkFBb0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBTTNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7O0FBR2hFLE1BQU0sT0FBTyx5QkFBeUI7SUFFcEMsWUFDWSxnQkFBa0MsRUFDbEMscUJBQTRDLEVBQzVDLG9CQUEwQyxFQUMxQyw0QkFBMEQ7UUFIMUQscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsaUNBQTRCLEdBQTVCLDRCQUE0QixDQUE4QjtJQUV0RSxDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQW9CO1FBRWhDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxFQUFFO1lBQzNFLE9BQU87U0FDUjtRQUNELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2pFLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FB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LEVBQUU7Z0JBQ25CLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQzthQUNaO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzhHQXhFVSx5QkFBeUI7a0hBQXpCLHlCQUF5Qjs7MkZBQXpCLHlCQUF5QjtrQkFEckMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElIYW5kbGVyLCBJUG9pbnRlckV2ZW50LCBNb3VzZUV2ZW50RXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vZi1jb21wb25lbnRzLXN0b3JlJztcbmltcG9ydCB7IEZEcmFnZ2FibGVEYXRhQ29udGV4dCB9IGZyb20gJy4uL2YtZHJhZ2dhYmxlLWRhdGEtY29udGV4dCc7XG5pbXBvcnQgeyBHZXRDb25uZWN0aW9uSGFuZGxlciwgVXBkYXRlQ29ubmVjdGlvbkxheWVySGFuZGxlciB9IGZyb20gJy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBGTm9kZUJhc2UgfSBmcm9tICcuLi8uLi9mLW5vZGUnO1xuaW1wb3J0IHsgSVNlbGVjdGFibGUgfSBmcm9tICcuLi8uLi9mLWNvbm5lY3Rpb24nO1xuaW1wb3J0IHsgaXNOb2RlT3V0bGV0LCBpc05vZGVPdXRwdXQgfSBmcm9tICcuLi8uLi9mLWNvbm5lY3RvcnMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2luZ2xlU2VsZWN0T25Qb2ludGVyRG93biBpbXBsZW1lbnRzIElIYW5kbGVyPElQb2ludGVyRXZlbnQsIHZvaWQ+IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAgIHByaXZhdGUgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZSxcbiAgICAgIHByaXZhdGUgZkRyYWdnYWJsZURhdGFDb250ZXh0OiBGRHJhZ2dhYmxlRGF0YUNvbnRleHQsXG4gICAgICBwcml2YXRlIGdldENvbm5lY3Rpb25IYW5kbGVyOiBHZXRDb25uZWN0aW9uSGFuZGxlcixcbiAgICAgIHByaXZhdGUgdXBkYXRlQ29ubmVjdGlvbkxheWVySGFuZGxlcjogVXBkYXRlQ29ubmVjdGlvbkxheWVySGFuZGxlclxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUoZXZlbnQ6IElQb2ludGVyRXZlbnQpOiB2b2lkIHtcblxuICAgIGlmICghdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZGbG93Py5ob3N0RWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXRFbGVtZW50KSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBub2RlID0gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZpbmROb2RlKGV2ZW50LnRhcmdldEVsZW1lbnQpO1xuICAgIGNvbnN0IGNvbm5lY3Rpb24gPSB0aGlzLmdldENvbm5lY3Rpb25IYW5kbGVyLmhhbmRsZShldmVudC50YXJnZXRFbGVtZW50KTtcbiAgICB0aGlzLmRlc2VsZWN0QWxsKG5vZGUsIGV2ZW50KTtcblxuICAgIGxldCBlbGVtZW50OiBJU2VsZWN0YWJsZSB8IHVuZGVmaW5lZDtcbiAgICBpZiAodGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuc2VsZWN0ZWRJdGVtcy5sZW5ndGgpIHtcbiAgICAgIGVsZW1lbnQgPSB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5zZWxlY3RlZEl0ZW1zWyAwIF07XG4gICAgfVxuXG4gICAgdGhpcy5yZXNldFNlbGVjdGlvbklmTm90TXVsdGlzZWxlY3QoZXZlbnQpO1xuXG4gICAgaWYgKG5vZGUpIHtcbiAgICAgIGlmICghdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuc2VsZWN0ZWRJdGVtcy5pbmNsdWRlcyhub2RlKSkge1xuICAgICAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5zZWxlY3RlZEl0ZW1zLnB1c2gobm9kZSk7XG4gICAgICAgIGlmIChlbGVtZW50Py5ob3N0RWxlbWVudC5kYXRhc2V0WydmTm9kZUlkJ10gIT09IG5vZGUuaG9zdEVsZW1lbnQuZGF0YXNldFsnZk5vZGVJZCddKSB7XG4gICAgICAgICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuaXNTZWxlY3RlZENoYW5nZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5zZWxlY3RlZEl0ZW1zLnNwbGljZSh0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5zZWxlY3RlZEl0ZW1zLmluZGV4T2Yobm9kZSksIDEpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoY29ubmVjdGlvbikge1xuICAgICAgdGhpcy51cGRhdGVDb25uZWN0aW9uTGF5ZXJIYW5kbGVyLmhhbmRsZShjb25uZWN0aW9uKTtcbiAgICAgIGlmICghdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuc2VsZWN0ZWRJdGVtcy5pbmNsdWRlcyhjb25uZWN0aW9uKSkge1xuICAgICAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5zZWxlY3RlZEl0ZW1zLnB1c2goY29ubmVjdGlvbik7XG4gICAgICAgIGlmIChlbGVtZW50Py5ob3N0RWxlbWVudC5pZCAhPT0gY29ubmVjdGlvbi5ob3N0RWxlbWVudC5pZCkge1xuICAgICAgICAgIHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LmlzU2VsZWN0ZWRDaGFuZ2VkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuc2VsZWN0ZWRJdGVtcy5zcGxpY2UodGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuc2VsZWN0ZWRJdGVtcy5pbmRleE9mKGNvbm5lY3Rpb24pLCAxKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5zZWxlY3RJZk5vdFNlbGVjdGVkKCk7XG4gIH1cblxuICBwcml2YXRlIGRlc2VsZWN0QWxsKG5vZGU6IEZOb2RlQmFzZSB8IHVuZGVmaW5lZCwgZXZlbnQ6IElQb2ludGVyRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5zZWxlY3RlZEl0ZW1zLmZvckVhY2goKHgpID0+IHtcbiAgICAgIGlmICh4ICE9PSBub2RlIHx8ICghaXNOb2RlT3V0bGV0KGV2ZW50LnRhcmdldEVsZW1lbnQpICYmICFpc05vZGVPdXRwdXQoZXZlbnQudGFyZ2V0RWxlbWVudCkpKSB7XG4gICAgICAgIHguZGVzZWxlY3QoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgcmVzZXRTZWxlY3Rpb25JZk5vdE11bHRpc2VsZWN0KGV2ZW50OiBJUG9pbnRlckV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgaXNNdWx0aXNlbGVjdCA9XG4gICAgICAgIE1vdXNlRXZlbnRFeHRlbnNpb25zLmlzQ29tbWFuZEJ1dHRvbihldmVudC5vcmlnaW5hbEV2ZW50KSB8fFxuICAgICAgICBNb3VzZUV2ZW50RXh0ZW5zaW9ucy5pc1NoaWZ0UHJlc3NlZChldmVudC5vcmlnaW5hbEV2ZW50KTtcbiAgICBpZiAoIWlzTXVsdGlzZWxlY3QpIHtcbiAgICAgIHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LnNlbGVjdGVkSXRlbXMgPSBbXTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNlbGVjdElmTm90U2VsZWN0ZWQoKTogdm9pZCB7XG4gICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuc2VsZWN0ZWRJdGVtcy5mb3JFYWNoKCh4KSA9PiB7XG4gICAgICBpZiAoIXguaXNTZWxlY3RlZCgpKSB7XG4gICAgICAgIHguc2VsZWN0KCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -8,4 +8,4 @@ export class FExternalItemBase {
8
8
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FExternalItemBase, decorators: [{
9
9
  type: Directive
10
10
  }] });
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1leHRlcm5hbC1pdGVtLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZXh0ZXJuYWwtaXRlbS9mLWV4dGVybmFsLWl0ZW0tYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFMUQsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLElBQUksY0FBYyxDQUFvQixpQkFBaUIsQ0FBQyxDQUFDO0FBR3hGLE1BQU0sT0FBZ0IsaUJBQWlCOzhHQUFqQixpQkFBaUI7a0dBQWpCLGlCQUFpQjs7MkZBQWpCLGlCQUFpQjtrQkFEdEMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElIYXNIb3N0RWxlbWVudCB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBjb25zdCBGX0VYVEVSTkFMX0lURU0gPSBuZXcgSW5qZWN0aW9uVG9rZW48RkV4dGVybmFsSXRlbUJhc2U+KCdGX0VYVEVSTkFMX0lURU0nKTtcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRkV4dGVybmFsSXRlbUJhc2UgaW1wbGVtZW50cyBJSGFzSG9zdEVsZW1lbnQge1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBpZDogYW55O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBob3N0RWxlbWVudDogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBkYXRhOiBhbnk7XG59XG4iXX0=
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1leHRlcm5hbC1pdGVtLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZXh0ZXJuYWwtaXRlbS9mLWV4dGVybmFsLWl0ZW0tYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFMUQsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLElBQUksY0FBYyxDQUFvQixpQkFBaUIsQ0FBQyxDQUFDO0FBR3hGLE1BQU0sT0FBZ0IsaUJBQWlCOzhHQUFqQixpQkFBaUI7a0dBQWpCLGlCQUFpQjs7MkZBQWpCLGlCQUFpQjtrQkFEdEMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElIYXNIb3N0RWxlbWVudCB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBjb25zdCBGX0VYVEVSTkFMX0lURU0gPSBuZXcgSW5qZWN0aW9uVG9rZW48RkV4dGVybmFsSXRlbUJhc2U+KCdGX0VYVEVSTkFMX0lURU0nKTtcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRkV4dGVybmFsSXRlbUJhc2U8VERhdGEgPSBhbnk+IGltcGxlbWVudHMgSUhhc0hvc3RFbGVtZW50IHtcblxuICBwdWJsaWMgYWJzdHJhY3QgZkV4dGVybmFsSXRlbUlkOiBzdHJpbmc7XG5cbiAgcHVibGljIGFic3RyYWN0IGhvc3RFbGVtZW50OiBIVE1MRWxlbWVudCB8IFNWR0VsZW1lbnQ7XG5cbiAgcHVibGljIGFic3RyYWN0IGZEYXRhOiBURGF0YSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgYWJzdHJhY3QgZkRpc2FibGVkOiBib29sZWFuO1xufVxuIl19
@@ -11,7 +11,8 @@ export class FExternalItemDirective extends FExternalItemBase {
11
11
  super();
12
12
  this.elementReference = elementReference;
13
13
  this.fExternalItemService = fExternalItemService;
14
- this.id = `f-external-item-${uniqueId++}`;
14
+ this.fExternalItemId = `f-external-item-${uniqueId++}`;
15
+ this.fDisabled = false;
15
16
  }
16
17
  ngOnInit() {
17
18
  this.fExternalItemService.registerItem(this);
@@ -20,7 +21,7 @@ export class FExternalItemDirective extends FExternalItemBase {
20
21
  this.fExternalItemService.removeItem(this);
21
22
  }
22
23
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FExternalItemDirective, deps: [{ token: i0.ElementRef }, { token: i1.FExternalItemService }], target: i0.ɵɵFactoryTarget.Directive }); }
23
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.1", type: FExternalItemDirective, selector: "[fExternalItem]", inputs: { id: "id", data: "data" }, host: { properties: { "attr.id": "id" }, classAttribute: "f-component f-external-item" }, providers: [
24
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.1", type: FExternalItemDirective, selector: "[fExternalItem]", inputs: { fExternalItemId: "fExternalItemId", fData: "fData", fDisabled: "fDisabled" }, host: { properties: { "attr.id": "fExternalItemId", "class.f-external-item-disabled": "fDisabled" }, classAttribute: "f-component f-external-item" }, providers: [
24
25
  { provide: F_EXTERNAL_ITEM, useExisting: FExternalItemDirective }
25
26
  ], usesInheritance: true, ngImport: i0 }); }
26
27
  }
@@ -29,16 +30,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
29
30
  args: [{
30
31
  selector: "[fExternalItem]",
31
32
  host: {
32
- '[attr.id]': 'id',
33
+ '[attr.id]': 'fExternalItemId',
33
34
  class: "f-component f-external-item",
35
+ '[class.f-external-item-disabled]': 'fDisabled',
34
36
  },
35
37
  providers: [
36
38
  { provide: F_EXTERNAL_ITEM, useExisting: FExternalItemDirective }
37
39
  ],
38
40
  }]
39
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.FExternalItemService }], propDecorators: { id: [{
41
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.FExternalItemService }], propDecorators: { fExternalItemId: [{
40
42
  type: Input
41
- }], data: [{
43
+ }], fData: [{
44
+ type: Input
45
+ }], fDisabled: [{
42
46
  type: Input
43
47
  }] } });
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1leHRlcm5hbC1pdGVtLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1leHRlcm5hbC1pdGVtL2YtZXh0ZXJuYWwtaXRlbS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBRzVFLElBQUksUUFBUSxHQUFXLENBQUMsQ0FBQztBQVl6QixNQUFNLE9BQU8sc0JBQXVCLFNBQVEsaUJBQWlCO0lBSzNELElBQW9CLFdBQVc7UUFDN0IsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDO0lBQzdDLENBQUM7SUFLRCxZQUNVLGdCQUF5QyxFQUN6QyxvQkFBMEM7UUFFbEQsS0FBSyxFQUFFLENBQUM7UUFIQSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXlCO1FBQ3pDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFYcEMsT0FBRSxHQUFXLG1CQUFvQixRQUFRLEVBQUcsRUFBRSxDQUFDO0lBYy9ELENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsb0JBQW9CLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdDLENBQUM7OEdBekJVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLHdLQUp0QjtZQUNULEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsc0JBQXNCLEVBQUU7U0FDbEU7OzJGQUVVLHNCQUFzQjtrQkFWbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixJQUFJLEVBQUU7d0JBQ0osV0FBVyxFQUFFLElBQUk7d0JBQ2pCLEtBQUssRUFBRSw2QkFBNkI7cUJBQ3JDO29CQUNELFNBQVMsRUFBRTt3QkFDVCxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVyx3QkFBd0IsRUFBRTtxQkFDbEU7aUJBQ0Y7a0hBSWlCLEVBQUU7c0JBRGpCLEtBQUs7Z0JBUVUsSUFBSTtzQkFEbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGRXh0ZXJuYWxJdGVtQmFzZSwgRl9FWFRFUk5BTF9JVEVNIH0gZnJvbSAnLi9mLWV4dGVybmFsLWl0ZW0tYmFzZSc7XG5pbXBvcnQgeyBGRXh0ZXJuYWxJdGVtU2VydmljZSB9IGZyb20gJy4vZi1leHRlcm5hbC1pdGVtLnNlcnZpY2UnO1xuXG5sZXQgdW5pcXVlSWQ6IG51bWJlciA9IDA7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogXCJbZkV4dGVybmFsSXRlbV1cIixcbiAgaG9zdDoge1xuICAgICdbYXR0ci5pZF0nOiAnaWQnLFxuICAgIGNsYXNzOiBcImYtY29tcG9uZW50IGYtZXh0ZXJuYWwtaXRlbVwiLFxuICB9LFxuICBwcm92aWRlcnM6IFtcbiAgICB7IHByb3ZpZGU6IEZfRVhURVJOQUxfSVRFTSwgdXNlRXhpc3Rpbmc6IEZFeHRlcm5hbEl0ZW1EaXJlY3RpdmUgfVxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGRXh0ZXJuYWxJdGVtRGlyZWN0aXZlIGV4dGVuZHMgRkV4dGVybmFsSXRlbUJhc2UgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgQElucHV0KClcbiAgcHVibGljIG92ZXJyaWRlIGlkOiBzdHJpbmcgPSBgZi1leHRlcm5hbC1pdGVtLSR7IHVuaXF1ZUlkKysgfWA7XG5cbiAgcHVibGljIG92ZXJyaWRlIGdldCBob3N0RWxlbWVudCgpOiBIVE1MRWxlbWVudCB8IFNWR0VsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWZlcmVuY2UubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBvdmVycmlkZSBkYXRhOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmZXJlbmNlOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIGZFeHRlcm5hbEl0ZW1TZXJ2aWNlOiBGRXh0ZXJuYWxJdGVtU2VydmljZSxcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmZFeHRlcm5hbEl0ZW1TZXJ2aWNlLnJlZ2lzdGVySXRlbSh0aGlzKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmZFeHRlcm5hbEl0ZW1TZXJ2aWNlLnJlbW92ZUl0ZW0odGhpcyk7XG4gIH1cbn1cbiJdfQ==
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1leHRlcm5hbC1pdGVtLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1leHRlcm5hbC1pdGVtL2YtZXh0ZXJuYWwtaXRlbS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBRzVFLElBQUksUUFBUSxHQUFXLENBQUMsQ0FBQztBQWF6QixNQUFNLE9BQU8sc0JBQThCLFNBQVEsaUJBQXdCO0lBS3pFLElBQW9CLFdBQVc7UUFDN0IsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDO0lBQzdDLENBQUM7SUFRRCxZQUNVLGdCQUF5QyxFQUN6QyxvQkFBMEM7UUFFbEQsS0FBSyxFQUFFLENBQUM7UUFIQSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXlCO1FBQ3pDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFkcEMsb0JBQWUsR0FBVyxtQkFBb0IsUUFBUSxFQUFHLEVBQUUsQ0FBQztRQVU1RCxjQUFTLEdBQVksS0FBSyxDQUFDO0lBTzNDLENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsb0JBQW9CLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdDLENBQUM7OEdBNUJVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLHdSQUp0QjtZQUNULEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsc0JBQXNCLEVBQUU7U0FDbEU7OzJGQUVVLHNCQUFzQjtrQkFYbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixJQUFJLEVBQUU7d0JBQ0osV0FBVyxFQUFFLGlCQUFpQjt3QkFDOUIsS0FBSyxFQUFFLDZCQUE2Qjt3QkFDcEMsa0NBQWtDLEVBQUUsV0FBVztxQkFDaEQ7b0JBQ0QsU0FBUyxFQUFFO3dCQUNULEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxXQUFXLHdCQUF3QixFQUFFO3FCQUNsRTtpQkFDRjtrSEFJaUIsZUFBZTtzQkFEOUIsS0FBSztnQkFRVSxLQUFLO3NCQURwQixLQUFLO2dCQUlVLFNBQVM7c0JBRHhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkV4dGVybmFsSXRlbUJhc2UsIEZfRVhURVJOQUxfSVRFTSB9IGZyb20gJy4vZi1leHRlcm5hbC1pdGVtLWJhc2UnO1xuaW1wb3J0IHsgRkV4dGVybmFsSXRlbVNlcnZpY2UgfSBmcm9tICcuL2YtZXh0ZXJuYWwtaXRlbS5zZXJ2aWNlJztcblxubGV0IHVuaXF1ZUlkOiBudW1iZXIgPSAwO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6IFwiW2ZFeHRlcm5hbEl0ZW1dXCIsXG4gIGhvc3Q6IHtcbiAgICAnW2F0dHIuaWRdJzogJ2ZFeHRlcm5hbEl0ZW1JZCcsXG4gICAgY2xhc3M6IFwiZi1jb21wb25lbnQgZi1leHRlcm5hbC1pdGVtXCIsXG4gICAgJ1tjbGFzcy5mLWV4dGVybmFsLWl0ZW0tZGlzYWJsZWRdJzogJ2ZEaXNhYmxlZCcsXG4gIH0sXG4gIHByb3ZpZGVyczogW1xuICAgIHsgcHJvdmlkZTogRl9FWFRFUk5BTF9JVEVNLCB1c2VFeGlzdGluZzogRkV4dGVybmFsSXRlbURpcmVjdGl2ZSB9XG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZFeHRlcm5hbEl0ZW1EaXJlY3RpdmU8VERhdGE+IGV4dGVuZHMgRkV4dGVybmFsSXRlbUJhc2U8VERhdGE+IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBvdmVycmlkZSBmRXh0ZXJuYWxJdGVtSWQ6IHN0cmluZyA9IGBmLWV4dGVybmFsLWl0ZW0tJHsgdW5pcXVlSWQrKyB9YDtcblxuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IGhvc3RFbGVtZW50KCk6IEhUTUxFbGVtZW50IHwgU1ZHRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZmVyZW5jZS5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIG92ZXJyaWRlIGZEYXRhOiBURGF0YSB8IHVuZGVmaW5lZDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZkRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmZXJlbmNlOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIGZFeHRlcm5hbEl0ZW1TZXJ2aWNlOiBGRXh0ZXJuYWxJdGVtU2VydmljZSxcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmZFeHRlcm5hbEl0ZW1TZXJ2aWNlLnJlZ2lzdGVySXRlbSh0aGlzKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmZFeHRlcm5hbEl0ZW1TZXJ2aWNlLnJlbW92ZUl0ZW0odGhpcyk7XG4gIH1cbn1cbiJdfQ==
@@ -2,23 +2,21 @@ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from
2
2
  import { F_FLOW, FFlowBase } from './f-flow-base';
3
3
  import { FComponentsStore } from '../f-components-store';
4
4
  import { debounceTime, startWith, Subscription } from 'rxjs';
5
- import { COMMON_PROVIDERS, RedrawConnectionsRequest, } from '../domain';
5
+ import { ClearSelectionRequest, COMMON_PROVIDERS, GetNodesRectRequest, GetSelectionRequest, RedrawConnectionsRequest, SelectAllRequest, } from '../domain';
6
6
  import { FLOW } from '../get-flow-uid';
7
7
  import { FFlowMediator } from '../f-mediator';
8
8
  import { CANVAS_PROVIDERS, CONNECTIONS_PROVIDERS, EXTERNAL_ITEM_PROVIDERS, FDraggableDataContext, NODE_PROVIDERS, SELECTION_AREA_PROVIDERS, SINGLE_SELECT_PROVIDERS } from '../f-draggable';
9
9
  import * as i0 from "@angular/core";
10
- import * as i1 from "../domain";
11
- import * as i2 from "../f-components-store";
12
- import * as i3 from "../f-mediator";
10
+ import * as i1 from "../f-components-store";
11
+ import * as i2 from "../f-mediator";
13
12
  let uniqueId = 0;
14
13
  export class FFlowComponent extends FFlowBase {
15
14
  get hostElement() {
16
15
  return this.elementReference.nativeElement;
17
16
  }
18
- constructor(elementReference, getAllNodesRectHandler, fComponentsStore, fMediator) {
17
+ constructor(elementReference, fComponentsStore, fMediator) {
19
18
  super();
20
19
  this.elementReference = elementReference;
21
- this.getAllNodesRectHandler = getAllNodesRectHandler;
22
20
  this.fComponentsStore = fComponentsStore;
23
21
  this.fMediator = fMediator;
24
22
  this.subscription$ = new Subscription();
@@ -42,13 +40,27 @@ export class FFlowComponent extends FFlowBase {
42
40
  }
43
41
  });
44
42
  }
43
+ reset() {
44
+ this.isLoaded = false;
45
+ }
45
46
  getNodesRect() {
46
- return this.getAllNodesRectHandler.handle();
47
+ const result = this.fMediator.send(new GetNodesRectRequest());
48
+ return result;
49
+ }
50
+ getSelection() {
51
+ const result = this.fMediator.send(new GetSelectionRequest());
52
+ return result;
53
+ }
54
+ selectAll() {
55
+ this.fMediator.send(new SelectAllRequest());
56
+ }
57
+ clearSelection() {
58
+ this.fMediator.send(new ClearSelectionRequest());
47
59
  }
48
60
  ngOnDestroy() {
49
61
  this.subscription$.unsubscribe();
50
62
  }
51
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FFlowComponent, deps: [{ token: i0.ElementRef }, { token: i1.GetAllNodesRectHandler }, { token: i2.FComponentsStore }, { token: i3.FFlowMediator }], target: i0.ɵɵFactoryTarget.Component }); }
63
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FFlowComponent, deps: [{ token: i0.ElementRef }, { token: i1.FComponentsStore }, { token: i2.FFlowMediator }], target: i0.ɵɵFactoryTarget.Component }); }
52
64
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.1", type: FFlowComponent, selector: "f-flow", inputs: { fFlowId: "fFlowId" }, outputs: { fLoaded: "fLoaded" }, host: { properties: { "attr.id": "fFlowId" }, classAttribute: "f-component f-flow" }, providers: [
53
65
  FFlowMediator,
54
66
  FComponentsStore,
@@ -61,7 +73,7 @@ export class FFlowComponent extends FFlowBase {
61
73
  ...CONNECTIONS_PROVIDERS,
62
74
  ...COMMON_PROVIDERS,
63
75
  { provide: F_FLOW, useExisting: FFlowComponent },
64
- ], usesInheritance: true, ngImport: i0, template: "<ng-container>\n <ng-content select=\"[fDefinitions]\"></ng-content>\n\n <ng-content select=\"f-background\"></ng-content>\n\n <ng-content select=\"f-line-alignment\"></ng-content>\n\n <ng-content select=\"f-canvas\"></ng-content>\n\n <ng-content select=\"f-selection-area\"></ng-content>\n</ng-container>\n", styles: [":host{display:block;position:relative;width:100%;height:100%;overflow:hidden;pointer-events:all;-webkit-user-select:none;user-select:none;touch-action:none}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
76
+ ], usesInheritance: true, ngImport: i0, template: "<ng-container>\n <ng-content select=\"[fDefinitions]\"></ng-content>\n\n <ng-content select=\"f-background\"></ng-content>\n\n <ng-content select=\"f-line-alignment\"></ng-content>\n\n <ng-content select=\"f-canvas\"></ng-content>\n\n <ng-content select=\"f-selection-area\"></ng-content>\n\n <ng-content select=\"f-mini-map\"></ng-content>\n</ng-container>\n", styles: [":host{display:block;position:relative;width:100%;height:100%;overflow:hidden;pointer-events:all;-webkit-user-select:none;user-select:none;touch-action:none}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
65
77
  }
66
78
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FFlowComponent, decorators: [{
67
79
  type: Component,
@@ -80,10 +92,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
80
92
  ...CONNECTIONS_PROVIDERS,
81
93
  ...COMMON_PROVIDERS,
82
94
  { provide: F_FLOW, useExisting: FFlowComponent },
83
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container>\n <ng-content select=\"[fDefinitions]\"></ng-content>\n\n <ng-content select=\"f-background\"></ng-content>\n\n <ng-content select=\"f-line-alignment\"></ng-content>\n\n <ng-content select=\"f-canvas\"></ng-content>\n\n <ng-content select=\"f-selection-area\"></ng-content>\n</ng-container>\n", styles: [":host{display:block;position:relative;width:100%;height:100%;overflow:hidden;pointer-events:all;-webkit-user-select:none;user-select:none;touch-action:none}\n"] }]
84
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.GetAllNodesRectHandler }, { type: i2.FComponentsStore }, { type: i3.FFlowMediator }], propDecorators: { fFlowId: [{
95
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container>\n <ng-content select=\"[fDefinitions]\"></ng-content>\n\n <ng-content select=\"f-background\"></ng-content>\n\n <ng-content select=\"f-line-alignment\"></ng-content>\n\n <ng-content select=\"f-canvas\"></ng-content>\n\n <ng-content select=\"f-selection-area\"></ng-content>\n\n <ng-content select=\"f-mini-map\"></ng-content>\n</ng-container>\n", styles: [":host{display:block;position:relative;width:100%;height:100%;overflow:hidden;pointer-events:all;-webkit-user-select:none;user-select:none;touch-action:none}\n"] }]
96
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.FComponentsStore }, { type: i2.FFlowMediator }], propDecorators: { fFlowId: [{
85
97
  type: Input
86
98
  }], fLoaded: [{
87
99
  type: Output
88
100
  }] } });
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1mbG93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1mbG93L2YtZmxvdy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZmxvdy9mLWZsb3cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixTQUFTLEVBQWMsWUFBWSxFQUNuQyxLQUFLLEVBQXFCLE1BQU0sRUFDakMsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdELE9BQU8sRUFDTCxnQkFBZ0IsRUFBMEIsd0JBQXdCLEdBQ25FLE1BQU0sV0FBVyxDQUFDO0FBRW5CLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlDLE9BQU8sRUFDTCxnQkFBZ0IsRUFBRSxxQkFBcUIsRUFBRSx1QkFBdUIsRUFDaEUscUJBQXFCLEVBQ3JCLGNBQWMsRUFDZCx3QkFBd0IsRUFDeEIsdUJBQXVCLEVBQ3hCLE1BQU0sZ0JBQWdCLENBQUM7Ozs7O0FBRXhCLElBQUksUUFBUSxHQUFXLENBQUMsQ0FBQztBQXlCekIsTUFBTSxPQUFPLGNBQWUsU0FBUSxTQUFTO0lBTzNDLElBQW9CLFdBQVc7UUFDN0IsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDO0lBQzdDLENBQUM7SUFPRCxZQUNZLGdCQUF5QyxFQUN6QyxzQkFBOEMsRUFDOUMsZ0JBQWtDLEVBQ2xDLFNBQXdCO1FBRWxDLEtBQUssRUFBRSxDQUFDO1FBTEUscUJBQWdCLEdBQWhCLGdCQUFnQixDQUF5QjtRQUN6QywyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBQzlDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsY0FBUyxHQUFULFNBQVMsQ0FBZTtRQWxCNUIsa0JBQWEsR0FBaUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUd6QyxZQUFPLEdBQVcsVUFBVyxRQUFRLEVBQUcsRUFBRSxDQUFDO1FBTzNDLFlBQU8sR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUUvRCxhQUFRLEdBQVksS0FBSyxDQUFDO0lBU2xDLENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDbkMsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQzFCLENBQUM7SUFFTSxrQkFBa0I7UUFDdkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQ2xCLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUNwQyxDQUFDO0lBQ0osQ0FBQztJQUVPLDBCQUEwQjtRQUNoQyxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxZQUFZLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBRTFGLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksd0JBQXdCLEVBQUUsQ0FBQyxDQUFDO1lBRXBELElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUNsQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztnQkFDckIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQzthQUNyQjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFlBQVk7UUFDakIsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDOUMsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNuQyxDQUFDOzhHQXREVSxjQUFjO2tHQUFkLGNBQWMsd0xBZmQ7WUFDVCxhQUFhO1lBQ2IsZ0JBQWdCO1lBQ2hCLHFCQUFxQjtZQUNyQixHQUFHLHVCQUF1QjtZQUMxQixHQUFHLHdCQUF3QjtZQUMzQixHQUFHLGNBQWM7WUFDakIsR0FBRyxnQkFBZ0I7WUFDbkIsR0FBRyx1QkFBdUI7WUFDMUIsR0FBRyxxQkFBcUI7WUFDeEIsR0FBRyxnQkFBZ0I7WUFDbkIsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUU7U0FDakQsaURDN0NILG9VQVdBOzsyRkRxQ2EsY0FBYztrQkF2QjFCLFNBQVM7K0JBQ0UsUUFBUSxRQUdaO3dCQUNKLFdBQVcsRUFBRSxTQUFTO3dCQUN0QixLQUFLLEVBQUUsb0JBQW9CO3FCQUM1QixhQUNVO3dCQUNULGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixxQkFBcUI7d0JBQ3JCLEdBQUcsdUJBQXVCO3dCQUMxQixHQUFHLHdCQUF3Qjt3QkFDM0IsR0FBRyxjQUFjO3dCQUNqQixHQUFHLGdCQUFnQjt3QkFDbkIsR0FBRyx1QkFBdUI7d0JBQzFCLEdBQUcscUJBQXFCO3dCQUN4QixHQUFHLGdCQUFnQjt3QkFDbkIsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFdBQVcsZ0JBQWdCLEVBQUU7cUJBQ2pELG1CQUNnQix1QkFBdUIsQ0FBQyxNQUFNOytLQU8vQixPQUFPO3NCQUR0QixLQUFLO2dCQVFVLE9BQU87c0JBRHRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsXG4gIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRl9GTE9XLCBGRmxvd0Jhc2UgfSBmcm9tICcuL2YtZmxvdy1iYXNlJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi9mLWNvbXBvbmVudHMtc3RvcmUnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBzdGFydFdpdGgsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgQ09NTU9OX1BST1ZJREVSUywgR2V0QWxsTm9kZXNSZWN0SGFuZGxlciwgUmVkcmF3Q29ubmVjdGlvbnNSZXF1ZXN0LFxufSBmcm9tICcuLi9kb21haW4nO1xuaW1wb3J0IHsgSVJlY3QgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuaW1wb3J0IHsgRkxPVyB9IGZyb20gJy4uL2dldC1mbG93LXVpZCc7XG5pbXBvcnQgeyBGRmxvd01lZGlhdG9yIH0gZnJvbSAnLi4vZi1tZWRpYXRvcic7XG5pbXBvcnQge1xuICBDQU5WQVNfUFJPVklERVJTLCBDT05ORUNUSU9OU19QUk9WSURFUlMsIEVYVEVSTkFMX0lURU1fUFJPVklERVJTLFxuICBGRHJhZ2dhYmxlRGF0YUNvbnRleHQsXG4gIE5PREVfUFJPVklERVJTLFxuICBTRUxFQ1RJT05fQVJFQV9QUk9WSURFUlMsXG4gIFNJTkdMRV9TRUxFQ1RfUFJPVklERVJTXG59IGZyb20gJy4uL2YtZHJhZ2dhYmxlJztcblxubGV0IHVuaXF1ZUlkOiBudW1iZXIgPSAwO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmLWZsb3cnLFxuICB0ZW1wbGF0ZVVybDogJy4vZi1mbG93LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbICcuL2YtZmxvdy5jb21wb25lbnQuc2NzcycgXSxcbiAgaG9zdDoge1xuICAgICdbYXR0ci5pZF0nOiAnZkZsb3dJZCcsXG4gICAgY2xhc3M6IFwiZi1jb21wb25lbnQgZi1mbG93XCIsXG4gIH0sXG4gIHByb3ZpZGVyczogW1xuICAgIEZGbG93TWVkaWF0b3IsXG4gICAgRkNvbXBvbmVudHNTdG9yZSxcbiAgICBGRHJhZ2dhYmxlRGF0YUNvbnRleHQsXG4gICAgLi4uU0lOR0xFX1NFTEVDVF9QUk9WSURFUlMsXG4gICAgLi4uU0VMRUNUSU9OX0FSRUFfUFJPVklERVJTLFxuICAgIC4uLk5PREVfUFJPVklERVJTLFxuICAgIC4uLkNBTlZBU19QUk9WSURFUlMsXG4gICAgLi4uRVhURVJOQUxfSVRFTV9QUk9WSURFUlMsXG4gICAgLi4uQ09OTkVDVElPTlNfUFJPVklERVJTLFxuICAgIC4uLkNPTU1PTl9QUk9WSURFUlMsXG4gICAgeyBwcm92aWRlOiBGX0ZMT1csIHVzZUV4aXN0aW5nOiBGRmxvd0NvbXBvbmVudCB9LFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRkZsb3dDb21wb25lbnQgZXh0ZW5kcyBGRmxvd0Jhc2UgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyQ29udGVudEluaXQsIE9uRGVzdHJveSB7XG5cbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb24kOiBTdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgQElucHV0KClcbiAgcHVibGljIG92ZXJyaWRlIGZGbG93SWQ6IHN0cmluZyA9IGBmLWZsb3ctJHsgdW5pcXVlSWQrKyB9YDtcblxuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IGhvc3RFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmZXJlbmNlLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBAT3V0cHV0KClcbiAgcHVibGljIG92ZXJyaWRlIGZMb2FkZWQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBwcml2YXRlIGlzTG9hZGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgICBwcml2YXRlIGVsZW1lbnRSZWZlcmVuY2U6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgcHJpdmF0ZSBnZXRBbGxOb2Rlc1JlY3RIYW5kbGVyOiBHZXRBbGxOb2Rlc1JlY3RIYW5kbGVyLFxuICAgICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgICAgcHJpdmF0ZSBmTWVkaWF0b3I6IEZGbG93TWVkaWF0b3IsXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZGbG93ID0gdGhpcztcbiAgICBGTE9XLlVJRCA9IHRoaXMuZkZsb3dJZDtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24kLmFkZChcbiAgICAgICAgdGhpcy5zdWJzY3JpYmVPbkVsZW1lbnRzQ2hhbmdlcygpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgc3Vic2NyaWJlT25FbGVtZW50c0NoYW5nZXMoKTogU3Vic2NyaXB0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmNoYW5nZXMucGlwZShzdGFydFdpdGgobnVsbCksIGRlYm91bmNlVGltZSgyMCkpLnN1YnNjcmliZSgoKSA9PiB7XG5cbiAgICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQobmV3IFJlZHJhd0Nvbm5lY3Rpb25zUmVxdWVzdCgpKTtcblxuICAgICAgaWYgKCF0aGlzLmlzTG9hZGVkKSB7XG4gICAgICAgIHRoaXMuaXNMb2FkZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLmZMb2FkZWQuZW1pdCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldE5vZGVzUmVjdCgpOiBJUmVjdCB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0QWxsTm9kZXNSZWN0SGFuZGxlci5oYW5kbGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiQudW5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZkRlZmluaXRpb25zXVwiPjwvbmctY29udGVudD5cblxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImYtYmFja2dyb3VuZFwiPjwvbmctY29udGVudD5cblxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImYtbGluZS1hbGlnbm1lbnRcIj48L25nLWNvbnRlbnQ+XG5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJmLWNhbnZhc1wiPjwvbmctY29udGVudD5cblxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImYtc2VsZWN0aW9uLWFyZWFcIj48L25nLWNvbnRlbnQ+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1mbG93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1mbG93L2YtZmxvdy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZmxvdy9mLWZsb3cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixTQUFTLEVBQWMsWUFBWSxFQUNuQyxLQUFLLEVBQXFCLE1BQU0sRUFDakMsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdELE9BQU8sRUFDTCxxQkFBcUIsRUFDckIsZ0JBQWdCLEVBQUUsbUJBQW1CLEVBQ3JDLG1CQUFtQixFQUNuQix3QkFBd0IsRUFDeEIsZ0JBQWdCLEdBQ2pCLE1BQU0sV0FBVyxDQUFDO0FBRW5CLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlDLE9BQU8sRUFDTCxnQkFBZ0IsRUFBRSxxQkFBcUIsRUFBRSx1QkFBdUIsRUFDaEUscUJBQXFCLEVBQ3JCLGNBQWMsRUFDZCx3QkFBd0IsRUFDeEIsdUJBQXVCLEVBQ3hCLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFFeEIsSUFBSSxRQUFRLEdBQVcsQ0FBQyxDQUFDO0FBeUJ6QixNQUFNLE9BQU8sY0FBZSxTQUFRLFNBQVM7SUFPM0MsSUFBb0IsV0FBVztRQUM3QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7SUFD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QixHQUFHLHVCQUF1Qjt3QkFDMUIsR0FBRyx3QkFBd0I7d0JBQzNCLEdBQUcsY0FBYzt3QkFDakIsR0FBRyxnQkFBZ0I7d0JBQ25CLEdBQUcsdUJBQXVCO3dCQUMxQixHQUFHLHFCQUFxQjt3QkFDeEIsR0FBRyxnQkFBZ0I7d0JBQ25CLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxXQUFXLGdCQUFnQixFQUFFO3FCQUNqRCxtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTTswSUFPL0IsT0FBTztzQkFEdEIsS0FBSztnQkFRVSxPQUFPO3NCQUR0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZfRkxPVywgRkZsb3dCYXNlIH0gZnJvbSAnLi9mLWZsb3ctYmFzZSc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vZi1jb21wb25lbnRzLXN0b3JlJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgc3RhcnRXaXRoLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIENsZWFyU2VsZWN0aW9uUmVxdWVzdCxcbiAgQ09NTU9OX1BST1ZJREVSUywgR2V0Tm9kZXNSZWN0UmVxdWVzdCxcbiAgR2V0U2VsZWN0aW9uUmVxdWVzdCxcbiAgUmVkcmF3Q29ubmVjdGlvbnNSZXF1ZXN0LFxuICBTZWxlY3RBbGxSZXF1ZXN0LFxufSBmcm9tICcuLi9kb21haW4nO1xuaW1wb3J0IHsgSVJlY3QgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuaW1wb3J0IHsgRkxPVyB9IGZyb20gJy4uL2dldC1mbG93LXVpZCc7XG5pbXBvcnQgeyBGRmxvd01lZGlhdG9yIH0gZnJvbSAnLi4vZi1tZWRpYXRvcic7XG5pbXBvcnQge1xuICBDQU5WQVNfUFJPVklERVJTLCBDT05ORUNUSU9OU19QUk9WSURFUlMsIEVYVEVSTkFMX0lURU1fUFJPVklERVJTLFxuICBGRHJhZ2dhYmxlRGF0YUNvbnRleHQsIEZTZWxlY3Rpb25DaGFuZ2VFdmVudCxcbiAgTk9ERV9QUk9WSURFUlMsXG4gIFNFTEVDVElPTl9BUkVBX1BST1ZJREVSUyxcbiAgU0lOR0xFX1NFTEVDVF9QUk9WSURFUlNcbn0gZnJvbSAnLi4vZi1kcmFnZ2FibGUnO1xuXG5sZXQgdW5pcXVlSWQ6IG51bWJlciA9IDA7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2YtZmxvdycsXG4gIHRlbXBsYXRlVXJsOiAnLi9mLWZsb3cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsgJy4vZi1mbG93LmNvbXBvbmVudC5zY3NzJyBdLFxuICBob3N0OiB7XG4gICAgJ1thdHRyLmlkXSc6ICdmRmxvd0lkJyxcbiAgICBjbGFzczogXCJmLWNvbXBvbmVudCBmLWZsb3dcIixcbiAgfSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgRkZsb3dNZWRpYXRvcixcbiAgICBGQ29tcG9uZW50c1N0b3JlLFxuICAgIEZEcmFnZ2FibGVEYXRhQ29udGV4dCxcbiAgICAuLi5TSU5HTEVfU0VMRUNUX1BST1ZJREVSUyxcbiAgICAuLi5TRUxFQ1RJT05fQVJFQV9QUk9WSURFUlMsXG4gICAgLi4uTk9ERV9QUk9WSURFUlMsXG4gICAgLi4uQ0FOVkFTX1BST1ZJREVSUyxcbiAgICAuLi5FWFRFUk5BTF9JVEVNX1BST1ZJREVSUyxcbiAgICAuLi5DT05ORUNUSU9OU19QUk9WSURFUlMsXG4gICAgLi4uQ09NTU9OX1BST1ZJREVSUyxcbiAgICB7IHByb3ZpZGU6IEZfRkxPVywgdXNlRXhpc3Rpbmc6IEZGbG93Q29tcG9uZW50IH0sXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBGRmxvd0NvbXBvbmVudCBleHRlbmRzIEZGbG93QmFzZSBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJDb250ZW50SW5pdCwgT25EZXN0cm95IHtcblxuICBwcml2YXRlIHN1YnNjcmlwdGlvbiQ6IFN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZkZsb3dJZDogc3RyaW5nID0gYGYtZmxvdy0keyB1bmlxdWVJZCsrIH1gO1xuXG4gIHB1YmxpYyBvdmVycmlkZSBnZXQgaG9zdEVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWZlcmVuY2UubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZkxvYWRlZDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIHByaXZhdGUgaXNMb2FkZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAgIHByaXZhdGUgZWxlbWVudFJlZmVyZW5jZTogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICBwcml2YXRlIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmUsXG4gICAgICBwcml2YXRlIGZNZWRpYXRvcjogRkZsb3dNZWRpYXRvcixcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkZsb3cgPSB0aGlzO1xuICAgIEZMT1cuVUlEID0gdGhpcy5mRmxvd0lkO1xuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiQuYWRkKFxuICAgICAgICB0aGlzLnN1YnNjcmliZU9uRWxlbWVudHNDaGFuZ2VzKClcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBzdWJzY3JpYmVPbkVsZW1lbnRzQ2hhbmdlcygpOiBTdWJzY3JpcHRpb24ge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuY2hhbmdlcy5waXBlKHN0YXJ0V2l0aChudWxsKSwgZGVib3VuY2VUaW1lKDIwKSkuc3Vic2NyaWJlKCgpID0+IHtcblxuICAgICAgdGhpcy5mTWVkaWF0b3Iuc2VuZChuZXcgUmVkcmF3Q29ubmVjdGlvbnNSZXF1ZXN0KCkpO1xuXG4gICAgICBpZiAoIXRoaXMuaXNMb2FkZWQpIHtcbiAgICAgICAgdGhpcy5pc0xvYWRlZCA9IHRydWU7XG4gICAgICAgIHRoaXMuZkxvYWRlZC5lbWl0KCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgcmVzZXQoKTogdm9pZCB7XG4gICAgdGhpcy5pc0xvYWRlZCA9IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIGdldE5vZGVzUmVjdCgpOiBJUmVjdCB7XG4gICAgY29uc3QgcmVzdWx0ID0gdGhpcy5mTWVkaWF0b3Iuc2VuZDxJUmVjdD4obmV3IEdldE5vZGVzUmVjdFJlcXVlc3QoKSk7XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHVibGljIGdldFNlbGVjdGlvbigpOiBGU2VsZWN0aW9uQ2hhbmdlRXZlbnQge1xuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuZk1lZGlhdG9yLnNlbmQ8RlNlbGVjdGlvbkNoYW5nZUV2ZW50PihuZXcgR2V0U2VsZWN0aW9uUmVxdWVzdCgpKTtcblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0QWxsKCk6IHZvaWQge1xuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQ8dm9pZD4obmV3IFNlbGVjdEFsbFJlcXVlc3QoKSk7XG4gIH1cblxuICBwdWJsaWMgY2xlYXJTZWxlY3Rpb24oKTogdm9pZCB7XG4gICAgdGhpcy5mTWVkaWF0b3Iuc2VuZDx2b2lkPihuZXcgQ2xlYXJTZWxlY3Rpb25SZXF1ZXN0KCkpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uJC51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJbZkRlZmluaXRpb25zXVwiPjwvbmctY29udGVudD5cblxuICA8bmctY29udGVudCBzZWxlY3Q9XCJmLWJhY2tncm91bmRcIj48L25nLWNvbnRlbnQ+XG5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZi1saW5lLWFsaWdubWVudFwiPjwvbmctY29udGVudD5cblxuICA8bmctY29udGVudCBzZWxlY3Q9XCJmLWNhbnZhc1wiPjwvbmctY29udGVudD5cblxuICA8bmctY29udGVudCBzZWxlY3Q9XCJmLXNlbGVjdGlvbi1hcmVhXCI+PC9uZy1jb250ZW50PlxuXG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImYtbWluaS1tYXBcIj48L25nLWNvbnRlbnQ+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==