@foblex/flow 12.4.0 → 12.5.1

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 (207) hide show
  1. package/domain/emit-transform-changes/emit-transform-changes.execution.d.ts +11 -0
  2. package/domain/emit-transform-changes/emit-transform-changes.request.d.ts +2 -0
  3. package/domain/emit-transform-changes/index.d.ts +2 -0
  4. package/domain/index.d.ts +2 -0
  5. package/domain/providers.d.ts +3 -1
  6. package/domain/subscribe-on-transform-changes/index.d.ts +2 -0
  7. package/domain/subscribe-on-transform-changes/subscribe-on-transform-changes.execution.d.ts +13 -0
  8. package/domain/subscribe-on-transform-changes/subscribe-on-transform-changes.request.d.ts +2 -0
  9. package/esm2022/domain/clear-selection/clear-selection.execution.mjs +3 -3
  10. package/esm2022/domain/create-connection-markers/create-connection-markers.execution.mjs +3 -3
  11. package/esm2022/domain/emit-transform-changes/emit-transform-changes.execution.mjs +25 -0
  12. package/esm2022/domain/emit-transform-changes/emit-transform-changes.request.mjs +3 -0
  13. package/esm2022/domain/emit-transform-changes/index.mjs +3 -0
  14. package/esm2022/domain/get-can-be-selected-items/get-can-be-selected-items.execution.mjs +3 -3
  15. package/esm2022/domain/get-connection-line/get-connection-line.execution.mjs +3 -3
  16. package/esm2022/domain/get-connection.handler.mjs +3 -3
  17. package/esm2022/domain/get-element-rect-in-flow/get-element-rect-in-flow.execution.mjs +3 -3
  18. package/esm2022/domain/get-external-nodes-rect/get-external-nodes-rect.execution.mjs +3 -3
  19. package/esm2022/domain/get-incoming-connections.handler.mjs +3 -3
  20. package/esm2022/domain/get-input-rect-in-flow/get-input-rect-in-flow.execution.mjs +3 -3
  21. package/esm2022/domain/get-nodes-rect/get-nodes-rect.execution.mjs +3 -3
  22. package/esm2022/domain/get-outgoing-connections.handler.mjs +3 -3
  23. package/esm2022/domain/get-output-rect-in-flow/get-output-rect-in-flow.execution.mjs +3 -3
  24. package/esm2022/domain/get-position-in-flow/get-position-in-flow.execution.mjs +3 -3
  25. package/esm2022/domain/get-selection/get-selection.execution.mjs +3 -3
  26. package/esm2022/domain/index.mjs +3 -1
  27. package/esm2022/domain/is-connection-under-node/is-connection-under-node.execution.mjs +3 -3
  28. package/esm2022/domain/providers.mjs +5 -1
  29. package/esm2022/domain/redraw-connections/redraw-connections.execution.mjs +3 -3
  30. package/esm2022/domain/select/select.execution.mjs +3 -3
  31. package/esm2022/domain/select-all/select-all.execution.mjs +3 -3
  32. package/esm2022/domain/select-and-update-node-layer/select-and-update-node-layer.execution.mjs +3 -3
  33. package/esm2022/domain/subscribe-on-transform-changes/index.mjs +3 -0
  34. package/esm2022/domain/subscribe-on-transform-changes/subscribe-on-transform-changes.execution.mjs +28 -0
  35. package/esm2022/domain/subscribe-on-transform-changes/subscribe-on-transform-changes.request.mjs +3 -0
  36. package/esm2022/domain/update-item-layer/update-item-layer.execution.mjs +3 -3
  37. package/esm2022/f-backgroud/f-background-base.mjs +3 -3
  38. package/esm2022/f-backgroud/f-background.component.mjs +3 -3
  39. package/esm2022/f-backgroud/f-circle-pattern/f-circle-pattern.component.mjs +3 -3
  40. package/esm2022/f-backgroud/f-rect-pattern/f-rect-pattern.component.mjs +3 -3
  41. package/esm2022/f-canvas/f-canvas-base.mjs +3 -3
  42. package/esm2022/f-canvas/f-canvas.component.mjs +7 -6
  43. package/esm2022/f-canvas/index.mjs +1 -2
  44. package/esm2022/f-canvas/providers.mjs +1 -3
  45. package/esm2022/f-connection/common/f-connection-base.mjs +3 -3
  46. package/esm2022/f-connection/common/f-connection-text/f-connection-text-path.directive.mjs +3 -3
  47. package/esm2022/f-connection/common/f-connection-text/f-connection-text.component.mjs +3 -3
  48. package/esm2022/f-connection/common/f-drag-handle/f-connection-drag-handle.component.mjs +5 -5
  49. package/esm2022/f-connection/common/f-gradient/f-connection-gradient.component.mjs +3 -3
  50. package/esm2022/f-connection/common/f-path/f-connection-path.component.mjs +3 -3
  51. package/esm2022/f-connection/common/f-selection/f-connection-selection.component.mjs +3 -3
  52. package/esm2022/f-connection/f-connection/f-connection.component.mjs +3 -3
  53. package/esm2022/f-connection/f-connection-builder/f-connection-factory.mjs +3 -3
  54. package/esm2022/f-connection/f-connection-center/f-connection-center.directive.mjs +3 -3
  55. package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +3 -3
  56. package/esm2022/f-connection/f-marker/f-marker-base.mjs +3 -3
  57. package/esm2022/f-connection/f-marker/f-marker.directive.mjs +3 -3
  58. package/esm2022/f-connectors/f-node-input/f-node-input-base.mjs +3 -3
  59. package/esm2022/f-connectors/f-node-input/f-node-input.directive.mjs +3 -3
  60. package/esm2022/f-connectors/f-node-outlet/f-node-outlet-base.mjs +3 -3
  61. package/esm2022/f-connectors/f-node-outlet/f-node-outlet.directive.mjs +3 -3
  62. package/esm2022/f-connectors/f-node-output/f-node-output-base.mjs +3 -3
  63. package/esm2022/f-connectors/f-node-output/f-node-output.directive.mjs +7 -4
  64. package/esm2022/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.execution.mjs +3 -3
  65. package/esm2022/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.validator.mjs +3 -3
  66. package/esm2022/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.execution.mjs +3 -3
  67. package/esm2022/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.validator.mjs +3 -3
  68. package/esm2022/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.execution.mjs +3 -3
  69. package/esm2022/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.validator.mjs +3 -3
  70. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.execution.mjs +3 -3
  71. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.execution.mjs +3 -3
  72. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.execution.mjs +3 -3
  73. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.validator.mjs +3 -3
  74. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.execution.mjs +3 -3
  75. package/esm2022/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.validator.mjs +3 -3
  76. package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.execution.mjs +3 -3
  77. package/esm2022/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.validator.mjs +3 -3
  78. package/esm2022/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.execution.mjs +3 -3
  79. package/esm2022/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.validator.mjs +3 -3
  80. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.execution.mjs +3 -3
  81. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.validator.mjs +3 -3
  82. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.execution.mjs +3 -3
  83. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.validator.mjs +3 -3
  84. package/esm2022/f-draggable/e-f-draggable-type.mjs +2 -2
  85. package/esm2022/f-draggable/external-item/external-item-finalize/external-item-finalize.execution.mjs +3 -3
  86. package/esm2022/f-draggable/external-item/external-item-finalize/external-item-finalize.validator.mjs +3 -3
  87. package/esm2022/f-draggable/external-item/external-item-preparation/external-item-preparation.execution.mjs +3 -3
  88. package/esm2022/f-draggable/external-item/external-item-preparation/external-item-preparation.validator.mjs +3 -3
  89. package/esm2022/f-draggable/f-draggable-base.mjs +7 -7
  90. package/esm2022/f-draggable/f-draggable-data-context.mjs +3 -3
  91. package/esm2022/f-draggable/f-draggable.directive.mjs +31 -8
  92. package/esm2022/f-draggable/i-f-drag-and-drop-plugin.mjs +3 -0
  93. package/esm2022/f-draggable/index.mjs +2 -1
  94. package/esm2022/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.mjs +3 -3
  95. package/esm2022/f-draggable/node/node-move-finalize/node-move-finalize.execution.mjs +3 -3
  96. package/esm2022/f-draggable/node/node-move-finalize/node-move-finalize.validator.mjs +3 -3
  97. package/esm2022/f-draggable/node/node-move-preparation/node-move-preparation.execution.mjs +3 -3
  98. package/esm2022/f-draggable/node/node-move-preparation/node-move-preparation.validator.mjs +3 -3
  99. package/esm2022/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.execution.mjs +3 -3
  100. package/esm2022/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.validator.mjs +3 -3
  101. package/esm2022/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.execution.mjs +3 -3
  102. package/esm2022/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.validator.mjs +3 -3
  103. package/esm2022/f-draggable/providers.mjs +4 -2
  104. package/esm2022/f-draggable/selection-area/selection-area-finalize/selection-area-finalize.execution.mjs +3 -3
  105. package/esm2022/f-draggable/selection-area/selection-area-finalize/selection-area-finalize.validator.mjs +3 -3
  106. package/esm2022/f-draggable/selection-area/selection-area-preparation/selection-area-preparation.execution.mjs +3 -3
  107. package/esm2022/f-draggable/selection-area/selection-area-preparation/selection-area-preparation.validator.mjs +3 -3
  108. package/esm2022/f-draggable/selection-area/selection-area.drag-handle.mjs +3 -1
  109. package/esm2022/f-draggable/single-select/single-select.execution.mjs +14 -11
  110. package/esm2022/f-draggable/single-select/single-select.validator.mjs +11 -7
  111. package/esm2022/f-external-item/f-external-item-base.mjs +3 -3
  112. package/esm2022/f-external-item/f-external-item.directive.mjs +11 -4
  113. package/esm2022/f-external-item/f-external-item.service.mjs +3 -3
  114. package/esm2022/f-flow/f-flow.component.mjs +9 -7
  115. package/esm2022/f-flow.module.mjs +20 -10
  116. package/esm2022/f-line-alignment/f-line-alignment-base.mjs +3 -3
  117. package/esm2022/f-line-alignment/f-line-alignment.component.mjs +3 -3
  118. package/esm2022/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.execution.mjs +43 -0
  119. package/esm2022/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.request.mjs +13 -0
  120. package/esm2022/f-minimap/domain/calculate-flow-point-from-minimap-point/index.mjs +3 -0
  121. package/esm2022/f-minimap/domain/f-minimap-data.mjs +12 -0
  122. package/esm2022/f-minimap/domain/f-minimap.drag-handler.mjs +43 -0
  123. package/esm2022/f-minimap/domain/index.mjs +7 -0
  124. package/esm2022/f-minimap/domain/minimap-drag-finalize/index.mjs +5 -0
  125. package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.mjs +27 -0
  126. package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.request.mjs +7 -0
  127. package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.validator.mjs +26 -0
  128. package/esm2022/f-minimap/domain/minimap-drag-finalize/providers.mjs +7 -0
  129. package/esm2022/f-minimap/domain/minimap-drag-preparation/index.mjs +5 -0
  130. package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.mjs +52 -0
  131. package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.request.mjs +9 -0
  132. package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.validator.mjs +30 -0
  133. package/esm2022/f-minimap/domain/minimap-drag-preparation/providers.mjs +7 -0
  134. package/esm2022/f-minimap/domain/providers.mjs +9 -0
  135. package/esm2022/f-minimap/f-minimap-canvas.directive.mjs +65 -0
  136. package/esm2022/f-minimap/f-minimap-flow.directive.mjs +78 -0
  137. package/esm2022/f-minimap/f-minimap-view.directive.mjs +40 -0
  138. package/esm2022/f-minimap/f-minimap.component.mjs +72 -0
  139. package/esm2022/f-minimap/index.mjs +7 -0
  140. package/esm2022/f-minimap/providers.mjs +11 -0
  141. package/esm2022/f-node/f-drag-handle/f-drag-handle.directive.mjs +7 -19
  142. package/esm2022/f-node/f-node.directive.mjs +14 -6
  143. package/esm2022/f-node/f-resize-handle/f-resize-handle.directive.mjs +5 -17
  144. package/esm2022/f-selection-area/f-selection-area-base.mjs +3 -3
  145. package/esm2022/f-selection-area/f-selection-area.component.mjs +3 -3
  146. package/esm2022/f-storage/f-components-store.mjs +4 -4
  147. package/esm2022/f-storage/f-transform-store.mjs +12 -0
  148. package/esm2022/f-storage/index.mjs +2 -1
  149. package/esm2022/f-zoom/f-zoom-base.mjs +97 -0
  150. package/esm2022/f-zoom/f-zoom.directive.mjs +59 -0
  151. package/esm2022/f-zoom/index.mjs +4 -0
  152. package/esm2022/f-zoom/providers.mjs +5 -0
  153. package/esm2022/infrastructure/f-mediator/f-flow-mediator.mjs +3 -3
  154. package/esm2022/infrastructure/pipeline/pipeline.mjs +1 -1
  155. package/esm2022/public-api.mjs +3 -1
  156. package/f-canvas/index.d.ts +0 -1
  157. package/f-canvas/providers.d.ts +1 -2
  158. package/f-draggable/e-f-draggable-type.d.ts +1 -1
  159. package/f-draggable/f-draggable-base.d.ts +2 -2
  160. package/f-draggable/f-draggable.directive.d.ts +6 -4
  161. package/f-draggable/i-f-drag-and-drop-plugin.d.ts +9 -0
  162. package/f-draggable/index.d.ts +1 -0
  163. package/f-draggable/providers.d.ts +1 -1
  164. package/f-draggable/single-select/single-select.execution.d.ts +3 -1
  165. package/f-draggable/single-select/single-select.validator.d.ts +3 -1
  166. package/f-external-item/f-external-item.directive.d.ts +1 -0
  167. package/f-flow/f-flow.component.d.ts +1 -1
  168. package/f-flow.module.d.ts +12 -8
  169. package/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.execution.d.ts +18 -0
  170. package/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.request.d.ts +9 -0
  171. package/f-minimap/domain/calculate-flow-point-from-minimap-point/index.d.ts +2 -0
  172. package/f-minimap/domain/f-minimap-data.d.ts +7 -0
  173. package/f-minimap/domain/f-minimap.drag-handler.d.ts +21 -0
  174. package/f-minimap/domain/index.d.ts +6 -0
  175. package/f-minimap/domain/minimap-drag-finalize/index.d.ts +4 -0
  176. package/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.d.ts +11 -0
  177. package/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.request.d.ts +5 -0
  178. package/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.validator.d.ts +11 -0
  179. package/f-minimap/domain/minimap-drag-finalize/providers.d.ts +3 -0
  180. package/f-minimap/domain/minimap-drag-preparation/index.d.ts +4 -0
  181. package/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.d.ts +17 -0
  182. package/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.request.d.ts +7 -0
  183. package/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.validator.d.ts +13 -0
  184. package/f-minimap/domain/minimap-drag-preparation/providers.d.ts +3 -0
  185. package/f-minimap/domain/providers.d.ts +2 -0
  186. package/f-minimap/f-minimap-canvas.directive.d.ts +22 -0
  187. package/f-minimap/f-minimap-flow.directive.d.ts +28 -0
  188. package/f-minimap/f-minimap-view.directive.d.ts +14 -0
  189. package/f-minimap/f-minimap.component.d.ts +26 -0
  190. package/f-minimap/index.d.ts +6 -0
  191. package/f-minimap/providers.d.ts +5 -0
  192. package/f-node/f-drag-handle/f-drag-handle.directive.d.ts +1 -4
  193. package/f-node/f-node.directive.d.ts +4 -1
  194. package/f-node/f-resize-handle/f-resize-handle.directive.d.ts +1 -4
  195. package/f-storage/f-transform-store.d.ts +7 -0
  196. package/f-storage/index.d.ts +1 -0
  197. package/{f-canvas/f-zoom → f-zoom}/f-zoom-base.d.ts +1 -1
  198. package/{f-canvas/f-zoom → f-zoom}/f-zoom.directive.d.ts +1 -1
  199. package/{f-canvas/f-zoom → f-zoom}/index.d.ts +1 -0
  200. package/f-zoom/providers.d.ts +2 -0
  201. package/fesm2022/foblex-flow.mjs +4924 -4367
  202. package/fesm2022/foblex-flow.mjs.map +1 -1
  203. package/package.json +4 -4
  204. package/public-api.d.ts +2 -0
  205. package/esm2022/f-canvas/f-zoom/f-zoom-base.mjs +0 -95
  206. package/esm2022/f-canvas/f-zoom/f-zoom.directive.mjs +0 -59
  207. package/esm2022/f-canvas/f-zoom/index.mjs +0 -3
