@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,50 +1,43 @@
1
- import { Directive, Inject } from '@angular/core';
1
+ import { Directive, ElementRef, inject } from '@angular/core';
2
2
  import { F_CONNECTION_IDENTIFIERS } from '../f-connection-identifiers';
3
3
  import { F_CONNECTION } from '../f-connection.injection-token';
4
+ import { BrowserService } from '@foblex/platform';
4
5
  import * as i0 from "@angular/core";
5
- import * as i1 from "@foblex/platform";
6
6
  export class FConnectionTextPathDirective {
7
- elementReference;
8
- base;
9
- fBrowser;
7
+ hostElement = inject((ElementRef)).nativeElement;
8
+ _base = inject(F_CONNECTION);
9
+ _browser = inject(BrowserService);
10
10
  get linkToConnection() {
11
- return F_CONNECTION_IDENTIFIERS.linkToConnection(this.base.fId() + this.base.fOutputId + this.base.fInputId);
12
- }
13
- get hostElement() {
14
- return this.elementReference.nativeElement;
11
+ return F_CONNECTION_IDENTIFIERS.linkToConnection(this._base.fId() + this._base.fOutputId() + this._base.fInputId());
15
12
  }
16
13
  symbolWidth = 8;
17
14
  fontSize = '12px';
18
- constructor(elementReference, base, fBrowser) {
19
- this.elementReference = elementReference;
20
- this.base = base;
21
- this.fBrowser = fBrowser;
22
- }
23
15
  ngOnInit() {
24
16
  this.hostElement.setAttribute('text-anchor', `middle`);
25
- this.symbolWidth = this.getSymbolWidth(this.base.fText || '');
17
+ this.symbolWidth = this._getSymbolWidth(this._base.fText || '');
26
18
  }
27
19
  getBBox() {
28
20
  return this.hostElement.getBBox();
29
21
  }
30
22
  redraw() {
31
- this.hostElement.setAttribute('startOffset', this.base.fTextStartOffset || '50%');
23
+ this.hostElement.setAttribute('startOffset', this._base.fTextStartOffset || '50%');
32
24
  }
33
- getFontStyles(element) {
34
- const computedStyles = this.fBrowser.window.getComputedStyle(element);
25
+ _getFontStyles(element) {
26
+ const computedStyles = this._browser.window.getComputedStyle(element);
35
27
  return {
36
28
  fontSize: computedStyles.fontSize,
37
29
  fontFamily: computedStyles.fontFamily,
38
30
  };
39
31
  }
40
- getSymbolWidth(name) {
32
+ _getSymbolWidth(name) {
41
33
  const text = name || 'connection';
42
- const { fontFamily, fontSize } = this.getFontStyles(this.hostElement);
34
+ const { fontFamily, fontSize } = this._getFontStyles(this.hostElement);
43
35
  this.fontSize = fontSize || '12px';
44
- const canvas = this.fBrowser.document.createElement('canvas');
36
+ const canvas = this._browser.document.createElement('canvas');
45
37
  let context;
46
38
  try {
47
39
  context = canvas.getContext('2d');
40
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
48
41
  }
49
42
  catch (e) {
50
43
  context = null;
@@ -57,7 +50,7 @@ export class FConnectionTextPathDirective {
57
50
  const symbolWidth = metrics.width / text.length;
58
51
  return symbolWidth;
59
52
  }
60
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionTextPathDirective, deps: [{ token: i0.ElementRef }, { token: F_CONNECTION }, { token: i1.BrowserService }], target: i0.ɵɵFactoryTarget.Directive });
53
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionTextPathDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
61
54
  static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: FConnectionTextPathDirective, selector: "textPath[f-connection-text-path]", host: { properties: { "attr.href": "linkToConnection" } }, ngImport: i0 });
62
55
  }
63
56
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionTextPathDirective, decorators: [{
@@ -68,8 +61,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
68
61
  '[attr.href]': 'linkToConnection',
69
62
  },
70
63
  }]
71
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: undefined, decorators: [{
72
- type: Inject,
73
- args: [F_CONNECTION]
74
- }] }, { type: i1.BrowserService }] });
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLXRleHQtcGF0aC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9jb21tb24vZi1jb25uZWN0aW9uLXRleHQvZi1jb25uZWN0aW9uLXRleHQtcGF0aC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxNQUFNLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDdEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7QUFZL0QsTUFBTSxPQUFPLDRCQUE0QjtJQWdCM0I7SUFDc0I7SUFDdEI7SUFoQlosSUFBVyxnQkFBZ0I7UUFDekIsT0FBTyx3QkFBd0IsQ0FBQyxnQkFBZ0IsQ0FDOUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FDM0QsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUFXLFdBQVc7UUFDcEIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDO0lBQzdDLENBQUM7SUFFTSxXQUFXLEdBQVcsQ0FBQyxDQUFDO0lBQ3hCLFFBQVEsR0FBVyxNQUFNLENBQUM7SUFFakMsWUFDWSxnQkFBZ0QsRUFDMUIsSUFBK0MsRUFDckUsUUFBd0I7UUFGeEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFnQztRQUMxQixTQUFJLEdBQUosSUFBSSxDQUEyQztRQUNyRSxhQUFRLEdBQVIsUUFBUSxDQUFnQjtJQUVwQyxDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLGFBQWEsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUN2RCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVNLE9BQU87UUFDWixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVNLE1BQU07UUFDWCxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxLQUFLLENBQUMsQ0FBQztJQUNwRixDQUFDO0lBRU8sYUFBYSxDQUFDLE9BQTJCO1FBQy9DLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXRFLE9BQU87WUFDTCxRQUFRLEVBQUUsY0FBYyxDQUFDLFFBQVE7WUFDakMsVUFBVSxFQUFFLGNBQWMsQ0FBQyxVQUFVO1NBQ3RDLENBQUM7SUFDSixDQUFDO0lBRU8sY0FBYyxDQUFDLElBQVk7UUFDakMsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLFlBQVksQ0FBQztRQUNsQyxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3RFLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxJQUFJLE1BQU0sQ0FBQztRQUNuQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDOUQsSUFBSSxPQUFPLENBQUM7UUFFWixJQUFJLENBQUM7WUFDSCxPQUFPLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNwQyxDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDakIsQ0FBQztRQUNELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNiLE9BQU8sQ0FBQyxDQUFDO1FBQ1gsQ0FBQztRQUVELE9BQU8sQ0FBQyxJQUFJLEdBQUcsR0FBSSxRQUFTLElBQUssVUFBVyxFQUFFLENBQUM7UUFFL0MsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxQyxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFFaEQsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQzt3R0FsRVUsNEJBQTRCLDRDQWlCM0IsWUFBWTs0RkFqQmIsNEJBQTRCOzs0RkFBNUIsNEJBQTRCO2tCQU54QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxrQ0FBa0M7b0JBQzVDLElBQUksRUFBRTt3QkFDSixhQUFhLEVBQUUsa0JBQWtCO3FCQUNsQztpQkFDRjs7MEJBa0JNLE1BQU07MkJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5qZWN0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZfQ09OTkVDVElPTl9JREVOVElGSUVSUyB9IGZyb20gJy4uL2YtY29ubmVjdGlvbi1pZGVudGlmaWVycyc7XG5pbXBvcnQgeyBGX0NPTk5FQ1RJT04gfSBmcm9tICcuLi9mLWNvbm5lY3Rpb24uaW5qZWN0aW9uLXRva2VuJztcbmltcG9ydCB7IElIYXNDb25uZWN0aW9uVGV4dCB9IGZyb20gJy4uL2ktaGFzLWNvbm5lY3Rpb24tdGV4dCc7XG5pbXBvcnQgeyBJSGFzQ29ubmVjdGlvbkZyb21UbyB9IGZyb20gJy4uL2ktaGFzLWNvbm5lY3Rpb24tZnJvbS10byc7XG5pbXBvcnQgeyBCcm93c2VyU2VydmljZSB9IGZyb20gJ0Bmb2JsZXgvcGxhdGZvcm0nO1xuaW1wb3J0IHsgSUhhc0hvc3RFbGVtZW50IH0gZnJvbSAnLi4vLi4vLi4vaS1oYXMtaG9zdC1lbGVtZW50JztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAndGV4dFBhdGhbZi1jb25uZWN0aW9uLXRleHQtcGF0aF0nLFxuICBob3N0OiB7XG4gICAgJ1thdHRyLmhyZWZdJzogJ2xpbmtUb0Nvbm5lY3Rpb24nLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBGQ29ubmVjdGlvblRleHRQYXRoRGlyZWN0aXZlIGltcGxlbWVudHMgSUhhc0hvc3RFbGVtZW50LCBPbkluaXQge1xuXG4gIHB1YmxpYyBnZXQgbGlua1RvQ29ubmVjdGlvbigpOiBzdHJpbmcge1xuICAgIHJldHVybiBGX0NPTk5FQ1RJT05fSURFTlRJRklFUlMubGlua1RvQ29ubmVjdGlvbihcbiAgICAgIHRoaXMuYmFzZS5mSWQoKSArIHRoaXMuYmFzZS5mT3V0cHV0SWQgKyB0aGlzLmJhc2UuZklucHV0SWQsXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaG9zdEVsZW1lbnQoKTogU1ZHVGV4dFBhdGhFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmZXJlbmNlLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBwdWJsaWMgc3ltYm9sV2lkdGg6IG51bWJlciA9IDg7XG4gIHB1YmxpYyBmb250U2l6ZTogc3RyaW5nID0gJzEycHgnO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBlbGVtZW50UmVmZXJlbmNlOiBFbGVtZW50UmVmPFNWR1RleHRQYXRoRWxlbWVudD4sXG4gICAgICBASW5qZWN0KEZfQ09OTkVDVElPTikgcHJpdmF0ZSBiYXNlOiBJSGFzQ29ubmVjdGlvblRleHQgJiBJSGFzQ29ubmVjdGlvbkZyb21UbyxcbiAgICAgIHByaXZhdGUgZkJyb3dzZXI6IEJyb3dzZXJTZXJ2aWNlLFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmhvc3RFbGVtZW50LnNldEF0dHJpYnV0ZSgndGV4dC1hbmNob3InLCBgbWlkZGxlYCk7XG4gICAgdGhpcy5zeW1ib2xXaWR0aCA9IHRoaXMuZ2V0U3ltYm9sV2lkdGgodGhpcy5iYXNlLmZUZXh0IHx8ICcnKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRCQm94KCk6IERPTVJlY3Qge1xuICAgIHJldHVybiB0aGlzLmhvc3RFbGVtZW50LmdldEJCb3goKTtcbiAgfVxuXG4gIHB1YmxpYyByZWRyYXcoKTogdm9pZCB7XG4gICAgdGhpcy5ob3N0RWxlbWVudC5zZXRBdHRyaWJ1dGUoJ3N0YXJ0T2Zmc2V0JywgdGhpcy5iYXNlLmZUZXh0U3RhcnRPZmZzZXQgfHwgJzUwJScpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGb250U3R5bGVzKGVsZW1lbnQ6IFNWR1RleHRQYXRoRWxlbWVudCk6IHsgZm9udFNpemU6IHN0cmluZywgZm9udEZhbWlseTogc3RyaW5nIH0ge1xuICAgIGNvbnN0IGNvbXB1dGVkU3R5bGVzID0gdGhpcy5mQnJvd3Nlci53aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KTtcblxuICAgIHJldHVybiB7XG4gICAgICBmb250U2l6ZTogY29tcHV0ZWRTdHlsZXMuZm9udFNpemUsXG4gICAgICBmb250RmFtaWx5OiBjb21wdXRlZFN0eWxlcy5mb250RmFtaWx5LFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGdldFN5bWJvbFdpZHRoKG5hbWU6IHN0cmluZyk6IG51bWJlciB7XG4gICAgY29uc3QgdGV4dCA9IG5hbWUgfHwgJ2Nvbm5lY3Rpb24nO1xuICAgIGNvbnN0IHsgZm9udEZhbWlseSwgZm9udFNpemUgfSA9IHRoaXMuZ2V0Rm9udFN0eWxlcyh0aGlzLmhvc3RFbGVtZW50KTtcbiAgICB0aGlzLmZvbnRTaXplID0gZm9udFNpemUgfHwgJzEycHgnO1xuICAgIGNvbnN0IGNhbnZhcyA9IHRoaXMuZkJyb3dzZXIuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7XG4gICAgbGV0IGNvbnRleHQ7XG5cbiAgICB0cnkge1xuICAgICAgY29udGV4dCA9IGNhbnZhcy5nZXRDb250ZXh0KCcyZCcpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnRleHQgPSBudWxsO1xuICAgIH1cbiAgICBpZiAoIWNvbnRleHQpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cblxuICAgIGNvbnRleHQuZm9udCA9IGAkeyBmb250U2l6ZSB9ICR7IGZvbnRGYW1pbHkgfWA7XG5cbiAgICBjb25zdCBtZXRyaWNzID0gY29udGV4dC5tZWFzdXJlVGV4dCh0ZXh0KTtcbiAgICBjb25zdCBzeW1ib2xXaWR0aCA9IG1ldHJpY3Mud2lkdGggLyB0ZXh0Lmxlbmd0aDtcblxuICAgIHJldHVybiBzeW1ib2xXaWR0aDtcbiAgfVxufVxuXG4iXX0=
64
+ }] });
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLXRleHQtcGF0aC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9jb21tb24vZi1jb25uZWN0aW9uLXRleHQvZi1jb25uZWN0aW9uLXRleHQtcGF0aC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3RFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUcvRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBU2xELE1BQU0sT0FBTyw0QkFBNEI7SUFDdkIsV0FBVyxHQUFHLE1BQU0sQ0FBQyxDQUFBLFVBQThCLENBQUEsQ0FBQyxDQUFDLGFBQWEsQ0FBQztJQUNsRSxLQUFLLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBOEMsQ0FBQztJQUMxRSxRQUFRLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBRW5ELElBQVcsZ0JBQWdCO1FBQ3pCLE9BQU8sd0JBQXdCLENBQUMsZ0JBQWdCLENBQzlDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUNsRSxDQUFDO0lBQ0osQ0FBQztJQUVNLFdBQVcsR0FBVyxDQUFDLENBQUM7SUFDeEIsUUFBUSxHQUFXLE1BQU0sQ0FBQztJQUUxQixRQUFRO1FBQ2IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRU0sT0FBTztRQUNaLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRU0sTUFBTTtRQUNYLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixJQUFJLEtBQUssQ0FBQyxDQUFDO0lBQ3JGLENBQUM7SUFFTyxjQUFjLENBQUMsT0FBMkI7UUFDaEQsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFdEUsT0FBTztZQUNMLFFBQVEsRUFBRSxjQUFjLENBQUMsUUFBUTtZQUNqQyxVQUFVLEVBQUUsY0FBYyxDQUFDLFVBQVU7U0FDdEMsQ0FBQztJQUNKLENBQUM7SUFFTyxlQUFlLENBQUMsSUFBWTtRQUNsQyxNQUFNLElBQUksR0FBRyxJQUFJLElBQUksWUFBWSxDQUFDO1FBQ2xDLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDdkUsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLElBQUksTUFBTSxDQUFDO1FBQ25DLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM5RCxJQUFJLE9BQU8sQ0FBQztRQUVaLElBQUksQ0FBQztZQUNILE9BQU8sR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2xDLDZEQUE2RDtRQUMvRCxDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDakIsQ0FBQztRQUNELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNiLE9BQU8sQ0FBQyxDQUFDO1FBQ1gsQ0FBQztRQUVELE9BQU8sQ0FBQyxJQUFJLEdBQUcsR0FBRyxRQUFRLElBQUksVUFBVSxFQUFFLENBQUM7UUFFM0MsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxQyxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFFaEQsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQzt3R0EzRFUsNEJBQTRCOzRGQUE1Qiw0QkFBNEI7OzRGQUE1Qiw0QkFBNEI7a0JBTnhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGtDQUFrQztvQkFDNUMsSUFBSSxFQUFFO3dCQUNKLGFBQWEsRUFBRSxrQkFBa0I7cUJBQ2xDO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBpbmplY3QsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRl9DT05ORUNUSU9OX0lERU5USUZJRVJTIH0gZnJvbSAnLi4vZi1jb25uZWN0aW9uLWlkZW50aWZpZXJzJztcbmltcG9ydCB7IEZfQ09OTkVDVElPTiB9IGZyb20gJy4uL2YtY29ubmVjdGlvbi5pbmplY3Rpb24tdG9rZW4nO1xuaW1wb3J0IHsgSUhhc0Nvbm5lY3Rpb25UZXh0IH0gZnJvbSAnLi4vaS1oYXMtY29ubmVjdGlvbi10ZXh0JztcbmltcG9ydCB7IElIYXNDb25uZWN0aW9uRnJvbVRvIH0gZnJvbSAnLi4vaS1oYXMtY29ubmVjdGlvbi1mcm9tLXRvJztcbmltcG9ydCB7IEJyb3dzZXJTZXJ2aWNlIH0gZnJvbSAnQGZvYmxleC9wbGF0Zm9ybSc7XG5pbXBvcnQgeyBJSGFzSG9zdEVsZW1lbnQgfSBmcm9tICcuLi8uLi8uLi9pLWhhcy1ob3N0LWVsZW1lbnQnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICd0ZXh0UGF0aFtmLWNvbm5lY3Rpb24tdGV4dC1wYXRoXScsXG4gIGhvc3Q6IHtcbiAgICAnW2F0dHIuaHJlZl0nOiAnbGlua1RvQ29ubmVjdGlvbicsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIEZDb25uZWN0aW9uVGV4dFBhdGhEaXJlY3RpdmUgaW1wbGVtZW50cyBJSGFzSG9zdEVsZW1lbnQsIE9uSW5pdCB7XG4gIHB1YmxpYyByZWFkb25seSBob3N0RWxlbWVudCA9IGluamVjdChFbGVtZW50UmVmPFNWR1RleHRQYXRoRWxlbWVudD4pLm5hdGl2ZUVsZW1lbnQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Jhc2UgPSBpbmplY3QoRl9DT05ORUNUSU9OKSBhcyBJSGFzQ29ubmVjdGlvblRleHQgJiBJSGFzQ29ubmVjdGlvbkZyb21UbztcbiAgcHJpdmF0ZSByZWFkb25seSBfYnJvd3NlciA9IGluamVjdChCcm93c2VyU2VydmljZSk7XG5cbiAgcHVibGljIGdldCBsaW5rVG9Db25uZWN0aW9uKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIEZfQ09OTkVDVElPTl9JREVOVElGSUVSUy5saW5rVG9Db25uZWN0aW9uKFxuICAgICAgdGhpcy5fYmFzZS5mSWQoKSArIHRoaXMuX2Jhc2UuZk91dHB1dElkKCkgKyB0aGlzLl9iYXNlLmZJbnB1dElkKCksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBzeW1ib2xXaWR0aDogbnVtYmVyID0gODtcbiAgcHVibGljIGZvbnRTaXplOiBzdHJpbmcgPSAnMTJweCc7XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaG9zdEVsZW1lbnQuc2V0QXR0cmlidXRlKCd0ZXh0LWFuY2hvcicsIGBtaWRkbGVgKTtcbiAgICB0aGlzLnN5bWJvbFdpZHRoID0gdGhpcy5fZ2V0U3ltYm9sV2lkdGgodGhpcy5fYmFzZS5mVGV4dCB8fCAnJyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0QkJveCgpOiBET01SZWN0IHtcbiAgICByZXR1cm4gdGhpcy5ob3N0RWxlbWVudC5nZXRCQm94KCk7XG4gIH1cblxuICBwdWJsaWMgcmVkcmF3KCk6IHZvaWQge1xuICAgIHRoaXMuaG9zdEVsZW1lbnQuc2V0QXR0cmlidXRlKCdzdGFydE9mZnNldCcsIHRoaXMuX2Jhc2UuZlRleHRTdGFydE9mZnNldCB8fCAnNTAlJyk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRGb250U3R5bGVzKGVsZW1lbnQ6IFNWR1RleHRQYXRoRWxlbWVudCk6IHsgZm9udFNpemU6IHN0cmluZzsgZm9udEZhbWlseTogc3RyaW5nIH0ge1xuICAgIGNvbnN0IGNvbXB1dGVkU3R5bGVzID0gdGhpcy5fYnJvd3Nlci53aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KTtcblxuICAgIHJldHVybiB7XG4gICAgICBmb250U2l6ZTogY29tcHV0ZWRTdHlsZXMuZm9udFNpemUsXG4gICAgICBmb250RmFtaWx5OiBjb21wdXRlZFN0eWxlcy5mb250RmFtaWx5LFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIF9nZXRTeW1ib2xXaWR0aChuYW1lOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIGNvbnN0IHRleHQgPSBuYW1lIHx8ICdjb25uZWN0aW9uJztcbiAgICBjb25zdCB7IGZvbnRGYW1pbHksIGZvbnRTaXplIH0gPSB0aGlzLl9nZXRGb250U3R5bGVzKHRoaXMuaG9zdEVsZW1lbnQpO1xuICAgIHRoaXMuZm9udFNpemUgPSBmb250U2l6ZSB8fCAnMTJweCc7XG4gICAgY29uc3QgY2FudmFzID0gdGhpcy5fYnJvd3Nlci5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTtcbiAgICBsZXQgY29udGV4dDtcblxuICAgIHRyeSB7XG4gICAgICBjb250ZXh0ID0gY2FudmFzLmdldENvbnRleHQoJzJkJyk7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgY29udGV4dCA9IG51bGw7XG4gICAgfVxuICAgIGlmICghY29udGV4dCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuXG4gICAgY29udGV4dC5mb250ID0gYCR7Zm9udFNpemV9ICR7Zm9udEZhbWlseX1gO1xuXG4gICAgY29uc3QgbWV0cmljcyA9IGNvbnRleHQubWVhc3VyZVRleHQodGV4dCk7XG4gICAgY29uc3Qgc3ltYm9sV2lkdGggPSBtZXRyaWNzLndpZHRoIC8gdGV4dC5sZW5ndGg7XG5cbiAgICByZXR1cm4gc3ltYm9sV2lkdGg7XG4gIH1cbn1cbiJdfQ==
@@ -1,4 +1,4 @@
1
- import { ChangeDetectionStrategy, Component, Inject, ViewChild, } from "@angular/core";
1
+ import { ChangeDetectionStrategy, Component, ElementRef, inject, viewChild } from '@angular/core';
2
2
  import { PointExtensions } from '@foblex/2d';
