@foblex/flow 12.3.6 → 12.3.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. package/README.md +1 -1
  2. package/esm2022/domain/clear-selection/clear-selection.execution.mjs +5 -4
  3. package/esm2022/domain/create-connection-markers/create-connection-markers-request.mjs +2 -1
  4. package/esm2022/domain/create-connection-markers/create-connection-markers.execution.mjs +4 -4
  5. package/esm2022/domain/get-can-be-selected-items/get-can-be-selected-items.execution.mjs +7 -4
  6. package/esm2022/domain/get-connection-line/get-connection-line.execution.mjs +9 -11
  7. package/esm2022/domain/get-connection-line/get-connection-line.request.mjs +6 -1
  8. package/esm2022/domain/get-connection.handler.mjs +5 -4
  9. package/esm2022/domain/get-element-rect-in-flow/get-element-rect-in-flow-request.mjs +2 -1
  10. package/esm2022/domain/get-element-rect-in-flow/get-element-rect-in-flow.execution.mjs +5 -4
  11. package/esm2022/domain/get-incoming-connections.handler.mjs +5 -4
  12. package/esm2022/domain/get-input-rect-in-flow/get-input-rect-in-flow-request.mjs +2 -1
  13. package/esm2022/domain/get-input-rect-in-flow/get-input-rect-in-flow-response.mjs +3 -1
  14. package/esm2022/domain/get-input-rect-in-flow/get-input-rect-in-flow.execution.mjs +6 -4
  15. package/esm2022/domain/get-nodes-rect/get-nodes-rect.execution.mjs +5 -4
  16. package/esm2022/domain/get-outgoing-connections.handler.mjs +5 -4
  17. package/esm2022/domain/get-output-rect-in-flow/get-output-rect-in-flow-request.mjs +2 -1
  18. package/esm2022/domain/get-output-rect-in-flow/get-output-rect-in-flow-response.mjs +3 -1
  19. package/esm2022/domain/get-output-rect-in-flow/get-output-rect-in-flow.execution.mjs +6 -4
  20. package/esm2022/domain/get-position-in-flow/get-position-in-flow-request.mjs +2 -1
  21. package/esm2022/domain/get-position-in-flow/get-position-in-flow.execution.mjs +5 -4
  22. package/esm2022/domain/get-selection/get-selection.execution.mjs +5 -4
  23. package/esm2022/domain/intersections/rounded-rect/rounded-rect.mjs +11 -3
  24. package/esm2022/domain/is-connection-under-node/is-connection-under-node.execution.mjs +9 -4
  25. package/esm2022/domain/redraw-connections/redraw-connections.execution.mjs +6 -4
  26. package/esm2022/domain/select/select.execution.mjs +6 -4
  27. package/esm2022/domain/select/select.request.mjs +3 -1
  28. package/esm2022/domain/select-all/select-all.execution.mjs +6 -4
  29. package/esm2022/domain/select-and-update-node-layer/select-and-update-node-layer.execution.mjs +7 -4
  30. package/esm2022/domain/select-and-update-node-layer/select-and-update-node-layer.request.mjs +2 -1
  31. package/esm2022/domain/update-item-layer/update-item-layer.execution.mjs +5 -6
  32. package/esm2022/domain/update-item-layer/update-item-layer.request.mjs +3 -1
  33. package/esm2022/f-backgroud/f-background-base.mjs +4 -4
  34. package/esm2022/f-backgroud/f-background.component.mjs +7 -4
  35. package/esm2022/f-backgroud/f-circle-pattern/f-circle-pattern.component.mjs +16 -13
  36. package/esm2022/f-backgroud/f-rect-pattern/f-rect-pattern.component.mjs +19 -15
  37. package/esm2022/f-canvas/domain/f-canvas-change.event.mjs +3 -1
  38. package/esm2022/f-canvas/f-canvas-base.mjs +5 -4
  39. package/esm2022/f-canvas/f-canvas.component.mjs +10 -5
  40. package/esm2022/f-canvas/f-zoom/f-zoom-base.mjs +4 -3
  41. package/esm2022/f-canvas/f-zoom/f-zoom.directive.mjs +8 -8
  42. package/esm2022/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points-request.mjs +3 -1
  43. package/esm2022/f-connection/common/domain/calculate-connection-center/calculate-connection-center-request.mjs +2 -1
  44. package/esm2022/f-connection/common/f-connection-base.mjs +9 -7
  45. package/esm2022/f-connection/common/f-connection-text/f-connection-text-path.directive.mjs +8 -6
  46. package/esm2022/f-connection/common/f-connection-text/f-connection-text.component.mjs +7 -4
  47. package/esm2022/f-connection/common/f-drag-handle/f-connection-drag-handle.component.mjs +6 -5
  48. package/esm2022/f-connection/common/f-gradient/f-connection-gradient.component.mjs +6 -4
  49. package/esm2022/f-connection/common/f-path/f-connection-path.component.mjs +6 -4
  50. package/esm2022/f-connection/common/f-path/get-path-marker-id.mjs +6 -6
  51. package/esm2022/f-connection/common/f-selection/f-connection-selection.component.mjs +6 -4
  52. package/esm2022/f-connection/common/mixins/change-connection-selection.mixin.mjs +3 -2
  53. package/esm2022/f-connection/f-connection/f-connection.component.mjs +27 -16
  54. package/esm2022/f-connection/f-connection-builder/f-connection-factory.mjs +9 -9
  55. package/esm2022/f-connection/f-connection-center/f-connection-center.directive.mjs +4 -4
  56. package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +25 -14
  57. package/esm2022/f-connection/f-marker/f-marker-base.mjs +4 -4
  58. package/esm2022/f-connection/f-marker/f-marker.directive.mjs +13 -11
  59. package/esm2022/f-connectors/domain/calculate-connector-connectable-side/calculate-connector-connectable-side-request.mjs +3 -1
  60. package/esm2022/f-connectors/f-connector-base.mjs +5 -7
  61. package/esm2022/f-connectors/f-node-input/f-node-input-base.mjs +5 -8
  62. package/esm2022/f-connectors/f-node-input/f-node-input.directive.mjs +14 -11
  63. package/esm2022/f-connectors/f-node-outlet/f-node-outlet-base.mjs +6 -9
  64. package/esm2022/f-connectors/f-node-outlet/f-node-outlet.directive.mjs +12 -9
  65. package/esm2022/f-connectors/f-node-output/f-node-output-base.mjs +5 -8
  66. package/esm2022/f-connectors/f-node-output/f-node-output.directive.mjs +15 -12
  67. package/esm2022/f-connectors/index.mjs +1 -2
  68. package/esm2022/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.execution.mjs +5 -4
  69. package/esm2022/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.request.mjs +2 -1
  70. package/esm2022/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.validator.mjs +5 -4
  71. package/esm2022/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.execution.mjs +6 -4
  72. package/esm2022/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.request.mjs +2 -1
  73. package/esm2022/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.validator.mjs +6 -4
  74. package/esm2022/f-draggable/canvas/canvas.drag-handler.mjs +4 -3
  75. package/esm2022/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.execution.mjs +7 -4
  76. package/esm2022/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.request.mjs +2 -1
  77. package/esm2022/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.validator.mjs +5 -4
  78. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.execution.mjs +7 -4
  79. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.request.mjs +4 -1
  80. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.execution.mjs +6 -4
  81. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.request.mjs +2 -1
  82. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.execution.mjs +6 -4
  83. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.request.mjs +2 -1
  84. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.validator.mjs +5 -4
  85. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.execution.mjs +6 -4
  86. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.request.mjs +2 -1
  87. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.validator.mjs +6 -4
  88. package/esm2022/f-draggable/connections/create-connection/create-connection.drag-handler.mjs +8 -5
  89. package/esm2022/f-draggable/connections/create-connection/f-create-connection.event.mjs +4 -1
  90. package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.execution.mjs +5 -4
  91. package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.request.mjs +2 -1
  92. package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.validator.mjs +5 -4
  93. package/esm2022/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.execution.mjs +5 -4
  94. package/esm2022/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.request.mjs +3 -1
  95. package/esm2022/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.validator.mjs +5 -4
  96. package/esm2022/f-draggable/connections/reassign-connection/f-reassign-connection.event.mjs +5 -1
  97. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.execution.mjs +7 -4
  98. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.request.mjs +2 -1
  99. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.validator.mjs +5 -4
  100. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.execution.mjs +7 -4
  101. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.request.mjs +2 -1
  102. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.validator.mjs +6 -4
  103. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.mjs +8 -6
  104. package/esm2022/f-draggable/external-item/external-item-finalize/external-item-finalize.execution.mjs +7 -4
  105. package/esm2022/f-draggable/external-item/external-item-finalize/external-item-finalize.request.mjs +2 -1
  106. package/esm2022/f-draggable/external-item/external-item-finalize/external-item-finalize.validator.mjs +5 -4
  107. package/esm2022/f-draggable/external-item/external-item-preparation/external-item-preparation.execution.mjs +7 -4
  108. package/esm2022/f-draggable/external-item/external-item-preparation/external-item-preparation.request.mjs +2 -1
  109. package/esm2022/f-draggable/external-item/external-item-preparation/external-item-preparation.validator.mjs +5 -4
  110. package/esm2022/f-draggable/external-item/external-item.drag-handler.mjs +6 -4
  111. package/esm2022/f-draggable/external-item/f-create-node.event.mjs +3 -1
  112. package/esm2022/f-draggable/f-draggable-base.mjs +82 -80
  113. package/esm2022/f-draggable/f-draggable-data-context.mjs +11 -11
  114. package/esm2022/f-draggable/f-draggable.directive.mjs +18 -13
  115. package/esm2022/f-draggable/f-selection-change-event.mjs +3 -1
  116. package/esm2022/f-draggable/node/connection-source.drag-handler.mjs +8 -6
  117. package/esm2022/f-draggable/node/connection-target.drag-handler.mjs +8 -6
  118. package/esm2022/f-draggable/node/connection.drag-handler.mjs +7 -5
  119. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.mjs +9 -4
  120. package/esm2022/f-draggable/node/node-move-finalize/node-move-finalize.execution.mjs +7 -4
  121. package/esm2022/f-draggable/node/node-move-finalize/node-move-finalize.request.mjs +2 -1
  122. package/esm2022/f-draggable/node/node-move-finalize/node-move-finalize.validator.mjs +5 -4
  123. package/esm2022/f-draggable/node/node-move-preparation/node-move-preparation.execution.mjs +7 -4
  124. package/esm2022/f-draggable/node/node-move-preparation/node-move-preparation.request.mjs +2 -1
  125. package/esm2022/f-draggable/node/node-move-preparation/node-move-preparation.validator.mjs +6 -4
  126. package/esm2022/f-draggable/node/node.drag-handler.mjs +5 -3
  127. package/esm2022/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.execution.mjs +5 -4
  128. package/esm2022/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.request.mjs +2 -1
  129. package/esm2022/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.validator.mjs +5 -4
  130. package/esm2022/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.execution.mjs +7 -4
  131. package/esm2022/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.request.mjs +2 -1
  132. package/esm2022/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.validator.mjs +6 -4
  133. package/esm2022/f-draggable/node-resize/node-resize.drag-handler.mjs +7 -2
  134. package/esm2022/f-draggable/selection-area/selection-area-finalize/selection-area-finalize.execution.mjs +5 -4
  135. package/esm2022/f-draggable/selection-area/selection-area-finalize/selection-area-finalize.request.mjs +2 -1
  136. package/esm2022/f-draggable/selection-area/selection-area-finalize/selection-area-finalize.validator.mjs +5 -4
  137. package/esm2022/f-draggable/selection-area/selection-area-preparation/selection-area-preparation.execution.mjs +7 -4
  138. package/esm2022/f-draggable/selection-area/selection-area-preparation/selection-area-preparation.request.mjs +2 -1
  139. package/esm2022/f-draggable/selection-area/selection-area-preparation/selection-area-preparation.validator.mjs +5 -4
  140. package/esm2022/f-draggable/selection-area/selection-area.drag-handle.mjs +7 -4
  141. package/esm2022/f-draggable/single-select/single-select.execution.mjs +8 -4
  142. package/esm2022/f-draggable/single-select/single-select.request.mjs +2 -1
  143. package/esm2022/f-draggable/single-select/single-select.validator.mjs +5 -4
  144. package/esm2022/f-external-item/f-external-item-base.mjs +4 -4
  145. package/esm2022/f-external-item/f-external-item.directive.mjs +10 -7
  146. package/esm2022/f-external-item/f-external-item.service.mjs +5 -7
  147. package/esm2022/f-flow/f-flow.component.mjs +12 -9
  148. package/esm2022/f-flow.module.mjs +5 -5
  149. package/esm2022/f-line-alignment/domain/line-element.mjs +3 -2
  150. package/esm2022/f-line-alignment/domain/line-service.mjs +4 -1
  151. package/esm2022/f-line-alignment/domain/nearest-coordinate.mjs +4 -1
  152. package/esm2022/f-line-alignment/f-line-alignment-base.mjs +4 -4
  153. package/esm2022/f-line-alignment/f-line-alignment.component.mjs +14 -9
  154. package/esm2022/f-node/f-drag-handle/f-drag-handle.directive.mjs +6 -5
  155. package/esm2022/f-node/f-node-base.mjs +4 -5
  156. package/esm2022/f-node/f-node.directive.mjs +16 -13
  157. package/esm2022/f-node/f-resize-handle/f-resize-handle.directive.mjs +7 -6
  158. package/esm2022/f-node/f-rotate-handle/f-rotate-handle.directive.mjs +3 -2
  159. package/esm2022/f-selection-area/f-selection-area-base.mjs +4 -4
  160. package/esm2022/f-selection-area/f-selection-area.component.mjs +7 -5
  161. package/esm2022/f-storage/f-components-store.mjs +16 -13
  162. package/esm2022/infrastructure/f-mediator/f-flow-mediator.mjs +6 -5
  163. package/esm2022/infrastructure/pipeline/pipeline.mjs +3 -1
  164. package/f-connectors/index.d.ts +0 -1
  165. package/fesm2022/foblex-flow.mjs +888 -612
  166. package/fesm2022/foblex-flow.mjs.map +1 -1
  167. package/package.json +6 -1
  168. package/esm2022/f-connectors/cast-to-connectable-side.mjs +0 -9
  169. package/f-connectors/cast-to-connectable-side.d.ts +0 -2
@@ -1,6 +1,7 @@
1
1
  export class ExternalItemFinalizeRequest {
2
+ event;
2
3
  constructor(event) {
3
4
  this.event = event;
4
5
  }
5
6
  }
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtaXRlbS1maW5hbGl6ZS5yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9leHRlcm5hbC1pdGVtL2V4dGVybmFsLWl0ZW0tZmluYWxpemUvZXh0ZXJuYWwtaXRlbS1maW5hbGl6ZS5yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTywyQkFBMkI7SUFFdEMsWUFDUyxLQUFvQjtRQUFwQixVQUFLLEdBQUwsS0FBSyxDQUFlO0lBRTdCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElQb2ludGVyRXZlbnQgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuXG5leHBvcnQgY2xhc3MgRXh0ZXJuYWxJdGVtRmluYWxpemVSZXF1ZXN0IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZXZlbnQ6IElQb2ludGVyRXZlbnRcbiAgKSB7XG4gIH1cbn1cbiJdfQ==
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtaXRlbS1maW5hbGl6ZS5yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9leHRlcm5hbC1pdGVtL2V4dGVybmFsLWl0ZW0tZmluYWxpemUvZXh0ZXJuYWwtaXRlbS1maW5hbGl6ZS5yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTywyQkFBMkI7SUFHN0I7SUFEVCxZQUNTLEtBQW9CO1FBQXBCLFVBQUssR0FBTCxLQUFLLENBQWU7SUFFN0IsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVBvaW50ZXJFdmVudCB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5cbmV4cG9ydCBjbGFzcyBFeHRlcm5hbEl0ZW1GaW5hbGl6ZVJlcXVlc3Qge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBldmVudDogSVBvaW50ZXJFdmVudFxuICApIHtcbiAgfVxufVxuIl19
@@ -6,20 +6,21 @@ import { EFDraggableType } from '../../e-f-draggable-type';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "../../f-draggable-data-context";
8
8
  let ExternalItemFinalizeValidator = class ExternalItemFinalizeValidator {
9
+ fDraggableDataContext;
9
10
  constructor(fDraggableDataContext) {
10
11
  this.fDraggableDataContext = fDraggableDataContext;
11
12
  }
12
13
  handle(request) {
13
14
  return this.fDraggableDataContext.draggableItems.some((x) => x.type === EFDraggableType.PALETTE_ITEM);
14
15
  }
15
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: ExternalItemFinalizeValidator, deps: [{ token: i1.FDraggableDataContext }], target: i0.ɵɵFactoryTarget.Injectable }); }
16
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: ExternalItemFinalizeValidator }); }
16
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ExternalItemFinalizeValidator, deps: [{ token: i1.FDraggableDataContext }], target: i0.ɵɵFactoryTarget.Injectable });
17
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ExternalItemFinalizeValidator });
17
18
  };