@@ -0,0 +1,78 @@
1
+ import { Directive, Input, } from "@angular/core";
2
+ import { RectExtensions, SizeExtensions } from '@foblex/core';
3
+ import { FMinimapData } from './domain';
4
+ import { GetNodesRectRequest } from '../domain';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../infrastructure";
7
+ import * as i2 from "../f-storage";
8
+ export class FMinimapFlowDirective {
9
+ elementReference;
10
+ fMediator;
11
+ fComponentsStore;
12
+ model;
13
+ fMinSize = 1000;
14
+ get flowHost() {
15
+ return this.fComponentsStore.flowHost;
16
+ }
17
+ get hostElement() {
18
+ return this.elementReference.nativeElement;
19
+ }
20
+ constructor(elementReference, fMediator, fComponentsStore) {
21
+ this.elementReference = elementReference;
22
+ this.fMediator = fMediator;
23
+ this.fComponentsStore = fComponentsStore;
24
+ this.model = new FMinimapData(this.hostElement);
25
+ }
26
+ update() {
27
+ const nodesRect = this.getProcessedNodesRect();
28
+ const minimapRect = this.getMinimapRect();
29
+ const scale = this.calculateViewScale(nodesRect, minimapRect);
30
+ const viewBox = this.calculateViewBox(nodesRect, minimapRect, scale);
31
+ this.model = new FMinimapData(this.hostElement, scale, viewBox);
32
+ this.setViewBox(viewBox);
33
+ }
34
+ getProcessedNodesRect() {
35
+ const normalizedRect = this.normalizeRect(this.getNodesRect());
36
+ return this.ensureMinimumSize(normalizedRect);
37
+ }
38
+ getNodesRect() {
39
+ return RectExtensions.elementTransform(this.fMediator.send(new GetNodesRectRequest()), this.flowHost);
40
+ }
41
+ getMinimapRect() {
42
+ return RectExtensions.elementTransform(RectExtensions.fromElement(this.hostElement), this.flowHost);
43
+ }
44
+ normalizeRect(rect) {
45
+ return RectExtensions.div(rect, this.fComponentsStore.transform.scale);
46
+ }
47
+ ensureMinimumSize(rect) {
48
+ return RectExtensions.initialize(rect.x - (Math.max(rect.width, this.fMinSize) - rect.width) / 2, rect.y - (Math.max(rect.height, this.fMinSize) - rect.height) / 2, Math.max(rect.width, this.fMinSize), Math.max(rect.height, this.fMinSize));
49
+ }
50
+ calculateViewScale(nodesRect, minimapRect) {
51
+ return Math.max(nodesRect.width / minimapRect.width, nodesRect.height / minimapRect.height);
52
+ }
53
+ calculateViewBox(nodesRect, minimapRect, scale) {
54
+ return this.calculateCenteredViewBox(nodesRect, this.calculateViewSize(minimapRect, scale));
55
+ }
56
+ calculateViewSize(minimapRect, scale) {
57
+ return SizeExtensions.initialize(minimapRect.width * scale || 0, minimapRect.height * scale || 0);
58
+ }
59
+ calculateCenteredViewBox(nodesRect, viewSize) {
60
+ const centeredX = nodesRect.x - (viewSize.width - nodesRect.width) / 2;
61
+ const centeredY = nodesRect.y - (viewSize.height - nodesRect.height) / 2;
62
+ return RectExtensions.initialize(centeredX, centeredY, viewSize.width, viewSize.height);
63
+ }
64
+ setViewBox(viewBox) {
65
+ this.hostElement.setAttribute('viewBox', `${viewBox.x} ${viewBox.y} ${viewBox.width} ${viewBox.height}`);
66
+ }
67
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FMinimapFlowDirective, deps: [{ token: i0.ElementRef }, { token: i1.FFlowMediator }, { token: i2.FComponentsStore }], target: i0.ɵɵFactoryTarget.Directive });
68
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.0", type: FMinimapFlowDirective, selector: "svg[fMinimapFlow]", inputs: { fMinSize: "fMinSize" }, ngImport: i0 });
69
+ }
70
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FMinimapFlowDirective, decorators: [{
71
+ type: Directive,
72
+ args: [{
73
+ selector: 'svg[fMinimapFlow]'
74
+ }]
75
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.FFlowMediator }, { type: i2.FComponentsStore }], propDecorators: { fMinSize: [{
76
+ type: Input
77
+ }] } });
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1taW5pbWFwLWZsb3cuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLW1pbmltYXAvZi1taW5pbWFwLWZsb3cuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQWMsS0FBSyxHQUM3QixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQWdCLGNBQWMsRUFBRSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFNUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxXQUFXLENBQUM7Ozs7QUFLaEQsTUFBTSxPQUFPLHFCQUFxQjtJQWdCdEI7SUFDQTtJQUNBO0lBaEJILEtBQUssQ0FBZTtJQUdwQixRQUFRLEdBQVcsSUFBSSxDQUFDO0lBRS9CLElBQVksUUFBUTtRQUNsQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUM7SUFDeEMsQ0FBQztJQUVELElBQVcsV0FBVztRQUNwQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7SUFDN0MsQ0FBQztJQUVELFlBQ1UsZ0JBQTJDLEVBQzNDLFNBQXdCLEVBQ3hCLGdCQUFrQztRQUZsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQTJCO1FBQzNDLGNBQVMsR0FBVCxTQUFTLENBQWU7UUFDeEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUUxQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRU0sTUFBTTtRQUNYLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQy9DLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUUx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QUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN2RSxNQUFNLFNBQVMsR0FBRyxTQUFTLENBQUMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3pFLE9BQU8sY0FBYyxDQUFDLFVBQVUsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLFFBQVEsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzFGLENBQUM7SUFFTyxVQUFVLENBQUMsT0FBYztRQUMvQixJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsR0FBSSxPQUFPLENBQUMsQ0FBRSxJQUFLLE9BQU8sQ0FBQyxDQUFFLElBQUssT0FBTyxDQUFDLEtBQU0sSUFBSyxPQUFPLENBQUMsTUFBTyxFQUFFLENBQUMsQ0FBQztJQUNuSCxDQUFDO3VHQS9FVSxxQkFBcUI7MkZBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFIakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO2lCQUM5QjswSUFNUSxRQUFRO3NCQURkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBJUmVjdCwgSVNpemUsIFJlY3RFeHRlbnNpb25zLCBTaXplRXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBGRmxvd01lZGlhdG9yIH0gZnJvbSAnLi4vaW5mcmFzdHJ1Y3R1cmUnO1xuaW1wb3J0IHsgRk1pbmltYXBEYXRhIH0gZnJvbSAnLi9kb21haW4nO1xuaW1wb3J0IHsgR2V0Tm9kZXNSZWN0UmVxdWVzdCB9IGZyb20gJy4uL2RvbWFpbic7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ3N2Z1tmTWluaW1hcEZsb3ddJ1xufSlcbmV4cG9ydCBjbGFzcyBGTWluaW1hcEZsb3dEaXJlY3RpdmUge1xuXG4gIHB1YmxpYyBtb2RlbDogRk1pbmltYXBEYXRhO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmTWluU2l6ZTogbnVtYmVyID0gMTAwMDtcblxuICBwcml2YXRlIGdldCBmbG93SG9zdCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mbG93SG9zdDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaG9zdEVsZW1lbnQoKTogU1ZHU1ZHRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZmVyZW5jZS5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmZXJlbmNlOiBFbGVtZW50UmVmPFNWR1NWR0VsZW1lbnQ+LFxuICAgIHByaXZhdGUgZk1lZGlhdG9yOiBGRmxvd01lZGlhdG9yLFxuICAgIHByaXZhdGUgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZVxuICApIHtcbiAgICB0aGlzLm1vZGVsID0gbmV3IEZNaW5pbWFwRGF0YSh0aGlzLmhvc3RFbGVtZW50KTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGUoKTogdm9pZCB7XG4gICAgY29uc3Qgbm9kZXNSZWN0ID0gdGhpcy5nZXRQcm9jZXNzZWROb2Rlc1JlY3QoKTtcbiAgICBjb25zdCBtaW5pbWFwUmVjdCA9IHRoaXMuZ2V0TWluaW1hcFJlY3QoKTtcblxuICAgIGNvbnN0IHNjYWxlID0gdGhpcy5jYWxjdWxhdGVWaWV3U2NhbGUobm9kZXNSZWN0LCBtaW5pbWFwUmVjdCk7XG4gICAgY29uc3Qgdmlld0JveCA9IHRoaXMuY2FsY3VsYXRlVmlld0JveChub2Rlc1JlY3QsIG1pbmltYXBSZWN0LCBzY2FsZSk7XG4gICAgdGhpcy5tb2RlbCA9IG5ldyBGTWluaW1hcERhdGEodGhpcy5ob3N0RWxlbWVudCwgc2NhbGUsIHZpZXdCb3gpO1xuICAgIHRoaXMuc2V0Vmlld0JveCh2aWV3Qm94KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UHJvY2Vzc2VkTm9kZXNSZWN0KCk6IElSZWN0IHtcbiAgICBjb25zdCBub3JtYWxpemVkUmVjdCA9IHRoaXMubm9ybWFsaXplUmVjdCh0aGlzLmdldE5vZGVzUmVjdCgpKTtcbiAgICByZXR1cm4gdGhpcy5lbnN1cmVNaW5pbXVtU2l6ZShub3JtYWxpemVkUmVjdCk7XG4gIH1cblxuICBwcml2YXRlIGdldE5vZGVzUmVjdCgpOiBJUmVjdCB7XG4gICAgcmV0dXJuIFJlY3RFeHRlbnNpb25zLmVsZW1lbnRUcmFuc2Zvcm0odGhpcy5mTWVkaWF0b3Iuc2VuZDxJUmVjdD4obmV3IEdldE5vZGVzUmVjdFJlcXVlc3QoKSksIHRoaXMuZmxvd0hvc3QpXG4gIH1cblxuICBwcml2YXRlIGdldE1pbmltYXBSZWN0KCk6IElSZWN0IHtcbiAgICByZXR1cm4gUmVjdEV4dGVuc2lvbnMuZWxlbWVudFRyYW5zZm9ybShSZWN0RXh0ZW5zaW9ucy5mcm9tRWxlbWVudCh0aGlzLmhvc3RFbGVtZW50KSwgdGhpcy5mbG93SG9zdCk7XG4gIH1cblxuICBwcml2YXRlIG5vcm1hbGl6ZVJlY3QocmVjdDogSVJlY3QpOiBJUmVjdCB7XG4gICAgcmV0dXJuIFJlY3RFeHRlbnNpb25zLmRpdihyZWN0LCB0aGlzLmZDb21wb25lbnRzU3RvcmUudHJhbnNmb3JtLnNjYWxlKTtcbiAgfVxuXG4gIHByaXZhdGUgZW5zdXJlTWluaW11bVNpemUocmVjdDogSVJlY3QpOiBJUmVjdCB7XG4gICAgcmV0dXJuIFJlY3RFeHRlbnNpb25zLmluaXRpYWxpemUoXG4gICAgICByZWN0LnggLSAoTWF0aC5tYXgocmVjdC53aWR0aCwgdGhpcy5mTWluU2l6ZSkgLSByZWN0LndpZHRoKSAvIDIsXG4gICAgICByZWN0LnkgLSAoTWF0aC5tYXgocmVjdC5oZWlnaHQsIHRoaXMuZk1pblNpemUpIC0gcmVjdC5oZWlnaHQpIC8gMixcbiAgICAgIE1hdGgubWF4KHJlY3Qud2lkdGgsIHRoaXMuZk1pblNpemUpLFxuICAgICAgTWF0aC5tYXgocmVjdC5oZWlnaHQsIHRoaXMuZk1pblNpemUpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgY2FsY3VsYXRlVmlld1NjYWxlKG5vZGVzUmVjdDogSVJlY3QsIG1pbmltYXBSZWN0OiBJUmVjdCk6IG51bWJlciB7XG4gICAgcmV0dXJuIE1hdGgubWF4KG5vZGVzUmVjdC53aWR0aCAvIG1pbmltYXBSZWN0LndpZHRoLCBub2Rlc1JlY3QuaGVpZ2h0IC8gbWluaW1hcFJlY3QuaGVpZ2h0KTtcbiAgfVxuXG4gIHByaXZhdGUgY2FsY3VsYXRlVmlld0JveChub2Rlc1JlY3Q6IElSZWN0LCBtaW5pbWFwUmVjdDogSVJlY3QsIHNjYWxlOiBudW1iZXIpOiBJUmVjdCB7XG4gICAgcmV0dXJuIHRoaXMuY2FsY3VsYXRlQ2VudGVyZWRWaWV3Qm94KG5vZGVzUmVjdCwgdGhpcy5jYWxjdWxhdGVWaWV3U2l6ZShtaW5pbWFwUmVjdCwgc2NhbGUpKTtcbiAgfVxuXG4gIHByaXZhdGUgY2FsY3VsYXRlVmlld1NpemUobWluaW1hcFJlY3Q6IElSZWN0LCBzY2FsZTogbnVtYmVyKTogSVNpemUge1xuICAgIHJldHVybiBTaXplRXh0ZW5zaW9ucy5pbml0aWFsaXplKG1pbmltYXBSZWN0LndpZHRoICogc2NhbGUgfHwgMCwgbWluaW1hcFJlY3QuaGVpZ2h0ICogc2NhbGUgfHwgMCk7XG4gIH1cblxuICBwcml2YXRlIGNhbGN1bGF0ZUNlbnRlcmVkVmlld0JveChub2Rlc1JlY3Q6IElSZWN0LCB2aWV3U2l6ZTogSVNpemUpOiBJUmVjdCB7XG4gICAgY29uc3QgY2VudGVyZWRYID0gbm9kZXNSZWN0LnggLSAodmlld1NpemUud2lkdGggLSBub2Rlc1JlY3Qud2lkdGgpIC8gMjtcbiAgICBjb25zdCBjZW50ZXJlZFkgPSBub2Rlc1JlY3QueSAtICh2aWV3U2l6ZS5oZWlnaHQgLSBub2Rlc1JlY3QuaGVpZ2h0KSAvIDI7XG4gICAgcmV0dXJuIFJlY3RFeHRlbnNpb25zLmluaXRpYWxpemUoY2VudGVyZWRYLCBjZW50ZXJlZFksIHZpZXdTaXplLndpZHRoLCB2aWV3U2l6ZS5oZWlnaHQpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRWaWV3Qm94KHZpZXdCb3g6IElSZWN0KTogdm9pZCB7XG4gICAgdGhpcy5ob3N0RWxlbWVudC5zZXRBdHRyaWJ1dGUoJ3ZpZXdCb3gnLCBgJHsgdmlld0JveC54IH0gJHsgdmlld0JveC55IH0gJHsgdmlld0JveC53aWR0aCB9ICR7IHZpZXdCb3guaGVpZ2h0IH1gKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,40 @@
1
+ import { Directive } from "@angular/core";
2
+ import { RectExtensions } from '@foblex/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../f-storage";
5
+ export class FMinimapViewDirective {
6
+ elementReference;
7
+ fComponentsStore;
8
+ get hostElement() {
9
+ return this.elementReference.nativeElement;
10
+ }
11
+ get flowScale() {
12
+ return this.fComponentsStore.transform.scale;
13
+ }
14
+ constructor(elementReference, fComponentsStore) {
15
+ this.elementReference = elementReference;
16
+ this.fComponentsStore = fComponentsStore;
17
+ }
18
+ update() {
19
+ const viewBox = RectExtensions.div(RectExtensions.fromElement(this.fComponentsStore.flowHost), this.flowScale);
20
+ this.setAttributes(viewBox);
21
+ }
22
+ setAttributes(viewBox) {
23
+ this.hostElement.setAttribute('x', '0');
24
+ this.hostElement.setAttribute('y', '0');
25
+ this.hostElement.setAttribute('width', viewBox.width.toString());
26
+ this.hostElement.setAttribute('height', viewBox.height.toString());
27
+ }
28
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FMinimapViewDirective, deps: [{ token: i0.ElementRef }, { token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Directive });
29
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.0", type: FMinimapViewDirective, selector: "rect[fMinimapView]", host: { classAttribute: "f-component f-minimap-view" }, ngImport: i0 });
30
+ }
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FMinimapViewDirective, decorators: [{
32
+ type: Directive,
33
+ args: [{
34
+ selector: 'rect[fMinimapView]',
35
+ host: {
36
+ 'class': 'f-component f-minimap-view',
37
+ }
38
+ }]
39
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.FComponentsStore }] });
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1taW5pbWFwLXZpZXcuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLW1pbmltYXAvZi1taW5pbWFwLXZpZXcuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsTUFBTSxlQUFlLENBQUM7QUFFdEQsT0FBTyxFQUFTLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7O0FBUXJELE1BQU0sT0FBTyxxQkFBcUI7SUFXdEI7SUFDQTtJQVZWLElBQVcsV0FBVztRQUNwQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7SUFDN0MsQ0FBQztJQUVELElBQVksU0FBUztRQUNuQixPQUFPLElBQUksQ0FBQyxnQkFBaUIsQ0FBQyxTQUFVLENBQUMsS0FBTSxDQUFDO0lBQ2xELENBQUM7SUFFRCxZQUNVLGdCQUE0QyxFQUM1QyxnQkFBa0M7UUFEbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUE0QjtRQUM1QyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBRTVDLENBQUM7SUFFTSxNQUFNO1FBQ1gsTUFBTSxPQUFPLEdBQUcsY0FBYyxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDL0csSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRU8sYUFBYSxDQUFDLE9BQWM7UUFDbEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN4QyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ2pFLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDckUsQ0FBQzt1R0ExQlUscUJBQXFCOzJGQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBTmpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsSUFBSSxFQUFFO3dCQUNKLE9BQU8sRUFBRSw0QkFBNEI7cUJBQ3RDO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgSVJlY3QsIFJlY3RFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAncmVjdFtmTWluaW1hcFZpZXddJyxcbiAgaG9zdDoge1xuICAgICdjbGFzcyc6ICdmLWNvbXBvbmVudCBmLW1pbmltYXAtdmlldycsXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgRk1pbmltYXBWaWV3RGlyZWN0aXZlIHtcblxuICBwdWJsaWMgZ2V0IGhvc3RFbGVtZW50KCk6IFNWR1JlY3RFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmZXJlbmNlLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBwcml2YXRlIGdldCBmbG93U2NhbGUoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlIS50cmFuc2Zvcm0hLnNjYWxlITtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZWxlbWVudFJlZmVyZW5jZTogRWxlbWVudFJlZjxTVkdSZWN0RWxlbWVudD4sXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlXG4gICkge1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZSgpOiB2b2lkIHtcbiAgICBjb25zdCB2aWV3Qm94ID0gUmVjdEV4dGVuc2lvbnMuZGl2KFJlY3RFeHRlbnNpb25zLmZyb21FbGVtZW50KHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mbG93SG9zdCksIHRoaXMuZmxvd1NjYWxlKTtcbiAgICB0aGlzLnNldEF0dHJpYnV0ZXModmlld0JveCk7XG4gIH1cblxuICBwcml2YXRlIHNldEF0dHJpYnV0ZXModmlld0JveDogSVJlY3QpOiB2b2lkIHtcbiAgICB0aGlzLmhvc3RFbGVtZW50LnNldEF0dHJpYnV0ZSgneCcsICcwJyk7XG4gICAgdGhpcy5ob3N0RWxlbWVudC5zZXRBdHRyaWJ1dGUoJ3knLCAnMCcpO1xuICAgIHRoaXMuaG9zdEVsZW1lbnQuc2V0QXR0cmlidXRlKCd3aWR0aCcsIHZpZXdCb3gud2lkdGgudG9TdHJpbmcoKSk7XG4gICAgdGhpcy5ob3N0RWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2hlaWdodCcsIHZpZXdCb3guaGVpZ2h0LnRvU3RyaW5nKCkpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,72 @@
1
+ import { ChangeDetectionStrategy, Component, Input, ViewChild, } from "@angular/core";
2
+ import { debounceTime, Subscription } from 'rxjs';
3
+ import { SubscribeOnTransformChangesRequest } from '../domain';
4
+ import { FMinimapFlowDirective } from './f-minimap-flow.directive';
5
+ import { FMinimapCanvasDirective } from './f-minimap-canvas.directive';
6
+ import { FMinimapViewDirective } from './f-minimap-view.directive';
7
+ import { F_DRAG_AND_DROP_PLUGIN } from '../f-draggable';
8
+ import { MinimapDragFinalizeRequest, MinimapDragPreparationRequest } from './domain';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "../infrastructure";
11
+ import * as i2 from "./f-minimap-canvas.directive";
12
+ import * as i3 from "./f-minimap-view.directive";
13
+ import * as i4 from "./f-minimap-flow.directive";
14
+ export class FMinimapComponent {
15
+ elementReference;
16
+ fMediator;
17
+ subscriptions$ = new Subscription();
18
+ fMinimapCanvas;
19
+ fMinimapFlow;
20
+ fMinimapView;
21
+ fMinSize = 1000;
22
+ constructor(elementReference, fMediator) {
23
+ this.elementReference = elementReference;
24
+ this.fMediator = fMediator;
25
+ }
26
+ ngAfterViewInit() {
27
+ this.subscriptions$.add(this.subscribeOnTransformChanges());
28
+ }
29
+ subscribeOnTransformChanges() {
30
+ return this.getTransformChanges().pipe(debounceTime(5)).subscribe(() => {
31
+ this.fMinimapFlow.update();
32
+ this.fMinimapView.update();
33
+ this.fMinimapCanvas.redraw();
34
+ });
35
+ }
36
+ getTransformChanges() {
37
+ return this.fMediator.send(new SubscribeOnTransformChangesRequest());
38
+ }
39
+ onPointerDown(event) {
40
+ this.fMediator.send(new MinimapDragPreparationRequest(event, this.fMinimapFlow.model));
41
+ }
42
+ onPointerUp(event) {
43
+ this.fMediator.send(new MinimapDragFinalizeRequest(event));
44
+ }
45
+ ngOnDestroy() {
46
+ this.subscriptions$.unsubscribe();
47
+ }
48
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FMinimapComponent, deps: [{ token: i0.ElementRef }, { token: i1.FFlowMediator }], target: i0.ɵɵFactoryTarget.Component });
49
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: FMinimapComponent, selector: "f-minimap", inputs: { fMinSize: "fMinSize" }, host: { classAttribute: "f-component f-minimap" }, providers: [
50
+ { provide: F_DRAG_AND_DROP_PLUGIN, useExisting: FMinimapComponent },
51
+ ], viewQueries: [{ propertyName: "fMinimapCanvas", first: true, predicate: FMinimapCanvasDirective, descendants: true, static: true }, { propertyName: "fMinimapFlow", first: true, predicate: FMinimapFlowDirective, descendants: true, static: true }, { propertyName: "fMinimapView", first: true, predicate: FMinimapViewDirective, descendants: true, static: true }], exportAs: ["fComponent"], ngImport: i0, template: "<svg fMinimapFlow width=\"100%\" height=\"100%\" fLockedContext [fMinSize]=\"fMinSize\">\n <g fMinimapCanvas></g>\n <rect fMinimapView x=\"0\" y=\"0\" width=\"100%\" height=\"100%\" stroke=\"none\"/>\n</svg>\n\n", styles: [":host{display:block;position:absolute}:host svg{overflow:hidden}\n"], dependencies: [{ kind: "directive", type: i2.FMinimapCanvasDirective, selector: "g[fMinimapCanvas]" }, { kind: "directive", type: i3.FMinimapViewDirective, selector: "rect[fMinimapView]" }, { kind: "directive", type: i4.FMinimapFlowDirective, selector: "svg[fMinimapFlow]", inputs: ["fMinSize"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
52
+ }
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FMinimapComponent, decorators: [{
54
+ type: Component,
55
+ args: [{ selector: 'f-minimap', exportAs: 'fComponent', host: {
56
+ 'class': 'f-component f-minimap',
57
+ }, providers: [
58
+ { provide: F_DRAG_AND_DROP_PLUGIN, useExisting: FMinimapComponent },
59
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<svg fMinimapFlow width=\"100%\" height=\"100%\" fLockedContext [fMinSize]=\"fMinSize\">\n <g fMinimapCanvas></g>\n <rect fMinimapView x=\"0\" y=\"0\" width=\"100%\" height=\"100%\" stroke=\"none\"/>\n</svg>\n\n", styles: [":host{display:block;position:absolute}:host svg{overflow:hidden}\n"] }]
60
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.FFlowMediator }], propDecorators: { fMinimapCanvas: [{
61
+ type: ViewChild,
62
+ args: [FMinimapCanvasDirective, { static: true }]
63
+ }], fMinimapFlow: [{
64
+ type: ViewChild,
65
+ args: [FMinimapFlowDirective, { static: true }]
66
+ }], fMinimapView: [{
67
+ type: ViewChild,
68
+ args: [FMinimapViewDirective, { static: true }]
69
+ }], fMinSize: [{
70
+ type: Input
71
+ }] } });
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1taW5pbWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1taW5pbWFwL2YtbWluaW1hcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtbWluaW1hcC9mLW1pbmltYXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNVLHVCQUF1QixFQUFFLFNBQVMsRUFDckMsS0FBSyxFQUFhLFNBQVMsR0FDeEMsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFlBQVksRUFBYyxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUQsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ25FLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRW5FLE9BQU8sRUFBRSxzQkFBc0IsRUFBdUIsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxVQUFVLENBQUM7Ozs7OztBQWVyRixNQUFNLE9BQU8saUJBQWlCO0lBaUJsQjtJQUNBO0lBaEJGLGNBQWMsR0FBaUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUduRCxjQUFjLENBQTJCO0lBR3pDLFlBQVksQ0FBeUI7SUFHckMsWUFBWSxDQUF5QjtJQUdyQyxRQUFRLEdBQVcsSUFBSSxDQUFDO0lBRS9CLFlBQ1UsZ0JBQXlDLEVBQ3pDLFNBQXdCO1FBRHhCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBeUI7UUFDekMsY0FBUyxHQUFULFNBQVMsQ0FBZTtJQUVsQyxDQUFDO0lBRU0sZUFBZTtRQUNwQixJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLEVBQUUsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFTywyQkFBMkI7UUFDakMsT0FBTyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNyRSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDM0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMvQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxtQkFBbUI7UUFDekIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBbUIsSUFBSSxrQ0FBa0MsRUFBRSxDQUFDLENBQUM7SUFDekYsQ0FBQztJQUVNLGFBQWEsQ0FBQyxLQUFvQjtRQUN2QyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLDZCQUE2QixDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDekYsQ0FBQztJQUVNLFdBQVcsQ0FBQyxLQUFvQjtRQUNyQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLDBCQUEwQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNwQyxDQUFDO3VHQWhEVSxpQkFBaUI7MkZBQWpCLGlCQUFpQix5SEFMakI7WUFDVCxFQUFFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUU7U0FDcEUsMEVBT1UsdUJBQXVCLDZGQUd2QixxQkFBcUIsNkZBR3JCLHFCQUFxQix3RkNyQ2xDLHVOQUtBOzsyRkRzQmEsaUJBQWlCO2tCQWI3QixTQUFTOytCQUNFLFdBQVcsWUFHWCxZQUFZLFFBQ2hCO3dCQUNKLE9BQU8sRUFBRSx1QkFBdUI7cUJBQ2pDLGFBQ1U7d0JBQ1QsRUFBRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsV0FBVyxtQkFBbUIsRUFBRTtxQkFDcEUsbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU07MkdBT3hDLGNBQWM7c0JBRHBCLFNBQVM7dUJBQUMsdUJBQXVCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUk3QyxZQUFZO3NCQURsQixTQUFTO3VCQUFDLHFCQUFxQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFJM0MsWUFBWTtzQkFEbEIsU0FBUzt1QkFBQyxxQkFBcUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSTNDLFFBQVE7c0JBRGQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsIElucHV0LCBPbkRlc3Ryb3ksIFZpZXdDaGlsZCxcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEZGbG93TWVkaWF0b3IgfSBmcm9tICcuLi9pbmZyYXN0cnVjdHVyZSc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU3Vic2NyaWJlT25UcmFuc2Zvcm1DaGFuZ2VzUmVxdWVzdCB9IGZyb20gJy4uL2RvbWFpbic7XG5pbXBvcnQgeyBGTWluaW1hcEZsb3dEaXJlY3RpdmUgfSBmcm9tICcuL2YtbWluaW1hcC1mbG93LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGTWluaW1hcENhbnZhc0RpcmVjdGl2ZSB9IGZyb20gJy4vZi1taW5pbWFwLWNhbnZhcy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRk1pbmltYXBWaWV3RGlyZWN0aXZlIH0gZnJvbSAnLi9mLW1pbmltYXAtdmlldy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgSVBvaW50ZXJFdmVudCB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBGX0RSQUdfQU5EX0RST1BfUExVR0lOLCBJRkRyYWdBbmREcm9wUGx1Z2luIH0gZnJvbSAnLi4vZi1kcmFnZ2FibGUnO1xuaW1wb3J0IHsgTWluaW1hcERyYWdGaW5hbGl6ZVJlcXVlc3QsIE1pbmltYXBEcmFnUHJlcGFyYXRpb25SZXF1ZXN0IH0gZnJvbSAnLi9kb21haW4nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmLW1pbmltYXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vZi1taW5pbWFwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbICcuL2YtbWluaW1hcC5jb21wb25lbnQuc2NzcycgXSxcbiAgZXhwb3J0QXM6ICdmQ29tcG9uZW50JyxcbiAgaG9zdDoge1xuICAgICdjbGFzcyc6ICdmLWNvbXBvbmVudCBmLW1pbmltYXAnLFxuICB9LFxuICBwcm92aWRlcnM6IFtcbiAgICB7IHByb3ZpZGU6IEZfRFJBR19BTkRfRFJPUF9QTFVHSU4sIHVzZUV4aXN0aW5nOiBGTWluaW1hcENvbXBvbmVudCB9LFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRk1pbmltYXBDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIElGRHJhZ0FuZERyb3BQbHVnaW4ge1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9ucyQ6IFN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICBAVmlld0NoaWxkKEZNaW5pbWFwQ2FudmFzRGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwdWJsaWMgZk1pbmltYXBDYW52YXMhOiBGTWluaW1hcENhbnZhc0RpcmVjdGl2ZTtcblxuICBAVmlld0NoaWxkKEZNaW5pbWFwRmxvd0RpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUgfSlcbiAgcHVibGljIGZNaW5pbWFwRmxvdyE6IEZNaW5pbWFwRmxvd0RpcmVjdGl2ZTtcblxuICBAVmlld0NoaWxkKEZNaW5pbWFwVmlld0RpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUgfSlcbiAgcHVibGljIGZNaW5pbWFwVmlldyE6IEZNaW5pbWFwVmlld0RpcmVjdGl2ZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZk1pblNpemU6IG51bWJlciA9IDEwMDA7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmZXJlbmNlOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIGZNZWRpYXRvcjogRkZsb3dNZWRpYXRvclxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zJC5hZGQodGhpcy5zdWJzY3JpYmVPblRyYW5zZm9ybUNoYW5nZXMoKSk7XG4gIH1cblxuICBwcml2YXRlIHN1YnNjcmliZU9uVHJhbnNmb3JtQ2hhbmdlcygpOiBTdWJzY3JpcHRpb24ge1xuICAgIHJldHVybiB0aGlzLmdldFRyYW5zZm9ybUNoYW5nZXMoKS5waXBlKGRlYm91bmNlVGltZSg1KSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuZk1pbmltYXBGbG93LnVwZGF0ZSgpO1xuICAgICAgdGhpcy5mTWluaW1hcFZpZXcudXBkYXRlKCk7XG4gICAgICB0aGlzLmZNaW5pbWFwQ2FudmFzLnJlZHJhdygpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRUcmFuc2Zvcm1DaGFuZ2VzKCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLmZNZWRpYXRvci5zZW5kPE9ic2VydmFibGU8dm9pZD4+KG5ldyBTdWJzY3JpYmVPblRyYW5zZm9ybUNoYW5nZXNSZXF1ZXN0KCkpO1xuICB9XG5cbiAgcHVibGljIG9uUG9pbnRlckRvd24oZXZlbnQ6IElQb2ludGVyRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmZNZWRpYXRvci5zZW5kKG5ldyBNaW5pbWFwRHJhZ1ByZXBhcmF0aW9uUmVxdWVzdChldmVudCwgdGhpcy5mTWluaW1hcEZsb3cubW9kZWwpKTtcbiAgfVxuXG4gIHB1YmxpYyBvblBvaW50ZXJVcChldmVudDogSVBvaW50ZXJFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQobmV3IE1pbmltYXBEcmFnRmluYWxpemVSZXF1ZXN0KGV2ZW50KSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zJC51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iLCI8c3ZnIGZNaW5pbWFwRmxvdyB3aWR0aD1cIjEwMCVcIiBoZWlnaHQ9XCIxMDAlXCIgZkxvY2tlZENvbnRleHQgW2ZNaW5TaXplXT1cImZNaW5TaXplXCI+XG4gIDxnIGZNaW5pbWFwQ2FudmFzPjwvZz5cbiAgPHJlY3QgZk1pbmltYXBWaWV3IHg9XCIwXCIgeT1cIjBcIiB3aWR0aD1cIjEwMCVcIiBoZWlnaHQ9XCIxMDAlXCIgc3Ryb2tlPVwibm9uZVwiLz5cbjwvc3ZnPlxuXG4iXX0=
@@ -0,0 +1,7 @@
1
+ export * from './domain';
2
+ export * from './f-minimap.component';
3
+ export * from './f-minimap-canvas.directive';
4
+ export * from './f-minimap-view.directive';
5
+ export * from './f-minimap-flow.directive';
6
+ export * from './providers';
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtbWluaW1hcC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFVBQVUsQ0FBQztBQUV6QixjQUFjLHVCQUF1QixDQUFDO0FBRXRDLGNBQWMsOEJBQThCLENBQUM7QUFFN0MsY0FBYyw0QkFBNEIsQ0FBQztBQUUzQyxjQUFjLDRCQUE0QixDQUFDO0FBRTNDLGNBQWMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9kb21haW4nO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtbWluaW1hcC5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtbWluaW1hcC1jYW52YXMuZGlyZWN0aXZlJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLW1pbmltYXAtdmlldy5kaXJlY3RpdmUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtbWluaW1hcC1mbG93LmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vcHJvdmlkZXJzJztcblxuXG4iXX0=
@@ -0,0 +1,11 @@
1
+ import { FMinimapComponent } from './f-minimap.component';
2
+ import { FMinimapViewDirective } from './f-minimap-view.directive';
3
+ import { FMinimapFlowDirective } from './f-minimap-flow.directive';
4
+ import { FMinimapCanvasDirective } from './f-minimap-canvas.directive';
5
+ export const F_MINIMAP_PROVIDERS = [
6
+ FMinimapComponent,
7
+ FMinimapCanvasDirective,
8
+ FMinimapViewDirective,
9
+ FMinimapFlowDirective,
10
+ ];
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLW1pbmltYXAvcHJvdmlkZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ25FLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRXZFLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHO0lBRWpDLGlCQUFpQjtJQUVqQix1QkFBdUI7SUFFdkIscUJBQXFCO0lBRXJCLHFCQUFxQjtDQUN0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRk1pbmltYXBDb21wb25lbnQgfSBmcm9tICcuL2YtbWluaW1hcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRk1pbmltYXBWaWV3RGlyZWN0aXZlIH0gZnJvbSAnLi9mLW1pbmltYXAtdmlldy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRk1pbmltYXBGbG93RGlyZWN0aXZlIH0gZnJvbSAnLi9mLW1pbmltYXAtZmxvdy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRk1pbmltYXBDYW52YXNEaXJlY3RpdmUgfSBmcm9tICcuL2YtbWluaW1hcC1jYW52YXMuZGlyZWN0aXZlJztcblxuZXhwb3J0IGNvbnN0IEZfTUlOSU1BUF9QUk9WSURFUlMgPSBbXG5cbiAgRk1pbmltYXBDb21wb25lbnQsXG5cbiAgRk1pbmltYXBDYW52YXNEaXJlY3RpdmUsXG5cbiAgRk1pbmltYXBWaWV3RGlyZWN0aXZlLFxuXG4gIEZNaW5pbWFwRmxvd0RpcmVjdGl2ZSxcbl07XG4iXX0=
@@ -1,37 +1,25 @@
1
- import { Directive, InjectionToken, Input } from "@angular/core";
2
- import { BooleanExtensions } from '@foblex/core';
1
+ import { Directive, InjectionToken } from "@angular/core";
3
2
  import * as i0 from "@angular/core";
4
3
  export const F_DRAG_HANDLE = new InjectionToken('F_DRAG_HANDLE');
5
4
  export class FDragHandleDirective {
6
5
  elementReference;
7
- get disabled() {
8
- return this.isDisabled;
9
- }
10
- set disabled(isDisabled) {
11
- this.isDisabled = BooleanExtensions.castToBoolean(isDisabled);
12
- }
13
- isDisabled = false;
14
6
  get hostElement() {
15
7
  return this.elementReference.nativeElement;
16
8
  }
17
9
  constructor(elementReference) {
18
10
  this.elementReference = elementReference;
19
11
  }
20
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FDragHandleDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
21
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.2", type: FDragHandleDirective, selector: "[fDragHandle]", inputs: { disabled: ["fDragHandleDisabled", "disabled"] }, host: { properties: { "class.f-drag-handle-disabled": "disabled" }, classAttribute: "f-drag-handle f-component" }, providers: [{ provide: F_DRAG_HANDLE, useExisting: FDragHandleDirective }], ngImport: i0 });
12
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FDragHandleDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
13
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.0", type: FDragHandleDirective, selector: "[fDragHandle]", host: { classAttribute: "f-drag-handle f-component" }, providers: [{ provide: F_DRAG_HANDLE, useExisting: FDragHandleDirective }], ngImport: i0 });
22
14
  }
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FDragHandleDirective, decorators: [{
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FDragHandleDirective, decorators: [{
24
16
  type: Directive,
25
17
  args: [{
26
18
  selector: "[fDragHandle]",
27
19
  host: {
28
- class: "f-drag-handle f-component",
29
- '[class.f-drag-handle-disabled]': 'disabled'
20
+ class: "f-drag-handle f-component"
30
21
  },
31
22
  providers: [{ provide: F_DRAG_HANDLE, useExisting: FDragHandleDirective }],
32
23
  }]
33
- }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { disabled: [{
34
- type: Input,
35
- args: ['fDragHandleDisabled']
36
- }] } });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1kcmFnLWhhbmRsZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2Ytbm9kZS9mLWRyYWctaGFuZGxlL2YtZHJhZy1oYW5kbGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQXNCLGNBQWMsRUFBRSxLQUFLLEVBQ3JELE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBbUIsTUFBTSxjQUFjLENBQUM7O0FBSWxFLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBeUMsSUFBSSxjQUFjLENBQXVCLGVBQWUsQ0FBQyxDQUFDO0FBVTdILE1BQU0sT0FBTyxvQkFBb0I7SUFrQnJCO0lBaEJWLElBQ1csUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQUVELElBQVcsUUFBUSxDQUFDLFVBQXdDO1FBQzFELElBQUksQ0FBQyxVQUFVLEdBQUcsaUJBQWlCLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFTyxVQUFVLEdBQVksS0FBSyxDQUFDO0lBRXBDLElBQVcsV0FBVztRQUNwQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7SUFDN0MsQ0FBQztJQUVELFlBQ1UsZ0JBQXlDO1FBQXpDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBeUI7SUFFbkQsQ0FBQzt1R0FwQlUsb0JBQW9COzJGQUFwQixvQkFBb0Isc05BRnBCLENBQUUsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxvQkFBb0IsRUFBRSxDQUFFOzsyRkFFakUsb0JBQW9CO2tCQVJoQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxlQUFlO29CQUN6QixJQUFJLEVBQUU7d0JBQ0osS0FBSyxFQUFFLDJCQUEyQjt3QkFDbEMsZ0NBQWdDLEVBQUUsVUFBVTtxQkFDN0M7b0JBQ0QsU0FBUyxFQUFFLENBQUUsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFdBQVcsc0JBQXNCLEVBQUUsQ0FBRTtpQkFDN0U7K0VBSVksUUFBUTtzQkFEbEIsS0FBSzt1QkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEluamVjdCwgSW5qZWN0aW9uVG9rZW4sIElucHV0LCBPbkRlc3Ryb3ksIE9wdGlvbmFsLCBTa2lwU2VsZlxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQm9vbGVhbkV4dGVuc2lvbnMsIElIYXNIb3N0RWxlbWVudCB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBGX05PREUgfSBmcm9tICcuLi9mLW5vZGUtYmFzZSc7XG5pbXBvcnQgeyBJSGFzU3RhdGVDaGFuZ2VzIH0gZnJvbSAnLi4vLi4vaS1oYXMtc3RhdGUtY2hhbmdlcyc7XG5cbmV4cG9ydCBjb25zdCBGX0RSQUdfSEFORExFOiBJbmplY3Rpb25Ub2tlbjxGRHJhZ0hhbmRsZURpcmVjdGl2ZT4gPSBuZXcgSW5qZWN0aW9uVG9rZW48RkRyYWdIYW5kbGVEaXJlY3RpdmU+KCdGX0RSQUdfSEFORExFJyk7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogXCJbZkRyYWdIYW5kbGVdXCIsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogXCJmLWRyYWctaGFuZGxlIGYtY29tcG9uZW50XCIsXG4gICAgJ1tjbGFzcy5mLWRyYWctaGFuZGxlLWRpc2FibGVkXSc6ICdkaXNhYmxlZCdcbiAgfSxcbiAgcHJvdmlkZXJzOiBbIHsgcHJvdmlkZTogRl9EUkFHX0hBTkRMRSwgdXNlRXhpc3Rpbmc6IEZEcmFnSGFuZGxlRGlyZWN0aXZlIH0gXSxcbn0pXG5leHBvcnQgY2xhc3MgRkRyYWdIYW5kbGVEaXJlY3RpdmUgaW1wbGVtZW50cyBJSGFzSG9zdEVsZW1lbnQge1xuXG4gIEBJbnB1dCgnZkRyYWdIYW5kbGVEaXNhYmxlZCcpXG4gIHB1YmxpYyBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNEaXNhYmxlZDtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgZGlzYWJsZWQoaXNEaXNhYmxlZDogYm9vbGVhbiB8IHVuZGVmaW5lZCB8IHN0cmluZykge1xuICAgIHRoaXMuaXNEaXNhYmxlZCA9IEJvb2xlYW5FeHRlbnNpb25zLmNhc3RUb0Jvb2xlYW4oaXNEaXNhYmxlZCk7XG4gIH1cblxuICBwcml2YXRlIGlzRGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwdWJsaWMgZ2V0IGhvc3RFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmZXJlbmNlLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsZW1lbnRSZWZlcmVuY2U6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+XG4gICkge1xuICB9XG59XG4iXX0=
24
+ }], ctorParameters: () => [{ type: i0.ElementRef }] });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1kcmFnLWhhbmRsZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2Ytbm9kZS9mLWRyYWctaGFuZGxlL2YtZHJhZy1oYW5kbGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQWMsY0FBYyxFQUN0QyxNQUFNLGVBQWUsQ0FBQzs7QUFHdkIsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUF5QyxJQUFJLGNBQWMsQ0FBdUIsZUFBZSxDQUFDLENBQUM7QUFTN0gsTUFBTSxPQUFPLG9CQUFvQjtJQU9yQjtJQUxWLElBQVcsV0FBVztRQUNwQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7SUFDN0MsQ0FBQztJQUVELFlBQ1UsZ0JBQXlDO1FBQXpDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBeUI7SUFFbkQsQ0FBQzt1R0FUVSxvQkFBb0I7MkZBQXBCLG9CQUFvQiwrRkFGcEIsQ0FBRSxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLG9CQUFvQixFQUFFLENBQUU7OzJGQUVqRSxvQkFBb0I7a0JBUGhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLElBQUksRUFBRTt3QkFDSixLQUFLLEVBQUUsMkJBQTJCO3FCQUNuQztvQkFDRCxTQUFTLEVBQUUsQ0FBRSxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyxzQkFBc0IsRUFBRSxDQUFFO2lCQUM3RSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5qZWN0aW9uVG9rZW5cbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IElIYXNIb3N0RWxlbWVudCB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5cbmV4cG9ydCBjb25zdCBGX0RSQUdfSEFORExFOiBJbmplY3Rpb25Ub2tlbjxGRHJhZ0hhbmRsZURpcmVjdGl2ZT4gPSBuZXcgSW5qZWN0aW9uVG9rZW48RkRyYWdIYW5kbGVEaXJlY3RpdmU+KCdGX0RSQUdfSEFORExFJyk7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogXCJbZkRyYWdIYW5kbGVdXCIsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogXCJmLWRyYWctaGFuZGxlIGYtY29tcG9uZW50XCJcbiAgfSxcbiAgcHJvdmlkZXJzOiBbIHsgcHJvdmlkZTogRl9EUkFHX0hBTkRMRSwgdXNlRXhpc3Rpbmc6IEZEcmFnSGFuZGxlRGlyZWN0aXZlIH0gXSxcbn0pXG5leHBvcnQgY2xhc3MgRkRyYWdIYW5kbGVEaXJlY3RpdmUgaW1wbGVtZW50cyBJSGFzSG9zdEVsZW1lbnQge1xuXG4gIHB1YmxpYyBnZXQgaG9zdEVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWZlcmVuY2UubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZWxlbWVudFJlZmVyZW5jZTogRWxlbWVudFJlZjxIVE1MRWxlbWVudD5cbiAgKSB7XG4gIH1cbn1cbiJdfQ==
@@ -4,13 +4,16 @@ import { F_NODE, FNodeBase } from './f-node-base';
4
4
  import { debounceTime, merge, startWith, Subscription } from 'rxjs';