3
3
  import { FConnectionTextPathDirective } from './f-connection-text-path.directive';
4
4
  import { F_CONNECTION_IDENTIFIERS } from '../f-connection-identifiers';
@@ -7,31 +7,24 @@ import { CONNECTION_TEXT } from './i-connection-text';
7
7
  import * as i0 from "@angular/core";
8
8
  import * as i1 from "./f-connection-text-path.directive";
9
9
  export class FConnectionTextComponent {
10
- elementReference;
11
- base;
10
+ hostElement = inject((ElementRef)).nativeElement;
11
+ _base = inject(F_CONNECTION);
12
+ _textPathDirective = viewChild.required(FConnectionTextPathDirective);
12
13
  get textId() {
13
- return F_CONNECTION_IDENTIFIERS.textId(this.base.fId() + this.base.fOutputId + this.base.fInputId);
14
- }
15
- get hostElement() {
16
- return this.elementReference.nativeElement;
14
+ return F_CONNECTION_IDENTIFIERS.textId(this._base.fId() + this._base.fOutputId() + this._base.fInputId());
17
15
  }
18
16
  get text() {
19
- return this.base.fText || '';
20
- }
21
- textPathDirective;
22
- constructor(elementReference, base) {
23
- this.elementReference = elementReference;
24
- this.base = base;
17
+ return this._base.fText || '';
25
18
  }
26
19
  redraw(line) {
27
- this.textPathDirective.redraw();
28
- const isTextReverse = FConnectionTextComponent.isTextReverse(line);
29
- const dyValue = this.calculateDy(this.textPathDirective.fontSize, isTextReverse);
20
+ this._textPathDirective().redraw();
21
+ const isTextReverse = FConnectionTextComponent._isTextReverse(line);
22
+ const dyValue = this._calculateDy(this._textPathDirective().fontSize, isTextReverse);
30
23
  this.hostElement.setAttribute('dy', dyValue);
31
- const textRect = this.textPathDirective.getBBox();
24
+ const textRect = this._textPathDirective().getBBox();
32
25
  const textRectCenter = [textRect.x + textRect.width / 2, textRect.y + textRect.height / 2];
33
26
  this.hostElement.setAttribute('transform', isTextReverse ? `rotate(180, ${textRectCenter})` : '');
34
- const startOffset = FConnectionTextComponent.getTextStartOffset(line, this.base.fText || '', this.textPathDirective.symbolWidth);
27
+ const startOffset = FConnectionTextComponent._getTextStartOffset(line, this._base.fText || '', this._textPathDirective().symbolWidth);
35
28
  if (startOffset < 0) {
36
29
  this.hostElement.style.display = 'none';
37
30
  }
@@ -39,32 +32,26 @@ export class FConnectionTextComponent {
39
32
  this.hostElement.style.display = 'unset';
40
33
  }
41
34
  }
42
- calculateDy(fontSize, isTextReverse) {
35
+ _calculateDy(fontSize, isTextReverse) {
43
36
  const fontSizeNumber = parseFloat(fontSize);
44
37
  const dyValue = isTextReverse ? fontSizeNumber * 1.5 : fontSizeNumber * -0.8;
45
38
  return dyValue.toString();
46
39
  }
47
- static isTextReverse(line) {
40
+ static _isTextReverse(line) {
48
41
  return line.point1.x > line.point2.x;
49
42
  }
50
- static getTextStartOffset(line, name, symbolWidth) {
43
+ static _getTextStartOffset(line, name, symbolWidth) {
51
44
  const vectorLength = PointExtensions.hypotenuse(line.point1, line.point2);
52
45
  return vectorLength / 2 - ((name || '').length * symbolWidth) / 2;
53
46
  }
54
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionTextComponent, deps: [{ token: i0.ElementRef }, { token: F_CONNECTION }], target: i0.ɵɵFactoryTarget.Component });
55
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FConnectionTextComponent, selector: "text[f-connection-text]", host: { properties: { "attr.id": "textId" }, classAttribute: "f-component f-connection-text" }, providers: [{ provide: CONNECTION_TEXT, useExisting: FConnectionTextComponent }], viewQueries: [{ propertyName: "textPathDirective", first: true, predicate: FConnectionTextPathDirective, descendants: true, static: true }], ngImport: i0, template: "<ng-container xmlns:svg=\"http://www.w3.org/2000/svg\">\n <svg:textPath f-connection-text-path>\n {{ text }}\n </svg:textPath>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i1.FConnectionTextPathDirective, selector: "textPath[f-connection-text-path]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
47
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
48
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.13", type: FConnectionTextComponent, selector: "text[f-connection-text]", host: { properties: { "attr.id": "textId" }, classAttribute: "f-component f-connection-text" }, providers: [{ provide: CONNECTION_TEXT, useExisting: FConnectionTextComponent }], viewQueries: [{ propertyName: "_textPathDirective", first: true, predicate: FConnectionTextPathDirective, descendants: true, isSignal: true }], ngImport: i0, template: "<ng-container xmlns:svg=\"http://www.w3.org/2000/svg\">\n <svg:textPath f-connection-text-path>\n {{ text }}\n </svg:textPath>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i1.FConnectionTextPathDirective, selector: "textPath[f-connection-text-path]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
56
49
  }
57
50
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionTextComponent, decorators: [{
58
51
  type: Component,
59
- args: [{ selector: "text[f-connection-text]", changeDetection: ChangeDetectionStrategy.OnPush, host: {
60
- class: "f-component f-connection-text",
52
+ args: [{ selector: 'text[f-connection-text]', changeDetection: ChangeDetectionStrategy.OnPush, host: {
53
+ class: 'f-component f-connection-text',
61
54
  '[attr.id]': 'textId',
62
55
  }, providers: [{ provide: CONNECTION_TEXT, useExisting: FConnectionTextComponent }], template: "<ng-container xmlns:svg=\"http://www.w3.org/2000/svg\">\n <svg:textPath f-connection-text-path>\n {{ text }}\n </svg:textPath>\n</ng-container>\n" }]
63
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: undefined, decorators: [{
64
- type: Inject,
65
- args: [F_CONNECTION]
66
- }] }], propDecorators: { textPathDirective: [{
67
- type: ViewChild,
68
- args: [FConnectionTextPathDirective, { static: true }]
69
- }] } });
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLXRleHQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24vY29tbW9uL2YtY29ubmVjdGlvbi10ZXh0L2YtY29ubmVjdGlvbi10ZXh0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uL2NvbW1vbi9mLWNvbm5lY3Rpb24tdGV4dC9mLWNvbm5lY3Rpb24tdGV4dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFBYyxNQUFNLEVBQUUsU0FBUyxHQUN6QyxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQVMsZUFBZSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3BELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBR3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFtQixNQUFNLHFCQUFxQixDQUFDOzs7QUFZdkUsTUFBTSxPQUFPLHdCQUF3QjtJQW9CdkI7SUFDc0I7SUFuQmxDLElBQVcsTUFBTTtRQUNmLE9BQU8sd0JBQXdCLENBQUMsTUFBTSxDQUNwQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUMzRCxDQUFDO0lBQ0osQ0FBQztJQUVELElBQVcsV0FBVztRQUNwQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7SUFDN0MsQ0FBQztJQUVELElBQVcsSUFBSTtR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d0I7a0JBVnBDLFNBQVM7K0JBQ0UseUJBQXlCLG1CQUVsQix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNKLEtBQUssRUFBRSwrQkFBK0I7d0JBQ3RDLFdBQVcsRUFBRSxRQUFRO3FCQUN0QixhQUNVLENBQUUsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsMEJBQTBCLEVBQUUsQ0FBRTs7MEJBdUI3RSxNQUFNOzJCQUFDLFlBQVk7eUNBSmpCLGlCQUFpQjtzQkFEdkIsU0FBUzt1QkFBQyw0QkFBNEIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbmplY3QsIFZpZXdDaGlsZCxcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IElMaW5lLCBQb2ludEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZDb25uZWN0aW9uVGV4dFBhdGhEaXJlY3RpdmUgfSBmcm9tICcuL2YtY29ubmVjdGlvbi10ZXh0LXBhdGguZGlyZWN0aXZlJztcbmltcG9ydCB7IEZfQ09OTkVDVElPTl9JREVOVElGSUVSUyB9IGZyb20gJy4uL2YtY29ubmVjdGlvbi1pZGVudGlmaWVycyc7XG5pbXBvcnQgeyBJSGFzQ29ubmVjdGlvblRleHQgfSBmcm9tICcuLi9pLWhhcy1jb25uZWN0aW9uLXRleHQnO1xuaW1wb3J0IHsgSUhhc0Nvbm5lY3Rpb25Gcm9tVG8gfSBmcm9tICcuLi9pLWhhcy1jb25uZWN0aW9uLWZyb20tdG8nO1xuaW1wb3J0IHsgRl9DT05ORUNUSU9OIH0gZnJvbSAnLi4vZi1jb25uZWN0aW9uLmluamVjdGlvbi10b2tlbic7XG5pbXBvcnQgeyBDT05ORUNUSU9OX1RFWFQsIElDb25uZWN0aW9uVGV4dCB9IGZyb20gJy4vaS1jb25uZWN0aW9uLXRleHQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwidGV4dFtmLWNvbm5lY3Rpb24tdGV4dF1cIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9mLWNvbm5lY3Rpb24tdGV4dC5jb21wb25lbnQuaHRtbFwiLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiBcImYtY29tcG9uZW50IGYtY29ubmVjdGlvbi10ZXh0XCIsXG4gICAgJ1thdHRyLmlkXSc6ICd0ZXh0SWQnLFxuICB9LFxuICBwcm92aWRlcnM6IFsgeyBwcm92aWRlOiBDT05ORUNUSU9OX1RFWFQsIHVzZUV4aXN0aW5nOiBGQ29ubmVjdGlvblRleHRDb21wb25lbnQgfSBdLFxufSlcbmV4cG9ydCBjbGFzcyBGQ29ubmVjdGlvblRleHRDb21wb25lbnQgaW1wbGVtZW50cyBJQ29ubmVjdGlvblRleHQge1xuXG4gIHB1YmxpYyBnZXQgdGV4dElkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIEZfQ09OTkVDVElPTl9JREVOVElGSUVSUy50ZXh0SWQoXG4gICAgICB0aGlzLmJhc2UuZklkKCkgKyB0aGlzLmJhc2UuZk91dHB1dElkICsgdGhpcy5iYXNlLmZJbnB1dElkLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhvc3RFbGVtZW50KCk6IFNWR1RleHRFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmZXJlbmNlLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHRleHQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5iYXNlLmZUZXh0IHx8ICcnO1xuICB9XG5cbiAgQFZpZXdDaGlsZChGQ29ubmVjdGlvblRleHRQYXRoRGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwdWJsaWMgdGV4dFBhdGhEaXJlY3RpdmUhOiBGQ29ubmVjdGlvblRleHRQYXRoRGlyZWN0aXZlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBlbGVtZW50UmVmZXJlbmNlOiBFbGVtZW50UmVmPFNWR1RleHRFbGVtZW50PixcbiAgICAgIEBJbmplY3QoRl9DT05ORUNUSU9OKSBwcml2YXRlIGJhc2U6IElIYXNDb25uZWN0aW9uVGV4dCAmIElIYXNDb25uZWN0aW9uRnJvbVRvLFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyByZWRyYXcobGluZTogSUxpbmUpOiB2b2lkIHtcbiAgICB0aGlzLnRleHRQYXRoRGlyZWN0aXZlLnJlZHJhdygpO1xuICAgIGNvbnN0IGlzVGV4dFJldmVyc2U6IGJvb2xlYW4gPSBGQ29ubmVjdGlvblRleHRDb21wb25lbnQuaXNUZXh0UmV2ZXJzZShsaW5lKTtcbiAgICBjb25zdCBkeVZhbHVlID0gdGhpcy5jYWxjdWxhdGVEeSh0aGlzLnRleHRQYXRoRGlyZWN0aXZlLmZvbnRTaXplLCBpc1RleHRSZXZlcnNlKTtcblxuICAgIHRoaXMuaG9zdEVsZW1lbnQuc2V0QXR0cmlidXRlKCdkeScsIGR5VmFsdWUpO1xuXG4gICAgY29uc3QgdGV4dFJlY3QgPSB0aGlzLnRleHRQYXRoRGlyZWN0aXZlLmdldEJCb3goKTtcbiAgICBjb25zdCB0ZXh0UmVjdENlbnRlciA9IFsgdGV4dFJlY3QueCArIHRleHRSZWN0LndpZHRoIC8gMiwgdGV4dFJlY3QueSArIHRleHRSZWN0LmhlaWdodCAvIDIgXTtcbiAgICB0aGlzLmhvc3RFbGVtZW50LnNldEF0dHJpYnV0ZSgndHJhbnNmb3JtJywgaXNUZXh0UmV2ZXJzZSA/IGByb3RhdGUoMTgwLCAkeyB0ZXh0UmVjdENlbnRlciB9KWAgOiAnJyk7XG4gICAgY29uc3Qgc3RhcnRPZmZzZXQgPSBGQ29ubmVjdGlvblRleHRDb21wb25lbnQuZ2V0VGV4dFN0YXJ0T2Zmc2V0KGxpbmUsIHRoaXMuYmFzZS5mVGV4dCB8fCAnJywgdGhpcy50ZXh0UGF0aERpcmVjdGl2ZS5zeW1ib2xXaWR0aCk7XG4gICAgaWYgKHN0YXJ0T2Zmc2V0IDwgMCkge1xuXG4gICAgICB0aGlzLmhvc3RFbGVtZW50LnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG4gICAgfSBlbHNlIHtcblxuICAgICAgdGhpcy5ob3N0RWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gJ3Vuc2V0JztcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNhbGN1bGF0ZUR5KGZvbnRTaXplOiBzdHJpbmcsIGlzVGV4dFJldmVyc2U6IGJvb2xlYW4pOiBzdHJpbmcge1xuICAgIGNvbnN0IGZvbnRTaXplTnVtYmVyID0gcGFyc2VGbG9hdChmb250U2l6ZSk7XG5cbiAgICBjb25zdCBkeVZhbHVlID0gaXNUZXh0UmV2ZXJzZSA/IGZvbnRTaXplTnVtYmVyICogMS41IDogZm9udFNpemVOdW1iZXIgKiAtMC44O1xuXG4gICAgcmV0dXJuIGR5VmFsdWUudG9TdHJpbmcoKTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIGlzVGV4dFJldmVyc2UobGluZTogSUxpbmUpOiBib29sZWFuIHtcbiAgICByZXR1cm4gbGluZS5wb2ludDEueCA+IGxpbmUucG9pbnQyLng7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBnZXRUZXh0U3RhcnRPZmZzZXQobGluZTogSUxpbmUsIG5hbWU6IHN0cmluZywgc3ltYm9sV2lkdGg6IG51bWJlcik6IG51bWJlciB7XG4gICAgY29uc3QgdmVjdG9yTGVuZ3RoOiBudW1iZXIgPSBQb2ludEV4dGVuc2lvbnMuaHlwb3RlbnVzZShsaW5lLnBvaW50MSwgbGluZS5wb2ludDIpO1xuXG4gICAgcmV0dXJuIHZlY3Rvckxlbmd0aCAvIDIgLSAoKG5hbWUgfHwgJycpLmxlbmd0aCAqIHN5bWJvbFdpZHRoKSAvIDI7XG4gIH1cbn1cblxuIiwiPG5nLWNvbnRhaW5lciB4bWxuczpzdmc9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgIDxzdmc6dGV4dFBhdGggZi1jb25uZWN0aW9uLXRleHQtcGF0aD5cbiAgICAgICAge3sgdGV4dCB9fVxuICAgIDwvc3ZnOnRleHRQYXRoPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
56
+ }] });
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLXRleHQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24vY29tbW9uL2YtY29ubmVjdGlvbi10ZXh0L2YtY29ubmVjdGlvbi10ZXh0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uL2NvbW1vbi9mLWNvbm5lY3Rpb24tdGV4dC9mLWNvbm5lY3Rpb24tdGV4dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xHLE9BQU8sRUFBUyxlQUFlLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDcEQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDbEYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFHdkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxlQUFlLEVBQW1CLE1BQU0scUJBQXFCLENBQUM7OztBQVl2RSxNQUFNLE9BQU8sd0JBQXdCO0lBQ25CLFdBQVcsR0FBRyxNQUFNLENBQUMsQ0FBQSxVQUEwQixDQUFBLENBQUMsQ0FBQyxhQUFhLENBQUM7SUFDOUQsS0FBSyxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQThDLENBQUM7SUFFMUUsa0JBQWtCLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0lBRXZGLElBQVcsTUFBTTtRQUNmLE9BQU8sd0JBQXdCLENBQUMsTUFBTSxDQUNwQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FDbEUsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUFXLElBQUk7UUFDYixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRU0sTUFBTSxDQUFDLElBQVc7UUFDdkIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDbkMsTUFBTSxhQUFhLEdBQVksd0JBQXdCLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdFLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsUUFBUSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBRXJGLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztRQUU3QyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNyRCxNQUFNLGNBQWMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUMsR0FBRyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzNGLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUMzQixXQUFXLEVBQ1gsYUFBYSxDQUFDLENBQUMsQ0FBQyxlQUFlLGNBQWMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQ3RELENBQUM7UUFDRixNQUFNLFdBQVcsR0FBRyx3QkFBd0IsQ0FBQyxtQkFBbUIsQ0FDOUQsSUFBSSxFQUNKLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxJQUFJLEVBQUUsRUFDdEIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsV0FBVyxDQUN0QyxDQUFDO1FBQ0YsSUFBSSxXQUFXLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztRQUMxQyxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDM0MsQ0FBQztJQUNILENBQUM7SUFFTyxZQUFZLENBQUMsUUFBZ0IsRUFBRSxhQUFzQjtRQUMzRCxNQUFNLGNBQWMsR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFNUMsTUFBTSxPQUFPLEdBQUcsYUFBYSxDQUFDLENBQUMsQ0FBQyxjQUFjLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxjQUFjLEdBQUcsQ0FBQyxHQUFHLENBQUM7UUFFN0UsT0FBTyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVPLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBVztRQUN2QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFTyxNQUFNLENBQUMsbUJBQW1CLENBQUMsSUFBVyxFQUFFLElBQVksRUFBRSxXQUFtQjtRQUMvRSxNQUFNLFlBQVksR0FBVyxlQUFlLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRWxGLE9BQU8sWUFBWSxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDcEUsQ0FBQzt3R0F6RFUsd0JBQXdCOzRGQUF4Qix3QkFBd0Isa0pBRnhCLENBQUMsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSx3QkFBd0IsRUFBRSxDQUFDLDhFQU12Qiw0QkFBNEIsZ0VDdkJ2RixnS0FLQTs7NEZEY2Esd0JBQXdCO2tCQVZwQyxTQUFTOytCQUNFLHlCQUF5QixtQkFFbEIsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSixLQUFLLEVBQUUsK0JBQStCO3dCQUN0QyxXQUFXLEVBQUUsUUFBUTtxQkFDdEIsYUFDVSxDQUFDLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxXQUFXLDBCQUEwQixFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBpbmplY3QsIHZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUxpbmUsIFBvaW50RXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHsgRkNvbm5lY3Rpb25UZXh0UGF0aERpcmVjdGl2ZSB9IGZyb20gJy4vZi1jb25uZWN0aW9uLXRleHQtcGF0aC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRl9DT05ORUNUSU9OX0lERU5USUZJRVJTIH0gZnJvbSAnLi4vZi1jb25uZWN0aW9uLWlkZW50aWZpZXJzJztcbmltcG9ydCB7IElIYXNDb25uZWN0aW9uVGV4dCB9IGZyb20gJy4uL2ktaGFzLWNvbm5lY3Rpb24tdGV4dCc7XG5pbXBvcnQgeyBJSGFzQ29ubmVjdGlvbkZyb21UbyB9IGZyb20gJy4uL2ktaGFzLWNvbm5lY3Rpb24tZnJvbS10byc7XG5pbXBvcnQgeyBGX0NPTk5FQ1RJT04gfSBmcm9tICcuLi9mLWNvbm5lY3Rpb24uaW5qZWN0aW9uLXRva2VuJztcbmltcG9ydCB7IENPTk5FQ1RJT05fVEVYVCwgSUNvbm5lY3Rpb25UZXh0IH0gZnJvbSAnLi9pLWNvbm5lY3Rpb24tdGV4dCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RleHRbZi1jb25uZWN0aW9uLXRleHRdJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2YtY29ubmVjdGlvbi10ZXh0LmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2YtY29tcG9uZW50IGYtY29ubmVjdGlvbi10ZXh0JyxcbiAgICAnW2F0dHIuaWRdJzogJ3RleHRJZCcsXG4gIH0sXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogQ09OTkVDVElPTl9URVhULCB1c2VFeGlzdGluZzogRkNvbm5lY3Rpb25UZXh0Q29tcG9uZW50IH1dLFxufSlcbmV4cG9ydCBjbGFzcyBGQ29ubmVjdGlvblRleHRDb21wb25lbnQgaW1wbGVtZW50cyBJQ29ubmVjdGlvblRleHQge1xuICBwdWJsaWMgcmVhZG9ubHkgaG9zdEVsZW1lbnQgPSBpbmplY3QoRWxlbWVudFJlZjxTVkdUZXh0RWxlbWVudD4pLm5hdGl2ZUVsZW1lbnQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Jhc2UgPSBpbmplY3QoRl9DT05ORUNUSU9OKSBhcyBJSGFzQ29ubmVjdGlvblRleHQgJiBJSGFzQ29ubmVjdGlvbkZyb21UbztcblxuICBwcml2YXRlIHJlYWRvbmx5IF90ZXh0UGF0aERpcmVjdGl2ZSA9IHZpZXdDaGlsZC5yZXF1aXJlZChGQ29ubmVjdGlvblRleHRQYXRoRGlyZWN0aXZlKTtcblxuICBwdWJsaWMgZ2V0IHRleHRJZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBGX0NPTk5FQ1RJT05fSURFTlRJRklFUlMudGV4dElkKFxuICAgICAgdGhpcy5fYmFzZS5mSWQoKSArIHRoaXMuX2Jhc2UuZk91dHB1dElkKCkgKyB0aGlzLl9iYXNlLmZJbnB1dElkKCksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdGV4dCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9iYXNlLmZUZXh0IHx8ICcnO1xuICB9XG5cbiAgcHVibGljIHJlZHJhdyhsaW5lOiBJTGluZSk6IHZvaWQge1xuICAgIHRoaXMuX3RleHRQYXRoRGlyZWN0aXZlKCkucmVkcmF3KCk7XG4gICAgY29uc3QgaXNUZXh0UmV2ZXJzZTogYm9vbGVhbiA9IEZDb25uZWN0aW9uVGV4dENvbXBvbmVudC5faXNUZXh0UmV2ZXJzZShsaW5lKTtcbiAgICBjb25zdCBkeVZhbHVlID0gdGhpcy5fY2FsY3VsYXRlRHkodGhpcy5fdGV4dFBhdGhEaXJlY3RpdmUoKS5mb250U2l6ZSwgaXNUZXh0UmV2ZXJzZSk7XG5cbiAgICB0aGlzLmhvc3RFbGVtZW50LnNldEF0dHJpYnV0ZSgnZHknLCBkeVZhbHVlKTtcblxuICAgIGNvbnN0IHRleHRSZWN0ID0gdGhpcy5fdGV4dFBhdGhEaXJlY3RpdmUoKS5nZXRCQm94KCk7XG4gICAgY29uc3QgdGV4dFJlY3RDZW50ZXIgPSBbdGV4dFJlY3QueCArIHRleHRSZWN0LndpZHRoIC8gMiwgdGV4dFJlY3QueSArIHRleHRSZWN0LmhlaWdodCAvIDJdO1xuICAgIHRoaXMuaG9zdEVsZW1lbnQuc2V0QXR0cmlidXRlKFxuICAgICAgJ3RyYW5zZm9ybScsXG4gICAgICBpc1RleHRSZXZlcnNlID8gYHJvdGF0ZSgxODAsICR7dGV4dFJlY3RDZW50ZXJ9KWAgOiAnJyxcbiAgICApO1xuICAgIGNvbnN0IHN0YXJ0T2Zmc2V0ID0gRkNvbm5lY3Rpb25UZXh0Q29tcG9uZW50Ll9nZXRUZXh0U3RhcnRPZmZzZXQoXG4gICAgICBsaW5lLFxuICAgICAgdGhpcy5fYmFzZS5mVGV4dCB8fCAnJyxcbiAgICAgIHRoaXMuX3RleHRQYXRoRGlyZWN0aXZlKCkuc3ltYm9sV2lkdGgsXG4gICAgKTtcbiAgICBpZiAoc3RhcnRPZmZzZXQgPCAwKSB7XG4gICAgICB0aGlzLmhvc3RFbGVtZW50LnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaG9zdEVsZW1lbnQuc3R5bGUuZGlzcGxheSA9ICd1bnNldCc7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlRHkoZm9udFNpemU6IHN0cmluZywgaXNUZXh0UmV2ZXJzZTogYm9vbGVhbik6IHN0cmluZyB7XG4gICAgY29uc3QgZm9udFNpemVOdW1iZXIgPSBwYXJzZUZsb2F0KGZvbnRTaXplKTtcblxuICAgIGNvbnN0IGR5VmFsdWUgPSBpc1RleHRSZXZlcnNlID8gZm9udFNpemVOdW1iZXIgKiAxLjUgOiBmb250U2l6ZU51bWJlciAqIC0wLjg7XG5cbiAgICByZXR1cm4gZHlWYWx1ZS50b1N0cmluZygpO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgX2lzVGV4dFJldmVyc2UobGluZTogSUxpbmUpOiBib29sZWFuIHtcbiAgICByZXR1cm4gbGluZS5wb2ludDEueCA+IGxpbmUucG9pbnQyLng7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBfZ2V0VGV4dFN0YXJ0T2Zmc2V0KGxpbmU6IElMaW5lLCBuYW1lOiBzdHJpbmcsIHN5bWJvbFdpZHRoOiBudW1iZXIpOiBudW1iZXIge1xuICAgIGNvbnN0IHZlY3Rvckxlbmd0aDogbnVtYmVyID0gUG9pbnRFeHRlbnNpb25zLmh5cG90ZW51c2UobGluZS5wb2ludDEsIGxpbmUucG9pbnQyKTtcblxuICAgIHJldHVybiB2ZWN0b3JMZW5ndGggLyAyIC0gKChuYW1lIHx8ICcnKS5sZW5ndGggKiBzeW1ib2xXaWR0aCkgLyAyO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyIHhtbG5zOnN2Zz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgPHN2Zzp0ZXh0UGF0aCBmLWNvbm5lY3Rpb24tdGV4dC1wYXRoPlxuICAgICAgICB7eyB0ZXh0IH19XG4gICAgPC9zdmc6dGV4dFBhdGg+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
@@ -1,40 +1,33 @@
1
- import { ChangeDetectionStrategy, Component, Inject } from "@angular/core";
1
+ import { ChangeDetectionStrategy, Component, ElementRef, inject } from '@angular/core';
2
2
  import { Point } from '@foblex/2d';
