@foblex/flow 17.8.0 → 17.8.2

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 (218) hide show
  1. package/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior-request.d.ts +12 -0
  2. package/domain/f-connection/calculate-connection-line-by-behavior/{calculate-connection-line-by-behavior.execution.d.ts → calculate-connection-line-by-behavior.d.ts} +4 -4
  3. package/domain/f-connection/calculate-connection-line-by-behavior/fixed-center-behavior.d.ts +2 -2
  4. package/domain/f-connection/calculate-connection-line-by-behavior/fixed-outbound-behavior.d.ts +2 -2
  5. package/domain/f-connection/calculate-connection-line-by-behavior/floating-behavior.d.ts +2 -2
  6. package/domain/f-connection/calculate-connection-line-by-behavior/index.d.ts +2 -2
  7. package/domain/f-connection/providers.d.ts +2 -2
  8. package/domain/f-connection/redraw-connections/redraw-connections.execution.d.ts +2 -2
  9. package/domain/f-connectors/add-input-to-store/add-input-to-store-request.d.ts +2 -2
  10. package/domain/f-connectors/add-input-to-store/add-input-to-store.d.ts +12 -0
  11. package/domain/f-connectors/add-input-to-store/index.d.ts +1 -1
  12. package/domain/f-connectors/add-outlet-to-store/add-outlet-to-store-request.d.ts +2 -2
  13. package/domain/f-connectors/add-outlet-to-store/{add-outlet-to-store.execution.d.ts → add-outlet-to-store.d.ts} +5 -5
  14. package/domain/f-connectors/add-outlet-to-store/index.d.ts +1 -1
  15. package/domain/f-connectors/add-output-to-store/add-output-to-store-request.d.ts +2 -2
  16. package/domain/f-connectors/add-output-to-store/{add-output-to-store.execution.d.ts → add-output-to-store.d.ts} +5 -5
  17. package/domain/f-connectors/add-output-to-store/index.d.ts +1 -1
  18. package/domain/f-connectors/{find-closest-connector/find-closest-connector.request.d.ts → calculate-closest-connector/calculate-closest-connector-request.d.ts} +3 -3
  19. package/domain/f-connectors/calculate-closest-connector/calculate-closest-connector.d.ts +16 -0
  20. package/domain/f-connectors/calculate-closest-connector/index.d.ts +2 -0
  21. package/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.execution.d.ts +3 -3
  22. package/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.request.d.ts +2 -2
  23. package/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/get-all-can-be-connected-source-connectors-and-rects.execution.d.ts +2 -2
  24. package/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/get-all-can-be-connected-source-connectors-and-rects.request.d.ts +2 -2
  25. package/domain/f-connectors/get-connector-and-rect/get-connector-and-rect-request.d.ts +2 -2
  26. package/domain/f-connectors/get-connector-and-rect/{get-connector-and-rect.execution.d.ts → get-connector-and-rect.d.ts} +4 -4
  27. package/domain/f-connectors/get-connector-and-rect/index.d.ts +1 -1
  28. package/domain/f-connectors/index.d.ts +1 -1
  29. package/domain/f-connectors/mark-connectable-connectors/index.d.ts +2 -2
  30. package/domain/f-connectors/mark-connectable-connectors/{mark-connectable-connectors.request.d.ts → mark-connectable-connectors-request.d.ts} +2 -2
  31. package/domain/f-connectors/mark-connectable-connectors/{mark-connectable-connectors.execution.d.ts → mark-connectable-connectors.d.ts} +5 -5
  32. package/domain/f-connectors/providers.d.ts +11 -11
  33. package/domain/f-connectors/remove-input-from-store/index.d.ts +1 -1
  34. package/domain/f-connectors/remove-input-from-store/remove-input-from-store-request.d.ts +2 -2
  35. package/domain/f-connectors/remove-input-from-store/{remove-input-from-store.execution.d.ts → remove-input-from-store.d.ts} +4 -4
  36. package/domain/f-connectors/unmark-connectable-connectors/index.d.ts +2 -2
  37. package/domain/f-connectors/unmark-connectable-connectors/{unmark-connectable-connectors.request.d.ts → unmark-connectable-connectors-request.d.ts} +2 -2
  38. package/domain/f-connectors/unmark-connectable-connectors/{unmark-connectable-connectors.execution.d.ts → unmark-connectable-connectors.d.ts} +5 -5
  39. package/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.d.ts +1 -1
  40. package/domain/providers.d.ts +1 -1
  41. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior-request.mjs +16 -0
  42. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior.mjs +32 -0
  43. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/fixed-center-behavior.mjs +4 -4
  44. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/fixed-outbound-behavior.mjs +8 -4
  45. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/floating-behavior.mjs +10 -10
  46. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/index.mjs +3 -3
  47. package/esm2022/domain/f-connection/providers.mjs +3 -3
  48. package/esm2022/domain/f-connection/redraw-connections/redraw-connections-request.mjs +1 -1
  49. package/esm2022/domain/f-connection/redraw-connections/redraw-connections.execution.mjs +9 -9
  50. package/esm2022/domain/f-connectors/add-input-to-store/add-input-to-store-request.mjs +4 -4
  51. package/esm2022/domain/f-connectors/add-input-to-store/add-input-to-store.mjs +25 -0
  52. package/esm2022/domain/f-connectors/add-input-to-store/index.mjs +2 -2
  53. package/esm2022/domain/f-connectors/add-outlet-to-store/add-outlet-to-store-request.mjs +4 -4
  54. package/esm2022/domain/f-connectors/add-outlet-to-store/add-outlet-to-store.mjs +25 -0
  55. package/esm2022/domain/f-connectors/add-outlet-to-store/index.mjs +2 -2
  56. package/esm2022/domain/f-connectors/add-output-to-store/add-output-to-store-request.mjs +4 -4
  57. package/esm2022/domain/f-connectors/add-output-to-store/add-output-to-store.mjs +25 -0
  58. package/esm2022/domain/f-connectors/add-output-to-store/index.mjs +2 -2
  59. package/esm2022/domain/f-connectors/calculate-closest-connector/calculate-closest-connector-request.mjs +10 -0
  60. package/esm2022/domain/f-connectors/calculate-closest-connector/calculate-closest-connector.mjs +49 -0
  61. package/esm2022/domain/f-connectors/calculate-closest-connector/index.mjs +3 -0
  62. package/esm2022/domain/f-connectors/find-connectable-connector-using-priority-and-position/find-connectable-connector-using-priority-and-position.execution.mjs +9 -6
  63. package/esm2022/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.execution.mjs +14 -14
  64. package/esm2022/domain/f-connectors/get-all-can-be-connected-inputs-and-rects/get-all-can-be-connected-inputs-and-rects.request.mjs +4 -4
  65. package/esm2022/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/get-all-can-be-connected-source-connectors-and-rects.execution.mjs +9 -9
  66. package/esm2022/domain/f-connectors/get-all-can-be-connected-source-connectors-and-rects/get-all-can-be-connected-source-connectors-and-rects.request.mjs +4 -4
  67. package/esm2022/domain/f-connectors/get-connector-and-rect/get-connector-and-rect-request.mjs +4 -4
  68. package/esm2022/domain/f-connectors/get-connector-and-rect/get-connector-and-rect.mjs +31 -0
  69. package/esm2022/domain/f-connectors/get-connector-and-rect/index.mjs +2 -2
  70. package/esm2022/domain/f-connectors/index.mjs +2 -2
  71. package/esm2022/domain/f-connectors/mark-connectable-connectors/index.mjs +3 -3
  72. package/esm2022/domain/f-connectors/mark-connectable-connectors/mark-connectable-connectors-request.mjs +8 -0
  73. package/esm2022/domain/f-connectors/mark-connectable-connectors/mark-connectable-connectors.mjs +30 -0
  74. package/esm2022/domain/f-connectors/providers.mjs +20 -20
  75. package/esm2022/domain/f-connectors/remove-input-from-store/index.mjs +2 -2
  76. package/esm2022/domain/f-connectors/remove-input-from-store/remove-input-from-store-request.mjs +4 -4
  77. package/esm2022/domain/f-connectors/remove-input-from-store/remove-input-from-store.mjs +25 -0
  78. package/esm2022/domain/f-connectors/unmark-connectable-connectors/index.mjs +3 -3
  79. package/esm2022/domain/f-connectors/unmark-connectable-connectors/{unmark-connectable-connectors.request.mjs → unmark-connectable-connectors-request.mjs} +4 -4
  80. package/esm2022/domain/f-connectors/unmark-connectable-connectors/unmark-connectable-connectors.mjs +30 -0
  81. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.mjs +4 -4
  82. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.mjs +12 -6
  83. package/esm2022/domain/f-node/calculate-input-connections/calculate-input-connections.mjs +3 -6
  84. package/esm2022/domain/f-node/calculate-output-connections/calculate-output-connections.mjs +3 -6
  85. package/esm2022/f-connection/common/domain/f-bezier.path-builder.mjs +26 -10
  86. package/esm2022/f-connection/common/domain/f-segment.path-builder.mjs +41 -23
  87. package/esm2022/f-connection/common/domain/f-straight.path-builder.mjs +9 -3
  88. package/esm2022/f-connection/common/f-connection-base.mjs +34 -25
  89. package/esm2022/f-connection/common/f-connection-text/f-connection-text-path.directive.mjs +17 -27
  90. package/esm2022/f-connection/common/f-connection-text/f-connection-text.component.mjs +20 -33
  91. package/esm2022/f-connection/common/f-gradient/f-connection-gradient.component.mjs +17 -27
  92. package/esm2022/f-connection/common/f-path/f-connection-path.component.mjs +16 -26
  93. package/esm2022/f-connection/common/f-selection/f-connection-selection.component.mjs +10 -20
  94. package/esm2022/f-connection/common/i-has-connection-from-to.mjs +1 -1
  95. package/esm2022/f-connection/f-connection/f-connection.component.mjs +24 -25
  96. package/esm2022/f-connection/f-connection-builder/i-f-connection-builder-response.mjs +1 -1
  97. package/esm2022/f-connection/f-connection-center/f-connection-center.directive.mjs +21 -4
  98. package/esm2022/f-connection/f-connection-content/f-connection-content.mjs +96 -0
  99. package/esm2022/f-connection/f-connection-content/index.mjs +3 -0
  100. package/esm2022/f-connection/f-connection-content/polyline-content-engine/i-polyline-content.mjs +2 -0
  101. package/esm2022/f-connection/f-connection-content/polyline-content-engine/index.mjs +6 -0
  102. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-content-align.mjs +6 -0
  103. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-content-layout-engine.mjs +29 -0
  104. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-content-place.mjs +65 -0
  105. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/i-sampler-result.mjs +2 -0
  106. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/i-tangent.mjs +2 -0
  107. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/index.mjs +5 -0
  108. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/polyline-sampler.mjs +143 -0
  109. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/polyline.mjs +68 -0
  110. package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +17 -21
  111. package/esm2022/f-connection/f-marker/f-marker-base.mjs +2 -8
  112. package/esm2022/f-connection/f-marker/f-marker.directive.mjs +13 -22
  113. package/esm2022/f-connection/f-snap-connection/f-snap-connection.component.mjs +17 -21
  114. package/esm2022/f-connection/index.mjs +2 -1
  115. package/esm2022/f-connectors/f-connector-base.mjs +1 -1
  116. package/esm2022/f-connectors/f-node-input/f-node-input-base.mjs +2 -2
  117. package/esm2022/f-connectors/f-node-input/f-node-input.directive.mjs +34 -32
  118. package/esm2022/f-connectors/f-node-outlet/f-node-outlet-base.mjs +6 -6
  119. package/esm2022/f-connectors/f-node-outlet/f-node-outlet.directive.mjs +23 -26
  120. package/esm2022/f-connectors/f-node-output/f-node-output-base.mjs +4 -4
  121. package/esm2022/f-connectors/f-node-output/f-node-output.directive.mjs +30 -32
  122. package/esm2022/f-connectors/f-source-connector-base.mjs +11 -0
  123. package/esm2022/f-connectors/index.mjs +2 -1
  124. package/esm2022/f-draggable/domain/f-drag-started-event.mjs +4 -2
  125. package/esm2022/f-draggable/domain/is-connection-under-node/is-connection-under-node.execution.mjs +7 -7
  126. package/esm2022/f-draggable/f-canvas/move-finalize/f-canvas-move-finalize.execution.mjs +2 -2
  127. package/esm2022/f-draggable/f-connection/f-create-connection/create-finalize/f-create-connection-finalize.execution.mjs +20 -18
  128. package/esm2022/f-draggable/f-connection/f-create-connection/f-create-connection.drag-handler.mjs +38 -36
  129. package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-connection.drag-handler.mjs +21 -19
  130. package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-source.drag-handler.mjs +6 -6
  131. package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-target.drag-handler.mjs +5 -5
  132. package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-finalize/f-reassign-connection-finalize.execution.mjs +5 -5
  133. package/esm2022/f-draggable/f-drag-handler/i-f-drag-handler.mjs +1 -1
  134. package/esm2022/f-draggable/f-draggable-base.mjs +2 -2
  135. package/esm2022/f-draggable/f-draggable.directive.mjs +10 -20
  136. package/esm2022/f-draggable/f-node-move/connection-drag-handlers/base-connection.drag-handler.mjs +3 -3
  137. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-drag-model-from-selection.mjs +9 -12
  138. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-input-connection-handler-and-set-to-node-handler/create-input-connection-handler-and-set-to-node-handler.mjs +5 -5
  139. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-output-connection-handler-and-set-to-node-handler/create-output-connection-handler-and-set-to-node-handler.mjs +5 -5
  140. package/esm2022/f-draggable/f-node-rotate/rotate-preparation/f-node-rotate-preparation.execution.mjs +28 -16
  141. package/esm2022/f-node/f-node.directive.mjs +6 -2
  142. package/esm2022/mixins/change-selection/change-selection.mjs +5 -6
  143. package/esm2022/mixins/change-visibility/change-visibility.mjs +4 -3
  144. package/esm2022/mixins/constructor.mjs +1 -1
  145. package/esm2022/utils/index.mjs +2 -1
  146. package/esm2022/utils/string-attribute.mjs +4 -0
  147. package/f-connection/common/domain/f-bezier.path-builder.d.ts +2 -2
  148. package/f-connection/common/domain/f-segment.path-builder.d.ts +7 -7
  149. package/f-connection/common/f-connection-base.d.ts +13 -11
  150. package/f-connection/common/f-connection-text/f-connection-text-path.directive.d.ts +6 -11
  151. package/f-connection/common/f-connection-text/f-connection-text.component.d.ts +6 -12
  152. package/f-connection/common/f-gradient/f-connection-gradient.component.d.ts +5 -10
  153. package/f-connection/common/f-path/f-connection-path.component.d.ts +2 -7
  154. package/f-connection/common/f-selection/f-connection-selection.component.d.ts +2 -6
  155. package/f-connection/common/i-has-connection-from-to.d.ts +3 -3
  156. package/f-connection/f-connection/f-connection.component.d.ts +6 -6
  157. package/f-connection/f-connection-builder/i-f-connection-builder-response.d.ts +1 -0
  158. package/f-connection/f-connection-center/f-connection-center.directive.d.ts +6 -1
  159. package/f-connection/f-connection-content/f-connection-content.d.ts +69 -0
  160. package/f-connection/f-connection-content/index.d.ts +2 -0
  161. package/f-connection/f-connection-content/polyline-content-engine/i-polyline-content.d.ts +9 -0
  162. package/f-connection/f-connection-content/polyline-content-engine/index.d.ts +5 -0
  163. package/f-connection/f-connection-content/polyline-content-engine/polyline-content-align.d.ts +4 -0
  164. package/f-connection/f-connection-content/polyline-content-engine/polyline-content-layout-engine.d.ts +21 -0
  165. package/f-connection/f-connection-content/polyline-content-engine/polyline-content-place.d.ts +18 -0
  166. package/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/i-sampler-result.d.ts +11 -0
  167. package/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/i-tangent.d.ts +4 -0
  168. package/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/index.d.ts +4 -0
  169. package/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/polyline-sampler.d.ts +60 -0
  170. package/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/polyline.d.ts +29 -0
  171. package/f-connection/f-connection-for-create/f-connection-for-create.component.d.ts +4 -6
  172. package/f-connection/f-marker/f-marker-base.d.ts +0 -3
  173. package/f-connection/f-marker/f-marker.directive.d.ts +4 -6
  174. package/f-connection/f-snap-connection/f-snap-connection.component.d.ts +4 -6
  175. package/f-connection/index.d.ts +1 -0
  176. package/f-connection/providers.d.ts +2 -2
  177. package/f-connectors/f-connector-base.d.ts +3 -2
  178. package/f-connectors/f-node-input/f-node-input-base.d.ts +3 -2
  179. package/f-connectors/f-node-input/f-node-input.directive.d.ts +8 -9
  180. package/f-connectors/f-node-outlet/f-node-outlet-base.d.ts +3 -3
  181. package/f-connectors/f-node-outlet/f-node-outlet.directive.d.ts +6 -8
  182. package/f-connectors/f-node-output/f-node-output-base.d.ts +4 -5
  183. package/f-connectors/f-node-output/f-node-output.directive.d.ts +7 -9
  184. package/f-connectors/f-source-connector-base.d.ts +7 -0
  185. package/f-connectors/index.d.ts +1 -0
  186. package/f-draggable/domain/is-connection-under-node/is-connection-under-node.execution.d.ts +1 -1
  187. package/f-draggable/f-canvas/move-finalize/f-canvas-move-finalize.execution.d.ts +2 -2
  188. package/f-draggable/f-connection/f-create-connection/create-finalize/f-create-connection-finalize.execution.d.ts +9 -9
  189. package/f-draggable/f-connection/f-create-connection/f-create-connection.drag-handler.d.ts +5 -5
  190. package/f-draggable/f-connection/f-reassign-connection/f-reassign-connection.drag-handler.d.ts +4 -4
  191. package/f-draggable/f-connection/f-reassign-connection/f-reassign-source.drag-handler.d.ts +5 -5
  192. package/f-draggable/f-connection/f-reassign-connection/f-reassign-target.drag-handler.d.ts +5 -5
  193. package/f-draggable/f-draggable-base.d.ts +1 -1
  194. package/f-draggable/f-draggable.directive.d.ts +5 -6
  195. package/f-draggable/f-node-rotate/rotate-preparation/f-node-rotate-preparation.execution.d.ts +1 -1
  196. package/f-node/f-node.directive.d.ts +1 -1
  197. package/fesm2022/foblex-flow.mjs +1083 -669
  198. package/fesm2022/foblex-flow.mjs.map +1 -1
  199. package/package.json +1 -1
  200. package/utils/index.d.ts +1 -0
  201. package/utils/string-attribute.d.ts +1 -0
  202. package/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior.request.d.ts +0 -12
  203. package/domain/f-connectors/add-input-to-store/add-input-to-store.execution.d.ts +0 -12
  204. package/domain/f-connectors/find-closest-connector/find-closest-connector.execution.d.ts +0 -16
  205. package/domain/f-connectors/find-closest-connector/index.d.ts +0 -2
  206. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior.execution.mjs +0 -32
  207. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior.request.mjs +0 -16
  208. package/esm2022/domain/f-connectors/add-input-to-store/add-input-to-store.execution.mjs +0 -25
  209. package/esm2022/domain/f-connectors/add-outlet-to-store/add-outlet-to-store.execution.mjs +0 -25
  210. package/esm2022/domain/f-connectors/add-output-to-store/add-output-to-store.execution.mjs +0 -25
  211. package/esm2022/domain/f-connectors/find-closest-connector/find-closest-connector.execution.mjs +0 -47
  212. package/esm2022/domain/f-connectors/find-closest-connector/find-closest-connector.request.mjs +0 -10
  213. package/esm2022/domain/f-connectors/find-closest-connector/index.mjs +0 -3
  214. package/esm2022/domain/f-connectors/get-connector-and-rect/get-connector-and-rect.execution.mjs +0 -31
  215. package/esm2022/domain/f-connectors/mark-connectable-connectors/mark-connectable-connectors.execution.mjs +0 -30
  216. package/esm2022/domain/f-connectors/mark-connectable-connectors/mark-connectable-connectors.request.mjs +0 -8
  217. package/esm2022/domain/f-connectors/remove-input-from-store/remove-input-from-store.execution.mjs +0 -25
  218. package/esm2022/domain/f-connectors/unmark-connectable-connectors/unmark-connectable-connectors.execution.mjs +0 -30