5
5
  import { FResizeObserver } from './f-resize-observer';
6
6
  import { CalculateConnectorConnectableSideHandler, CalculateConnectorConnectableSideRequest } from '../f-connectors';
7
+ import { EmitTransformChangesRequest } from '../domain';
7
8
  import * as i0 from "@angular/core";
8
9
  import * as i1 from "../f-storage";
10
+ import * as i2 from "../infrastructure";
9
11
  let uniqueId = 0;
10
12
  export class FNodeDirective extends FNodeBase {
11
13
  elementReference;
12
14
  renderer;
13
15
  fComponentsStore;
16
+ fMediator;
14
17
  subscriptions$ = new Subscription();
15
18
  fId = `f-node-${uniqueId++}`;
16
19
  set position(value) {
@@ -36,11 +39,12 @@ export class FNodeDirective extends FNodeBase {
36
39
  return this.elementReference.nativeElement;
37
40
  }
38
41
  connectors = [];
39
- constructor(elementReference, renderer, fComponentsStore) {
42
+ constructor(elementReference, renderer, fComponentsStore, fMediator) {
40
43
  super();
41
44
  this.elementReference = elementReference;
42
45
  this.renderer = renderer;
43
46
  this.fComponentsStore = fComponentsStore;
47
+ this.fMediator = fMediator;
44
48
  }
45
49
  ngOnInit() {
46
50
  this.setStyle('position', 'absolute');
@@ -55,6 +59,10 @@ export class FNodeDirective extends FNodeBase {
55
59
  setStyle(styleName, value) {
56
60
  this.renderer.setStyle(this.hostElement, styleName, value);
57
61
  }
62
+ redraw() {
63
+ super.redraw();
64
+ this.fMediator.send(new EmitTransformChangesRequest());
65
+ }
58
66
  ngAfterViewInit() {
59
67
  this.subscriptions$.add(this.subscribeOnResizeChanges());
60
68
  }
@@ -85,12 +93,12 @@ export class FNodeDirective extends FNodeBase {
85
93
  this.stateChanges.complete();
86
94
  this.subscriptions$.unsubscribe();
87
95
  }
88
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FNodeDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Directive });
89
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.2", type: FNodeDirective, selector: "[fNode]", inputs: { fId: ["fNodeId", "fId"], position: ["fNodePosition", "position"], size: ["fNodeSize", "size"], fDraggingDisabled: ["fNodeDraggingDisabled", "fDraggingDisabled"], fSelectionDisabled: ["fNodeSelectionDisabled", "fSelectionDisabled"], fConnectOnNode: "fConnectOnNode" }, outputs: { positionChange: "fNodePositionChange", sizeChange: "fNodeSizeChange" }, host: { properties: { "attr.data-f-node-id": "fId", "class.f-node-dragging-disabled": "fDraggingDisabled", "class.f-node-selection-disabled": "fSelectionDisabled" }, classAttribute: "f-node f-component" }, providers: [
96
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FNodeDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.FComponentsStore }, { token: i2.FFlowMediator }], target: i0.ɵɵFactoryTarget.Directive });
97
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.0", type: FNodeDirective, selector: "[fNode]", inputs: { fId: ["fNodeId", "fId"], position: ["fNodePosition", "position"], size: ["fNodeSize", "size"], fDraggingDisabled: ["fNodeDraggingDisabled", "fDraggingDisabled"], fSelectionDisabled: ["fNodeSelectionDisabled", "fSelectionDisabled"], fConnectOnNode: "fConnectOnNode" }, outputs: { positionChange: "fNodePositionChange", sizeChange: "fNodeSizeChange" }, host: { properties: { "attr.data-f-node-id": "fId", "class.f-node-dragging-disabled": "fDraggingDisabled", "class.f-node-selection-disabled": "fSelectionDisabled" }, classAttribute: "f-node f-component" }, providers: [
90
98
  { provide: F_NODE, useExisting: FNodeDirective }