3
3
  import { F_CONNECTION_IDENTIFIERS } from '../f-connection-identifiers';
4
4
  import { F_CONNECTION } from '../f-connection.injection-token';
5
5
  import { CONNECTION_GRADIENT } from './i-connection-gradient';
6
6
  import * as i0 from "@angular/core";
7
7
  export class FConnectionGradientComponent {
8
- elementReference;
9
- base;
8
+ hostElement = inject((ElementRef)).nativeElement;
9
+ _base = inject(F_CONNECTION);
10
10
  get gradientId() {
11
- return F_CONNECTION_IDENTIFIERS.gradientId(this.base.fId() + this.base.fOutputId + this.base.fInputId);
12
- }
13
- get hostElement() {
14
- return this.elementReference.nativeElement;
11
+ return F_CONNECTION_IDENTIFIERS.gradientId(this._base.fId() + this._base.fOutputId() + this._base.fInputId());
15
12
  }
16
13
  get stop1Element() {
17
- return this.elementReference.nativeElement.children.item(0);
14
+ return this.hostElement.children.item(0);
18
15
  }
19
16
  get stop2Element() {
20
- return this.elementReference.nativeElement.children.item(1);
21
- }
22
- constructor(elementReference, base) {
23
- this.elementReference = elementReference;
24
- this.base = base;
17
+ return this.hostElement.children.item(1);
25
18
  }
26
19
  initialize() {
27
20
  this.stop1Element.setAttribute('offset', '0%');
28
21
  this.stop2Element.setAttribute('offset', '100%');
29
22
  }
30
- updateGradient() {
31
- this.setFromColor(this.base.fStartColor());
32
- this.setToColor(this.base.fEndColor());
23
+ _updateGradient() {
24
+ this._setFromColor(this._base.fStartColor());
25
+ this._setToColor(this._base.fEndColor());
33
26
  }
34
- setFromColor(color) {
27
+ _setFromColor(color) {
35
28
  this.stop1Element.setAttribute('stop-color', color || 'transparent');
36
29
  }
37
- setToColor(color) {
30
+ _setToColor(color) {
38
31
  this.stop2Element.setAttribute('stop-color', color || 'transparent');
39
32
  }
40
33
  redraw(line) {
@@ -47,19 +40,16 @@ export class FConnectionGradientComponent {
47
40
  const to = new Point(0.5 + (0.5 * x) / distance, 0.5 + (0.5 * y) / distance);
48
41
  this.hostElement.setAttribute('x2', to.x.toString());
49
42
  this.hostElement.setAttribute('y2', to.y.toString());
50
- this.updateGradient();
43
+ this._updateGradient();
51
44
  }
52
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionGradientComponent, deps: [{ token: i0.ElementRef }, { token: F_CONNECTION }], target: i0.ɵɵFactoryTarget.Component });
45
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionGradientComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
53
46
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FConnectionGradientComponent, selector: "linearGradient[fConnectionGradient]", host: { properties: { "attr.id": "gradientId" }, classAttribute: "f-component f-connection-gradient" }, providers: [{ provide: CONNECTION_GRADIENT, useExisting: FConnectionGradientComponent }], ngImport: i0, template: "<ng-container xmlns:svg=\"http://www.w3.org/2000/svg\">\n <svg:stop/>\n <svg:stop/>\n</ng-container>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
54
47
  }
55
48
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionGradientComponent, decorators: [{
56
49
  type: Component,
57
- args: [{ selector: "linearGradient[fConnectionGradient]", changeDetection: ChangeDetectionStrategy.OnPush, host: {
58
- class: "f-component f-connection-gradient",
50
+ args: [{ selector: 'linearGradient[fConnectionGradient]', changeDetection: ChangeDetectionStrategy.OnPush, host: {
51
+ class: 'f-component f-connection-gradient',
59
52
  '[attr.id]': 'gradientId',
60
53
  }, providers: [{ provide: CONNECTION_GRADIENT, useExisting: FConnectionGradientComponent }], template: "<ng-container xmlns:svg=\"http://www.w3.org/2000/svg\">\n <svg:stop/>\n <svg:stop/>\n</ng-container>\n" }]
61
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: undefined, decorators: [{
62
- type: Inject,
63
- args: [F_CONNECTION]
64
- }] }] });
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLWdyYWRpZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uL2NvbW1vbi9mLWdyYWRpZW50L2YtY29ubmVjdGlvbi1ncmFkaWVudC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9jb21tb24vZi1ncmFkaWVudC9mLWNvbm5lY3Rpb24tZ3JhZGllbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBYyxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkYsT0FBTyxFQUFTLEtBQUssRUFBRSxNQUFNLFlBQVksQ0FBQztBQUMxQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUd2RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDL0QsT0FBTyxFQUFFLG1CQUFtQixFQUF1QixNQUFNLHlCQUF5QixDQUFDOztBQVluRixNQUFNLE9BQU8sNEJBQTRCO0lBcUI3QjtJQUNzQjtJQXBCaEMsSUFBVyxVQUFVO1FBQ25CLE9BQU8sd0JBQXdCLENBQUMsVUFBVSxDQUN4QyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUMzRCxDQUFDO0lBQ0osQ0FBQztJQUVELElBQVcsV0FBVztRQUNwQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7SUFDN0MsQ0FBQztJQUVELElBQVcsWUFBWTtRQUNyQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLElBQUks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QUlBOzs0RkRjYSw0QkFBNEI7a0JBVnhDLFNBQVM7K0JBQ0UscUNBQXFDLG1CQUU5Qix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNKLEtBQUssRUFBRSxtQ0FBbUM7d0JBQzFDLFdBQVcsRUFBRSxZQUFZO3FCQUMxQixhQUNVLENBQUUsRUFBRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyw4QkFBOEIsRUFBRSxDQUFFOzswQkF3QnZGLE1BQU07MkJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEluamVjdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBJTGluZSwgUG9pbnQgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZfQ09OTkVDVElPTl9JREVOVElGSUVSUyB9IGZyb20gJy4uL2YtY29ubmVjdGlvbi1pZGVudGlmaWVycyc7XG5pbXBvcnQgeyBJSGFzQ29ubmVjdGlvbkZyb21UbyB9IGZyb20gJy4uL2ktaGFzLWNvbm5lY3Rpb24tZnJvbS10byc7XG5pbXBvcnQgeyBJSGFzQ29ubmVjdGlvbkNvbG9yIH0gZnJvbSAnLi4vaS1oYXMtY29ubmVjdGlvbi1jb2xvcic7XG5pbXBvcnQgeyBGX0NPTk5FQ1RJT04gfSBmcm9tICcuLi9mLWNvbm5lY3Rpb24uaW5qZWN0aW9uLXRva2VuJztcbmltcG9ydCB7IENPTk5FQ1RJT05fR1JBRElFTlQsIElDb25uZWN0aW9uR3JhZGllbnQgfSBmcm9tICcuL2ktY29ubmVjdGlvbi1ncmFkaWVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJsaW5lYXJHcmFkaWVudFtmQ29ubmVjdGlvbkdyYWRpZW50XVwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL2YtY29ubmVjdGlvbi1ncmFkaWVudC5jb21wb25lbnQuaHRtbFwiLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiBcImYtY29tcG9uZW50IGYtY29ubmVjdGlvbi1ncmFkaWVudFwiLFxuICAgICdbYXR0ci5pZF0nOiAnZ3JhZGllbnRJZCcsXG4gIH0sXG4gIHByb3ZpZGVyczogWyB7IHByb3ZpZGU6IENPTk5FQ1RJT05fR1JBRElFTlQsIHVzZUV4aXN0aW5nOiBGQ29ubmVjdGlvbkdyYWRpZW50Q29tcG9uZW50IH0gXSxcbn0pXG5leHBvcnQgY2xhc3MgRkNvbm5lY3Rpb25HcmFkaWVudENvbXBvbmVudCBpbXBsZW1lbnRzIElDb25uZWN0aW9uR3JhZGllbnQge1xuXG4gIHB1YmxpYyBnZXQgZ3JhZGllbnRJZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBGX0NPTk5FQ1RJT05fSURFTlRJRklFUlMuZ3JhZGllbnRJZChcbiAgICAgIHRoaXMuYmFzZS5mSWQoKSArIHRoaXMuYmFzZS5mT3V0cHV0SWQgKyB0aGlzLmJhc2UuZklucHV0SWQsXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaG9zdEVsZW1lbnQoKTogU1ZHTGluZWFyR3JhZGllbnRFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmZXJlbmNlLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHN0b3AxRWxlbWVudCgpOiBTVkdTdG9wRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZmVyZW5jZS5uYXRpdmVFbGVtZW50LmNoaWxkcmVuLml0ZW0oMCkgYXMgU1ZHU3RvcEVsZW1lbnQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHN0b3AyRWxlbWVudCgpOiBTVkdTdG9wRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZmVyZW5jZS5uYXRpdmVFbGVtZW50LmNoaWxkcmVuLml0ZW0oMSkgYXMgU1ZHU3RvcEVsZW1lbnQ7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsZW1lbnRSZWZlcmVuY2U6IEVsZW1lbnRSZWY8U1ZHTGluZWFyR3JhZGllbnRFbGVtZW50PixcbiAgICBASW5qZWN0KEZfQ09OTkVDVElPTikgcHJpdmF0ZSBiYXNlOiBJSGFzQ29ubmVjdGlvbkNvbG9yICYgSUhhc0Nvbm5lY3Rpb25Gcm9tVG8sXG4gICkge1xuICB9XG5cbiAgcHVibGljIGluaXRpYWxpemUoKTogdm9pZCB7XG4gICAgdGhpcy5zdG9wMUVsZW1lbnQuc2V0QXR0cmlidXRlKCdvZmZzZXQnLCAnMCUnKTtcbiAgICB0aGlzLnN0b3AyRWxlbWVudC5zZXRBdHRyaWJ1dGUoJ29mZnNldCcsICcxMDAlJyk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUdyYWRpZW50KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0RnJvbUNvbG9yKHRoaXMuYmFzZS5mU3RhcnRDb2xvcigpKTtcbiAgICB0aGlzLnNldFRvQ29sb3IodGhpcy5iYXNlLmZFbmRDb2xvcigpKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0RnJvbUNvbG9yKGNvbG9yOiBzdHJpbmcgfCB1bmRlZmluZWQpOiB2b2lkIHtcbiAgICB0aGlzLnN0b3AxRWxlbWVudC5zZXRBdHRyaWJ1dGUoJ3N0b3AtY29sb3InLCBjb2xvciB8fCAndHJhbnNwYXJlbnQnKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0VG9Db2xvcihjb2xvcjogc3RyaW5nIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgdGhpcy5zdG9wMkVsZW1lbnQuc2V0QXR0cmlidXRlKCdzdG9wLWNvbG9yJywgY29sb3IgfHwgJ3RyYW5zcGFyZW50Jyk7XG4gIH1cblxuICBwdWJsaWMgcmVkcmF3KGxpbmU6IElMaW5lKTogdm9pZCB7XG4gICAgY29uc3QgeDogbnVtYmVyID0gbGluZS5wb2ludDIueCAtIGxpbmUucG9pbnQxLng7XG4gICAgY29uc3QgeTogbnVtYmVyID0gbGluZS5wb2ludDIueSAtIGxpbmUucG9pbnQxLnk7XG4gICAgY29uc3QgZGlzdGFuY2U6IG51bWJlciA9IE1hdGguc3FydCh4ICogeCArIHkgKiB5KSB8fCAwLjAxO1xuXG4gICAgY29uc3QgZnJvbSA9IG5ldyBQb2ludCgwLjUgLSAoMC41ICogeCkgLyBkaXN0YW5jZSwgMC41IC0gKDAuNSAqIHkpIC8gZGlzdGFuY2UpO1xuXG4gICAgdGhpcy5ob3N0RWxlbWVudC5zZXRBdHRyaWJ1dGUoJ3gxJywgZnJvbS54LnRvU3RyaW5nKCkpO1xuICAgIHRoaXMuaG9zdEVsZW1lbnQuc2V0QXR0cmlidXRlKCd5MScsIGZyb20ueS50b1N0cmluZygpKTtcblxuICAgIGNvbnN0IHRvID0gbmV3IFBvaW50KDAuNSArICgwLjUgKiB4KSAvIGRpc3RhbmNlLCAwLjUgKyAoMC41ICogeSkgLyBkaXN0YW5jZSk7XG4gICAgdGhpcy5ob3N0RWxlbWVudC5zZXRBdHRyaWJ1dGUoJ3gyJywgdG8ueC50b1N0cmluZygpKTtcbiAgICB0aGlzLmhvc3RFbGVtZW50LnNldEF0dHJpYnV0ZSgneTInLCB0by55LnRvU3RyaW5nKCkpO1xuICAgIHRoaXMudXBkYXRlR3JhZGllbnQoKTtcbiAgfVxufVxuXG4iLCI8bmctY29udGFpbmVyIHhtbG5zOnN2Zz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgPHN2ZzpzdG9wLz5cbiAgICA8c3ZnOnN0b3AvPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
54
+ }] });
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLWdyYWRpZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uL2NvbW1vbi9mLWdyYWRpZW50L2YtY29ubmVjdGlvbi1ncmFkaWVudC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9jb21tb24vZi1ncmFkaWVudC9mLWNvbm5lY3Rpb24tZ3JhZGllbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBUyxLQUFLLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDMUMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFHdkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxtQkFBbUIsRUFBdUIsTUFBTSx5QkFBeUIsQ0FBQzs7QUFZbkYsTUFBTSxPQUFPLDRCQUE0QjtJQUN2QixXQUFXLEdBQUcsTUFBTSxDQUFDLENBQUEsVUFBb0MsQ0FBQSxDQUFDLENBQUMsYUFBYSxDQUFDO0lBQ3hFLEtBQUssR0FBRyxNQUFNLENBQUMsWUFBWSxDQUErQyxDQUFDO0lBRTVGLElBQVcsVUFBVTtRQUNuQixPQUFPLHdCQUF3QixDQUFDLFVBQVUsQ0FDeEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQ2xFLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBVyxZQUFZO1FBQ3JCLE9BQU8sSUFBSSxD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O3dCQUMxQyxXQUFXLEVBQUUsWUFBWTtxQkFDMUIsYUFDVSxDQUFDLEVBQUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFdBQVcsOEJBQThCLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUxpbmUsIFBvaW50IH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBGX0NPTk5FQ1RJT05fSURFTlRJRklFUlMgfSBmcm9tICcuLi9mLWNvbm5lY3Rpb24taWRlbnRpZmllcnMnO1xuaW1wb3J0IHsgSUhhc0Nvbm5lY3Rpb25Gcm9tVG8gfSBmcm9tICcuLi9pLWhhcy1jb25uZWN0aW9uLWZyb20tdG8nO1xuaW1wb3J0IHsgSUhhc0Nvbm5lY3Rpb25Db2xvciB9IGZyb20gJy4uL2ktaGFzLWNvbm5lY3Rpb24tY29sb3InO1xuaW1wb3J0IHsgRl9DT05ORUNUSU9OIH0gZnJvbSAnLi4vZi1jb25uZWN0aW9uLmluamVjdGlvbi10b2tlbic7XG5pbXBvcnQgeyBDT05ORUNUSU9OX0dSQURJRU5ULCBJQ29ubmVjdGlvbkdyYWRpZW50IH0gZnJvbSAnLi9pLWNvbm5lY3Rpb24tZ3JhZGllbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaW5lYXJHcmFkaWVudFtmQ29ubmVjdGlvbkdyYWRpZW50XScsXG4gIHRlbXBsYXRlVXJsOiAnLi9mLWNvbm5lY3Rpb24tZ3JhZGllbnQuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZi1jb21wb25lbnQgZi1jb25uZWN0aW9uLWdyYWRpZW50JyxcbiAgICAnW2F0dHIuaWRdJzogJ2dyYWRpZW50SWQnLFxuICB9LFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IENPTk5FQ1RJT05fR1JBRElFTlQsIHVzZUV4aXN0aW5nOiBGQ29ubmVjdGlvbkdyYWRpZW50Q29tcG9uZW50IH1dLFxufSlcbmV4cG9ydCBjbGFzcyBGQ29ubmVjdGlvbkdyYWRpZW50Q29tcG9uZW50IGltcGxlbWVudHMgSUNvbm5lY3Rpb25HcmFkaWVudCB7XG4gIHB1YmxpYyByZWFkb25seSBob3N0RWxlbWVudCA9IGluamVjdChFbGVtZW50UmVmPFNWR0xpbmVhckdyYWRpZW50RWxlbWVudD4pLm5hdGl2ZUVsZW1lbnQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Jhc2UgPSBpbmplY3QoRl9DT05ORUNUSU9OKSBhcyBJSGFzQ29ubmVjdGlvbkNvbG9yICYgSUhhc0Nvbm5lY3Rpb25Gcm9tVG87XG5cbiAgcHVibGljIGdldCBncmFkaWVudElkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIEZfQ09OTkVDVElPTl9JREVOVElGSUVSUy5ncmFkaWVudElkKFxuICAgICAgdGhpcy5fYmFzZS5mSWQoKSArIHRoaXMuX2Jhc2UuZk91dHB1dElkKCkgKyB0aGlzLl9iYXNlLmZJbnB1dElkKCksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc3RvcDFFbGVtZW50KCk6IFNWR1N0b3BFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5ob3N0RWxlbWVudC5jaGlsZHJlbi5pdGVtKDApIGFzIFNWR1N0b3BFbGVtZW50O1xuICB9XG5cbiAgcHVibGljIGdldCBzdG9wMkVsZW1lbnQoKTogU1ZHU3RvcEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmhvc3RFbGVtZW50LmNoaWxkcmVuLml0ZW0oMSkgYXMgU1ZHU3RvcEVsZW1lbnQ7XG4gIH1cblxuICBwdWJsaWMgaW5pdGlhbGl6ZSgpOiB2b2lkIHtcbiAgICB0aGlzLnN0b3AxRWxlbWVudC5zZXRBdHRyaWJ1dGUoJ29mZnNldCcsICcwJScpO1xuICAgIHRoaXMuc3RvcDJFbGVtZW50LnNldEF0dHJpYnV0ZSgnb2Zmc2V0JywgJzEwMCUnKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZUdyYWRpZW50KCk6IHZvaWQge1xuICAgIHRoaXMuX3NldEZyb21Db2xvcih0aGlzLl9iYXNlLmZTdGFydENvbG9yKCkpO1xuICAgIHRoaXMuX3NldFRvQ29sb3IodGhpcy5fYmFzZS5mRW5kQ29sb3IoKSk7XG4gIH1cblxuICBwcml2YXRlIF9zZXRGcm9tQ29sb3IoY29sb3I6IHN0cmluZyB8IHVuZGVmaW5lZCk6IHZvaWQge1xuICAgIHRoaXMuc3RvcDFFbGVtZW50LnNldEF0dHJpYnV0ZSgnc3RvcC1jb2xvcicsIGNvbG9yIHx8ICd0cmFuc3BhcmVudCcpO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2V0VG9Db2xvcihjb2xvcjogc3RyaW5nIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgdGhpcy5zdG9wMkVsZW1lbnQuc2V0QXR0cmlidXRlKCdzdG9wLWNvbG9yJywgY29sb3IgfHwgJ3RyYW5zcGFyZW50Jyk7XG4gIH1cblxuICBwdWJsaWMgcmVkcmF3KGxpbmU6IElMaW5lKTogdm9pZCB7XG4gICAgY29uc3QgeDogbnVtYmVyID0gbGluZS5wb2ludDIueCAtIGxpbmUucG9pbnQxLng7XG4gICAgY29uc3QgeTogbnVtYmVyID0gbGluZS5wb2ludDIueSAtIGxpbmUucG9pbnQxLnk7XG4gICAgY29uc3QgZGlzdGFuY2U6IG51bWJlciA9IE1hdGguc3FydCh4ICogeCArIHkgKiB5KSB8fCAwLjAxO1xuXG4gICAgY29uc3QgZnJvbSA9IG5ldyBQb2ludCgwLjUgLSAoMC41ICogeCkgLyBkaXN0YW5jZSwgMC41IC0gKDAuNSAqIHkpIC8gZGlzdGFuY2UpO1xuXG4gICAgdGhpcy5ob3N0RWxlbWVudC5zZXRBdHRyaWJ1dGUoJ3gxJywgZnJvbS54LnRvU3RyaW5nKCkpO1xuICAgIHRoaXMuaG9zdEVsZW1lbnQuc2V0QXR0cmlidXRlKCd5MScsIGZyb20ueS50b1N0cmluZygpKTtcblxuICAgIGNvbnN0IHRvID0gbmV3IFBvaW50KDAuNSArICgwLjUgKiB4KSAvIGRpc3RhbmNlLCAwLjUgKyAoMC41ICogeSkgLyBkaXN0YW5jZSk7XG4gICAgdGhpcy5ob3N0RWxlbWVudC5zZXRBdHRyaWJ1dGUoJ3gyJywgdG8ueC50b1N0cmluZygpKTtcbiAgICB0aGlzLmhvc3RFbGVtZW50LnNldEF0dHJpYnV0ZSgneTInLCB0by55LnRvU3RyaW5nKCkpO1xuICAgIHRoaXMuX3VwZGF0ZUdyYWRpZW50KCk7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgeG1sbnM6c3ZnPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cbiAgICA8c3ZnOnN0b3AvPlxuICAgIDxzdmc6c3RvcC8+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
@@ -1,55 +1,45 @@
1
- import { ChangeDetectionStrategy, Component, Inject } from "@angular/core";
1
+ import { ChangeDetectionStrategy, Component, ElementRef, inject } from '@angular/core';
2
2
  import { F_CONNECTION_IDENTIFIERS } from '../f-connection-identifiers';