18
19
  ExternalItemFinalizeValidator = __decorate([
19
20
  FValidatorRegister(ExternalItemFinalizeRequest)
20
21
  ], ExternalItemFinalizeValidator);
21
22
  export { ExternalItemFinalizeValidator };
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: ExternalItemFinalizeValidator, decorators: [{
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ExternalItemFinalizeValidator, decorators: [{
23
24
  type: Injectable
24
25
  }], ctorParameters: () => [{ type: i1.FDraggableDataContext }] });
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtaXRlbS1maW5hbGl6ZS52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2V4dGVybmFsLWl0ZW0vZXh0ZXJuYWwtaXRlbS1maW5hbGl6ZS9leHRlcm5hbC1pdGVtLWZpbmFsaXplLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsa0JBQWtCLEVBQWMsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQUtwRCxJQUFNLDZCQUE2QixHQUFuQyxNQUFNLDZCQUE2QjtJQUV4QyxZQUNVLHFCQUE0QztRQUE1QywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO0lBRXRELENBQUM7SUFFTSxNQUFNLENBQUMsT0FBb0M7UUFDaEQsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQzFELENBQUMsQ0FBQyxJQUFJLEtBQUssZUFBZSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzdDLENBQUM7K0dBVlUsNkJBQTZCO21IQUE3Qiw2QkFBNkI7O0FBQTdCLDZCQUE2QjtJQUR6QyxrQkFBa0IsQ0FBQywyQkFBMkIsQ0FBQztHQUNuQyw2QkFBNkIsQ0FXekM7OzRGQVhZLDZCQUE2QjtrQkFGekMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEV4dGVybmFsSXRlbUZpbmFsaXplUmVxdWVzdCB9IGZyb20gJy4vZXh0ZXJuYWwtaXRlbS1maW5hbGl6ZS5yZXF1ZXN0JztcbmltcG9ydCB7IEZWYWxpZGF0b3JSZWdpc3RlciwgSVZhbGlkYXRvciB9IGZyb20gJy4uLy4uLy4uL2luZnJhc3RydWN0dXJlJztcbmltcG9ydCB7IEVGRHJhZ2dhYmxlVHlwZSB9IGZyb20gJy4uLy4uL2UtZi1kcmFnZ2FibGUtdHlwZSc7XG5pbXBvcnQgeyBGRHJhZ2dhYmxlRGF0YUNvbnRleHQgfSBmcm9tICcuLi8uLi9mLWRyYWdnYWJsZS1kYXRhLWNvbnRleHQnO1xuXG5ASW5qZWN0YWJsZSgpXG5ARlZhbGlkYXRvclJlZ2lzdGVyKEV4dGVybmFsSXRlbUZpbmFsaXplUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBFeHRlcm5hbEl0ZW1GaW5hbGl6ZVZhbGlkYXRvciBpbXBsZW1lbnRzIElWYWxpZGF0b3I8RXh0ZXJuYWxJdGVtRmluYWxpemVSZXF1ZXN0PiB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmRHJhZ2dhYmxlRGF0YUNvbnRleHQ6IEZEcmFnZ2FibGVEYXRhQ29udGV4dCxcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IEV4dGVybmFsSXRlbUZpbmFsaXplUmVxdWVzdCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5kcmFnZ2FibGVJdGVtcy5zb21lKCh4KSA9PlxuICAgICAgeC50eXBlID09PSBFRkRyYWdnYWJsZVR5cGUuUEFMRVRURV9JVEVNKTtcbiAgfVxufVxuIl19
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtaXRlbS1maW5hbGl6ZS52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2V4dGVybmFsLWl0ZW0vZXh0ZXJuYWwtaXRlbS1maW5hbGl6ZS9leHRlcm5hbC1pdGVtLWZpbmFsaXplLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsa0JBQWtCLEVBQWMsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQUtwRCxJQUFNLDZCQUE2QixHQUFuQyxNQUFNLDZCQUE2QjtJQUc5QjtJQURWLFlBQ1UscUJBQTRDO1FBQTVDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7SUFFdEQsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUFvQztRQUNoRCxPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDMUQsQ0FBQyxDQUFDLElBQUksS0FBSyxlQUFlLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDN0MsQ0FBQzt1R0FWVSw2QkFBNkI7MkdBQTdCLDZCQUE2Qjs7QUFBN0IsNkJBQTZCO0lBRHpDLGtCQUFrQixDQUFDLDJCQUEyQixDQUFDO0dBQ25DLDZCQUE2QixDQVd6Qzs7MkZBWFksNkJBQTZCO2tCQUZ6QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRXh0ZXJuYWxJdGVtRmluYWxpemVSZXF1ZXN0IH0gZnJvbSAnLi9leHRlcm5hbC1pdGVtLWZpbmFsaXplLnJlcXVlc3QnO1xuaW1wb3J0IHsgRlZhbGlkYXRvclJlZ2lzdGVyLCBJVmFsaWRhdG9yIH0gZnJvbSAnLi4vLi4vLi4vaW5mcmFzdHJ1Y3R1cmUnO1xuaW1wb3J0IHsgRUZEcmFnZ2FibGVUeXBlIH0gZnJvbSAnLi4vLi4vZS1mLWRyYWdnYWJsZS10eXBlJztcbmltcG9ydCB7IEZEcmFnZ2FibGVEYXRhQ29udGV4dCB9IGZyb20gJy4uLy4uL2YtZHJhZ2dhYmxlLWRhdGEtY29udGV4dCc7XG5cbkBJbmplY3RhYmxlKClcbkBGVmFsaWRhdG9yUmVnaXN0ZXIoRXh0ZXJuYWxJdGVtRmluYWxpemVSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIEV4dGVybmFsSXRlbUZpbmFsaXplVmFsaWRhdG9yIGltcGxlbWVudHMgSVZhbGlkYXRvcjxFeHRlcm5hbEl0ZW1GaW5hbGl6ZVJlcXVlc3Q+IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZEcmFnZ2FibGVEYXRhQ29udGV4dDogRkRyYWdnYWJsZURhdGFDb250ZXh0LFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogRXh0ZXJuYWxJdGVtRmluYWxpemVSZXF1ZXN0KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LmRyYWdnYWJsZUl0ZW1zLnNvbWUoKHgpID0+XG4gICAgICB4LnR5cGUgPT09IEVGRHJhZ2dhYmxlVHlwZS5QQUxFVFRFX0lURU0pO1xuICB9XG59XG4iXX0=
@@ -10,6 +10,9 @@ import * as i1 from "../../../f-storage";
10
10
  import * as i2 from "../../f-draggable-data-context";
11
11
  import * as i3 from "../../../f-external-item";
12
12
  let ExternalItemPreparationExecution = class ExternalItemPreparationExecution {
13
+ fComponentsStore;
14
+ fDraggableDataContext;
15
+ fExternalItemService;
13
16
  get flowHost() {
14
17
  return this.fComponentsStore.fFlow.hostElement;
15
18
  }
@@ -28,14 +31,14 @@ let ExternalItemPreparationExecution = class ExternalItemPreparationExecution {
28
31
  getExternalItem(targetElement) {
29
32
  return this.fExternalItemService.getItem(getExternalItem(targetElement));
30
33
  }
31
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: ExternalItemPreparationExecution, deps: [{ token: i1.FComponentsStore }, { token: i2.FDraggableDataContext }, { token: i3.FExternalItemService }], target: i0.ɵɵFactoryTarget.Injectable }); }
32
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: ExternalItemPreparationExecution }); }
34
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ExternalItemPreparationExecution, deps: [{ token: i1.FComponentsStore }, { token: i2.FDraggableDataContext }, { token: i3.FExternalItemService }], target: i0.ɵɵFactoryTarget.Injectable });
35
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ExternalItemPreparationExecution });
33
36
  };
34
37
  ExternalItemPreparationExecution = __decorate([
35
38
  FExecutionRegister(ExternalItemPreparationRequest)
36
39
  ], ExternalItemPreparationExecution);
37
40
  export { ExternalItemPreparationExecution };
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: ExternalItemPreparationExecution, decorators: [{
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ExternalItemPreparationExecution, decorators: [{
39
42
  type: Injectable
40
43
  }], ctorParameters: () => [{ type: i1.FComponentsStore }, { type: i2.FDraggableDataContext }, { type: i3.FExternalItemService }] });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtaXRlbS1wcmVwYXJhdGlvbi5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2V4dGVybmFsLWl0ZW0vZXh0ZXJuYWwtaXRlbS1wcmVwYXJhdGlvbi9leHRlcm5hbC1pdGVtLXByZXBhcmF0aW9uLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLHlCQUF5QixDQUFDO0FBR3pFLE9BQU8sRUFBMkMsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDcEcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0JBQStCLENBQUM7Ozs7O0FBSWpFLElBQU0sZ0NBQWdDLEdBQXRDLE1BQU0sZ0NBQWdDO0lBRTNDLElBQVksUUFBUTtRQUNsQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFNLENBQUMsV0FBVyxDQUFDO0lBQ2xELENBQUM7SUFFRCxZQUNVLGdCQUFrQyxFQUNsQyxxQkFBNEMsRUFDNUMsb0JBQTBDO1FBRjFDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO0lBRXBELENBQUM7SUFFTSxNQUFNLENBQUMsT0FBdUM7UUFFbkQsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGtCQUFrQixHQUFHLENBQUMsQ0FBQztRQUVsRCxJQUFJLENBQUMscUJBQXFCLENBQUMscUJBQXFCLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRWhJLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxjQUFjLEdBQUc7WUFDMUMsSUFBSSx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDL0UsQ0FBQztJQUNKLENBQUM7SUFFTyxlQUFlLENBQUMsYUFBMEI7UUFDaEQsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsQ0FBRSxDQUFDO0lBQzVFLENBQUM7K0dBMUJVLGdDQUFnQzttSEFBaEMsZ0NBQWdDOztBQUFoQyxnQ0FBZ0M7SUFENUMsa0JBQWtCLENBQUMsOEJBQThCLENBQUM7R0FDdEMsZ0NBQWdDLENBMkI1Qzs7NEZBM0JZLGdDQUFnQztrQkFGNUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEV4dGVybmFsSXRlbVByZXBhcmF0aW9uUmVxdWVzdCB9IGZyb20gJy4vZXh0ZXJuYWwtaXRlbS1wcmVwYXJhdGlvbi5yZXF1ZXN0JztcbmltcG9ydCB7IFBvaW50IH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbiB9IGZyb20gJy4uLy4uLy4uL2luZnJhc3RydWN0dXJlJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgRkRyYWdnYWJsZURhdGFDb250ZXh0IH0gZnJvbSAnLi4vLi4vZi1kcmFnZ2FibGUtZGF0YS1jb250ZXh0JztcbmltcG9ydCB7IEZFeHRlcm5hbEl0ZW1CYXNlLCBGRXh0ZXJuYWxJdGVtU2VydmljZSwgZ2V0RXh0ZXJuYWxJdGVtIH0gZnJvbSAnLi4vLi4vLi4vZi1leHRlcm5hbC1pdGVtJztcbmltcG9ydCB7IEV4dGVybmFsSXRlbURyYWdIYW5kbGVyIH0gZnJvbSAnLi4vZXh0ZXJuYWwtaXRlbS5kcmFnLWhhbmRsZXInO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKEV4dGVybmFsSXRlbVByZXBhcmF0aW9uUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBFeHRlcm5hbEl0ZW1QcmVwYXJhdGlvbkV4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248RXh0ZXJuYWxJdGVtUHJlcGFyYXRpb25SZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSBnZXQgZmxvd0hvc3QoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkZsb3chLmhvc3RFbGVtZW50O1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgIHByaXZhdGUgZkRyYWdnYWJsZURhdGFDb250ZXh0OiBGRHJhZ2dhYmxlRGF0YUNvbnRleHQsXG4gICAgcHJpdmF0ZSBmRXh0ZXJuYWxJdGVtU2VydmljZTogRkV4dGVybmFsSXRlbVNlcnZpY2VcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IEV4dGVybmFsSXRlbVByZXBhcmF0aW9uUmVxdWVzdCk6IHZvaWQge1xuXG4gICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQub25Qb2ludGVyRG93blNjYWxlID0gMTtcblxuICAgIHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0Lm9uUG9pbnRlckRvd25Qb3NpdGlvbiA9IFBvaW50LmZyb21Qb2ludChyZXF1ZXN0LmV2ZW50LmdldFBvc2l0aW9uKCkpLmVsZW1lbnRUcmFuc2Zvcm0odGhpcy5mbG93SG9zdCk7XG5cbiAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5kcmFnZ2FibGVJdGVtcyA9IFtcbiAgICAgIG5ldyBFeHRlcm5hbEl0ZW1EcmFnSGFuZGxlcih0aGlzLmdldEV4dGVybmFsSXRlbShyZXF1ZXN0LmV2ZW50LnRhcmdldEVsZW1lbnQpKVxuICAgIF07XG4gIH1cblxuICBwcml2YXRlIGdldEV4dGVybmFsSXRlbSh0YXJnZXRFbGVtZW50OiBIVE1MRWxlbWVudCk6IEZFeHRlcm5hbEl0ZW1CYXNlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmZFeHRlcm5hbEl0ZW1TZXJ2aWNlLmdldEl0ZW0oZ2V0RXh0ZXJuYWxJdGVtKHRhcmdldEVsZW1lbnQpKSE7XG4gIH1cbn1cbiJdfQ==
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtaXRlbS1wcmVwYXJhdGlvbi5leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2V4dGVybmFsLWl0ZW0vZXh0ZXJuYWwtaXRlbS1wcmVwYXJhdGlvbi9leHRlcm5hbC1pdGVtLXByZXBhcmF0aW9uLmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLHlCQUF5QixDQUFDO0FBR3pFLE9BQU8sRUFBMkMsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDcEcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0JBQStCLENBQUM7Ozs7O0FBSWpFLElBQU0sZ0NBQWdDLEdBQXRDLE1BQU0sZ0NBQWdDO0lBT2pDO0lBQ0E7SUFDQTtJQVBWLElBQVksUUFBUTtRQUNsQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFNLENBQUMsV0FBVyxDQUFDO0lBQ2xELENBQUM7SUFFRCxZQUNVLGdCQUFrQyxFQUNsQyxxQkFBNEMsRUFDNUMsb0JBQTBDO1FBRjFDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO0lBRXBELENBQUM7SUFFTSxNQUFNLENBQUMsT0FBdUM7UUFFbkQsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGtCQUFrQixHQUFHLENBQUMsQ0FBQztRQUVsRCxJQUFJLENBQUMscUJBQXFCLENBQUMscUJBQXFCLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRWhJLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxjQUFjLEdBQUc7WUFDMUMsSUFBSSx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDL0UsQ0FBQztJQUNKLENBQUM7SUFFTyxlQUFlLENBQUMsYUFBMEI7UUFDaEQsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsQ0FBRSxDQUFDO0lBQzVFLENBQUM7dUdBMUJVLGdDQUFnQzsyR0FBaEMsZ0NBQWdDOztBQUFoQyxnQ0FBZ0M7SUFENUMsa0JBQWtCLENBQUMsOEJBQThCLENBQUM7R0FDdEMsZ0NBQWdDLENBMkI1Qzs7MkZBM0JZLGdDQUFnQztrQkFGNUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEV4dGVybmFsSXRlbVByZXBhcmF0aW9uUmVxdWVzdCB9IGZyb20gJy4vZXh0ZXJuYWwtaXRlbS1wcmVwYXJhdGlvbi5yZXF1ZXN0JztcbmltcG9ydCB7IFBvaW50IH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbiB9IGZyb20gJy4uLy4uLy4uL2luZnJhc3RydWN0dXJlJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgRkRyYWdnYWJsZURhdGFDb250ZXh0IH0gZnJvbSAnLi4vLi4vZi1kcmFnZ2FibGUtZGF0YS1jb250ZXh0JztcbmltcG9ydCB7IEZFeHRlcm5hbEl0ZW1CYXNlLCBGRXh0ZXJuYWxJdGVtU2VydmljZSwgZ2V0RXh0ZXJuYWxJdGVtIH0gZnJvbSAnLi4vLi4vLi4vZi1leHRlcm5hbC1pdGVtJztcbmltcG9ydCB7IEV4dGVybmFsSXRlbURyYWdIYW5kbGVyIH0gZnJvbSAnLi4vZXh0ZXJuYWwtaXRlbS5kcmFnLWhhbmRsZXInO1xuXG5ASW5qZWN0YWJsZSgpXG5ARkV4ZWN1dGlvblJlZ2lzdGVyKEV4dGVybmFsSXRlbVByZXBhcmF0aW9uUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBFeHRlcm5hbEl0ZW1QcmVwYXJhdGlvbkV4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248RXh0ZXJuYWxJdGVtUHJlcGFyYXRpb25SZXF1ZXN0LCB2b2lkPiB7XG5cbiAgcHJpdmF0ZSBnZXQgZmxvd0hvc3QoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkZsb3chLmhvc3RFbGVtZW50O1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgIHByaXZhdGUgZkRyYWdnYWJsZURhdGFDb250ZXh0OiBGRHJhZ2dhYmxlRGF0YUNvbnRleHQsXG4gICAgcHJpdmF0ZSBmRXh0ZXJuYWxJdGVtU2VydmljZTogRkV4dGVybmFsSXRlbVNlcnZpY2VcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IEV4dGVybmFsSXRlbVByZXBhcmF0aW9uUmVxdWVzdCk6IHZvaWQge1xuXG4gICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQub25Qb2ludGVyRG93blNjYWxlID0gMTtcblxuICAgIHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0Lm9uUG9pbnRlckRvd25Qb3NpdGlvbiA9IFBvaW50LmZyb21Qb2ludChyZXF1ZXN0LmV2ZW50LmdldFBvc2l0aW9uKCkpLmVsZW1lbnRUcmFuc2Zvcm0odGhpcy5mbG93SG9zdCk7XG5cbiAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5kcmFnZ2FibGVJdGVtcyA9IFtcbiAgICAgIG5ldyBFeHRlcm5hbEl0ZW1EcmFnSGFuZGxlcih0aGlzLmdldEV4dGVybmFsSXRlbShyZXF1ZXN0LmV2ZW50LnRhcmdldEVsZW1lbnQpKVxuICAgIF07XG4gIH1cblxuICBwcml2YXRlIGdldEV4dGVybmFsSXRlbSh0YXJnZXRFbGVtZW50OiBIVE1MRWxlbWVudCk6IEZFeHRlcm5hbEl0ZW1CYXNlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmZFeHRlcm5hbEl0ZW1TZXJ2aWNlLmdldEl0ZW0oZ2V0RXh0ZXJuYWxJdGVtKHRhcmdldEVsZW1lbnQpKSE7XG4gIH1cbn1cbiJdfQ==
@@ -1,6 +1,7 @@
1
1
  export class ExternalItemPreparationRequest {
2
+ event;
2
3
  constructor(event) {
3
4
  this.event = event;
4
5
  }
5
6
  }
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtaXRlbS1wcmVwYXJhdGlvbi5yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9leHRlcm5hbC1pdGVtL2V4dGVybmFsLWl0ZW0tcHJlcGFyYXRpb24vZXh0ZXJuYWwtaXRlbS1wcmVwYXJhdGlvbi5yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyw4QkFBOEI7SUFFekMsWUFDUyxLQUFvQjtRQUFwQixVQUFLLEdBQUwsS0FBSyxDQUFlO0lBRTdCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElQb2ludGVyRXZlbnQgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuXG5leHBvcnQgY2xhc3MgRXh0ZXJuYWxJdGVtUHJlcGFyYXRpb25SZXF1ZXN0IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZXZlbnQ6IElQb2ludGVyRXZlbnRcbiAgKSB7XG4gIH1cbn1cbiJdfQ==
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtaXRlbS1wcmVwYXJhdGlvbi5yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9leHRlcm5hbC1pdGVtL2V4dGVybmFsLWl0ZW0tcHJlcGFyYXRpb24vZXh0ZXJuYWwtaXRlbS1wcmVwYXJhdGlvbi5yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyw4QkFBOEI7SUFHaEM7SUFEVCxZQUNTLEtBQW9CO1FBQXBCLFVBQUssR0FBTCxLQUFLLENBQWU7SUFFN0IsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVBvaW50ZXJFdmVudCB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5cbmV4cG9ydCBjbGFzcyBFeHRlcm5hbEl0ZW1QcmVwYXJhdGlvblJlcXVlc3Qge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBldmVudDogSVBvaW50ZXJFdmVudFxuICApIHtcbiAgfVxufVxuIl19
@@ -6,6 +6,7 @@ import { getExternalItem, isExternalItem } from '../../../f-external-item';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "../../../f-external-item";
8
8
  let ExternalItemPreparationValidator = class ExternalItemPreparationValidator {
9
+ fExternalItemService;
9
10
  constructor(fExternalItemService) {
10
11
  this.fExternalItemService = fExternalItemService;
11
12
  }
@@ -16,14 +17,14 @@ let ExternalItemPreparationValidator = class ExternalItemPreparationValidator {
16
17
  getExternalItem(targetElement) {
17
18
  return this.fExternalItemService.getItem(getExternalItem(targetElement));
18
19
  }
19
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: ExternalItemPreparationValidator, deps: [{ token: i1.FExternalItemService }], target: i0.ɵɵFactoryTarget.Injectable }); }
20
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: ExternalItemPreparationValidator }); }
20
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ExternalItemPreparationValidator, deps: [{ token: i1.FExternalItemService }], target: i0.ɵɵFactoryTarget.Injectable });
21
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ExternalItemPreparationValidator });
21
22
  };