91
99
  ], exportAs: ["fComponent"], usesInheritance: true, ngImport: i0 });
92
100
  }
93
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FNodeDirective, decorators: [{
101
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FNodeDirective, decorators: [{
94
102
  type: Directive,
95
103
  args: [{
96
104
  selector: "[fNode]",
@@ -105,7 +113,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImpor
105
113
  { provide: F_NODE, useExisting: FNodeDirective }
106
114
  ],
107
115
  }]
108
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.FComponentsStore }], propDecorators: { fId: [{
116
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.FComponentsStore }, { type: i2.FFlowMediator }], propDecorators: { fId: [{
109
117
  type: Input,
110
118
  args: ['fNodeId']
111
119
  }], position: [{
@@ -129,4 +137,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImpor
129
137
  }], fConnectOnNode: [{
130
138
  type: Input
131
139
  }] } });
132
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ub2RlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1ub2RlL2Ytbm9kZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXlDLGVBQWUsRUFBYyxNQUFNLGNBQWMsQ0FBQztBQUNsRyxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV0RCxPQUFPLEVBQ0wsd0NBQXdDLEVBQ3hDLHdDQUF3QyxFQUV6QyxNQUFNLGlCQUFpQixDQUFDOzs7QUFFekIsSUFBSSxRQUFRLEdBQVcsQ0FBQyxDQUFDO0FBZXpCLE1BQU0sT0FBTyxjQUFlLFNBQVEsU0FBUztJQTZDakM7SUFDQTtJQUNBO0lBN0NGLGNBQWMsR0FBaUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUcxQyxHQUFHLEdBQVcsVUFBVyxRQUFRLEVBQUcsRUFBRSxDQUFDO0lBRXZELElBQ29CLFFBQVEsQ0FBQyxLQUFpQjtRQUM1QyxJQUFJLENBQUMsU0FBUyxHQUFHLGVBQWUsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFDRCxJQUFvQixRQUFRO1FBQzFCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRWUsY0FBYyxHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO0lBRWxGLElBQ29CLElBQUksQ0FBQyxLQUFZO1FBQ25DLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBQ0QsSUFBb0IsSUFBSTtRQUN0QixPQUFPLElBQUksQ0FBQyxLQUFNLENBQUM7SUFDckIsQ0FBQztJQUVlLFVBQVUsR0FBd0IsSUFBSSxZQUFZLEVBQVMsQ0FBQztJQUc1RCxpQkFBaUIsR0FBWSxLQUFLLENBQUM7SUFHbkMsa0JBQWtCLEdBQVksS0FBSyxDQUFDO0lBR3BDLGNBQWMsR0FBWSxJQUFJLENBQUM7SUFFL0MsSUFBVyxXQUFXO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQztJQUM3QyxDQUFDO0lBRWUsVUFBVSxHQUFxQixFQUFFLENBQUM7SUFFbEQsWUFDVSxnQkFBeUMsRUFDekMsUUFBbUIsRUFDbkIsZ0JBQWtDO1FBRTFDLEtBQUssRUFBRSxDQUFDO1FBSkEscUJBQWdCLEdBQWhCLGdCQUFnQixDQUF5QjtRQUN6QyxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFHNUMsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsUUFBUSxDQUFDLGtCQUFrQixFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzVDLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDMUIsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2YsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFa0IsUUFBUSxDQUFDLFNBQWlCLEVBQUUsS0FBYTtRQUMxRCxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRU0sZUFBZTtRQUNwQixJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FDckIsSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQ2hDLENBQUM7SUFDSixDQUFDO0lBRU8sd0JBQXdCO1FBQzlCLE9BQU8sS0FBSyxDQUFDLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxXQUEwQixDQUFDLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLElBQUksQ0FDeEYsWUFBWSxDQUFDLEVBQUUsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FDbEMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxVQUEwQixFQUFFLEVBQUU7Z0JBQ3JELFVBQVUsQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLHdDQUF3QyxFQUFFLENBQUMsTUFBTSxDQUNqRixJQUFJLHdDQUF3QyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQzNFLENBQUM7WUFDSixDQUFDLENBQUMsQ0FBQztZQUNILElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdkMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRWUsWUFBWSxDQUFDLFNBQXlCO1FBQ3BELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVlLGVBQWUsQ0FBQyxTQUF5QjtRQUN2RCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNqRCxJQUFJLEtBQUssS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNuQyxDQUFDO1FBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRU0sT0FBTztRQUNaLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzFFLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNwQyxDQUFDO3VHQTNHVSxjQUFjOzJGQUFkLGNBQWMseWxCQUpkO1lBQ1QsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUU7U0FDakQ7OzJGQUVVLGNBQWM7a0JBYjFCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFNBQVM7b0JBQ25CLFFBQVEsRUFBRSxZQUFZO29CQUN0QixJQUFJLEVBQUU7d0JBQ0osdUJBQXVCLEVBQUUsS0FBSzt3QkFDOUIsS0FBSyxFQUFFLG9CQUFvQjt3QkFDM0Isa0NBQWtDLEVBQUUsbUJBQW1CO3dCQUN2RCxtQ0FBbUMsRUFBRSxvQkFBb0I7cUJBQzFEO29CQUNELFNBQVMsRUFBRTt3QkFDVCxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsV0FBVyxnQkFBZ0IsRUFBRTtxQkFDakQ7aUJBQ0Y7c0lBTWlCLEdBQUc7c0JBRGxCLEtBQUs7dUJBQUMsU0FBUztnQkFJSSxRQUFRO3NCQUQzQixLQUFLO3VCQUFDLGVBQWU7Z0JBU04sY0FBYztzQkFEN0IsTUFBTTt1QkFBQyxxQkFBcUI7Z0JBSVQsSUFBSTtzQkFEdkIsS0FBSzt1QkFBQyxXQUFXO2dCQVNGLFVBQVU7c0JBRHpCLE1BQU07dUJBQUMsaUJBQWlCO2dCQUlULGlCQUFpQjtzQkFEaEMsS0FBSzt1QkFBQyx1QkFBdUI7Z0JBSWQsa0JBQWtCO3NCQURqQyxLQUFLO3VCQUFDLHdCQUF3QjtnQkFJZixjQUFjO3NCQUQ3QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBSZW5kZXJlcjIsXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBJSGFzSG9zdEVsZW1lbnQsIElQb2ludCwgSVJlY3QsIElTaXplLCBQb2ludEV4dGVuc2lvbnMsIFBvaW50SW5wdXQgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuaW1wb3J0IHsgRl9OT0RFLCBGTm9kZUJhc2UgfSBmcm9tICcuL2Ytbm9kZS1iYXNlJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgbWVyZ2UsIHN0YXJ0V2l0aCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGUmVzaXplT2JzZXJ2ZXIgfSBmcm9tICcuL2YtcmVzaXplLW9ic2VydmVyJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHtcbiAgQ2FsY3VsYXRlQ29ubmVjdG9yQ29ubmVjdGFibGVTaWRlSGFuZGxlcixcbiAgQ2FsY3VsYXRlQ29ubmVjdG9yQ29ubmVjdGFibGVTaWRlUmVxdWVzdCxcbiAgRkNvbm5lY3RvckJhc2Vcbn0gZnJvbSAnLi4vZi1jb25uZWN0b3JzJztcblxubGV0IHVuaXF1ZUlkOiBudW1iZXIgPSAwO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6IFwiW2ZOb2RlXVwiLFxuICBleHBvcnRBczogXCJmQ29tcG9uZW50XCIsXG4gIGhvc3Q6IHtcbiAgICAnW2F0dHIuZGF0YS1mLW5vZGUtaWRdJzogJ2ZJZCcsXG4gICAgY2xhc3M6IFwiZi1ub2RlIGYtY29tcG9uZW50XCIsXG4gICAgJ1tjbGFzcy5mLW5vZGUtZHJhZ2dpbmctZGlzYWJsZWRdJzogJ2ZEcmFnZ2luZ0Rpc2FibGVkJyxcbiAgICAnW2NsYXNzLmYtbm9kZS1zZWxlY3Rpb24tZGlzYWJsZWRdJzogJ2ZTZWxlY3Rpb25EaXNhYmxlZCcsXG4gIH0sXG4gIHByb3ZpZGVyczogW1xuICAgIHsgcHJvdmlkZTogRl9OT0RFLCB1c2VFeGlzdGluZzogRk5vZGVEaXJlY3RpdmUgfVxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGTm9kZURpcmVjdGl2ZSBleHRlbmRzIEZOb2RlQmFzZSBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgSUhhc0hvc3RFbGVtZW50LCBPbkRlc3Ryb3kge1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9ucyQ6IFN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICBASW5wdXQoJ2ZOb2RlSWQnKVxuICBwdWJsaWMgb3ZlcnJpZGUgZklkOiBzdHJpbmcgPSBgZi1ub2RlLSR7IHVuaXF1ZUlkKysgfWA7XG5cbiAgQElucHV0KCdmTm9kZVBvc2l0aW9uJylcbiAgcHVibGljIG92ZXJyaWRlIHNldCBwb3NpdGlvbih2YWx1ZTogUG9pbnRJbnB1dCkge1xuICAgIHRoaXMuX3Bvc2l0aW9uID0gUG9pbnRFeHRlbnNpb25zLmNhc3RUb1BvaW50KHZhbHVlKTtcbiAgICB0aGlzLnJlZnJlc2goKTtcbiAgfVxuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IHBvc2l0aW9uKCk6IElQb2ludCB7XG4gICAgcmV0dXJuIHRoaXMuX3Bvc2l0aW9uO1xuICB9XG4gIEBPdXRwdXQoJ2ZOb2RlUG9zaXRpb25DaGFuZ2UnKVxuICBwdWJsaWMgb3ZlcnJpZGUgcG9zaXRpb25DaGFuZ2U6IEV2ZW50RW1pdHRlcjxJUG9pbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxJUG9pbnQ+KCk7XG5cbiAgQElucHV0KCdmTm9kZVNpemUnKVxuICBwdWJsaWMgb3ZlcnJpZGUgc2V0IHNpemUodmFsdWU6IElTaXplKSB7XG4gICAgdGhpcy5fc2l6ZSA9IHZhbHVlO1xuICAgIHRoaXMucmVmcmVzaCgpO1xuICB9XG4gIHB1YmxpYyBvdmVycmlkZSBnZXQgc2l6ZSgpOiBJU2l6ZSB7XG4gICAgcmV0dXJuIHRoaXMuX3NpemUhO1xuICB9XG4gIEBPdXRwdXQoJ2ZOb2RlU2l6ZUNoYW5nZScpXG4gIHB1YmxpYyBvdmVycmlkZSBzaXplQ2hhbmdlOiBFdmVudEVtaXR0ZXI8SVJlY3Q+ID0gbmV3IEV2ZW50RW1pdHRlcjxJUmVjdD4oKTtcblxuICBASW5wdXQoJ2ZOb2RlRHJhZ2dpbmdEaXNhYmxlZCcpXG4gIHB1YmxpYyBvdmVycmlkZSBmRHJhZ2dpbmdEaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgnZk5vZGVTZWxlY3Rpb25EaXNhYmxlZCcpXG4gIHB1YmxpYyBvdmVycmlkZSBmU2VsZWN0aW9uRGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZkNvbm5lY3RPbk5vZGU6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIHB1YmxpYyBnZXQgaG9zdEVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWZlcmVuY2UubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0b3JzOiBGQ29ubmVjdG9yQmFzZVtdID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmZXJlbmNlOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRTdHlsZSgncG9zaXRpb24nLCAnYWJzb2x1dGUnKTtcbiAgICB0aGlzLnNldFN0eWxlKCd0cmFuc2Zvcm0tb3JpZ2luJywgJ2NlbnRlcicpO1xuICAgIHRoaXMuc2V0U3R5bGUoJ3VzZXItc2VsZWN0JywgJ25vbmUnKTtcbiAgICB0aGlzLnNldFN0eWxlKCdwb2ludGVyLWV2ZW50cycsICdhbGwnKTtcbiAgICB0aGlzLnNldFN0eWxlKCdsZWZ0JywgJzAnKTtcbiAgICB0aGlzLnNldFN0eWxlKCd0b3AnLCAnMCcpO1xuICAgIHN1cGVyLnJlZHJhdygpO1xuICAgIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5hZGRDb21wb25lbnQodGhpcy5mQ29tcG9uZW50c1N0b3JlLmZOb2RlcywgdGhpcyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgc2V0U3R5bGUoc3R5bGVOYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuaG9zdEVsZW1lbnQsIHN0eWxlTmFtZSwgdmFsdWUpO1xuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMkLmFkZChcbiAgICAgIHRoaXMuc3Vic2NyaWJlT25SZXNpemVDaGFuZ2VzKClcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBzdWJzY3JpYmVPblJlc2l6ZUNoYW5nZXMoKTogU3Vic2NyaXB0aW9uIHtcbiAgICByZXR1cm4gbWVyZ2UobmV3IEZSZXNpemVPYnNlcnZlcih0aGlzLmhvc3RFbGVtZW50IGFzIEhUTUxFbGVtZW50KSwgdGhpcy5zdGF0ZUNoYW5nZXMpLnBpcGUoXG4gICAgICBkZWJvdW5jZVRpbWUoMTApLCBzdGFydFdpdGgobnVsbClcbiAgICApLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLmNvbm5lY3RvcnMuZm9yRWFjaCgoZkNvbm5lY3RvcjogRkNvbm5lY3RvckJhc2UpID0+IHtcbiAgICAgICAgZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlID0gbmV3IENhbGN1bGF0ZUNvbm5lY3RvckNvbm5lY3RhYmxlU2lkZUhhbmRsZXIoKS5oYW5kbGUoXG4gICAgICAgICAgbmV3IENhbGN1bGF0ZUNvbm5lY3RvckNvbm5lY3RhYmxlU2lkZVJlcXVlc3QoZkNvbm5lY3RvciwgdGhpcy5ob3N0RWxlbWVudClcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5mQ29tcG9uZW50c1N0b3JlLmNoYW5nZXMubmV4dCgpO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGFkZENvbm5lY3Rvcihjb25uZWN0b3I6IEZDb25uZWN0b3JCYXNlKTogdm9pZCB7XG4gICAgdGhpcy5jb25uZWN0b3JzLnB1c2goY29ubmVjdG9yKTtcbiAgICB0aGlzLnN0YXRlQ2hhbmdlcy5uZXh0KCk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgcmVtb3ZlQ29ubmVjdG9yKGNvbm5lY3RvcjogRkNvbm5lY3RvckJhc2UpOiB2b2lkIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuY29ubmVjdG9ycy5pbmRleE9mKGNvbm5lY3Rvcik7XG4gICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgdGhpcy5jb25uZWN0b3JzLnNwbGljZShpbmRleCwgMSk7XG4gICAgfVxuICAgIHRoaXMuc3RhdGVDaGFuZ2VzLm5leHQoKTtcbiAgfVxuXG4gIHB1YmxpYyByZWZyZXNoKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGVDaGFuZ2VzLm5leHQoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmZDb21wb25lbnRzU3RvcmUucmVtb3ZlQ29tcG9uZW50KHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mTm9kZXMsIHRoaXMpO1xuICAgIHRoaXMuc3RhdGVDaGFuZ2VzLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zJC51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=
140
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ub2RlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1ub2RlL2Ytbm9kZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXlDLGVBQWUsRUFBYyxNQUFNLGNBQWMsQ0FBQztBQUNsRyxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV0RCxPQUFPLEVBQ0wsd0NBQXdDLEVBQ3hDLHdDQUF3QyxFQUV6QyxNQUFNLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLFdBQVcsQ0FBQzs7OztBQUV4RCxJQUFJLFFBQVEsR0FBVyxDQUFDLENBQUM7QUFlekIsTUFBTSxPQUFPLGNBQWUsU0FBUSxTQUFTO0lBNkNqQztJQUNBO0lBQ0E7SUFDQTtJQTlDRixjQUFjLEdBQWlCLElBQUksWUFBWSxFQUFFLENBQUM7SUFHMUMsR0FBRyxHQUFXLFVBQVcsUUFBUSxFQUFHLEVBQUUsQ0FBQztJQUV2RCxJQUNvQixRQUFRLENBQUMsS0FBaUI7UUFDNUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxlQUFlLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBQ0QsSUFBb0IsUUFBUTtRQUMxQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVlLGNBQWMsR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztJQUVsRixJQUNvQixJQUFJLENBQUMsS0FBWTtRQUNuQyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUNELElBQW9CLElBQUk7UUFDdEIsT0FBTyxJQUFJLENBQUMsS0FBTSxDQUFDO0lBQ3JCLENBQUM7SUFFZSxVQUFVLEdBQXdCLElBQUksWUFBWSxFQUFTLENBQUM7SUFHNUQsaUJBQWlCLEdBQVksS0FBSyxDQUFDO0lBR25DLGtCQUFrQixHQUFZLEtBQUssQ0FBQztJQUdwQyxjQUFjLEdBQVksSUFBSSxDQUFDO0lBRS9DLElBQVcsV0FBVztRQUNwQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7SUFDN0MsQ0FBQztJQUVlLFVBQVUsR0FBcUIsRUFBRSxDQUFDO0lBRWxELFlBQ1UsZ0JBQXlDLEVBQ3pDLFFBQW1CLEVBQ25CLGdCQUFrQyxFQUNsQyxTQUF3QjtRQUVoQyxLQUFLLEVBQUUsQ0FBQztRQUxBLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBeUI7UUFDekMsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLGNBQVMsR0FBVCxTQUFTLENBQWU7SUFHbEMsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsUUFBUSxDQUFDLGtCQUFrQixFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzVDLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDMUIsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2YsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFa0IsUUFBUSxDQUFDLFNBQWlCLEVBQUUsS0FBYTtRQUMxRCxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRWUsTUFBTTtRQUNwQixLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDZixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLDJCQUEyQixFQUFFLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRU0sZUFBZTtRQUNwQixJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FDckIsSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQ2hDLENBQUM7SUFDSixDQUFDO0lBRU8sd0JBQXdCO1FBQzlCLE9BQU8sS0FBSyxDQUFDLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxXQUEwQixDQUFDLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLElBQUksQ0FDeEYsWUFBWSxDQUFDLEVBQUUsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FDbEMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxVQUEwQixFQUFFLEVBQUU7Z0JBQ3JELFVBQVUsQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLHdDQUF3QyxFQUFFLENBQUMsTUFBTSxDQUNqRixJQUFJLHdDQUF3QyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQzNFLENBQUM7WUFDSixDQUFDLENBQUMsQ0FBQztZQUNILElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdkMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRWUsWUFBWSxDQUFDLFNBQXlCO1FBQ3BELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVlLGVBQWUsQ0FBQyxTQUF5QjtRQUN2RCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNqRCxJQUFJLEtBQUssS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNuQyxDQUFDO1FBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRU0sT0FBTztRQUNaLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzFFLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNwQyxDQUFDO3VHQWpIVSxjQUFjOzJGQUFkLGNBQWMseWxCQUpkO1lBQ1QsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUU7U0FDakQ7OzJGQUVVLGNBQWM7a0JBYjFCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFNBQVM7b0JBQ25CLFFBQVEsRUFBRSxZQUFZO29CQUN0QixJQUFJLEVBQUU7d0JBQ0osdUJBQXVCLEVBQUUsS0FBSzt3QkFDOUIsS0FBSyxFQUFFLG9CQUFvQjt3QkFDM0Isa0NBQWtDLEVBQUUsbUJBQW1CO3dCQUN2RCxtQ0FBbUMsRUFBRSxvQkFBb0I7cUJBQzFEO29CQUNELFNBQVMsRUFBRTt3QkFDVCxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsV0FBVyxnQkFBZ0IsRUFBRTtxQkFDakQ7aUJBQ0Y7a0tBTWlCLEdBQUc7c0JBRGxCLEtBQUs7dUJBQUMsU0FBUztnQkFJSSxRQUFRO3NCQUQzQixLQUFLO3VCQUFDLGVBQWU7Z0JBU04sY0FBYztzQkFEN0IsTUFBTTt1QkFBQyxxQkFBcUI7Z0JBSVQsSUFBSTtzQkFEdkIsS0FBSzt1QkFBQyxXQUFXO2dCQVNGLFVBQVU7c0JBRHpCLE1BQU07dUJBQUMsaUJBQWlCO2dCQUlULGlCQUFpQjtzQkFEaEMsS0FBSzt1QkFBQyx1QkFBdUI7Z0JBSWQsa0JBQWtCO3NCQURqQyxLQUFLO3VCQUFDLHdCQUF3QjtnQkFJZixjQUFjO3NCQUQ3QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBSZW5kZXJlcjIsXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBJSGFzSG9zdEVsZW1lbnQsIElQb2ludCwgSVJlY3QsIElTaXplLCBQb2ludEV4dGVuc2lvbnMsIFBvaW50SW5wdXQgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuaW1wb3J0IHsgRl9OT0RFLCBGTm9kZUJhc2UgfSBmcm9tICcuL2Ytbm9kZS1iYXNlJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgbWVyZ2UsIHN0YXJ0V2l0aCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGUmVzaXplT2JzZXJ2ZXIgfSBmcm9tICcuL2YtcmVzaXplLW9ic2VydmVyJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHtcbiAgQ2FsY3VsYXRlQ29ubmVjdG9yQ29ubmVjdGFibGVTaWRlSGFuZGxlcixcbiAgQ2FsY3VsYXRlQ29ubmVjdG9yQ29ubmVjdGFibGVTaWRlUmVxdWVzdCxcbiAgRkNvbm5lY3RvckJhc2Vcbn0gZnJvbSAnLi4vZi1jb25uZWN0b3JzJztcbmltcG9ydCB7IEZGbG93TWVkaWF0b3IgfSBmcm9tICcuLi9pbmZyYXN0cnVjdHVyZSc7XG5pbXBvcnQgeyBFbWl0VHJhbnNmb3JtQ2hhbmdlc1JlcXVlc3QgfSBmcm9tICcuLi9kb21haW4nO1xuXG5sZXQgdW5pcXVlSWQ6IG51bWJlciA9IDA7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogXCJbZk5vZGVdXCIsXG4gIGV4cG9ydEFzOiBcImZDb21wb25lbnRcIixcbiAgaG9zdDoge1xuICAgICdbYXR0ci5kYXRhLWYtbm9kZS1pZF0nOiAnZklkJyxcbiAgICBjbGFzczogXCJmLW5vZGUgZi1jb21wb25lbnRcIixcbiAgICAnW2NsYXNzLmYtbm9kZS1kcmFnZ2luZy1kaXNhYmxlZF0nOiAnZkRyYWdnaW5nRGlzYWJsZWQnLFxuICAgICdbY2xhc3MuZi1ub2RlLXNlbGVjdGlvbi1kaXNhYmxlZF0nOiAnZlNlbGVjdGlvbkRpc2FibGVkJyxcbiAgfSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgeyBwcm92aWRlOiBGX05PREUsIHVzZUV4aXN0aW5nOiBGTm9kZURpcmVjdGl2ZSB9XG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZOb2RlRGlyZWN0aXZlIGV4dGVuZHMgRk5vZGVCYXNlIGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBJSGFzSG9zdEVsZW1lbnQsIE9uRGVzdHJveSB7XG5cbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zJDogU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gIEBJbnB1dCgnZk5vZGVJZCcpXG4gIHB1YmxpYyBvdmVycmlkZSBmSWQ6IHN0cmluZyA9IGBmLW5vZGUtJHsgdW5pcXVlSWQrKyB9YDtcblxuICBASW5wdXQoJ2ZOb2RlUG9zaXRpb24nKVxuICBwdWJsaWMgb3ZlcnJpZGUgc2V0IHBvc2l0aW9uKHZhbHVlOiBQb2ludElucHV0KSB7XG4gICAgdGhpcy5fcG9zaXRpb24gPSBQb2ludEV4dGVuc2lvbnMuY2FzdFRvUG9pbnQodmFsdWUpO1xuICAgIHRoaXMucmVmcmVzaCgpO1xuICB9XG4gIHB1YmxpYyBvdmVycmlkZSBnZXQgcG9zaXRpb24oKTogSVBvaW50IHtcbiAgICByZXR1cm4gdGhpcy5fcG9zaXRpb247XG4gIH1cbiAgQE91dHB1dCgnZk5vZGVQb3NpdGlvbkNoYW5nZScpXG4gIHB1YmxpYyBvdmVycmlkZSBwb3NpdGlvbkNoYW5nZTogRXZlbnRFbWl0dGVyPElQb2ludD4gPSBuZXcgRXZlbnRFbWl0dGVyPElQb2ludD4oKTtcblxuICBASW5wdXQoJ2ZOb2RlU2l6ZScpXG4gIHB1YmxpYyBvdmVycmlkZSBzZXQgc2l6ZSh2YWx1ZTogSVNpemUpIHtcbiAgICB0aGlzLl9zaXplID0gdmFsdWU7XG4gICAgdGhpcy5yZWZyZXNoKCk7XG4gIH1cbiAgcHVibGljIG92ZXJyaWRlIGdldCBzaXplKCk6IElTaXplIHtcbiAgICByZXR1cm4gdGhpcy5fc2l6ZSE7XG4gIH1cbiAgQE91dHB1dCgnZk5vZGVTaXplQ2hhbmdlJylcbiAgcHVibGljIG92ZXJyaWRlIHNpemVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxJUmVjdD4gPSBuZXcgRXZlbnRFbWl0dGVyPElSZWN0PigpO1xuXG4gIEBJbnB1dCgnZk5vZGVEcmFnZ2luZ0Rpc2FibGVkJylcbiAgcHVibGljIG92ZXJyaWRlIGZEcmFnZ2luZ0Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KCdmTm9kZVNlbGVjdGlvbkRpc2FibGVkJylcbiAgcHVibGljIG92ZXJyaWRlIGZTZWxlY3Rpb25EaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBvdmVycmlkZSBmQ29ubmVjdE9uTm9kZTogYm9vbGVhbiA9IHRydWU7XG5cbiAgcHVibGljIGdldCBob3N0RWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZmVyZW5jZS5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RvcnM6IEZDb25uZWN0b3JCYXNlW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsZW1lbnRSZWZlcmVuY2U6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmUsXG4gICAgcHJpdmF0ZSBmTWVkaWF0b3I6IEZGbG93TWVkaWF0b3JcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldFN0eWxlKCdwb3NpdGlvbicsICdhYnNvbHV0ZScpO1xuICAgIHRoaXMuc2V0U3R5bGUoJ3RyYW5zZm9ybS1vcmlnaW4nLCAnY2VudGVyJyk7XG4gICAgdGhpcy5zZXRTdHlsZSgndXNlci1zZWxlY3QnLCAnbm9uZScpO1xuICAgIHRoaXMuc2V0U3R5bGUoJ3BvaW50ZXItZXZlbnRzJywgJ2FsbCcpO1xuICAgIHRoaXMuc2V0U3R5bGUoJ2xlZnQnLCAnMCcpO1xuICAgIHRoaXMuc2V0U3R5bGUoJ3RvcCcsICcwJyk7XG4gICAgc3VwZXIucmVkcmF3KCk7XG4gICAgdGhpcy5mQ29tcG9uZW50c1N0b3JlLmFkZENvbXBvbmVudCh0aGlzLmZDb21wb25lbnRzU3RvcmUuZk5vZGVzLCB0aGlzKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBzZXRTdHlsZShzdHlsZU5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5ob3N0RWxlbWVudCwgc3R5bGVOYW1lLCB2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgcmVkcmF3KCk6IHZvaWQge1xuICAgIHN1cGVyLnJlZHJhdygpO1xuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQobmV3IEVtaXRUcmFuc2Zvcm1DaGFuZ2VzUmVxdWVzdCgpKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zJC5hZGQoXG4gICAgICB0aGlzLnN1YnNjcmliZU9uUmVzaXplQ2hhbmdlcygpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgc3Vic2NyaWJlT25SZXNpemVDaGFuZ2VzKCk6IFN1YnNjcmlwdGlvbiB7XG4gICAgcmV0dXJuIG1lcmdlKG5ldyBGUmVzaXplT2JzZXJ2ZXIodGhpcy5ob3N0RWxlbWVudCBhcyBIVE1MRWxlbWVudCksIHRoaXMuc3RhdGVDaGFuZ2VzKS5waXBlKFxuICAgICAgZGVib3VuY2VUaW1lKDEwKSwgc3RhcnRXaXRoKG51bGwpXG4gICAgKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5jb25uZWN0b3JzLmZvckVhY2goKGZDb25uZWN0b3I6IEZDb25uZWN0b3JCYXNlKSA9PiB7XG4gICAgICAgIGZDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSA9IG5ldyBDYWxjdWxhdGVDb25uZWN0b3JDb25uZWN0YWJsZVNpZGVIYW5kbGVyKCkuaGFuZGxlKFxuICAgICAgICAgIG5ldyBDYWxjdWxhdGVDb25uZWN0b3JDb25uZWN0YWJsZVNpZGVSZXF1ZXN0KGZDb25uZWN0b3IsIHRoaXMuaG9zdEVsZW1lbnQpXG4gICAgICAgICk7XG4gICAgICB9KTtcbiAgICAgIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5jaGFuZ2VzLm5leHQoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBhZGRDb25uZWN0b3IoY29ubmVjdG9yOiBGQ29ubmVjdG9yQmFzZSk6IHZvaWQge1xuICAgIHRoaXMuY29ubmVjdG9ycy5wdXNoKGNvbm5lY3Rvcik7XG4gICAgdGhpcy5zdGF0ZUNoYW5nZXMubmV4dCgpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIHJlbW92ZUNvbm5lY3Rvcihjb25uZWN0b3I6IEZDb25uZWN0b3JCYXNlKTogdm9pZCB7XG4gICAgY29uc3QgaW5kZXggPSB0aGlzLmNvbm5lY3RvcnMuaW5kZXhPZihjb25uZWN0b3IpO1xuICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgIHRoaXMuY29ubmVjdG9ycy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIH1cbiAgICB0aGlzLnN0YXRlQ2hhbmdlcy5uZXh0KCk7XG4gIH1cblxuICBwdWJsaWMgcmVmcmVzaCgpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlQ2hhbmdlcy5uZXh0KCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5mQ29tcG9uZW50c1N0b3JlLnJlbW92ZUNvbXBvbmVudCh0aGlzLmZDb21wb25lbnRzU3RvcmUuZk5vZGVzLCB0aGlzKTtcbiAgICB0aGlzLnN0YXRlQ2hhbmdlcy5jb21wbGV0ZSgpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucyQudW5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIl19
@@ -1,18 +1,10 @@
1
1
  import { Directive, HostBinding, InjectionToken, Input } from "@angular/core";