3
3
  import { F_CONNECTION } from '../f-connection.injection-token';
4
4
  import { CONNECTION_PATH } from './i-connection-path';
5
5
  import { getMarkerEndId, getMarkerSelectedEndId, getMarkerSelectedStartId, getMarkerStartId, } from './get-path-marker-id';
6
6
  import * as i0 from "@angular/core";
7
7
  export class FConnectionPathComponent {
8
- elementReference;
9
- base;
8
+ hostElement = inject((ElementRef)).nativeElement;
9
+ _base = inject(F_CONNECTION);
10
10
  get fPathId() {
11
- return this.base.fId();
11
+ return this._base.fId();
12
12
  }
13
13
  get linkToGradient() {
14
- return F_CONNECTION_IDENTIFIERS.linkToGradient(this.base.fId() + this.base.fOutputId + this.base.fInputId);
14
+ return F_CONNECTION_IDENTIFIERS.linkToGradient(this._base.fId() + this._base.fOutputId() + this._base.fInputId());
15
15
  }
16
16
  get attrConnectionId() {
17
- return F_CONNECTION_IDENTIFIERS.connectionId(this.base.fId() + this.base.fOutputId + this.base.fInputId);
18
- }
19
- get hostElement() {
20
- return this.elementReference.nativeElement;
21
- }
22
- constructor(elementReference, base) {
23
- this.elementReference = elementReference;
24
- this.base = base;
17
+ return F_CONNECTION_IDENTIFIERS.connectionId(this._base.fId() + this._base.fOutputId() + this._base.fInputId());
25
18
  }
26
19
  initialize() {
27
20
  this.deselect();
28
21
  }
29
22
  setPath(path) {
30
- this.hostElement.setAttribute("d", `${path}`);
23
+ this.hostElement.setAttribute('d', `${path}`);
31
24
  }
32
25
  select() {
33
- this.hostElement.setAttribute('marker-start', `url(#${getMarkerSelectedStartId(this.base.fId())})`);
34
- this.hostElement.setAttribute('marker-end', `url(#${getMarkerSelectedEndId(this.base.fId())})`);
26
+ this.hostElement.setAttribute('marker-start', `url(#${getMarkerSelectedStartId(this._base.fId())})`);
27
+ this.hostElement.setAttribute('marker-end', `url(#${getMarkerSelectedEndId(this._base.fId())})`);
35
28
  }
36
29
  deselect() {
37
- this.hostElement.setAttribute('marker-start', `url(#${getMarkerStartId(this.base.fId())})`);
38
- this.hostElement.setAttribute('marker-end', `url(#${getMarkerEndId(this.base.fId())})`);
30
+ this.hostElement.setAttribute('marker-start', `url(#${getMarkerStartId(this._base.fId())})`);
31
+ this.hostElement.setAttribute('marker-end', `url(#${getMarkerEndId(this._base.fId())})`);
39
32
  }
40
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionPathComponent, deps: [{ token: i0.ElementRef }, { token: F_CONNECTION }], target: i0.ɵɵFactoryTarget.Component });
33
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionPathComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
41
34
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FConnectionPathComponent, selector: "path[f-connection-path]", host: { properties: { "attr.id": "attrConnectionId", "attr.data-f-path-id": "fPathId", "attr.stroke": "linkToGradient" }, classAttribute: "f-component f-connection-path" }, providers: [{ provide: CONNECTION_PATH, useExisting: FConnectionPathComponent }], ngImport: i0, template: '', isInline: true, styles: [":host{fill:none;pointer-events:stroke}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
42
35
  }