@@ -1,5 +1,5 @@
1
- import { CalculateConnectionLineByBehaviorRequest, FindClosestConnectorRequest, GetAllCanBeConnectedSourceConnectorsAndRectsRequest, MarkConnectableConnectorsRequest, UnmarkConnectableConnectorsRequest, } from "../../../domain";
2
- import { isClosestConnectorInsideSnapThreshold, roundedRectFromPoint } from "./i-f-reassign-handler";
1
+ import { CalculateConnectionLineByBehaviorRequest, CalculateClosestConnectorRequest, GetAllCanBeConnectedSourceConnectorsAndRectsRequest, MarkConnectableConnectorsRequest, UnmarkConnectableConnectorsRequest, } from '../../../domain';
2
+ import { isClosestConnectorInsideSnapThreshold, roundedRectFromPoint, } from './i-f-reassign-handler';
3
3
  export class FReassignSourceDragHandler {
4
4
  _mediator;
5
5
  _connection;
@@ -26,7 +26,7 @@ export class FReassignSourceDragHandler {
26
26
  }
27
27
  markConnectableConnector() {
28
28
  this._connectableConnectors = this._mediator.execute(new GetAllCanBeConnectedSourceConnectorsAndRectsRequest(this._targetConnector));
29
- const isExistCurrentSourceConnector = this._connectableConnectors.some((x) => x.fConnector.fId === this._sourceConnector.fId);
29
+ const isExistCurrentSourceConnector = this._connectableConnectors.some((x) => x.fConnector.fId() === this._sourceConnector.fId());
30
30
  if (!isExistCurrentSourceConnector) {
31
31
  this._connectableConnectors.push(this._sourceConnectorAndRect);
32
32
  }
@@ -37,7 +37,7 @@ export class FReassignSourceDragHandler {
37
37
  if (!snapConnection) {
38
38
  return;
39
39
  }
40
- snapConnection.fInputId = this._connection.fInputId;
40
+ snapConnection.fInputId.set(this._connection.fInputId());
41
41
  snapConnection.initialize();
42
42
  }
43
43
  onPointerMove(difference) {
@@ -49,7 +49,7 @@ export class FReassignSourceDragHandler {
49
49
  }
50
50
  }
51
51
  _findClosestConnector(point, connectors) {
52
- return this._mediator.execute(new FindClosestConnectorRequest(point, connectors));
52
+ return this._mediator.execute(new CalculateClosestConnectorRequest(point, connectors));
53
53
  }
54
54
  _drawConnection(newPoint, fSide) {
55
55
  const line = this._calculateNewLine(newPoint, fSide);
@@ -80,4 +80,4 @@ export class FReassignSourceDragHandler {
80
80
  this._mediator.execute(new UnmarkConnectableConnectorsRequest(this._connectableConnectors.map((x) => x.fConnector)));
81
81
  }
82
82
  }
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1yZWFzc2lnbi1zb3VyY2UuZHJhZy1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLWNvbm5lY3Rpb24vZi1yZWFzc2lnbi1jb25uZWN0aW9uL2YtcmVhc3NpZ24tc291cmNlLmRyYWctaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsd0NBQXdDLEVBQ3hDLDJCQUEyQixFQUMzQixtREFBbUQsRUFFbkQsZ0NBQWdDLEVBQUUsa0NBQWtDLEdBQ3JFLE1BQU0saUJBQWlCLENBQUM7QUFJekIsT0FBTyxFQUFxQixxQ0FBcUMsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXhILE1BQU0sT0FBTywwQkFBMEI7SUFpQmxCO0lBQ0E7SUFDQTtJQUNBO0lBbEJYLHNCQUFzQixHQUF3QixFQUFFLENBQUM7SUFFekQsSUFBWSxnQkFBZ0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsdUJBQXVCLENBQUMsVUFBa0MsQ0FBQztJQUN6RSxDQUFDO0lBRUQsSUFBWSxnQkFBZ0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsdUJBQXVCLENBQUMsVUFBaUMsQ0FBQztJQUN4RSxDQUFDO0lBRWdCLGNBQWMsQ0FBZTtJQUV0QyxlQUFlLENBQXVDO0lBRTlELFlBQ21CLFNBQW9CLEVBQ3BCLFdBQTRCLEVBQzVCLHVCQUEwQyxFQUMxQyx1QkFBMEM7UUFIMUMsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNwQixnQkFBVyxHQUFYLFdBQVcsQ0FBaUI7UUFDNUIsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUFtQjtRQUMxQyw0QkFBdUIsR0FBdkIsdUJBQXVCLENBQW1CO1FBRTNELElBQUksQ0FBQyxjQUFjLEdBQUcsb0JBQW9CLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDM0UsQ0FB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LE9BQU8sQ0FDcEIsSUFBSSxrQ0FBa0MsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FDN0YsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZNZWRpYXRvciB9IGZyb20gXCJAZm9ibGV4L21lZGlhdG9yXCI7XG5pbXBvcnQge1xuICBDYWxjdWxhdGVDb25uZWN0aW9uTGluZUJ5QmVoYXZpb3JSZXF1ZXN0LFxuICBGaW5kQ2xvc2VzdENvbm5lY3RvclJlcXVlc3QsXG4gIEdldEFsbENhbkJlQ29ubmVjdGVkU291cmNlQ29ubmVjdG9yc0FuZFJlY3RzUmVxdWVzdCwgSUNsb3Nlc3RDb25uZWN0b3IsXG4gIElDb25uZWN0b3JBbmRSZWN0LFxuICBNYXJrQ29ubmVjdGFibGVDb25uZWN0b3JzUmVxdWVzdCwgVW5tYXJrQ29ubmVjdGFibGVDb25uZWN0b3JzUmVxdWVzdCxcbn0gZnJvbSBcIi4uLy4uLy4uL2RvbWFpblwiO1xuaW1wb3J0IHsgRUZDb25uZWN0YWJsZVNpZGUsIEZOb2RlSW5wdXREaXJlY3RpdmUsIEZOb2RlT3V0cHV0RGlyZWN0aXZlIH0gZnJvbSBcIi4uLy4uLy4uL2YtY29ubmVjdG9yc1wiO1xuaW1wb3J0IHsgRkNvbm5lY3Rpb25CYXNlLCBGU25hcENvbm5lY3Rpb25Db21wb25lbnQgfSBmcm9tIFwiLi4vLi4vLi4vZi1jb25uZWN0aW9uXCI7XG5pbXBvcnQgeyBJTGluZSwgSVBvaW50LCBSb3VuZGVkUmVjdCB9IGZyb20gXCJAZm9ibGV4LzJkXCI7XG5pbXBvcnQgeyBJRlJlYXNzaWduSGFuZGxlciwgaXNDbG9zZXN0Q29ubmVjdG9ySW5zaWRlU25hcFRocmVzaG9sZCwgcm91bmRlZFJlY3RGcm9tUG9pbnQgfSBmcm9tIFwiLi9pLWYtcmVhc3NpZ24taGFuZGxlclwiO1xuXG5leHBvcnQgY2xhc3MgRlJlYXNzaWduU291cmNlRHJhZ0hhbmRsZXIgaW1wbGVtZW50cyBJRlJlYXNzaWduSGFuZGxlciB7XG5cbiAgcHJpdmF0ZSBfY29ubmVjdGFibGVDb25uZWN0b3JzOiBJQ29ubmVjdG9yQW5kUmVjdFtdID0gW107XG5cbiAgcHJpdmF0ZSBnZXQgX3NvdXJjZUNvbm5lY3RvcigpOiBGTm9kZU91dHB1dERpcmVjdGl2ZSB7XG4gICAgcmV0dXJuIHRoaXMuX3NvdXJjZUNvbm5lY3RvckFuZFJlY3QuZkNvbm5lY3RvciBhcyBGTm9kZU91dHB1dERpcmVjdGl2ZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF90YXJnZXRDb25uZWN0b3IoKTogRk5vZGVJbnB1dERpcmVjdGl2ZSB7XG4gICAgcmV0dXJuIHRoaXMuX3RhcmdldENvbm5lY3RvckFuZFJlY3QuZkNvbm5lY3RvciBhcyBGTm9kZUlucHV0RGlyZWN0aXZlO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfY29ubmVjdG9yUmVjdCE6IFJvdW5kZWRSZWN0O1xuXG4gIHByaXZhdGUgX3NuYXBDb25uZWN0aW9uOiBGU25hcENvbm5lY3Rpb25Db21wb25lbnQgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBfbWVkaWF0b3I6IEZNZWRpYXRvcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9jb25uZWN0aW9uOiBGQ29ubmVjdGlvbkJhc2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBfc291cmNlQ29ubmVjdG9yQW5kUmVjdDogSUNvbm5lY3RvckFuZFJlY3QsXG4gICAgcHJpdmF0ZSByZWFkb25seSBfdGFyZ2V0Q29ubmVjdG9yQW5kUmVjdDogSUNvbm5lY3RvckFuZFJlY3QsXG4gICkge1xuICAgIHRoaXMuX2Nvbm5lY3RvclJlY3QgPSByb3VuZGVkUmVjdEZyb21Qb2ludCh0aGlzLl9jb25uZWN0aW9uLmxpbmUucG9pbnQxKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDb25uZWN0YWJsZUNvbm5lY3RvcnMoKTogSUNvbm5lY3RvckFuZFJlY3RbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2Nvbm5lY3RhYmxlQ29ubmVjdG9ycztcbiAgfVxuXG4gIHB1YmxpYyBtYXJrQ29ubmVjdGFibGVDb25uZWN0b3IoKTogdm9pZCB7XG4gICAgdGhpcy5fY29ubmVjdGFibGVDb25uZWN0b3JzID0gdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTxJQ29ubmVjdG9yQW5kUmVjdFtdPihcbiAgICAgIG5ldyBHZXRBbGxDYW5CZUNvbm5lY3RlZFNvdXJjZUNvbm5lY3RvcnNBbmRSZWN0c1JlcXVlc3QodGhpcy5fdGFyZ2V0Q29ubmVjdG9yKSxcbiAgICApO1xuICAgIGNvbnN0IGlzRXhpc3RDdXJyZW50U291cmNlQ29ubmVjdG9yID0gdGhpcy5fY29ubmVjdGFibGVDb25uZWN0b3JzLnNvbWUoKHgpID0+IHguZkNvbm5lY3Rvci5mSWQgPT09IHRoaXMuX3NvdXJjZUNvbm5lY3Rvci5mSWQpO1xuICAgIGlmICghaXNFeGlzdEN1cnJlbnRTb3VyY2VDb25uZWN0b3IpIHtcbiAgICAgIHRoaXMuX2Nvbm5lY3RhYmxlQ29ubmVjdG9ycy5wdXNoKHRoaXMuX3NvdXJjZUNvbm5lY3RvckFuZFJlY3QpO1xuICAgIH1cblxuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUoXG4gICAgICBuZXcgTWFya0Nvbm5lY3RhYmxlQ29ubmVjdG9yc1JlcXVlc3QodGhpcy5fY29ubmVjdGFibGVDb25uZWN0b3JzLm1hcCgoeCkgPT4geC5mQ29ubmVjdG9yKSksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBpbml0aWFsaXplU25hcENvbm5lY3Rpb24oc25hcENvbm5lY3Rpb246IEZTbmFwQ29ubmVjdGlvbkNvbXBvbmVudCB8IHVuZGVmaW5lZCk6IHZvaWQge1xuICAgIHRoaXMuX3NuYXBDb25uZWN0aW9uID0gc25hcENvbm5lY3Rpb247XG4gICAgaWYgKCFzbmFwQ29ubmVjdGlvbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBzbmFwQ29ubmVjdGlvbi5mSW5wdXRJZCA9IHRoaXMuX2Nvbm5lY3Rpb24uZklucHV0SWQ7XG4gICAgc25hcENvbm5lY3Rpb24uaW5pdGlhbGl6ZSgpO1xuICB9XG5cbiAgcHVibGljIG9uUG9pbnRlck1vdmUoZGlmZmVyZW5jZTogSVBvaW50KTogdm9pZCB7XG4gICAgY29uc3QgbmV3UG9pbnQgPSB0aGlzLl9jb25uZWN0b3JSZWN0LmFkZFBvaW50KGRpZmZlcmVuY2UpO1xuXG4gICAgY29uc3QgZkNsb3Nlc3RDb25uZWN0b3IgPSB0aGlzLl9maW5kQ2xvc2VzdENvbm5lY3RvcihuZXdQb2ludCwgdGhpcy5fY29ubmVjdGFibGVDb25uZWN0b3JzKTtcbiAgICB0aGlzLl9kcmF3Q29ubmVjdGlvbihcbiAgICAgIG5ld1BvaW50LFxuICAgICAgZkNsb3Nlc3RDb25uZWN0b3I/LmZDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSB8fCB0aGlzLl9zb3VyY2VDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSxcbiAgICApO1xuICAgIGlmICh0aGlzLl9zbmFwQ29ubmVjdGlvbikge1xuICAgICAgdGhpcy5fZHJhd1NuYXBDb25uZWN0aW9uKGlzQ2xvc2VzdENvbm5lY3Rvckluc2lkZVNuYXBUaHJlc2hvbGQoZkNsb3Nlc3RDb25uZWN0b3IsIHRoaXMuX3NuYXBDb25uZWN0aW9uKSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZmluZENsb3Nlc3RDb25uZWN0b3IocG9pbnQ6IElQb2ludCwgY29ubmVjdG9yczogSUNvbm5lY3RvckFuZFJlY3RbXSk6IElDbG9zZXN0Q29ubmVjdG9yIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTxJQ2xvc2VzdENvbm5lY3RvciB8IHVuZGVmaW5lZD4obmV3IEZpbmRDbG9zZXN0Q29ubmVjdG9yUmVxdWVzdChwb2ludCwgY29ubmVjdG9ycykpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZHJhd0Nvbm5lY3Rpb24obmV3UG9pbnQ6IElQb2ludCwgZlNpZGU6IEVGQ29ubmVjdGFibGVTaWRlKTogdm9pZCB7XG4gICAgY29uc3QgbGluZSA9IHRoaXMuX2NhbGN1bGF0ZU5ld0xpbmUobmV3UG9pbnQsIGZTaWRlKTtcbiAgICB0aGlzLl9jb25uZWN0aW9uLnNldExpbmUobGluZSwgZlNpZGUsIHRoaXMuX3RhcmdldENvbm5lY3RvckFuZFJlY3QuZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlKTtcbiAgICB0aGlzLl9jb25uZWN0aW9uLnJlZHJhdygpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlTmV3TGluZShzb3VyY2VQb2ludDogSVBvaW50LCBmU2lkZTogRUZDb25uZWN0YWJsZVNpZGUpOiBJTGluZSB7XG4gICAgcmV0dXJuIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8SUxpbmU+KG5ldyBDYWxjdWxhdGVDb25uZWN0aW9uTGluZUJ5QmVoYXZpb3JSZXF1ZXN0KFxuICAgICAgICByb3VuZGVkUmVjdEZyb21Qb2ludChzb3VyY2VQb2ludCksXG4gICAgICAgIHRoaXMuX3RhcmdldENvbm5lY3RvckFuZFJlY3QuZlJlY3QsXG4gICAgICAgIHRoaXMuX2Nvbm5lY3Rpb24uZkJlaGF2aW9yLFxuICAgICAgICBmU2lkZSxcbiAgICAgICAgdGhpcy5fdGFyZ2V0Q29ubmVjdG9yQW5kUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsXG4gICAgICApLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9kcmF3U25hcENvbm5lY3Rpb24oZkNsb3Nlc3RDb25uZWN0b3I6IElDbG9zZXN0Q29ubmVjdG9yIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgY29uc3Qgc25hcENvbm5lY3Rpb24gPSB0aGlzLl9zbmFwQ29ubmVjdGlvbiE7XG4gICAgaWYgKGZDbG9zZXN0Q29ubmVjdG9yKSB7XG4gICAgICBjb25zdCBsaW5lID0gdGhpcy5fZ2V0TGluZVRvQ2xvc2VzdFNvdXJjZUNvbm5lY3RvcihmQ2xvc2VzdENvbm5lY3Rvciwgc25hcENvbm5lY3Rpb24pO1xuICAgICAgc25hcENvbm5lY3Rpb24uc2hvdygpO1xuICAgICAgc25hcENvbm5lY3Rpb24uc2V0TGluZShsaW5lLCBmQ2xvc2VzdENvbm5lY3Rvci5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsIHRoaXMuX3RhcmdldENvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlKTtcbiAgICAgIHNuYXBDb25uZWN0aW9uLnJlZHJhdygpO1xuICAgIH0gZWxzZSB7XG4gICAgICBzbmFwQ29ubmVjdGlvbi5oaWRlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0TGluZVRvQ2xvc2VzdFNvdXJjZUNvbm5lY3RvcihmQ2xvc2VzdElucHV0OiBJQ2xvc2VzdENvbm5lY3Rvciwgc25hcENvbm5lY3Rpb246IEZTbmFwQ29ubmVjdGlvbkNvbXBvbmVudCk6IElMaW5lIHtcbiAgICByZXR1cm4gdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTxJTGluZT4obmV3IENhbGN1bGF0ZUNvbm5lY3Rpb25MaW5lQnlCZWhhdmlvclJlcXVlc3QoXG4gICAgICBmQ2xvc2VzdElucHV0LmZSZWN0LFxuICAgICAgdGhpcy5fdGFyZ2V0Q29ubmVjdG9yQW5kUmVjdC5mUmVjdCxcbiAgICAgIHNuYXBDb25uZWN0aW9uLmZCZWhhdmlvcixcbiAgICAgIGZDbG9zZXN0SW5wdXQuZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlLFxuICAgICAgdGhpcy5fdGFyZ2V0Q29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsXG4gICAgKSk7XG4gIH1cblxuICBwdWJsaWMgb25Qb2ludGVyVXAoKTogdm9pZCB7XG4gICAgdGhpcy5fZHJhd0Nvbm5lY3Rpb24odGhpcy5fY29ubmVjdG9yUmVjdCwgdGhpcy5fc291cmNlQ29ubmVjdG9yQW5kUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUpO1xuICAgIHRoaXMuX3NuYXBDb25uZWN0aW9uPy5oaWRlKCk7XG5cbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKFxuICAgICAgbmV3IFVubWFya0Nvbm5lY3RhYmxlQ29ubmVjdG9yc1JlcXVlc3QodGhpcy5fY29ubmVjdGFibGVDb25uZWN0b3JzLm1hcCgoeCkgPT4geC5mQ29ubmVjdG9yKSksXG4gICAgKTtcbiAgfVxufVxuIl19
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1yZWFzc2lnbi1zb3VyY2UuZHJhZy1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLWNvbm5lY3Rpb24vZi1yZWFzc2lnbi1jb25uZWN0aW9uL2YtcmVhc3NpZ24tc291cmNlLmRyYWctaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsd0NBQXdDLEVBQ3hDLGdDQUFnQyxFQUNoQyxtREFBbUQsRUFHbkQsZ0NBQWdDLEVBQ2hDLGtDQUFrQyxHQUNuQyxNQUFNLGlCQUFpQixDQUFDO0FBUXpCLE9BQU8sRUFFTCxxQ0FBcUMsRUFDckMsb0JBQW9CLEdBQ3JCLE1BQU0sd0JBQXdCLENBQUM7QUFFaEMsTUFBTSxPQUFPLDBCQUEwQjtJQWdCbEI7SUFDQTtJQUNBO0lBQ0E7SUFsQlgsc0JBQXNCLEdBQXdCLEVBQUUsQ0FBQztJQUV6RCxJQUFZLGdCQUFnQjtRQUMxQixPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxVQUFrQyxDQUFDO0lBQ3pFLENBQUM7SUFFRCxJQUFZLGdCQUFnQjtRQUMxQixPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxVQUFpQyxDQUFDO0lBQ3hFLENBQUM7SUFFZ0IsY0FBYyxDQUFlO0lBRXRDLGVBQWUsQ0FBdUM7SUFFOUQsWUFDbUIsU0FBb0IsRUFDcEIsV0FBNEIsRUFDNUIsdUJBQTBDLEVBQzFDLHVCQUEwQztRQUgxQyxjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQ3BCLGdCQUFXLEdBQVgsV0FBVyxDQUFpQjtRQUM1Qiw0QkFBdUIsR0FBdkIsdUJBQXVCLENBQW1CO1FBQzFDLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBbUI7UUFFM0QsSUFBSSxDQUFDLGNBQWMsR0FBRyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMzRSxD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QUUsSUFBSSxFQUFFLENBQUM7UUFFN0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQ3BCLElBQUksa0NBQWtDLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQzdGLENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGTWVkaWF0b3IgfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7XG4gIENhbGN1bGF0ZUNvbm5lY3Rpb25MaW5lQnlCZWhhdmlvclJlcXVlc3QsXG4gIENhbGN1bGF0ZUNsb3Nlc3RDb25uZWN0b3JSZXF1ZXN0LFxuICBHZXRBbGxDYW5CZUNvbm5lY3RlZFNvdXJjZUNvbm5lY3RvcnNBbmRSZWN0c1JlcXVlc3QsXG4gIElDbG9zZXN0Q29ubmVjdG9yLFxuICBJQ29ubmVjdG9yQW5kUmVjdCxcbiAgTWFya0Nvbm5lY3RhYmxlQ29ubmVjdG9yc1JlcXVlc3QsXG4gIFVubWFya0Nvbm5lY3RhYmxlQ29ubmVjdG9yc1JlcXVlc3QsXG59IGZyb20gJy4uLy4uLy4uL2RvbWFpbic7XG5pbXBvcnQge1xuICBFRkNvbm5lY3RhYmxlU2lkZSxcbiAgRk5vZGVJbnB1dERpcmVjdGl2ZSxcbiAgRk5vZGVPdXRwdXREaXJlY3RpdmUsXG59IGZyb20gJy4uLy4uLy4uL2YtY29ubmVjdG9ycyc7XG5pbXBvcnQgeyBGQ29ubmVjdGlvbkJhc2UsIEZTbmFwQ29ubmVjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2YtY29ubmVjdGlvbic7XG5pbXBvcnQgeyBJTGluZSwgSVBvaW50LCBSb3VuZGVkUmVjdCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHtcbiAgSUZSZWFzc2lnbkhhbmRsZXIsXG4gIGlzQ2xvc2VzdENvbm5lY3Rvckluc2lkZVNuYXBUaHJlc2hvbGQsXG4gIHJvdW5kZWRSZWN0RnJvbVBvaW50LFxufSBmcm9tICcuL2ktZi1yZWFzc2lnbi1oYW5kbGVyJztcblxuZXhwb3J0IGNsYXNzIEZSZWFzc2lnblNvdXJjZURyYWdIYW5kbGVyIGltcGxlbWVudHMgSUZSZWFzc2lnbkhhbmRsZXIge1xuICBwcml2YXRlIF9jb25uZWN0YWJsZUNvbm5lY3RvcnM6IElDb25uZWN0b3JBbmRSZWN0W10gPSBbXTtcblxuICBwcml2YXRlIGdldCBfc291cmNlQ29ubmVjdG9yKCk6IEZOb2RlT3V0cHV0RGlyZWN0aXZlIHtcbiAgICByZXR1cm4gdGhpcy5fc291cmNlQ29ubmVjdG9yQW5kUmVjdC5mQ29ubmVjdG9yIGFzIEZOb2RlT3V0cHV0RGlyZWN0aXZlO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgX3RhcmdldENvbm5lY3RvcigpOiBGTm9kZUlucHV0RGlyZWN0aXZlIHtcbiAgICByZXR1cm4gdGhpcy5fdGFyZ2V0Q29ubmVjdG9yQW5kUmVjdC5mQ29ubmVjdG9yIGFzIEZOb2RlSW5wdXREaXJlY3RpdmU7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IF9jb25uZWN0b3JSZWN0ITogUm91bmRlZFJlY3Q7XG5cbiAgcHJpdmF0ZSBfc25hcENvbm5lY3Rpb246IEZTbmFwQ29ubmVjdGlvbkNvbXBvbmVudCB8IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRvcjogRk1lZGlhdG9yLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2Nvbm5lY3Rpb246IEZDb25uZWN0aW9uQmFzZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9zb3VyY2VDb25uZWN0b3JBbmRSZWN0OiBJQ29ubmVjdG9yQW5kUmVjdCxcbiAgICBwcml2YXRlIHJlYWRvbmx5IF90YXJnZXRDb25uZWN0b3JBbmRSZWN0OiBJQ29ubmVjdG9yQW5kUmVjdCxcbiAgKSB7XG4gICAgdGhpcy5fY29ubmVjdG9yUmVjdCA9IHJvdW5kZWRSZWN0RnJvbVBvaW50KHRoaXMuX2Nvbm5lY3Rpb24ubGluZS5wb2ludDEpO1xuICB9XG5cbiAgcHVibGljIGdldENvbm5lY3RhYmxlQ29ubmVjdG9ycygpOiBJQ29ubmVjdG9yQW5kUmVjdFtdIHtcbiAgICByZXR1cm4gdGhpcy5fY29ubmVjdGFibGVDb25uZWN0b3JzO1xuICB9XG5cbiAgcHVibGljIG1hcmtDb25uZWN0YWJsZUNvbm5lY3RvcigpOiB2b2lkIHtcbiAgICB0aGlzLl9jb25uZWN0YWJsZUNvbm5lY3RvcnMgPSB0aGlzLl9tZWRpYXRvci5leGVjdXRlPElDb25uZWN0b3JBbmRSZWN0W10+KFxuICAgICAgbmV3IEdldEFsbENhbkJlQ29ubmVjdGVkU291cmNlQ29ubmVjdG9yc0FuZFJlY3RzUmVxdWVzdCh0aGlzLl90YXJnZXRDb25uZWN0b3IpLFxuICAgICk7XG4gICAgY29uc3QgaXNFeGlzdEN1cnJlbnRTb3VyY2VDb25uZWN0b3IgPSB0aGlzLl9jb25uZWN0YWJsZUNvbm5lY3RvcnMuc29tZShcbiAgICAgICh4KSA9PiB4LmZDb25uZWN0b3IuZklkKCkgPT09IHRoaXMuX3NvdXJjZUNvbm5lY3Rvci5mSWQoKSxcbiAgICApO1xuICAgIGlmICghaXNFeGlzdEN1cnJlbnRTb3VyY2VDb25uZWN0b3IpIHtcbiAgICAgIHRoaXMuX2Nvbm5lY3RhYmxlQ29ubmVjdG9ycy5wdXNoKHRoaXMuX3NvdXJjZUNvbm5lY3RvckFuZFJlY3QpO1xuICAgIH1cblxuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUoXG4gICAgICBuZXcgTWFya0Nvbm5lY3RhYmxlQ29ubmVjdG9yc1JlcXVlc3QodGhpcy5fY29ubmVjdGFibGVDb25uZWN0b3JzLm1hcCgoeCkgPT4geC5mQ29ubmVjdG9yKSksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBpbml0aWFsaXplU25hcENvbm5lY3Rpb24oc25hcENvbm5lY3Rpb246IEZTbmFwQ29ubmVjdGlvbkNvbXBvbmVudCB8IHVuZGVmaW5lZCk6IHZvaWQge1xuICAgIHRoaXMuX3NuYXBDb25uZWN0aW9uID0gc25hcENvbm5lY3Rpb247XG4gICAgaWYgKCFzbmFwQ29ubmVjdGlvbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBzbmFwQ29ubmVjdGlvbi5mSW5wdXRJZC5zZXQodGhpcy5fY29ubmVjdGlvbi5mSW5wdXRJZCgpKTtcbiAgICBzbmFwQ29ubmVjdGlvbi5pbml0aWFsaXplKCk7XG4gIH1cblxuICBwdWJsaWMgb25Qb2ludGVyTW92ZShkaWZmZXJlbmNlOiBJUG9pbnQpOiB2b2lkIHtcbiAgICBjb25zdCBuZXdQb2ludCA9IHRoaXMuX2Nvbm5lY3RvclJlY3QuYWRkUG9pbnQoZGlmZmVyZW5jZSk7XG5cbiAgICBjb25zdCBmQ2xvc2VzdENvbm5lY3RvciA9IHRoaXMuX2ZpbmRDbG9zZXN0Q29ubmVjdG9yKG5ld1BvaW50LCB0aGlzLl9jb25uZWN0YWJsZUNvbm5lY3RvcnMpO1xuICAgIHRoaXMuX2RyYXdDb25uZWN0aW9uKFxuICAgICAgbmV3UG9pbnQsXG4gICAgICBmQ2xvc2VzdENvbm5lY3Rvcj8uZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlIHx8IHRoaXMuX3NvdXJjZUNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlLFxuICAgICk7XG4gICAgaWYgKHRoaXMuX3NuYXBDb25uZWN0aW9uKSB7XG4gICAgICB0aGlzLl9kcmF3U25hcENvbm5lY3Rpb24oXG4gICAgICAgIGlzQ2xvc2VzdENvbm5lY3Rvckluc2lkZVNuYXBUaHJlc2hvbGQoZkNsb3Nlc3RDb25uZWN0b3IsIHRoaXMuX3NuYXBDb25uZWN0aW9uKSxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZmluZENsb3Nlc3RDb25uZWN0b3IoXG4gICAgcG9pbnQ6IElQb2ludCxcbiAgICBjb25uZWN0b3JzOiBJQ29ubmVjdG9yQW5kUmVjdFtdLFxuICApOiBJQ2xvc2VzdENvbm5lY3RvciB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8SUNsb3Nlc3RDb25uZWN0b3IgfCB1bmRlZmluZWQ+KFxuICAgICAgbmV3IENhbGN1bGF0ZUNsb3Nlc3RDb25uZWN0b3JSZXF1ZXN0KHBvaW50LCBjb25uZWN0b3JzKSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfZHJhd0Nvbm5lY3Rpb24obmV3UG9pbnQ6IElQb2ludCwgZlNpZGU6IEVGQ29ubmVjdGFibGVTaWRlKTogdm9pZCB7XG4gICAgY29uc3QgbGluZSA9IHRoaXMuX2NhbGN1bGF0ZU5ld0xpbmUobmV3UG9pbnQsIGZTaWRlKTtcbiAgICB0aGlzLl9jb25uZWN0aW9uLnNldExpbmUobGluZSwgZlNpZGUsIHRoaXMuX3RhcmdldENvbm5lY3RvckFuZFJlY3QuZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlKTtcbiAgICB0aGlzLl9jb25uZWN0aW9uLnJlZHJhdygpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlTmV3TGluZShzb3VyY2VQb2ludDogSVBvaW50LCBmU2lkZTogRUZDb25uZWN0YWJsZVNpZGUpOiBJTGluZSB7XG4gICAgcmV0dXJuIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8SUxpbmU+KFxuICAgICAgbmV3IENhbGN1bGF0ZUNvbm5lY3Rpb25MaW5lQnlCZWhhdmlvclJlcXVlc3QoXG4gICAgICAgIHJvdW5kZWRSZWN0RnJvbVBvaW50KHNvdXJjZVBvaW50KSxcbiAgICAgICAgdGhpcy5fdGFyZ2V0Q29ubmVjdG9yQW5kUmVjdC5mUmVjdCxcbiAgICAgICAgdGhpcy5fY29ubmVjdGlvbi5mQmVoYXZpb3IsXG4gICAgICAgIGZTaWRlLFxuICAgICAgICB0aGlzLl90YXJnZXRDb25uZWN0b3JBbmRSZWN0LmZDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSxcbiAgICAgICksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2RyYXdTbmFwQ29ubmVjdGlvbihmQ2xvc2VzdENvbm5lY3RvcjogSUNsb3Nlc3RDb25uZWN0b3IgfCB1bmRlZmluZWQpOiB2b2lkIHtcbiAgICBjb25zdCBzbmFwQ29ubmVjdGlvbiA9IHRoaXMuX3NuYXBDb25uZWN0aW9uITtcbiAgICBpZiAoZkNsb3Nlc3RDb25uZWN0b3IpIHtcbiAgICAgIGNvbnN0IGxpbmUgPSB0aGlzLl9nZXRMaW5lVG9DbG9zZXN0U291cmNlQ29ubmVjdG9yKGZDbG9zZXN0Q29ubmVjdG9yLCBzbmFwQ29ubmVjdGlvbik7XG4gICAgICBzbmFwQ29ubmVjdGlvbi5zaG93KCk7XG4gICAgICBzbmFwQ29ubmVjdGlvbi5zZXRMaW5lKFxuICAgICAgICBsaW5lLFxuICAgICAgICBmQ2xvc2VzdENvbm5lY3Rvci5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsXG4gICAgICAgIHRoaXMuX3RhcmdldENvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlLFxuICAgICAgKTtcbiAgICAgIHNuYXBDb25uZWN0aW9uLnJlZHJhdygpO1xuICAgIH0gZWxzZSB7XG4gICAgICBzbmFwQ29ubmVjdGlvbi5oaWRlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0TGluZVRvQ2xvc2VzdFNvdXJjZUNvbm5lY3RvcihcbiAgICBmQ2xvc2VzdElucHV0OiBJQ2xvc2VzdENvbm5lY3RvcixcbiAgICBzbmFwQ29ubmVjdGlvbjogRlNuYXBDb25uZWN0aW9uQ29tcG9uZW50LFxuICApOiBJTGluZSB7XG4gICAgcmV0dXJuIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8SUxpbmU+KFxuICAgICAgbmV3IENhbGN1bGF0ZUNvbm5lY3Rpb25MaW5lQnlCZWhhdmlvclJlcXVlc3QoXG4gICAgICAgIGZDbG9zZXN0SW5wdXQuZlJlY3QsXG4gICAgICAgIHRoaXMuX3RhcmdldENvbm5lY3RvckFuZFJlY3QuZlJlY3QsXG4gICAgICAgIHNuYXBDb25uZWN0aW9uLmZCZWhhdmlvcixcbiAgICAgICAgZkNsb3Nlc3RJbnB1dC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsXG4gICAgICAgIHRoaXMuX3RhcmdldENvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlLFxuICAgICAgKSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIG9uUG9pbnRlclVwKCk6IHZvaWQge1xuICAgIHRoaXMuX2RyYXdDb25uZWN0aW9uKFxuICAgICAgdGhpcy5fY29ubmVjdG9yUmVjdCxcbiAgICAgIHRoaXMuX3NvdXJjZUNvbm5lY3RvckFuZFJlY3QuZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlLFxuICAgICk7XG4gICAgdGhpcy5fc25hcENvbm5lY3Rpb24/LmhpZGUoKTtcblxuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUoXG4gICAgICBuZXcgVW5tYXJrQ29ubmVjdGFibGVDb25uZWN0b3JzUmVxdWVzdCh0aGlzLl9jb25uZWN0YWJsZUNvbm5lY3RvcnMubWFwKCh4KSA9PiB4LmZDb25uZWN0b3IpKSxcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -1,5 +1,5 @@
1
- import { CalculateConnectionLineByBehaviorRequest, FindClosestConnectorRequest, GetAllCanBeConnectedInputsAndRectsRequest, MarkConnectableConnectorsRequest, UnmarkConnectableConnectorsRequest, } from "../../../domain";
2
- import { isClosestConnectorInsideSnapThreshold, roundedRectFromPoint } from "./i-f-reassign-handler";
1
+ import { CalculateConnectionLineByBehaviorRequest, CalculateClosestConnectorRequest, GetAllCanBeConnectedInputsAndRectsRequest, MarkConnectableConnectorsRequest, UnmarkConnectableConnectorsRequest, } from '../../../domain';
2
+ import { isClosestConnectorInsideSnapThreshold, roundedRectFromPoint, } from './i-f-reassign-handler';
3
3
  export class FReassignTargetDragHandler {
4
4
  _mediator;
5
5
  _connection;
@@ -36,7 +36,7 @@ export class FReassignTargetDragHandler {
36
36
  if (!snapConnection) {
37
37
  return;
38
38
  }
39
- snapConnection.fOutputId = this._connection.fOutputId;
39
+ snapConnection.fOutputId.set(this._connection.fOutputId());
40
40
  snapConnection.initialize();
41
41
  }
42
42
  onPointerMove(difference) {
@@ -48,7 +48,7 @@ export class FReassignTargetDragHandler {
48
48
  }
49
49
  }
50
50
  _findClosestConnector(point, connectors) {
51
- return this._mediator.execute(new FindClosestConnectorRequest(point, connectors));
51
+ return this._mediator.execute(new CalculateClosestConnectorRequest(point, connectors));
52
52
  }
53
53
  _drawConnection(newPoint, fSide) {
54
54
  const line = this._calculateNewLine(newPoint, fSide);
@@ -79,4 +79,4 @@ export class FReassignTargetDragHandler {
79
79
  this._mediator.execute(new UnmarkConnectableConnectorsRequest(this._connectableConnectors.map((x) => x.fConnector)));
80
80
  }
81
81
  }
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1yZWFzc2lnbi10YXJnZXQuZHJhZy1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLWNvbm5lY3Rpb24vZi1yZWFzc2lnbi1jb25uZWN0aW9uL2YtcmVhc3NpZ24tdGFyZ2V0LmRyYWctaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsd0NBQXdDLEVBQ3hDLDJCQUEyQixFQUFFLHlDQUF5QyxFQUV0RSxnQ0FBZ0MsRUFBRSxrQ0FBa0MsR0FDckUsTUFBTSxpQkFBaUIsQ0FBQztBQUl6QixPQUFPLEVBQXFCLHFDQUFxQyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFeEgsTUFBTSxPQUFPLDBCQUEwQjtJQXFCbEI7SUFDQTtJQUNBO0lBQ0E7SUF0Qlgsc0JBQXNCLEdBQXdCLEVBQUUsQ0FBQztJQUV6RCxJQUFZLGdCQUFnQjtRQUMxQixPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxVQUFrQyxDQUFDO0lBQ3pFLENBQUM7SUFFRCxJQUFZLG9CQUFvQjtRQUM5QixPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxLQUFLLENBQUM7SUFDNUMsQ0FBQztJQUVELElBQVksZ0JBQWdCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFDLFVBQWlDLENBQUM7SUFDeEUsQ0FBQztJQUVnQixjQUFjLENBQWU7SUFFdEMsZUFBZSxDQUF1QztJQUU5RCxZQUNtQixTQUFvQixFQUNwQixXQUE0QixFQUM1Qix1QkFBMEMsRUFDMUMsdUJBQTBDO1FBSDFDLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDcEIsZ0JBQVcsR0FBWCxXQUFXLENBQWlCO1FBQzVCLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBbUI7UUFDMUMsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUFtQjtRQUUzRCxJQUFJLENBQUMsY0FBYyxH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QUFpQixFQUFFLGNBQWMsQ0FBQyxDQUFDO1lBQ3RGLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN0QixjQUFjLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCLEVBQUUsaUJBQWlCLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFDcEgsY0FBYyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzFCLENBQUM7YUFBTSxDQUFDO1lBQ04sY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3hCLENBQUM7SUFDSCxDQUFDO0lBRU8sZ0NBQWdDLENBQUMsYUFBZ0MsRUFBRSxjQUF3QztRQUNqSCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFRLElBQUksd0NBQXdDLENBQy9FLElBQUksQ0FBQyxvQkFBb0IsRUFDekIsYUFBYSxDQUFDLEtBQUssRUFDbkIsY0FBYyxDQUFDLFNBQVMsRUFDeEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixFQUN0QyxhQUFhLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUMxQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLHVCQUF1QixDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3BHLElBQUksQ0FBQyxlQUFlLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFFN0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQ3BCLElBQUksa0NBQWtDLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQzdGLENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGTWVkaWF0b3IgfSBmcm9tIFwiQGZvYmxleC9tZWRpYXRvclwiO1xuaW1wb3J0IHtcbiAgQ2FsY3VsYXRlQ29ubmVjdGlvbkxpbmVCeUJlaGF2aW9yUmVxdWVzdCxcbiAgRmluZENsb3Nlc3RDb25uZWN0b3JSZXF1ZXN0LCBHZXRBbGxDYW5CZUNvbm5lY3RlZElucHV0c0FuZFJlY3RzUmVxdWVzdCwgSUNsb3Nlc3RDb25uZWN0b3IsXG4gIElDb25uZWN0b3JBbmRSZWN0LFxuICBNYXJrQ29ubmVjdGFibGVDb25uZWN0b3JzUmVxdWVzdCwgVW5tYXJrQ29ubmVjdGFibGVDb25uZWN0b3JzUmVxdWVzdCxcbn0gZnJvbSBcIi4uLy4uLy4uL2RvbWFpblwiO1xuaW1wb3J0IHsgRUZDb25uZWN0YWJsZVNpZGUsIEZOb2RlSW5wdXREaXJlY3RpdmUsIEZOb2RlT3V0cHV0RGlyZWN0aXZlIH0gZnJvbSBcIi4uLy4uLy4uL2YtY29ubmVjdG9yc1wiO1xuaW1wb3J0IHsgRkNvbm5lY3Rpb25CYXNlLCBGU25hcENvbm5lY3Rpb25Db21wb25lbnQgfSBmcm9tIFwiLi4vLi4vLi4vZi1jb25uZWN0aW9uXCI7XG5pbXBvcnQgeyBJTGluZSwgSVBvaW50LCBJUm91bmRlZFJlY3QsIFJvdW5kZWRSZWN0IH0gZnJvbSBcIkBmb2JsZXgvMmRcIjtcbmltcG9ydCB7IElGUmVhc3NpZ25IYW5kbGVyLCBpc0Nsb3Nlc3RDb25uZWN0b3JJbnNpZGVTbmFwVGhyZXNob2xkLCByb3VuZGVkUmVjdEZyb21Qb2ludCB9IGZyb20gXCIuL2ktZi1yZWFzc2lnbi1oYW5kbGVyXCI7XG5cbmV4cG9ydCBjbGFzcyBGUmVhc3NpZ25UYXJnZXREcmFnSGFuZGxlciBpbXBsZW1lbnRzIElGUmVhc3NpZ25IYW5kbGVyIHtcblxuICBwcml2YXRlIF9jb25uZWN0YWJsZUNvbm5lY3RvcnM6IElDb25uZWN0b3JBbmRSZWN0W10gPSBbXTtcblxuICBwcml2YXRlIGdldCBfc291cmNlQ29ubmVjdG9yKCk6IEZOb2RlT3V0cHV0RGlyZWN0aXZlIHtcbiAgICByZXR1cm4gdGhpcy5fc291cmNlQ29ubmVjdG9yQW5kUmVjdC5mQ29ubmVjdG9yIGFzIEZOb2RlT3V0cHV0RGlyZWN0aXZlO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgX3NvdXJjZUNvbm5lY3RvclJlY3QoKTogSVJvdW5kZWRSZWN0IHtcbiAgICByZXR1cm4gdGhpcy5fc291cmNlQ29ubmVjdG9yQW5kUmVjdC5mUmVjdDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF90YXJnZXRDb25uZWN0b3IoKTogRk5vZGVJbnB1dERpcmVjdGl2ZSB7XG4gICAgcmV0dXJuIHRoaXMuX3RhcmdldENvbm5lY3RvckFuZFJlY3QuZkNvbm5lY3RvciBhcyBGTm9kZUlucHV0RGlyZWN0aXZlO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfY29ubmVjdG9yUmVjdCE6IFJvdW5kZWRSZWN0O1xuXG4gIHByaXZhdGUgX3NuYXBDb25uZWN0aW9uOiBGU25hcENvbm5lY3Rpb25Db21wb25lbnQgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBfbWVkaWF0b3I6IEZNZWRpYXRvcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9jb25uZWN0aW9uOiBGQ29ubmVjdGlvbkJhc2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBfc291cmNlQ29ubmVjdG9yQW5kUmVjdDogSUNvbm5lY3RvckFuZFJlY3QsXG4gICAgcHJpdmF0ZSByZWFkb25seSBfdGFyZ2V0Q29ubmVjdG9yQW5kUmVjdDogSUNvbm5lY3RvckFuZFJlY3QsXG4gICkge1xuICAgIHRoaXMuX2Nvbm5lY3RvclJlY3QgPSByb3VuZGVkUmVjdEZyb21Qb2ludCh0aGlzLl9jb25uZWN0aW9uLmxpbmUucG9pbnQyKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDb25uZWN0YWJsZUNvbm5lY3RvcnMoKTogSUNvbm5lY3RvckFuZFJlY3RbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2Nvbm5lY3RhYmxlQ29ubmVjdG9ycztcbiAgfVxuXG4gIHB1YmxpYyBtYXJrQ29ubmVjdGFibGVDb25uZWN0b3IoKTogdm9pZCB7XG4gICAgdGhpcy5fY29ubmVjdGFibGVDb25uZWN0b3JzID0gdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTxJQ29ubmVjdG9yQW5kUmVjdFtdPihcbiAgICAgIG5ldyBHZXRBbGxDYW5CZUNvbm5lY3RlZElucHV0c0FuZFJlY3RzUmVxdWVzdCh0aGlzLl9zb3VyY2VDb25uZWN0b3IpLFxuICAgICk7XG5cbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKFxuICAgICAgbmV3IE1hcmtDb25uZWN0YWJsZUNvbm5lY3RvcnNSZXF1ZXN0KHRoaXMuX2Nvbm5lY3RhYmxlQ29ubmVjdG9ycy5tYXAoKHgpID0+IHguZkNvbm5lY3RvcikpLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgaW5pdGlhbGl6ZVNuYXBDb25uZWN0aW9uKHNuYXBDb25uZWN0aW9uOiBGU25hcENvbm5lY3Rpb25Db21wb25lbnQgfCB1bmRlZmluZWQpOiB2b2lkIHtcbiAgICB0aGlzLl9zbmFwQ29ubmVjdGlvbiA9IHNuYXBDb25uZWN0aW9uO1xuICAgIGlmICghc25hcENvbm5lY3Rpb24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgc25hcENvbm5lY3Rpb24uZk91dHB1dElkID0gdGhpcy5fY29ubmVjdGlvbi5mT3V0cHV0SWQ7XG4gICAgc25hcENvbm5lY3Rpb24uaW5pdGlhbGl6ZSgpO1xuICB9XG5cbiAgcHVibGljIG9uUG9pbnRlck1vdmUoZGlmZmVyZW5jZTogSVBvaW50KTogdm9pZCB7XG4gICAgY29uc3QgbmV3UG9pbnQgPSB0aGlzLl9jb25uZWN0b3JSZWN0LmFkZFBvaW50KGRpZmZlcmVuY2UpO1xuXG4gICAgY29uc3QgZkNsb3Nlc3RDb25uZWN0b3IgPSB0aGlzLl9maW5kQ2xvc2VzdENvbm5lY3RvcihuZXdQb2ludCwgdGhpcy5fY29ubmVjdGFibGVDb25uZWN0b3JzKTtcbiAgICB0aGlzLl9kcmF3Q29ubmVjdGlvbihcbiAgICAgIG5ld1BvaW50LFxuICAgICAgZkNsb3Nlc3RDb25uZWN0b3I/LmZDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSB8fCB0aGlzLl90YXJnZXRDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSxcbiAgICApO1xuICAgIGlmICh0aGlzLl9zbmFwQ29ubmVjdGlvbikge1xuICAgICAgdGhpcy5fZHJhd1NuYXBDb25uZWN0aW9uKGlzQ2xvc2VzdENvbm5lY3Rvckluc2lkZVNuYXBUaHJlc2hvbGQoZkNsb3Nlc3RDb25uZWN0b3IsIHRoaXMuX3NuYXBDb25uZWN0aW9uKSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZmluZENsb3Nlc3RDb25uZWN0b3IocG9pbnQ6IElQb2ludCwgY29ubmVjdG9yczogSUNvbm5lY3RvckFuZFJlY3RbXSk6IElDbG9zZXN0Q29ubmVjdG9yIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTxJQ2xvc2VzdENvbm5lY3RvciB8IHVuZGVmaW5lZD4obmV3IEZpbmRDbG9zZXN0Q29ubmVjdG9yUmVxdWVzdChwb2ludCwgY29ubmVjdG9ycykpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZHJhd0Nvbm5lY3Rpb24obmV3UG9pbnQ6IElQb2ludCwgZlNpZGU6IEVGQ29ubmVjdGFibGVTaWRlKTogdm9pZCB7XG4gICAgY29uc3QgbGluZSA9IHRoaXMuX2NhbGN1bGF0ZU5ld0xpbmUobmV3UG9pbnQsIGZTaWRlKTtcbiAgICB0aGlzLl9jb25uZWN0aW9uLnNldExpbmUobGluZSwgdGhpcy5fc291cmNlQ29ubmVjdG9yQW5kUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsIGZTaWRlKTtcbiAgICB0aGlzLl9jb25uZWN0aW9uLnJlZHJhdygpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlTmV3TGluZSh0YXJnZXRQb2ludDogSVBvaW50LCBmU2lkZTogRUZDb25uZWN0YWJsZVNpZGUpOiBJTGluZSB7XG4gICAgcmV0dXJuIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8SUxpbmU+KG5ldyBDYWxjdWxhdGVDb25uZWN0aW9uTGluZUJ5QmVoYXZpb3JSZXF1ZXN0KFxuICAgICAgICB0aGlzLl9zb3VyY2VDb25uZWN0b3JSZWN0LFxuICAgICAgICByb3VuZGVkUmVjdEZyb21Qb2ludCh0YXJnZXRQb2ludCksXG4gICAgICAgIHRoaXMuX2Nvbm5lY3Rpb24uZkJlaGF2aW9yLFxuICAgICAgICB0aGlzLl9zb3VyY2VDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSxcbiAgICAgICAgZlNpZGUsXG4gICAgICApLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9kcmF3U25hcENvbm5lY3Rpb24oZkNsb3Nlc3RDb25uZWN0b3I6IElDbG9zZXN0Q29ubmVjdG9yIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgY29uc3Qgc25hcENvbm5lY3Rpb24gPSB0aGlzLl9zbmFwQ29ubmVjdGlvbiE7XG4gICAgaWYgKGZDbG9zZXN0Q29ubmVjdG9yKSB7XG4gICAgICBjb25zdCBsaW5lID0gdGhpcy5fZ2V0TGluZVRvQ2xvc2VzdFRhcmdldENvbm5lY3RvcihmQ2xvc2VzdENvbm5lY3Rvciwgc25hcENvbm5lY3Rpb24pO1xuICAgICAgc25hcENvbm5lY3Rpb24uc2hvdygpO1xuICAgICAgc25hcENvbm5lY3Rpb24uc2V0TGluZShsaW5lLCB0aGlzLl9zb3VyY2VDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSwgZkNsb3Nlc3RDb25uZWN0b3IuZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlKTtcbiAgICAgIHNuYXBDb25uZWN0aW9uLnJlZHJhdygpO1xuICAgIH0gZWxzZSB7XG4gICAgICBzbmFwQ29ubmVjdGlvbi5oaWRlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0TGluZVRvQ2xvc2VzdFRhcmdldENvbm5lY3RvcihmQ2xvc2VzdElucHV0OiBJQ2xvc2VzdENvbm5lY3Rvciwgc25hcENvbm5lY3Rpb246IEZTbmFwQ29ubmVjdGlvbkNvbXBvbmVudCk6IElMaW5lIHtcbiAgICByZXR1cm4gdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTxJTGluZT4obmV3IENhbGN1bGF0ZUNvbm5lY3Rpb25MaW5lQnlCZWhhdmlvclJlcXVlc3QoXG4gICAgICB0aGlzLl9zb3VyY2VDb25uZWN0b3JSZWN0LFxuICAgICAgZkNsb3Nlc3RJbnB1dC5mUmVjdCxcbiAgICAgIHNuYXBDb25uZWN0aW9uLmZCZWhhdmlvcixcbiAgICAgIHRoaXMuX3NvdXJjZUNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlLFxuICAgICAgZkNsb3Nlc3RJbnB1dC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsXG4gICAgKSk7XG4gIH1cblxuICBwdWJsaWMgb25Qb2ludGVyVXAoKTogdm9pZCB7XG4gICAgdGhpcy5fZHJhd0Nvbm5lY3Rpb24odGhpcy5fY29ubmVjdG9yUmVjdCwgdGhpcy5fdGFyZ2V0Q29ubmVjdG9yQW5kUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUpO1xuICAgIHRoaXMuX3NuYXBDb25uZWN0aW9uPy5oaWRlKCk7XG5cbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKFxuICAgICAgbmV3IFVubWFya0Nvbm5lY3RhYmxlQ29ubmVjdG9yc1JlcXVlc3QodGhpcy5fY29ubmVjdGFibGVDb25uZWN0b3JzLm1hcCgoeCkgPT4geC5mQ29ubmVjdG9yKSksXG4gICAgKTtcbiAgfVxufVxuIl19
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1yZWFzc2lnbi10YXJnZXQuZHJhZy1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLWNvbm5lY3Rpb24vZi1yZWFzc2lnbi1jb25uZWN0aW9uL2YtcmVhc3NpZ24tdGFyZ2V0LmRyYWctaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsd0NBQXdDLEVBQ3hDLGdDQUFnQyxFQUNoQyx5Q0FBeUMsRUFHekMsZ0NBQWdDLEVBQ2hDLGtDQUFrQyxHQUNuQyxNQUFNLGlCQUFpQixDQUFDO0FBUXpCLE9BQU8sRUFFTCxxQ0FBcUMsRUFDckMsb0JBQW9CLEdBQ3JCLE1BQU0sd0JBQXdCLENBQUM7QUFFaEMsTUFBTSxPQUFPLDBCQUEwQjtJQW9CbEI7SUFDQTtJQUNBO0lBQ0E7SUF0Qlgsc0JBQXNCLEdBQXdCLEVBQUUsQ0FBQztJQUV6RCxJQUFZLGdCQUFnQjtRQUMxQixPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxVQUFrQyxDQUFDO0lBQ3pFLENBQUM7SUFFRCxJQUFZLG9CQUFvQjtRQUM5QixPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxLQUFLLENBQUM7SUFDNUMsQ0FBQztJQUVELElBQVksZ0JBQWdCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFDLFVBQWlDLENBQUM7SUFDeEUsQ0FBQztJQUVnQixjQUFjLENBQWU7SUFFdEMsZUFBZSxDQUF1QztJQUU5RCxZQUNtQixTQUFvQixFQUNwQixXQUE0QixFQUM1Qix1QkFBMEMsRUFDMUMsdUJBQTBDO1FBSDFDLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDcEIsZ0JBQVcsR0FBWCxXQUFXLENBQWlCO1FBQzVCLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBbUI7UUFDMUMsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUFtQjtRQUUzRCxJQUFJLENBQUMsY0FB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ICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7XG4gIENhbGN1bGF0ZUNvbm5lY3Rpb25MaW5lQnlCZWhhdmlvclJlcXVlc3QsXG4gIENhbGN1bGF0ZUNsb3Nlc3RDb25uZWN0b3JSZXF1ZXN0LFxuICBHZXRBbGxDYW5CZUNvbm5lY3RlZElucHV0c0FuZFJlY3RzUmVxdWVzdCxcbiAgSUNsb3Nlc3RDb25uZWN0b3IsXG4gIElDb25uZWN0b3JBbmRSZWN0LFxuICBNYXJrQ29ubmVjdGFibGVDb25uZWN0b3JzUmVxdWVzdCxcbiAgVW5tYXJrQ29ubmVjdGFibGVDb25uZWN0b3JzUmVxdWVzdCxcbn0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJztcbmltcG9ydCB7XG4gIEVGQ29ubmVjdGFibGVTaWRlLFxuICBGTm9kZUlucHV0RGlyZWN0aXZlLFxuICBGTm9kZU91dHB1dERpcmVjdGl2ZSxcbn0gZnJvbSAnLi4vLi4vLi4vZi1jb25uZWN0b3JzJztcbmltcG9ydCB7IEZDb25uZWN0aW9uQmFzZSwgRlNuYXBDb25uZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vZi1jb25uZWN0aW9uJztcbmltcG9ydCB7IElMaW5lLCBJUG9pbnQsIElSb3VuZGVkUmVjdCwgUm91bmRlZFJlY3QgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7XG4gIElGUmVhc3NpZ25IYW5kbGVyLFxuICBpc0Nsb3Nlc3RDb25uZWN0b3JJbnNpZGVTbmFwVGhyZXNob2xkLFxuICByb3VuZGVkUmVjdEZyb21Qb2ludCxcbn0gZnJvbSAnLi9pLWYtcmVhc3NpZ24taGFuZGxlcic7XG5cbmV4cG9ydCBjbGFzcyBGUmVhc3NpZ25UYXJnZXREcmFnSGFuZGxlciBpbXBsZW1lbnRzIElGUmVhc3NpZ25IYW5kbGVyIHtcbiAgcHJpdmF0ZSBfY29ubmVjdGFibGVDb25uZWN0b3JzOiBJQ29ubmVjdG9yQW5kUmVjdFtdID0gW107XG5cbiAgcHJpdmF0ZSBnZXQgX3NvdXJjZUNvbm5lY3RvcigpOiBGTm9kZU91dHB1dERpcmVjdGl2ZSB7XG4gICAgcmV0dXJuIHRoaXMuX3NvdXJjZUNvbm5lY3RvckFuZFJlY3QuZkNvbm5lY3RvciBhcyBGTm9kZU91dHB1dERpcmVjdGl2ZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF9zb3VyY2VDb25uZWN0b3JSZWN0KCk6IElSb3VuZGVkUmVjdCB7XG4gICAgcmV0dXJuIHRoaXMuX3NvdXJjZUNvbm5lY3RvckFuZFJlY3QuZlJlY3Q7XG4gIH1cblxuICBwcml2YXRlIGdldCBfdGFyZ2V0Q29ubmVjdG9yKCk6IEZOb2RlSW5wdXREaXJlY3RpdmUge1xuICAgIHJldHVybiB0aGlzLl90YXJnZXRDb25uZWN0b3JBbmRSZWN0LmZDb25uZWN0b3IgYXMgRk5vZGVJbnB1dERpcmVjdGl2ZTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2Nvbm5lY3RvclJlY3QhOiBSb3VuZGVkUmVjdDtcblxuICBwcml2YXRlIF9zbmFwQ29ubmVjdGlvbjogRlNuYXBDb25uZWN0aW9uQ29tcG9uZW50IHwgdW5kZWZpbmVkO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX21lZGlhdG9yOiBGTWVkaWF0b3IsXG4gICAgcHJpdmF0ZSByZWFkb25seSBfY29ubmVjdGlvbjogRkNvbm5lY3Rpb25CYXNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX3NvdXJjZUNvbm5lY3RvckFuZFJlY3Q6IElDb25uZWN0b3JBbmRSZWN0LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX3RhcmdldENvbm5lY3RvckFuZFJlY3Q6IElDb25uZWN0b3JBbmRSZWN0LFxuICApIHtcbiAgICB0aGlzLl9jb25uZWN0b3JSZWN0ID0gcm91bmRlZFJlY3RGcm9tUG9pbnQodGhpcy5fY29ubmVjdGlvbi5saW5lLnBvaW50Mik7XG4gIH1cblxuICBwdWJsaWMgZ2V0Q29ubmVjdGFibGVDb25uZWN0b3JzKCk6IElDb25uZWN0b3JBbmRSZWN0W10ge1xuICAgIHJldHVybiB0aGlzLl9jb25uZWN0YWJsZUNvbm5lY3RvcnM7XG4gIH1cblxuICBwdWJsaWMgbWFya0Nvbm5lY3RhYmxlQ29ubmVjdG9yKCk6IHZvaWQge1xuICAgIHRoaXMuX2Nvbm5lY3RhYmxlQ29ubmVjdG9ycyA9IHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8SUNvbm5lY3RvckFuZFJlY3RbXT4oXG4gICAgICBuZXcgR2V0QWxsQ2FuQmVDb25uZWN0ZWRJbnB1dHNBbmRSZWN0c1JlcXVlc3QodGhpcy5fc291cmNlQ29ubmVjdG9yKSxcbiAgICApO1xuXG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShcbiAgICAgIG5ldyBNYXJrQ29ubmVjdGFibGVDb25uZWN0b3JzUmVxdWVzdCh0aGlzLl9jb25uZWN0YWJsZUNvbm5lY3RvcnMubWFwKCh4KSA9PiB4LmZDb25uZWN0b3IpKSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGluaXRpYWxpemVTbmFwQ29ubmVjdGlvbihzbmFwQ29ubmVjdGlvbjogRlNuYXBDb25uZWN0aW9uQ29tcG9uZW50IHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgdGhpcy5fc25hcENvbm5lY3Rpb24gPSBzbmFwQ29ubmVjdGlvbjtcbiAgICBpZiAoIXNuYXBDb25uZWN0aW9uKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHNuYXBDb25uZWN0aW9uLmZPdXRwdXRJZC5zZXQodGhpcy5fY29ubmVjdGlvbi5mT3V0cHV0SWQoKSk7XG4gICAgc25hcENvbm5lY3Rpb24uaW5pdGlhbGl6ZSgpO1xuICB9XG5cbiAgcHVibGljIG9uUG9pbnRlck1vdmUoZGlmZmVyZW5jZTogSVBvaW50KTogdm9pZCB7XG4gICAgY29uc3QgbmV3UG9pbnQgPSB0aGlzLl9jb25uZWN0b3JSZWN0LmFkZFBvaW50KGRpZmZlcmVuY2UpO1xuXG4gICAgY29uc3QgZkNsb3Nlc3RDb25uZWN0b3IgPSB0aGlzLl9maW5kQ2xvc2VzdENvbm5lY3RvcihuZXdQb2ludCwgdGhpcy5fY29ubmVjdGFibGVDb25uZWN0b3JzKTtcbiAgICB0aGlzLl9kcmF3Q29ubmVjdGlvbihcbiAgICAgIG5ld1BvaW50LFxuICAgICAgZkNsb3Nlc3RDb25uZWN0b3I/LmZDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSB8fCB0aGlzLl90YXJnZXRDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSxcbiAgICApO1xuICAgIGlmICh0aGlzLl9zbmFwQ29ubmVjdGlvbikge1xuICAgICAgdGhpcy5fZHJhd1NuYXBDb25uZWN0aW9uKFxuICAgICAgICBpc0Nsb3Nlc3RDb25uZWN0b3JJbnNpZGVTbmFwVGhyZXNob2xkKGZDbG9zZXN0Q29ubmVjdG9yLCB0aGlzLl9zbmFwQ29ubmVjdGlvbiksXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2ZpbmRDbG9zZXN0Q29ubmVjdG9yKFxuICAgIHBvaW50OiBJUG9pbnQsXG4gICAgY29ubmVjdG9yczogSUNvbm5lY3RvckFuZFJlY3RbXSxcbiAgKTogSUNsb3Nlc3RDb25uZWN0b3IgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9tZWRpYXRvci5leGVjdXRlPElDbG9zZXN0Q29ubmVjdG9yIHwgdW5kZWZpbmVkPihcbiAgICAgIG5ldyBDYWxjdWxhdGVDbG9zZXN0Q29ubmVjdG9yUmVxdWVzdChwb2ludCwgY29ubmVjdG9ycyksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2RyYXdDb25uZWN0aW9uKG5ld1BvaW50OiBJUG9pbnQsIGZTaWRlOiBFRkNvbm5lY3RhYmxlU2lkZSk6IHZvaWQge1xuICAgIGNvbnN0IGxpbmUgPSB0aGlzLl9jYWxjdWxhdGVOZXdMaW5lKG5ld1BvaW50LCBmU2lkZSk7XG4gICAgdGhpcy5fY29ubmVjdGlvbi5zZXRMaW5lKGxpbmUsIHRoaXMuX3NvdXJjZUNvbm5lY3RvckFuZFJlY3QuZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlLCBmU2lkZSk7XG4gICAgdGhpcy5fY29ubmVjdGlvbi5yZWRyYXcoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NhbGN1bGF0ZU5ld0xpbmUodGFyZ2V0UG9pbnQ6IElQb2ludCwgZlNpZGU6IEVGQ29ubmVjdGFibGVTaWRlKTogSUxpbmUge1xuICAgIHJldHVybiB0aGlzLl9tZWRpYXRvci5leGVjdXRlPElMaW5lPihcbiAgICAgIG5ldyBDYWxjdWxhdGVDb25uZWN0aW9uTGluZUJ5QmVoYXZpb3JSZXF1ZXN0KFxuICAgICAgICB0aGlzLl9zb3VyY2VDb25uZWN0b3JSZWN0LFxuICAgICAgICByb3VuZGVkUmVjdEZyb21Qb2ludCh0YXJnZXRQb2ludCksXG4gICAgICAgIHRoaXMuX2Nvbm5lY3Rpb24uZkJlaGF2aW9yLFxuICAgICAgICB0aGlzLl9zb3VyY2VDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSxcbiAgICAgICAgZlNpZGUsXG4gICAgICApLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9kcmF3U25hcENvbm5lY3Rpb24oZkNsb3Nlc3RDb25uZWN0b3I6IElDbG9zZXN0Q29ubmVjdG9yIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgY29uc3Qgc25hcENvbm5lY3Rpb24gPSB0aGlzLl9zbmFwQ29ubmVjdGlvbiE7XG4gICAgaWYgKGZDbG9zZXN0Q29ubmVjdG9yKSB7XG4gICAgICBjb25zdCBsaW5lID0gdGhpcy5fZ2V0TGluZVRvQ2xvc2VzdFRhcmdldENvbm5lY3RvcihmQ2xvc2VzdENvbm5lY3Rvciwgc25hcENvbm5lY3Rpb24pO1xuICAgICAgc25hcENvbm5lY3Rpb24uc2hvdygpO1xuICAgICAgc25hcENvbm5lY3Rpb24uc2V0TGluZShcbiAgICAgICAgbGluZSxcbiAgICAgICAgdGhpcy5fc291cmNlQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsXG4gICAgICAgIGZDbG9zZXN0Q29ubmVjdG9yLmZDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSxcbiAgICAgICk7XG4gICAgICBzbmFwQ29ubmVjdGlvbi5yZWRyYXcoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc25hcENvbm5lY3Rpb24uaGlkZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2dldExpbmVUb0Nsb3Nlc3RUYXJnZXRDb25uZWN0b3IoXG4gICAgZkNsb3Nlc3RJbnB1dDogSUNsb3Nlc3RDb25uZWN0b3IsXG4gICAgc25hcENvbm5lY3Rpb246IEZTbmFwQ29ubmVjdGlvbkNvbXBvbmVudCxcbiAgKTogSUxpbmUge1xuICAgIHJldHVybiB0aGlzLl9tZWRpYXRvci5leGVjdXRlPElMaW5lPihcbiAgICAgIG5ldyBDYWxjdWxhdGVDb25uZWN0aW9uTGluZUJ5QmVoYXZpb3JSZXF1ZXN0KFxuICAgICAgICB0aGlzLl9zb3VyY2VDb25uZWN0b3JSZWN0LFxuICAgICAgICBmQ2xvc2VzdElucHV0LmZSZWN0LFxuICAgICAgICBzbmFwQ29ubmVjdGlvbi5mQmVoYXZpb3IsXG4gICAgICAgIHRoaXMuX3NvdXJjZUNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlLFxuICAgICAgICBmQ2xvc2VzdElucHV0LmZDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSxcbiAgICAgICksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBvblBvaW50ZXJVcCgpOiB2b2lkIHtcbiAgICB0aGlzLl9kcmF3Q29ubmVjdGlvbihcbiAgICAgIHRoaXMuX2Nvbm5lY3RvclJlY3QsXG4gICAgICB0aGlzLl90YXJnZXRDb25uZWN0b3JBbmRSZWN0LmZDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSxcbiAgICApO1xuICAgIHRoaXMuX3NuYXBDb25uZWN0aW9uPy5oaWRlKCk7XG5cbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKFxuICAgICAgbmV3IFVubWFya0Nvbm5lY3RhYmxlQ29ubmVjdG9yc1JlcXVlc3QodGhpcy5fY29ubmVjdGFibGVDb25uZWN0b3JzLm1hcCgoeCkgPT4geC5mQ29ubmVjdG9yKSksXG4gICAgKTtcbiAgfVxufVxuIl19
@@ -6,7 +6,7 @@ import { FDraggableDataContext } from '../../../f-draggable-data-context';
6
6
  import { FExecutionRegister, FMediator } from '@foblex/mediator';
7
7
  import { FReassignConnectionDragHandler } from '../f-reassign-connection.drag-handler';
8
8
  import { FReassignConnectionEvent } from '../f-reassign-connection.event';
9
- import { FindConnectableConnectorUsingPriorityAndPositionRequest, } from '../../../../domain';
9
+ import { FindConnectableConnectorUsingPriorityAndPositionRequest } from '../../../../domain';
10
10
  import { FDragHandlerResult } from '../../../f-drag-handler';
11
11
  import * as i0 from "@angular/core";
12
12
  let FReassignConnectionFinalizeExecution = class FReassignConnectionFinalizeExecution {
@@ -42,10 +42,10 @@ let FReassignConnectionFinalizeExecution = class FReassignConnectionFinalizeExec
42
42
  }
43
43
  _isReassignToDifferentConnector(fConnector) {
44
44
  if (!this._dragResult.getData().isTargetDragHandle) {
45
- return this._dragResult.getData().fConnection.fInputId !== fConnector.fId;
45
+ return this._dragResult.getData().fConnection.fInputId() !== fConnector.fId();
46
46
  }
47
47
  else {
48
- return this._dragResult.getData().fConnection.fOutputId !== fConnector.fId;
48
+ return this._dragResult.getData().fConnection.fOutputId() !== fConnector.fId();
49
49
  }
50
50
  }
51
51
  _emitReassignConnectionEvent(event, fConnector) {
@@ -54,7 +54,7 @@ let FReassignConnectionFinalizeExecution = class FReassignConnectionFinalizeExec
54
54
  _getEventData(event, fConnector) {
55
55
  const fConnection = this._dragResult.getData().fConnection;
56
56
  const isTargetDragHandle = this._dragResult.getData().isTargetDragHandle;
57
- return new FReassignConnectionEvent(fConnection.fId(), !isTargetDragHandle, isTargetDragHandle, fConnection.fOutputId, !isTargetDragHandle ? fConnector?.fId : undefined, fConnection.fInputId, isTargetDragHandle ? fConnector?.fId : undefined, event.getPosition());
57
+ return new FReassignConnectionEvent(fConnection.fId(), !isTargetDragHandle, isTargetDragHandle, fConnection.fOutputId(), !isTargetDragHandle ? fConnector?.fId() : undefined, fConnection.fInputId(), isTargetDragHandle ? fConnector?.fId() : undefined, event.getPosition());
58
58
  }
59
59
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FReassignConnectionFinalizeExecution, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
60
60
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FReassignConnectionFinalizeExecution });
@@ -66,4 +66,4 @@ export { FReassignConnectionFinalizeExecution };
66
66
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FReassignConnectionFinalizeExecution, decorators: [{
67
67
  type: Injectable
68
68
  }] });
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1yZWFzc2lnbi1jb25uZWN0aW9uLWZpbmFsaXplLmV4ZWN1dGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1jb25uZWN0aW9uL2YtcmVhc3NpZ24tY29ubmVjdGlvbi9yZWFzc2lnbi1maW5hbGl6ZS9mLXJlYXNzaWduLWNvbm5lY3Rpb24tZmluYWxpemUuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM5RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDN0UsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFdkYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFMUUsT0FBTyxFQUNMLHVEQUF1RCxHQUN4RCxNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQU10RCxJQUFNLG9DQUFvQyxHQUExQyxNQUFNLG9DQUFvQztJQUU5QixXQUFXLEdBQXVELE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBRTdGLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDOUIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ2xDLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFD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QztJQUNKLENBQUM7d0dBN0VVLG9DQUFvQzs0R0FBcEMsb0NBQW9DOztBQUFwQyxvQ0FBb0M7SUFEaEQsa0JBQWtCLENBQUMsa0NBQWtDLENBQUM7R0FDMUMsb0NBQW9DLENBOEVoRDs7NEZBOUVZLG9DQUFvQztrQkFGaEQsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRlJlYXNzaWduQ29ubmVjdGlvbkZpbmFsaXplUmVxdWVzdCB9IGZyb20gJy4vZi1yZWFzc2lnbi1jb25uZWN0aW9uLWZpbmFsaXplLnJlcXVlc3QnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGRHJhZ2dhYmxlRGF0YUNvbnRleHQgfSBmcm9tICcuLi8uLi8uLi9mLWRyYWdnYWJsZS1kYXRhLWNvbnRleHQnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBGTWVkaWF0b3IsIElFeGVjdXRpb24gfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IEZSZWFzc2lnbkNvbm5lY3Rpb25EcmFnSGFuZGxlciB9IGZyb20gJy4uL2YtcmVhc3NpZ24tY29ubmVjdGlvbi5kcmFnLWhhbmRsZXInO1xuaW1wb3J0IHsgRkRyYWdnYWJsZUJhc2UgfSBmcm9tICcuLi8uLi8uLi9mLWRyYWdnYWJsZS1iYXNlJztcbmltcG9ydCB7IEZSZWFzc2lnbkNvbm5lY3Rpb25FdmVudCB9IGZyb20gJy4uL2YtcmVhc3NpZ24tY29ubmVjdGlvbi5ldmVudCc7XG5pbXBvcnQgeyBGQ29ubmVjdG9yQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uL2YtY29ubmVjdG9ycyc7XG5pbXBvcnQge1xuICBGaW5kQ29ubmVjdGFibGVDb25uZWN0b3JVc2luZ1ByaW9yaXR5QW5kUG9zaXRpb25SZXF1ZXN0LFxufSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgRkRyYWdIYW5kbGVyUmVzdWx0IH0gZnJvbSAnLi4vLi4vLi4vZi1kcmFnLWhhbmRsZXInO1xuaW1wb3J0IHsgSUZSZWFzc2lnbkNvbm5lY3Rpb25EcmFnUmVzdWx0IH0gZnJvbSAnLi4vaS1mLXJlYXNzaWduLWNvbm5lY3Rpb24tZHJhZy1yZXN1bHQnO1xuaW1wb3J0IHsgSVBvaW50ZXJFdmVudCB9IGZyb20gXCIuLi8uLi8uLi8uLi9kcmFnLXRvb2xraXRcIjtcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihGUmVhc3NpZ25Db25uZWN0aW9uRmluYWxpemVSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIEZSZWFzc2lnbkNvbm5lY3Rpb25GaW5hbGl6ZUV4ZWN1dGlvbiBpbXBsZW1lbnRzIElFeGVjdXRpb248RlJlYXNzaWduQ29ubmVjdGlvbkZpbmFsaXplUmVxdWVzdCwgdm9pZD4ge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2RyYWdSZXN1bHQ6IEZEcmFnSGFuZGxlclJlc3VsdDxJRlJlYXNzaWduQ29ubmVjdGlvbkRyYWdSZXN1bHQ+ID0gaW5qZWN0KEZEcmFnSGFuZGxlclJlc3VsdCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbWVkaWF0b3IgPSBpbmplY3QoRk1lZGlhdG9yKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfc3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2RyYWdnYWJsZUNvbnRleHQgPSBpbmplY3QoRkRyYWdnYWJsZURhdGFDb250ZXh0KTtcblxuICBwcml2YXRlIGdldCBfZkRyYWdnYWJsZSgpOiBGRHJhZ2dhYmxlQmFzZSB7XG4gICAgcmV0dXJuIHRoaXMuX3N0b3JlLmZEcmFnZ2FibGUhO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgX2ZEcmFnSGFuZGxlcigpOiBGUmVhc3NpZ25Db25uZWN0aW9uRHJhZ0hhbmRsZXIge1xuICAgIHJldHVybiB0aGlzLl9kcmFnZ2FibGVDb250ZXh0LmRyYWdnYWJsZUl0ZW1zWyAwIF0gYXMgRlJlYXNzaWduQ29ubmVjdGlvbkRyYWdIYW5kbGVyO1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBGUmVhc3NpZ25Db25uZWN0aW9uRmluYWxpemVSZXF1ZXN0KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9pc0Ryb3BwZWRDb25uZWN0aW9uUmVhc3NpZ25FdmVudCgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgdGhpcy5fYXBwbHlSZWFzc2lnbkV2ZW50KHJlcXVlc3QuZXZlbnQpO1xuICAgdGhpcy5fZkRyYWdIYW5kbGVyLm9uUG9pbnRlclVwKCk7XG4gIH1cblxuICBwcml2YXRlIF9pc0Ryb3BwZWRDb25uZWN0aW9uUmVhc3NpZ25FdmVudCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZHJhZ2dhYmxlQ29udGV4dC5kcmFnZ2FibGVJdGVtcy5zb21lKFxuICAgICAgKHgpID0+IHggaW5zdGFuY2VvZiBGUmVhc3NpZ25Db25uZWN0aW9uRHJhZ0hhbmRsZXIsXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2FwcGx5UmVhc3NpZ25FdmVudChldmVudDogSVBvaW50ZXJFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IGZDb25uZWN0b3IgPSB0aGlzLl9maW5kQ29ubmVjdGFibGVDb25uZWN0b3JVc2luZ1ByaW9yaXR5QW5kUG9zaXRpb24oZXZlbnQpO1xuICAgIGlmIChcbiAgICAgICEhZkNvbm5lY3RvciAmJiAhdGhpcy5faXNSZWFzc2lnblRvRGlmZmVyZW50Q29ubmVjdG9yKGZDb25uZWN0b3IpXG4gICAgKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fZW1pdFJlYXNzaWduQ29ubmVjdGlvbkV2ZW50KGV2ZW50LCBmQ29ubmVjdG9yKTtcbiAgfVxuXG4gIHByaXZhdGUgX2ZpbmRDb25uZWN0YWJsZUNvbm5lY3RvclVzaW5nUHJpb3JpdHlBbmRQb3NpdGlvbihldmVudDogSVBvaW50ZXJFdmVudCk6IEZDb25uZWN0b3JCYXNlIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTxGQ29ubmVjdG9yQmFzZSB8IHVuZGVmaW5lZD4oXG4gICAgICBuZXcgRmluZENvbm5lY3RhYmxlQ29ubmVjdG9yVXNpbmdQcmlvcml0eUFuZFBvc2l0aW9uUmVxdWVzdChcbiAgICAgICAgZXZlbnQuZ2V0UG9zaXRpb24oKSxcbiAgICAgICAgdGhpcy5fZHJhZ1Jlc3VsdC5nZXREYXRhKCkuY29ubmVjdGFibGVDb25uZWN0b3JzLFxuICAgICAgKSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNSZWFzc2lnblRvRGlmZmVyZW50Q29ubmVjdG9yKGZDb25uZWN0b3I6IEZDb25uZWN0b3JCYXNlKTogYm9vbGVhbiB7XG4gICAgaWYoIXRoaXMuX2RyYWdSZXN1bHQuZ2V0RGF0YSgpLmlzVGFyZ2V0RHJhZ0hhbmRsZSkge1xuICAgICAgcmV0dXJuIHRoaXMuX2RyYWdSZXN1bHQuZ2V0RGF0YSgpLmZDb25uZWN0aW9uLmZJbnB1dElkICE9PSBmQ29ubmVjdG9yLmZJZDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMuX2RyYWdSZXN1bHQuZ2V0RGF0YSgpLmZDb25uZWN0aW9uLmZPdXRwdXRJZCAhPT0gZkNvbm5lY3Rvci5mSWQ7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZW1pdFJlYXNzaWduQ29ubmVjdGlvbkV2ZW50KGV2ZW50OiBJUG9pbnRlckV2ZW50LCBmQ29ubmVjdG9yPzogRkNvbm5lY3RvckJhc2UpOiB2b2lkIHtcbiAgICB0aGlzLl9mRHJhZ2dhYmxlLmZSZWFzc2lnbkNvbm5lY3Rpb24uZW1pdCh0aGlzLl9nZXRFdmVudERhdGEoZXZlbnQsIGZDb25uZWN0b3IpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldEV2ZW50RGF0YShldmVudDogSVBvaW50ZXJFdmVudCwgZkNvbm5lY3Rvcj86IEZDb25uZWN0b3JCYXNlKTogRlJlYXNzaWduQ29ubmVjdGlvbkV2ZW50IHtcbiAgICBjb25zdCBmQ29ubmVjdGlvbiA9IHRoaXMuX2RyYWdSZXN1bHQuZ2V0RGF0YSgpLmZDb25uZWN0aW9uO1xuXG4gICAgY29uc3QgaXNUYXJnZXREcmFnSGFuZGxlID0gdGhpcy5fZHJhZ1Jlc3VsdC5nZXREYXRhKCkuaXNUYXJnZXREcmFnSGFuZGxlO1xuXG4gICAgcmV0dXJuIG5ldyBGUmVhc3NpZ25Db25uZWN0aW9uRXZlbnQoXG4gICAgICBmQ29ubmVjdGlvbi5mSWQoKSxcbiAgICAgICFpc1RhcmdldERyYWdIYW5kbGUsXG4gICAgICBpc1RhcmdldERyYWdIYW5kbGUsXG4gICAgICBmQ29ubmVjdGlvbi5mT3V0cHV0SWQsXG4gICAgICAhaXNUYXJnZXREcmFnSGFuZGxlID8gZkNvbm5lY3Rvcj8uZklkIDogdW5kZWZpbmVkLFxuICAgICAgZkNvbm5lY3Rpb24uZklucHV0SWQsXG4gICAgICBpc1RhcmdldERyYWdIYW5kbGUgPyBmQ29ubmVjdG9yPy5mSWQgOiB1bmRlZmluZWQsXG4gICAgICBldmVudC5nZXRQb3NpdGlvbigpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1yZWFzc2lnbi1jb25uZWN0aW9uLWZpbmFsaXplLmV4ZWN1dGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1jb25uZWN0aW9uL2YtcmVhc3NpZ24tY29ubmVjdGlvbi9yZWFzc2lnbi1maW5hbGl6ZS9mLXJlYXNzaWduLWNvbm5lY3Rpb24tZmluYWxpemUuZXhlY3V0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM5RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDN0UsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFdkYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFMUUsT0FBTyxFQUFFLHVEQUF1RCxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDN0YsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7O0FBTXRELElBQU0sb0NBQW9DLEdBQTFDLE1BQU0sb0NBQW9DO0lBRzlCLFdBQVcsR0FDMUIsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFFWixTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlCLE1BQU0sR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNsQyxpQkFBaUIsR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztJ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LFNBQVMsRUFDbEQsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUNwQixDQUFDO0lBQ0osQ0FBQzt3R0FsRlUsb0NBQW9DOzRHQUFwQyxvQ0FBb0M7O0FBQXBDLG9DQUFvQztJQURoRCxrQkFBa0IsQ0FBQyxrQ0FBa0MsQ0FBQztHQUMxQyxvQ0FBb0MsQ0FtRmhEOzs0RkFuRlksb0NBQW9DO2tCQUZoRCxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGUmVhc3NpZ25Db25uZWN0aW9uRmluYWxpemVSZXF1ZXN0IH0gZnJvbSAnLi9mLXJlYXNzaWduLWNvbm5lY3Rpb24tZmluYWxpemUucmVxdWVzdCc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZEcmFnZ2FibGVEYXRhQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uL2YtZHJhZ2dhYmxlLWRhdGEtY29udGV4dCc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgRlJlYXNzaWduQ29ubmVjdGlvbkRyYWdIYW5kbGVyIH0gZnJvbSAnLi4vZi1yZWFzc2lnbi1jb25uZWN0aW9uLmRyYWctaGFuZGxlcic7XG5pbXBvcnQgeyBGRHJhZ2dhYmxlQmFzZSB9IGZyb20gJy4uLy4uLy4uL2YtZHJhZ2dhYmxlLWJhc2UnO1xuaW1wb3J0IHsgRlJlYXNzaWduQ29ubmVjdGlvbkV2ZW50IH0gZnJvbSAnLi4vZi1yZWFzc2lnbi1jb25uZWN0aW9uLmV2ZW50JztcbmltcG9ydCB7IEZDb25uZWN0b3JCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZi1jb25uZWN0b3JzJztcbmltcG9ydCB7IEZpbmRDb25uZWN0YWJsZUNvbm5lY3RvclVzaW5nUHJpb3JpdHlBbmRQb3NpdGlvblJlcXVlc3QgfSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgRkRyYWdIYW5kbGVyUmVzdWx0IH0gZnJvbSAnLi4vLi4vLi4vZi1kcmFnLWhhbmRsZXInO1xuaW1wb3J0IHsgSUZSZWFzc2lnbkNvbm5lY3Rpb25EcmFnUmVzdWx0IH0gZnJvbSAnLi4vaS1mLXJlYXNzaWduLWNvbm5lY3Rpb24tZHJhZy1yZXN1bHQnO1xuaW1wb3J0IHsgSVBvaW50ZXJFdmVudCB9IGZyb20gJy4uLy4uLy4uLy4uL2RyYWctdG9vbGtpdCc7XG5cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoRlJlYXNzaWduQ29ubmVjdGlvbkZpbmFsaXplUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBGUmVhc3NpZ25Db25uZWN0aW9uRmluYWxpemVFeGVjdXRpb25cbiAgaW1wbGVtZW50cyBJRXhlY3V0aW9uPEZSZWFzc2lnbkNvbm5lY3Rpb25GaW5hbGl6ZVJlcXVlc3QsIHZvaWQ+XG57XG4gIHByaXZhdGUgcmVhZG9ubHkgX2RyYWdSZXN1bHQ6IEZEcmFnSGFuZGxlclJlc3VsdDxJRlJlYXNzaWduQ29ubmVjdGlvbkRyYWdSZXN1bHQ+ID1cbiAgICBpbmplY3QoRkRyYWdIYW5kbGVyUmVzdWx0KTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9zdG9yZSA9IGluamVjdChGQ29tcG9uZW50c1N0b3JlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZHJhZ2dhYmxlQ29udGV4dCA9IGluamVjdChGRHJhZ2dhYmxlRGF0YUNvbnRleHQpO1xuXG4gIHByaXZhdGUgZ2V0IF9mRHJhZ2dhYmxlKCk6IEZEcmFnZ2FibGVCYXNlIHtcbiAgICByZXR1cm4gdGhpcy5fc3RvcmUuZkRyYWdnYWJsZSE7XG4gIH1cblxuICBwcml2YXRlIGdldCBfZkRyYWdIYW5kbGVyKCk6IEZSZWFzc2lnbkNvbm5lY3Rpb25EcmFnSGFuZGxlciB7XG4gICAgcmV0dXJuIHRoaXMuX2RyYWdnYWJsZUNvbnRleHQuZHJhZ2dhYmxlSXRlbXNbMF0gYXMgRlJlYXNzaWduQ29ubmVjdGlvbkRyYWdIYW5kbGVyO1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBGUmVhc3NpZ25Db25uZWN0aW9uRmluYWxpemVSZXF1ZXN0KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9pc0Ryb3BwZWRDb25uZWN0aW9uUmVhc3NpZ25FdmVudCgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX2FwcGx5UmVhc3NpZ25FdmVudChyZXF1ZXN0LmV2ZW50KTtcbiAgICB0aGlzLl9mRHJhZ0hhbmRsZXIub25Qb2ludGVyVXAoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzRHJvcHBlZENvbm5lY3Rpb25SZWFzc2lnbkV2ZW50KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9kcmFnZ2FibGVDb250ZXh0LmRyYWdnYWJsZUl0ZW1zLnNvbWUoXG4gICAgICAoeCkgPT4geCBpbnN0YW5jZW9mIEZSZWFzc2lnbkNvbm5lY3Rpb25EcmFnSGFuZGxlcixcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfYXBwbHlSZWFzc2lnbkV2ZW50KGV2ZW50OiBJUG9pbnRlckV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgZkNvbm5lY3RvciA9IHRoaXMuX2ZpbmRDb25uZWN0YWJsZUNvbm5lY3RvclVzaW5nUHJpb3JpdHlBbmRQb3NpdGlvbihldmVudCk7XG4gICAgaWYgKCEhZkNvbm5lY3RvciAmJiAhdGhpcy5faXNSZWFzc2lnblRvRGlmZmVyZW50Q29ubmVjdG9yKGZDb25uZWN0b3IpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fZW1pdFJlYXNzaWduQ29ubmVjdGlvbkV2ZW50KGV2ZW50LCBmQ29ubmVjdG9yKTtcbiAgfVxuXG4gIHByaXZhdGUgX2ZpbmRDb25uZWN0YWJsZUNvbm5lY3RvclVzaW5nUHJpb3JpdHlBbmRQb3NpdGlvbihcbiAgICBldmVudDogSVBvaW50ZXJFdmVudCxcbiAgKTogRkNvbm5lY3RvckJhc2UgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9tZWRpYXRvci5leGVjdXRlPEZDb25uZWN0b3JCYXNlIHwgdW5kZWZpbmVkPihcbiAgICAgIG5ldyBGaW5kQ29ubmVjdGFibGVDb25uZWN0b3JVc2luZ1ByaW9yaXR5QW5kUG9zaXRpb25SZXF1ZXN0KFxuICAgICAgICBldmVudC5nZXRQb3NpdGlvbigpLFxuICAgICAgICB0aGlzLl9kcmFnUmVzdWx0LmdldERhdGEoKS5jb25uZWN0YWJsZUNvbm5lY3RvcnMsXG4gICAgICApLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9pc1JlYXNzaWduVG9EaWZmZXJlbnRDb25uZWN0b3IoZkNvbm5lY3RvcjogRkNvbm5lY3RvckJhc2UpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMuX2RyYWdSZXN1bHQuZ2V0RGF0YSgpLmlzVGFyZ2V0RHJhZ0hhbmRsZSkge1xuICAgICAgcmV0dXJuIHRoaXMuX2RyYWdSZXN1bHQuZ2V0RGF0YSgpLmZDb25uZWN0aW9uLmZJbnB1dElkKCkgIT09IGZDb25uZWN0b3IuZklkKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLl9kcmFnUmVzdWx0LmdldERhdGEoKS5mQ29ubmVjdGlvbi5mT3V0cHV0SWQoKSAhPT0gZkNvbm5lY3Rvci5mSWQoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9lbWl0UmVhc3NpZ25Db25uZWN0aW9uRXZlbnQoZXZlbnQ6IElQb2ludGVyRXZlbnQsIGZDb25uZWN0b3I/OiBGQ29ubmVjdG9yQmFzZSk6IHZvaWQge1xuICAgIHRoaXMuX2ZEcmFnZ2FibGUuZlJlYXNzaWduQ29ubmVjdGlvbi5lbWl0KHRoaXMuX2dldEV2ZW50RGF0YShldmVudCwgZkNvbm5lY3RvcikpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0RXZlbnREYXRhKFxuICAgIGV2ZW50OiBJUG9pbnRlckV2ZW50LFxuICAgIGZDb25uZWN0b3I/OiBGQ29ubmVjdG9yQmFzZSxcbiAgKTogRlJlYXNzaWduQ29ubmVjdGlvbkV2ZW50IHtcbiAgICBjb25zdCBmQ29ubmVjdGlvbiA9IHRoaXMuX2RyYWdSZXN1bHQuZ2V0RGF0YSgpLmZDb25uZWN0aW9uO1xuXG4gICAgY29uc3QgaXNUYXJnZXREcmFnSGFuZGxlID0gdGhpcy5fZHJhZ1Jlc3VsdC5nZXREYXRhKCkuaXNUYXJnZXREcmFnSGFuZGxlO1xuXG4gICAgcmV0dXJuIG5ldyBGUmVhc3NpZ25Db25uZWN0aW9uRXZlbnQoXG4gICAgICBmQ29ubmVjdGlvbi5mSWQoKSxcbiAgICAgICFpc1RhcmdldERyYWdIYW5kbGUsXG4gICAgICBpc1RhcmdldERyYWdIYW5kbGUsXG4gICAgICBmQ29ubmVjdGlvbi5mT3V0cHV0SWQoKSxcbiAgICAgICFpc1RhcmdldERyYWdIYW5kbGUgPyBmQ29ubmVjdG9yPy5mSWQoKSA6IHVuZGVmaW5lZCxcbiAgICAgIGZDb25uZWN0aW9uLmZJbnB1dElkKCksXG4gICAgICBpc1RhcmdldERyYWdIYW5kbGUgPyBmQ29ubmVjdG9yPy5mSWQoKSA6IHVuZGVmaW5lZCxcbiAgICAgIGV2ZW50LmdldFBvc2l0aW9uKCksXG4gICAgKTtcbiAgfVxufVxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1mLWRyYWctaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1kcmFnLWhhbmRsZXIvaS1mLWRyYWctaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnQGZvYmxleC8yZCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUZEcmFnSGFuZGxlcjxURGF0YSA9IGFueT4ge1xuICBmRXZlbnRUeXBlOiBzdHJpbmc7XG5cbiAgZkRhdGE/OiBURGF0YTtcblxuICBwcmVwYXJlRHJhZ1NlcXVlbmNlPygpOiB2b2lkO1xuXG4gIG9uUG9pbnRlck1vdmUoZGlmZmVyZW5jZTogSVBvaW50KTogdm9pZDtcblxuICBvblBvaW50ZXJVcD8oKTogdm9pZDtcbn1cbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1mLWRyYWctaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1kcmFnLWhhbmRsZXIvaS1mLWRyYWctaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnQGZvYmxleC8yZCc7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG5leHBvcnQgaW50ZXJmYWNlIElGRHJhZ0hhbmRsZXI8VERhdGEgPSBhbnk+IHtcbiAgZkV2ZW50VHlwZTogc3RyaW5nO1xuXG4gIGZEYXRhPzogVERhdGE7XG5cbiAgcHJlcGFyZURyYWdTZXF1ZW5jZT8oKTogdm9pZDtcblxuICBvblBvaW50ZXJNb3ZlKGRpZmZlcmVuY2U6IElQb2ludCk6IHZvaWQ7XG5cbiAgb25Qb2ludGVyVXA/KCk6IHZvaWQ7XG59XG4iXX0=
@@ -1,7 +1,7 @@
1
1
  import { DragAndDropBase } from '../drag-toolkit';