22
23
  ExternalItemPreparationValidator = __decorate([
23
24
  FValidatorRegister(ExternalItemPreparationRequest)
24
25
  ], ExternalItemPreparationValidator);
25
26
  export { ExternalItemPreparationValidator };
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: ExternalItemPreparationValidator, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ExternalItemPreparationValidator, decorators: [{
27
28
  type: Injectable
28
29
  }], ctorParameters: () => [{ type: i1.FExternalItemService }] });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtaXRlbS1wcmVwYXJhdGlvbi52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2V4dGVybmFsLWl0ZW0vZXh0ZXJuYWwtaXRlbS1wcmVwYXJhdGlvbi9leHRlcm5hbC1pdGVtLXByZXBhcmF0aW9uLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRixPQUFPLEVBQUUsa0JBQWtCLEVBQWMsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RSxPQUFPLEVBQTJDLGVBQWUsRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7O0FBSTdHLElBQU0sZ0NBQWdDLEdBQXRDLE1BQU0sZ0NBQWdDO0lBRzNDLFlBQ1Usb0JBQTBDO1FBQTFDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7SUFFcEQsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUF1QztRQUNuRCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdkUsT0FBTyxjQUFjLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsWUFBWSxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQztJQUNsRyxDQUFDO0lBRU8sZUFBZSxDQUFDLGFBQTBCO1FBQ2hELE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztJQUMzRSxDQUFDOytHQWZVLGdDQUFnQzttSEFBaEMsZ0NBQWdDOztBQUFoQyxnQ0FBZ0M7SUFENUMsa0JBQWtCLENBQUMsOEJBQThCLENBQUM7R0FDdEMsZ0NBQWdDLENBZ0I1Qzs7NEZBaEJZLGdDQUFnQztrQkFGNUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEV4dGVybmFsSXRlbVByZXBhcmF0aW9uUmVxdWVzdCB9IGZyb20gJy4vZXh0ZXJuYWwtaXRlbS1wcmVwYXJhdGlvbi5yZXF1ZXN0JztcbmltcG9ydCB7IEZWYWxpZGF0b3JSZWdpc3RlciwgSVZhbGlkYXRvciB9IGZyb20gJy4uLy4uLy4uL2luZnJhc3RydWN0dXJlJztcbmltcG9ydCB7IEZFeHRlcm5hbEl0ZW1CYXNlLCBGRXh0ZXJuYWxJdGVtU2VydmljZSwgZ2V0RXh0ZXJuYWxJdGVtLCBpc0V4dGVybmFsSXRlbSB9IGZyb20gJy4uLy4uLy4uL2YtZXh0ZXJuYWwtaXRlbSc7XG5cbkBJbmplY3RhYmxlKClcbkBGVmFsaWRhdG9yUmVnaXN0ZXIoRXh0ZXJuYWxJdGVtUHJlcGFyYXRpb25SZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIEV4dGVybmFsSXRlbVByZXBhcmF0aW9uVmFsaWRhdG9yIGltcGxlbWVudHMgSVZhbGlkYXRvcjxFeHRlcm5hbEl0ZW1QcmVwYXJhdGlvblJlcXVlc3Q+IHtcblxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZkV4dGVybmFsSXRlbVNlcnZpY2U6IEZFeHRlcm5hbEl0ZW1TZXJ2aWNlXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBFeHRlcm5hbEl0ZW1QcmVwYXJhdGlvblJlcXVlc3QpOiBib29sZWFuIHtcbiAgICBjb25zdCBleHRlcm5hbEl0ZW0gPSB0aGlzLmdldEV4dGVybmFsSXRlbShyZXF1ZXN0LmV2ZW50LnRhcmdldEVsZW1lbnQpO1xuICAgIHJldHVybiBpc0V4dGVybmFsSXRlbShyZXF1ZXN0LmV2ZW50LnRhcmdldEVsZW1lbnQpICYmICEhZXh0ZXJuYWxJdGVtICYmICFleHRlcm5hbEl0ZW0uZkRpc2FibGVkO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRFeHRlcm5hbEl0ZW0odGFyZ2V0RWxlbWVudDogSFRNTEVsZW1lbnQpOiBGRXh0ZXJuYWxJdGVtQmFzZTxhbnk+IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5mRXh0ZXJuYWxJdGVtU2VydmljZS5nZXRJdGVtKGdldEV4dGVybmFsSXRlbSh0YXJnZXRFbGVtZW50KSk7XG4gIH1cbn1cbiJdfQ==
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtaXRlbS1wcmVwYXJhdGlvbi52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2V4dGVybmFsLWl0ZW0vZXh0ZXJuYWwtaXRlbS1wcmVwYXJhdGlvbi9leHRlcm5hbC1pdGVtLXByZXBhcmF0aW9uLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRixPQUFPLEVBQUUsa0JBQWtCLEVBQWMsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RSxPQUFPLEVBQTJDLGVBQWUsRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7O0FBSTdHLElBQU0sZ0NBQWdDLEdBQXRDLE1BQU0sZ0NBQWdDO0lBSWpDO0lBRFYsWUFDVSxvQkFBMEM7UUFBMUMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtJQUVwRCxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQXVDO1FBQ25ELE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN2RSxPQUFPLGNBQWMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxZQUFZLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDO0lBQ2xHLENBQUM7SUFFTyxlQUFlLENBQUMsYUFBMEI7UUFDaEQsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQzNFLENBQUM7dUdBZlUsZ0NBQWdDOzJHQUFoQyxnQ0FBZ0M7O0FBQWhDLGdDQUFnQztJQUQ1QyxrQkFBa0IsQ0FBQyw4QkFBOEIsQ0FBQztHQUN0QyxnQ0FBZ0MsQ0FnQjVDOzsyRkFoQlksZ0NBQWdDO2tCQUY1QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRXh0ZXJuYWxJdGVtUHJlcGFyYXRpb25SZXF1ZXN0IH0gZnJvbSAnLi9leHRlcm5hbC1pdGVtLXByZXBhcmF0aW9uLnJlcXVlc3QnO1xuaW1wb3J0IHsgRlZhbGlkYXRvclJlZ2lzdGVyLCBJVmFsaWRhdG9yIH0gZnJvbSAnLi4vLi4vLi4vaW5mcmFzdHJ1Y3R1cmUnO1xuaW1wb3J0IHsgRkV4dGVybmFsSXRlbUJhc2UsIEZFeHRlcm5hbEl0ZW1TZXJ2aWNlLCBnZXRFeHRlcm5hbEl0ZW0sIGlzRXh0ZXJuYWxJdGVtIH0gZnJvbSAnLi4vLi4vLi4vZi1leHRlcm5hbC1pdGVtJztcblxuQEluamVjdGFibGUoKVxuQEZWYWxpZGF0b3JSZWdpc3RlcihFeHRlcm5hbEl0ZW1QcmVwYXJhdGlvblJlcXVlc3QpXG5leHBvcnQgY2xhc3MgRXh0ZXJuYWxJdGVtUHJlcGFyYXRpb25WYWxpZGF0b3IgaW1wbGVtZW50cyBJVmFsaWRhdG9yPEV4dGVybmFsSXRlbVByZXBhcmF0aW9uUmVxdWVzdD4ge1xuXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmRXh0ZXJuYWxJdGVtU2VydmljZTogRkV4dGVybmFsSXRlbVNlcnZpY2VcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IEV4dGVybmFsSXRlbVByZXBhcmF0aW9uUmVxdWVzdCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGV4dGVybmFsSXRlbSA9IHRoaXMuZ2V0RXh0ZXJuYWxJdGVtKHJlcXVlc3QuZXZlbnQudGFyZ2V0RWxlbWVudCk7XG4gICAgcmV0dXJuIGlzRXh0ZXJuYWxJdGVtKHJlcXVlc3QuZXZlbnQudGFyZ2V0RWxlbWVudCkgJiYgISFleHRlcm5hbEl0ZW0gJiYgIWV4dGVybmFsSXRlbS5mRGlzYWJsZWQ7XG4gIH1cblxuICBwcml2YXRlIGdldEV4dGVybmFsSXRlbSh0YXJnZXRFbGVtZW50OiBIVE1MRWxlbWVudCk6IEZFeHRlcm5hbEl0ZW1CYXNlPGFueT4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmZFeHRlcm5hbEl0ZW1TZXJ2aWNlLmdldEl0ZW0oZ2V0RXh0ZXJuYWxJdGVtKHRhcmdldEVsZW1lbnQpKTtcbiAgfVxufVxuIl19
@@ -1,11 +1,13 @@
1
1
  import { DomElementExtensions, Point, PointExtensions, RectExtensions } from '@foblex/core';
2
2
  import { EFDraggableType } from '../e-f-draggable-type';