2
- import { BooleanExtensions } from '@foblex/core';
3
2
  import { EFResizeHandleType } from './e-f-resize-handle-type';
4
3
  import { castToEnum } from '../../domain';
5
4
  import * as i0 from "@angular/core";
6
5
  export const F_RESIZE_HANDLE = new InjectionToken('F_RESIZE_HANDLE');
7
6
  export class FResizeHandleDirective {
8
7
  elementReference;
9
- isDisabled = false;
10
- set disabled(isDisabled) {
11
- this.isDisabled = BooleanExtensions.castToBoolean(isDisabled);
12
- }
13
- get disabled() {
14
- return this.isDisabled;
15
- }
16
8
  _type = EFResizeHandleType.LEFT_TOP;
17
9
  set type(type) {
18
10
  this._type = castToEnum(type, 'fResizeHandleType', EFResizeHandleType);
@@ -29,28 +21,24 @@ export class FResizeHandleDirective {
29
21
  constructor(elementReference) {
30
22
  this.elementReference = elementReference;
31
23
  }
32
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FResizeHandleDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
33
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.2", type: FResizeHandleDirective, selector: "[fResizeHandle]", inputs: { disabled: ["fResizeHandleDisabled", "disabled"], type: ["fResizeHandleType", "type"] }, host: { properties: { "class.f-resize-handle-disabled": "disabled", "attr.data-f-resize-handle-type": "type", "class": "this.typeClass" }, classAttribute: "f-resize-handle f-component" }, providers: [{ provide: F_RESIZE_HANDLE, useExisting: FResizeHandleDirective }], ngImport: i0 });
24
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FResizeHandleDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
25
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.0", type: FResizeHandleDirective, selector: "[fResizeHandle]", inputs: { type: ["fResizeHandleType", "type"] }, host: { properties: { "attr.data-f-resize-handle-type": "type", "class": "this.typeClass" }, classAttribute: "f-resize-handle f-component" }, providers: [{ provide: F_RESIZE_HANDLE, useExisting: FResizeHandleDirective }], ngImport: i0 });
34
26
  }
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FResizeHandleDirective, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FResizeHandleDirective, decorators: [{
36
28
  type: Directive,
37
29
  args: [{
38
30
  selector: "[fResizeHandle]",
39
31
  host: {
40
32
  class: `f-resize-handle f-component`,
41
- '[class.f-resize-handle-disabled]': 'disabled',
42
33
  '[attr.data-f-resize-handle-type]': 'type',
43
34
  },
44
35
  providers: [{ provide: F_RESIZE_HANDLE, useExisting: FResizeHandleDirective }],
45
36
  }]
46
- }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { disabled: [{
47
- type: Input,
48
- args: ['fResizeHandleDisabled']
49
- }], type: [{
37
+ }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { type: [{
50
38
  type: Input,
51
39
  args: ['fResizeHandleType']
52
40
  }], typeClass: [{
53
41
  type: HostBinding,
54
42
  args: ['class']
55
43
  }] } });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1yZXNpemUtaGFuZGxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1ub2RlL2YtcmVzaXplLWhhbmRsZS9mLXJlc2l6ZS1oYW5kbGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQWMsV0FBVyxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQzFELE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBbUIsTUFBTSxjQUFjLENBQUM7QUFDbEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFFMUMsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUEyQyxJQUFJLGNBQWMsQ0FBeUIsaUJBQWlCLENBQUMsQ0FBQztBQVdySSxNQUFNLE9BQU8sc0JBQXNCO0lBOEJ2QjtJQTVCRixVQUFVLEdBQVksS0FBSyxDQUFDO0lBQ3BDLElBQ1csUUFBUSxDQUFDLFVBQXdDO1FBQzFELElBQUksQ0FBQyxVQUFVLEdBQUcsaUJBQWlCLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFDRCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxLQUFLLEdBQXVCLGtCQUFrQixDQUFDLFFBQVEsQ0FBQztJQUMvRCxJQUNXLElBQUksQ0FBQyxJQUF3QjtRQUN0QyxJQUFJLENBQUMsS0FBSyxHQUFHLFVBQVUsQ0FBQyxJQUFJLEVBQUUsbUJBQW1CLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBQ0QsSUFBVyxJQUFJO1FBQ2IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUNXLFNBQVM7UUFDbEIsT0FBTyxtQkFBb0Isa0JBQWtCLENBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQXFDLENBQUcsRUFBRSxDQUFDO0lBQ2pILENBQUM7SUFFRCxJQUFXLFdBQVc7UUFDcEIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDO0lBQzdDLENBQUM7SUFFRCxZQUNVLGdCQUF5QztRQUF6QyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXlCO0lBRW5ELENBQUM7dUdBaENVLHNCQUFzQjsyRkFBdEIsc0JBQXNCLHdVQUZ0QixDQUFFLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsc0JBQXNCLEVBQUUsQ0FBRTs7MkZBRXJFLHNCQUFzQjtrQkFUbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixJQUFJLEVBQUU7d0JBQ0osS0FBSyxFQUFFLDZCQUE2Qjt3QkFDcEMsa0NBQWtDLEVBQUUsVUFBVTt3QkFDOUMsa0NBQWtDLEVBQUUsTUFBTTtxQkFDM0M7b0JBQ0QsU0FBUyxFQUFFLENBQUUsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsd0JBQXdCLEVBQUUsQ0FBRTtpQkFDakY7K0VBS1ksUUFBUTtzQkFEbEIsS0FBSzt1QkFBQyx1QkFBdUI7Z0JBVW5CLElBQUk7c0JBRGQsS0FBSzt1QkFBQyxtQkFBbUI7Z0JBU2YsU0FBUztzQkFEbkIsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0QmluZGluZywgSW5qZWN0aW9uVG9rZW4sIElucHV0XG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBCb29sZWFuRXh0ZW5zaW9ucywgSUhhc0hvc3RFbGVtZW50IH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IEVGUmVzaXplSGFuZGxlVHlwZSB9IGZyb20gJy4vZS1mLXJlc2l6ZS1oYW5kbGUtdHlwZSc7XG5pbXBvcnQgeyBjYXN0VG9FbnVtIH0gZnJvbSAnLi4vLi4vZG9tYWluJztcblxuZXhwb3J0IGNvbnN0IEZfUkVTSVpFX0hBTkRMRTogSW5qZWN0aW9uVG9rZW48RlJlc2l6ZUhhbmRsZURpcmVjdGl2ZT4gPSBuZXcgSW5qZWN0aW9uVG9rZW48RlJlc2l6ZUhhbmRsZURpcmVjdGl2ZT4oJ0ZfUkVTSVpFX0hBTkRMRScpO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6IFwiW2ZSZXNpemVIYW5kbGVdXCIsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogYGYtcmVzaXplLWhhbmRsZSBmLWNvbXBvbmVudGAsXG4gICAgJ1tjbGFzcy5mLXJlc2l6ZS1oYW5kbGUtZGlzYWJsZWRdJzogJ2Rpc2FibGVkJyxcbiAgICAnW2F0dHIuZGF0YS1mLXJlc2l6ZS1oYW5kbGUtdHlwZV0nOiAndHlwZScsXG4gIH0sXG4gIHByb3ZpZGVyczogWyB7IHByb3ZpZGU6IEZfUkVTSVpFX0hBTkRMRSwgdXNlRXhpc3Rpbmc6IEZSZXNpemVIYW5kbGVEaXJlY3RpdmUgfSBdLFxufSlcbmV4cG9ydCBjbGFzcyBGUmVzaXplSGFuZGxlRGlyZWN0aXZlIGltcGxlbWVudHMgSUhhc0hvc3RFbGVtZW50IHtcblxuICBwcml2YXRlIGlzRGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCdmUmVzaXplSGFuZGxlRGlzYWJsZWQnKVxuICBwdWJsaWMgc2V0IGRpc2FibGVkKGlzRGlzYWJsZWQ6IGJvb2xlYW4gfCB1bmRlZmluZWQgfCBzdHJpbmcpIHtcbiAgICB0aGlzLmlzRGlzYWJsZWQgPSBCb29sZWFuRXh0ZW5zaW9ucy5jYXN0VG9Cb29sZWFuKGlzRGlzYWJsZWQpO1xuICB9XG4gIHB1YmxpYyBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNEaXNhYmxlZDtcbiAgfVxuXG4gIHB1YmxpYyBfdHlwZTogRUZSZXNpemVIYW5kbGVUeXBlID0gRUZSZXNpemVIYW5kbGVUeXBlLkxFRlRfVE9QO1xuICBASW5wdXQoJ2ZSZXNpemVIYW5kbGVUeXBlJylcbiAgcHVibGljIHNldCB0eXBlKHR5cGU6IEVGUmVzaXplSGFuZGxlVHlwZSkge1xuICAgIHRoaXMuX3R5cGUgPSBjYXN0VG9FbnVtKHR5cGUsICdmUmVzaXplSGFuZGxlVHlwZScsIEVGUmVzaXplSGFuZGxlVHlwZSk7XG4gIH1cbiAgcHVibGljIGdldCB0eXBlKCk6IEVGUmVzaXplSGFuZGxlVHlwZSB7XG4gICAgcmV0dXJuIHRoaXMuX3R5cGU7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgcHVibGljIGdldCB0eXBlQ2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYGYtcmVzaXplLWhhbmRsZS0keyBFRlJlc2l6ZUhhbmRsZVR5cGVbIHRoaXMudHlwZS50b1VwcGVyQ2FzZSgpIGFzIGtleW9mIHR5cGVvZiBFRlJlc2l6ZUhhbmRsZVR5cGUgXSB9YDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaG9zdEVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWZlcmVuY2UubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZWxlbWVudFJlZmVyZW5jZTogRWxlbWVudFJlZjxIVE1MRWxlbWVudD5cbiAgKSB7XG4gIH1cbn1cbiJdfQ==
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1yZXNpemUtaGFuZGxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1ub2RlL2YtcmVzaXplLWhhbmRsZS9mLXJlc2l6ZS1oYW5kbGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQWMsV0FBVyxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQzFELE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzlELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7O0FBRTFDLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBMkMsSUFBSSxjQUFjLENBQXlCLGlCQUFpQixDQUFDLENBQUM7QUFVckksTUFBTSxPQUFPLHNCQUFzQjtJQXFCdkI7SUFuQkgsS0FBSyxHQUF1QixrQkFBa0IsQ0FBQyxRQUFRLENBQUM7SUFDL0QsSUFDVyxJQUFJLENBQUMsSUFBd0I7UUFDdEMsSUFBSSxDQUFDLEtBQUssR0FBRyxVQUFVLENBQUMsSUFBSSxFQUFFLG1CQUFtQixFQUFFLGtCQUFrQixDQUFDLENBQUM7SUFDekUsQ0FBQztJQUNELElBQVcsSUFBSTtRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFDVyxTQUFTO1FBQ2xCLE9BQU8sbUJBQW9CLGtCQUFrQixDQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFxQyxDQUFHLEVBQUUsQ0FBQztJQUNqSCxDQUFDO0lBRUQsSUFBVyxXQUFXO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQztJQUM3QyxDQUFDO0lBRUQsWUFDVSxnQkFBeUM7UUFBekMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUF5QjtJQUVuRCxDQUFDO3VHQXZCVSxzQkFBc0I7MkZBQXRCLHNCQUFzQix5T0FGdEIsQ0FBRSxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLHNCQUFzQixFQUFFLENBQUU7OzJGQUVyRSxzQkFBc0I7a0JBUmxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsSUFBSSxFQUFFO3dCQUNKLEtBQUssRUFBRSw2QkFBNkI7d0JBQ3BDLGtDQUFrQyxFQUFFLE1BQU07cUJBQzNDO29CQUNELFNBQVMsRUFBRSxDQUFFLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxXQUFXLHdCQUF3QixFQUFFLENBQUU7aUJBQ2pGOytFQUtZLElBQUk7c0JBRGQsS0FBSzt1QkFBQyxtQkFBbUI7Z0JBU2YsU0FBUztzQkFEbkIsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0QmluZGluZywgSW5qZWN0aW9uVG9rZW4sIElucHV0XG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBJSGFzSG9zdEVsZW1lbnQgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuaW1wb3J0IHsgRUZSZXNpemVIYW5kbGVUeXBlIH0gZnJvbSAnLi9lLWYtcmVzaXplLWhhbmRsZS10eXBlJztcbmltcG9ydCB7IGNhc3RUb0VudW0gfSBmcm9tICcuLi8uLi9kb21haW4nO1xuXG5leHBvcnQgY29uc3QgRl9SRVNJWkVfSEFORExFOiBJbmplY3Rpb25Ub2tlbjxGUmVzaXplSGFuZGxlRGlyZWN0aXZlPiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxGUmVzaXplSGFuZGxlRGlyZWN0aXZlPignRl9SRVNJWkVfSEFORExFJyk7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogXCJbZlJlc2l6ZUhhbmRsZV1cIixcbiAgaG9zdDoge1xuICAgIGNsYXNzOiBgZi1yZXNpemUtaGFuZGxlIGYtY29tcG9uZW50YCxcbiAgICAnW2F0dHIuZGF0YS1mLXJlc2l6ZS1oYW5kbGUtdHlwZV0nOiAndHlwZScsXG4gIH0sXG4gIHByb3ZpZGVyczogWyB7IHByb3ZpZGU6IEZfUkVTSVpFX0hBTkRMRSwgdXNlRXhpc3Rpbmc6IEZSZXNpemVIYW5kbGVEaXJlY3RpdmUgfSBdLFxufSlcbmV4cG9ydCBjbGFzcyBGUmVzaXplSGFuZGxlRGlyZWN0aXZlIGltcGxlbWVudHMgSUhhc0hvc3RFbGVtZW50IHtcblxuICBwdWJsaWMgX3R5cGU6IEVGUmVzaXplSGFuZGxlVHlwZSA9IEVGUmVzaXplSGFuZGxlVHlwZS5MRUZUX1RPUDtcbiAgQElucHV0KCdmUmVzaXplSGFuZGxlVHlwZScpXG4gIHB1YmxpYyBzZXQgdHlwZSh0eXBlOiBFRlJlc2l6ZUhhbmRsZVR5cGUpIHtcbiAgICB0aGlzLl90eXBlID0gY2FzdFRvRW51bSh0eXBlLCAnZlJlc2l6ZUhhbmRsZVR5cGUnLCBFRlJlc2l6ZUhhbmRsZVR5cGUpO1xuICB9XG4gIHB1YmxpYyBnZXQgdHlwZSgpOiBFRlJlc2l6ZUhhbmRsZVR5cGUge1xuICAgIHJldHVybiB0aGlzLl90eXBlO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIHB1YmxpYyBnZXQgdHlwZUNsYXNzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGBmLXJlc2l6ZS1oYW5kbGUtJHsgRUZSZXNpemVIYW5kbGVUeXBlWyB0aGlzLnR5cGUudG9VcHBlckNhc2UoKSBhcyBrZXlvZiB0eXBlb2YgRUZSZXNpemVIYW5kbGVUeXBlIF0gfWA7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhvc3RFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmZXJlbmNlLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsZW1lbnRSZWZlcmVuY2U6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+XG4gICkge1xuICB9XG59XG4iXX0=
@@ -2,10 +2,10 @@ import { Directive, InjectionToken } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export const F_SELECTION_AREA = new InjectionToken('F_SELECTION_AREA');
4
4
  export class FSelectionAreaBase {
5
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FSelectionAreaBase, deps: [], target: i0.ɵɵFactoryTarget.Directive });
6
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.2", type: FSelectionAreaBase, ngImport: i0 });
5
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FSelectionAreaBase, deps: [], target: i0.ɵɵFactoryTarget.Directive });
6
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.0", type: FSelectionAreaBase, ngImport: i0 });
7
7
  }