43
36
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionPathComponent, decorators: [{
44
37
  type: Component,
45
- args: [{ selector: "path[f-connection-path]", template: '', changeDetection: ChangeDetectionStrategy.OnPush, host: {
46
- class: "f-component f-connection-path",
38
+ args: [{ selector: 'path[f-connection-path]', template: '', changeDetection: ChangeDetectionStrategy.OnPush, host: {
39
+ class: 'f-component f-connection-path',
47
40
  '[attr.id]': 'attrConnectionId',
48
41
  '[attr.data-f-path-id]': 'fPathId',
49
42
  '[attr.stroke]': 'linkToGradient',
50
43
  }, providers: [{ provide: CONNECTION_PATH, useExisting: FConnectionPathComponent }], styles: [":host{fill:none;pointer-events:stroke}\n"] }]
51
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: undefined, decorators: [{
52
- type: Inject,
53
- args: [F_CONNECTION]
54
- }] }] });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLXBhdGguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24vY29tbW9uL2YtcGF0aC9mLWNvbm5lY3Rpb24tcGF0aC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBYyxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFHdkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxlQUFlLEVBQW1CLE1BQU0scUJBQXFCLENBQUM7QUFDdkUsT0FBTyxFQUNMLGNBQWMsRUFDZCxzQkFBc0IsRUFDdEIsd0JBQXdCLEVBQ3hCLGdCQUFnQixHQUNqQixNQUFNLHNCQUFzQixDQUFDOztBQWU5QixNQUFNLE9BQU8sd0JBQXdCO0lBdUJ6QjtJQUNzQjtJQXRCaEMsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBVyxjQUFjO1FBQ3ZCLE9BQU8sd0JBQXdCLENBQUMsY0FBYyxDQUM1QyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUMzRCxDQUFDO0lBQ0osQ0FBQztJQUVELElBQVcsZ0JBQWdCO1FBQ3pCLE9BQU8sd0JBQXdCLENBQUMsWUFBWSxDQUMxQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUMzRCxDQUFDO0lBQ0osQ0FBQztJQUVELElBQVcsV0FBVztRQUNwQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7SUFDN0MsQ0FBQztJQUVELFlBQ1UsZ0JBQTRDLEVBQ3RCLElBQWdEO1FBRHRFLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBNEI7UUFDdEIsU0FBSSxHQUFKLElBQUksQ0FBNEM7SUFFaEYsQ0FBQztJQUVNLFVBQVU7UUFDZixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEIsQ0FBQztJQUVNLE9BQU8sQ0FBQyxJQUFZO1FBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxHQUFJLElBQUssRUFBRSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVNLE1BQU07UUFDWCxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxjQUFjLEVBQUUsUUFBUyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ3RHLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxRQUFTLHNCQUFzQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUUsR0FBRyxDQUFDLENBQUM7SUFDcEcsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxjQUFjLEVBQUUsUUFBUyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQzlGLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxRQUFTLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzVGLENBQUM7d0dBNUNVLHdCQUF3Qiw0Q0F3QnpCLFlBQVk7NEZBeEJYLHdCQUF3QiwrTkFGeEIsQ0FBRSxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLHdCQUF3QixFQUFFLENBQUUsMEJBVHhFLEVBQUU7OzRGQVdELHdCQUF3QjtrQkFicEMsU0FBUzsrQkFDRSx5QkFBeUIsWUFDekIsRUFBRSxtQkFFSyx1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNKLEtBQUssRUFBRSwrQkFBK0I7d0JBQ3RDLFdBQVcsRUFBRSxrQkFBa0I7d0JBQy9CLHVCQUF1QixFQUFFLFNBQVM7d0JBQ2xDLGVBQWUsRUFBRSxnQkFBZ0I7cUJBQ2xDLGFBQ1UsQ0FBRSxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVywwQkFBMEIsRUFBRSxDQUFFOzswQkEwQi9FLE1BQU07MkJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEluamVjdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBGX0NPTk5FQ1RJT05fSURFTlRJRklFUlMgfSBmcm9tICcuLi9mLWNvbm5lY3Rpb24taWRlbnRpZmllcnMnO1xuaW1wb3J0IHsgSUhhc0Nvbm5lY3Rpb25Db2xvciB9IGZyb20gJy4uL2ktaGFzLWNvbm5lY3Rpb24tY29sb3InO1xuaW1wb3J0IHsgSUhhc0Nvbm5lY3Rpb25Gcm9tVG8gfSBmcm9tICcuLi9pLWhhcy1jb25uZWN0aW9uLWZyb20tdG8nO1xuaW1wb3J0IHsgRl9DT05ORUNUSU9OIH0gZnJvbSAnLi4vZi1jb25uZWN0aW9uLmluamVjdGlvbi10b2tlbic7XG5pbXBvcnQgeyBDT05ORUNUSU9OX1BBVEgsIElDb25uZWN0aW9uUGF0aCB9IGZyb20gJy4vaS1jb25uZWN0aW9uLXBhdGgnO1xuaW1wb3J0IHtcbiAgZ2V0TWFya2VyRW5kSWQsXG4gIGdldE1hcmtlclNlbGVjdGVkRW5kSWQsXG4gIGdldE1hcmtlclNlbGVjdGVkU3RhcnRJZCxcbiAgZ2V0TWFya2VyU3RhcnRJZCxcbn0gZnJvbSAnLi9nZXQtcGF0aC1tYXJrZXItaWQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwicGF0aFtmLWNvbm5lY3Rpb24tcGF0aF1cIixcbiAgdGVtcGxhdGU6ICcnLFxuICBzdHlsZVVybHM6IFsnLi9mLWNvbm5lY3Rpb24tcGF0aC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiBcImYtY29tcG9uZW50IGYtY29ubmVjdGlvbi1wYXRoXCIsXG4gICAgJ1thdHRyLmlkXSc6ICdhdHRyQ29ubmVjdGlvbklkJyxcbiAgICAnW2F0dHIuZGF0YS1mLXBhdGgtaWRdJzogJ2ZQYXRoSWQnLFxuICAgICdbYXR0ci5zdHJva2VdJzogJ2xpbmtUb0dyYWRpZW50JyxcbiAgfSxcbiAgcHJvdmlkZXJzOiBbIHsgcHJvdmlkZTogQ09OTkVDVElPTl9QQVRILCB1c2VFeGlzdGluZzogRkNvbm5lY3Rpb25QYXRoQ29tcG9uZW50IH0gXSxcbn0pXG5leHBvcnQgY2xhc3MgRkNvbm5lY3Rpb25QYXRoQ29tcG9uZW50IGltcGxlbWVudHMgSUNvbm5lY3Rpb25QYXRoIHtcblxuICBwdWJsaWMgZ2V0IGZQYXRoSWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5iYXNlLmZJZCgpO1xuICB9XG5cbiAgcHVibGljIGdldCBsaW5rVG9HcmFkaWVudCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBGX0NPTk5FQ1RJT05fSURFTlRJRklFUlMubGlua1RvR3JhZGllbnQoXG4gICAgICB0aGlzLmJhc2UuZklkKCkgKyB0aGlzLmJhc2UuZk91dHB1dElkICsgdGhpcy5iYXNlLmZJbnB1dElkLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGF0dHJDb25uZWN0aW9uSWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gRl9DT05ORUNUSU9OX0lERU5USUZJRVJTLmNvbm5lY3Rpb25JZChcbiAgICAgIHRoaXMuYmFzZS5mSWQoKSArIHRoaXMuYmFzZS5mT3V0cHV0SWQgKyB0aGlzLmJhc2UuZklucHV0SWQsXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaG9zdEVsZW1lbnQoKTogU1ZHUGF0aEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWZlcmVuY2UubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZWxlbWVudFJlZmVyZW5jZTogRWxlbWVudFJlZjxTVkdQYXRoRWxlbWVudD4sXG4gICAgQEluamVjdChGX0NPTk5FQ1RJT04pIHByaXZhdGUgYmFzZTogSUhhc0Nvbm5lY3Rpb25Db2xvciAmIElIYXNDb25uZWN0aW9uRnJvbVRvLFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBpbml0aWFsaXplKCk6IHZvaWQge1xuICAgIHRoaXMuZGVzZWxlY3QoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRQYXRoKHBhdGg6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuaG9zdEVsZW1lbnQuc2V0QXR0cmlidXRlKFwiZFwiLCBgJHsgcGF0aCB9YCk7XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0KCk6IHZvaWQge1xuICAgIHRoaXMuaG9zdEVsZW1lbnQuc2V0QXR0cmlidXRlKCdtYXJrZXItc3RhcnQnLCBgdXJsKCMkeyBnZXRNYXJrZXJTZWxlY3RlZFN0YXJ0SWQodGhpcy5iYXNlLmZJZCgpKSB9KWApO1xuICAgIHRoaXMuaG9zdEVsZW1lbnQuc2V0QXR0cmlidXRlKCdtYXJrZXItZW5kJywgYHVybCgjJHsgZ2V0TWFya2VyU2VsZWN0ZWRFbmRJZCh0aGlzLmJhc2UuZklkKCkpIH0pYCk7XG4gIH1cblxuICBwdWJsaWMgZGVzZWxlY3QoKTogdm9pZCB7XG4gICAgdGhpcy5ob3N0RWxlbWVudC5zZXRBdHRyaWJ1dGUoJ21hcmtlci1zdGFydCcsIGB1cmwoIyR7IGdldE1hcmtlclN0YXJ0SWQodGhpcy5iYXNlLmZJZCgpKSB9KWApO1xuICAgIHRoaXMuaG9zdEVsZW1lbnQuc2V0QXR0cmlidXRlKCdtYXJrZXItZW5kJywgYHVybCgjJHsgZ2V0TWFya2VyRW5kSWQodGhpcy5iYXNlLmZJZCgpKSB9KWApO1xuICB9XG59XG4iXX0=
44
+ }] });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLXBhdGguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24vY29tbW9uL2YtcGF0aC9mLWNvbm5lY3Rpb24tcGF0aC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBR3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFtQixNQUFNLHFCQUFxQixDQUFDO0FBQ3ZFLE9BQU8sRUFDTCxjQUFjLEVBQ2Qsc0JBQXNCLEVBQ3RCLHdCQUF3QixFQUN4QixnQkFBZ0IsR0FDakIsTUFBTSxzQkFBc0IsQ0FBQzs7QUFlOUIsTUFBTSxPQUFPLHdCQUF3QjtJQUNuQixXQUFXLEdBQUcsTUFBTSxDQUFDLENBQUEsVUFBMEIsQ0FBQSxDQUFDLENBQUMsYUFBYSxDQUFDO0lBQzlELEtBQUssR0FBRyxNQUFNLENBQUMsWUFBWSxDQUErQyxDQUFDO0lBRTVGLElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQVcsY0FBYztRQUN2QixPQUFPLHdCQUF3QixDQUFDLGNBQWMsQ0FDNUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQ2xFLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBVyxnQkFBZ0I7UUFDekIsT0FBTyx3QkFBd0IsQ0FBQyxZQUFZLENBQzFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUNsRSxDQUFDO0lBQ0osQ0FBQztJQUVNLFVBQVU7UUFDZixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEIsQ0FBQztJQUVNLE9BQU8sQ0FBQyxJQUFZO1FBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUksRUFBRSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVNLE1BQU07UUFDWCxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FDM0IsY0FBYyxFQUNkLFFBQVEsd0JBQXdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQ3RELENBQUM7UUFDRixJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FDM0IsWUFBWSxFQUNaLFFBQVEsc0JBQXNCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQ3BELENBQUM7SUFDSixDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLGNBQWMsRUFBRSxRQUFRLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDN0YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLFFBQVEsY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDM0YsQ0FBQzt3R0ExQ1Usd0JBQXdCOzRGQUF4Qix3QkFBd0IsK05BRnhCLENBQUMsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSx3QkFBd0IsRUFBRSxDQUFDLDBCQVR0RSxFQUFFOzs0RkFXRCx3QkFBd0I7a0JBYnBDLFNBQVM7K0JBQ0UseUJBQXlCLFlBQ3pCLEVBQUUsbUJBRUssdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSixLQUFLLEVBQUUsK0JBQStCO3dCQUN0QyxXQUFXLEVBQUUsa0JBQWtCO3dCQUMvQix1QkFBdUIsRUFBRSxTQUFTO3dCQUNsQyxlQUFlLEVBQUUsZ0JBQWdCO3FCQUNsQyxhQUNVLENBQUMsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsMEJBQTBCLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRl9DT05ORUNUSU9OX0lERU5USUZJRVJTIH0gZnJvbSAnLi4vZi1jb25uZWN0aW9uLWlkZW50aWZpZXJzJztcbmltcG9ydCB7IElIYXNDb25uZWN0aW9uQ29sb3IgfSBmcm9tICcuLi9pLWhhcy1jb25uZWN0aW9uLWNvbG9yJztcbmltcG9ydCB7IElIYXNDb25uZWN0aW9uRnJvbVRvIH0gZnJvbSAnLi4vaS1oYXMtY29ubmVjdGlvbi1mcm9tLXRvJztcbmltcG9ydCB7IEZfQ09OTkVDVElPTiB9IGZyb20gJy4uL2YtY29ubmVjdGlvbi5pbmplY3Rpb24tdG9rZW4nO1xuaW1wb3J0IHsgQ09OTkVDVElPTl9QQVRILCBJQ29ubmVjdGlvblBhdGggfSBmcm9tICcuL2ktY29ubmVjdGlvbi1wYXRoJztcbmltcG9ydCB7XG4gIGdldE1hcmtlckVuZElkLFxuICBnZXRNYXJrZXJTZWxlY3RlZEVuZElkLFxuICBnZXRNYXJrZXJTZWxlY3RlZFN0YXJ0SWQsXG4gIGdldE1hcmtlclN0YXJ0SWQsXG59IGZyb20gJy4vZ2V0LXBhdGgtbWFya2VyLWlkJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncGF0aFtmLWNvbm5lY3Rpb24tcGF0aF0nLFxuICB0ZW1wbGF0ZTogJycsXG4gIHN0eWxlVXJsczogWycuL2YtY29ubmVjdGlvbi1wYXRoLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdmLWNvbXBvbmVudCBmLWNvbm5lY3Rpb24tcGF0aCcsXG4gICAgJ1thdHRyLmlkXSc6ICdhdHRyQ29ubmVjdGlvbklkJyxcbiAgICAnW2F0dHIuZGF0YS1mLXBhdGgtaWRdJzogJ2ZQYXRoSWQnLFxuICAgICdbYXR0ci5zdHJva2VdJzogJ2xpbmtUb0dyYWRpZW50JyxcbiAgfSxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBDT05ORUNUSU9OX1BBVEgsIHVzZUV4aXN0aW5nOiBGQ29ubmVjdGlvblBhdGhDb21wb25lbnQgfV0sXG59KVxuZXhwb3J0IGNsYXNzIEZDb25uZWN0aW9uUGF0aENvbXBvbmVudCBpbXBsZW1lbnRzIElDb25uZWN0aW9uUGF0aCB7XG4gIHB1YmxpYyByZWFkb25seSBob3N0RWxlbWVudCA9IGluamVjdChFbGVtZW50UmVmPFNWR1BhdGhFbGVtZW50PikubmF0aXZlRWxlbWVudDtcbiAgcHJpdmF0ZSByZWFkb25seSBfYmFzZSA9IGluamVjdChGX0NPTk5FQ1RJT04pIGFzIElIYXNDb25uZWN0aW9uQ29sb3IgJiBJSGFzQ29ubmVjdGlvbkZyb21UbztcblxuICBwdWJsaWMgZ2V0IGZQYXRoSWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fYmFzZS5mSWQoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbGlua1RvR3JhZGllbnQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gRl9DT05ORUNUSU9OX0lERU5USUZJRVJTLmxpbmtUb0dyYWRpZW50KFxuICAgICAgdGhpcy5fYmFzZS5mSWQoKSArIHRoaXMuX2Jhc2UuZk91dHB1dElkKCkgKyB0aGlzLl9iYXNlLmZJbnB1dElkKCksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYXR0ckNvbm5lY3Rpb25JZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBGX0NPTk5FQ1RJT05fSURFTlRJRklFUlMuY29ubmVjdGlvbklkKFxuICAgICAgdGhpcy5fYmFzZS5mSWQoKSArIHRoaXMuX2Jhc2UuZk91dHB1dElkKCkgKyB0aGlzLl9iYXNlLmZJbnB1dElkKCksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBpbml0aWFsaXplKCk6IHZvaWQge1xuICAgIHRoaXMuZGVzZWxlY3QoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRQYXRoKHBhdGg6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuaG9zdEVsZW1lbnQuc2V0QXR0cmlidXRlKCdkJywgYCR7cGF0aH1gKTtcbiAgfVxuXG4gIHB1YmxpYyBzZWxlY3QoKTogdm9pZCB7XG4gICAgdGhpcy5ob3N0RWxlbWVudC5zZXRBdHRyaWJ1dGUoXG4gICAgICAnbWFya2VyLXN0YXJ0JyxcbiAgICAgIGB1cmwoIyR7Z2V0TWFya2VyU2VsZWN0ZWRTdGFydElkKHRoaXMuX2Jhc2UuZklkKCkpfSlgLFxuICAgICk7XG4gICAgdGhpcy5ob3N0RWxlbWVudC5zZXRBdHRyaWJ1dGUoXG4gICAgICAnbWFya2VyLWVuZCcsXG4gICAgICBgdXJsKCMke2dldE1hcmtlclNlbGVjdGVkRW5kSWQodGhpcy5fYmFzZS5mSWQoKSl9KWAsXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBkZXNlbGVjdCgpOiB2b2lkIHtcbiAgICB0aGlzLmhvc3RFbGVtZW50LnNldEF0dHJpYnV0ZSgnbWFya2VyLXN0YXJ0JywgYHVybCgjJHtnZXRNYXJrZXJTdGFydElkKHRoaXMuX2Jhc2UuZklkKCkpfSlgKTtcbiAgICB0aGlzLmhvc3RFbGVtZW50LnNldEF0dHJpYnV0ZSgnbWFya2VyLWVuZCcsIGB1cmwoIyR7Z2V0TWFya2VyRW5kSWQodGhpcy5fYmFzZS5mSWQoKSl9KWApO1xuICB9XG59XG4iXX0=
@@ -1,34 +1,24 @@
1
- import { ChangeDetectionStrategy, Component, Inject, } from "@angular/core";
1
+ import { ChangeDetectionStrategy, Component, ElementRef, inject } from '@angular/core';
2
2
  import { F_CONNECTION_IDENTIFIERS } from '../f-connection-identifiers';