2
2
  export class FDraggableBase extends DragAndDropBase {
3
3
  constructor(ngZone) {
4
- super(ngZone);
4
+ super(ngZone || undefined);
5
5
  }
6
6
  }
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1kcmFnZ2FibGUtYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1kcmFnZ2FibGUtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQUUsZUFBZSxFQUF5QixNQUFNLGlCQUFpQixDQUFDO0FBR3pFLE1BQU0sT0FBZ0IsY0FBZSxTQUFRLGVBQWU7SUEyQjFELFlBQXNCLE1BQXlDO1FBQzdELEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNoQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFdmVudEVtaXR0ZXIsIElucHV0U2lnbmFsLCBJbnB1dFNpZ25hbFdpdGhUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZDcmVhdGVDb25uZWN0aW9uRXZlbnQsIEZSZWFzc2lnbkNvbm5lY3Rpb25FdmVudCB9IGZyb20gJy4vZi1jb25uZWN0aW9uJztcbmltcG9ydCB7IEZTZWxlY3Rpb25DaGFuZ2VFdmVudCB9IGZyb20gJy4vZi1zZWxlY3Rpb24tY2hhbmdlLWV2ZW50JztcbmltcG9ydCB7IEZDcmVhdGVOb2RlRXZlbnQgfSBmcm9tICcuLi9mLWV4dGVybmFsLWl0ZW0nO1xuaW1wb3J0IHsgRkRyYWdTdGFydGVkRXZlbnQsIEZOb2RlSW50ZXJzZWN0ZWRXaXRoQ29ubmVjdGlvbnMgfSBmcm9tICcuL2RvbWFpbic7XG5pbXBvcnQgeyBGRHJvcFRvR3JvdXBFdmVudCB9IGZyb20gJy4vZi1kcm9wLXRvLWdyb3VwJztcbmltcG9ydCB7IERyYWdBbmREcm9wQmFzZSwgSUNhblJ1bk91dHNpZGVBbmd1bGFyIH0gZnJvbSAnLi4vZHJhZy10b29sa2l0JztcbmltcG9ydCB7IEZNb3ZlTm9kZXNFdmVudCB9IGZyb20gJy4vZi1ub2RlLW1vdmUnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRkRyYWdnYWJsZUJhc2UgZXh0ZW5kcyBEcmFnQW5kRHJvcEJhc2Uge1xuICBwdWJsaWMgYWJzdHJhY3QgZlNlbGVjdGlvbkNoYW5nZTogRXZlbnRFbWl0dGVyPEZTZWxlY3Rpb25DaGFuZ2VFdmVudD47XG5cbiAgcHVibGljIGFic3RyYWN0IGZOb2RlSW50ZXJzZWN0ZWRXaXRoQ29ubmVjdGlvbnM6IEV2ZW50RW1pdHRlcjxGTm9kZUludGVyc2VjdGVkV2l0aENvbm5lY3Rpb25zPjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZkVtaXRPbk5vZGVJbnRlcnNlY3Q6IGJvb2xlYW47XG5cbiAgcHVibGljIGFic3RyYWN0IGZDcmVhdGVOb2RlOiBFdmVudEVtaXR0ZXI8RkNyZWF0ZU5vZGVFdmVudD47XG5cbiAgcHVibGljIGFic3RyYWN0IGZNb3ZlTm9kZXM6IEV2ZW50RW1pdHRlcjxGTW92ZU5vZGVzRXZlbnQ+O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmUmVhc3NpZ25Db25uZWN0aW9uOiBFdmVudEVtaXR0ZXI8RlJlYXNzaWduQ29ubmVjdGlvbkV2ZW50PjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZkNyZWF0ZUNvbm5lY3Rpb246IEV2ZW50RW1pdHRlcjxGQ3JlYXRlQ29ubmVjdGlvbkV2ZW50PjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZkRyb3BUb0dyb3VwOiBFdmVudEVtaXR0ZXI8RkRyb3BUb0dyb3VwRXZlbnQ+O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCB2Q2VsbFNpemU6IElucHV0U2lnbmFsV2l0aFRyYW5zZm9ybTxudW1iZXIsIHVua25vd24+O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBoQ2VsbFNpemU6IElucHV0U2lnbmFsV2l0aFRyYW5zZm9ybTxudW1iZXIsIHVua25vd24+O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmQ2VsbFNpemVXaGlsZURyYWdnaW5nOiBJbnB1dFNpZ25hbFdpdGhUcmFuc2Zvcm08Ym9vbGVhbiwgdW5rbm93bj47XG5cbiAgcHVibGljIGFic3RyYWN0IGZEcmFnU3RhcnRlZDogRXZlbnRFbWl0dGVyPEZEcmFnU3RhcnRlZEV2ZW50PjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZkRyYWdFbmRlZDogRXZlbnRFbWl0dGVyPHZvaWQ+O1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihuZ1pvbmU6IElDYW5SdW5PdXRzaWRlQW5ndWxhciB8IHVuZGVmaW5lZCkge1xuICAgIHN1cGVyKG5nWm9uZSk7XG4gIH1cbn1cbiJdfQ==
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1kcmFnZ2FibGUtYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1kcmFnZ2FibGUtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQUUsZUFBZSxFQUF5QixNQUFNLGlCQUFpQixDQUFDO0FBR3pFLE1BQU0sT0FBZ0IsY0FBZSxTQUFRLGVBQWU7SUEyQjFELFlBQXNCLE1BQW9DO1FBQ3hELEtBQUssQ0FBQyxNQUFNLElBQUksU0FBUyxDQUFDLENBQUM7SUFDN0IsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnRFbWl0dGVyLCBJbnB1dFNpZ25hbFdpdGhUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZDcmVhdGVDb25uZWN0aW9uRXZlbnQsIEZSZWFzc2lnbkNvbm5lY3Rpb25FdmVudCB9IGZyb20gJy4vZi1jb25uZWN0aW9uJztcbmltcG9ydCB7IEZTZWxlY3Rpb25DaGFuZ2VFdmVudCB9IGZyb20gJy4vZi1zZWxlY3Rpb24tY2hhbmdlLWV2ZW50JztcbmltcG9ydCB7IEZDcmVhdGVOb2RlRXZlbnQgfSBmcm9tICcuLi9mLWV4dGVybmFsLWl0ZW0nO1xuaW1wb3J0IHsgRkRyYWdTdGFydGVkRXZlbnQsIEZOb2RlSW50ZXJzZWN0ZWRXaXRoQ29ubmVjdGlvbnMgfSBmcm9tICcuL2RvbWFpbic7XG5pbXBvcnQgeyBGRHJvcFRvR3JvdXBFdmVudCB9IGZyb20gJy4vZi1kcm9wLXRvLWdyb3VwJztcbmltcG9ydCB7IERyYWdBbmREcm9wQmFzZSwgSUNhblJ1bk91dHNpZGVBbmd1bGFyIH0gZnJvbSAnLi4vZHJhZy10b29sa2l0JztcbmltcG9ydCB7IEZNb3ZlTm9kZXNFdmVudCB9IGZyb20gJy4vZi1ub2RlLW1vdmUnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRkRyYWdnYWJsZUJhc2UgZXh0ZW5kcyBEcmFnQW5kRHJvcEJhc2Uge1xuICBwdWJsaWMgYWJzdHJhY3QgZlNlbGVjdGlvbkNoYW5nZTogRXZlbnRFbWl0dGVyPEZTZWxlY3Rpb25DaGFuZ2VFdmVudD47XG5cbiAgcHVibGljIGFic3RyYWN0IGZOb2RlSW50ZXJzZWN0ZWRXaXRoQ29ubmVjdGlvbnM6IEV2ZW50RW1pdHRlcjxGTm9kZUludGVyc2VjdGVkV2l0aENvbm5lY3Rpb25zPjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZkVtaXRPbk5vZGVJbnRlcnNlY3Q6IGJvb2xlYW47XG5cbiAgcHVibGljIGFic3RyYWN0IGZDcmVhdGVOb2RlOiBFdmVudEVtaXR0ZXI8RkNyZWF0ZU5vZGVFdmVudD47XG5cbiAgcHVibGljIGFic3RyYWN0IGZNb3ZlTm9kZXM6IEV2ZW50RW1pdHRlcjxGTW92ZU5vZGVzRXZlbnQ+O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmUmVhc3NpZ25Db25uZWN0aW9uOiBFdmVudEVtaXR0ZXI8RlJlYXNzaWduQ29ubmVjdGlvbkV2ZW50PjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZkNyZWF0ZUNvbm5lY3Rpb246IEV2ZW50RW1pdHRlcjxGQ3JlYXRlQ29ubmVjdGlvbkV2ZW50PjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZkRyb3BUb0dyb3VwOiBFdmVudEVtaXR0ZXI8RkRyb3BUb0dyb3VwRXZlbnQ+O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCB2Q2VsbFNpemU6IElucHV0U2lnbmFsV2l0aFRyYW5zZm9ybTxudW1iZXIsIHVua25vd24+O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBoQ2VsbFNpemU6IElucHV0U2lnbmFsV2l0aFRyYW5zZm9ybTxudW1iZXIsIHVua25vd24+O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmQ2VsbFNpemVXaGlsZURyYWdnaW5nOiBJbnB1dFNpZ25hbFdpdGhUcmFuc2Zvcm08Ym9vbGVhbiwgdW5rbm93bj47XG5cbiAgcHVibGljIGFic3RyYWN0IGZEcmFnU3RhcnRlZDogRXZlbnRFbWl0dGVyPEZEcmFnU3RhcnRlZEV2ZW50PjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZkRyYWdFbmRlZDogRXZlbnRFbWl0dGVyPHZvaWQ+O1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihuZ1pvbmU6IElDYW5SdW5PdXRzaWRlQW5ndWxhciB8IG51bGwpIHtcbiAgICBzdXBlcihuZ1pvbmUgfHwgdW5kZWZpbmVkKTtcbiAgfVxufVxuIl19
@@ -1,4 +1,4 @@
1
- import { booleanAttribute, ContentChildren, Directive, ElementRef, EventEmitter, inject, Inject, input, Input, NgZone, numberAttribute, Optional, Output, } from '@angular/core';
1
+ import { booleanAttribute, ContentChildren, Directive, ElementRef, EventEmitter, inject, input, Input, NgZone, numberAttribute, Output, } from '@angular/core';
2
2
  import { FDraggableBase } from './f-draggable-base';