8
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FSelectionAreaBase, decorators: [{
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FSelectionAreaBase, decorators: [{
9
9
  type: Directive
10
10
  }] });
11
11
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1zZWxlY3Rpb24tYXJlYS1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLXNlbGVjdGlvbi1hcmVhL2Ytc2VsZWN0aW9uLWFyZWEtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHMUQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxjQUFjLENBQXFCLGtCQUFrQixDQUFDLENBQUM7QUFHM0YsTUFBTSxPQUFnQixrQkFBa0I7dUdBQWxCLGtCQUFrQjsyRkFBbEIsa0JBQWtCOzsyRkFBbEIsa0JBQWtCO2tCQUR2QyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUhhc0hvc3RFbGVtZW50IH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElTZWxlY3Rpb25BcmVhUmVjdCB9IGZyb20gJy4vZG9tYWluJztcblxuZXhwb3J0IGNvbnN0IEZfU0VMRUNUSU9OX0FSRUEgPSBuZXcgSW5qZWN0aW9uVG9rZW48RlNlbGVjdGlvbkFyZWFCYXNlPignRl9TRUxFQ1RJT05fQVJFQScpO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGU2VsZWN0aW9uQXJlYUJhc2UgaW1wbGVtZW50cyBJSGFzSG9zdEVsZW1lbnQge1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBob3N0RWxlbWVudDogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBoaWRlKCk6IHZvaWQ7XG5cbiAgcHVibGljIGFic3RyYWN0IHNob3coKTogdm9pZDtcblxuICBwdWJsaWMgYWJzdHJhY3QgZHJhdyhvYmplY3Q6IElTZWxlY3Rpb25BcmVhUmVjdCk6IHZvaWQ7XG59XG4iXX0=
@@ -30,12 +30,12 @@ export class FSelectionAreaComponent extends FSelectionAreaBase {
30
30
  style.width = object.width + 'px';
31
31
  style.height = object.height + 'px';
32
32
  }