3
3
  import { F_CONNECTION } from '../f-connection.injection-token';
4
4
  import * as i0 from "@angular/core";
5
5
  export class FConnectionSelectionComponent {
6
- elementReference;
7
- base;
6
+ hostElement = inject((ElementRef)).nativeElement;
7
+ _base = inject(F_CONNECTION);
8
8
  get connectionForSelectionId() {
9
- return F_CONNECTION_IDENTIFIERS.connectionForSelectionId(this.base.fId() + this.base.fOutputId + this.base.fInputId);
10
- }
11
- get hostElement() {
12
- return this.elementReference.nativeElement;
13
- }
14
- constructor(elementReference, base) {
15
- this.elementReference = elementReference;
16
- this.base = base;
9
+ return F_CONNECTION_IDENTIFIERS.connectionForSelectionId(this._base.fId() + this._base.fOutputId() + this._base.fInputId());
17
10
  }
18
11
  setPath(path) {
19
- this.hostElement.setAttribute("d", `${path}`);
12
+ this.hostElement.setAttribute('d', `${path}`);
20
13
  }
21
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionSelectionComponent, deps: [{ token: i0.ElementRef }, { token: F_CONNECTION }], target: i0.ɵɵFactoryTarget.Component });
14
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionSelectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
22
15
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FConnectionSelectionComponent, selector: "path[fConnectionSelection]", host: { properties: { "attr.id": "connectionForSelectionId" }, classAttribute: "f-component f-connection-selection" }, ngImport: i0, template: '', isInline: true, styles: [":host{fill:none;pointer-events:stroke}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
23
16
  }