3
3
  import { FNodeMoveFinalizeRequest, FNodeMovePreparationRequest, } from './f-node-move';
4
4
  import { FCanvasMoveFinalizeRequest, FCanvasMovePreparationRequest } from './f-canvas';
@@ -67,15 +67,12 @@ import * as i0 from "@angular/core";
67
67
  // │ To Start │
68
68
  // └──────────────────────────────────────┘
69
69
  export class FDraggableDirective extends FDraggableBase {
70
- _elementReference = inject(ElementRef);
71
- _fResult = inject(FDragHandlerResult);
70
+ hostElement = inject(ElementRef).nativeElement;
71
+ _result = inject(FDragHandlerResult);
72
72
  _mediator = inject(FMediator);
73
73
  _platform = inject(PlatformService);
74
74
  _browser = inject(BrowserService);
75
75
  disabled = false;
76
- get hostElement() {
77
- return this._elementReference.nativeElement;
78
- }
79
76
  fMultiSelectTrigger = (event) => {
80
77
  return this._platform.getOS() === EOperationSystem.MAC_OS ? event.metaKey : event.ctrlKey;
81
78
  };
@@ -122,10 +119,8 @@ export class FDraggableDirective extends FDraggableBase {
122
119
  fDragEnded = new EventEmitter();
123
120
  _beforePlugins;
124
121
  _afterPlugins;
125
- constructor(
126
- // eslint-disable-next-line @angular-eslint/prefer-inject
127
- ngZone) {
128
- super(ngZone);
122
+ constructor() {
123
+ super(inject(NgZone, { optional: true }));
129
124
  }
130
125
  ngOnInit() {
131
126
  this._mediator.execute(new AddDndToStoreRequest(this));
@@ -137,7 +132,7 @@ export class FDraggableDirective extends FDraggableBase {
137
132
  if (isDragBlocker(event.targetElement)) {
138
133
  return false;
139
134
  }
140
- this._fResult.clear();
135
+ this._result.clear();
141
136
  this._mediator.execute(new InitializeDragSequenceRequest());
142
137
  this._beforePlugins.forEach((p) => p.onPointerDown?.(event));
143
138
  this._mediator.execute(new FSingleSelectRequest(event, this.fMultiSelectTrigger));
@@ -182,13 +177,13 @@ export class FDraggableDirective extends FDraggableBase {
182
177
  }
183
178
  finalizeDragSequence() {
184
179
  this._mediator.execute(new EmitSelectionChangeEventRequest());
185
- this._fResult.clear();
180
+ this._result.clear();
186
181
  }
187
182
  ngOnDestroy() {
188
183
  this._mediator.execute(new RemoveDndFromStoreRequest());
189
184
  super.unsubscribe();
190
185
  }
191
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FDraggableDirective, deps: [{ token: NgZone, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
186
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FDraggableDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
192
187
  static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: FDraggableDirective, selector: "f-flow[fDraggable]", inputs: { disabled: { classPropertyName: "disabled", publicName: "fDraggableDisabled", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, fMultiSelectTrigger: { classPropertyName: "fMultiSelectTrigger", publicName: "fMultiSelectTrigger", isSignal: false, isRequired: false, transformFunction: null }, fReassignConnectionTrigger: { classPropertyName: "fReassignConnectionTrigger", publicName: "fReassignConnectionTrigger", isSignal: false, isRequired: false, transformFunction: null }, fCreateConnectionTrigger: { classPropertyName: "fCreateConnectionTrigger", publicName: "fCreateConnectionTrigger", isSignal: false, isRequired: false, transformFunction: null }, fNodeResizeTrigger: { classPropertyName: "fNodeResizeTrigger", publicName: "fNodeResizeTrigger", isSignal: false, isRequired: false, transformFunction: null }, fNodeRotateTrigger: { classPropertyName: "fNodeRotateTrigger", publicName: "fNodeRotateTrigger", isSignal: false, isRequired: false, transformFunction: null }, fNodeMoveTrigger: { classPropertyName: "fNodeMoveTrigger", publicName: "fNodeMoveTrigger", isSignal: false, isRequired: false, transformFunction: null }, fCanvasMoveTrigger: { classPropertyName: "fCanvasMoveTrigger", publicName: "fCanvasMoveTrigger", isSignal: false, isRequired: false, transformFunction: null }, fExternalItemTrigger: { classPropertyName: "fExternalItemTrigger", publicName: "fExternalItemTrigger", isSignal: false, isRequired: false, transformFunction: null }, fEmitOnNodeIntersect: { classPropertyName: "fEmitOnNodeIntersect", publicName: "fEmitOnNodeIntersect", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, vCellSize: { classPropertyName: "vCellSize", publicName: "vCellSize", isSignal: true, isRequired: false, transformFunction: null }, hCellSize: { classPropertyName: "hCellSize", publicName: "hCellSize", isSignal: true, isRequired: false, transformFunction: null }, fCellSizeWhileDragging: { classPropertyName: "fCellSizeWhileDragging", publicName: "fCellSizeWhileDragging", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { fSelectionChange: "fSelectionChange", fNodeIntersectedWithConnections: "fNodeIntersectedWithConnections", fCreateNode: "fCreateNode", fMoveNodes: "fMoveNodes", fReassignConnection: "fReassignConnection", fCreateConnection: "fCreateConnection", fDropToGroup: "fDropToGroup", fDragStarted: "fDragStarted", fDragEnded: "fDragEnded" }, providers: [FDragHandlerResult], queries: [{ propertyName: "_beforePlugins", predicate: F_BEFORE_MAIN_PLUGIN, descendants: true }, { propertyName: "_afterPlugins", predicate: F_AFTER_MAIN_PLUGIN, descendants: true }], exportAs: ["fDraggable"], usesInheritance: true, ngImport: i0 });
193
188
  }
194
189
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FDraggableDirective, decorators: [{
@@ -198,12 +193,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
198
193
  exportAs: 'fDraggable',
199
194
  providers: [FDragHandlerResult],
200
195
  }]
201
- }], ctorParameters: () => [{ type: undefined, decorators: [{
202
- type: Inject,
203
- args: [NgZone]
204
- }, {
205
- type: Optional
206
- }] }], propDecorators: { disabled: [{
196
+ }], ctorParameters: () => [], propDecorators: { disabled: [{
207
197
  type: Input,
208
198
  args: [{ transform: booleanAttribute, alias: 'fDraggableDisabled' }]
209
199
  }], fMultiSelectTrigger: [{
@@ -250,4 +240,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
250
240
  type: ContentChildren,
251
241
  args: [F_AFTER_MAIN_PLUGIN, { descendants: true }]
252
242
  }] } });
253
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1kcmFnZ2FibGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLWRyYWdnYWJsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLGdCQUFnQixFQUNoQixlQUFlLEVBQ2YsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLE1BQU0sRUFDTixLQUFLLEVBQ0wsS0FBSyxFQUNMLE1BQU0sRUFDTixlQUFlLEVBR2YsUUFBUSxFQUNSLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEQsT0FBTyxFQUVMLHdCQUF3QixFQUN4QiwyQkFBMkIsR0FDNUIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLDBCQUEwQixFQUFFLDZCQUE2QixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3ZGLE9BQU8sRUFFTCxnQ0FBZ0MsRUFDaEMsbUNBQW1DLEVBRW5DLGtDQUFrQyxFQUNsQyxxQ0FBcUMsR0FDdEMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDN0MsT0FBTyxFQUNMLG9CQUFvQixFQUNwQixtQkFBbUIsRUFDbkIsK0JBQStCLEVBQy9CLHNCQUFzQixFQUd0Qiw2QkFBNkIsRUFDN0Isb0JBQW9CLEVBQ3BCLDBCQUEwQixFQUMxQix5QkFBeUIsR0FDMUIsTUFBTSxXQUFXLENBQUM7QUFDbkIsT0FBTyxFQUVMLDRCQUE0QixFQUM1QiwrQkFBK0IsRUFDL0IsbUNBQW1DLEdBQ3BDLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLDRCQUE0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SztnQkFJQyxrQkFBa0I7c0JBRHhCLEtBQUs7Z0JBSUMsa0JBQWtCO3NCQUR4QixLQUFLO2dCQUlDLGdCQUFnQjtzQkFEdEIsS0FBSztnQkFJQyxrQkFBa0I7c0JBRHhCLEtBQUs7Z0JBSUMsb0JBQW9CO3NCQUQxQixLQUFLO2dCQUlVLGdCQUFnQjtzQkFEL0IsTUFBTTtnQkFJUywrQkFBK0I7c0JBRDlDLE1BQU07Z0JBS1Msb0JBQW9CO3NCQURuQyxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQUl0QixXQUFXO3NCQUQxQixNQUFNO2dCQUlTLFVBQVU7c0JBRHpCLE1BQU07Z0JBSVMsbUJBQW1CO3NCQURsQyxNQUFNO2dCQUlTLGlCQUFpQjtzQkFEaEMsTUFBTTtnQkFJUyxZQUFZO3NCQUQzQixNQUFNO2dCQStCUyxZQUFZO3NCQUQzQixNQUFNO2dCQUlTLFVBQVU7c0JBRHpCLE1BQU07Z0JBSUMsY0FBYztzQkFEckIsZUFBZTt1QkFBQyxvQkFBb0IsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUU7Z0JBSXBELGFBQWE7c0JBRHBCLGVBQWU7dUJBQUMsbUJBQW1CLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgQ29udGVudENoaWxkcmVuLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgaW5qZWN0LFxuICBJbmplY3QsXG4gIGlucHV0LFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBudW1iZXJBdHRyaWJ1dGUsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkRyYWdnYWJsZUJhc2UgfSBmcm9tICcuL2YtZHJhZ2dhYmxlLWJhc2UnO1xuaW1wb3J0IHtcbiAgRk1vdmVOb2Rlc0V2ZW50LFxuICBGTm9kZU1vdmVGaW5hbGl6ZVJlcXVlc3QsXG4gIEZOb2RlTW92ZVByZXBhcmF0aW9uUmVxdWVzdCxcbn0gZnJvbSAnLi9mLW5vZGUtbW92ZSc7XG5pbXBvcnQgeyBGQ2FudmFzTW92ZUZpbmFsaXplUmVxdWVzdCwgRkNhbnZhc01vdmVQcmVwYXJhdGlvblJlcXVlc3QgfSBmcm9tICcuL2YtY2FudmFzJztcbmltcG9ydCB7XG4gIEZDcmVhdGVDb25uZWN0aW9uRXZlbnQsXG4gIEZDcmVhdGVDb25uZWN0aW9uRmluYWxpemVSZXF1ZXN0LFxuICBGQ3JlYXRlQ29ubmVjdGlvblByZXBhcmF0aW9uUmVxdWVzdCxcbiAgRlJlYXNzaWduQ29ubmVjdGlvbkV2ZW50LFxuICBGUmVhc3NpZ25Db25uZWN0aW9uRmluYWxpemVSZXF1ZXN0LFxuICBGUmVhc3NpZ25Db25uZWN0aW9uUHJlcGFyYXRpb25SZXF1ZXN0LFxufSBmcm9tICcuL2YtY29ubmVjdGlvbic7XG5pbXBvcnQgeyBGU2VsZWN0aW9uQ2hhbmdlRXZlbnQgfSBmcm9tICcuL2Ytc2VsZWN0aW9uLWNoYW5nZS1ldmVudCc7XG5pbXBvcnQgeyBGTWVkaWF0b3IgfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7XG4gIEFkZERuZFRvU3RvcmVSZXF1ZXN0LFxuICBkZWZhdWx0RXZlbnRUcmlnZ2VyLFxuICBFbWl0U2VsZWN0aW9uQ2hhbmdlRXZlbnRSZXF1ZXN0LFxuICBFbmREcmFnU2VxdWVuY2VSZXF1ZXN0LFxuICBGRXZlbnRUcmlnZ2VyLFxuICBGVHJpZ2dlckV2ZW50LFxuICBJbml0aWFsaXplRHJhZ1NlcXVlbmNlUmVxdWVzdCxcbiAgT25Qb2ludGVyTW92ZVJlcXVlc3QsXG4gIFByZXBhcmVEcmFnU2VxdWVuY2VSZXF1ZXN0LFxuICBSZW1vdmVEbmRGcm9tU3RvcmVSZXF1ZXN0LFxufSBmcm9tICcuLi9kb21haW4nO1xuaW1wb3J0IHtcbiAgRkNyZWF0ZU5vZGVFdmVudCxcbiAgRkV4dGVybmFsSXRlbUZpbmFsaXplUmVxdWVzdCxcbiAgRkV4dGVybmFsSXRlbVByZXBhcmF0aW9uUmVxdWVzdCxcbiAgUHJldmVudERlZmF1bHRJc0V4dGVybmFsSXRlbVJlcXVlc3QsXG59IGZyb20gJy4uL2YtZXh0ZXJuYWwtaXRlbSc7XG5pbXBvcnQgeyBGU2luZ2xlU2VsZWN0UmVxdWVzdCB9IGZyb20gJy4vZi1zaW5nbGUtc2VsZWN0JztcbmltcG9ydCB7IE5vZGVSZXNpemVGaW5hbGl6ZVJlcXVlc3QsIE5vZGVSZXNpemVQcmVwYXJhdGlvblJlcXVlc3QgfSBmcm9tICcuL2Ytbm9kZS1yZXNpemUnO1xuaW1wb3J0IHtcbiAgRl9BRlRFUl9NQUlOX1BMVUdJTixcbiAgRl9CRUZPUkVfTUFJTl9QTFVHSU4sXG4gIElGRHJhZ0FuZERyb3BQbHVnaW4sXG59IGZyb20gJy4vaS1mLWRyYWctYW5kLWRyb3AtcGx1Z2luJztcbmltcG9ydCB7IEJyb3dzZXJTZXJ2aWNlLCBFT3BlcmF0aW9uU3lzdGVtLCBQbGF0Zm9ybVNlcnZpY2UgfSBmcm9tICdAZm9ibGV4L3BsYXRmb3JtJztcbmltcG9ydCB7IEZEcmFnU3RhcnRlZEV2ZW50LCBGTm9kZUludGVyc2VjdGVkV2l0aENvbm5lY3Rpb25zIH0gZnJvbSAnLi9kb21haW4nO1xuaW1wb3J0IHsgRkRyYWdIYW5kbGVyUmVzdWx0IH0gZnJvbSAnLi9mLWRyYWctaGFuZGxlcic7XG5pbXBvcnQge1xuICBGRHJvcFRvR3JvdXBFdmVudCxcbiAgRHJvcFRvR3JvdXBGaW5hbGl6ZVJlcXVlc3QsXG4gIERyb3BUb0dyb3VwUHJlcGFyYXRpb25SZXF1ZXN0LFxufSBmcm9tICcuL2YtZHJvcC10by1ncm91cCc7XG5pbXBvcnQgeyBGTm9kZVJvdGF0ZUZpbmFsaXplUmVxdWVzdCwgRk5vZGVSb3RhdGVQcmVwYXJhdGlvblJlcXVlc3QgfSBmcm9tICcuL2Ytbm9kZS1yb3RhdGUnO1xuaW1wb3J0IHsgSUNhblJ1bk91dHNpZGVBbmd1bGFyLCBJUG9pbnRlckV2ZW50IH0gZnJvbSAnLi4vZHJhZy10b29sa2l0JztcbmltcG9ydCB7IGlzRHJhZ0Jsb2NrZXIgfSBmcm9tICcuL2lzLWRyYWctYmxvY2tlcic7XG5cbi8vIOKUjOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUkFxuLy8g4pSCICAgICAgICBBbmd1bGFyIFJlYWxtICAgICAgICAg4pSCXG4vLyDilIIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDilIJcbi8vIOKUgiAg4pSM4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSQICDilIJcbi8vIOKUgiAg4pSCICBGRHJhZ2dhYmxlRGlyZWN0aXZlICAg4pSCICDilIJcbi8vIOKUgiAg4pSU4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSs4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSYICDilIJcbi8vIOKUgiAgICAgICAgICAgICDilIIgZXh0ZW5kcyAgICAgICAg4pSCXG4vLyDilIIgIOKUjOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKWvOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUkCAg4pSCXG4vLyDilIIgIOKUgiAgICAgRkRyYWdnYWJsZUJhc2UgICAgIOKUgiAg4pSCXG4vLyDilIIgIOKUlOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUrOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUmCAg4pSCXG4vLyDilIIgICAgICAgICAgICAg4pSCICAgICAgICAgICAgICAgIOKUglxuLy8g4pSCICAgICAgICAgICAgIOKUgiBvdmVycmlkZXMgICAgICDilIJcbi8vIOKUgiAg4pSM4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pa84pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSQICDilIJcbi8vIOKUgiAg4pSCICAgRHJhZ0FuZERyb3BCYXNlICAgICAg4pSCICDilIJcbi8vIOKUgiAg4pSU4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSs4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSYICDilIJcbi8vIOKUgiAgICAgICAgICAgICDilIIgICAgICAgICAgICAgICAg4pSCXG4vLyDilIIgICAgICBzdWJzY3JpYmVzIHRvICAgICAgICAgICDilIJcbi8vIOKUgiAgICAgICAgICAgICDilIIgICAgICAgICAgICAgICAg4pSCXG4vLyDilIIgICAgICAgIOKUjOKUgOKUgOKUgOKUgOKWvOKUgOKUgOKUgOKUgOKUkCAgICAgICAgICAg4pSCXG4vLyDilIIgICAgICAgIOKUgiBEb2N1bWVudOKUgiAgICAgICAgICAg4pSCXG4vLyDilIIgICAgICAgIOKUlOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUmCAgICAgICAgICAg4pSCXG4vLyDilIIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDilIJcbi8vIOKUgiAg4pSM4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSQICDilIJcbi8vIOKUgiAg4pSCICAgICAgIEZNZWRpYXRvciAgICAgICAg4pSC4peE4pSA4pSs4pSA4pSA4pSA4pSA4pSQXG4vLyDilIIgIOKUlOKUgOKUgOKUgOKUgOKUgOKUrOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUrOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUmCAg4pSCICAgIOKUglxuLy8g4pSCICAgICAgICDilIIgICAgICAgIOKUgiAgICAgICAgICAgIOKUgiAgICDilIJcbi8vIOKUgiAgIGV4ZWN1dGVzICAgZXhlY3V0ZXMgICAgICAgIOKUgiAgICDilIJcbi8vIOKUgiAgIEYqUmVxdWVzdCAgIEYqRXZlbnQgICAgICAgIOKUgiAgICDilIJcbi8vIOKUgiAgICAgICAg4pSCICAgICAgICDilIIgICAgICAgICAgICDilIIgICAg4pSCXG4vLyDilJTilIDilIDilIDilIDilIDilIDilIDilIDilLTilIDilIDilIDilIDilIDilIDilIDilIDilLTilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilLTilIDilIDilIDilIDilJhcbi8vXG4vL1xuLy8g4pSM4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSQXG4vLyDilIIgICAgICAgRHJhZyAmIERyb3AgUnVudGltZSBMYXllciAgICAgIOKUglxuLy8g4pSCICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDilIJcbi8vIOKUgiAgRXZlbnRzIGZyb20gRE9NOiAgICAgICAgICAgICAgICAgICAg4pSCXG4vLyDilIIgICAgLSBtb3VzZWRvd24gLyB0b3VjaHN0YXJ0ICAgICAgICAgIOKUglxuLy8g4pSCICAgIC0gbW91c2Vtb3ZlIC8gdG91Y2htb3ZlICAgICAgICAgICDilIJcbi8vIOKUgiAgICAtIHBvaW50ZXJ1cCAgICAgICAgICAgICAgICAgICAgICAg4pSCXG4vLyDilIIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOKUglxuLy8g4pSCICDihpMgUm91dGVkIHRvICAgICAgICAgICAgICAgICAgICAgICAgIOKUglxuLy8g4pSCICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDilIJcbi8vIOKUgiAg4pSM4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSQICAgIOKUglxuLy8g4pSCICDilIIgICAgIERyYWdBbmREcm9wQmFzZSAgICAgICAgICDilIIgICAg4pSCXG4vLyDilIIgIOKUlOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUmCAgICDilIJcbi8vIOKUgiAgICAgICAg4payICAgICAgICAgICAgIOKWsiAgICAgICAgICAgICAgIOKUglxuLy8g4pSCICAgICAgICDilIIgICAgICAgICAgICAg4pSCICAgICAgICAgICAgICAg4pSCXG4vLyDilIIgICBjaGVja0RyYWcgICAgIG9uUG9pbnRlck1vdmUgICAgICAgIOKUglxuLy8g4pSCICAgU2VxdWVuY2UgICAgICArIEZpbmFsaXphdGlvbiAgICAgICDilIJcbi8vIOKUgiAgIFRvIFN0YXJ0ICAgICAgICAgICAgICAgICAgICAgICAgICAg4pSCXG4vLyDilJTilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilJhcbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ2YtZmxvd1tmRHJhZ2dhYmxlXScsXG4gIGV4cG9ydEFzOiAnZkRyYWdnYWJsZScsXG4gIHByb3ZpZGVyczogW0ZEcmFnSGFuZGxlclJlc3VsdF0sXG59KVxuZXhwb3J0IGNsYXNzIEZEcmFnZ2FibGVEaXJlY3RpdmVcbiAgZXh0ZW5kcyBGRHJhZ2dhYmxlQmFzZVxuICBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95XG57XG4gIHByaXZhdGUgcmVhZG9ubHkgX2VsZW1lbnRSZWZlcmVuY2UgPSBpbmplY3QoRWxlbWVudFJlZik7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZlJlc3VsdCA9IGluamVjdChGRHJhZ0hhbmRsZXJSZXN1bHQpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9wbGF0Zm9ybSA9IGluamVjdChQbGF0Zm9ybVNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9icm93c2VyID0gaW5qZWN0KEJyb3dzZXJTZXJ2aWNlKTtcblxuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUsIGFsaWFzOiAnZkRyYWdnYWJsZURpc2FibGVkJyB9KVxuICBwdWJsaWMgb3ZlcnJpZGUgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IGhvc3RFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5fZWxlbWVudFJlZmVyZW5jZS5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIGZNdWx0aVNlbGVjdFRyaWdnZXI6IEZFdmVudFRyaWdnZXIgPSAoZXZlbnQ6IEZUcmlnZ2VyRXZlbnQpID0+IHtcbiAgICByZXR1cm4gdGhpcy5fcGxhdGZvcm0uZ2V0T1MoKSA9PT0gRU9wZXJhdGlvblN5c3RlbS5NQUNfT1MgPyBldmVudC5tZXRhS2V5IDogZXZlbnQuY3RybEtleTtcbiAgfTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZlJlYXNzaWduQ29ubmVjdGlvblRyaWdnZXI6IEZFdmVudFRyaWdnZXIgPSBkZWZhdWx0RXZlbnRUcmlnZ2VyO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmQ3JlYXRlQ29ubmVjdGlvblRyaWdnZXI6IEZFdmVudFRyaWdnZXIgPSBkZWZhdWx0RXZlbnRUcmlnZ2VyO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmTm9kZVJlc2l6ZVRyaWdnZXI6IEZFdmVudFRyaWdnZXIgPSBkZWZhdWx0RXZlbnRUcmlnZ2VyO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmTm9kZVJvdGF0ZVRyaWdnZXI6IEZFdmVudFRyaWdnZXIgPSBkZWZhdWx0RXZlbnRUcmlnZ2VyO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmTm9kZU1vdmVUcmlnZ2VyOiBGRXZlbnRUcmlnZ2VyID0gZGVmYXVsdEV2ZW50VHJpZ2dlcjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZkNhbnZhc01vdmVUcmlnZ2VyOiBGRXZlbnRUcmlnZ2VyID0gZGVmYXVsdEV2ZW50VHJpZ2dlcjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZkV4dGVybmFsSXRlbVRyaWdnZXI6IEZFdmVudFRyaWdnZXIgPSBkZWZhdWx0RXZlbnRUcmlnZ2VyO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZlNlbGVjdGlvbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8RlNlbGVjdGlvbkNoYW5nZUV2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZk5vZGVJbnRlcnNlY3RlZFdpdGhDb25uZWN0aW9ucyA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxGTm9kZUludGVyc2VjdGVkV2l0aENvbm5lY3Rpb25zPigpO1xuXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KVxuICBwdWJsaWMgb3ZlcnJpZGUgZkVtaXRPbk5vZGVJbnRlcnNlY3Q6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIG92ZXJyaWRlIGZDcmVhdGVOb2RlID0gbmV3IEV2ZW50RW1pdHRlcjxGQ3JlYXRlTm9kZUV2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZk1vdmVOb2RlcyA9IG5ldyBFdmVudEVtaXR0ZXI8Rk1vdmVOb2Rlc0V2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZlJlYXNzaWduQ29ubmVjdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXI8RlJlYXNzaWduQ29ubmVjdGlvbkV2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZkNyZWF0ZUNvbm5lY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPEZDcmVhdGVDb25uZWN0aW9uRXZlbnQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBvdmVycmlkZSBmRHJvcFRvR3JvdXAgPSBuZXcgRXZlbnRFbWl0dGVyPEZEcm9wVG9Hcm91cEV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBEZWZpbmVzIHRoZSB2ZXJ0aWNhbCBjZWxsIHNpemUgZm9yIHRoZSBncmlkLlxuICAgKiBUaGlzIHZhbHVlIGlzIHVzZWQgdG8gc25hcCBub2RlcyB0byBhIHZlcnRpY2FsIGdyaWQgd2hpbGUgZHJhZ2dpbmcuXG4gICAqIFRoZSBkZWZhdWx0IHZhbHVlIGlzIGAxYCwgd2hpY2ggbWVhbnMgdGhhdCBub2RlcyB3aWxsIHNuYXAgdG8gZXZlcnkgcGl4ZWwgdmVydGljYWxseS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSB2Q2VsbFNpemUgPSBpbnB1dCgxLCB7XG4gICAgdHJhbnNmb3JtOiAodmFsdWU6IHVua25vd24pID0+IG51bWJlckF0dHJpYnV0ZSh2YWx1ZSwgMSksXG4gIH0pO1xuXG4gIC8qKlxuICAgKiBEZWZpbmVzIHRoZSBob3Jpem9udGFsIGNlbGwgc2l6ZSBmb3IgdGhlIGdyaWQuXG4gICAqIFRoaXMgdmFsdWUgaXMgdXNlZCB0byBzbmFwIG5vZGVzIHRvIGEgaG9yaXpvbnRhbCBncmlkIHdoaWxlIGRyYWdnaW5nLlxuICAgKiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBgMWAsIHdoaWNoIG1lYW5zIHRoYXQgbm9kZXMgd2lsbCBzbmFwIHRvIGV2ZXJ5IHBpeGVsIGhvcml6b250YWxseS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBoQ2VsbFNpemUgPSBpbnB1dCgxLCB7XG4gICAgdHJhbnNmb3JtOiAodmFsdWU6IHVua25vd24pID0+IG51bWJlckF0dHJpYnV0ZSh2YWx1ZSwgMSksXG4gIH0pO1xuXG4gIC8qKlxuICAgKiBEZWZpbmVzIHdoZXRoZXIgdGhlIGNlbGwgc2l6ZSBzaG91bGQgYmUgYXBwbGllZCB3aGlsZSBkcmFnZ2luZy5cbiAgICogSWYgc2V0IHRvIGB0cnVlYCwgdGhlIGRyYWdnZWQgbm9kZXMgd2lsbCBzbmFwIHRvIHRoZSBncmlkIGRlZmluZWQgYnkgYHZDZWxsU2l6ZWAgYW5kIGBoQ2VsbFNpemVgLlxuICAgKiBJZiBzZXQgdG8gYGZhbHNlYCwgdGhlIG5vZGVzIHdpbGwgbW92ZSBmcmVlbHkgd2l0aG91dCBzbmFwcGluZyB0byB0aGUgZ3JpZC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBmQ2VsbFNpemVXaGlsZURyYWdnaW5nID0gaW5wdXQoZmFsc2UsIHtcbiAgICB0cmFuc2Zvcm06ICh2YWx1ZTogdW5rbm93bikgPT4gYm9vbGVhbkF0dHJpYnV0ZSh2YWx1ZSksXG4gIH0pO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZkRyYWdTdGFydGVkID0gbmV3IEV2ZW50RW1pdHRlcjxGRHJhZ1N0YXJ0ZWRFdmVudD4oKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIG92ZXJyaWRlIGZEcmFnRW5kZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihGX0JFRk9SRV9NQUlOX1BMVUdJTiwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICBwcml2YXRlIF9iZWZvcmVQbHVnaW5zITogUXVlcnlMaXN0PElGRHJhZ0FuZERyb3BQbHVnaW4+O1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oRl9BRlRFUl9NQUlOX1BMVUdJTiwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICBwcml2YXRlIF9hZnRlclBsdWdpbnMhOiBRdWVyeUxpc3Q8SUZEcmFnQW5kRHJvcFBsdWdpbj47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9wcmVmZXItaW5qZWN0XG4gICAgQEluamVjdChOZ1pvbmUpIEBPcHRpb25hbCgpIG5nWm9uZTogSUNhblJ1bk91dHNpZGVBbmd1bGFyLFxuICApIHtcbiAgICBzdXBlcihuZ1pvbmUpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8dm9pZD4obmV3IEFkZERuZFRvU3RvcmVSZXF1ZXN0KHRoaXMpKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgc3VwZXIuc3Vic2NyaWJlKHRoaXMuX2Jyb3dzZXIuZG9jdW1lbnQpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIG9uUG9pbnRlckRvd24oZXZlbnQ6IElQb2ludGVyRXZlbnQpOiBib29sZWFuIHtcbiAgICBpZiAoaXNEcmFnQmxvY2tlcihldmVudC50YXJnZXRFbGVtZW50KSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHRoaXMuX2ZSZXN1bHQuY2xlYXIoKTtcblxuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8dm9pZD4obmV3IEluaXRpYWxpemVEcmFnU2VxdWVuY2VSZXF1ZXN0KCkpO1xuXG4gICAgdGhpcy5fYmVmb3JlUGx1Z2lucy5mb3JFYWNoKChwKSA9PiBwLm9uUG9pbnRlckRvd24/LihldmVudCkpO1xuXG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTx2b2lkPihuZXcgRlNpbmdsZVNlbGVjdFJlcXVlc3QoZXZlbnQsIHRoaXMuZk11bHRpU2VsZWN0VHJpZ2dlcikpO1xuXG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTx2b2lkPihcbiAgICAgIG5ldyBGUmVhc3NpZ25Db25uZWN0aW9uUHJlcGFyYXRpb25SZXF1ZXN0KGV2ZW50LCB0aGlzLmZSZWFzc2lnbkNvbm5lY3Rpb25UcmlnZ2VyKSxcbiAgICApO1xuXG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTx2b2lkPihcbiAgICAgIG5ldyBGQ3JlYXRlQ29ubmVjdGlvblByZXBhcmF0aW9uUmVxdWVzdChldmVudCwgdGhpcy5mQ3JlYXRlQ29ubmVjdGlvblRyaWdnZXIpLFxuICAgICk7XG5cbiAgICB0aGlzLl9hZnRlclBsdWdpbnMuZm9yRWFjaCgocCkgPT4gcC5vblBvaW50ZXJEb3duPy4oZXZlbnQpKTtcblxuICAgIGNvbnN0IGlzTW91c2VMZWZ0T3JUb3VjaCA9IGV2ZW50LmlzTW91c2VMZWZ0QnV0dG9uKCk7XG4gICAgaWYgKCFpc01vdXNlTGVmdE9yVG91Y2gpIHtcbiAgICAgIHRoaXMuZmluYWxpemVEcmFnU2VxdWVuY2UoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gaXNNb3VzZUxlZnRPclRvdWNoO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHByZXBhcmVEcmFnU2VxdWVuY2UoZXZlbnQ6IElQb2ludGVyRXZlbnQpIHtcbiAgICB0aGlzLl9iZWZvcmVQbHVnaW5zLmZvckVhY2goKHApID0+IHAucHJlcGFyZURyYWdTZXF1ZW5jZT8uKGV2ZW50KSk7XG5cbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlPHZvaWQ+KG5ldyBOb2RlUmVzaXplUHJlcGFyYXRpb25SZXF1ZXN0KGV2ZW50LCB0aGlzLmZOb2RlUmVzaXplVHJpZ2dlcikpO1xuXG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTx2b2lkPihuZXcgRk5vZGVSb3RhdGVQcmVwYXJhdGlvblJlcXVlc3QoZXZlbnQsIHRoaXMuZk5vZGVSb3RhdGVUcmlnZ2VyKSk7XG5cbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlPHZvaWQ+KG5ldyBGTm9kZU1vdmVQcmVwYXJhdGlvblJlcXVlc3QoZXZlbnQsIHRoaXMuZk5vZGVNb3ZlVHJpZ2dlcikpO1xuXG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTx2b2lkPihcbiAgICAgIG5ldyBGRXh0ZXJuYWxJdGVtUHJlcGFyYXRpb25SZXF1ZXN0KGV2ZW50LCB0aGlzLmZFeHRlcm5hbEl0ZW1UcmlnZ2VyKSxcbiAgICApO1xuXG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTx2b2lkPihuZXcgRHJvcFRvR3JvdXBQcmVwYXJhdGlvblJlcXVlc3QoZXZlbnQpKTtcblxuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8dm9pZD4obmV3IEZDYW52YXNNb3ZlUHJlcGFyYXRpb25SZXF1ZXN0KGV2ZW50LCB0aGlzLmZDYW52YXNNb3ZlVHJpZ2dlcikpO1xuXG4gICAgdGhpcy5fYWZ0ZXJQbHVnaW5zLmZvckVhY2goKHApID0+IHAucHJlcGFyZURyYWdTZXF1ZW5jZT8uKGV2ZW50KSk7XG5cbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlPHZvaWQ+KG5ldyBQcmVwYXJlRHJhZ1NlcXVlbmNlUmVxdWVzdCgpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBvblNlbGVjdChldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlPHZvaWQ+KG5ldyBQcmV2ZW50RGVmYXVsdElzRXh0ZXJuYWxJdGVtUmVxdWVzdChldmVudCkpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIG9uUG9pbnRlck1vdmUoZXZlbnQ6IElQb2ludGVyRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlPHZvaWQ+KG5ldyBPblBvaW50ZXJNb3ZlUmVxdWVzdChldmVudCkpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIG9uUG9pbnRlclVwKGV2ZW50OiBJUG9pbnRlckV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5fYmVmb3JlUGx1Z2lucy5mb3JFYWNoKCh4KSA9PiB4Lm9uUG9pbnRlclVwPy4oZXZlbnQpKTtcblxuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8dm9pZD4obmV3IEZSZWFzc2lnbkNvbm5lY3Rpb25GaW5hbGl6ZVJlcXVlc3QoZXZlbnQpKTtcblxuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8dm9pZD4obmV3IEZDcmVhdGVDb25uZWN0aW9uRmluYWxpemVSZXF1ZXN0KGV2ZW50KSk7XG5cbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlPHZvaWQ+KG5ldyBOb2RlUmVzaXplRmluYWxpemVSZXF1ZXN0KGV2ZW50KSk7XG5cbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlPHZvaWQ+KG5ldyBGTm9kZVJvdGF0ZUZpbmFsaXplUmVxdWVzdChldmVudCkpO1xuXG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTx2b2lkPihuZXcgRk5vZGVNb3ZlRmluYWxpemVSZXF1ZXN0KGV2ZW50KSk7XG5cbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlPHZvaWQ+KG5ldyBGRXh0ZXJuYWxJdGVtRmluYWxpemVSZXF1ZXN0KGV2ZW50KSk7XG5cbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlPHZvaWQ+KG5ldyBEcm9wVG9Hcm91cEZpbmFsaXplUmVxdWVzdChldmVudCkpO1xuXG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTx2b2lkPihuZXcgRkNhbnZhc01vdmVGaW5hbGl6ZVJlcXVlc3QoZXZlbnQpKTtcblxuICAgIHRoaXMuX2FmdGVyUGx1Z2lucy5mb3JFYWNoKCh4KSA9PiB4Lm9uUG9pbnRlclVwPy4oZXZlbnQpKTtcblxuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8dm9pZD4obmV3IEVuZERyYWdTZXF1ZW5jZVJlcXVlc3QoKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZmluYWxpemVEcmFnU2VxdWVuY2UoKTogdm9pZCB7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTx2b2lkPihuZXcgRW1pdFNlbGVjdGlvbkNoYW5nZUV2ZW50UmVxdWVzdCgpKTtcblxuICAgIHRoaXMuX2ZSZXN1bHQuY2xlYXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlPHZvaWQ+KG5ldyBSZW1vdmVEbmRGcm9tU3RvcmVSZXF1ZXN0KCkpO1xuICAgIHN1cGVyLnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiJdfQ==
243
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1kcmFnZ2FibGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLWRyYWdnYWJsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLGdCQUFnQixFQUNoQixlQUFlLEVBQ2YsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxLQUFLLEVBQ0wsTUFBTSxFQUNOLGVBQWUsRUFHZixNQUFNLEdBRVAsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFFTCx3QkFBd0IsRUFDeEIsMkJBQTJCLEdBQzVCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSw2QkFBNkIsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN2RixPQUFPLEVBRUwsZ0NBQWdDLEVBQ2hDLG1DQUFtQyxFQUVuQyxrQ0FBa0MsRUFDbEMscUNBQXFDLEdBQ3RDLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzdDLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsbUJBQW1CLEVBQ25CLCtCQUErQixFQUMvQixzQkFBc0IsRUFHdEIsNkJBQTZCLEVBQzdCLG9CQUFvQixFQUNwQiwwQkFBMEIsRUFDMUIseUJBQXlCLEdBQzFCLE1BQU0sV0FBVyxDQUFDO0FBQ25CLE9BQU8sRUFFTCw0QkFBNEIsRUFDNUIsK0JBQStCLEVBQy9CLG1DQUFtQyxHQUNwQyxNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3pELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGlCQUFpQixD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QW9CO3NCQUQxQixLQUFLO2dCQUlVLGdCQUFnQjtzQkFEL0IsTUFBTTtnQkFJUywrQkFBK0I7c0JBRDlDLE1BQU07Z0JBS1Msb0JBQW9CO3NCQURuQyxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQUl0QixXQUFXO3NCQUQxQixNQUFNO2dCQUlTLFVBQVU7c0JBRHpCLE1BQU07Z0JBSVMsbUJBQW1CO3NCQURsQyxNQUFNO2dCQUlTLGlCQUFpQjtzQkFEaEMsTUFBTTtnQkFJUyxZQUFZO3NCQUQzQixNQUFNO2dCQStCUyxZQUFZO3NCQUQzQixNQUFNO2dCQUlTLFVBQVU7c0JBRHpCLE1BQU07Z0JBSUMsY0FBYztzQkFEckIsZUFBZTt1QkFBQyxvQkFBb0IsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUU7Z0JBSXBELGFBQWE7c0JBRHBCLGVBQWU7dUJBQUMsbUJBQW1CLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgQ29udGVudENoaWxkcmVuLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgaW5qZWN0LFxuICBpbnB1dCxcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgbnVtYmVyQXR0cmlidXRlLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkRyYWdnYWJsZUJhc2UgfSBmcm9tICcuL2YtZHJhZ2dhYmxlLWJhc2UnO1xuaW1wb3J0IHtcbiAgRk1vdmVOb2Rlc0V2ZW50LFxuICBGTm9kZU1vdmVGaW5hbGl6ZVJlcXVlc3QsXG4gIEZOb2RlTW92ZVByZXBhcmF0aW9uUmVxdWVzdCxcbn0gZnJvbSAnLi9mLW5vZGUtbW92ZSc7XG5pbXBvcnQgeyBGQ2FudmFzTW92ZUZpbmFsaXplUmVxdWVzdCwgRkNhbnZhc01vdmVQcmVwYXJhdGlvblJlcXVlc3QgfSBmcm9tICcuL2YtY2FudmFzJztcbmltcG9ydCB7XG4gIEZDcmVhdGVDb25uZWN0aW9uRXZlbnQsXG4gIEZDcmVhdGVDb25uZWN0aW9uRmluYWxpemVSZXF1ZXN0LFxuICBGQ3JlYXRlQ29ubmVjdGlvblByZXBhcmF0aW9uUmVxdWVzdCxcbiAgRlJlYXNzaWduQ29ubmVjdGlvbkV2ZW50LFxuICBGUmVhc3NpZ25Db25uZWN0aW9uRmluYWxpemVSZXF1ZXN0LFxuICBGUmVhc3NpZ25Db25uZWN0aW9uUHJlcGFyYXRpb25SZXF1ZXN0LFxufSBmcm9tICcuL2YtY29ubmVjdGlvbic7XG5pbXBvcnQgeyBGU2VsZWN0aW9uQ2hhbmdlRXZlbnQgfSBmcm9tICcuL2Ytc2VsZWN0aW9uLWNoYW5nZS1ldmVudCc7XG5pbXBvcnQgeyBGTWVkaWF0b3IgfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7XG4gIEFkZERuZFRvU3RvcmVSZXF1ZXN0LFxuICBkZWZhdWx0RXZlbnRUcmlnZ2VyLFxuICBFbWl0U2VsZWN0aW9uQ2hhbmdlRXZlbnRSZXF1ZXN0LFxuICBFbmREcmFnU2VxdWVuY2VSZXF1ZXN0LFxuICBGRXZlbnRUcmlnZ2VyLFxuICBGVHJpZ2dlckV2ZW50LFxuICBJbml0aWFsaXplRHJhZ1NlcXVlbmNlUmVxdWVzdCxcbiAgT25Qb2ludGVyTW92ZVJlcXVlc3QsXG4gIFByZXBhcmVEcmFnU2VxdWVuY2VSZXF1ZXN0LFxuICBSZW1vdmVEbmRGcm9tU3RvcmVSZXF1ZXN0LFxufSBmcm9tICcuLi9kb21haW4nO1xuaW1wb3J0IHtcbiAgRkNyZWF0ZU5vZGVFdmVudCxcbiAgRkV4dGVybmFsSXRlbUZpbmFsaXplUmVxdWVzdCxcbiAgRkV4dGVybmFsSXRlbVByZXBhcmF0aW9uUmVxdWVzdCxcbiAgUHJldmVudERlZmF1bHRJc0V4dGVybmFsSXRlbVJlcXVlc3QsXG59IGZyb20gJy4uL2YtZXh0ZXJuYWwtaXRlbSc7XG5pbXBvcnQgeyBGU2luZ2xlU2VsZWN0UmVxdWVzdCB9IGZyb20gJy4vZi1zaW5nbGUtc2VsZWN0JztcbmltcG9ydCB7IE5vZGVSZXNpemVGaW5hbGl6ZVJlcXVlc3QsIE5vZGVSZXNpemVQcmVwYXJhdGlvblJlcXVlc3QgfSBmcm9tICcuL2Ytbm9kZS1yZXNpemUnO1xuaW1wb3J0IHtcbiAgRl9BRlRFUl9NQUlOX1BMVUdJTixcbiAgRl9CRUZPUkVfTUFJTl9QTFVHSU4sXG4gIElGRHJhZ0FuZERyb3BQbHVnaW4sXG59IGZyb20gJy4vaS1mLWRyYWctYW5kLWRyb3AtcGx1Z2luJztcbmltcG9ydCB7IEJyb3dzZXJTZXJ2aWNlLCBFT3BlcmF0aW9uU3lzdGVtLCBQbGF0Zm9ybVNlcnZpY2UgfSBmcm9tICdAZm9ibGV4L3BsYXRmb3JtJztcbmltcG9ydCB7IEZEcmFnU3RhcnRlZEV2ZW50LCBGTm9kZUludGVyc2VjdGVkV2l0aENvbm5lY3Rpb25zIH0gZnJvbSAnLi9kb21haW4nO1xuaW1wb3J0IHsgRkRyYWdIYW5kbGVyUmVzdWx0IH0gZnJvbSAnLi9mLWRyYWctaGFuZGxlcic7XG5pbXBvcnQge1xuICBGRHJvcFRvR3JvdXBFdmVudCxcbiAgRHJvcFRvR3JvdXBGaW5hbGl6ZVJlcXVlc3QsXG4gIERyb3BUb0dyb3VwUHJlcGFyYXRpb25SZXF1ZXN0LFxufSBmcm9tICcuL2YtZHJvcC10by1ncm91cCc7XG5pbXBvcnQgeyBGTm9kZVJvdGF0ZUZpbmFsaXplUmVxdWVzdCwgRk5vZGVSb3RhdGVQcmVwYXJhdGlvblJlcXVlc3QgfSBmcm9tICcuL2Ytbm9kZS1yb3RhdGUnO1xuaW1wb3J0IHsgSVBvaW50ZXJFdmVudCB9IGZyb20gJy4uL2RyYWctdG9vbGtpdCc7XG5pbXBvcnQgeyBpc0RyYWdCbG9ja2VyIH0gZnJvbSAnLi9pcy1kcmFnLWJsb2NrZXInO1xuXG4vLyDilIzilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilJBcbi8vIOKUgiAgICAgICAgQW5ndWxhciBSZWFsbSAgICAgICAgIOKUglxuLy8g4pSCICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4pSCXG4vLyDilIIgIOKUjOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUkCAg4pSCXG4vLyDilIIgIOKUgiAgRkRyYWdnYWJsZURpcmVjdGl2ZSAgIOKUgiAg4pSCXG4vLyDilIIgIOKUlOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUrOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUmCAg4pSCXG4vLyDilIIgICAgICAgICAgICAg4pSCIGV4dGVuZHMgICAgICAgIOKUglxuLy8g4pSCICDilIzilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilrzilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilJAgIOKUglxuLy8g4pSCICDilIIgICAgIEZEcmFnZ2FibGVCYXNlICAgICDilIIgIOKUglxuLy8g4pSCICDilJTilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilKzilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilJggIOKUglxuLy8g4pSCICAgICAgICAgICAgIOKUgiAgICAgICAgICAgICAgICDilIJcbi8vIOKUgiAgICAgICAgICAgICDilIIgb3ZlcnJpZGVzICAgICAg4pSCXG4vLyDilIIgIOKUjOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKWvOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUkCAg4pSCXG4vLyDilIIgIOKUgiAgIERyYWdBbmREcm9wQmFzZSAgICAgIOKUgiAg4pSCXG4vLyDilIIgIOKUlOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUrOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUmCAg4pSCXG4vLyDilIIgICAgICAgICAgICAg4pSCICAgICAgICAgICAgICAgIOKUglxuLy8g4pSCICAgICAgc3Vic2NyaWJlcyB0byAgICAgICAgICAg4pSCXG4vLyDilIIgICAgICAgICAgICAg4pSCICAgICAgICAgICAgICAgIOKUglxuLy8g4pSCICAgICAgICDilIzilIDilIDilIDilIDilrzilIDilIDilIDilIDilJAgICAgICAgICAgIOKUglxuLy8g4pSCICAgICAgICDilIIgRG9jdW1lbnTilIIgICAgICAgICAgIOKUglxuLy8g4pSCICAgICAgICDilJTilIDilIDilIDilIDilIDilIDilIDilIDilIDilJggICAgICAgICAgIOKUglxuLy8g4pSCICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4pSCXG4vLyDilIIgIOKUjOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUkCAg4pSCXG4vLyDilIIgIOKUgiAgICAgICBGTWVkaWF0b3IgICAgICAgIOKUguKXhOKUgOKUrOKUgOKUgOKUgOKUgOKUkFxuLy8g4pSCICDilJTilIDilIDilIDilIDilIDilKzilIDilIDilIDilIDilIDilIDilIDilIDilKzilIDilIDilIDilIDilIDilIDilIDilIDilIDilJggIOKUgiAgICDilIJcbi8vIOKUgiAgICAgICAg4pSCICAgICAgICDilIIgICAgICAgICAgICDilIIgICAg4pSCXG4vLyDilIIgICBleGVjdXRlcyAgIGV4ZWN1dGVzICAgICAgICDilIIgICAg4pSCXG4vLyDilIIgICBGKlJlcXVlc3QgICBGKkV2ZW50ICAgICAgICDilIIgICAg4pSCXG4vLyDilIIgICAgICAgIOKUgiAgICAgICAg4pSCICAgICAgICAgICAg4pSCICAgIOKUglxuLy8g4pSU4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pS04pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pS04pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pS04pSA4pSA4pSA4pSA4pSYXG4vL1xuLy9cbi8vIOKUjOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUkFxuLy8g4pSCICAgICAgIERyYWcgJiBEcm9wIFJ1bnRpbWUgTGF5ZXIgICAgICDilIJcbi8vIOKUgiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4pSCXG4vLyDilIIgIEV2ZW50cyBmcm9tIERPTTogICAgICAgICAgICAgICAgICAgIOKUglxuLy8g4pSCICAgIC0gbW91c2Vkb3duIC8gdG91Y2hzdGFydCAgICAgICAgICDilIJcbi8vIOKUgiAgICAtIG1vdXNlbW92ZSAvIHRvdWNobW92ZSAgICAgICAgICAg4pSCXG4vLyDilIIgICAgLSBwb2ludGVydXAgICAgICAgICAgICAgICAgICAgICAgIOKUglxuLy8g4pSCICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDilIJcbi8vIOKUgiAg4oaTIFJvdXRlZCB0byAgICAgICAgICAgICAgICAgICAgICAgICDilIJcbi8vIOKUgiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4pSCXG4vLyDilIIgIOKUjOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUkCAgICDilIJcbi8vIOKUgiAg4pSCICAgICBEcmFnQW5kRHJvcEJhc2UgICAgICAgICAg4pSCICAgIOKUglxuLy8g4pSCICDilJTilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilJggICAg4pSCXG4vLyDilIIgICAgICAgIOKWsiAgICAgICAgICAgICDilrIgICAgICAgICAgICAgICDilIJcbi8vIOKUgiAgICAgICAg4pSCICAgICAgICAgICAgIOKUgiAgICAgICAgICAgICAgIOKUglxuLy8g4pSCICAgY2hlY2tEcmFnICAgICBvblBvaW50ZXJNb3ZlICAgICAgICDilIJcbi8vIOKUgiAgIFNlcXVlbmNlICAgICAgKyBGaW5hbGl6YXRpb24gICAgICAg4pSCXG4vLyDilIIgICBUbyBTdGFydCAgICAgICAgICAgICAgICAgICAgICAgICAgIOKUglxuLy8g4pSU4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSYXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdmLWZsb3dbZkRyYWdnYWJsZV0nLFxuICBleHBvcnRBczogJ2ZEcmFnZ2FibGUnLFxuICBwcm92aWRlcnM6IFtGRHJhZ0hhbmRsZXJSZXN1bHRdLFxufSlcbmV4cG9ydCBjbGFzcyBGRHJhZ2dhYmxlRGlyZWN0aXZlXG4gIGV4dGVuZHMgRkRyYWdnYWJsZUJhc2VcbiAgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveVxue1xuICBwdWJsaWMgcmVhZG9ubHkgaG9zdEVsZW1lbnQgPSBpbmplY3QoRWxlbWVudFJlZikubmF0aXZlRWxlbWVudDtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9yZXN1bHQgPSBpbmplY3QoRkRyYWdIYW5kbGVyUmVzdWx0KTtcbiAgcHJpdmF0ZSByZWFkb25seSBfbWVkaWF0b3IgPSBpbmplY3QoRk1lZGlhdG9yKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfcGxhdGZvcm0gPSBpbmplY3QoUGxhdGZvcm1TZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfYnJvd3NlciA9IGluamVjdChCcm93c2VyU2VydmljZSk7XG5cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlLCBhbGlhczogJ2ZEcmFnZ2FibGVEaXNhYmxlZCcgfSlcbiAgcHVibGljIG92ZXJyaWRlIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGZNdWx0aVNlbGVjdFRyaWdnZXI6IEZFdmVudFRyaWdnZXIgPSAoZXZlbnQ6IEZUcmlnZ2VyRXZlbnQpID0+IHtcbiAgICByZXR1cm4gdGhpcy5fcGxhdGZvcm0uZ2V0T1MoKSA9PT0gRU9wZXJhdGlvblN5c3RlbS5NQUNfT1MgPyBldmVudC5tZXRhS2V5IDogZXZlbnQuY3RybEtleTtcbiAgfTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZlJlYXNzaWduQ29ubmVjdGlvblRyaWdnZXI6IEZFdmVudFRyaWdnZXIgPSBkZWZhdWx0RXZlbnRUcmlnZ2VyO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmQ3JlYXRlQ29ubmVjdGlvblRyaWdnZXI6IEZFdmVudFRyaWdnZXIgPSBkZWZhdWx0RXZlbnRUcmlnZ2VyO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmTm9kZVJlc2l6ZVRyaWdnZXI6IEZFdmVudFRyaWdnZXIgPSBkZWZhdWx0RXZlbnRUcmlnZ2VyO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmTm9kZVJvdGF0ZVRyaWdnZXI6IEZFdmVudFRyaWdnZXIgPSBkZWZhdWx0RXZlbnRUcmlnZ2VyO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmTm9kZU1vdmVUcmlnZ2VyOiBGRXZlbnRUcmlnZ2VyID0gZGVmYXVsdEV2ZW50VHJpZ2dlcjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZkNhbnZhc01vdmVUcmlnZ2VyOiBGRXZlbnRUcmlnZ2VyID0gZGVmYXVsdEV2ZW50VHJpZ2dlcjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZkV4dGVybmFsSXRlbVRyaWdnZXI6IEZFdmVudFRyaWdnZXIgPSBkZWZhdWx0RXZlbnRUcmlnZ2VyO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZlNlbGVjdGlvbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8RlNlbGVjdGlvbkNoYW5nZUV2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZk5vZGVJbnRlcnNlY3RlZFdpdGhDb25uZWN0aW9ucyA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxGTm9kZUludGVyc2VjdGVkV2l0aENvbm5lY3Rpb25zPigpO1xuXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KVxuICBwdWJsaWMgb3ZlcnJpZGUgZkVtaXRPbk5vZGVJbnRlcnNlY3Q6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIG92ZXJyaWRlIGZDcmVhdGVOb2RlID0gbmV3IEV2ZW50RW1pdHRlcjxGQ3JlYXRlTm9kZUV2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZk1vdmVOb2RlcyA9IG5ldyBFdmVudEVtaXR0ZXI8Rk1vdmVOb2Rlc0V2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZlJlYXNzaWduQ29ubmVjdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXI8RlJlYXNzaWduQ29ubmVjdGlvbkV2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZkNyZWF0ZUNvbm5lY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPEZDcmVhdGVDb25uZWN0aW9uRXZlbnQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBvdmVycmlkZSBmRHJvcFRvR3JvdXAgPSBuZXcgRXZlbnRFbWl0dGVyPEZEcm9wVG9Hcm91cEV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBEZWZpbmVzIHRoZSB2ZXJ0aWNhbCBjZWxsIHNpemUgZm9yIHRoZSBncmlkLlxuICAgKiBUaGlzIHZhbHVlIGlzIHVzZWQgdG8gc25hcCBub2RlcyB0byBhIHZlcnRpY2FsIGdyaWQgd2hpbGUgZHJhZ2dpbmcuXG4gICAqIFRoZSBkZWZhdWx0IHZhbHVlIGlzIGAxYCwgd2hpY2ggbWVhbnMgdGhhdCBub2RlcyB3aWxsIHNuYXAgdG8gZXZlcnkgcGl4ZWwgdmVydGljYWxseS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSB2Q2VsbFNpemUgPSBpbnB1dCgxLCB7XG4gICAgdHJhbnNmb3JtOiAodmFsdWU6IHVua25vd24pID0+IG51bWJlckF0dHJpYnV0ZSh2YWx1ZSwgMSksXG4gIH0pO1xuXG4gIC8qKlxuICAgKiBEZWZpbmVzIHRoZSBob3Jpem9udGFsIGNlbGwgc2l6ZSBmb3IgdGhlIGdyaWQuXG4gICAqIFRoaXMgdmFsdWUgaXMgdXNlZCB0byBzbmFwIG5vZGVzIHRvIGEgaG9yaXpvbnRhbCBncmlkIHdoaWxlIGRyYWdnaW5nLlxuICAgKiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBgMWAsIHdoaWNoIG1lYW5zIHRoYXQgbm9kZXMgd2lsbCBzbmFwIHRvIGV2ZXJ5IHBpeGVsIGhvcml6b250YWxseS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBoQ2VsbFNpemUgPSBpbnB1dCgxLCB7XG4gICAgdHJhbnNmb3JtOiAodmFsdWU6IHVua25vd24pID0+IG51bWJlckF0dHJpYnV0ZSh2YWx1ZSwgMSksXG4gIH0pO1xuXG4gIC8qKlxuICAgKiBEZWZpbmVzIHdoZXRoZXIgdGhlIGNlbGwgc2l6ZSBzaG91bGQgYmUgYXBwbGllZCB3aGlsZSBkcmFnZ2luZy5cbiAgICogSWYgc2V0IHRvIGB0cnVlYCwgdGhlIGRyYWdnZWQgbm9kZXMgd2lsbCBzbmFwIHRvIHRoZSBncmlkIGRlZmluZWQgYnkgYHZDZWxsU2l6ZWAgYW5kIGBoQ2VsbFNpemVgLlxuICAgKiBJZiBzZXQgdG8gYGZhbHNlYCwgdGhlIG5vZGVzIHdpbGwgbW92ZSBmcmVlbHkgd2l0aG91dCBzbmFwcGluZyB0byB0aGUgZ3JpZC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBmQ2VsbFNpemVXaGlsZURyYWdnaW5nID0gaW5wdXQoZmFsc2UsIHtcbiAgICB0cmFuc2Zvcm06ICh2YWx1ZTogdW5rbm93bikgPT4gYm9vbGVhbkF0dHJpYnV0ZSh2YWx1ZSksXG4gIH0pO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZkRyYWdTdGFydGVkID0gbmV3IEV2ZW50RW1pdHRlcjxGRHJhZ1N0YXJ0ZWRFdmVudD4oKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIG92ZXJyaWRlIGZEcmFnRW5kZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihGX0JFRk9SRV9NQUlOX1BMVUdJTiwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICBwcml2YXRlIF9iZWZvcmVQbHVnaW5zITogUXVlcnlMaXN0PElGRHJhZ0FuZERyb3BQbHVnaW4+O1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oRl9BRlRFUl9NQUlOX1BMVUdJTiwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICBwcml2YXRlIF9hZnRlclBsdWdpbnMhOiBRdWVyeUxpc3Q8SUZEcmFnQW5kRHJvcFBsdWdpbj47XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoaW5qZWN0KE5nWm9uZSwgeyBvcHRpb25hbDogdHJ1ZSB9KSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTx2b2lkPihuZXcgQWRkRG5kVG9TdG9yZVJlcXVlc3QodGhpcykpO1xuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5zdWJzY3JpYmUodGhpcy5fYnJvd3Nlci5kb2N1bWVudCk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgb25Qb2ludGVyRG93bihldmVudDogSVBvaW50ZXJFdmVudCk6IGJvb2xlYW4ge1xuICAgIGlmIChpc0RyYWdCbG9ja2VyKGV2ZW50LnRhcmdldEVsZW1lbnQpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgdGhpcy5fcmVzdWx0LmNsZWFyKCk7XG5cbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlPHZvaWQ+KG5ldyBJbml0aWFsaXplRHJhZ1NlcXVlbmNlUmVxdWVzdCgpKTtcblxuICAgIHRoaXMuX2JlZm9yZVBsdWdpbnMuZm9yRWFjaCgocCkgPT4gcC5vblBvaW50ZXJEb3duPy4oZXZlbnQpKTtcblxuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8dm9pZD4obmV3IEZTaW5nbGVTZWxlY3RSZXF1ZXN0KGV2ZW50LCB0aGlzLmZNdWx0aVNlbGVjdFRyaWdnZXIpKTtcblxuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8dm9pZD4oXG4gICAgICBuZXcgRlJlYXNzaWduQ29ubmVjdGlvblByZXBhcmF0aW9uUmVxdWVzdChldmVudCwgdGhpcy5mUmVhc3NpZ25Db25uZWN0aW9uVHJpZ2dlciksXG4gICAgKTtcblxuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8dm9pZD4oXG4gICAgICBuZXcgRkNyZWF0ZUNvbm5lY3Rpb25QcmVwYXJhdGlvblJlcXVlc3QoZXZlbnQsIHRoaXMuZkNyZWF0ZUNvbm5lY3Rpb25UcmlnZ2VyKSxcbiAgICApO1xuXG4gICAgdGhpcy5fYWZ0ZXJQbHVnaW5zLmZvckVhY2goKHApID0+IHAub25Qb2ludGVyRG93bj8uKGV2ZW50KSk7XG5cbiAgICBjb25zdCBpc01vdXNlTGVmdE9yVG91Y2ggPSBldmVudC5pc01vdXNlTGVmdEJ1dHRvbigpO1xuICAgIGlmICghaXNNb3VzZUxlZnRPclRvdWNoKSB7XG4gICAgICB0aGlzLmZpbmFsaXplRHJhZ1NlcXVlbmNlKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGlzTW91c2VMZWZ0T3JUb3VjaDtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBwcmVwYXJlRHJhZ1NlcXVlbmNlKGV2ZW50OiBJUG9pbnRlckV2ZW50KSB7XG4gICAgdGhpcy5fYmVmb3JlUGx1Z2lucy5mb3JFYWNoKChwKSA9PiBwLnByZXBhcmVEcmFnU2VxdWVuY2U/LihldmVudCkpO1xuXG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTx2b2lkPihuZXcgTm9kZVJlc2l6ZVByZXBhcmF0aW9uUmVxdWVzdChldmVudCwgdGhpcy5mTm9kZVJlc2l6ZVRyaWdnZXIpKTtcblxuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8dm9pZD4obmV3IEZOb2RlUm90YXRlUHJlcGFyYXRpb25SZXF1ZXN0KGV2ZW50LCB0aGlzLmZOb2RlUm90YXRlVHJpZ2dlcikpO1xuXG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTx2b2lkPihuZXcgRk5vZGVNb3ZlUHJlcGFyYXRpb25SZXF1ZXN0KGV2ZW50LCB0aGlzLmZOb2RlTW92ZVRyaWdnZXIpKTtcblxuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8dm9pZD4oXG4gICAgICBuZXcgRkV4dGVybmFsSXRlbVByZXBhcmF0aW9uUmVxdWVzdChldmVudCwgdGhpcy5mRXh0ZXJuYWxJdGVtVHJpZ2dlciksXG4gICAgKTtcblxuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8dm9pZD4obmV3IERyb3BUb0dyb3VwUHJlcGFyYXRpb25SZXF1ZXN0KGV2ZW50KSk7XG5cbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlPHZvaWQ+KG5ldyBGQ2FudmFzTW92ZVByZXBhcmF0aW9uUmVxdWVzdChldmVudCwgdGhpcy5mQ2FudmFzTW92ZVRyaWdnZXIpKTtcblxuICAgIHRoaXMuX2FmdGVyUGx1Z2lucy5mb3JFYWNoKChwKSA9PiBwLnByZXBhcmVEcmFnU2VxdWVuY2U/LihldmVudCkpO1xuXG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTx2b2lkPihuZXcgUHJlcGFyZURyYWdTZXF1ZW5jZVJlcXVlc3QoKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgb25TZWxlY3QoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTx2b2lkPihuZXcgUHJldmVudERlZmF1bHRJc0V4dGVybmFsSXRlbVJlcXVlc3QoZXZlbnQpKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvblBvaW50ZXJNb3ZlKGV2ZW50OiBJUG9pbnRlckV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTx2b2lkPihuZXcgT25Qb2ludGVyTW92ZVJlcXVlc3QoZXZlbnQpKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvblBvaW50ZXJVcChldmVudDogSVBvaW50ZXJFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuX2JlZm9yZVBsdWdpbnMuZm9yRWFjaCgoeCkgPT4geC5vblBvaW50ZXJVcD8uKGV2ZW50KSk7XG5cbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlPHZvaWQ+KG5ldyBGUmVhc3NpZ25Db25uZWN0aW9uRmluYWxpemVSZXF1ZXN0KGV2ZW50KSk7XG5cbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlPHZvaWQ+KG5ldyBGQ3JlYXRlQ29ubmVjdGlvbkZpbmFsaXplUmVxdWVzdChldmVudCkpO1xuXG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTx2b2lkPihuZXcgTm9kZVJlc2l6ZUZpbmFsaXplUmVxdWVzdChldmVudCkpO1xuXG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTx2b2lkPihuZXcgRk5vZGVSb3RhdGVGaW5hbGl6ZVJlcXVlc3QoZXZlbnQpKTtcblxuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8dm9pZD4obmV3IEZOb2RlTW92ZUZpbmFsaXplUmVxdWVzdChldmVudCkpO1xuXG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTx2b2lkPihuZXcgRkV4dGVybmFsSXRlbUZpbmFsaXplUmVxdWVzdChldmVudCkpO1xuXG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTx2b2lkPihuZXcgRHJvcFRvR3JvdXBGaW5hbGl6ZVJlcXVlc3QoZXZlbnQpKTtcblxuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8dm9pZD4obmV3IEZDYW52YXNNb3ZlRmluYWxpemVSZXF1ZXN0KGV2ZW50KSk7XG5cbiAgICB0aGlzLl9hZnRlclBsdWdpbnMuZm9yRWFjaCgoeCkgPT4geC5vblBvaW50ZXJVcD8uKGV2ZW50KSk7XG5cbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlPHZvaWQ+KG5ldyBFbmREcmFnU2VxdWVuY2VSZXF1ZXN0KCkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGZpbmFsaXplRHJhZ1NlcXVlbmNlKCk6IHZvaWQge1xuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8dm9pZD4obmV3IEVtaXRTZWxlY3Rpb25DaGFuZ2VFdmVudFJlcXVlc3QoKSk7XG5cbiAgICB0aGlzLl9yZXN1bHQuY2xlYXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlPHZvaWQ+KG5ldyBSZW1vdmVEbmRGcm9tU3RvcmVSZXF1ZXN0KCkpO1xuICAgIHN1cGVyLnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiJdfQ==
@@ -9,14 +9,14 @@ export class BaseConnectionDragHandler {
9
9
  _fOutputWithRect;
10
10
  _fInputWithRect;
11
11
  get _fOutput() {
12
- const result = this._store.fOutputs.find((x) => x.fId === this.fConnection.fOutputId);
12
+ const result = this._store.fOutputs.find((x) => x.fId() === this.fConnection.fOutputId());
13
13
  if (!result) {
14
14
  throw new Error(this._connectorNotFoundPrefix(`fOutput with id ${this.fConnection.fOutputId} not found`));
15
15
  }
16
16
  return result;
17
17
  }
18
18
  get _fInput() {
19
- const result = this._store.fInputs.find((x) => x.fId === this.fConnection.fInputId);
19
+ const result = this._store.fInputs.find((x) => x.fId() === this.fConnection.fInputId());
20
20
  if (!result) {
21
21
  throw new Error(this._connectorNotFoundPrefix(`fInput with id ${this.fConnection.fInputId} not found`));
22
22
  }
@@ -54,4 +54,4 @@ export class BaseConnectionDragHandler {
54
54
  return `ConnectionDragHandler Error: Connection From (fOutput)${this.fConnection.fOutputId} To (fInput)${this.fConnection.fInputId}. ${message}. Please ensure that all f-connections are associated with existing connectors`;
55
55
  }
56
56
  }
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jb25uZWN0aW9uLmRyYWctaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1ub2RlLW1vdmUvY29ubmVjdGlvbi1kcmFnLWhhbmRsZXJzL2Jhc2UtY29ubmVjdGlvbi5kcmFnLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixlQUFlLEVBQUUsV0FBVyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM3QyxPQUFPLEVBQ0wsd0NBQXdDLEVBQ3hDLDBCQUEwQixHQUUzQixNQUFNLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBSXRELE1BQU0sT0FBTyx5QkFBeUI7SUErQjNCO0lBN0JRLFNBQVMsQ0FBWTtJQUNyQixNQUFNLENBQW1CO0lBRWxDLGdCQUFnQixDQUFxQjtJQUNyQyxlQUFlLENBQXFCO0lBRTVDLElBQVksUUFBUTtRQUNsQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUUsQ0FBQztRQUN2RixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDWixNQUFNLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxtQkFBb0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFVLFlBQVksQ0FBQyxDQUFDLENBQUM7UUFDOUcsQ0FBQztRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxJQUFZLE9BQU87UUFDakIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1B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ZW50IjpbImltcG9ydCB7IElMaW5lLCBJUG9pbnQsIFBvaW50RXh0ZW5zaW9ucywgUm91bmRlZFJlY3QgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZNZWRpYXRvciB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHtcbiAgQ2FsY3VsYXRlQ29ubmVjdGlvbkxpbmVCeUJlaGF2aW9yUmVxdWVzdCxcbiAgR2V0Q29ubmVjdG9yQW5kUmVjdFJlcXVlc3QsXG4gIElDb25uZWN0b3JBbmRSZWN0LFxufSBmcm9tICcuLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgRkNvbm5lY3RvckJhc2UgfSBmcm9tICcuLi8uLi8uLi9mLWNvbm5lY3RvcnMnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGQ29ubmVjdGlvbkJhc2UgfSBmcm9tICcuLi8uLi8uLi9mLWNvbm5lY3Rpb24nO1xuaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGNsYXNzIEJhc2VDb25uZWN0aW9uRHJhZ0hhbmRsZXIge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX21lZGlhdG9yOiBGTWVkaWF0b3I7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3N0b3JlOiBGQ29tcG9uZW50c1N0b3JlO1xuXG4gIHByaXZhdGUgX2ZPdXRwdXRXaXRoUmVjdCE6IElDb25uZWN0b3JBbmRSZWN0O1xuICBwcml2YXRlIF9mSW5wdXRXaXRoUmVjdCE6IElDb25uZWN0b3JBbmRSZWN0O1xuXG4gIHByaXZhdGUgZ2V0IF9mT3V0cHV0KCk6IEZDb25uZWN0b3JCYXNlIHtcbiAgICBjb25zdCByZXN1bHQgPSB0aGlzLl9zdG9yZS5mT3V0cHV0cy5maW5kKCh4KSA9PiB4LmZJZCA9PT0gdGhpcy5mQ29ubmVjdGlvbi5mT3V0cHV0SWQpITtcbiAgICBpZiAoIXJlc3VsdCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKHRoaXMuX2Nvbm5lY3Rvck5vdEZvdW5kUHJlZml4KGBmT3V0cHV0IHdpdGggaWQgJHsgdGhpcy5mQ29ubmVjdGlvbi5mT3V0cHV0SWQgfSBub3QgZm91bmRgKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF9mSW5wdXQoKTogRkNvbm5lY3RvckJhc2Uge1xuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuX3N0b3JlLmZJbnB1dHMuZmluZCgoeCkgPT4geC5mSWQgPT09IHRoaXMuZkNvbm5lY3Rpb24uZklucHV0SWQpITtcbiAgICBpZiAoIXJlc3VsdCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKHRoaXMuX2Nvbm5lY3Rvck5vdEZvdW5kUHJlZml4KGBmSW5wdXQgd2l0aCBpZCAkeyB0aGlzLmZDb25uZWN0aW9uLmZJbnB1dElkIH0gbm90IGZvdW5kYCkpO1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBwcml2YXRlIF9zb3VyY2VEaWZmZXJlbmNlID0gUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoKTtcbiAgcHJpdmF0ZSBfdGFyZ2V0RGlmZmVyZW5jZSA9IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgX2luamVjdG9yOiBJbmplY3RvcixcbiAgICBwdWJsaWMgZkNvbm5lY3Rpb246IEZDb25uZWN0aW9uQmFzZSxcbiAgKSB7XG4gICAgdGhpcy5fbWVkaWF0b3IgPSBfaW5qZWN0b3IuZ2V0KEZNZWRpYXRvcik7XG4gICAgdGhpcy5fc3RvcmUgPSBfaW5qZWN0b3IuZ2V0KEZDb21wb25lbnRzU3RvcmUpO1xuICAgIHRoaXMuX2luaXRpYWxpemUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2luaXRpYWxpemUoKTogdm9pZCB7XG4gICAgdGhpcy5fZk91dHB1dFdpdGhSZWN0ID0gdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTxJQ29ubmVjdG9yQW5kUmVjdD4obmV3IEdldENvbm5lY3RvckFuZFJlY3RSZXF1ZXN0KHRoaXMuX2ZPdXRwdXQpKTtcbiAgICB0aGlzLl9mSW5wdXRXaXRoUmVjdCA9IHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8SUNvbm5lY3RvckFuZFJlY3Q+KG5ldyBHZXRDb25uZWN0b3JBbmRSZWN0UmVxdWVzdCh0aGlzLl9mSW5wdXQpKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRTb3VyY2VEaWZmZXJlbmNlKGRpZmZlcmVuY2U6IElQb2ludCk6IHZvaWQge1xuICAgIHRoaXMuX3NvdXJjZURpZmZlcmVuY2UgPSBkaWZmZXJlbmNlO1xuICB9XG5cbiAgcHVibGljIHNldFRhcmdldERpZmZlcmVuY2UoZGlmZmVyZW5jZTogSVBvaW50KTogdm9pZCB7XG4gICAgdGhpcy5fdGFyZ2V0RGlmZmVyZW5jZSA9IGRpZmZlcmVuY2U7XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVkcmF3KCk6IHZvaWQge1xuICAgIHRoaXMuX3JlZHJhd0Nvbm5lY3Rpb24odGhpcy5fcmVjYWxjdWxhdGVDb25uZWN0aW9uKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVjYWxjdWxhdGVDb25uZWN0aW9uKCk6IElMaW5lIHtcbiAgICByZXR1cm4gdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTxJTGluZT4obmV3IENhbGN1bGF0ZUNvbm5lY3Rpb25MaW5lQnlCZWhhdmlvclJlcXVlc3QoXG4gICAgICBSb3VuZGVkUmVjdC5mcm9tUm91bmRlZFJlY3QodGhpcy5fZk91dHB1dFdpdGhSZWN0LmZSZWN0KS5hZGRQb2ludCh0aGlzLl9zb3VyY2VEaWZmZXJlbmNlKSxcbiAgICAgIFJvdW5kZWRSZWN0LmZyb21Sb3VuZGVkUmVjdCh0aGlzLl9mSW5wdXRXaXRoUmVjdC5mUmVjdCkuYWRkUG9pbnQodGhpcy5fdGFyZ2V0RGlmZmVyZW5jZSksXG4gICAgICB0aGlzLmZDb25uZWN0aW9uLmZCZWhhdmlvcixcbiAgICAgIHRoaXMuX2ZPdXRwdXRXaXRoUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsXG4gICAgICB0aGlzLl9mSW5wdXRXaXRoUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsXG4gICAgKSk7XG4gIH1cblxuICBwcml2YXRlIF9yZWRyYXdDb25uZWN0aW9uKGxpbmU6IElMaW5lKTogdm9pZCB7XG4gICAgdGhpcy5mQ29ubmVjdGlvbi5zZXRMaW5lKFxuICAgICAgbGluZSxcbiAgICAgIHRoaXMuX2ZPdXRwdXRXaXRoUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsXG4gICAgICB0aGlzLl9mSW5wdXRXaXRoUmVjdC5mQ29ubmVjdG9yLmZDb25uZWN0YWJsZVNpZGUsXG4gICAgKTtcbiAgICB0aGlzLmZDb25uZWN0aW9uLnJlZHJhdygpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY29ubmVjdG9yTm90Rm91bmRQcmVmaXgobWVzc2FnZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYENvbm5lY3Rpb25EcmFnSGFuZGxlciBFcnJvcjogQ29ubmVjdGlvbiBGcm9tIChmT3V0cHV0KSR7IHRoaXMuZkNvbm5lY3Rpb24uZk91dHB1dElkIH0gVG8gKGZJbnB1dCkkeyB0aGlzLmZDb25uZWN0aW9uLmZJbnB1dElkIH0uICR7IG1lc3NhZ2UgfS4gUGxlYXNlIGVuc3VyZSB0aGF0IGFsbCBmLWNvbm5lY3Rpb25zIGFyZSBhc3NvY2lhdGVkIHdpdGggZXhpc3RpbmcgY29ubmVjdG9yc2A7XG4gIH1cbn1cbiJdfQ==
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jb25uZWN0aW9uLmRyYWctaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZi1ub2RlLW1vdmUvY29ubmVjdGlvbi1kcmFnLWhhbmRsZXJzL2Jhc2UtY29ubmVjdGlvbi5kcmFnLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixlQUFlLEVBQUUsV0FBVyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM3QyxPQUFPLEVBQ0wsd0NBQXdDLEVBQ3hDLDBCQUEwQixHQUUzQixNQUFNLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBSXRELE1BQU0sT0FBTyx5QkFBeUI7SUFrQzNCO0lBakNRLFNBQVMsQ0FBWTtJQUNyQixNQUFNLENBQW1CO0lBRWxDLGdCQUFnQixDQUFxQjtJQUNyQyxlQUFlLENBQXFCO0lBRTVDLElBQVksUUFBUTtRQUNsQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDMUYsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ1osTUFBTSxJQUFJLEtBQUssQ0FDYixJQUFJLENBQUMsd0JBQXdCLENBQUMsbUJBQW1CLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxZQUFZLENBQUMsQ0FDekYsQ0FBQztRQUNKLENBQUM7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQsSUFBWSxPQUFPO1FBQ2pCLE1BQU0sTUFBTSxHQUFHLElB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QztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUxpbmUsIElQb2ludCwgUG9pbnRFeHRlbnNpb25zLCBSb3VuZGVkUmVjdCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgRk1lZGlhdG9yIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQge1xuICBDYWxjdWxhdGVDb25uZWN0aW9uTGluZUJ5QmVoYXZpb3JSZXF1ZXN0LFxuICBHZXRDb25uZWN0b3JBbmRSZWN0UmVxdWVzdCxcbiAgSUNvbm5lY3RvckFuZFJlY3QsXG59IGZyb20gJy4uLy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBGQ29ubmVjdG9yQmFzZSB9IGZyb20gJy4uLy4uLy4uL2YtY29ubmVjdG9ycyc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZDb25uZWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uLy4uL2YtY29ubmVjdGlvbic7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgY2xhc3MgQmFzZUNvbm5lY3Rpb25EcmFnSGFuZGxlciB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX21lZGlhdG9yOiBGTWVkaWF0b3I7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3N0b3JlOiBGQ29tcG9uZW50c1N0b3JlO1xuXG4gIHByaXZhdGUgX2ZPdXRwdXRXaXRoUmVjdCE6IElDb25uZWN0b3JBbmRSZWN0O1xuICBwcml2YXRlIF9mSW5wdXRXaXRoUmVjdCE6IElDb25uZWN0b3JBbmRSZWN0O1xuXG4gIHByaXZhdGUgZ2V0IF9mT3V0cHV0KCk6IEZDb25uZWN0b3JCYXNlIHtcbiAgICBjb25zdCByZXN1bHQgPSB0aGlzLl9zdG9yZS5mT3V0cHV0cy5maW5kKCh4KSA9PiB4LmZJZCgpID09PSB0aGlzLmZDb25uZWN0aW9uLmZPdXRwdXRJZCgpKTtcbiAgICBpZiAoIXJlc3VsdCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICB0aGlzLl9jb25uZWN0b3JOb3RGb3VuZFByZWZpeChgZk91dHB1dCB3aXRoIGlkICR7dGhpcy5mQ29ubmVjdGlvbi5mT3V0cHV0SWR9IG5vdCBmb3VuZGApLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgX2ZJbnB1dCgpOiBGQ29ubmVjdG9yQmFzZSB7XG4gICAgY29uc3QgcmVzdWx0ID0gdGhpcy5fc3RvcmUuZklucHV0cy5maW5kKCh4KSA9PiB4LmZJZCgpID09PSB0aGlzLmZDb25uZWN0aW9uLmZJbnB1dElkKCkpO1xuICAgIGlmICghcmVzdWx0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIHRoaXMuX2Nvbm5lY3Rvck5vdEZvdW5kUHJlZml4KGBmSW5wdXQgd2l0aCBpZCAke3RoaXMuZkNvbm5lY3Rpb24uZklucHV0SWR9IG5vdCBmb3VuZGApLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHJpdmF0ZSBfc291cmNlRGlmZmVyZW5jZSA9IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCk7XG4gIHByaXZhdGUgX3RhcmdldERpZmZlcmVuY2UgPSBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHVibGljIGZDb25uZWN0aW9uOiBGQ29ubmVjdGlvbkJhc2UsXG4gICkge1xuICAgIHRoaXMuX21lZGlhdG9yID0gX2luamVjdG9yLmdldChGTWVkaWF0b3IpO1xuICAgIHRoaXMuX3N0b3JlID0gX2luamVjdG9yLmdldChGQ29tcG9uZW50c1N0b3JlKTtcbiAgICB0aGlzLl9pbml0aWFsaXplKCk7XG4gIH1cblxuICBwcml2YXRlIF9pbml0aWFsaXplKCk6IHZvaWQge1xuICAgIHRoaXMuX2ZPdXRwdXRXaXRoUmVjdCA9IHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8SUNvbm5lY3RvckFuZFJlY3Q+KFxuICAgICAgbmV3IEdldENvbm5lY3RvckFuZFJlY3RSZXF1ZXN0KHRoaXMuX2ZPdXRwdXQpLFxuICAgICk7XG4gICAgdGhpcy5fZklucHV0V2l0aFJlY3QgPSB0aGlzLl9tZWRpYXRvci5leGVjdXRlPElDb25uZWN0b3JBbmRSZWN0PihcbiAgICAgIG5ldyBHZXRDb25uZWN0b3JBbmRSZWN0UmVxdWVzdCh0aGlzLl9mSW5wdXQpLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgc2V0U291cmNlRGlmZmVyZW5jZShkaWZmZXJlbmNlOiBJUG9pbnQpOiB2b2lkIHtcbiAgICB0aGlzLl9zb3VyY2VEaWZmZXJlbmNlID0gZGlmZmVyZW5jZTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRUYXJnZXREaWZmZXJlbmNlKGRpZmZlcmVuY2U6IElQb2ludCk6IHZvaWQge1xuICAgIHRoaXMuX3RhcmdldERpZmZlcmVuY2UgPSBkaWZmZXJlbmNlO1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlZHJhdygpOiB2b2lkIHtcbiAgICB0aGlzLl9yZWRyYXdDb25uZWN0aW9uKHRoaXMuX3JlY2FsY3VsYXRlQ29ubmVjdGlvbigpKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlY2FsY3VsYXRlQ29ubmVjdGlvbigpOiBJTGluZSB7XG4gICAgcmV0dXJuIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGU8SUxpbmU+KFxuICAgICAgbmV3IENhbGN1bGF0ZUNvbm5lY3Rpb25MaW5lQnlCZWhhdmlvclJlcXVlc3QoXG4gICAgICAgIFJvdW5kZWRSZWN0LmZyb21Sb3VuZGVkUmVjdCh0aGlzLl9mT3V0cHV0V2l0aFJlY3QuZlJlY3QpLmFkZFBvaW50KHRoaXMuX3NvdXJjZURpZmZlcmVuY2UpLFxuICAgICAgICBSb3VuZGVkUmVjdC5mcm9tUm91bmRlZFJlY3QodGhpcy5fZklucHV0V2l0aFJlY3QuZlJlY3QpLmFkZFBvaW50KHRoaXMuX3RhcmdldERpZmZlcmVuY2UpLFxuICAgICAgICB0aGlzLmZDb25uZWN0aW9uLmZCZWhhdmlvcixcbiAgICAgICAgdGhpcy5fZk91dHB1dFdpdGhSZWN0LmZDb25uZWN0b3IuZkNvbm5lY3RhYmxlU2lkZSxcbiAgICAgICAgdGhpcy5fZklucHV0V2l0aFJlY3QuZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlLFxuICAgICAgKSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVkcmF3Q29ubmVjdGlvbihsaW5lOiBJTGluZSk6IHZvaWQge1xuICAgIHRoaXMuZkNvbm5lY3Rpb24uc2V0TGluZShcbiAgICAgIGxpbmUsXG4gICAgICB0aGlzLl9mT3V0cHV0V2l0aFJlY3QuZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlLFxuICAgICAgdGhpcy5fZklucHV0V2l0aFJlY3QuZkNvbm5lY3Rvci5mQ29ubmVjdGFibGVTaWRlLFxuICAgICk7XG4gICAgdGhpcy5mQ29ubmVjdGlvbi5yZWRyYXcoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2Nvbm5lY3Rvck5vdEZvdW5kUHJlZml4KG1lc3NhZ2U6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGBDb25uZWN0aW9uRHJhZ0hhbmRsZXIgRXJyb3I6IENvbm5lY3Rpb24gRnJvbSAoZk91dHB1dCkke3RoaXMuZkNvbm5lY3Rpb24uZk91dHB1dElkfSBUbyAoZklucHV0KSR7dGhpcy5mQ29ubmVjdGlvbi5mSW5wdXRJZH0uICR7bWVzc2FnZX0uIFBsZWFzZSBlbnN1cmUgdGhhdCBhbGwgZi1jb25uZWN0aW9ucyBhcmUgYXNzb2NpYXRlZCB3aXRoIGV4aXN0aW5nIGNvbm5lY3RvcnNgO1xuICB9XG59XG4iXX0=