33
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FSelectionAreaComponent, deps: [{ token: i0.ElementRef }, { token: i1.FDraggableDataContext }], target: i0.ɵɵFactoryTarget.Component });
34
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.2", type: FSelectionAreaComponent, selector: "f-selection-area", host: { classAttribute: "f-selection-area f-component" }, providers: [
33
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FSelectionAreaComponent, deps: [{ token: i0.ElementRef }, { token: i1.FDraggableDataContext }], target: i0.ɵɵFactoryTarget.Component });
34
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: FSelectionAreaComponent, selector: "f-selection-area", host: { classAttribute: "f-selection-area f-component" }, providers: [
35
35
  { provide: F_SELECTION_AREA, useExisting: FSelectionAreaComponent }
36
36
  ], usesInheritance: true, ngImport: i0, template: ``, isInline: true, styles: [":host{position:absolute}\n"] });
37
37
  }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FSelectionAreaComponent, decorators: [{
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FSelectionAreaComponent, decorators: [{
39
39
  type: Component,
40
40
  args: [{ selector: "f-selection-area", template: ``, host: {
41
41
  'class': 'f-selection-area f-component'
@@ -34,10 +34,10 @@ export class FComponentsStore {
34
34
  this.changes.next();
35
35
  }
36
36
  }
37
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FComponentsStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
38
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FComponentsStore });
37
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FComponentsStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
38
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FComponentsStore });
39
39
  }
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FComponentsStore, decorators: [{
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FComponentsStore, decorators: [{
41
41
  type: Injectable
42
42
  }] });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb21wb25lbnRzLXN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLXN0b3JhZ2UvZi1jb21wb25lbnRzLXN0b3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFXL0IsTUFBTSxPQUFPLGdCQUFnQjtJQUVYLE9BQU8sR0FBa0IsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUU3RCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLFdBQVksQ0FBQztJQUNsQyxDQUFDO0lBRUQsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxTQUFVLENBQUM7SUFDbEMsQ0FBQztJQUVNLEtBQUssQ0FBd0I7SUFFN0IsT0FBTyxDQUEwQjtJQUVqQyxXQUFXLENBQThCO0lBRXpDLE1BQU0sR0FBZ0IsRUFBRSxDQUFDO0lBRXpCLFlBQVksR0FBc0IsRUFBRSxDQUFDO0lBRXJDLGVBQWUsQ0FBOEI7SUFFN0MsUUFBUSxHQUFrQixFQUFFLENBQUM7SUFFN0IsUUFBUSxHQUFxQixFQUFFLENBQUM7SUFFaEMsT0FBTyxHQUFxQixFQUFFLENBQUM7SUFFL0IsUUFBUSxHQUFxQixFQUFFLENBQUM7SUFFaEMsVUFBVSxDQUE2QjtJQUV2QyxRQUFRLENBQUMsT0FBaUM7UUFDL0MsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRU0sWUFBWSxDQUFJLFVBQWUsRUFBRSxTQUFZO1FBQ2xELFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRU0sZUFBZSxDQUFJLFVBQWUsRUFBRSxTQUFZO1FBQ3JELE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDNUMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNmLFVBQVUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzVCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdEIsQ0FBQztJQUNILENBQUM7dUdBakRVLGdCQUFnQjsyR0FBaEIsZ0JBQWdCOzsyRkFBaEIsZ0JBQWdCO2tCQUQ1QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSVRyYW5zZm9ybU1vZGVsIH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IEZDb25uZWN0aW9uQmFzZSwgRk1hcmtlckJhc2UgfSBmcm9tICcuLi9mLWNvbm5lY3Rpb24nO1xuaW1wb3J0IHsgRkZsb3dCYXNlIH0gZnJvbSAnLi4vZi1mbG93JztcbmltcG9ydCB7IEZDYW52YXNCYXNlIH0gZnJvbSAnLi4vZi1jYW52YXMnO1xuaW1wb3J0IHsgRkJhY2tncm91bmRCYXNlIH0gZnJvbSAnLi4vZi1iYWNrZ3JvdWQnO1xuaW1wb3J0IHsgRk5vZGVCYXNlIH0gZnJvbSAnLi4vZi1ub2RlJztcbmltcG9ydCB7IEZDb25uZWN0b3JCYXNlIH0gZnJvbSAnLi4vZi1jb25uZWN0b3JzJztcbmltcG9ydCB7IEZEcmFnZ2FibGVCYXNlIH0gZnJvbSAnLi4vZi1kcmFnZ2FibGUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRkNvbXBvbmVudHNTdG9yZSB7XG5cbiAgcHVibGljIHJlYWRvbmx5IGNoYW5nZXM6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHB1YmxpYyBnZXQgZmxvd0hvc3QoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmZGbG93Py5ob3N0RWxlbWVudCE7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHRyYW5zZm9ybSgpOiBJVHJhbnNmb3JtTW9kZWwge1xuICAgIHJldHVybiB0aGlzLmZDYW52YXM/LnRyYW5zZm9ybSE7XG4gIH1cblxuICBwdWJsaWMgZkZsb3c6IEZGbG93QmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZkNhbnZhczogRkNhbnZhc0Jhc2UgfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIGZCYWNrZ3JvdW5kOiBGQmFja2dyb3VuZEJhc2UgfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIGZOb2RlczogRk5vZGVCYXNlW10gPSBbXTtcbiAgXG4gIHB1YmxpYyBmQ29ubmVjdGlvbnM6IEZDb25uZWN0aW9uQmFzZVtdID0gW107XG5cbiAgcHVibGljIGZUZW1wQ29ubmVjdGlvbjogRkNvbm5lY3Rpb25CYXNlIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBmTWFya2VyczogRk1hcmtlckJhc2VbXSA9IFtdO1xuXG4gIHB1YmxpYyBmT3V0cHV0czogRkNvbm5lY3RvckJhc2VbXSA9IFtdO1xuXG4gIHB1YmxpYyBmSW5wdXRzOiBGQ29ubmVjdG9yQmFzZVtdID0gW107XG5cbiAgcHVibGljIGZPdXRsZXRzOiBGQ29ubmVjdG9yQmFzZVtdID0gW107XG5cbiAgcHVibGljIGZEcmFnZ2FibGU6IEZEcmFnZ2FibGVCYXNlIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBmaW5kTm9kZShlbGVtZW50OiBIVE1MRWxlbWVudCB8IFNWR0VsZW1lbnQpOiBGTm9kZUJhc2UgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmZOb2Rlcy5maW5kKG4gPT4gbi5pc0NvbnRhaW5zKGVsZW1lbnQpKTtcbiAgfVxuXG4gIHB1YmxpYyBhZGRDb21wb25lbnQ8VD4oY29sbGVjdGlvbjogVFtdLCBjb21wb25lbnQ6IFQpOiB2b2lkIHtcbiAgICBjb2xsZWN0aW9uLnB1c2goY29tcG9uZW50KTtcbiAgICB0aGlzLmNoYW5nZXMubmV4dCgpO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZUNvbXBvbmVudDxUPihjb2xsZWN0aW9uOiBUW10sIGNvbXBvbmVudDogVCk6IHZvaWQge1xuICAgIGNvbnN0IGluZGV4ID0gY29sbGVjdGlvbi5pbmRleE9mKGNvbXBvbmVudCk7XG4gICAgaWYgKGluZGV4ID4gLTEpIHtcbiAgICAgIGNvbGxlY3Rpb24uc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIHRoaXMuY2hhbmdlcy5uZXh0KCk7XG4gICAgfVxuICB9XG59XG4iXX0=
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb21wb25lbnRzLXN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLXN0b3JhZ2UvZi1jb21wb25lbnRzLXN0b3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFXL0IsTUFBTSxPQUFPLGdCQUFnQjtJQUVYLE9BQU8sR0FBa0IsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUU3RCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLFdBQVksQ0FBQztJQUNsQyxDQUFDO0lBRUQsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxTQUFVLENBQUM7SUFDbEMsQ0FBQztJQUVNLEtBQUssQ0FBd0I7SUFFN0IsT0FBTyxDQUEwQjtJQUVqQyxXQUFXLENBQThCO0lBRXpDLE1BQU0sR0FBZ0IsRUFBRSxDQUFDO0lBRXpCLFlBQVksR0FBc0IsRUFBRSxDQUFDO0lBRXJDLGVBQWUsQ0FBOEI7SUFFN0MsUUFBUSxHQUFrQixFQUFFLENBQUM7SUFFN0IsUUFBUSxHQUFxQixFQUFFLENBQUM7SUFFaEMsT0FBTyxHQUFxQixFQUFFLENBQUM7SUFFL0IsUUFBUSxHQUFxQixFQUFFLENBQUM7SUFFaEMsVUFBVSxDQUE2QjtJQUV2QyxRQUFRLENBQUMsT0FBaUM7UUFDL0MsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRU0sWUFBWSxDQUFJLFVBQWUsRUFBRSxTQUFZO1FBQ2xELFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRU0sZUFBZSxDQUFJLFVBQWUsRUFBRSxTQUFZO1FBQ3JELE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDNUMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNmLFVBQVUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzVCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdEIsQ0FBQztJQUNILENBQUM7dUdBakRVLGdCQUFnQjsyR0FBaEIsZ0JBQWdCOzsyRkFBaEIsZ0JBQWdCO2tCQUQ1QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSVRyYW5zZm9ybU1vZGVsIH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IEZDb25uZWN0aW9uQmFzZSwgRk1hcmtlckJhc2UgfSBmcm9tICcuLi9mLWNvbm5lY3Rpb24nO1xuaW1wb3J0IHsgRkZsb3dCYXNlIH0gZnJvbSAnLi4vZi1mbG93JztcbmltcG9ydCB7IEZDYW52YXNCYXNlIH0gZnJvbSAnLi4vZi1jYW52YXMnO1xuaW1wb3J0IHsgRkJhY2tncm91bmRCYXNlIH0gZnJvbSAnLi4vZi1iYWNrZ3JvdWQnO1xuaW1wb3J0IHsgRk5vZGVCYXNlIH0gZnJvbSAnLi4vZi1ub2RlJztcbmltcG9ydCB7IEZDb25uZWN0b3JCYXNlIH0gZnJvbSAnLi4vZi1jb25uZWN0b3JzJztcbmltcG9ydCB7IEZEcmFnZ2FibGVCYXNlIH0gZnJvbSAnLi4vZi1kcmFnZ2FibGUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRkNvbXBvbmVudHNTdG9yZSB7XG5cbiAgcHVibGljIHJlYWRvbmx5IGNoYW5nZXM6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHB1YmxpYyBnZXQgZmxvd0hvc3QoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmZGbG93Py5ob3N0RWxlbWVudCE7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHRyYW5zZm9ybSgpOiBJVHJhbnNmb3JtTW9kZWwge1xuICAgIHJldHVybiB0aGlzLmZDYW52YXM/LnRyYW5zZm9ybSE7XG4gIH1cblxuICBwdWJsaWMgZkZsb3c6IEZGbG93QmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZkNhbnZhczogRkNhbnZhc0Jhc2UgfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIGZCYWNrZ3JvdW5kOiBGQmFja2dyb3VuZEJhc2UgfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIGZOb2RlczogRk5vZGVCYXNlW10gPSBbXTtcblxuICBwdWJsaWMgZkNvbm5lY3Rpb25zOiBGQ29ubmVjdGlvbkJhc2VbXSA9IFtdO1xuXG4gIHB1YmxpYyBmVGVtcENvbm5lY3Rpb246IEZDb25uZWN0aW9uQmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZk1hcmtlcnM6IEZNYXJrZXJCYXNlW10gPSBbXTtcblxuICBwdWJsaWMgZk91dHB1dHM6IEZDb25uZWN0b3JCYXNlW10gPSBbXTtcblxuICBwdWJsaWMgZklucHV0czogRkNvbm5lY3RvckJhc2VbXSA9IFtdO1xuXG4gIHB1YmxpYyBmT3V0bGV0czogRkNvbm5lY3RvckJhc2VbXSA9IFtdO1xuXG4gIHB1YmxpYyBmRHJhZ2dhYmxlOiBGRHJhZ2dhYmxlQmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZmluZE5vZGUoZWxlbWVudDogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50KTogRk5vZGVCYXNlIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5mTm9kZXMuZmluZChuID0+IG4uaXNDb250YWlucyhlbGVtZW50KSk7XG4gIH1cblxuICBwdWJsaWMgYWRkQ29tcG9uZW50PFQ+KGNvbGxlY3Rpb246IFRbXSwgY29tcG9uZW50OiBUKTogdm9pZCB7XG4gICAgY29sbGVjdGlvbi5wdXNoKGNvbXBvbmVudCk7XG4gICAgdGhpcy5jaGFuZ2VzLm5leHQoKTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVDb21wb25lbnQ8VD4oY29sbGVjdGlvbjogVFtdLCBjb21wb25lbnQ6IFQpOiB2b2lkIHtcbiAgICBjb25zdCBpbmRleCA9IGNvbGxlY3Rpb24uaW5kZXhPZihjb21wb25lbnQpO1xuICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICBjb2xsZWN0aW9uLnNwbGljZShpbmRleCwgMSk7XG4gICAgICB0aGlzLmNoYW5nZXMubmV4dCgpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -0,0 +1,12 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ export class FTransformStore {
5
+ changes = new Subject();
6
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FTransformStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
7
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FTransformStore });
8
+ }
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FTransformStore, decorators: [{
10
+ type: Injectable
11
+ }] });
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi10cmFuc2Zvcm0tc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2Ytc3RvcmFnZS9mLXRyYW5zZm9ybS1zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBRy9CLE1BQU0sT0FBTyxlQUFlO0lBRVYsT0FBTyxHQUFrQixJQUFJLE9BQU8sRUFBUSxDQUFDO3VHQUZsRCxlQUFlOzJHQUFmLGVBQWU7OzJGQUFmLGVBQWU7a0JBRDNCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBGVHJhbnNmb3JtU3RvcmUge1xuXG4gIHB1YmxpYyByZWFkb25seSBjaGFuZ2VzOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbn1cbiJdfQ==
@@ -1,2 +1,3 @@
1
1
  export * from './f-components-store';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2Ytc3RvcmFnZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNCQUFzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mLWNvbXBvbmVudHMtc3RvcmUnO1xuIl19
2
+ export * from './f-transform-store';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2Ytc3RvcmFnZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNCQUFzQixDQUFDO0FBRXJDLGNBQWMscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2YtY29tcG9uZW50cy1zdG9yZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi10cmFuc2Zvcm0tc3RvcmUnO1xuIl19