3
3
  export class ExternalItemDragHandler {
4
+ externalItem;
5
+ type = EFDraggableType.PALETTE_ITEM;
6
+ placeholder;
7
+ onPointerDownRect = RectExtensions.initialize();
8
+ difference = PointExtensions.initialize();
4
9
  constructor(externalItem) {
5
10
  this.externalItem = externalItem;
6
- this.type = EFDraggableType.PALETTE_ITEM;
7
- this.onPointerDownRect = RectExtensions.initialize();
8
- this.difference = PointExtensions.initialize();
9
11
  }
10
12
  getStyle(position) {
11
13
  return `position: absolute; left: 0; top: 0; transform: translate(${position.x}px, ${position.y}px)`;
@@ -33,4 +35,4 @@ export class ExternalItemDragHandler {
33
35
  document.body.removeChild(this.placeholder);
34
36
  }
35
37
  }
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtaXRlbS5kcmFnLWhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2V4dGVybmFsLWl0ZW0vZXh0ZXJuYWwtaXRlbS5kcmFnLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFpQixLQUFLLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUUzRyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFHeEQsTUFBTSxPQUFPLHVCQUF1QjtJQVVsQyxZQUNTLFlBQStCO1FBQS9CLGlCQUFZLEdBQVosWUFBWSxDQUFtQjtRQVR4QixTQUFJLEdBQUcsZUFBZSxDQUFDLFlBQVksQ0FBQztRQUk1QyxzQkFBaUIsR0FBVSxjQUFjLENBQUMsVUFBVSxFQUFFLENBQUM7UUFFdkQsZUFBVSxHQUFXLGVBQWUsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUsxRCxDQUFDO0lBRU8sUUFBUSxDQUFDLFFBQWdCO1FBQy9CLE9BQU8sNkRBQThELFFBQVEsQ0FBQyxDQUFFLE9BQVEsUUFBUSxDQUFDLENBQUUsS0FBSyxDQUFDO0lBQzNHLENBQUM7SUFFTSxVQUFVO1FBQ2YsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQ3BELElBQUksQ0FBQyxXQUFXLEdBQUcsb0JBQW9CLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDckYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDL0YsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFTyxtQkFBbUI7UUFDekIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUNuRSxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsV0FBVyxJQUFJLFFBQVEsQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDO1FBQzNFLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxXQUFXLElBQUksUUFBUSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUM7UUFDN0UsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEdBQUcsR0FBRyxTQUFTLENBQUM7UUFDdkMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxVQUFVLENBQUM7UUFDMUMsT0FBTyxjQUFjLENBQUMsVUFBVSxDQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVNLElBQUksQ0FBQyxVQUFrQjtRQUM1QixJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUM3QixNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDOUUsSUFBSSxDQUFDLFdBQVksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRU0sUUFBUTtRQUNiLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFZLENBQUMsQ0FBQztJQUMvQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEb21FbGVtZW50RXh0ZW5zaW9ucywgSVBvaW50LCBJUmVjdCwgUG9pbnQsIFBvaW50RXh0ZW5zaW9ucywgUmVjdEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuaW1wb3J0IHsgSURyYWdnYWJsZUl0ZW0gfSBmcm9tICcuLi9pLWRyYWdnYWJsZS1pdGVtJztcbmltcG9ydCB7IEVGRHJhZ2dhYmxlVHlwZSB9IGZyb20gJy4uL2UtZi1kcmFnZ2FibGUtdHlwZSc7XG5pbXBvcnQgeyBGRXh0ZXJuYWxJdGVtQmFzZSB9IGZyb20gJy4uLy4uL2YtZXh0ZXJuYWwtaXRlbSc7XG5cbmV4cG9ydCBjbGFzcyBFeHRlcm5hbEl0ZW1EcmFnSGFuZGxlciBpbXBsZW1lbnRzIElEcmFnZ2FibGVJdGVtIHtcblxuICBwdWJsaWMgcmVhZG9ubHkgdHlwZSA9IEVGRHJhZ2dhYmxlVHlwZS5QQUxFVFRFX0lURU07XG5cbiAgcHVibGljIHBsYWNlaG9sZGVyOiBIVE1MRWxlbWVudCB8IFNWR0VsZW1lbnQgfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBvblBvaW50ZXJEb3duUmVjdDogSVJlY3QgPSBSZWN0RXh0ZW5zaW9ucy5pbml0aWFsaXplKCk7XG5cbiAgcHJpdmF0ZSBkaWZmZXJlbmNlOiBJUG9pbnQgPSBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBleHRlcm5hbEl0ZW06IEZFeHRlcm5hbEl0ZW1CYXNlXG4gICkge1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRTdHlsZShwb3NpdGlvbjogSVBvaW50KTogc3RyaW5nIHtcbiAgICByZXR1cm4gYHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMDsgdG9wOiAwOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeyBwb3NpdGlvbi54IH1weCwgJHsgcG9zaXRpb24ueSB9cHgpYDtcbiAgfVxuXG4gIHB1YmxpYyBpbml0aWFsaXplKCk6IHZvaWQge1xuICAgIHRoaXMub25Qb2ludGVyRG93blJlY3QgPSB0aGlzLmdldEV4dGVybmFsSXRlbVJlY3QoKTtcbiAgICB0aGlzLnBsYWNlaG9sZGVyID0gRG9tRWxlbWVudEV4dGVuc2lvbnMuZGVlcENsb25lTm9kZSh0aGlzLmV4dGVybmFsSXRlbS5ob3N0RWxlbWVudCk7XG4gICAgdGhpcy5wbGFjZWhvbGRlci5zZXRBdHRyaWJ1dGUoJ3N0eWxlJywgdGhpcy5nZXRTdHlsZShQb2ludC5mcm9tUG9pbnQodGhpcy5vblBvaW50ZXJEb3duUmVjdCkpKTtcbiAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHRoaXMucGxhY2Vob2xkZXIpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRFeHRlcm5hbEl0ZW1SZWN0KCk6IElSZWN0IHtcbiAgICBjb25zdCByZWN0ID0gdGhpcy5leHRlcm5hbEl0ZW0uaG9zdEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgY29uc3Qgc2Nyb2xsVG9wID0gd2luZG93LnBhZ2VZT2Zmc2V0IHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3A7XG4gICAgY29uc3Qgc2Nyb2xsTGVmdCA9IHdpbmRvdy5wYWdlWE9mZnNldCB8fCBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsTGVmdDtcbiAgICBjb25zdCBvZmZzZXRUb3AgPSByZWN0LnRvcCArIHNjcm9sbFRvcDtcbiAgICBjb25zdCBvZmZzZXRMZWZ0ID0gcmVjdC5sZWZ0ICsgc2Nyb2xsTGVmdDtcbiAgICByZXR1cm4gUmVjdEV4dGVuc2lvbnMuaW5pdGlhbGl6ZShvZmZzZXRMZWZ0LCBvZmZzZXRUb3AsIHJlY3Qud2lkdGgsIHJlY3QuaGVpZ2h0KTtcbiAgfVxuXG4gIHB1YmxpYyBtb3ZlKGRpZmZlcmVuY2U6IElQb2ludCk6IHZvaWQge1xuICAgIHRoaXMuZGlmZmVyZW5jZSA9IGRpZmZlcmVuY2U7XG4gICAgY29uc3QgcG9zaXRpb24gPSBQb2ludC5mcm9tUG9pbnQodGhpcy5vblBvaW50ZXJEb3duUmVjdCkuYWRkKHRoaXMuZGlmZmVyZW5jZSk7XG4gICAgdGhpcy5wbGFjZWhvbGRlciEuc2V0QXR0cmlidXRlKCdzdHlsZScsIHRoaXMuZ2V0U3R5bGUocG9zaXRpb24pKTtcbiAgfVxuXG4gIHB1YmxpYyBjb21wbGV0ZSgpOiB2b2lkIHtcbiAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHRoaXMucGxhY2Vob2xkZXIhKTtcbiAgfVxufVxuIl19
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtaXRlbS5kcmFnLWhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2V4dGVybmFsLWl0ZW0vZXh0ZXJuYWwtaXRlbS5kcmFnLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFpQixLQUFLLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUUzRyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFHeEQsTUFBTSxPQUFPLHVCQUF1QjtJQVd6QjtJQVRPLElBQUksR0FBRyxlQUFlLENBQUMsWUFBWSxDQUFDO0lBRTdDLFdBQVcsQ0FBdUM7SUFFakQsaUJBQWlCLEdBQVUsY0FBYyxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBRXZELFVBQVUsR0FBVyxlQUFlLENBQUMsVUFBVSxFQUFFLENBQUM7SUFFMUQsWUFDUyxZQUErQjtRQUEvQixpQkFBWSxHQUFaLFlBQVksQ0FBbUI7SUFFeEMsQ0FBQztJQUVPLFFBQVEsQ0FBQyxRQUFnQjtRQUMvQixPQUFPLDZEQUE4RCxRQUFRLENBQUMsQ0FBRSxPQUFRLFFBQVEsQ0FBQyxDQUFFLEtBQUssQ0FBQztJQUMzRyxDQUFDO0lBRU0sVUFBVTtRQUNmLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUNwRCxJQUFJLENBQUMsV0FBVyxHQUFHLG9CQUFvQixDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3JGLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9GLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRU8sbUJBQW1CO1FBQ3pCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDbkUsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLFdBQVcsSUFBSSxRQUFRLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQztRQUMzRSxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsV0FBVyxJQUFJLFFBQVEsQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDO1FBQzdFLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxHQUFHLEdBQUcsU0FBUyxDQUFDO1FBQ3ZDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsVUFBVSxDQUFDO1FBQzFDLE9BQU8sY0FBYyxDQUFDLFVBQVUsQ0FBQyxVQUFVLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ25GLENBQUM7SUFFTSxJQUFJLENBQUMsVUFBa0I7UUFDNUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDN0IsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzlFLElBQUksQ0FBQyxXQUFZLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVNLFFBQVE7UUFDYixRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsV0FBWSxDQUFDLENBQUM7SUFDL0MsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRG9tRWxlbWVudEV4dGVuc2lvbnMsIElQb2ludCwgSVJlY3QsIFBvaW50LCBQb2ludEV4dGVuc2lvbnMsIFJlY3RFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IElEcmFnZ2FibGVJdGVtIH0gZnJvbSAnLi4vaS1kcmFnZ2FibGUtaXRlbSc7XG5pbXBvcnQgeyBFRkRyYWdnYWJsZVR5cGUgfSBmcm9tICcuLi9lLWYtZHJhZ2dhYmxlLXR5cGUnO1xuaW1wb3J0IHsgRkV4dGVybmFsSXRlbUJhc2UgfSBmcm9tICcuLi8uLi9mLWV4dGVybmFsLWl0ZW0nO1xuXG5leHBvcnQgY2xhc3MgRXh0ZXJuYWxJdGVtRHJhZ0hhbmRsZXIgaW1wbGVtZW50cyBJRHJhZ2dhYmxlSXRlbSB7XG5cbiAgcHVibGljIHJlYWRvbmx5IHR5cGUgPSBFRkRyYWdnYWJsZVR5cGUuUEFMRVRURV9JVEVNO1xuXG4gIHB1YmxpYyBwbGFjZWhvbGRlcjogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50IHwgdW5kZWZpbmVkO1xuXG4gIHByaXZhdGUgb25Qb2ludGVyRG93blJlY3Q6IElSZWN0ID0gUmVjdEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpO1xuXG4gIHByaXZhdGUgZGlmZmVyZW5jZTogSVBvaW50ID0gUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZXh0ZXJuYWxJdGVtOiBGRXh0ZXJuYWxJdGVtQmFzZVxuICApIHtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0U3R5bGUocG9zaXRpb246IElQb2ludCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDA7IHRvcDogMDsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHsgcG9zaXRpb24ueCB9cHgsICR7IHBvc2l0aW9uLnkgfXB4KWA7XG4gIH1cblxuICBwdWJsaWMgaW5pdGlhbGl6ZSgpOiB2b2lkIHtcbiAgICB0aGlzLm9uUG9pbnRlckRvd25SZWN0ID0gdGhpcy5nZXRFeHRlcm5hbEl0ZW1SZWN0KCk7XG4gICAgdGhpcy5wbGFjZWhvbGRlciA9IERvbUVsZW1lbnRFeHRlbnNpb25zLmRlZXBDbG9uZU5vZGUodGhpcy5leHRlcm5hbEl0ZW0uaG9zdEVsZW1lbnQpO1xuICAgIHRoaXMucGxhY2Vob2xkZXIuc2V0QXR0cmlidXRlKCdzdHlsZScsIHRoaXMuZ2V0U3R5bGUoUG9pbnQuZnJvbVBvaW50KHRoaXMub25Qb2ludGVyRG93blJlY3QpKSk7XG4gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0aGlzLnBsYWNlaG9sZGVyKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RXh0ZXJuYWxJdGVtUmVjdCgpOiBJUmVjdCB7XG4gICAgY29uc3QgcmVjdCA9IHRoaXMuZXh0ZXJuYWxJdGVtLmhvc3RFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIGNvbnN0IHNjcm9sbFRvcCA9IHdpbmRvdy5wYWdlWU9mZnNldCB8fCBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wO1xuICAgIGNvbnN0IHNjcm9sbExlZnQgPSB3aW5kb3cucGFnZVhPZmZzZXQgfHwgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbExlZnQ7XG4gICAgY29uc3Qgb2Zmc2V0VG9wID0gcmVjdC50b3AgKyBzY3JvbGxUb3A7XG4gICAgY29uc3Qgb2Zmc2V0TGVmdCA9IHJlY3QubGVmdCArIHNjcm9sbExlZnQ7XG4gICAgcmV0dXJuIFJlY3RFeHRlbnNpb25zLmluaXRpYWxpemUob2Zmc2V0TGVmdCwgb2Zmc2V0VG9wLCByZWN0LndpZHRoLCByZWN0LmhlaWdodCk7XG4gIH1cblxuICBwdWJsaWMgbW92ZShkaWZmZXJlbmNlOiBJUG9pbnQpOiB2b2lkIHtcbiAgICB0aGlzLmRpZmZlcmVuY2UgPSBkaWZmZXJlbmNlO1xuICAgIGNvbnN0IHBvc2l0aW9uID0gUG9pbnQuZnJvbVBvaW50KHRoaXMub25Qb2ludGVyRG93blJlY3QpLmFkZCh0aGlzLmRpZmZlcmVuY2UpO1xuICAgIHRoaXMucGxhY2Vob2xkZXIhLnNldEF0dHJpYnV0ZSgnc3R5bGUnLCB0aGlzLmdldFN0eWxlKHBvc2l0aW9uKSk7XG4gIH1cblxuICBwdWJsaWMgY29tcGxldGUoKTogdm9pZCB7XG4gICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZCh0aGlzLnBsYWNlaG9sZGVyISk7XG4gIH1cbn1cbiJdfQ==
@@ -1,7 +1,9 @@
1
1
  export class FCreateNodeEvent {
2
+ rect;
3
+ data;
2
4
  constructor(rect, data) {
3
5
  this.rect = rect;
4
6
  this.data = data;
5
7
  }
6
8
  }
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jcmVhdGUtbm9kZS5ldmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZXh0ZXJuYWwtaXRlbS9mLWNyZWF0ZS1ub2RlLmV2ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxnQkFBZ0I7SUFFM0IsWUFDUyxJQUFXLEVBQ1gsSUFBVztRQURYLFNBQUksR0FBSixJQUFJLENBQU87UUFDWCxTQUFJLEdBQUosSUFBSSxDQUFPO0lBRXBCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElSZWN0IH0gZnJvbSAnQGZvYmxleC9jb3JlJztcblxuZXhwb3J0IGNsYXNzIEZDcmVhdGVOb2RlRXZlbnQ8VERhdGEgPSBhbnk+IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVjdDogSVJlY3QsXG4gICAgcHVibGljIGRhdGE6IFREYXRhLFxuICApIHtcbiAgfVxufVxuIl19
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jcmVhdGUtbm9kZS5ldmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZXh0ZXJuYWwtaXRlbS9mLWNyZWF0ZS1ub2RlLmV2ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxnQkFBZ0I7SUFHbEI7SUFDQTtJQUZULFlBQ1MsSUFBVyxFQUNYLElBQVc7UUFEWCxTQUFJLEdBQUosSUFBSSxDQUFPO1FBQ1gsU0FBSSxHQUFKLElBQUksQ0FBTztJQUVwQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJUmVjdCB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5cbmV4cG9ydCBjbGFzcyBGQ3JlYXRlTm9kZUV2ZW50PFREYXRhID0gYW55PiB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlY3Q6IElSZWN0LFxuICAgIHB1YmxpYyBkYXRhOiBURGF0YSxcbiAgKSB7XG4gIH1cbn1cbiJdfQ==
@@ -4,89 +4,79 @@ import * as i0 from "@angular/core";
4
4
  export const F_DRAGGABLE = new InjectionToken('F_DRAGGABLE');
5
5
  export const MOUSE_EVENT_IGNORE_TIME = 800;
6
6
  export class FDraggableBase {
7
+ ngZone;
8
+ document;
9
+ mouseListeners = EventExtensions.emptyListener();
10
+ touchListeners = EventExtensions.emptyListener();
11
+ startListeners = EventExtensions.emptyListener();
7
12
  isSyntheticEvent(event) {
8
13
  return !!this.lastTouchEventTime &&
9
14
  (this.lastTouchEventTime + MOUSE_EVENT_IGNORE_TIME > Date.now());
10
15
  }
16
+ lastTouchEventTime = 0;
17
+ isDragStarted = false;
18
+ dragStartThreshold = 3;
19
+ dragStartDelay = 0;
20
+ dragStartTime = 0;
21
+ dragStartPosition = PointExtensions.initialize();
22
+ moveHandler = this.checkDragSequenceToStart;
11
23
  constructor(ngZone) {
12
24
  this.ngZone = ngZone;
13
- this.mouseListeners = EventExtensions.emptyListener();
14
- this.touchListeners = EventExtensions.emptyListener();
15
- this.startListeners = EventExtensions.emptyListener();
16
- this.lastTouchEventTime = 0;
17
- this.isDragStarted = false;
18
- this.dragStartThreshold = 3;
19
- this.dragStartDelay = 0;
20
- this.dragStartTime = 0;
21
- this.dragStartPosition = PointExtensions.initialize();
22
- this.moveHandler = this.checkDragSequenceToStart;
23
- this.onMouseDown = (event) => {
24
- const isSyntheticEvent = this.isSyntheticEvent(event);
25
- const isFakeEvent = isFakeMousedownFromScreenReader(event);
26
- const mouseEvent = new IMouseEvent(event);
27
- if (isSyntheticEvent || isFakeEvent || this.disabled) {
28
- return;
29
- }
30
- let result = this.onPointerDown(mouseEvent);
31
- if (result) {
32
- this.dragStartTime = Date.now();
33
- this.dragStartPosition = mouseEvent.getPosition();
34
- this.ngZone.runOutsideAngular(() => {
35
- this.document?.addEventListener('selectstart', this.onSelectStart, EventExtensions.activeListener());
36
- this.document?.addEventListener('mousemove', this.onMouseMove);
37
- this.document?.addEventListener('mouseup', this.onMouseUp);
38
- });
39
- this.mouseListeners = () => {
40
- this.document?.removeEventListener('selectstart', this.onSelectStart, EventExtensions.activeListener());
41
- this.document?.removeEventListener('mousemove', this.onMouseMove);
42
- this.document?.removeEventListener('mouseup', this.onMouseUp);
43
- };
44
- }
45
- };
46
- this.onTouchDown = (event) => {
47
- const isFakeEvent = isFakeTouchstartFromScreenReader(event);
48
- const touchEvent = new ITouchDownEvent(event);
49
- if (isFakeEvent || this.disabled) {
50
- return;
51
- }
52
- let result = this.onPointerDown(new ITouchDownEvent(event));
53
- if (result) {
54
- this.dragStartTime = Date.now();
55
- this.dragStartPosition = touchEvent.getPosition();
56
- this.ngZone.runOutsideAngular(() => {
57
- this.document?.addEventListener('selectstart', this.onSelectStart, EventExtensions.activeListener());
58
- this.document?.addEventListener('touchmove', this.onTouchMove);
59
- this.document?.addEventListener('touchend', this.onTouchUp);
60
- });
61
- this.touchListeners = () => {
62
- this.document?.removeEventListener('selectstart', this.onSelectStart, EventExtensions.activeListener());
63
- this.document?.removeEventListener('touchmove', this.onTouchMove);
64
- this.document?.removeEventListener('touchend', this.onTouchUp);
65
- };
66
- }
67
- };
68
- this.onSelectStart = (event) => {
69
- this.onSelect(event);
70
- };
71
- this.onMouseMove = (event) => {
72
- this.moveHandler(new IMouseEvent(event));
73
- };
74
- this.onTouchMove = (event) => {
75
- this.moveHandler(new ITouchMoveEvent(event));
76
- };
77
- this.onMouseUp = (event) => {
78
- if (this.isDragStarted) {
79
- this.onPointerUp(new IMouseEvent(event));
80
- }
81
- this.endDragSequence();
82
- };
83
- this.onTouchUp = (event) => {
84
- if (this.isDragStarted) {
85
- this.onPointerUp(new ITouchUpEvent(event));
86
- }
87
- this.endDragSequence();
88
- };
89
25
  }
26
+ onMouseDown = (event) => {
27
+ const isSyntheticEvent = this.isSyntheticEvent(event);
28
+ const isFakeEvent = isFakeMousedownFromScreenReader(event);
29
+ const mouseEvent = new IMouseEvent(event);
30
+ if (isSyntheticEvent || isFakeEvent || this.disabled) {
31
+ return;
32
+ }
33
+ let result = this.onPointerDown(mouseEvent);
34
+ if (result) {
35
+ this.dragStartTime = Date.now();
36
+ this.dragStartPosition = mouseEvent.getPosition();
37
+ this.ngZone.runOutsideAngular(() => {
38
+ this.document?.addEventListener('selectstart', this.onSelectStart, EventExtensions.activeListener());
39
+ this.document?.addEventListener('mousemove', this.onMouseMove);
40
+ this.document?.addEventListener('mouseup', this.onMouseUp);
41
+ });
42
+ this.mouseListeners = () => {
43
+ this.document?.removeEventListener('selectstart', this.onSelectStart, EventExtensions.activeListener());
44
+ this.document?.removeEventListener('mousemove', this.onMouseMove);
45
+ this.document?.removeEventListener('mouseup', this.onMouseUp);
46
+ };
47
+ }
48
+ };
49
+ onTouchDown = (event) => {
50
+ const isFakeEvent = isFakeTouchstartFromScreenReader(event);
51
+ const touchEvent = new ITouchDownEvent(event);
52
+ if (isFakeEvent || this.disabled) {
53
+ return;
54
+ }
55
+ let result = this.onPointerDown(new ITouchDownEvent(event));
56
+ if (result) {
57
+ this.dragStartTime = Date.now();
58
+ this.dragStartPosition = touchEvent.getPosition();
59
+ this.ngZone.runOutsideAngular(() => {
60
+ this.document?.addEventListener('selectstart', this.onSelectStart, EventExtensions.activeListener());
61
+ this.document?.addEventListener('touchmove', this.onTouchMove);
62
+ this.document?.addEventListener('touchend', this.onTouchUp);
63
+ });
64
+ this.touchListeners = () => {
65
+ this.document?.removeEventListener('selectstart', this.onSelectStart, EventExtensions.activeListener());
66
+ this.document?.removeEventListener('touchmove', this.onTouchMove);
67
+ this.document?.removeEventListener('touchend', this.onTouchUp);
68
+ };
69
+ }
70
+ };
71
+ onSelectStart = (event) => {
72
+ this.onSelect(event);
73
+ };
74
+ onMouseMove = (event) => {
75
+ this.moveHandler(new IMouseEvent(event));
76
+ };
77
+ onTouchMove = (event) => {
78
+ this.moveHandler(new ITouchMoveEvent(event));
79
+ };
90
80
  checkDragSequenceToStart(event) {
91
81
  const pointerPosition = event.getPosition();
92
82
  if (!this.isDragStarted) {
@@ -109,6 +99,18 @@ export class FDraggableBase {
109
99
  }
110
100
  }
111
101
  }
102
+ onMouseUp = (event) => {
103
+ if (this.isDragStarted) {
104
+ this.onPointerUp(new IMouseEvent(event));
105
+ }
106
+ this.endDragSequence();
107
+ };
108
+ onTouchUp = (event) => {
109
+ if (this.isDragStarted) {
110
+ this.onPointerUp(new ITouchUpEvent(event));
111
+ }
112
+ this.endDragSequence();
113
+ };
112
114
  endDragSequence() {
113
115
  this.isDragStarted = false;
114
116
  this.moveHandler = this.checkDragSequenceToStart;
@@ -140,10 +142,10 @@ export class FDraggableBase {
140
142
  this.mouseListeners();
141
143
  this.mouseListeners = EventExtensions.emptyListener();
142
144
  }
143
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: FDraggableBase, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive }); }
144
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.11", type: FDraggableBase, ngImport: i0 }); }
145
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FDraggableBase, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
146
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.2", type: FDraggableBase, ngImport: i0 });
145
147
  }