24
17
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionSelectionComponent, decorators: [{
25
18
  type: Component,
26
- args: [{ selector: "path[fConnectionSelection]", template: '', changeDetection: ChangeDetectionStrategy.OnPush, host: {
27
- class: "f-component f-connection-selection",
19
+ args: [{ selector: 'path[fConnectionSelection]', template: '', changeDetection: ChangeDetectionStrategy.OnPush, host: {
20
+ class: 'f-component f-connection-selection',
28
21
  '[attr.id]': 'connectionForSelectionId',
29
22
  }, styles: [":host{fill:none;pointer-events:stroke}\n"] }]
30
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: undefined, decorators: [{
31
- type: Inject,
32
- args: [F_CONNECTION]
33
- }] }] });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLXNlbGVjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9jb21tb24vZi1zZWxlY3Rpb24vZi1jb25uZWN0aW9uLXNlbGVjdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQWMsTUFBTSxHQUM5QixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUV2RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7O0FBYS9ELE1BQU0sT0FBTyw2QkFBNkI7SUFhNUI7SUFDc0I7SUFabEMsSUFBVyx3QkFBd0I7UUFDakMsT0FBTyx3QkFBd0IsQ0FBQyx3QkFBd0IsQ0FDdEQsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FDM0QsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUFXLFdBQVc7UUFDcEIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDO0lBQzdDLENBQUM7SUFFRCxZQUNZLGdCQUE0QyxFQUN0QixJQUEwQjtRQURoRCxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQTRCO1FBQ3RCLFNBQUksR0FBSixJQUFJLENBQXNCO0lBRTVELENBQUM7SUFFTSxPQUFPLENBQUMsSUFBWTtRQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxHQUFHLEVBQUUsR0FBSSxJQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ2xELENBQUM7d0dBcEJVLDZCQUE2Qiw0Q0FjNUIsWUFBWTs0RkFkYiw2QkFBNkIseUxBUjlCLEVBQUU7OzRGQVFELDZCQUE2QjtrQkFWekMsU0FBUzsrQkFDRSw0QkFBNEIsWUFDNUIsRUFBRSxtQkFFSyx1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNKLEtBQUssRUFBRSxvQ0FBb0M7d0JBQzNDLFdBQVcsRUFBRSwwQkFBMEI7cUJBQ3hDOzswQkFnQkksTUFBTTsyQkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5qZWN0LFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRl9DT05ORUNUSU9OX0lERU5USUZJRVJTIH0gZnJvbSAnLi4vZi1jb25uZWN0aW9uLWlkZW50aWZpZXJzJztcbmltcG9ydCB7IElIYXNDb25uZWN0aW9uRnJvbVRvIH0gZnJvbSAnLi4vaS1oYXMtY29ubmVjdGlvbi1mcm9tLXRvJztcbmltcG9ydCB7IEZfQ09OTkVDVElPTiB9IGZyb20gJy4uL2YtY29ubmVjdGlvbi5pbmplY3Rpb24tdG9rZW4nO1xuaW1wb3J0IHsgSUhhc0hvc3RFbGVtZW50IH0gZnJvbSAnLi4vLi4vLi4vaS1oYXMtaG9zdC1lbGVtZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInBhdGhbZkNvbm5lY3Rpb25TZWxlY3Rpb25dXCIsXG4gIHRlbXBsYXRlOiAnJyxcbiAgc3R5bGVVcmxzOiBbJy4vZi1jb25uZWN0aW9uLXNlbGVjdGlvbi5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiBcImYtY29tcG9uZW50IGYtY29ubmVjdGlvbi1zZWxlY3Rpb25cIixcbiAgICAnW2F0dHIuaWRdJzogJ2Nvbm5lY3Rpb25Gb3JTZWxlY3Rpb25JZCcsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIEZDb25uZWN0aW9uU2VsZWN0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgSUhhc0hvc3RFbGVtZW50IHtcblxuICBwdWJsaWMgZ2V0IGNvbm5lY3Rpb25Gb3JTZWxlY3Rpb25JZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBGX0NPTk5FQ1RJT05fSURFTlRJRklFUlMuY29ubmVjdGlvbkZvclNlbGVjdGlvbklkKFxuICAgICAgdGhpcy5iYXNlLmZJZCgpICsgdGhpcy5iYXNlLmZPdXRwdXRJZCArIHRoaXMuYmFzZS5mSW5wdXRJZCxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGdldCBob3N0RWxlbWVudCgpOiBTVkdQYXRoRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZmVyZW5jZS5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgICBwcml2YXRlIGVsZW1lbnRSZWZlcmVuY2U6IEVsZW1lbnRSZWY8U1ZHUGF0aEVsZW1lbnQ+LFxuICAgICAgQEluamVjdChGX0NPTk5FQ1RJT04pIHByaXZhdGUgYmFzZTogSUhhc0Nvbm5lY3Rpb25Gcm9tVG8sXG4gICkge1xuICB9XG5cbiAgcHVibGljIHNldFBhdGgocGF0aDogc3RyaW5nKSB7XG4gICAgdGhpcy5ob3N0RWxlbWVudC5zZXRBdHRyaWJ1dGUoXCJkXCIsIGAkeyBwYXRoIH1gKTtcbiAgfVxufVxuXG4iXX0=
23
+ }] });
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLXNlbGVjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9jb21tb24vZi1zZWxlY3Rpb24vZi1jb25uZWN0aW9uLXNlbGVjdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRXZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFhL0QsTUFBTSxPQUFPLDZCQUE2QjtJQUN4QixXQUFXLEdBQUcsTUFBTSxDQUFDLENBQUEsVUFBMEIsQ0FBQSxDQUFDLENBQUMsYUFBYSxDQUFDO0lBQzlELEtBQUssR0FBRyxNQUFNLENBQUMsWUFBWSxDQUF5QixDQUFDO0lBRXRFLElBQVcsd0JBQXdCO1FBQ2pDLE9BQU8sd0JBQXdCLENBQUMsd0JBQXdCLENBQ3RELElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUNsRSxDQUFDO0lBQ0osQ0FBQztJQUVNLE9BQU8sQ0FBQyxJQUFZO1FBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUksRUFBRSxDQUFDLENBQUM7SUFDaEQsQ0FBQzt3R0FaVSw2QkFBNkI7NEZBQTdCLDZCQUE2Qix5TEFSOUIsRUFBRTs7NEZBUUQsNkJBQTZCO2tCQVZ6QyxTQUFTOytCQUNFLDRCQUE0QixZQUM1QixFQUFFLG1CQUVLLHVCQUF1QixDQUFDLE1BQU0sUUFDekM7d0JBQ0osS0FBSyxFQUFFLG9DQUFvQzt3QkFDM0MsV0FBVyxFQUFFLDBCQUEwQjtxQkFDeEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZfQ09OTkVDVElPTl9JREVOVElGSUVSUyB9IGZyb20gJy4uL2YtY29ubmVjdGlvbi1pZGVudGlmaWVycyc7XG5pbXBvcnQgeyBJSGFzQ29ubmVjdGlvbkZyb21UbyB9IGZyb20gJy4uL2ktaGFzLWNvbm5lY3Rpb24tZnJvbS10byc7XG5pbXBvcnQgeyBGX0NPTk5FQ1RJT04gfSBmcm9tICcuLi9mLWNvbm5lY3Rpb24uaW5qZWN0aW9uLXRva2VuJztcbmltcG9ydCB7IElIYXNIb3N0RWxlbWVudCB9IGZyb20gJy4uLy4uLy4uL2ktaGFzLWhvc3QtZWxlbWVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BhdGhbZkNvbm5lY3Rpb25TZWxlY3Rpb25dJyxcbiAgdGVtcGxhdGU6ICcnLFxuICBzdHlsZVVybHM6IFsnLi9mLWNvbm5lY3Rpb24tc2VsZWN0aW9uLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdmLWNvbXBvbmVudCBmLWNvbm5lY3Rpb24tc2VsZWN0aW9uJyxcbiAgICAnW2F0dHIuaWRdJzogJ2Nvbm5lY3Rpb25Gb3JTZWxlY3Rpb25JZCcsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIEZDb25uZWN0aW9uU2VsZWN0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgSUhhc0hvc3RFbGVtZW50IHtcbiAgcHVibGljIHJlYWRvbmx5IGhvc3RFbGVtZW50ID0gaW5qZWN0KEVsZW1lbnRSZWY8U1ZHUGF0aEVsZW1lbnQ+KS5uYXRpdmVFbGVtZW50O1xuICBwcml2YXRlIHJlYWRvbmx5IF9iYXNlID0gaW5qZWN0KEZfQ09OTkVDVElPTikgYXMgSUhhc0Nvbm5lY3Rpb25Gcm9tVG87XG5cbiAgcHVibGljIGdldCBjb25uZWN0aW9uRm9yU2VsZWN0aW9uSWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gRl9DT05ORUNUSU9OX0lERU5USUZJRVJTLmNvbm5lY3Rpb25Gb3JTZWxlY3Rpb25JZChcbiAgICAgIHRoaXMuX2Jhc2UuZklkKCkgKyB0aGlzLl9iYXNlLmZPdXRwdXRJZCgpICsgdGhpcy5fYmFzZS5mSW5wdXRJZCgpLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgc2V0UGF0aChwYXRoOiBzdHJpbmcpIHtcbiAgICB0aGlzLmhvc3RFbGVtZW50LnNldEF0dHJpYnV0ZSgnZCcsIGAke3BhdGh9YCk7XG4gIH1cbn1cbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1oYXMtY29ubmVjdGlvbi1mcm9tLXRvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24vY29tbW9uL2ktaGFzLWNvbm5lY3Rpb24tZnJvbS10by50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2lnbmFsIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcblxuZXhwb3J0IGludGVyZmFjZSBJSGFzQ29ubmVjdGlvbkZyb21UbyB7XG5cbiAgZklkOiBTaWduYWw8c3RyaW5nPlxuXG4gIGZPdXRwdXRJZDogc3RyaW5nO1xuXG4gIGZJbnB1dElkOiBzdHJpbmc7XG59XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1oYXMtY29ubmVjdGlvbi1mcm9tLXRvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24vY29tbW9uL2ktaGFzLWNvbm5lY3Rpb24tZnJvbS10by50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUhhc0Nvbm5lY3Rpb25Gcm9tVG8ge1xuICBmSWQ6IFNpZ25hbDxzdHJpbmc+O1xuXG4gIGZPdXRwdXRJZDogU2lnbmFsPHN0cmluZz47XG5cbiAgZklucHV0SWQ6IFNpZ25hbDxzdHJpbmc+O1xufVxuIl19