146
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: FDraggableBase, decorators: [{
148
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FDraggableBase, decorators: [{
147
149
  type: Directive
148
150
  }], ctorParameters: () => [{ type: undefined }] });
149
151
  function isTouchEvent(event) {
@@ -159,4 +161,4 @@ function isFakeTouchstartFromScreenReader(event) {
159
161
  (touch.radiusX == null || touch.radiusX === 1) &&
160
162
  (touch.radiusY == null || touch.radiusY === 1));
161
163
  }
162
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1kcmFnZ2FibGUtYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1kcmFnZ2FibGUtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsZUFBZSxFQUVmLFdBQVcsRUFHWCxlQUFlLEVBQ2YsZUFBZSxFQUNmLGFBQWEsRUFDYixlQUFlLEVBQ2hCLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxTQUFTLEVBQWdCLGNBQWMsR0FBRyxNQUFNLGVBQWUsQ0FBQzs7QUFNekUsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLElBQUksY0FBYyxDQUFpQixhQUFhLENBQUMsQ0FBQztBQUU3RSxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxHQUFHLENBQUM7QUFHM0MsTUFBTSxPQUFnQixjQUFjO0lBbUIzQixnQkFBZ0IsQ0FBQyxLQUFpQjtRQUN2QyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCO1lBQzlCLENBQUMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLHVCQUF1QixHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFlRCxZQUNZLE1BQTZCO1FBQTdCLFdBQU0sR0FBTixNQUFNLENBQXVCO1FBeEJqQyxtQkFBYyxHQUFhLGVBQWUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMzRCxtQkFBYyxHQUFhLGVBQWUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUUzRCxtQkFBYyxHQUFhLGVBQWUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQU8zRCx1QkFBa0IsR0FBVyxDQUFDLENBQUM7UUFFaEMsa0JBQWEsR0FBWSxLQUFLLENBQUM7UUFDOUIsdUJBQWtCLEdBQVcsQ0FBQyxDQUFDO1FBQy9CLG1CQUFjLEdBQVcsQ0FBQyxDQUFDO1FBRTNCLGtCQUFhLEdBQVcsQ0FBQyxDQUFDO1FBQzFCLHNCQUFpQixH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QUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsSUFBSSxLQUFLLENBQUMsY0FBYyxDQUFFLENBQUMsQ0FBRSxDQUFDLENBQUM7SUFDL0YsT0FBTyxDQUNMLENBQUMsQ0FBQyxLQUFLO1FBQ1AsS0FBSyxDQUFDLFVBQVUsS0FBSyxDQUFDLENBQUM7UUFDdkIsQ0FBQyxLQUFLLENBQUMsT0FBTyxJQUFJLElBQUksSUFBSSxLQUFLLENBQUMsT0FBTyxLQUFLLENBQUMsQ0FBQztRQUM5QyxDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksSUFBSSxJQUFJLEtBQUssQ0FBQyxPQUFPLEtBQUssQ0FBQyxDQUFDLENBQy9DLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRXZlbnRFeHRlbnNpb25zLFxuICBJSGFzSG9zdEVsZW1lbnQsXG4gIElNb3VzZUV2ZW50LFxuICBJUG9pbnQsXG4gIElQb2ludGVyRXZlbnQsXG4gIElUb3VjaERvd25FdmVudCxcbiAgSVRvdWNoTW92ZUV2ZW50LFxuICBJVG91Y2hVcEV2ZW50LFxuICBQb2ludEV4dGVuc2lvbnNcbn0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgRXZlbnRFbWl0dGVyLCBJbmplY3Rpb25Ub2tlbiwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZDcmVhdGVOb2RlRXZlbnQgfSBmcm9tICcuL2V4dGVybmFsLWl0ZW0nO1xuaW1wb3J0IHsgRkNyZWF0ZUNvbm5lY3Rpb25FdmVudCwgRlJlYXNzaWduQ29ubmVjdGlvbkV2ZW50IH0gZnJvbSAnLi9jb25uZWN0aW9ucyc7XG5pbXBvcnQgeyBGU2VsZWN0aW9uQ2hhbmdlRXZlbnQgfSBmcm9tICcuL2Ytc2VsZWN0aW9uLWNoYW5nZS1ldmVudCc7XG5pbXBvcnQgeyBJQ2FuUnVuT3V0c2lkZUFuZ3VsYXIgfSBmcm9tICcuL2ktY2FuLXJ1bi1vdXRzaWRlLWFuZ3VsYXInO1xuXG5leHBvcnQgY29uc3QgRl9EUkFHR0FCTEUgPSBuZXcgSW5qZWN0aW9uVG9rZW48RkRyYWdnYWJsZUJhc2U+KCdGX0RSQUdHQUJMRScpO1xuXG5leHBvcnQgY29uc3QgTU9VU0VfRVZFTlRfSUdOT1JFX1RJTUUgPSA4MDA7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEZEcmFnZ2FibGVCYXNlIGltcGxlbWVudHMgSUhhc0hvc3RFbGVtZW50IHtcblxuICBwdWJsaWMgYWJzdHJhY3QgaG9zdEVsZW1lbnQ6IEhUTUxFbGVtZW50O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmU2VsZWN0aW9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8RlNlbGVjdGlvbkNoYW5nZUV2ZW50PjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZkNyZWF0ZU5vZGU6IEV2ZW50RW1pdHRlcjxGQ3JlYXRlTm9kZUV2ZW50PjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZlJlYXNzaWduQ29ubmVjdGlvbjogRXZlbnRFbWl0dGVyPEZSZWFzc2lnbkNvbm5lY3Rpb25FdmVudD47XG5cbiAgcHVibGljIGFic3RyYWN0IGZDcmVhdGVDb25uZWN0aW9uOiBFdmVudEVtaXR0ZXI8RkNyZWF0ZUNvbm5lY3Rpb25FdmVudD47XG5cbiAgcHJpdmF0ZSBkb2N1bWVudDogRG9jdW1lbnQgfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBtb3VzZUxpc3RlbmVyczogRnVuY3Rpb24gPSBFdmVudEV4dGVuc2lvbnMuZW1wdHlMaXN0ZW5lcigpO1xuICBwcml2YXRlIHRvdWNoTGlzdGVuZXJzOiBGdW5jdGlvbiA9IEV2ZW50RXh0ZW5zaW9ucy5lbXB0eUxpc3RlbmVyKCk7XG5cbiAgcHJpdmF0ZSBzdGFydExpc3RlbmVyczogRnVuY3Rpb24gPSBFdmVudEV4dGVuc2lvbnMuZW1wdHlMaXN0ZW5lcigpO1xuXG4gIHB1YmxpYyBpc1N5bnRoZXRpY0V2ZW50KGV2ZW50OiBNb3VzZUV2ZW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5sYXN0VG91Y2hFdmVudFRpbWUgJiZcbiAgICAgICh0aGlzLmxhc3RUb3VjaEV2ZW50VGltZSArIE1PVVNFX0VWRU5UX0lHTk9SRV9USU1FID4gRGF0ZS5ub3coKSk7XG4gIH1cblxuICBwcml2YXRlIGxhc3RUb3VjaEV2ZW50VGltZTogbnVtYmVyID0gMDtcblxuICBwdWJsaWMgaXNEcmFnU3RhcnRlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBwcml2YXRlIGRyYWdTdGFydFRocmVzaG9sZDogbnVtYmVyID0gMztcbiAgcHJpdmF0ZSBkcmFnU3RhcnREZWxheTogbnVtYmVyID0gMDtcblxuICBwcml2YXRlIGRyYWdTdGFydFRpbWU6IG51bWJlciA9IDA7XG4gIHByaXZhdGUgZHJhZ1N0YXJ0UG9zaXRpb246IElQb2ludCA9IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCk7XG5cbiAgcHVibGljIGFic3RyYWN0IGRpc2FibGVkOiBib29sZWFuO1xuXG4gIHByaXZhdGUgbW92ZUhhbmRsZXI6IEZ1bmN0aW9uID0gdGhpcy5jaGVja0RyYWdTZXF1ZW5jZVRvU3RhcnQ7XG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBuZ1pvbmU6IElDYW5SdW5PdXRzaWRlQW5ndWxhclxuICApIHtcbiAgfVxuXG4gIHByaXZhdGUgb25Nb3VzZURvd24gPSAoZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHtcbiAgICBjb25zdCBpc1N5bnRoZXRpY0V2ZW50ID0gdGhpcy5pc1N5bnRoZXRpY0V2ZW50KGV2ZW50KTtcbiAgICBjb25zdCBpc0Zha2VFdmVudCA9IGlzRmFrZU1vdXNlZG93bkZyb21TY3JlZW5SZWFkZXIoZXZlbnQpO1xuICAgIGNvbnN0IG1vdXNlRXZlbnQgPSBuZXcgSU1vdXNlRXZlbnQoZXZlbnQpO1xuXG4gICAgaWYgKGlzU3ludGhldGljRXZlbnQgfHwgaXNGYWtlRXZlbnQgfHwgdGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBsZXQgcmVzdWx0ID0gdGhpcy5vblBvaW50ZXJEb3duKG1vdXNlRXZlbnQpO1xuICAgIGlmIChyZXN1bHQpIHtcblxuICAgICAgdGhpcy5kcmFnU3RhcnRUaW1lID0gRGF0ZS5ub3coKTtcbiAgICAgIHRoaXMuZHJhZ1N0YXJ0UG9zaXRpb24gPSBtb3VzZUV2ZW50LmdldFBvc2l0aW9uKCk7XG5cbiAgICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgdGhpcy5kb2N1bWVudD8uYWRkRXZlbnRMaXN0ZW5lcignc2VsZWN0c3RhcnQnLCB0aGlzLm9uU2VsZWN0U3RhcnQsIEV2ZW50RXh0ZW5zaW9ucy5hY3RpdmVMaXN0ZW5lcigpKTtcbiAgICAgICAgdGhpcy5kb2N1bWVudD8uYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vtb3ZlJywgdGhpcy5vbk1vdXNlTW92ZSk7XG4gICAgICAgIHRoaXMuZG9jdW1lbnQ/LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNldXAnLCB0aGlzLm9uTW91c2VVcCk7XG4gICAgICB9KTtcblxuICAgICAgdGhpcy5tb3VzZUxpc3RlbmVycyA9ICgpID0+IHtcbiAgICAgICAgdGhpcy5kb2N1bWVudD8ucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2VsZWN0c3RhcnQnLCB0aGlzLm9uU2VsZWN0U3RhcnQsIEV2ZW50RXh0ZW5zaW9ucy5hY3RpdmVMaXN0ZW5lcigpKTtcbiAgICAgICAgdGhpcy5kb2N1bWVudD8ucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2Vtb3ZlJywgdGhpcy5vbk1vdXNlTW92ZSk7XG4gICAgICAgIHRoaXMuZG9jdW1lbnQ/LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNldXAnLCB0aGlzLm9uTW91c2VVcCk7XG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgb25Ub3VjaERvd24gPSAoZXZlbnQ6IFRvdWNoRXZlbnQpID0+IHtcbiAgICBjb25zdCBpc0Zha2VFdmVudCA9IGlzRmFrZVRvdWNoc3RhcnRGcm9tU2NyZWVuUmVhZGVyKGV2ZW50IGFzIFRvdWNoRXZlbnQpXG4gICAgY29uc3QgdG91Y2hFdmVudCA9IG5ldyBJVG91Y2hEb3duRXZlbnQoZXZlbnQpO1xuXG4gICAgaWYgKGlzRmFrZUV2ZW50IHx8IHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgbGV0IHJlc3VsdCA9IHRoaXMub25Qb2ludGVyRG93bihuZXcgSVRvdWNoRG93bkV2ZW50KGV2ZW50KSk7XG4gICAgaWYgKHJlc3VsdCkge1xuXG4gICAgICB0aGlzLmRyYWdTdGFydFRpbWUgPSBEYXRlLm5vdygpO1xuICAgICAgdGhpcy5kcmFnU3RhcnRQb3NpdGlvbiA9IHRvdWNoRXZlbnQuZ2V0UG9zaXRpb24oKTtcblxuICAgICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICB0aGlzLmRvY3VtZW50Py5hZGRFdmVudExpc3RlbmVyKCdzZWxlY3RzdGFydCcsIHRoaXMub25TZWxlY3RTdGFydCwgRXZlbnRFeHRlbnNpb25zLmFjdGl2ZUxpc3RlbmVyKCkpO1xuICAgICAgICB0aGlzLmRvY3VtZW50Py5hZGRFdmVudExpc3RlbmVyKCd0b3VjaG1vdmUnLCB0aGlzLm9uVG91Y2hNb3ZlKTtcbiAgICAgICAgdGhpcy5kb2N1bWVudD8uYWRkRXZlbnRMaXN0ZW5lcigndG91Y2hlbmQnLCB0aGlzLm9uVG91Y2hVcCk7XG4gICAgICB9KTtcblxuICAgICAgdGhpcy50b3VjaExpc3RlbmVycyA9ICgpID0+IHtcbiAgICAgICAgdGhpcy5kb2N1bWVudD8ucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2VsZWN0c3RhcnQnLCB0aGlzLm9uU2VsZWN0U3RhcnQsIEV2ZW50RXh0ZW5zaW9ucy5hY3RpdmVMaXN0ZW5lcigpKTtcbiAgICAgICAgdGhpcy5kb2N1bWVudD8ucmVtb3ZlRXZlbnRMaXN0ZW5lcigndG91Y2htb3ZlJywgdGhpcy5vblRvdWNoTW92ZSk7XG4gICAgICAgIHRoaXMuZG9jdW1lbnQ/LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNoZW5kJywgdGhpcy5vblRvdWNoVXApO1xuICAgICAgfTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG9uU2VsZWN0U3RhcnQgPSAoZXZlbnQ6IEV2ZW50KSA9PiB7XG4gICAgdGhpcy5vblNlbGVjdChldmVudCk7XG4gIH1cblxuICBwcml2YXRlIG9uTW91c2VNb3ZlID0gKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgdGhpcy5tb3ZlSGFuZGxlcihuZXcgSU1vdXNlRXZlbnQoZXZlbnQpKTtcbiAgfVxuXG4gIHByaXZhdGUgb25Ub3VjaE1vdmUgPSAoZXZlbnQ6IFRvdWNoRXZlbnQpID0+IHtcbiAgICB0aGlzLm1vdmVIYW5kbGVyKG5ldyBJVG91Y2hNb3ZlRXZlbnQoZXZlbnQpKTtcbiAgfVxuXG4gIHByaXZhdGUgY2hlY2tEcmFnU2VxdWVuY2VUb1N0YXJ0KGV2ZW50OiBJUG9pbnRlckV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgcG9pbnRlclBvc2l0aW9uID0gZXZlbnQuZ2V0UG9zaXRpb24oKTtcblxuICAgIGlmICghdGhpcy5pc0RyYWdTdGFydGVkKSB7XG4gICAgICBjb25zdCBkaXN0YW5jZVggPSBNYXRoLmFicyhwb2ludGVyUG9zaXRpb24ueCAtIHRoaXMuZHJhZ1N0YXJ0UG9zaXRpb24ueCk7XG4gICAgICBjb25zdCBkaXN0YW5jZVkgPSBNYXRoLmFicyhwb2ludGVyUG9zaXRpb24ueSAtIHRoaXMuZHJhZ1N0YXJ0UG9zaXRpb24ueSk7XG4gICAgICBjb25zdCBpc092ZXJUaHJlc2hvbGQgPSBkaXN0YW5jZVggKyBkaXN0YW5jZVkgPj0gdGhpcy5kcmFnU3RhcnRUaHJlc2hvbGQ7XG5cbiAgICAgIGlmIChpc092ZXJUaHJlc2hvbGQpIHtcbiAgICAgICAgY29uc3QgaXNEZWxheUVsYXBzZWQgPSBEYXRlLm5vdygpID49IHRoaXMuZHJhZ1N0YXJ0VGltZSArIHRoaXMuZHJhZ1N0YXJ0RGVsYXk7XG5cbiAgICAgICAgaWYgKCFpc0RlbGF5RWxhcHNlZCkge1xuICAgICAgICAgIHRoaXMuZW5kRHJhZ1NlcXVlbmNlKCk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy5wcmVwYXJlRHJhZ1NlcXVlbmNlKGV2ZW50KTtcbiAgICAgICAgdGhpcy5pc0RyYWdTdGFydGVkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5tb3ZlSGFuZGxlciA9IHRoaXMub25Qb2ludGVyTW92ZTtcbiAgICAgICAgaWYgKGlzVG91Y2hFdmVudChldmVudC5vcmlnaW5hbEV2ZW50KSkge1xuICAgICAgICAgIHRoaXMubGFzdFRvdWNoRXZlbnRUaW1lID0gRGF0ZS5ub3coKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBwcmVwYXJlRHJhZ1NlcXVlbmNlKGV2ZW50OiBJUG9pbnRlckV2ZW50KTogdm9pZDtcblxuICBwcml2YXRlIG9uTW91c2VVcCA9IChldmVudDogTW91c2VFdmVudCkgPT4ge1xuICAgIGlmICh0aGlzLmlzRHJhZ1N0YXJ0ZWQpIHtcbiAgICAgIHRoaXMub25Qb2ludGVyVXAobmV3IElNb3VzZUV2ZW50KGV2ZW50KSk7XG4gICAgfVxuICAgIHRoaXMuZW5kRHJhZ1NlcXVlbmNlKCk7XG4gIH1cblxuICBwcml2YXRlIG9uVG91Y2hVcCA9IChldmVudDogVG91Y2hFdmVudCkgPT4ge1xuICAgIGlmICh0aGlzLmlzRHJhZ1N0YXJ0ZWQpIHtcbiAgICAgIHRoaXMub25Qb2ludGVyVXAobmV3IElUb3VjaFVwRXZlbnQoZXZlbnQpKTtcbiAgICB9XG4gICAgdGhpcy5lbmREcmFnU2VxdWVuY2UoKTtcbiAgfVxuXG4gIHByaXZhdGUgZW5kRHJhZ1NlcXVlbmNlKCk6IHZvaWQge1xuICAgIHRoaXMuaXNEcmFnU3RhcnRlZCA9IGZhbHNlO1xuICAgIHRoaXMubW92ZUhhbmRsZXIgPSB0aGlzLmNoZWNrRHJhZ1NlcXVlbmNlVG9TdGFydDtcbiAgICB0aGlzLm1vdXNlTGlzdGVuZXJzKCk7XG4gICAgdGhpcy5tb3VzZUxpc3RlbmVycyA9IEV2ZW50RXh0ZW5zaW9ucy5lbXB0eUxpc3RlbmVyKCk7XG4gICAgdGhpcy50b3VjaExpc3RlbmVycygpO1xuICAgIHRoaXMudG91Y2hMaXN0ZW5lcnMgPSBFdmVudEV4dGVuc2lvbnMuZW1wdHlMaXN0ZW5lcigpO1xuICAgIHRoaXMuZmluYWxpemVEcmFnU2VxdWVuY2UoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBmaW5hbGl6ZURyYWdTZXF1ZW5jZSgpOiB2b2lkO1xuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBvblNlbGVjdChldmVudDogRXZlbnQpOiB2b2lkO1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBvblBvaW50ZXJEb3duKGV2ZW50OiBJUG9pbnRlckV2ZW50KTogYm9vbGVhbjtcblxuICBwdWJsaWMgYWJzdHJhY3Qgb25Qb2ludGVyTW92ZShldmVudDogSVBvaW50ZXJFdmVudCk6IHZvaWQ7XG5cbiAgcHVibGljIGFic3RyYWN0IG9uUG9pbnRlclVwKGV2ZW50OiBJUG9pbnRlckV2ZW50KTogdm9pZDtcblxuICBwdWJsaWMgc3Vic2NyaWJlKGRvY3VtZW50OiBEb2N1bWVudCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRvY3VtZW50KSB7XG4gICAgICB0aGlzLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICAgIHRoaXMuZG9jdW1lbnQgPSBkb2N1bWVudDtcblxuICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIHRoaXMub25Nb3VzZURvd24sIEV2ZW50RXh0ZW5zaW9ucy5hY3RpdmVMaXN0ZW5lcigpKTtcbiAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3RvdWNoc3RhcnQnLCB0aGlzLm9uVG91Y2hEb3duLCBFdmVudEV4dGVuc2lvbnMucGFzc2l2ZUxpc3RlbmVyKCkpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5zdGFydExpc3RlbmVycyA9ICgpID0+IHtcbiAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIHRoaXMub25Nb3VzZURvd24sIEV2ZW50RXh0ZW5zaW9ucy5hY3RpdmVMaXN0ZW5lcigpKTtcbiAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNoc3RhcnQnLCB0aGlzLm9uVG91Y2hEb3duLCBFdmVudEV4dGVuc2lvbnMucGFzc2l2ZUxpc3RlbmVyKCkpO1xuICAgIH07XG4gIH1cblxuICBwdWJsaWMgdW5zdWJzY3JpYmUoKTogdm9pZCB7XG5cbiAgICB0aGlzLnN0YXJ0TGlzdGVuZXJzKCk7XG4gICAgdGhpcy5zdGFydExpc3RlbmVycyA9IEV2ZW50RXh0ZW5zaW9ucy5lbXB0eUxpc3RlbmVyKCk7XG4gICAgdGhpcy50b3VjaExpc3RlbmVycygpO1xuICAgIHRoaXMudG91Y2hMaXN0ZW5lcnMgPSBFdmVudEV4dGVuc2lvbnMuZW1wdHlMaXN0ZW5lcigpO1xuICAgIHRoaXMubW91c2VMaXN0ZW5lcnMoKTtcbiAgICB0aGlzLm1vdXNlTGlzdGVuZXJzID0gRXZlbnRFeHRlbnNpb25zLmVtcHR5TGlzdGVuZXIoKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBpc1RvdWNoRXZlbnQoZXZlbnQ6IE1vdXNlRXZlbnQgfCBUb3VjaEV2ZW50KTogZXZlbnQgaXMgVG91Y2hFdmVudCB7XG4gIHJldHVybiBldmVudC50eXBlWyAwIF0gPT09ICd0Jztcbn1cblxuZnVuY3Rpb24gaXNGYWtlTW91c2Vkb3duRnJvbVNjcmVlblJlYWRlcihldmVudDogTW91c2VFdmVudCk6IGJvb2xlYW4ge1xuICByZXR1cm4gZXZlbnQuYnV0dG9ucyA9PT0gMCB8fCAoZXZlbnQub2Zmc2V0WCA9PT0gMCAmJiBldmVudC5vZmZzZXRZID09PSAwKTtcbn1cblxuZnVuY3Rpb24gaXNGYWtlVG91Y2hzdGFydEZyb21TY3JlZW5SZWFkZXIoZXZlbnQ6IFRvdWNoRXZlbnQpOiBib29sZWFuIHtcbiAgY29uc3QgdG91Y2g6IFRvdWNoIHwgdW5kZWZpbmVkID1cbiAgICAoZXZlbnQudG91Y2hlcyAmJiBldmVudC50b3VjaGVzWyAwIF0pIHx8IChldmVudC5jaGFuZ2VkVG91Y2hlcyAmJiBldmVudC5jaGFuZ2VkVG91Y2hlc1sgMCBdKTtcbiAgcmV0dXJuIChcbiAgICAhIXRvdWNoICYmXG4gICAgdG91Y2guaWRlbnRpZmllciA9PT0gLTEgJiZcbiAgICAodG91Y2gucmFkaXVzWCA9PSBudWxsIHx8IHRvdWNoLnJhZGl1c1ggPT09IDEpICYmXG4gICAgKHRvdWNoLnJhZGl1c1kgPT0gbnVsbCB8fCB0b3VjaC5yYWRpdXNZID09PSAxKVxuICApO1xufVxuIl19
164
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1kcmFnZ2FibGUtYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1kcmFnZ2FibGUtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsZUFBZSxFQUVmLFdBQVcsRUFHWCxlQUFlLEVBQ2YsZUFBZSxFQUNmLGFBQWEsRUFDYixlQUFlLEVBQ2hCLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxTQUFTLEVBQWdCLGNBQWMsR0FBRyxNQUFNLGVBQWUsQ0FBQzs7QUFNekUsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLElBQUksY0FBYyxDQUFpQixhQUFhLENBQUMsQ0FBQztBQUU3RSxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxHQUFHLENBQUM7QUFHM0MsTUFBTSxPQUFnQixjQUFjO0lBc0N0QjtJQTFCSixRQUFRLENBQXVCO0lBRS9CLGNBQWMsR0FBYSxlQUFlLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDM0QsY0FBYyxHQUFhLGVBQWUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUUzRCxjQUFjLEdBQWEsZUFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBRTVELGdCQUFnQixDQUFDLEtBQWlCO1FBQ3ZDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0I7WUFDOUIsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsdUJBQXVCLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVPLGtCQUFrQixHQUFXLENBQUMsQ0FBQztJQUVoQyxhQUFhLEdBQVksS0FBSyxDQUFDO0lBQzlCLGtCQUFrQixHQUFXLENBQUMsQ0FBQztJQUMvQixjQUFjLEdBQVcsQ0FBQyxDQUFDO0lBRTNCLGFBQWEsR0FBVyxDQUFDLENBQUM7SUFDMUIsaUJBQWlCLEdBQVcsZUFBZSxDQUFDLFVBQVUsRUFBRSxDQUFD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QUksQ0FBQyxLQUFLLENBQUMsY0FBYyxJQUFJLEtBQUssQ0FBQyxjQUFjLENBQUUsQ0FBQyxDQUFFLENBQUMsQ0FBQztJQUMvRixPQUFPLENBQ0wsQ0FBQyxDQUFDLEtBQUs7UUFDUCxLQUFLLENBQUMsVUFBVSxLQUFLLENBQUMsQ0FBQztRQUN2QixDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksSUFBSSxJQUFJLEtBQUssQ0FBQyxPQUFPLEtBQUssQ0FBQyxDQUFDO1FBQzlDLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSxJQUFJLElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FDL0MsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBFdmVudEV4dGVuc2lvbnMsXG4gIElIYXNIb3N0RWxlbWVudCxcbiAgSU1vdXNlRXZlbnQsXG4gIElQb2ludCxcbiAgSVBvaW50ZXJFdmVudCxcbiAgSVRvdWNoRG93bkV2ZW50LFxuICBJVG91Y2hNb3ZlRXZlbnQsXG4gIElUb3VjaFVwRXZlbnQsXG4gIFBvaW50RXh0ZW5zaW9uc1xufSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBFdmVudEVtaXR0ZXIsIEluamVjdGlvblRva2VuLCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkNyZWF0ZU5vZGVFdmVudCB9IGZyb20gJy4vZXh0ZXJuYWwtaXRlbSc7XG5pbXBvcnQgeyBGQ3JlYXRlQ29ubmVjdGlvbkV2ZW50LCBGUmVhc3NpZ25Db25uZWN0aW9uRXZlbnQgfSBmcm9tICcuL2Nvbm5lY3Rpb25zJztcbmltcG9ydCB7IEZTZWxlY3Rpb25DaGFuZ2VFdmVudCB9IGZyb20gJy4vZi1zZWxlY3Rpb24tY2hhbmdlLWV2ZW50JztcbmltcG9ydCB7IElDYW5SdW5PdXRzaWRlQW5ndWxhciB9IGZyb20gJy4vaS1jYW4tcnVuLW91dHNpZGUtYW5ndWxhcic7XG5cbmV4cG9ydCBjb25zdCBGX0RSQUdHQUJMRSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxGRHJhZ2dhYmxlQmFzZT4oJ0ZfRFJBR0dBQkxFJyk7XG5cbmV4cG9ydCBjb25zdCBNT1VTRV9FVkVOVF9JR05PUkVfVElNRSA9IDgwMDtcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRkRyYWdnYWJsZUJhc2UgaW1wbGVtZW50cyBJSGFzSG9zdEVsZW1lbnQge1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBob3N0RWxlbWVudDogSFRNTEVsZW1lbnQ7XG5cbiAgcHVibGljIGFic3RyYWN0IGZTZWxlY3Rpb25DaGFuZ2U6IEV2ZW50RW1pdHRlcjxGU2VsZWN0aW9uQ2hhbmdlRXZlbnQ+O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmQ3JlYXRlTm9kZTogRXZlbnRFbWl0dGVyPEZDcmVhdGVOb2RlRXZlbnQ+O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmUmVhc3NpZ25Db25uZWN0aW9uOiBFdmVudEVtaXR0ZXI8RlJlYXNzaWduQ29ubmVjdGlvbkV2ZW50PjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZkNyZWF0ZUNvbm5lY3Rpb246IEV2ZW50RW1pdHRlcjxGQ3JlYXRlQ29ubmVjdGlvbkV2ZW50PjtcblxuICBwcml2YXRlIGRvY3VtZW50OiBEb2N1bWVudCB8IHVuZGVmaW5lZDtcblxuICBwcml2YXRlIG1vdXNlTGlzdGVuZXJzOiBGdW5jdGlvbiA9IEV2ZW50RXh0ZW5zaW9ucy5lbXB0eUxpc3RlbmVyKCk7XG4gIHByaXZhdGUgdG91Y2hMaXN0ZW5lcnM6IEZ1bmN0aW9uID0gRXZlbnRFeHRlbnNpb25zLmVtcHR5TGlzdGVuZXIoKTtcblxuICBwcml2YXRlIHN0YXJ0TGlzdGVuZXJzOiBGdW5jdGlvbiA9IEV2ZW50RXh0ZW5zaW9ucy5lbXB0eUxpc3RlbmVyKCk7XG5cbiAgcHVibGljIGlzU3ludGhldGljRXZlbnQoZXZlbnQ6IE1vdXNlRXZlbnQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmxhc3RUb3VjaEV2ZW50VGltZSAmJlxuICAgICAgKHRoaXMubGFzdFRvdWNoRXZlbnRUaW1lICsgTU9VU0VfRVZFTlRfSUdOT1JFX1RJTUUgPiBEYXRlLm5vdygpKTtcbiAgfVxuXG4gIHByaXZhdGUgbGFzdFRvdWNoRXZlbnRUaW1lOiBudW1iZXIgPSAwO1xuXG4gIHB1YmxpYyBpc0RyYWdTdGFydGVkOiBib29sZWFuID0gZmFsc2U7XG4gIHByaXZhdGUgZHJhZ1N0YXJ0VGhyZXNob2xkOiBudW1iZXIgPSAzO1xuICBwcml2YXRlIGRyYWdTdGFydERlbGF5OiBudW1iZXIgPSAwO1xuXG4gIHByaXZhdGUgZHJhZ1N0YXJ0VGltZTogbnVtYmVyID0gMDtcbiAgcHJpdmF0ZSBkcmFnU3RhcnRQb3NpdGlvbjogSVBvaW50ID0gUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoKTtcblxuICBwdWJsaWMgYWJzdHJhY3QgZGlzYWJsZWQ6IGJvb2xlYW47XG5cbiAgcHJpdmF0ZSBtb3ZlSGFuZGxlcjogRnVuY3Rpb24gPSB0aGlzLmNoZWNrRHJhZ1NlcXVlbmNlVG9TdGFydDtcblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIG5nWm9uZTogSUNhblJ1bk91dHNpZGVBbmd1bGFyXG4gICkge1xuICB9XG5cbiAgcHJpdmF0ZSBvbk1vdXNlRG93biA9IChldmVudDogTW91c2VFdmVudCkgPT4ge1xuICAgIGNvbnN0IGlzU3ludGhldGljRXZlbnQgPSB0aGlzLmlzU3ludGhldGljRXZlbnQoZXZlbnQpO1xuICAgIGNvbnN0IGlzRmFrZUV2ZW50ID0gaXNGYWtlTW91c2Vkb3duRnJvbVNjcmVlblJlYWRlcihldmVudCk7XG4gICAgY29uc3QgbW91c2VFdmVudCA9IG5ldyBJTW91c2VFdmVudChldmVudCk7XG5cbiAgICBpZiAoaXNTeW50aGV0aWNFdmVudCB8fCBpc0Zha2VFdmVudCB8fCB0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGxldCByZXN1bHQgPSB0aGlzLm9uUG9pbnRlckRvd24obW91c2VFdmVudCk7XG4gICAgaWYgKHJlc3VsdCkge1xuXG4gICAgICB0aGlzLmRyYWdTdGFydFRpbWUgPSBEYXRlLm5vdygpO1xuICAgICAgdGhpcy5kcmFnU3RhcnRQb3NpdGlvbiA9IG1vdXNlRXZlbnQuZ2V0UG9zaXRpb24oKTtcblxuICAgICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICB0aGlzLmRvY3VtZW50Py5hZGRFdmVudExpc3RlbmVyKCdzZWxlY3RzdGFydCcsIHRoaXMub25TZWxlY3RTdGFydCwgRXZlbnRFeHRlbnNpb25zLmFjdGl2ZUxpc3RlbmVyKCkpO1xuICAgICAgICB0aGlzLmRvY3VtZW50Py5hZGRFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCB0aGlzLm9uTW91c2VNb3ZlKTtcbiAgICAgICAgdGhpcy5kb2N1bWVudD8uYWRkRXZlbnRMaXN0ZW5lcignbW91c2V1cCcsIHRoaXMub25Nb3VzZVVwKTtcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLm1vdXNlTGlzdGVuZXJzID0gKCkgPT4ge1xuICAgICAgICB0aGlzLmRvY3VtZW50Py5yZW1vdmVFdmVudExpc3RlbmVyKCdzZWxlY3RzdGFydCcsIHRoaXMub25TZWxlY3RTdGFydCwgRXZlbnRFeHRlbnNpb25zLmFjdGl2ZUxpc3RlbmVyKCkpO1xuICAgICAgICB0aGlzLmRvY3VtZW50Py5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCB0aGlzLm9uTW91c2VNb3ZlKTtcbiAgICAgICAgdGhpcy5kb2N1bWVudD8ucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2V1cCcsIHRoaXMub25Nb3VzZVVwKTtcbiAgICAgIH07XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBvblRvdWNoRG93biA9IChldmVudDogVG91Y2hFdmVudCkgPT4ge1xuICAgIGNvbnN0IGlzRmFrZUV2ZW50ID0gaXNGYWtlVG91Y2hzdGFydEZyb21TY3JlZW5SZWFkZXIoZXZlbnQgYXMgVG91Y2hFdmVudClcbiAgICBjb25zdCB0b3VjaEV2ZW50ID0gbmV3IElUb3VjaERvd25FdmVudChldmVudCk7XG5cbiAgICBpZiAoaXNGYWtlRXZlbnQgfHwgdGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBsZXQgcmVzdWx0ID0gdGhpcy5vblBvaW50ZXJEb3duKG5ldyBJVG91Y2hEb3duRXZlbnQoZXZlbnQpKTtcbiAgICBpZiAocmVzdWx0KSB7XG5cbiAgICAgIHRoaXMuZHJhZ1N0YXJ0VGltZSA9IERhdGUubm93KCk7XG4gICAgICB0aGlzLmRyYWdTdGFydFBvc2l0aW9uID0gdG91Y2hFdmVudC5nZXRQb3NpdGlvbigpO1xuXG4gICAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgIHRoaXMuZG9jdW1lbnQ/LmFkZEV2ZW50TGlzdGVuZXIoJ3NlbGVjdHN0YXJ0JywgdGhpcy5vblNlbGVjdFN0YXJ0LCBFdmVudEV4dGVuc2lvbnMuYWN0aXZlTGlzdGVuZXIoKSk7XG4gICAgICAgIHRoaXMuZG9jdW1lbnQ/LmFkZEV2ZW50TGlzdGVuZXIoJ3RvdWNobW92ZScsIHRoaXMub25Ub3VjaE1vdmUpO1xuICAgICAgICB0aGlzLmRvY3VtZW50Py5hZGRFdmVudExpc3RlbmVyKCd0b3VjaGVuZCcsIHRoaXMub25Ub3VjaFVwKTtcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLnRvdWNoTGlzdGVuZXJzID0gKCkgPT4ge1xuICAgICAgICB0aGlzLmRvY3VtZW50Py5yZW1vdmVFdmVudExpc3RlbmVyKCdzZWxlY3RzdGFydCcsIHRoaXMub25TZWxlY3RTdGFydCwgRXZlbnRFeHRlbnNpb25zLmFjdGl2ZUxpc3RlbmVyKCkpO1xuICAgICAgICB0aGlzLmRvY3VtZW50Py5yZW1vdmVFdmVudExpc3RlbmVyKCd0b3VjaG1vdmUnLCB0aGlzLm9uVG91Y2hNb3ZlKTtcbiAgICAgICAgdGhpcy5kb2N1bWVudD8ucmVtb3ZlRXZlbnRMaXN0ZW5lcigndG91Y2hlbmQnLCB0aGlzLm9uVG91Y2hVcCk7XG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgb25TZWxlY3RTdGFydCA9IChldmVudDogRXZlbnQpID0+IHtcbiAgICB0aGlzLm9uU2VsZWN0KGV2ZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgb25Nb3VzZU1vdmUgPSAoZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHtcbiAgICB0aGlzLm1vdmVIYW5kbGVyKG5ldyBJTW91c2VFdmVudChldmVudCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBvblRvdWNoTW92ZSA9IChldmVudDogVG91Y2hFdmVudCkgPT4ge1xuICAgIHRoaXMubW92ZUhhbmRsZXIobmV3IElUb3VjaE1vdmVFdmVudChldmVudCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBjaGVja0RyYWdTZXF1ZW5jZVRvU3RhcnQoZXZlbnQ6IElQb2ludGVyRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBwb2ludGVyUG9zaXRpb24gPSBldmVudC5nZXRQb3NpdGlvbigpO1xuXG4gICAgaWYgKCF0aGlzLmlzRHJhZ1N0YXJ0ZWQpIHtcbiAgICAgIGNvbnN0IGRpc3RhbmNlWCA9IE1hdGguYWJzKHBvaW50ZXJQb3NpdGlvbi54IC0gdGhpcy5kcmFnU3RhcnRQb3NpdGlvbi54KTtcbiAgICAgIGNvbnN0IGRpc3RhbmNlWSA9IE1hdGguYWJzKHBvaW50ZXJQb3NpdGlvbi55IC0gdGhpcy5kcmFnU3RhcnRQb3NpdGlvbi55KTtcbiAgICAgIGNvbnN0IGlzT3ZlclRocmVzaG9sZCA9IGRpc3RhbmNlWCArIGRpc3RhbmNlWSA+PSB0aGlzLmRyYWdTdGFydFRocmVzaG9sZDtcblxuICAgICAgaWYgKGlzT3ZlclRocmVzaG9sZCkge1xuICAgICAgICBjb25zdCBpc0RlbGF5RWxhcHNlZCA9IERhdGUubm93KCkgPj0gdGhpcy5kcmFnU3RhcnRUaW1lICsgdGhpcy5kcmFnU3RhcnREZWxheTtcblxuICAgICAgICBpZiAoIWlzRGVsYXlFbGFwc2VkKSB7XG4gICAgICAgICAgdGhpcy5lbmREcmFnU2VxdWVuY2UoKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLnByZXBhcmVEcmFnU2VxdWVuY2UoZXZlbnQpO1xuICAgICAgICB0aGlzLmlzRHJhZ1N0YXJ0ZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLm1vdmVIYW5kbGVyID0gdGhpcy5vblBvaW50ZXJNb3ZlO1xuICAgICAgICBpZiAoaXNUb3VjaEV2ZW50KGV2ZW50Lm9yaWdpbmFsRXZlbnQpKSB7XG4gICAgICAgICAgdGhpcy5sYXN0VG91Y2hFdmVudFRpbWUgPSBEYXRlLm5vdygpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IHByZXBhcmVEcmFnU2VxdWVuY2UoZXZlbnQ6IElQb2ludGVyRXZlbnQpOiB2b2lkO1xuXG4gIHByaXZhdGUgb25Nb3VzZVVwID0gKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgaWYgKHRoaXMuaXNEcmFnU3RhcnRlZCkge1xuICAgICAgdGhpcy5vblBvaW50ZXJVcChuZXcgSU1vdXNlRXZlbnQoZXZlbnQpKTtcbiAgICB9XG4gICAgdGhpcy5lbmREcmFnU2VxdWVuY2UoKTtcbiAgfVxuXG4gIHByaXZhdGUgb25Ub3VjaFVwID0gKGV2ZW50OiBUb3VjaEV2ZW50KSA9PiB7XG4gICAgaWYgKHRoaXMuaXNEcmFnU3RhcnRlZCkge1xuICAgICAgdGhpcy5vblBvaW50ZXJVcChuZXcgSVRvdWNoVXBFdmVudChldmVudCkpO1xuICAgIH1cbiAgICB0aGlzLmVuZERyYWdTZXF1ZW5jZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBlbmREcmFnU2VxdWVuY2UoKTogdm9pZCB7XG4gICAgdGhpcy5pc0RyYWdTdGFydGVkID0gZmFsc2U7XG4gICAgdGhpcy5tb3ZlSGFuZGxlciA9IHRoaXMuY2hlY2tEcmFnU2VxdWVuY2VUb1N0YXJ0O1xuICAgIHRoaXMubW91c2VMaXN0ZW5lcnMoKTtcbiAgICB0aGlzLm1vdXNlTGlzdGVuZXJzID0gRXZlbnRFeHRlbnNpb25zLmVtcHR5TGlzdGVuZXIoKTtcbiAgICB0aGlzLnRvdWNoTGlzdGVuZXJzKCk7XG4gICAgdGhpcy50b3VjaExpc3RlbmVycyA9IEV2ZW50RXh0ZW5zaW9ucy5lbXB0eUxpc3RlbmVyKCk7XG4gICAgdGhpcy5maW5hbGl6ZURyYWdTZXF1ZW5jZSgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGZpbmFsaXplRHJhZ1NlcXVlbmNlKCk6IHZvaWQ7XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IG9uU2VsZWN0KGV2ZW50OiBFdmVudCk6IHZvaWQ7XG5cbiAgcHVibGljIGFic3RyYWN0IG9uUG9pbnRlckRvd24oZXZlbnQ6IElQb2ludGVyRXZlbnQpOiBib29sZWFuO1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBvblBvaW50ZXJNb3ZlKGV2ZW50OiBJUG9pbnRlckV2ZW50KTogdm9pZDtcblxuICBwdWJsaWMgYWJzdHJhY3Qgb25Qb2ludGVyVXAoZXZlbnQ6IElQb2ludGVyRXZlbnQpOiB2b2lkO1xuXG4gIHB1YmxpYyBzdWJzY3JpYmUoZG9jdW1lbnQ6IERvY3VtZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZG9jdW1lbnQpIHtcbiAgICAgIHRoaXMudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgdGhpcy5kb2N1bWVudCA9IGRvY3VtZW50O1xuXG4gICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgdGhpcy5vbk1vdXNlRG93biwgRXZlbnRFeHRlbnNpb25zLmFjdGl2ZUxpc3RlbmVyKCkpO1xuICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigndG91Y2hzdGFydCcsIHRoaXMub25Ub3VjaERvd24sIEV2ZW50RXh0ZW5zaW9ucy5wYXNzaXZlTGlzdGVuZXIoKSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLnN0YXJ0TGlzdGVuZXJzID0gKCkgPT4ge1xuICAgICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgdGhpcy5vbk1vdXNlRG93biwgRXZlbnRFeHRlbnNpb25zLmFjdGl2ZUxpc3RlbmVyKCkpO1xuICAgICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigndG91Y2hzdGFydCcsIHRoaXMub25Ub3VjaERvd24sIEV2ZW50RXh0ZW5zaW9ucy5wYXNzaXZlTGlzdGVuZXIoKSk7XG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyB1bnN1YnNjcmliZSgpOiB2b2lkIHtcblxuICAgIHRoaXMuc3RhcnRMaXN0ZW5lcnMoKTtcbiAgICB0aGlzLnN0YXJ0TGlzdGVuZXJzID0gRXZlbnRFeHRlbnNpb25zLmVtcHR5TGlzdGVuZXIoKTtcbiAgICB0aGlzLnRvdWNoTGlzdGVuZXJzKCk7XG4gICAgdGhpcy50b3VjaExpc3RlbmVycyA9IEV2ZW50RXh0ZW5zaW9ucy5lbXB0eUxpc3RlbmVyKCk7XG4gICAgdGhpcy5tb3VzZUxpc3RlbmVycygpO1xuICAgIHRoaXMubW91c2VMaXN0ZW5lcnMgPSBFdmVudEV4dGVuc2lvbnMuZW1wdHlMaXN0ZW5lcigpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGlzVG91Y2hFdmVudChldmVudDogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpOiBldmVudCBpcyBUb3VjaEV2ZW50IHtcbiAgcmV0dXJuIGV2ZW50LnR5cGVbIDAgXSA9PT0gJ3QnO1xufVxuXG5mdW5jdGlvbiBpc0Zha2VNb3VzZWRvd25Gcm9tU2NyZWVuUmVhZGVyKGV2ZW50OiBNb3VzZUV2ZW50KTogYm9vbGVhbiB7XG4gIHJldHVybiBldmVudC5idXR0b25zID09PSAwIHx8IChldmVudC5vZmZzZXRYID09PSAwICYmIGV2ZW50Lm9mZnNldFkgPT09IDApO1xufVxuXG5mdW5jdGlvbiBpc0Zha2VUb3VjaHN0YXJ0RnJvbVNjcmVlblJlYWRlcihldmVudDogVG91Y2hFdmVudCk6IGJvb2xlYW4ge1xuICBjb25zdCB0b3VjaDogVG91Y2ggfCB1bmRlZmluZWQgPVxuICAgIChldmVudC50b3VjaGVzICYmIGV2ZW50LnRvdWNoZXNbIDAgXSkgfHwgKGV2ZW50LmNoYW5nZWRUb3VjaGVzICYmIGV2ZW50LmNoYW5nZWRUb3VjaGVzWyAwIF0pO1xuICByZXR1cm4gKFxuICAgICEhdG91Y2ggJiZcbiAgICB0b3VjaC5pZGVudGlmaWVyID09PSAtMSAmJlxuICAgICh0b3VjaC5yYWRpdXNYID09IG51bGwgfHwgdG91Y2gucmFkaXVzWCA9PT0gMSkgJiZcbiAgICAodG91Y2gucmFkaXVzWSA9PSBudWxsIHx8IHRvdWNoLnJhZGl1c1kgPT09IDEpXG4gICk7XG59XG4iXX0=
@@ -2,13 +2,13 @@ import { Injectable } from '@angular/core';
2
2
  import { Point } from '@foblex/core';
3
3
  import * as i0 from "@angular/core";
4
4
  export class FDraggableDataContext {
5
- constructor() {
6
- this.selectedItems = [];
7
- this.isSelectedChanged = false;
8
- this.onPointerDownScale = 1;
9
- this.onPointerDownPosition = new Point(0, 0);
10
- this.draggableItems = [];
11
- }
5
+ selectedItems = [];
6
+ isSelectedChanged = false;
7
+ onPointerDownScale = 1;
8
+ onPointerDownPosition = new Point(0, 0);
9
+ draggableItems = [];
10
+ fSelectionArea;
11
+ fLineAlignment;
12
12
  reset() {
13
13
  this.draggableItems = [];
14
14
  this.onPointerDownScale = 1;
@@ -17,10 +17,10 @@ export class FDraggableDataContext {
17
17
  markSelectionAsChanged() {
18
18
  this.isSelectedChanged = true;
19
19
  }
20
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: FDraggableDataContext, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
21
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: FDraggableDataContext }); }
20
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FDraggableDataContext, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
21
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FDraggableDataContext });
22
22
  }
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: FDraggableDataContext, decorators: [{
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FDraggableDataContext, decorators: [{
24
24
  type: Injectable
25
25
  }] });
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1kcmFnZ2FibGUtZGF0YS1jb250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLWRyYWdnYWJsZS1kYXRhLWNvbnRleHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sY0FBYyxDQUFDOztBQU9yQyxNQUFNLE9BQU8scUJBQXFCO0lBRGxDO1FBR1Msa0JBQWEsR0FBa0IsRUFBRSxDQUFDO1FBRWxDLHNCQUFpQixHQUFZLEtBQUssQ0FBQztRQUVuQyx1QkFBa0IsR0FBVyxDQUFDLENBQUM7UUFFL0IsMEJBQXFCLEdBQVUsSUFBSSxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRS9DLG1CQUFjLEdBQXFCLEVBQUUsQ0FBQztLQWU5QztJQVRRLEtBQUs7UUFDVixJQUFJLENBQUMsY0FBYyxHQUFHLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsa0JBQWtCLEdBQUcsQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVNLHNCQUFzQjtRQUMzQixJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO0lBQ2hDLENBQUM7K0dBeEJVLHFCQUFxQjttSEFBckIscUJBQXFCOzs0RkFBckIscUJBQXFCO2tCQURqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUG9pbnQgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuaW1wb3J0IHsgSURyYWdnYWJsZUl0ZW0gfSBmcm9tICcuL2ktZHJhZ2dhYmxlLWl0ZW0nO1xuaW1wb3J0IHsgSVNlbGVjdGFibGUgfSBmcm9tICcuLi9mLWNvbm5lY3Rpb24nO1xuaW1wb3J0IHsgRkxpbmVBbGlnbm1lbnRCYXNlIH0gZnJvbSAnLi4vZi1saW5lLWFsaWdubWVudCc7XG5pbXBvcnQgeyBGU2VsZWN0aW9uQXJlYUJhc2UgfSBmcm9tICcuLi9mLXNlbGVjdGlvbi1hcmVhJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEZEcmFnZ2FibGVEYXRhQ29udGV4dCB7XG5cbiAgcHVibGljIHNlbGVjdGVkSXRlbXM6IElTZWxlY3RhYmxlW10gPSBbXTtcblxuICBwdWJsaWMgaXNTZWxlY3RlZENoYW5nZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwdWJsaWMgb25Qb2ludGVyRG93blNjYWxlOiBudW1iZXIgPSAxO1xuXG4gIHB1YmxpYyBvblBvaW50ZXJEb3duUG9zaXRpb246IFBvaW50ID0gbmV3IFBvaW50KDAsIDApO1xuXG4gIHB1YmxpYyBkcmFnZ2FibGVJdGVtczogSURyYWdnYWJsZUl0ZW1bXSA9IFtdO1xuXG4gIHB1YmxpYyBmU2VsZWN0aW9uQXJlYTogRlNlbGVjdGlvbkFyZWFCYXNlIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBmTGluZUFsaWdubWVudDogRkxpbmVBbGlnbm1lbnRCYXNlIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyByZXNldCgpOiB2b2lkIHtcbiAgICB0aGlzLmRyYWdnYWJsZUl0ZW1zID0gW107XG4gICAgdGhpcy5vblBvaW50ZXJEb3duU2NhbGUgPSAxO1xuICAgIHRoaXMub25Qb2ludGVyRG93blBvc2l0aW9uID0gbmV3IFBvaW50KDAsIDApO1xuICB9XG5cbiAgcHVibGljIG1hcmtTZWxlY3Rpb25Bc0NoYW5nZWQoKTogdm9pZCB7XG4gICAgdGhpcy5pc1NlbGVjdGVkQ2hhbmdlZCA9IHRydWU7XG4gIH1cbn1cbiJdfQ==
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1kcmFnZ2FibGUtZGF0YS1jb250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLWRyYWdnYWJsZS1kYXRhLWNvbnRleHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sY0FBYyxDQUFDOztBQU9yQyxNQUFNLE9BQU8scUJBQXFCO0lBRXpCLGFBQWEsR0FBa0IsRUFBRSxDQUFDO0lBRWxDLGlCQUFpQixHQUFZLEtBQUssQ0FBQztJQUVuQyxrQkFBa0IsR0FBVyxDQUFDLENBQUM7SUFFL0IscUJBQXFCLEdBQVUsSUFBSSxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBRS9DLGNBQWMsR0FBcUIsRUFBRSxDQUFDO0lBRXRDLGNBQWMsQ0FBaUM7SUFFL0MsY0FBYyxDQUFpQztJQUUvQyxLQUFLO1FBQ1YsSUFBSSxDQUFDLGNBQWMsR0FBRyxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFTSxzQkFBc0I7UUFDM0IsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztJQUNoQyxDQUFDO3VHQXhCVSxxQkFBcUI7MkdBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFEakMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBvaW50IH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IElEcmFnZ2FibGVJdGVtIH0gZnJvbSAnLi9pLWRyYWdnYWJsZS1pdGVtJztcbmltcG9ydCB7IElTZWxlY3RhYmxlIH0gZnJvbSAnLi4vZi1jb25uZWN0aW9uJztcbmltcG9ydCB7IEZMaW5lQWxpZ25tZW50QmFzZSB9IGZyb20gJy4uL2YtbGluZS1hbGlnbm1lbnQnO1xuaW1wb3J0IHsgRlNlbGVjdGlvbkFyZWFCYXNlIH0gZnJvbSAnLi4vZi1zZWxlY3Rpb24tYXJlYSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBGRHJhZ2dhYmxlRGF0YUNvbnRleHQge1xuXG4gIHB1YmxpYyBzZWxlY3RlZEl0ZW1zOiBJU2VsZWN0YWJsZVtdID0gW107XG5cbiAgcHVibGljIGlzU2VsZWN0ZWRDaGFuZ2VkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHVibGljIG9uUG9pbnRlckRvd25TY2FsZTogbnVtYmVyID0gMTtcblxuICBwdWJsaWMgb25Qb2ludGVyRG93blBvc2l0aW9uOiBQb2ludCA9IG5ldyBQb2ludCgwLCAwKTtcblxuICBwdWJsaWMgZHJhZ2dhYmxlSXRlbXM6IElEcmFnZ2FibGVJdGVtW10gPSBbXTtcblxuICBwdWJsaWMgZlNlbGVjdGlvbkFyZWE6IEZTZWxlY3Rpb25BcmVhQmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZkxpbmVBbGlnbm1lbnQ6IEZMaW5lQWxpZ25tZW50QmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgcmVzZXQoKTogdm9pZCB7XG4gICAgdGhpcy5kcmFnZ2FibGVJdGVtcyA9IFtdO1xuICAgIHRoaXMub25Qb2ludGVyRG93blNjYWxlID0gMTtcbiAgICB0aGlzLm9uUG9pbnRlckRvd25Qb3NpdGlvbiA9IG5ldyBQb2ludCgwLCAwKTtcbiAgfVxuXG4gIHB1YmxpYyBtYXJrU2VsZWN0aW9uQXNDaGFuZ2VkKCk6IHZvaWQge1xuICAgIHRoaXMuaXNTZWxlY3RlZENoYW5nZWQgPSB0cnVlO1xuICB9XG59XG4iXX0=