@foblex/flow 17.7.1 → 17.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (545) hide show
  1. package/domain/f-background/add-pattern-to-background/add-pattern-to-background.execution.d.ts +2 -2
  2. package/domain/f-background/remove-background-from-store/remove-background-from-store.execution.d.ts +1 -1
  3. package/domain/f-canvas/providers.d.ts +1 -1
  4. package/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior-request.d.ts +12 -0
  5. 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
  6. package/domain/f-connection/calculate-connection-line-by-behavior/fixed-center-behavior.d.ts +2 -2
  7. package/domain/f-connection/calculate-connection-line-by-behavior/fixed-outbound-behavior.d.ts +2 -2
  8. package/domain/f-connection/calculate-connection-line-by-behavior/floating-behavior.d.ts +2 -2
  9. package/domain/f-connection/calculate-connection-line-by-behavior/index.d.ts +2 -2
  10. package/domain/f-connection/providers.d.ts +2 -2
  11. package/domain/f-connection/redraw-connections/redraw-connections.execution.d.ts +2 -2
  12. package/domain/f-connectors/add-input-to-store/add-input-to-store-request.d.ts +2 -2
  13. package/domain/f-connectors/add-input-to-store/add-input-to-store.d.ts +12 -0
  14. package/domain/f-connectors/add-input-to-store/index.d.ts +1 -1
  15. package/domain/f-connectors/add-outlet-to-store/add-outlet-to-store-request.d.ts +2 -2
  16. package/domain/f-connectors/add-outlet-to-store/{add-outlet-to-store.execution.d.ts → add-outlet-to-store.d.ts} +5 -5
  17. package/domain/f-connectors/add-outlet-to-store/index.d.ts +1 -1
  18. package/domain/f-connectors/add-output-to-store/add-output-to-store-request.d.ts +2 -2
  19. package/domain/f-connectors/add-output-to-store/{add-output-to-store.execution.d.ts → add-output-to-store.d.ts} +5 -5
  20. package/domain/f-connectors/add-output-to-store/index.d.ts +1 -1
  21. package/domain/f-connectors/{find-closest-connector/find-closest-connector.request.d.ts → calculate-closest-connector/calculate-closest-connector-request.d.ts} +3 -3
  22. package/domain/f-connectors/calculate-closest-connector/calculate-closest-connector.d.ts +16 -0
  23. package/domain/f-connectors/calculate-closest-connector/index.d.ts +2 -0
  24. 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
  25. 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
  26. 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
  27. 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
  28. package/domain/f-connectors/get-connector-and-rect/get-connector-and-rect-request.d.ts +2 -2
  29. package/domain/f-connectors/get-connector-and-rect/{get-connector-and-rect.execution.d.ts → get-connector-and-rect.d.ts} +4 -4
  30. package/domain/f-connectors/get-connector-and-rect/index.d.ts +1 -1
  31. package/domain/f-connectors/index.d.ts +1 -1
  32. package/domain/f-connectors/mark-connectable-connectors/index.d.ts +2 -2
  33. package/domain/f-connectors/mark-connectable-connectors/{mark-connectable-connectors.request.d.ts → mark-connectable-connectors-request.d.ts} +2 -2
  34. package/domain/f-connectors/mark-connectable-connectors/{mark-connectable-connectors.execution.d.ts → mark-connectable-connectors.d.ts} +5 -5
  35. package/domain/f-connectors/providers.d.ts +11 -11
  36. package/domain/f-connectors/remove-input-from-store/index.d.ts +1 -1
  37. package/domain/f-connectors/remove-input-from-store/remove-input-from-store-request.d.ts +2 -2
  38. package/domain/f-connectors/remove-input-from-store/{remove-input-from-store.execution.d.ts → remove-input-from-store.d.ts} +4 -4
  39. package/domain/f-connectors/unmark-connectable-connectors/index.d.ts +2 -2
  40. package/domain/f-connectors/unmark-connectable-connectors/{unmark-connectable-connectors.request.d.ts → unmark-connectable-connectors-request.d.ts} +2 -2
  41. package/domain/f-connectors/unmark-connectable-connectors/{unmark-connectable-connectors.execution.d.ts → unmark-connectable-connectors.d.ts} +5 -5
  42. package/domain/f-draggable/providers.d.ts +1 -1
  43. package/domain/f-draggable/start-drag-sequence/start-drag-sequence.execution.d.ts +2 -2
  44. package/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.d.ts +1 -1
  45. package/domain/f-flow/get-flow-state/providers.d.ts +1 -1
  46. package/domain/f-flow/providers.d.ts +1 -1
  47. package/domain/f-zoom/remove-zoom-from-store/remove-zoom-from-store.execution.d.ts +1 -1
  48. package/domain/i-map.d.ts +1 -3
  49. package/domain/providers.d.ts +1 -1
  50. package/esm2022/domain/css-cls.mjs +2 -2
  51. package/esm2022/domain/f-background/add-background-to-store/add-background-to-store-request.mjs +1 -1
  52. package/esm2022/domain/f-background/add-pattern-to-background/add-pattern-to-background.execution.mjs +8 -8
  53. package/esm2022/domain/f-background/add-pattern-to-background/add-pattern-to-background.request.mjs +1 -1
  54. package/esm2022/domain/f-background/providers.mjs +2 -2
  55. package/esm2022/domain/f-background/remove-background-from-store/remove-background-from-store-request.mjs +1 -1
  56. package/esm2022/domain/f-background/remove-background-from-store/remove-background-from-store.execution.mjs +2 -2
  57. package/esm2022/domain/f-background/set-background-transform/set-background-transform-request.mjs +1 -1
  58. package/esm2022/domain/f-canvas/add-canvas-to-store/add-canvas-to-store-request.mjs +1 -1
  59. package/esm2022/domain/f-canvas/center-group-or-node/center-group-or-node-request.mjs +1 -1
  60. package/esm2022/domain/f-canvas/center-group-or-node/center-group-or-node.execution.mjs +1 -1
  61. package/esm2022/domain/f-canvas/fit-to-flow/fit-to-flow-request.mjs +1 -1
  62. package/esm2022/domain/f-canvas/fit-to-flow/fit-to-flow.execution.mjs +1 -1
  63. package/esm2022/domain/f-canvas/get-canvas/get-canvas.execution.mjs +1 -1
  64. package/esm2022/domain/f-canvas/input-canvas-position/input-canvas-position-request.mjs +1 -1
  65. package/esm2022/domain/f-canvas/input-canvas-position/input-canvas-position.execution.mjs +1 -1
  66. package/esm2022/domain/f-canvas/input-canvas-scale/input-canvas-scale-request.mjs +1 -1
  67. package/esm2022/domain/f-canvas/providers.mjs +2 -2
  68. package/esm2022/domain/f-canvas/redraw-canvas-with-animation/redraw-canvas-with-animation-request.mjs +1 -1
  69. package/esm2022/domain/f-canvas/reset-scale-and-center/reset-scale-and-center-request.mjs +1 -1
  70. package/esm2022/domain/f-canvas/reset-scale-and-center/reset-scale-and-center.execution.mjs +1 -1
  71. package/esm2022/domain/f-canvas/update-scale/update-scale-request.mjs +1 -1
  72. package/esm2022/domain/f-connection/add-connection-for-create-to-store/add-connection-for-create-to-store-request.mjs +1 -1
  73. package/esm2022/domain/f-connection/add-connection-marker-to-store/add-connection-marker-to-store-request.mjs +1 -1
  74. package/esm2022/domain/f-connection/add-connection-to-store/add-connection-to-store-request.mjs +1 -1
  75. package/esm2022/domain/f-connection/add-snap-connection-to-store/add-snap-connection-to-store-request.mjs +1 -1
  76. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior-request.mjs +16 -0
  77. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior.mjs +32 -0
  78. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/fixed-center-behavior.mjs +4 -4
  79. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/fixed-outbound-behavior.mjs +8 -4
  80. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/floating-behavior.mjs +10 -10
  81. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/index.mjs +3 -3
  82. package/esm2022/domain/f-connection/create-connection-markers/create-connection-markers.execution.mjs +1 -1
  83. package/esm2022/domain/f-connection/providers.mjs +4 -4
  84. package/esm2022/domain/f-connection/redraw-connections/redraw-connections-request.mjs +1 -1
  85. package/esm2022/domain/f-connection/redraw-connections/redraw-connections.execution.mjs +9 -9
  86. package/esm2022/domain/f-connection/remove-connection-from-store/remove-connection-from-store-request.mjs +1 -1
  87. package/esm2022/domain/f-connection/remove-connection-from-store/remove-connection-from-store.execution.mjs +1 -1
  88. package/esm2022/domain/f-connection/remove-connection-marker-from-store/remove-connection-marker-from-store-request.mjs +1 -1
  89. package/esm2022/domain/f-connectors/add-input-to-store/add-input-to-store-request.mjs +4 -4
  90. package/esm2022/domain/f-connectors/add-input-to-store/add-input-to-store.mjs +25 -0
  91. package/esm2022/domain/f-connectors/add-input-to-store/index.mjs +2 -2
  92. package/esm2022/domain/f-connectors/add-outlet-to-store/add-outlet-to-store-request.mjs +4 -4
  93. package/esm2022/domain/f-connectors/add-outlet-to-store/add-outlet-to-store.mjs +25 -0
  94. package/esm2022/domain/f-connectors/add-outlet-to-store/index.mjs +2 -2
  95. package/esm2022/domain/f-connectors/add-output-to-store/add-output-to-store-request.mjs +4 -4
  96. package/esm2022/domain/f-connectors/add-output-to-store/add-output-to-store.mjs +25 -0
  97. package/esm2022/domain/f-connectors/add-output-to-store/index.mjs +2 -2
  98. package/esm2022/domain/f-connectors/calculate-closest-connector/calculate-closest-connector-request.mjs +10 -0
  99. package/esm2022/domain/f-connectors/calculate-closest-connector/calculate-closest-connector.mjs +49 -0
  100. package/esm2022/domain/f-connectors/calculate-closest-connector/index.mjs +3 -0
  101. package/esm2022/domain/f-connectors/find-connectable-connector-using-priority-and-position/find-connectable-connector-using-priority-and-position.execution.mjs +9 -6
  102. 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
  103. 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
  104. 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 +8 -8
  105. 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
  106. package/esm2022/domain/f-connectors/get-connector-and-rect/get-connector-and-rect-request.mjs +4 -4
  107. package/esm2022/domain/f-connectors/get-connector-and-rect/get-connector-and-rect.mjs +31 -0
  108. package/esm2022/domain/f-connectors/get-connector-and-rect/index.mjs +2 -2
  109. package/esm2022/domain/f-connectors/index.mjs +2 -2
  110. package/esm2022/domain/f-connectors/mark-connectable-connectors/index.mjs +3 -3
  111. package/esm2022/domain/f-connectors/mark-connectable-connectors/mark-connectable-connectors-request.mjs +8 -0
  112. package/esm2022/domain/f-connectors/mark-connectable-connectors/mark-connectable-connectors.mjs +30 -0
  113. package/esm2022/domain/f-connectors/providers.mjs +20 -20
  114. package/esm2022/domain/f-connectors/remove-input-from-store/index.mjs +2 -2
  115. package/esm2022/domain/f-connectors/remove-input-from-store/remove-input-from-store-request.mjs +4 -4
  116. package/esm2022/domain/f-connectors/remove-input-from-store/remove-input-from-store.mjs +25 -0
  117. package/esm2022/domain/f-connectors/remove-outlet-from-store/remove-outlet-from-store-request.mjs +1 -1
  118. package/esm2022/domain/f-connectors/remove-output-from-store/remove-output-from-store-request.mjs +1 -1
  119. package/esm2022/domain/f-connectors/unmark-connectable-connectors/index.mjs +3 -3
  120. package/esm2022/domain/f-connectors/unmark-connectable-connectors/unmark-connectable-connectors-request.mjs +8 -0
  121. package/esm2022/domain/f-connectors/unmark-connectable-connectors/unmark-connectable-connectors.mjs +30 -0
  122. package/esm2022/domain/f-draggable/add-dnd-to-store/add-dnd-to-store-request.mjs +1 -1
  123. package/esm2022/domain/f-draggable/emit-selection-change-event/emit-selection-change-event.execution.mjs +1 -1
  124. package/esm2022/domain/f-draggable/on-pointer-move/on-pointer-move-request.mjs +1 -1
  125. package/esm2022/domain/f-draggable/on-pointer-move/on-pointer-move.execution.mjs +1 -1
  126. package/esm2022/domain/f-draggable/providers.mjs +2 -2
  127. package/esm2022/domain/f-draggable/start-drag-sequence/start-drag-sequence.execution.mjs +3 -3
  128. package/esm2022/domain/f-flow/add-flow-to-store/add-flow-to-store-request.mjs +1 -1
  129. package/esm2022/domain/f-flow/get-flow/get-flow.execution.mjs +1 -1
  130. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.mjs +5 -5
  131. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes-request.mjs +1 -1
  132. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.mjs +15 -9
  133. package/esm2022/domain/f-flow/get-flow-state/get-flow-state.execution.mjs +2 -2
  134. package/esm2022/domain/f-flow/get-flow-state/providers.mjs +2 -2
  135. package/esm2022/domain/f-flow/providers.mjs +2 -2
  136. package/esm2022/domain/f-line-alignment/add-line-alignment-to-store/add-line-alignment-to-store-request.mjs +1 -1
  137. package/esm2022/domain/f-line-alignment/providers.mjs +2 -2
  138. package/esm2022/domain/f-node/add-node-to-store/add-node-to-store-request.mjs +1 -1
  139. package/esm2022/domain/f-node/calculate-input-connections/calculate-input-connections-request.mjs +1 -1
  140. package/esm2022/domain/f-node/calculate-input-connections/calculate-input-connections.mjs +3 -6
  141. package/esm2022/domain/f-node/calculate-output-connections/calculate-output-connections-request.mjs +1 -1
  142. package/esm2022/domain/f-node/calculate-output-connections/calculate-output-connections.mjs +3 -6
  143. package/esm2022/domain/f-node/fit-to-child-nodes-and-groups/fit-to-child-nodes-and-groups-request.mjs +1 -1
  144. package/esm2022/domain/f-node/fit-to-child-nodes-and-groups/fit-to-child-nodes-and-groups.mjs +1 -1
  145. package/esm2022/domain/f-node/get-child-node-ids/get-child-node-ids.mjs +1 -1
  146. package/esm2022/domain/f-node/get-child-node-ids/get-child-node-ids.request.mjs +1 -1
  147. package/esm2022/domain/f-node/get-node-padding/get-node-padding.mjs +2 -2
  148. package/esm2022/domain/f-node/get-node-padding/get-node-padding.request.mjs +1 -1
  149. package/esm2022/domain/f-node/get-parent-nodes/get-parent-nodes.mjs +1 -1
  150. package/esm2022/domain/f-node/get-parent-nodes/get-parent-nodes.request.mjs +1 -1
  151. package/esm2022/domain/f-node/providers.mjs +3 -3
  152. package/esm2022/domain/f-node/remove-node-from-store/remove-node-from-store-request.mjs +1 -1
  153. package/esm2022/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed-request.mjs +1 -1
  154. package/esm2022/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed.mjs +1 -1
  155. package/esm2022/domain/f-selection/get-can-be-selected-items/get-can-be-selected-items.execution.mjs +3 -3
  156. package/esm2022/domain/f-selection/get-current-selection/get-current-selection.execution.mjs +2 -2
  157. package/esm2022/domain/f-selection/providers.mjs +2 -2
  158. package/esm2022/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.execution.mjs +1 -1
  159. package/esm2022/domain/f-selection/select-and-update-node-layer/select-and-update-node-layer.request.mjs +1 -1
  160. package/esm2022/domain/f-zoom/add-zoom-to-store/add-zoom-to-store-request.mjs +1 -1
  161. package/esm2022/domain/f-zoom/add-zoom-to-store/add-zoom-to-store.execution.mjs +2 -2
  162. package/esm2022/domain/f-zoom/providers.mjs +2 -2
  163. package/esm2022/domain/f-zoom/remove-zoom-from-store/remove-zoom-from-store.execution.mjs +3 -3
  164. package/esm2022/domain/f-zoom/set-zoom/set-zoom-request.mjs +1 -1
  165. package/esm2022/domain/f-zoom/set-zoom/set-zoom.execution.mjs +1 -1
  166. package/esm2022/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.execution.mjs +1 -1
  167. package/esm2022/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.request.mjs +1 -1
  168. package/esm2022/domain/get-element-rounded-rect/get-element-rounded-rect.execution.mjs +1 -1
  169. package/esm2022/domain/get-normalized-connector-rect/get-normalized-connector-rect.execution.mjs +1 -1
  170. package/esm2022/domain/get-normalized-element-rect/get-normalized-element-rect-request.mjs +1 -1
  171. package/esm2022/domain/get-normalized-element-rect/get-normalized-element-rect.execution.mjs +2 -2
  172. package/esm2022/domain/get-normalized-point/get-normalized-point-request.mjs +1 -1
  173. package/esm2022/domain/get-normalized-point/get-normalized-point.execution.mjs +1 -1
  174. package/esm2022/domain/i-map.mjs +1 -1
  175. package/esm2022/domain/log-deprecated.mjs +1 -1
  176. package/esm2022/domain/log-execution-time.mjs +1 -1
  177. package/esm2022/domain/providers.mjs +2 -2
  178. package/esm2022/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.execution.mjs +2 -2
  179. package/esm2022/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.request.mjs +2 -3
  180. package/esm2022/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.execution.mjs +1 -1
  181. package/esm2022/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element.request.mjs +1 -1
  182. package/esm2022/domain/update-item-and-children-layers/update-item-and-children-layers.execution.mjs +1 -1
  183. package/esm2022/drag-toolkit/drag-and-drop-base.mjs +3 -3
  184. package/esm2022/drag-toolkit/event.extensions.mjs +1 -1
  185. package/esm2022/drag-toolkit/pointer-events/i-pointer-up-event.mjs +1 -1
  186. package/esm2022/drag-toolkit/pointer-events/i-touch-down-event.mjs +1 -1
  187. package/esm2022/drag-toolkit/pointer-events/i-touch-move-event.mjs +1 -1
  188. package/esm2022/f-backgroud/f-background.component.mjs +4 -4
  189. package/esm2022/f-backgroud/f-circle-pattern/f-circle-pattern.component.mjs +7 -7
  190. package/esm2022/f-backgroud/f-rect-pattern/f-rect-pattern.component.mjs +7 -7
  191. package/esm2022/f-backgroud/index.mjs +1 -1
  192. package/esm2022/f-backgroud/providers.mjs +2 -2
  193. package/esm2022/f-canvas/f-canvas-base.mjs +1 -1
  194. package/esm2022/f-canvas/f-canvas.component.mjs +3 -3
  195. package/esm2022/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points-request.mjs +1 -1
  196. package/esm2022/f-connection/common/domain/calculate-connection-center/calculate-connection-center-request.mjs +1 -1
  197. package/esm2022/f-connection/common/domain/calculate-connection-center/calculate-connection-center.handler.mjs +2 -2
  198. package/esm2022/f-connection/common/domain/f-bezier.path-builder.mjs +27 -11
  199. package/esm2022/f-connection/common/domain/f-segment.path-builder.mjs +43 -25
  200. package/esm2022/f-connection/common/domain/f-straight.path-builder.mjs +9 -3
  201. package/esm2022/f-connection/common/f-connection-base.mjs +36 -27
  202. package/esm2022/f-connection/common/f-connection-identifiers.mjs +2 -2
  203. package/esm2022/f-connection/common/f-connection-text/f-connection-text-path.directive.mjs +20 -30
  204. package/esm2022/f-connection/common/f-connection-text/f-connection-text.component.mjs +20 -33
  205. package/esm2022/f-connection/common/f-drag-handle/f-connection-drag-handle-end.component.mjs +4 -4
  206. package/esm2022/f-connection/common/f-drag-handle/f-connection-drag-handle-start.component.mjs +4 -4
  207. package/esm2022/f-connection/common/f-gradient/f-connection-gradient.component.mjs +18 -28
  208. package/esm2022/f-connection/common/f-path/f-connection-path.component.mjs +16 -26
  209. package/esm2022/f-connection/common/f-selection/f-connection-selection.component.mjs +10 -20
  210. package/esm2022/f-connection/common/i-has-connection-color.mjs +1 -1
  211. package/esm2022/f-connection/common/i-has-connection-from-to.mjs +1 -1
  212. package/esm2022/f-connection/f-connection/f-connection.component.mjs +25 -26
  213. package/esm2022/f-connection/f-connection-builder/f-connection-builders.mjs +1 -1
  214. package/esm2022/f-connection/f-connection-builder/f-connection-factory.mjs +1 -1
  215. package/esm2022/f-connection/f-connection-builder/i-f-connection-builder-response.mjs +1 -1
  216. package/esm2022/f-connection/f-connection-center/f-connection-center.directive.mjs +21 -4
  217. package/esm2022/f-connection/f-connection-content/f-connection-content.mjs +96 -0
  218. package/esm2022/f-connection/f-connection-content/index.mjs +3 -0
  219. package/esm2022/f-connection/f-connection-content/polyline-content-engine/i-polyline-content.mjs +2 -0
  220. package/esm2022/f-connection/f-connection-content/polyline-content-engine/index.mjs +6 -0
  221. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-content-align.mjs +6 -0
  222. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-content-layout-engine.mjs +29 -0
  223. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-content-place.mjs +65 -0
  224. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/i-sampler-result.mjs +2 -0
  225. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/i-tangent.mjs +2 -0
  226. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/index.mjs +5 -0
  227. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/polyline-sampler.mjs +143 -0
  228. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/polyline.mjs +68 -0
  229. package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +17 -21
  230. package/esm2022/f-connection/f-marker/f-marker-base.mjs +2 -8
  231. package/esm2022/f-connection/f-marker/f-marker.directive.mjs +13 -22
  232. package/esm2022/f-connection/f-snap-connection/f-snap-connection.component.mjs +17 -21
  233. package/esm2022/f-connection/index.mjs +2 -1
  234. package/esm2022/f-connection/providers.mjs +3 -3
  235. package/esm2022/f-connectors/f-connector-base.mjs +1 -1
  236. package/esm2022/f-connectors/f-node-input/f-node-input-base.mjs +2 -2
  237. package/esm2022/f-connectors/f-node-input/f-node-input.directive.mjs +35 -33
  238. package/esm2022/f-connectors/f-node-outlet/f-node-outlet-base.mjs +6 -6
  239. package/esm2022/f-connectors/f-node-outlet/f-node-outlet.directive.mjs +23 -26
  240. package/esm2022/f-connectors/f-node-output/f-node-output-base.mjs +4 -4
  241. package/esm2022/f-connectors/f-node-output/f-node-output.directive.mjs +31 -33
  242. package/esm2022/f-connectors/f-source-connector-base.mjs +11 -0
  243. package/esm2022/f-connectors/index.mjs +2 -1
  244. package/esm2022/f-connectors/providers.mjs +2 -2
  245. package/esm2022/f-draggable/domain/f-drag-started-event.mjs +4 -2
  246. package/esm2022/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.execution.mjs +1 -1
  247. package/esm2022/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.request.mjs +1 -1
  248. package/esm2022/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.request.mjs +1 -1
  249. package/esm2022/f-draggable/domain/is-connection-under-node/is-connection-under-node.execution.mjs +7 -7
  250. package/esm2022/f-draggable/domain/is-connection-under-node/is-connection-under-node.request.mjs +1 -1
  251. package/esm2022/f-draggable/f-canvas/move-finalize/f-canvas-move-finalize.execution.mjs +2 -2
  252. package/esm2022/f-draggable/f-canvas/move-finalize/f-canvas-move-finalize.request.mjs +1 -1
  253. package/esm2022/f-draggable/f-canvas/move-preparation/f-canvas-move-preparation.execution.mjs +1 -1
  254. package/esm2022/f-draggable/f-canvas/move-preparation/f-canvas-move-preparation.request.mjs +1 -1
  255. package/esm2022/f-draggable/f-connection/f-create-connection/create-finalize/f-create-connection-finalize.execution.mjs +20 -18
  256. package/esm2022/f-draggable/f-connection/f-create-connection/create-finalize/f-create-connection-finalize.request.mjs +1 -1
  257. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/drag-handler-preparation/f-create-connection-drag-handler-preparation.execution.mjs +2 -2
  258. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/drag-handler-preparation/f-create-connection-drag-handler-preparation.request.mjs +1 -1
  259. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/f-create-connection-preparation.execution.mjs +1 -1
  260. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/f-create-connection-preparation.request.mjs +1 -1
  261. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-outlet-preparation/f-create-connection-from-outlet-preparation.execution.mjs +1 -1
  262. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-outlet-preparation/f-create-connection-from-outlet-preparation.request.mjs +1 -1
  263. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/f-create-connection-from-output-preparation.execution.mjs +1 -1
  264. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/from-output-preparation/f-create-connection-from-output-preparation.request.mjs +1 -1
  265. package/esm2022/f-draggable/f-connection/f-create-connection/f-create-connection.drag-handler.mjs +38 -36
  266. package/esm2022/f-draggable/f-connection/f-create-connection/get-first-connectable-output/get-first-connectable-output.execution.mjs +1 -1
  267. package/esm2022/f-draggable/f-connection/f-create-connection/get-first-connectable-output/get-first-connectable-output.request.mjs +1 -1
  268. package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-connection.drag-handler.mjs +23 -21
  269. package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-connection.event.mjs +1 -1
  270. package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-source.drag-handler.mjs +6 -6
  271. package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-target.drag-handler.mjs +5 -5
  272. package/esm2022/f-draggable/f-connection/f-reassign-connection/i-f-reassign-handler.mjs +1 -1
  273. package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-finalize/f-reassign-connection-finalize.execution.mjs +5 -5
  274. package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-finalize/f-reassign-connection-finalize.request.mjs +1 -1
  275. package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-preparation/f-reassign-connection-preparation.execution.mjs +3 -3
  276. package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-preparation/f-reassign-connection-preparation.request.mjs +1 -1
  277. package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-preparation/is-pointer-inside-start-or-end-drag-handles.mjs +1 -1
  278. package/esm2022/f-draggable/f-drag-blocker.directive.mjs +2 -2
  279. package/esm2022/f-draggable/f-drag-handler/i-f-drag-handler.mjs +1 -1
  280. package/esm2022/f-draggable/f-draggable-base.mjs +3 -10
  281. package/esm2022/f-draggable/f-draggable.directive.mjs +32 -36
  282. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-finalize/drop-to-group-finalize-request.mjs +1 -1
  283. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-finalize/drop-to-group-finalize.mjs +1 -1
  284. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-preparation/drop-to-group-preparation-request.mjs +1 -1
  285. package/esm2022/f-draggable/f-drop-to-group/drop-to-group-preparation/drop-to-group-preparation.mjs +1 -1
  286. package/esm2022/f-draggable/f-drop-to-group/f-node-drop-to-group.drag-handler.mjs +12 -19
  287. package/esm2022/f-draggable/f-drop-to-group/providers.mjs +2 -2
  288. package/esm2022/f-draggable/f-drop-to-group/sort-containers-for-drop-by-layer/sort-containers-for-drop-by-layer-request.mjs +1 -1
  289. package/esm2022/f-draggable/f-drop-to-group/sort-containers-for-drop-by-layer/sort-containers-for-drop-by-layer.mjs +13 -7
  290. package/esm2022/f-draggable/f-node-move/connection-drag-handlers/base-connection.drag-handler.mjs +4 -4
  291. package/esm2022/f-draggable/f-node-move/constraint/drag-constraint-pipeline.mjs +1 -1
  292. package/esm2022/f-draggable/f-node-move/constraint/expand-rect-from-baseline.mjs +5 -3
  293. package/esm2022/f-draggable/f-node-move/constraint/rect-constraint.mjs +3 -2
  294. package/esm2022/f-draggable/f-node-move/constraint/snap-to-grid.mjs +3 -3
  295. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/build-drag-hierarchy/build-drag-hierarchy-request.mjs +1 -1
  296. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/build-drag-hierarchy/build-drag-hierarchy-response.mjs +1 -1
  297. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/build-drag-hierarchy/build-drag-hierarchy.mjs +1 -1
  298. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/calculate-drag-limits-request.mjs +1 -1
  299. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/calculate-drag-limits.mjs +3 -3
  300. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/i-drag-limits.mjs +1 -1
  301. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/calculate-drag-limits/i-soft-limit.mjs +1 -1
  302. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-drag-model-from-selection-request.mjs +1 -1
  303. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-drag-model-from-selection.mjs +8 -11
  304. 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-request.mjs +1 -1
  305. 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
  306. 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-request.mjs +1 -1
  307. 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
  308. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-summary-drag-handler/create-summary-drag-handler-request.mjs +1 -1
  309. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/create-summary-drag-handler/create-summary-drag-handler.mjs +1 -1
  310. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/get-node-bounding-include-paddings/get-node-bounding-include-paddings-request.mjs +1 -1
  311. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/get-node-bounding-include-paddings/get-node-bounding-include-paddings-response.mjs +1 -1
  312. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/get-node-bounding-include-paddings/get-node-bounding-include-paddings.mjs +2 -2
  313. package/esm2022/f-draggable/f-node-move/create-drag-model-from-selection/providers.mjs +1 -1
  314. package/esm2022/f-draggable/f-node-move/create-snap-lines/create-snap-lines-request.mjs +1 -1
  315. package/esm2022/f-draggable/f-node-move/create-snap-lines/create-snap-lines.mjs +1 -1
  316. package/esm2022/f-draggable/f-node-move/create-snap-lines/snap-lines.drag-handler.mjs +1 -1
  317. package/esm2022/f-draggable/f-node-move/f-move-nodes.event.mjs +1 -1
  318. package/esm2022/f-draggable/f-node-move/move-drag-handler.mjs +1 -1
  319. package/esm2022/f-draggable/f-node-move/move-finalize/f-node-move-finalize.execution.mjs +2 -2
  320. package/esm2022/f-draggable/f-node-move/move-finalize/f-node-move-finalize.request.mjs +1 -1
  321. package/esm2022/f-draggable/f-node-move/move-preparation/f-node-move-preparation.execution.mjs +1 -1
  322. package/esm2022/f-draggable/f-node-move/move-preparation/f-node-move-preparation.request.mjs +1 -1
  323. package/esm2022/f-draggable/f-node-move/move-summary-drag-handler.mjs +2 -2
  324. package/esm2022/f-draggable/f-node-resize/apply-child-resize-constraints/apply-child-resize-constraints-request.mjs +1 -1
  325. package/esm2022/f-draggable/f-node-resize/apply-child-resize-constraints/apply-child-resize-constraints.mjs +3 -2
  326. package/esm2022/f-draggable/f-node-resize/apply-parent-resize-constraints/apply-parent-resize-constraints-request.mjs +1 -1
  327. package/esm2022/f-draggable/f-node-resize/apply-parent-resize-constraints/apply-parent-resize-constraints.mjs +15 -13
  328. package/esm2022/f-draggable/f-node-resize/calculate-changed-rect-from-difference/calculate-changed-rect-from-difference-request.mjs +1 -1
  329. package/esm2022/f-draggable/f-node-resize/calculate-changed-rect-from-difference/calculate-changed-rect-from-difference.mjs +1 -1
  330. package/esm2022/f-draggable/f-node-resize/calculate-direct-children-union-rect/calculate-direct-children-union-rect-request.mjs +1 -1
  331. package/esm2022/f-draggable/f-node-resize/calculate-direct-children-union-rect/calculate-direct-children-union-rect.mjs +1 -1
  332. package/esm2022/f-draggable/f-node-resize/calculate-resize-limits/calculate-resize-limits-request.mjs +1 -1
  333. package/esm2022/f-draggable/f-node-resize/calculate-resize-limits/calculate-resize-limits.mjs +2 -2
  334. package/esm2022/f-draggable/f-node-resize/constraint/i-resize-constraint.mjs +1 -1
  335. package/esm2022/f-draggable/f-node-resize/constraint/i-resize-limit.mjs +1 -1
  336. package/esm2022/f-draggable/f-node-resize/constraint/i-resize-limits.mjs +1 -1
  337. package/esm2022/f-draggable/f-node-resize/node-resize.drag-handler.mjs +1 -1
  338. package/esm2022/f-draggable/f-node-resize/resize-finalize/node-resize-finalize-request.mjs +1 -1
  339. package/esm2022/f-draggable/f-node-resize/resize-finalize/node-resize-finalize.mjs +2 -2
  340. package/esm2022/f-draggable/f-node-resize/resize-preparation/node-resize-preparation-request.mjs +1 -1
  341. package/esm2022/f-draggable/f-node-resize/resize-preparation/node-resize-preparation.mjs +2 -2
  342. package/esm2022/f-draggable/f-node-rotate/calculate-difference-after-rotation.mjs +1 -1
  343. package/esm2022/f-draggable/f-node-rotate/f-node-rotate.drag-handler.mjs +4 -4
  344. package/esm2022/f-draggable/f-node-rotate/rotate-finalize/f-node-rotate-finalize.execution.mjs +5 -4
  345. package/esm2022/f-draggable/f-node-rotate/rotate-finalize/f-node-rotate-finalize.request.mjs +1 -1
  346. package/esm2022/f-draggable/f-node-rotate/rotate-preparation/f-node-rotate-preparation.execution.mjs +29 -17
  347. package/esm2022/f-draggable/f-node-rotate/rotate-preparation/f-node-rotate-preparation.request.mjs +1 -1
  348. package/esm2022/f-draggable/f-single-select/f-single-select.execution.mjs +1 -1
  349. package/esm2022/f-draggable/f-single-select/f-single-select.request.mjs +1 -1
  350. package/esm2022/f-draggable/i-f-drag-and-drop-plugin.mjs +1 -1
  351. package/esm2022/f-draggable/index.mjs +1 -1
  352. package/esm2022/f-draggable/providers.mjs +2 -2
  353. package/esm2022/f-external-item/domain/constraint/external-rect-constraint.mjs +3 -3
  354. package/esm2022/f-external-item/domain/create-placeholder/f-external-item-create-placeholder.execution.mjs +1 -1
  355. package/esm2022/f-external-item/domain/create-preview/f-external-item-create-preview.execution.mjs +2 -2
  356. package/esm2022/f-external-item/domain/f-create-node.event.mjs +1 -1
  357. package/esm2022/f-external-item/domain/f-external-item.drag-handler.mjs +2 -2
  358. package/esm2022/f-external-item/domain/finalize/f-external-item-finalize.execution.mjs +9 -10
  359. package/esm2022/f-external-item/domain/finalize/f-external-item-finalize.request.mjs +1 -1
  360. package/esm2022/f-external-item/domain/preparation/f-external-item-preparation.execution.mjs +2 -2
  361. package/esm2022/f-external-item/domain/preparation/f-external-item-preparation.request.mjs +1 -1
  362. package/esm2022/f-external-item/domain/prevent-default-is-external-item/prevent-default-is-external-item.execution.mjs +5 -5
  363. package/esm2022/f-external-item/domain/prevent-default-is-external-item/prevent-default-is-external-item.request.mjs +1 -1
  364. package/esm2022/f-external-item/f-external-item-base.mjs +1 -1
  365. package/esm2022/f-external-item/f-external-item-placeholder.directive.mjs +5 -5
  366. package/esm2022/f-external-item/f-external-item-preview.directive.mjs +4 -4
  367. package/esm2022/f-external-item/f-external-item.directive.mjs +13 -20
  368. package/esm2022/f-external-item/f-external-item.service.mjs +3 -3
  369. package/esm2022/f-external-item/providers.mjs +2 -2
  370. package/esm2022/f-flow/f-flow.component.mjs +5 -5
  371. package/esm2022/f-flow/providers.mjs +2 -2
  372. package/esm2022/f-flow.module.mjs +3 -3
  373. package/esm2022/f-line-alignment/domain/snap-line-element.mjs +19 -15
  374. package/esm2022/f-line-alignment/domain/snap-line-service.mjs +16 -18
  375. package/esm2022/f-line-alignment/f-line-alignment.component.mjs +4 -4
  376. package/esm2022/f-line-alignment/providers.mjs +2 -2
  377. package/esm2022/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.execution.mjs +14 -18
  378. package/esm2022/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.request.mjs +1 -1
  379. package/esm2022/f-minimap/domain/f-minimap-data.mjs +1 -1
  380. package/esm2022/f-minimap/domain/f-minimap.drag-handler.mjs +25 -25
  381. package/esm2022/f-minimap/domain/minimap-calculate-svg-scale-and-view-box/minimap-calculate-svg-scale-and-view-box.execution.mjs +2 -2
  382. package/esm2022/f-minimap/domain/minimap-calculate-view-box/minimap-calculate-view-box.execution.mjs +9 -8
  383. package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.mjs +9 -11
  384. package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.request.mjs +1 -1
  385. package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.mjs +26 -32
  386. package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.request.mjs +1 -1
  387. package/esm2022/f-minimap/domain/minimap-draw-nodes/minimap-draw-nodes.execution.mjs +2 -1
  388. package/esm2022/f-minimap/f-minimap-canvas.directive.mjs +2 -2
  389. package/esm2022/f-minimap/f-minimap-flow.directive.mjs +3 -3
  390. package/esm2022/f-minimap/f-minimap-view.directive.mjs +2 -2
  391. package/esm2022/f-minimap/f-minimap.component.mjs +1 -1
  392. package/esm2022/f-node/f-drag-handle.directive.mjs +3 -3
  393. package/esm2022/f-node/f-group.directive.mjs +6 -4
  394. package/esm2022/f-node/f-node-base.mjs +1 -1
  395. package/esm2022/f-node/f-node.directive.mjs +16 -14
  396. package/esm2022/f-node/f-resize-handle/f-resize-handle.directive.mjs +5 -5
  397. package/esm2022/f-selection-area/domain/providers.mjs +2 -2
  398. package/esm2022/f-selection-area/domain/selection-area-finalize/selection-area-finalize.execution.mjs +2 -2
  399. package/esm2022/f-selection-area/domain/selection-area-finalize/selection-area-finalize.request.mjs +1 -1
  400. package/esm2022/f-selection-area/domain/selection-area-preparation/selection-area-preparation.execution.mjs +2 -2
  401. package/esm2022/f-selection-area/domain/selection-area-preparation/selection-area-preparation.request.mjs +1 -1
  402. package/esm2022/f-selection-area/domain/selection-area.drag-handle.mjs +1 -1
  403. package/esm2022/f-selection-area/f-selection-area.component.mjs +2 -2
  404. package/esm2022/f-selection-area/providers.mjs +2 -2
  405. package/esm2022/f-storage/f-components-store.mjs +1 -1
  406. package/esm2022/f-storage/features/listen-components-data-changed/listen-data-changes.execution.mjs +3 -4
  407. package/esm2022/f-storage/features/listen-count-changes/listen-count-changes.execution.mjs +3 -4
  408. package/esm2022/f-storage/features/listen-transform-changes/listen-transform-changes.execution.mjs +2 -2
  409. package/esm2022/f-storage/features/notify-data-changed/notify-data-changed.execution.mjs +2 -2
  410. package/esm2022/f-storage/features/notify-transform-changed/notify-transform-changed.execution.mjs +2 -2
  411. package/esm2022/f-zoom/f-zoom.directive.mjs +4 -4
  412. package/esm2022/f-zoom/providers.mjs +2 -2
  413. package/esm2022/mixins/change-selection/change-selection.mjs +5 -6
  414. package/esm2022/mixins/change-selection/i-selectable.mjs +1 -1
  415. package/esm2022/mixins/change-visibility/change-visibility.mjs +4 -3
  416. package/esm2022/mixins/constructor.mjs +1 -1
  417. package/esm2022/reactivity/debounce-time.mjs +2 -2
  418. package/esm2022/reactivity/f-channel-hub.mjs +1 -1
  419. package/esm2022/reactivity/f-channel.mjs +1 -1
  420. package/esm2022/reactivity/f-resize-channel.mjs +1 -1
  421. package/esm2022/reactivity/index.mjs +1 -2
  422. package/esm2022/reactivity/notify-on-start.mjs +1 -1
  423. package/esm2022/utils/index.mjs +2 -1
  424. package/esm2022/utils/infinity-min-max.mjs +2 -2
  425. package/esm2022/utils/string-attribute.mjs +4 -0
  426. package/f-backgroud/providers.d.ts +1 -1
  427. package/f-connection/common/domain/f-bezier.path-builder.d.ts +2 -2
  428. package/f-connection/common/domain/f-segment.path-builder.d.ts +7 -7
  429. package/f-connection/common/f-connection-base.d.ts +13 -11
  430. package/f-connection/common/f-connection-text/f-connection-text-path.directive.d.ts +6 -11
  431. package/f-connection/common/f-connection-text/f-connection-text.component.d.ts +6 -12
  432. package/f-connection/common/f-gradient/f-connection-gradient.component.d.ts +5 -10
  433. package/f-connection/common/f-path/f-connection-path.component.d.ts +2 -7
  434. package/f-connection/common/f-selection/f-connection-selection.component.d.ts +2 -6
  435. package/f-connection/common/i-has-connection-from-to.d.ts +3 -3
  436. package/f-connection/f-connection/f-connection.component.d.ts +6 -6
  437. package/f-connection/f-connection-builder/f-connection-builders.d.ts +1 -3
  438. package/f-connection/f-connection-builder/i-f-connection-builder-response.d.ts +1 -0
  439. package/f-connection/f-connection-center/f-connection-center.directive.d.ts +6 -1
  440. package/f-connection/f-connection-content/f-connection-content.d.ts +69 -0
  441. package/f-connection/f-connection-content/index.d.ts +2 -0
  442. package/f-connection/f-connection-content/polyline-content-engine/i-polyline-content.d.ts +9 -0
  443. package/f-connection/f-connection-content/polyline-content-engine/index.d.ts +5 -0
  444. package/f-connection/f-connection-content/polyline-content-engine/polyline-content-align.d.ts +4 -0
  445. package/f-connection/f-connection-content/polyline-content-engine/polyline-content-layout-engine.d.ts +21 -0
  446. package/f-connection/f-connection-content/polyline-content-engine/polyline-content-place.d.ts +18 -0
  447. package/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/i-sampler-result.d.ts +11 -0
  448. package/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/i-tangent.d.ts +4 -0
  449. package/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/index.d.ts +4 -0
  450. package/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/polyline-sampler.d.ts +60 -0
  451. package/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/polyline.d.ts +29 -0
  452. package/f-connection/f-connection-for-create/f-connection-for-create.component.d.ts +4 -6
  453. package/f-connection/f-marker/f-marker-base.d.ts +0 -3
  454. package/f-connection/f-marker/f-marker.directive.d.ts +4 -6
  455. package/f-connection/f-snap-connection/f-snap-connection.component.d.ts +4 -6
  456. package/f-connection/index.d.ts +1 -0
  457. package/f-connection/providers.d.ts +2 -2
  458. package/f-connectors/f-connector-base.d.ts +3 -2
  459. package/f-connectors/f-node-input/f-node-input-base.d.ts +3 -2
  460. package/f-connectors/f-node-input/f-node-input.directive.d.ts +8 -9
  461. package/f-connectors/f-node-outlet/f-node-outlet-base.d.ts +3 -3
  462. package/f-connectors/f-node-outlet/f-node-outlet.directive.d.ts +6 -8
  463. package/f-connectors/f-node-output/f-node-output-base.d.ts +4 -5
  464. package/f-connectors/f-node-output/f-node-output.directive.d.ts +7 -9
  465. package/f-connectors/f-source-connector-base.d.ts +7 -0
  466. package/f-connectors/index.d.ts +1 -0
  467. package/f-draggable/domain/is-connection-under-node/is-connection-under-node.execution.d.ts +1 -1
  468. package/f-draggable/domain/providers.d.ts +1 -1
  469. package/f-draggable/f-canvas/move-finalize/f-canvas-move-finalize.execution.d.ts +2 -2
  470. package/f-draggable/f-connection/f-create-connection/create-finalize/f-create-connection-finalize.execution.d.ts +9 -9
  471. package/f-draggable/f-connection/f-create-connection/f-create-connection.drag-handler.d.ts +5 -5
  472. package/f-draggable/f-connection/f-reassign-connection/f-reassign-connection.drag-handler.d.ts +4 -4
  473. package/f-draggable/f-connection/f-reassign-connection/f-reassign-source.drag-handler.d.ts +5 -5
  474. package/f-draggable/f-connection/f-reassign-connection/f-reassign-target.drag-handler.d.ts +5 -5
  475. package/f-draggable/f-connection/providers.d.ts +1 -1
  476. package/f-draggable/f-draggable-base.d.ts +7 -10
  477. package/f-draggable/f-draggable.directive.d.ts +10 -12
  478. package/f-draggable/f-drop-to-group/f-node-drop-to-group.drag-handler.d.ts +2 -6
  479. package/f-draggable/f-node-move/create-drag-model-from-selection/providers.d.ts +1 -1
  480. package/f-draggable/f-node-move/providers.d.ts +1 -1
  481. package/f-draggable/f-node-resize/apply-parent-resize-constraints/apply-parent-resize-constraints.d.ts +2 -2
  482. package/f-draggable/f-node-resize/resize-finalize/node-resize-finalize.d.ts +1 -1
  483. package/f-draggable/f-node-rotate/f-node-rotate.drag-handler.d.ts +1 -1
  484. package/f-draggable/f-node-rotate/providers.d.ts +1 -1
  485. package/f-draggable/f-node-rotate/rotate-finalize/f-node-rotate-finalize.execution.d.ts +1 -1
  486. package/f-draggable/f-node-rotate/rotate-preparation/f-node-rotate-preparation.execution.d.ts +1 -1
  487. package/f-draggable/providers.d.ts +1 -1
  488. package/f-external-item/domain/finalize/f-external-item-finalize.execution.d.ts +1 -1
  489. package/f-external-item/f-external-item-base.d.ts +3 -3
  490. package/f-external-item/f-external-item-placeholder.directive.d.ts +1 -1
  491. package/f-external-item/f-external-item-preview.directive.d.ts +1 -1
  492. package/f-external-item/f-external-item-token.d.ts +1 -1
  493. package/f-external-item/f-external-item.directive.d.ts +5 -6
  494. package/f-external-item/f-external-item.service.d.ts +1 -1
  495. package/f-line-alignment/domain/snap-line-element.d.ts +2 -3
  496. package/f-line-alignment/domain/snap-line-service.d.ts +3 -4
  497. package/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.execution.d.ts +5 -7
  498. package/f-minimap/domain/f-minimap.drag-handler.d.ts +10 -10
  499. package/f-minimap/domain/minimap-calculate-view-box/minimap-calculate-view-box.execution.d.ts +3 -3
  500. package/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.d.ts +1 -3
  501. package/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.d.ts +7 -10
  502. package/f-minimap/providers.d.ts +1 -1
  503. package/f-node/f-node.directive.d.ts +2 -2
  504. package/f-node/f-resize-handle/f-resize-handle.directive.d.ts +1 -1
  505. package/f-node/providers.d.ts +1 -1
  506. package/f-selection-area/domain/selection-area-finalize/selection-area-finalize.execution.d.ts +2 -2
  507. package/f-storage/f-components-store.d.ts +1 -1
  508. package/f-storage/features/listen-components-data-changed/listen-data-changes.execution.d.ts +2 -2
  509. package/f-storage/features/listen-count-changes/listen-count-changes.execution.d.ts +2 -2
  510. package/f-storage/features/listen-transform-changes/listen-transform-changes.execution.d.ts +2 -2
  511. package/f-storage/features/notify-data-changed/notify-data-changed.execution.d.ts +2 -2
  512. package/f-storage/features/notify-transform-changed/notify-transform-changed.execution.d.ts +2 -2
  513. package/f-storage/providers.d.ts +1 -1
  514. package/fesm2022/foblex-flow.mjs +1411 -1018
  515. package/fesm2022/foblex-flow.mjs.map +1 -1
  516. package/package.json +1 -1
  517. package/reactivity/index.d.ts +0 -1
  518. package/schematics/ng-add/index.js +1 -1
  519. package/schematics/ng-add/index.js.map +1 -1
  520. package/schematics/ng-update/index.js +1 -1
  521. package/schematics/ng-update/index.js.map +1 -1
  522. package/schematics/shared/foblex-dependencies.js +1 -1
  523. package/utils/index.d.ts +1 -0
  524. package/utils/infinity-min-max.d.ts +1 -1
  525. package/utils/string-attribute.d.ts +1 -0
  526. package/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior.request.d.ts +0 -12
  527. package/domain/f-connectors/add-input-to-store/add-input-to-store.execution.d.ts +0 -12
  528. package/domain/f-connectors/find-closest-connector/find-closest-connector.execution.d.ts +0 -16
  529. package/domain/f-connectors/find-closest-connector/index.d.ts +0 -2
  530. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior.execution.mjs +0 -32
  531. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior.request.mjs +0 -16
  532. package/esm2022/domain/f-connectors/add-input-to-store/add-input-to-store.execution.mjs +0 -25
  533. package/esm2022/domain/f-connectors/add-outlet-to-store/add-outlet-to-store.execution.mjs +0 -25
  534. package/esm2022/domain/f-connectors/add-output-to-store/add-output-to-store.execution.mjs +0 -25
  535. package/esm2022/domain/f-connectors/find-closest-connector/find-closest-connector.execution.mjs +0 -47
  536. package/esm2022/domain/f-connectors/find-closest-connector/find-closest-connector.request.mjs +0 -10
  537. package/esm2022/domain/f-connectors/find-closest-connector/index.mjs +0 -3
  538. package/esm2022/domain/f-connectors/get-connector-and-rect/get-connector-and-rect.execution.mjs +0 -31
  539. package/esm2022/domain/f-connectors/mark-connectable-connectors/mark-connectable-connectors.execution.mjs +0 -30
  540. package/esm2022/domain/f-connectors/mark-connectable-connectors/mark-connectable-connectors.request.mjs +0 -8
  541. package/esm2022/domain/f-connectors/remove-input-from-store/remove-input-from-store.execution.mjs +0 -25
  542. package/esm2022/domain/f-connectors/unmark-connectable-connectors/unmark-connectable-connectors.execution.mjs +0 -30
  543. package/esm2022/domain/f-connectors/unmark-connectable-connectors/unmark-connectable-connectors.request.mjs +0 -8
  544. package/esm2022/reactivity/mediator-effect.mjs +0 -14
  545. package/reactivity/mediator-effect.d.ts +0 -2
@@ -1,5 +1,5 @@
1
- import { booleanAttribute, ChangeDetectionStrategy, Component, inject, input, Input, numberAttribute } from "@angular/core";
2
- import { EFConnectionBehavior, EFConnectionType, } from '../common';
1
+ import { booleanAttribute, ChangeDetectionStrategy, Component, inject, input, Input, numberAttribute, } from '@angular/core';
2
+ import { EFConnectionBehavior, EFConnectionType } from '../common';
3
3
  import { NotifyDataChangedRequest } from '../../f-storage';
4
4
  import { F_CONNECTION } from '../common/f-connection.injection-token';
5
5
  //TODO: Need to deal with cyclic dependencies, since in some cases an error occurs when importing them ../common
@@ -9,21 +9,27 @@ import { FConnectionBase } from '../common/f-connection-base';
9
9
  import { castToEnum } from '@foblex/utils';
10
10
  import { FMediator } from '@foblex/mediator';
11
11
  import { AddConnectionToStoreRequest, RemoveConnectionFromStoreRequest } from '../../domain';
12
+ import { stringAttribute } from '../../utils';
12
13
  import * as i0 from "@angular/core";
13
- import * as i1 from "../f-connection-builder";
14
- import * as i2 from "../common/f-connection-text/f-connection-text.component";
15
- import * as i3 from "../common/f-drag-handle/f-connection-drag-handle-start.component";
16
- import * as i4 from "../common/f-drag-handle/f-connection-drag-handle-end.component";
17
- import * as i5 from "../common/f-gradient/f-connection-gradient.component";
18
- import * as i6 from "../common/f-path/f-connection-path.component";
19
- import * as i7 from "../common/f-selection/f-connection-selection.component";
14
+ import * as i1 from "../common/f-connection-text/f-connection-text.component";
15
+ import * as i2 from "../common/f-drag-handle/f-connection-drag-handle-start.component";
16
+ import * as i3 from "../common/f-drag-handle/f-connection-drag-handle-end.component";
17
+ import * as i4 from "../common/f-gradient/f-connection-gradient.component";
18
+ import * as i5 from "../common/f-path/f-connection-path.component";
19
+ import * as i6 from "../common/f-selection/f-connection-selection.component";
20
20
  let uniqueId = 0;
21
21
  export class FConnectionComponent extends FConnectionBase {
22
22
  fId = input(`f-connection-${uniqueId++}`, { alias: 'fConnectionId' });
23
+ /** @deprecated [fText] is deprecated and will be removed in v18.0.0. Use FConnectionContent directive instead. */
23
24
  fText = '';
25
+ /** @deprecated [fTextStartOffset] is deprecated and will be removed in v18.0.0. Use FConnectionContent directive instead. */
24
26
  fTextStartOffset = '';
25
- fOutputId = '';
26
- fInputId = '';
27
+ fOutputId = input('', {
28
+ transform: (value) => stringAttribute(value) || '',
29
+ });
30
+ fInputId = input('', {
31
+ transform: (value) => stringAttribute(value) || '',
32
+ });
27
33
  fRadius = 8;
28
34
  fOffset = 12;
29
35
  fBehavior = EFConnectionBehavior.FIXED;
@@ -32,15 +38,12 @@ export class FConnectionComponent extends FConnectionBase {
32
38
  fReassignableStart = input(false, { transform: booleanAttribute });
33
39
  fDraggingDisabled = input(false, {
34
40
  alias: 'fReassignDisabled',
35
- transform: booleanAttribute
41
+ transform: booleanAttribute,
36
42
  });
37
43
  get boundingElement() {
38
44
  return this.fPath().hostElement;
39
45
  }
40
46
  _mediator = inject(FMediator);
41
- constructor(elementReference, fConnectionFactory) {
42
- super(elementReference, fConnectionFactory);
43
- }
44
47
  ngOnInit() {
45
48
  this._mediator.execute(new AddConnectionToStoreRequest(this));
46
49
  }
@@ -50,25 +53,21 @@ export class FConnectionComponent extends FConnectionBase {
50
53
  ngOnDestroy() {
51
54
  this._mediator.execute(new RemoveConnectionFromStoreRequest(this));
52
55
  }
53
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionComponent, deps: [{ token: i0.ElementRef }, { token: i1.FConnectionFactory }], target: i0.ɵɵFactoryTarget.Component });
54
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FConnectionComponent, selector: "f-connection", inputs: { fId: { classPropertyName: "fId", publicName: "fConnectionId", isSignal: true, isRequired: false, transformFunction: null }, fText: { classPropertyName: "fText", publicName: "fText", isSignal: false, isRequired: false, transformFunction: null }, fTextStartOffset: { classPropertyName: "fTextStartOffset", publicName: "fTextStartOffset", isSignal: false, isRequired: false, transformFunction: null }, fOutputId: { classPropertyName: "fOutputId", publicName: "fOutputId", isSignal: false, isRequired: false, transformFunction: null }, fInputId: { classPropertyName: "fInputId", publicName: "fInputId", isSignal: false, isRequired: false, transformFunction: null }, fRadius: { classPropertyName: "fRadius", publicName: "fRadius", isSignal: false, isRequired: false, transformFunction: numberAttribute }, fOffset: { classPropertyName: "fOffset", publicName: "fOffset", isSignal: false, isRequired: false, transformFunction: numberAttribute }, fBehavior: { classPropertyName: "fBehavior", publicName: "fBehavior", isSignal: false, isRequired: false, transformFunction: (value) => castToEnum(value, 'fBehavior', EFConnectionBehavior) }, fType: { classPropertyName: "fType", publicName: "fType", isSignal: false, isRequired: false, transformFunction: null }, fSelectionDisabled: { classPropertyName: "fSelectionDisabled", publicName: "fSelectionDisabled", isSignal: true, isRequired: false, transformFunction: null }, fReassignableStart: { classPropertyName: "fReassignableStart", publicName: "fReassignableStart", isSignal: true, isRequired: false, transformFunction: null }, fDraggingDisabled: { classPropertyName: "fDraggingDisabled", publicName: "fReassignDisabled", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.id": "fId()", "class.f-connection-selection-disabled": "fSelectionDisabled()", "class.f-connection-reassign-disabled": "fDraggingDisabled()" }, classAttribute: "f-component f-connection" }, providers: [{ provide: F_CONNECTION, useExisting: FConnectionComponent }], exportAs: ["fComponent"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<svg xmlns=\"http://www.w3.org/2000/svg\" style=\"overflow: visible; display: block; vertical-align: middle;\">\n <defs #defs></defs>\n <ng-content></ng-content>\n <g class=\"f-connection-group\">\n <linearGradient fConnectionGradient></linearGradient>\n <path fConnectionSelection [attr.d]=\"path\"></path>\n <g>\n <path f-connection-path [attr.d]=\"path\"></path>\n @if (fReassignableStart()) {\n <circle f-connection-drag-handle-start r=\"8\"></circle>\n }\n <circle f-connection-drag-handle-end r=\"8\"></circle>\n </g>\n <text f-connection-text></text>\n </g>\n</svg>\n@if (fConnectionCenters().length) {\n <div #fConnectionCenter class=\"f-connection-center\">\n <ng-content select=\"[fConnectionCenter]\"></ng-content>\n </div>\n}\n", styles: [":host{pointer-events:none;position:absolute}:host svg{overflow:visible}:host svg .f-connection-group{pointer-events:all}:host .f-connection-center{pointer-events:all}\n"], dependencies: [{ kind: "component", type: i2.FConnectionTextComponent, selector: "text[f-connection-text]" }, { kind: "component", type: i3.FConnectionDragHandleStartComponent, selector: "circle[f-connection-drag-handle-start]" }, { kind: "component", type: i4.FConnectionDragHandleEndComponent, selector: "circle[f-connection-drag-handle-end]" }, { kind: "component", type: i5.FConnectionGradientComponent, selector: "linearGradient[fConnectionGradient]" }, { kind: "component", type: i6.FConnectionPathComponent, selector: "path[f-connection-path]" }, { kind: "component", type: i7.FConnectionSelectionComponent, selector: "path[fConnectionSelection]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
56
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
57
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FConnectionComponent, selector: "f-connection", inputs: { fId: { classPropertyName: "fId", publicName: "fConnectionId", isSignal: true, isRequired: false, transformFunction: null }, fText: { classPropertyName: "fText", publicName: "fText", isSignal: false, isRequired: false, transformFunction: null }, fTextStartOffset: { classPropertyName: "fTextStartOffset", publicName: "fTextStartOffset", isSignal: false, isRequired: false, transformFunction: null }, fOutputId: { classPropertyName: "fOutputId", publicName: "fOutputId", isSignal: true, isRequired: false, transformFunction: null }, fInputId: { classPropertyName: "fInputId", publicName: "fInputId", isSignal: true, isRequired: false, transformFunction: null }, fRadius: { classPropertyName: "fRadius", publicName: "fRadius", isSignal: false, isRequired: false, transformFunction: numberAttribute }, fOffset: { classPropertyName: "fOffset", publicName: "fOffset", isSignal: false, isRequired: false, transformFunction: numberAttribute }, fBehavior: { classPropertyName: "fBehavior", publicName: "fBehavior", isSignal: false, isRequired: false, transformFunction: (value) => castToEnum(value, 'fBehavior', EFConnectionBehavior) }, fType: { classPropertyName: "fType", publicName: "fType", isSignal: false, isRequired: false, transformFunction: null }, fSelectionDisabled: { classPropertyName: "fSelectionDisabled", publicName: "fSelectionDisabled", isSignal: true, isRequired: false, transformFunction: null }, fReassignableStart: { classPropertyName: "fReassignableStart", publicName: "fReassignableStart", isSignal: true, isRequired: false, transformFunction: null }, fDraggingDisabled: { classPropertyName: "fDraggingDisabled", publicName: "fReassignDisabled", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.id": "fId()", "class.f-connection-selection-disabled": "fSelectionDisabled()", "class.f-connection-reassign-disabled": "fDraggingDisabled()" }, classAttribute: "f-component f-connection" }, providers: [{ provide: F_CONNECTION, useExisting: FConnectionComponent }], exportAs: ["fComponent"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<svg\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"overflow: visible; display: block; vertical-align: middle;\"\n>\n <defs #defs></defs>\n <ng-content></ng-content>\n <g class=\"f-connection-group\">\n <linearGradient fConnectionGradient></linearGradient>\n <path fConnectionSelection [attr.d]=\"path\"></path>\n <g>\n <path f-connection-path [attr.d]=\"path\"></path>\n @if (fReassignableStart()) {\n <circle f-connection-drag-handle-start r=\"8\"></circle>\n }\n <circle f-connection-drag-handle-end r=\"8\"></circle>\n </g>\n <text f-connection-text></text>\n </g>\n</svg>\n@if (fConnectionCenters().length) {\n <div #fConnectionCenter class=\"f-connection-center\">\n <ng-content select=\"[fConnectionCenter]\"></ng-content>\n </div>\n}\n\n@if (fConnectionContents().length) {\n <ng-content select=\"[fConnectionContent]\"></ng-content>\n}\n", styles: [":host{pointer-events:none;position:absolute}:host svg{overflow:visible}:host svg .f-connection-group{pointer-events:all}:host .f-connection-center,:host .f-connection-content{pointer-events:all}\n"], dependencies: [{ kind: "component", type: i1.FConnectionTextComponent, selector: "text[f-connection-text]" }, { kind: "component", type: i2.FConnectionDragHandleStartComponent, selector: "circle[f-connection-drag-handle-start]" }, { kind: "component", type: i3.FConnectionDragHandleEndComponent, selector: "circle[f-connection-drag-handle-end]" }, { kind: "component", type: i4.FConnectionGradientComponent, selector: "linearGradient[fConnectionGradient]" }, { kind: "component", type: i5.FConnectionPathComponent, selector: "path[f-connection-path]" }, { kind: "component", type: i6.FConnectionSelectionComponent, selector: "path[fConnectionSelection]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
55
58
  }
56
59
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionComponent, decorators: [{
57
60
  type: Component,
58
- args: [{ selector: "f-connection", exportAs: 'fComponent', changeDetection: ChangeDetectionStrategy.OnPush, host: {
61
+ args: [{ selector: 'f-connection', exportAs: 'fComponent', changeDetection: ChangeDetectionStrategy.OnPush, host: {
59
62
  '[attr.id]': 'fId()',
60
- class: "f-component f-connection",
63
+ class: 'f-component f-connection',
61
64
  '[class.f-connection-selection-disabled]': 'fSelectionDisabled()',
62
65
  '[class.f-connection-reassign-disabled]': 'fDraggingDisabled()',
63
- }, providers: [{ provide: F_CONNECTION, useExisting: FConnectionComponent }], template: "<svg xmlns=\"http://www.w3.org/2000/svg\" style=\"overflow: visible; display: block; vertical-align: middle;\">\n <defs #defs></defs>\n <ng-content></ng-content>\n <g class=\"f-connection-group\">\n <linearGradient fConnectionGradient></linearGradient>\n <path fConnectionSelection [attr.d]=\"path\"></path>\n <g>\n <path f-connection-path [attr.d]=\"path\"></path>\n @if (fReassignableStart()) {\n <circle f-connection-drag-handle-start r=\"8\"></circle>\n }\n <circle f-connection-drag-handle-end r=\"8\"></circle>\n </g>\n <text f-connection-text></text>\n </g>\n</svg>\n@if (fConnectionCenters().length) {\n <div #fConnectionCenter class=\"f-connection-center\">\n <ng-content select=\"[fConnectionCenter]\"></ng-content>\n </div>\n}\n", styles: [":host{pointer-events:none;position:absolute}:host svg{overflow:visible}:host svg .f-connection-group{pointer-events:all}:host .f-connection-center{pointer-events:all}\n"] }]
64
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.FConnectionFactory }], propDecorators: { fText: [{
66
+ }, providers: [{ provide: F_CONNECTION, useExisting: FConnectionComponent }], template: "<svg\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"overflow: visible; display: block; vertical-align: middle;\"\n>\n <defs #defs></defs>\n <ng-content></ng-content>\n <g class=\"f-connection-group\">\n <linearGradient fConnectionGradient></linearGradient>\n <path fConnectionSelection [attr.d]=\"path\"></path>\n <g>\n <path f-connection-path [attr.d]=\"path\"></path>\n @if (fReassignableStart()) {\n <circle f-connection-drag-handle-start r=\"8\"></circle>\n }\n <circle f-connection-drag-handle-end r=\"8\"></circle>\n </g>\n <text f-connection-text></text>\n </g>\n</svg>\n@if (fConnectionCenters().length) {\n <div #fConnectionCenter class=\"f-connection-center\">\n <ng-content select=\"[fConnectionCenter]\"></ng-content>\n </div>\n}\n\n@if (fConnectionContents().length) {\n <ng-content select=\"[fConnectionContent]\"></ng-content>\n}\n", styles: [":host{pointer-events:none;position:absolute}:host svg{overflow:visible}:host svg .f-connection-group{pointer-events:all}:host .f-connection-center,:host .f-connection-content{pointer-events:all}\n"] }]
67
+ }], propDecorators: { fText: [{
65
68
  type: Input
66
69
  }], fTextStartOffset: [{
67
70
  type: Input
68
- }], fOutputId: [{
69
- type: Input
70
- }], fInputId: [{
71
- type: Input
72
71
  }], fRadius: [{
73
72
  type: Input,
74
73
  args: [{ transform: numberAttribute }]
@@ -81,4 +80,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
81
80
  }], fType: [{
82
81
  type: Input
83
82
  }] } });
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uL2YtY29ubmVjdGlvbi9mLWNvbm5lY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24vZi1jb25uZWN0aW9uL2YtY29ubmVjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsTUFBTSxFQUFFLEtBQUssRUFDYixLQUFLLEVBQ0wsZUFBZSxFQUloQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLGdCQUFnQixHQUNqQixNQUFNLFdBQVcsQ0FBQztBQUNuQixPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUV6RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDcEUsZ0hBQWdIO0FBQ2hILHdFQUF3RTtBQUN4RSxnREFBZ0Q7QUFDaEQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQzVELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQzNDLE9BQU8sRUFBQywyQkFBMkIsRUFBRSxnQ0FBZ0MsRUFBQyxNQUFNLGNBQWMsQ0FBQzs7Ozs7Ozs7O0FBRTNGLElBQUksUUFBUSxHQUFXLENBQUMsQ0FBQztBQWdCekIsTUFBTSxPQUFPLG9CQUNYLFNBQVEsZUFBZTtJQUVQLEdBQUcsR0FBRyxLQUFLLENBQVMsZ0JBQWdCLFFBQVEsRUFBRSxFQUFFLEVBQUUsRUFBQyxLQUFLLEVBQUUsZUFBZSxFQUFD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dHJpYnV0ZSxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgaW5qZWN0LCBpbnB1dCxcbiAgSW5wdXQsXG4gIG51bWJlckF0dHJpYnV0ZSxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtcbiAgRUZDb25uZWN0aW9uQmVoYXZpb3IsXG4gIEVGQ29ubmVjdGlvblR5cGUsXG59IGZyb20gJy4uL2NvbW1vbic7XG5pbXBvcnQge05vdGlmeURhdGFDaGFuZ2VkUmVxdWVzdH0gZnJvbSAnLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7RkNvbm5lY3Rpb25GYWN0b3J5fSBmcm9tICcuLi9mLWNvbm5lY3Rpb24tYnVpbGRlcic7XG5pbXBvcnQge0ZfQ09OTkVDVElPTn0gZnJvbSAnLi4vY29tbW9uL2YtY29ubmVjdGlvbi5pbmplY3Rpb24tdG9rZW4nO1xuLy9UT0RPOiBOZWVkIHRvIGRlYWwgd2l0aCBjeWNsaWMgZGVwZW5kZW5jaWVzLCBzaW5jZSBpbiBzb21lIGNhc2VzIGFuIGVycm9yIG9jY3VycyB3aGVuIGltcG9ydGluZyB0aGVtIC4uL2NvbW1vblxuLy8gVHlwZUVycm9yOiBDbGFzcyBleHRlbmRzIHZhbHVlIHVuZGVmaW5lZCBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsXG4vLyBhdCBmLWNvbm5lY3Rpb24tZm9yLWNyZWF0ZS5jb21wb25lbnQudHM6MzQ6MTFcbmltcG9ydCB7RkNvbm5lY3Rpb25CYXNlfSBmcm9tICcuLi9jb21tb24vZi1jb25uZWN0aW9uLWJhc2UnO1xuaW1wb3J0IHtjYXN0VG9FbnVtfSBmcm9tICdAZm9ibGV4L3V0aWxzJztcbmltcG9ydCB7Rk1lZGlhdG9yfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7QWRkQ29ubmVjdGlvblRvU3RvcmVSZXF1ZXN0LCBSZW1vdmVDb25uZWN0aW9uRnJvbVN0b3JlUmVxdWVzdH0gZnJvbSAnLi4vLi4vZG9tYWluJztcblxubGV0IHVuaXF1ZUlkOiBudW1iZXIgPSAwO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiZi1jb25uZWN0aW9uXCIsXG4gIGV4cG9ydEFzOiAnZkNvbXBvbmVudCcsXG4gIHRlbXBsYXRlVXJsOiBcIi4vZi1jb25uZWN0aW9uLmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlVXJsczogW1wiLi9mLWNvbm5lY3Rpb24uY29tcG9uZW50LnNjc3NcIl0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7XG4gICAgJ1thdHRyLmlkXSc6ICdmSWQoKScsXG4gICAgY2xhc3M6IFwiZi1jb21wb25lbnQgZi1jb25uZWN0aW9uXCIsXG4gICAgJ1tjbGFzcy5mLWNvbm5lY3Rpb24tc2VsZWN0aW9uLWRpc2FibGVkXSc6ICdmU2VsZWN0aW9uRGlzYWJsZWQoKScsXG4gICAgJ1tjbGFzcy5mLWNvbm5lY3Rpb24tcmVhc3NpZ24tZGlzYWJsZWRdJzogJ2ZEcmFnZ2luZ0Rpc2FibGVkKCknLFxuICB9LFxuICBwcm92aWRlcnM6IFt7cHJvdmlkZTogRl9DT05ORUNUSU9OLCB1c2VFeGlzdGluZzogRkNvbm5lY3Rpb25Db21wb25lbnR9XSxcbn0pXG5leHBvcnQgY2xhc3MgRkNvbm5lY3Rpb25Db21wb25lbnRcbiAgZXh0ZW5kcyBGQ29ubmVjdGlvbkJhc2UgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcblxuICBwdWJsaWMgb3ZlcnJpZGUgZklkID0gaW5wdXQ8c3RyaW5nPihgZi1jb25uZWN0aW9uLSR7dW5pcXVlSWQrK31gLCB7YWxpYXM6ICdmQ29ubmVjdGlvbklkJ30pO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBvdmVycmlkZSBmVGV4dDogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIG92ZXJyaWRlIGZUZXh0U3RhcnRPZmZzZXQ6IHN0cmluZyA9ICcnO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBvdmVycmlkZSBmT3V0cHV0SWQ6IGFueSA9ICcnO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBvdmVycmlkZSBmSW5wdXRJZDogYW55ID0gJyc7XG5cbiAgQElucHV0KHt0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZX0pXG4gIHB1YmxpYyBvdmVycmlkZSBmUmFkaXVzOiBudW1iZXIgPSA4O1xuXG4gIEBJbnB1dCh7dHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGV9KVxuICBwdWJsaWMgb3ZlcnJpZGUgZk9mZnNldDogbnVtYmVyID0gMTI7XG5cbiAgQElucHV0KHt0cmFuc2Zvcm06ICh2YWx1ZTogdW5rbm93bikgPT4gY2FzdFRvRW51bSh2YWx1ZSwgJ2ZCZWhhdmlvcicsIEVGQ29ubmVjdGlvbkJlaGF2aW9yKX0pXG4gIHB1YmxpYyBvdmVycmlkZSBmQmVoYXZpb3I6IEVGQ29ubmVjdGlvbkJlaGF2aW9yID0gRUZDb25uZWN0aW9uQmVoYXZpb3IuRklYRUQ7XG5cbiAgQElucHV0KClcbiAgcHVibGljIG92ZXJyaWRlIGZUeXBlOiBFRkNvbm5lY3Rpb25UeXBlIHwgc3RyaW5nID0gRUZDb25uZWN0aW9uVHlwZS5TVFJBSUdIVDtcblxuICBwdWJsaWMgb3ZlcnJpZGUgZlNlbGVjdGlvbkRpc2FibGVkID0gaW5wdXQoZmFsc2UsIHt0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGV9KTtcblxuICBwdWJsaWMgb3ZlcnJpZGUgZlJlYXNzaWduYWJsZVN0YXJ0ID0gaW5wdXQoZmFsc2UsIHt0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGV9KTtcblxuICBwdWJsaWMgb3ZlcnJpZGUgZkRyYWdnaW5nRGlzYWJsZWQgPSBpbnB1dChmYWxzZSwge1xuICAgIGFsaWFzOiAnZlJlYXNzaWduRGlzYWJsZWQnLFxuICAgIHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZVxuICB9KTtcblxuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IGJvdW5kaW5nRWxlbWVudCgpOiBIVE1MRWxlbWVudCB8IFNWR0VsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmZQYXRoKCkuaG9zdEVsZW1lbnQ7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGVsZW1lbnRSZWZlcmVuY2U6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIGZDb25uZWN0aW9uRmFjdG9yeTogRkNvbm5lY3Rpb25GYWN0b3J5LFxuICApIHtcbiAgICBzdXBlcihlbGVtZW50UmVmZXJlbmNlLCBmQ29ubmVjdGlvbkZhY3RvcnkpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUobmV3IEFkZENvbm5lY3Rpb25Ub1N0b3JlUmVxdWVzdCh0aGlzKSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgTm90aWZ5RGF0YUNoYW5nZWRSZXF1ZXN0KCkpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUobmV3IFJlbW92ZUNvbm5lY3Rpb25Gcm9tU3RvcmVSZXF1ZXN0KHRoaXMpKTtcbiAgfVxufVxuIiwiPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgc3R5bGU9XCJvdmVyZmxvdzogdmlzaWJsZTsgZGlzcGxheTogYmxvY2s7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XCI+XG4gIDxkZWZzICNkZWZzPjwvZGVmcz5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8ZyBjbGFzcz1cImYtY29ubmVjdGlvbi1ncm91cFwiPlxuICAgIDxsaW5lYXJHcmFkaWVudCBmQ29ubmVjdGlvbkdyYWRpZW50PjwvbGluZWFyR3JhZGllbnQ+XG4gICAgPHBhdGggZkNvbm5lY3Rpb25TZWxlY3Rpb24gW2F0dHIuZF09XCJwYXRoXCI+PC9wYXRoPlxuICAgIDxnPlxuICAgICAgPHBhdGggZi1jb25uZWN0aW9uLXBhdGggW2F0dHIuZF09XCJwYXRoXCI+PC9wYXRoPlxuICAgICAgQGlmIChmUmVhc3NpZ25hYmxlU3RhcnQoKSkge1xuICAgICAgICA8Y2lyY2xlIGYtY29ubmVjdGlvbi1kcmFnLWhhbmRsZS1zdGFydCByPVwiOFwiPjwvY2lyY2xlPlxuICAgICAgfVxuICAgICAgPGNpcmNsZSBmLWNvbm5lY3Rpb24tZHJhZy1oYW5kbGUtZW5kIHI9XCI4XCI+PC9jaXJjbGU+XG4gICAgPC9nPlxuICAgIDx0ZXh0IGYtY29ubmVjdGlvbi10ZXh0PjwvdGV4dD5cbiAgPC9nPlxuPC9zdmc+XG5AaWYgKGZDb25uZWN0aW9uQ2VudGVycygpLmxlbmd0aCkge1xuICA8ZGl2ICNmQ29ubmVjdGlvbkNlbnRlciBjbGFzcz1cImYtY29ubmVjdGlvbi1jZW50ZXJcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZkNvbm5lY3Rpb25DZW50ZXJdXCI+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbn1cbiJdfQ==
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uL2YtY29ubmVjdGlvbi9mLWNvbm5lY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24vZi1jb25uZWN0aW9uL2YtY29ubmVjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsTUFBTSxFQUNOLEtBQUssRUFDTCxLQUFLLEVBQ0wsZUFBZSxHQUloQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDbkUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3RFLGdIQUFnSDtBQUNoSCx3RUFBd0U7QUFDeEUsZ0RBQWdEO0FBQ2hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDN0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7Ozs7Ozs7QUFFOUMsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFDO0FBZ0JqQixNQUFNLE9BQU8sb0JBQXFCLFNBQVEsZUFBZTtJQUN2QyxHQUFHLEdBQUcsS0FBSyxDQUFTLGdCQUFnQixRQUFR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RUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxXQUFXLEVBQUUsb0JBQW9CLENBQUMsRUFBRTtnQkFJOUUsS0FBSztzQkFEcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGJvb2xlYW5BdHRyaWJ1dGUsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIGluamVjdCxcbiAgaW5wdXQsXG4gIElucHV0LFxuICBudW1iZXJBdHRyaWJ1dGUsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRUZDb25uZWN0aW9uQmVoYXZpb3IsIEVGQ29ubmVjdGlvblR5cGUgfSBmcm9tICcuLi9jb21tb24nO1xuaW1wb3J0IHsgTm90aWZ5RGF0YUNoYW5nZWRSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZfQ09OTkVDVElPTiB9IGZyb20gJy4uL2NvbW1vbi9mLWNvbm5lY3Rpb24uaW5qZWN0aW9uLXRva2VuJztcbi8vVE9ETzogTmVlZCB0byBkZWFsIHdpdGggY3ljbGljIGRlcGVuZGVuY2llcywgc2luY2UgaW4gc29tZSBjYXNlcyBhbiBlcnJvciBvY2N1cnMgd2hlbiBpbXBvcnRpbmcgdGhlbSAuLi9jb21tb25cbi8vIFR5cGVFcnJvcjogQ2xhc3MgZXh0ZW5kcyB2YWx1ZSB1bmRlZmluZWQgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbFxuLy8gYXQgZi1jb25uZWN0aW9uLWZvci1jcmVhdGUuY29tcG9uZW50LnRzOjM0OjExXG5pbXBvcnQgeyBGQ29ubmVjdGlvbkJhc2UgfSBmcm9tICcuLi9jb21tb24vZi1jb25uZWN0aW9uLWJhc2UnO1xuaW1wb3J0IHsgY2FzdFRvRW51bSB9IGZyb20gJ0Bmb2JsZXgvdXRpbHMnO1xuaW1wb3J0IHsgRk1lZGlhdG9yIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBBZGRDb25uZWN0aW9uVG9TdG9yZVJlcXVlc3QsIFJlbW92ZUNvbm5lY3Rpb25Gcm9tU3RvcmVSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IHN0cmluZ0F0dHJpYnV0ZSB9IGZyb20gJy4uLy4uL3V0aWxzJztcblxubGV0IHVuaXF1ZUlkID0gMDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZi1jb25uZWN0aW9uJyxcbiAgZXhwb3J0QXM6ICdmQ29tcG9uZW50JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2YtY29ubmVjdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2YtY29ubmVjdGlvbi5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgICdbYXR0ci5pZF0nOiAnZklkKCknLFxuICAgIGNsYXNzOiAnZi1jb21wb25lbnQgZi1jb25uZWN0aW9uJyxcbiAgICAnW2NsYXNzLmYtY29ubmVjdGlvbi1zZWxlY3Rpb24tZGlzYWJsZWRdJzogJ2ZTZWxlY3Rpb25EaXNhYmxlZCgpJyxcbiAgICAnW2NsYXNzLmYtY29ubmVjdGlvbi1yZWFzc2lnbi1kaXNhYmxlZF0nOiAnZkRyYWdnaW5nRGlzYWJsZWQoKScsXG4gIH0sXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogRl9DT05ORUNUSU9OLCB1c2VFeGlzdGluZzogRkNvbm5lY3Rpb25Db21wb25lbnQgfV0sXG59KVxuZXhwb3J0IGNsYXNzIEZDb25uZWN0aW9uQ29tcG9uZW50IGV4dGVuZHMgRkNvbm5lY3Rpb25CYXNlIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIHB1YmxpYyBvdmVycmlkZSBmSWQgPSBpbnB1dDxzdHJpbmc+KGBmLWNvbm5lY3Rpb24tJHt1bmlxdWVJZCsrfWAsIHsgYWxpYXM6ICdmQ29ubmVjdGlvbklkJyB9KTtcblxuICAvKiogQGRlcHJlY2F0ZWQgW2ZUZXh0XSBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gdjE4LjAuMC4gVXNlIEZDb25uZWN0aW9uQ29udGVudCBkaXJlY3RpdmUgaW5zdGVhZC4gKi9cbiAgQElucHV0KClcbiAgcHVibGljIG92ZXJyaWRlIGZUZXh0OiBzdHJpbmcgPSAnJztcblxuICAvKiogQGRlcHJlY2F0ZWQgW2ZUZXh0U3RhcnRPZmZzZXRdIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB2MTguMC4wLiBVc2UgRkNvbm5lY3Rpb25Db250ZW50IGRpcmVjdGl2ZSBpbnN0ZWFkLiAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZlRleHRTdGFydE9mZnNldDogc3RyaW5nID0gJyc7XG5cbiAgcHVibGljIG92ZXJyaWRlIGZPdXRwdXRJZCA9IGlucHV0PHN0cmluZywgdW5rbm93bj4oJycsIHtcbiAgICB0cmFuc2Zvcm06ICh2YWx1ZSkgPT4gc3RyaW5nQXR0cmlidXRlKHZhbHVlKSB8fCAnJyxcbiAgfSk7XG5cbiAgcHVibGljIG92ZXJyaWRlIGZJbnB1dElkID0gaW5wdXQ8c3RyaW5nLCB1bmtub3duPignJywge1xuICAgIHRyYW5zZm9ybTogKHZhbHVlKSA9PiBzdHJpbmdBdHRyaWJ1dGUodmFsdWUpIHx8ICcnLFxuICB9KTtcblxuICBASW5wdXQoeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KVxuICBwdWJsaWMgb3ZlcnJpZGUgZlJhZGl1czogbnVtYmVyID0gODtcblxuICBASW5wdXQoeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KVxuICBwdWJsaWMgb3ZlcnJpZGUgZk9mZnNldDogbnVtYmVyID0gMTI7XG5cbiAgQElucHV0KHsgdHJhbnNmb3JtOiAodmFsdWU6IHVua25vd24pID0+IGNhc3RUb0VudW0odmFsdWUsICdmQmVoYXZpb3InLCBFRkNvbm5lY3Rpb25CZWhhdmlvcikgfSlcbiAgcHVibGljIG92ZXJyaWRlIGZCZWhhdmlvcjogRUZDb25uZWN0aW9uQmVoYXZpb3IgPSBFRkNvbm5lY3Rpb25CZWhhdmlvci5GSVhFRDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZlR5cGU6IEVGQ29ubmVjdGlvblR5cGUgfCBzdHJpbmcgPSBFRkNvbm5lY3Rpb25UeXBlLlNUUkFJR0hUO1xuXG4gIHB1YmxpYyBvdmVycmlkZSBmU2VsZWN0aW9uRGlzYWJsZWQgPSBpbnB1dChmYWxzZSwgeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSk7XG5cbiAgcHVibGljIG92ZXJyaWRlIGZSZWFzc2lnbmFibGVTdGFydCA9IGlucHV0KGZhbHNlLCB7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KTtcblxuICBwdWJsaWMgb3ZlcnJpZGUgZkRyYWdnaW5nRGlzYWJsZWQgPSBpbnB1dChmYWxzZSwge1xuICAgIGFsaWFzOiAnZlJlYXNzaWduRGlzYWJsZWQnLFxuICAgIHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSxcbiAgfSk7XG5cbiAgcHVibGljIG92ZXJyaWRlIGdldCBib3VuZGluZ0VsZW1lbnQoKTogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5mUGF0aCgpLmhvc3RFbGVtZW50O1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbWVkaWF0b3IgPSBpbmplY3QoRk1lZGlhdG9yKTtcblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgQWRkQ29ubmVjdGlvblRvU3RvcmVSZXF1ZXN0KHRoaXMpKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBOb3RpZnlEYXRhQ2hhbmdlZFJlcXVlc3QoKSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgUmVtb3ZlQ29ubmVjdGlvbkZyb21TdG9yZVJlcXVlc3QodGhpcykpO1xuICB9XG59XG4iLCI8c3ZnXG4gIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICBzdHlsZT1cIm92ZXJmbG93OiB2aXNpYmxlOyBkaXNwbGF5OiBibG9jazsgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcIlxuPlxuICA8ZGVmcyAjZGVmcz48L2RlZnM+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPGcgY2xhc3M9XCJmLWNvbm5lY3Rpb24tZ3JvdXBcIj5cbiAgICA8bGluZWFyR3JhZGllbnQgZkNvbm5lY3Rpb25HcmFkaWVudD48L2xpbmVhckdyYWRpZW50PlxuICAgIDxwYXRoIGZDb25uZWN0aW9uU2VsZWN0aW9uIFthdHRyLmRdPVwicGF0aFwiPjwvcGF0aD5cbiAgICA8Zz5cbiAgICAgIDxwYXRoIGYtY29ubmVjdGlvbi1wYXRoIFthdHRyLmRdPVwicGF0aFwiPjwvcGF0aD5cbiAgICAgIEBpZiAoZlJlYXNzaWduYWJsZVN0YXJ0KCkpIHtcbiAgICAgICAgPGNpcmNsZSBmLWNvbm5lY3Rpb24tZHJhZy1oYW5kbGUtc3RhcnQgcj1cIjhcIj48L2NpcmNsZT5cbiAgICAgIH1cbiAgICAgIDxjaXJjbGUgZi1jb25uZWN0aW9uLWRyYWctaGFuZGxlLWVuZCByPVwiOFwiPjwvY2lyY2xlPlxuICAgIDwvZz5cbiAgICA8dGV4dCBmLWNvbm5lY3Rpb24tdGV4dD48L3RleHQ+XG4gIDwvZz5cbjwvc3ZnPlxuQGlmIChmQ29ubmVjdGlvbkNlbnRlcnMoKS5sZW5ndGgpIHtcbiAgPGRpdiAjZkNvbm5lY3Rpb25DZW50ZXIgY2xhc3M9XCJmLWNvbm5lY3Rpb24tY2VudGVyXCI+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2ZDb25uZWN0aW9uQ2VudGVyXVwiPjwvbmctY29udGVudD5cbiAgPC9kaXY+XG59XG5cbkBpZiAoZkNvbm5lY3Rpb25Db250ZW50cygpLmxlbmd0aCkge1xuICA8bmctY29udGVudCBzZWxlY3Q9XCJbZkNvbm5lY3Rpb25Db250ZW50XVwiPjwvbmctY29udGVudD5cbn1cbiJdfQ==
@@ -1,3 +1,3 @@
1
1
  import { InjectionToken } from '@angular/core';
2
2
  export const F_CONNECTION_BUILDERS = new InjectionToken('F_CONNECTION_BUILDERS');
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLWJ1aWxkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24vZi1jb25uZWN0aW9uLWJ1aWxkZXIvZi1jb25uZWN0aW9uLWJ1aWxkZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0MsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsSUFBSSxjQUFjLENBQXVCLHVCQUF1QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUZDb25uZWN0aW9uQnVpbGRlciB9IGZyb20gJy4vaS1mLWNvbm5lY3Rpb24tYnVpbGRlcic7XG5cbmV4cG9ydCBjb25zdCBGX0NPTk5FQ1RJT05fQlVJTERFUlMgPSBuZXcgSW5qZWN0aW9uVG9rZW48SUZDb25uZWN0aW9uQnVpbGRlcnM+KCdGX0NPTk5FQ1RJT05fQlVJTERFUlMnKTtcblxuZXhwb3J0IGludGVyZmFjZSBJRkNvbm5lY3Rpb25CdWlsZGVycyB7XG4gIFtrZXk6IHN0cmluZ106IElGQ29ubmVjdGlvbkJ1aWxkZXI7XG59XG4iXX0=
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLWJ1aWxkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24vZi1jb25uZWN0aW9uLWJ1aWxkZXIvZi1jb25uZWN0aW9uLWJ1aWxkZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0MsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsSUFBSSxjQUFjLENBQXVCLHVCQUF1QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUZDb25uZWN0aW9uQnVpbGRlciB9IGZyb20gJy4vaS1mLWNvbm5lY3Rpb24tYnVpbGRlcic7XG5cbmV4cG9ydCBjb25zdCBGX0NPTk5FQ1RJT05fQlVJTERFUlMgPSBuZXcgSW5qZWN0aW9uVG9rZW48SUZDb25uZWN0aW9uQnVpbGRlcnM+KCdGX0NPTk5FQ1RJT05fQlVJTERFUlMnKTtcblxuZXhwb3J0IHR5cGUgSUZDb25uZWN0aW9uQnVpbGRlcnMgPSBSZWNvcmQ8c3RyaW5nLCBJRkNvbm5lY3Rpb25CdWlsZGVyPjtcbiJdfQ==
@@ -31,4 +31,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
31
31
  type: Inject,
32
32
  args: [F_CONNECTION_BUILDERS]
33
33
  }] }] });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLWZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9mLWNvbm5lY3Rpb24tYnVpbGRlci9mLWNvbm5lY3Rpb24tZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGtCQUFrQixFQUFFLG1CQUFtQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzVHLE9BQU8sRUFBRSxxQkFBcUIsRUFBd0IsTUFBTSx5QkFBeUIsQ0FBQzs7QUFNdEYsTUFBTSxPQUFPLGtCQUFrQjtJQUVaLFFBQVEsR0FBOEI7UUFFckQsQ0FBRSxnQkFBZ0IsQ0FBQyxRQUFRLENBQUUsRUFBRSxJQUFJLG9CQUFvQixFQUFFO1FBRXpELENBQUUsZ0JBQWdCLENBQUMsTUFBTSxDQUFFLEVBQUUsSUFBSSxrQkFBa0IsRUFBRTtRQUVyRCxDQUFFLGdCQUFnQixDQUFDLE9BQU8sQ0FBRSxFQUFFLElBQUksbUJBQW1CLEVBQUU7S0FDeEQsQ0FBQTtJQUVELFlBQzZDLFFBQThCO1FBRXpFLElBQUksUUFBUSxFQUFFLENBQUM7WUFDYixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsUUFBUSxFQUFFLENBQUM7UUFDcEQsQ0FBQztJQUNILENBQUM7SUFFTSxNQUFNLENBQUMsT0FBbUM7UUFDL0MsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBRSxPQUFPLENBQUMsSUFBSSxDQUFFLENBQUM7UUFDOUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2IsTUFBTSxJQUFJLEtBQUssQ0FBQyx5Q0FBMEMsT0FBTyxDQUFDLElBQUssRUFBRSxDQUFDLENBQUM7UUFDN0UsQ0FBQztRQUVELE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekMsQ0FBQzt3R0ExQlUsa0JBQWtCLGtCQVlQLHFCQUFxQjs0R0FaaEMsa0JBQWtCOzs0RkFBbEIsa0JBQWtCO2tCQUQ5QixVQUFVOzswQkFhTixRQUFROzswQkFBSSxNQUFNOzJCQUFDLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElGQ29ubmVjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL2ktZi1jb25uZWN0aW9uLWJ1aWxkZXInO1xuaW1wb3J0IHsgRUZDb25uZWN0aW9uVHlwZSwgRkJlemllclBhdGhCdWlsZGVyLCBGU2VnbWVudFBhdGhCdWlsZGVyLCBGU3RyYWlnaHRQYXRoQnVpbGRlciB9IGZyb20gJy4uL2NvbW1vbic7XG5pbXBvcnQgeyBGX0NPTk5FQ1RJT05fQlVJTERFUlMsIElGQ29ubmVjdGlvbkJ1aWxkZXJzIH0gZnJvbSAnLi9mLWNvbm5lY3Rpb24tYnVpbGRlcnMnO1xuaW1wb3J0IHsgSUZDb25uZWN0aW9uRmFjdG9yeVJlcXVlc3QgfSBmcm9tICcuL2ktZi1jb25uZWN0aW9uLWZhY3RvcnktcmVxdWVzdCc7XG5pbXBvcnQgeyBJRkNvbm5lY3Rpb25CdWlsZGVyUmVzcG9uc2UgfSBmcm9tICcuL2ktZi1jb25uZWN0aW9uLWJ1aWxkZXItcmVzcG9uc2UnO1xuaW1wb3J0IHsgSU1hcCB9IGZyb20gJy4uLy4uL2RvbWFpbic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBGQ29ubmVjdGlvbkZhY3Rvcnkge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgYnVpbGRlcnM6IElNYXA8SUZDb25uZWN0aW9uQnVpbGRlcj4gPSB7XG5cbiAgICBbIEVGQ29ubmVjdGlvblR5cGUuU1RSQUlHSFQgXTogbmV3IEZTdHJhaWdodFBhdGhCdWlsZGVyKCksXG5cbiAgICBbIEVGQ29ubmVjdGlvblR5cGUuQkVaSUVSIF06IG5ldyBGQmV6aWVyUGF0aEJ1aWxkZXIoKSxcblxuICAgIFsgRUZDb25uZWN0aW9uVHlwZS5TRUdNRU5UIF06IG5ldyBGU2VnbWVudFBhdGhCdWlsZGVyKCksXG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEZfQ09OTkVDVElPTl9CVUlMREVSUykgYnVpbGRlcnM6IElGQ29ubmVjdGlvbkJ1aWxkZXJzXG4gICkge1xuICAgIGlmIChidWlsZGVycykge1xuICAgICAgdGhpcy5idWlsZGVycyA9IHsgLi4udGhpcy5idWlsZGVycywgLi4uYnVpbGRlcnMgfTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IElGQ29ubmVjdGlvbkZhY3RvcnlSZXF1ZXN0KTogSUZDb25uZWN0aW9uQnVpbGRlclJlc3BvbnNlIHtcbiAgICBjb25zdCBidWlsZGVyID0gdGhpcy5idWlsZGVyc1sgcmVxdWVzdC50eXBlIF07XG4gICAgaWYgKCFidWlsZGVyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEZDb25uZWN0aW9uQnVpbGRlciBub3QgZm91bmQgZm9yIHR5cGUgJHsgcmVxdWVzdC50eXBlIH1gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gYnVpbGRlci5oYW5kbGUocmVxdWVzdC5wYXlsb2FkKTtcbiAgfVxufVxuIl19
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLWZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9mLWNvbm5lY3Rpb24tYnVpbGRlci9mLWNvbm5lY3Rpb24tZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGtCQUFrQixFQUFFLG1CQUFtQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzVHLE9BQU8sRUFBRSxxQkFBcUIsRUFBd0IsTUFBTSx5QkFBeUIsQ0FBQzs7QUFNdEYsTUFBTSxPQUFPLGtCQUFrQjtJQUVaLFFBQVEsR0FBOEI7UUFFckQsQ0FBRSxnQkFBZ0IsQ0FBQyxRQUFRLENBQUUsRUFBRSxJQUFJLG9CQUFvQixFQUFFO1FBRXpELENBQUUsZ0JBQWdCLENBQUMsTUFBTSxDQUFFLEVBQUUsSUFBSSxrQkFBa0IsRUFBRTtRQUVyRCxDQUFFLGdCQUFnQixDQUFDLE9BQU8sQ0FBRSxFQUFFLElBQUksbUJBQW1CLEVBQUU7S0FDeEQsQ0FBQTtJQUVELFlBQzZDLFFBQThCO1FBRXpFLElBQUksUUFBUSxFQUFFLENBQUM7WUFDYixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsUUFBUSxFQUFFLENBQUM7UUFDcEQsQ0FBQztJQUNILENBQUM7SUFFTSxNQUFNLENBQUMsT0FBbUM7UUFDL0MsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBRSxPQUFPLENBQUMsSUFBSSxDQUFFLENBQUM7UUFDOUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2IsTUFBTSxJQUFJLEtBQUssQ0FBQyx5Q0FBMEMsT0FBTyxDQUFDLElBQUssRUFBRSxDQUFDLENBQUM7UUFDN0UsQ0FBQztRQUVELE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekMsQ0FBQzt3R0ExQlUsa0JBQWtCLGtCQVlQLHFCQUFxQjs0R0FaaEMsa0JBQWtCOzs0RkFBbEIsa0JBQWtCO2tCQUQ5QixVQUFVOzswQkFhTixRQUFROzswQkFBSSxNQUFNOzJCQUFDLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElGQ29ubmVjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL2ktZi1jb25uZWN0aW9uLWJ1aWxkZXInO1xuaW1wb3J0IHsgRUZDb25uZWN0aW9uVHlwZSwgRkJlemllclBhdGhCdWlsZGVyLCBGU2VnbWVudFBhdGhCdWlsZGVyLCBGU3RyYWlnaHRQYXRoQnVpbGRlciB9IGZyb20gJy4uL2NvbW1vbic7XG5pbXBvcnQgeyBGX0NPTk5FQ1RJT05fQlVJTERFUlMsIElGQ29ubmVjdGlvbkJ1aWxkZXJzIH0gZnJvbSAnLi9mLWNvbm5lY3Rpb24tYnVpbGRlcnMnO1xuaW1wb3J0IHsgSUZDb25uZWN0aW9uRmFjdG9yeVJlcXVlc3QgfSBmcm9tICcuL2ktZi1jb25uZWN0aW9uLWZhY3RvcnktcmVxdWVzdCc7XG5pbXBvcnQgeyBJRkNvbm5lY3Rpb25CdWlsZGVyUmVzcG9uc2UgfSBmcm9tICcuL2ktZi1jb25uZWN0aW9uLWJ1aWxkZXItcmVzcG9uc2UnO1xuaW1wb3J0IHsgSU1hcCB9IGZyb20gJy4uLy4uL2RvbWFpbic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBGQ29ubmVjdGlvbkZhY3Rvcnkge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgYnVpbGRlcnM6IElNYXA8SUZDb25uZWN0aW9uQnVpbGRlcj4gPSB7XG5cbiAgICBbIEVGQ29ubmVjdGlvblR5cGUuU1RSQUlHSFQgXTogbmV3IEZTdHJhaWdodFBhdGhCdWlsZGVyKCksXG5cbiAgICBbIEVGQ29ubmVjdGlvblR5cGUuQkVaSUVSIF06IG5ldyBGQmV6aWVyUGF0aEJ1aWxkZXIoKSxcblxuICAgIFsgRUZDb25uZWN0aW9uVHlwZS5TRUdNRU5UIF06IG5ldyBGU2VnbWVudFBhdGhCdWlsZGVyKCksXG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEZfQ09OTkVDVElPTl9CVUlMREVSUykgYnVpbGRlcnM6IElGQ29ubmVjdGlvbkJ1aWxkZXJzLFxuICApIHtcbiAgICBpZiAoYnVpbGRlcnMpIHtcbiAgICAgIHRoaXMuYnVpbGRlcnMgPSB7IC4uLnRoaXMuYnVpbGRlcnMsIC4uLmJ1aWxkZXJzIH07XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBJRkNvbm5lY3Rpb25GYWN0b3J5UmVxdWVzdCk6IElGQ29ubmVjdGlvbkJ1aWxkZXJSZXNwb25zZSB7XG4gICAgY29uc3QgYnVpbGRlciA9IHRoaXMuYnVpbGRlcnNbIHJlcXVlc3QudHlwZSBdO1xuICAgIGlmICghYnVpbGRlcikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBGQ29ubmVjdGlvbkJ1aWxkZXIgbm90IGZvdW5kIGZvciB0eXBlICR7IHJlcXVlc3QudHlwZSB9YCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGJ1aWxkZXIuaGFuZGxlKHJlcXVlc3QucGF5bG9hZCk7XG4gIH1cbn1cbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1mLWNvbm5lY3Rpb24tYnVpbGRlci1yZXNwb25zZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uL2YtY29ubmVjdGlvbi1idWlsZGVyL2ktZi1jb25uZWN0aW9uLWJ1aWxkZXItcmVzcG9uc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElQb2ludCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElGQ29ubmVjdGlvbkJ1aWxkZXJSZXNwb25zZSB7XG5cbiAgcGF0aDogc3RyaW5nO1xuXG4gIGNvbm5lY3Rpb25DZW50ZXI6IElQb2ludDtcblxuICBwZW51bHRpbWF0ZVBvaW50OiBJUG9pbnQ7XG5cbiAgc2Vjb25kUG9pbnQ6IElQb2ludDtcbn1cbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1mLWNvbm5lY3Rpb24tYnVpbGRlci1yZXNwb25zZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uL2YtY29ubmVjdGlvbi1idWlsZGVyL2ktZi1jb25uZWN0aW9uLWJ1aWxkZXItcmVzcG9uc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElQb2ludCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElGQ29ubmVjdGlvbkJ1aWxkZXJSZXNwb25zZSB7XG4gIHBhdGg6IHN0cmluZztcblxuICBjb25uZWN0aW9uQ2VudGVyOiBJUG9pbnQ7XG5cbiAgcGVudWx0aW1hdGVQb2ludDogSVBvaW50O1xuXG4gIHNlY29uZFBvaW50OiBJUG9pbnQ7XG5cbiAgcG9pbnRzPzogSVBvaW50W107XG59XG4iXX0=
@@ -1,13 +1,30 @@
1
- import { Directive } from "@angular/core";
1
+ import { booleanAttribute, Directive, input, isDevMode } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ let warnedFConnectionCenter = false;
4
+ /** @deprecated '[fConnectionCenter] is deprecated and will be removed in v18.0.0. Use FConnectionContent directive instead.' */
3
5
  export class FConnectionCenterDirective {
6
+ /**
7
+ * @deprecated '[fConnectionCenter] is deprecated and will be removed in v18.0.0. Use FConnectionContent directive instead.'
8
+ */
9
+ fConnectionCenter = input(true, {
10
+ alias: 'fConnectionCenter',
11
+ transform: (v) => {
12
+ // Превращаем presence-атрибут в boolean
13
+ const val = booleanAttribute(v);
14
+ if (!warnedFConnectionCenter && isDevMode()) {
15
+ warnedFConnectionCenter = true;
16
+ console.warn('[fConnectionCenter] is deprecated and will be removed in v18.0.0. Use [FConnectionContent] instead.');
17
+ }
18
+ return val;
19
+ },
20
+ });
4
21
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionCenterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
5
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: FConnectionCenterDirective, selector: "[fConnectionCenter]", ngImport: i0 });
22
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: FConnectionCenterDirective, selector: "[fConnectionCenter]", inputs: { fConnectionCenter: { classPropertyName: "fConnectionCenter", publicName: "fConnectionCenter", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 });
6
23
  }
7
24
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionCenterDirective, decorators: [{
8
25
  type: Directive,
9
26
  args: [{
10
- selector: "[fConnectionCenter]"
27
+ selector: '[fConnectionCenter]',
11
28
  }]
12
29
  }] });
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLWNlbnRlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9mLWNvbm5lY3Rpb24tY2VudGVyL2YtY29ubmVjdGlvbi1jZW50ZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7O0FBS3ZCLE1BQU0sT0FBTywwQkFBMEI7d0dBQTFCLDBCQUEwQjs0RkFBMUIsMEJBQTBCOzs0RkFBMUIsMEJBQTBCO2tCQUh0QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxxQkFBcUI7aUJBQ2hDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogXCJbZkNvbm5lY3Rpb25DZW50ZXJdXCJcbn0pXG5leHBvcnQgY2xhc3MgRkNvbm5lY3Rpb25DZW50ZXJEaXJlY3RpdmUgIHtcbn1cbiJdfQ==
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLWNlbnRlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9mLWNvbm5lY3Rpb24tY2VudGVyL2YtY29ubmVjdGlvbi1jZW50ZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFOUUsSUFBSSx1QkFBdUIsR0FBRyxLQUFLLENBQUM7QUFDcEMsZ0lBQWdJO0FBSWhJLE1BQU0sT0FBTywwQkFBMEI7SUFDckM7O09BRUc7SUFDTSxpQkFBaUIsR0FBRyxLQUFLLENBQW1CLElBQUksRUFBRTtRQUN6RCxLQUFLLEVBQUUsbUJBQW1CO1FBQzFCLFNBQVMsRUFBRSxDQUFDLENBQVUsRUFBRSxFQUFFO1lBQ3hCLHdDQUF3QztZQUN4QyxNQUFNLEdBQUcsR0FBRyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNoQyxJQUFJLENBQUMsdUJBQXVCLElBQUksU0FBUyxFQUFFLEVBQUUsQ0FBQztnQkFDNUMsdUJBQXVCLEdBQUcsSUFBSSxDQUFDO2dCQUMvQixPQUFPLENBQUMsSUFBSSxDQUNWLHFHQUFxRyxDQUN0RyxDQUFDO1lBQ0osQ0FBQztZQUVELE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQztLQUNGLENBQUMsQ0FBQzt3R0FsQlEsMEJBQTBCOzRGQUExQiwwQkFBMEI7OzRGQUExQiwwQkFBMEI7a0JBSHRDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtpQkFDaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBib29sZWFuQXR0cmlidXRlLCBEaXJlY3RpdmUsIGlucHV0LCBpc0Rldk1vZGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxubGV0IHdhcm5lZEZDb25uZWN0aW9uQ2VudGVyID0gZmFsc2U7XG4vKiogQGRlcHJlY2F0ZWQgJ1tmQ29ubmVjdGlvbkNlbnRlcl0gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHYxOC4wLjAuIFVzZSBGQ29ubmVjdGlvbkNvbnRlbnQgZGlyZWN0aXZlIGluc3RlYWQuJyAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2ZDb25uZWN0aW9uQ2VudGVyXScsXG59KVxuZXhwb3J0IGNsYXNzIEZDb25uZWN0aW9uQ2VudGVyRGlyZWN0aXZlIHtcbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkICdbZkNvbm5lY3Rpb25DZW50ZXJdIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB2MTguMC4wLiBVc2UgRkNvbm5lY3Rpb25Db250ZW50IGRpcmVjdGl2ZSBpbnN0ZWFkLidcbiAgICovXG4gIHJlYWRvbmx5IGZDb25uZWN0aW9uQ2VudGVyID0gaW5wdXQ8Ym9vbGVhbiwgdW5rbm93bj4odHJ1ZSwge1xuICAgIGFsaWFzOiAnZkNvbm5lY3Rpb25DZW50ZXInLFxuICAgIHRyYW5zZm9ybTogKHY6IHVua25vd24pID0+IHtcbiAgICAgIC8vINCf0YDQtdCy0YDQsNGJ0LDQtdC8IHByZXNlbmNlLdCw0YLRgNC40LHRg9GCINCyIGJvb2xlYW5cbiAgICAgIGNvbnN0IHZhbCA9IGJvb2xlYW5BdHRyaWJ1dGUodik7XG4gICAgICBpZiAoIXdhcm5lZEZDb25uZWN0aW9uQ2VudGVyICYmIGlzRGV2TW9kZSgpKSB7XG4gICAgICAgIHdhcm5lZEZDb25uZWN0aW9uQ2VudGVyID0gdHJ1ZTtcbiAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICdbZkNvbm5lY3Rpb25DZW50ZXJdIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB2MTguMC4wLiBVc2UgW0ZDb25uZWN0aW9uQ29udGVudF0gaW5zdGVhZC4nLFxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdmFsO1xuICAgIH0sXG4gIH0pO1xufVxuIl19
@@ -0,0 +1,96 @@
1
+ import { Directive, effect, ElementRef, inject, Injector, input, untracked } from '@angular/core';
2
+ import { NotifyDataChangedRequest } from '../../f-storage';
3
+ import { FMediator } from '@foblex/mediator';
4
+ import { castToEnum } from '@foblex/utils';
5
+ import { PolylineContentAlign } from './polyline-content-engine';
6
+ import * as i0 from "@angular/core";
7
+ /**
8
+ * Directive for placing custom user content (text, icons, buttons, etc.)
9
+ * along a connection line.
10
+ *
11
+ * It allows you to specify the position along the connection,
12
+ * shift the content sideways (perpendicular to the path),
13
+ * apply a margin near the edges, and control orientation.
14
+ *
15
+ * ### Usage examples
16
+ *
17
+ * ```html
18
+ * <!-- Text centered on the connection -->
19
+ * <div fConnectionContent [position]="0.5">
20
+ * Hello
21
+ * </div>
22
+ *
23
+ * <!-- Button near the start of the connection, shifted upward by 12px -->
24
+ * <button fConnectionContent [position]="0.2" [offset]="-12">
25
+ * +
26
+ * </button>
27
+ *
28
+ * <!-- Icon at the end of the connection, with 6px margin and rotated along the path -->
29
+ * <span fConnectionContent [position]="1" [margin]="6" align="along">
30
+ * ⮕
31
+ * </span>
32
+ * ```
33
+ */
34
+ export class FConnectionContent {
35
+ _mediator = inject(FMediator);
36
+ _injector = inject(Injector);
37
+ /**
38
+ * The host DOM element to which the directive is applied.
39
+ * Used internally for positioning calculations.
40
+ */
41
+ hostElement = inject((ElementRef)).nativeElement;
42
+ /**
43
+ * Position along the connection.
44
+ *
45
+ * A normalized value in the range `0..1`:
46
+ * - `0` — at the start of the connection,
47
+ * - `1` — at the end of the connection,
48
+ * - `0.5` — at the middle of the connection (default).
49
+ */
50
+ position = input(0.5, {
51
+ transform: (v) => (v < 0 ? 0 : v > 1 ? 1 : v),
52
+ });
53
+ /**
54
+ * Perpendicular offset from the connection line (in pixels).
55
+ *
56
+ * - Positive values shift the element to the right
57
+ * relative to the line direction.
58
+ * - Negative values shift it to the left.
59
+ * - Default: `0` (no shift).
60
+ */
61
+ offset = input(0);
62
+ /**
63
+ * Controls the orientation (rotation) of the content relative to the connection.
64
+ *
65
+ * Possible values:
66
+ * - `'none'` — no rotation (default).
67
+ * - `'along'` — aligned along the path (tangent).
68
+ */
69
+ align = input(PolylineContentAlign.NONE, {
70
+ transform: (x) => castToEnum(x, 'align', PolylineContentAlign),
71
+ });
72
+ ngOnInit() {
73
+ this._listenChanges();
74
+ }
75
+ _listenChanges() {
76
+ effect(() => {
77
+ this.offset();
78
+ this.position();
79
+ this.align();
80
+ untracked(() => this._mediator.execute(new NotifyDataChangedRequest()));
81
+ }, { injector: this._injector });
82
+ }
83
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionContent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
84
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: FConnectionContent, isStandalone: true, selector: "[fConnectionContent]", inputs: { position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null }, offset: { classPropertyName: "offset", publicName: "offset", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "f-connection-content" }, ngImport: i0 });
85
+ }
86
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FConnectionContent, decorators: [{
87
+ type: Directive,
88
+ args: [{
89
+ selector: '[fConnectionContent]',
90
+ standalone: true,
91
+ host: {
92
+ 'class': 'f-connection-content',
93
+ },
94
+ }]
95
+ }] });
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb25uZWN0aW9uLWNvbnRlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9mLWNvbm5lY3Rpb24tY29udGVudC9mLWNvbm5lY3Rpb24tY29udGVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBb0Isb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7QUFFbkY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMEJHO0FBUUgsTUFBTSxPQUFPLGtCQUFrQjtJQUNaLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDOUIsU0FBUyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUU5Qzs7O09BR0c7SUFDYSxXQUFXLEdBQUcsTUFBTSxDQUFDLENBQUEsVUFBdUIsQ0FBQSxDQUFDLENBQUMsYUFBYSxDQUFDO0lBRTVFOzs7Ozs7O09BT0c7SUFDYSxRQUFRLEdBQUcsS0FBSyxDQUFpQixHQUFHLEVBQUU7UUFDcEQsU0FBUyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDOUMsQ0FBQyxDQUFDO0lBRUg7Ozs7Ozs7T0FPRztJQUNhLE1BQU0sR0FBRyxLQUFLLENBQVMsQ0FBQyxDQUFDLENBQUM7SUFFMUM7Ozs7OztPQU1HO0lBQ2EsS0FBSyxHQUFHLEtBQUssQ0FBZ0Msb0JBQW9CLENBQUMsSUFBSSxFQUFFO1FBQ3RGLFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUF1QixDQUFDLEVBQUUsT0FBTyxFQUFFLG9CQUFvQixDQUFDO0tBQ3JGLENBQUMsQ0FBQztJQUVJLFFBQVE7UUFDYixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVPLGNBQWM7UUFDcEIsTUFBTSxDQUNKLEdBQUcsRUFBRTtZQUNILElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNoQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDYixTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSx3QkFBd0IsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMxRSxDQUFDLEVBQ0QsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUM3QixDQUFDO0lBQ0osQ0FBQzt3R0F6RFUsa0JBQWtCOzRGQUFsQixrQkFBa0I7OzRGQUFsQixrQkFBa0I7a0JBUDlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLElBQUksRUFBRTt3QkFDSixPQUFPLEVBQUUsc0JBQXNCO3FCQUNoQztpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgZWZmZWN0LCBFbGVtZW50UmVmLCBpbmplY3QsIEluamVjdG9yLCBpbnB1dCwgT25Jbml0LCB1bnRyYWNrZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5vdGlmeURhdGFDaGFuZ2VkUmVxdWVzdCB9IGZyb20gJy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGTWVkaWF0b3IgfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7IGNhc3RUb0VudW0gfSBmcm9tICdAZm9ibGV4L3V0aWxzJztcbmltcG9ydCB7IElQb2x5bGluZUNvbnRlbnQsIFBvbHlsaW5lQ29udGVudEFsaWduIH0gZnJvbSAnLi9wb2x5bGluZS1jb250ZW50LWVuZ2luZSc7XG5cbi8qKlxuICogRGlyZWN0aXZlIGZvciBwbGFjaW5nIGN1c3RvbSB1c2VyIGNvbnRlbnQgKHRleHQsIGljb25zLCBidXR0b25zLCBldGMuKVxuICogYWxvbmcgYSBjb25uZWN0aW9uIGxpbmUuXG4gKlxuICogSXQgYWxsb3dzIHlvdSB0byBzcGVjaWZ5IHRoZSBwb3NpdGlvbiBhbG9uZyB0aGUgY29ubmVjdGlvbixcbiAqIHNoaWZ0IHRoZSBjb250ZW50IHNpZGV3YXlzIChwZXJwZW5kaWN1bGFyIHRvIHRoZSBwYXRoKSxcbiAqIGFwcGx5IGEgbWFyZ2luIG5lYXIgdGhlIGVkZ2VzLCBhbmQgY29udHJvbCBvcmllbnRhdGlvbi5cbiAqXG4gKiAjIyMgVXNhZ2UgZXhhbXBsZXNcbiAqXG4gKiBgYGBodG1sXG4gKiA8IS0tIFRleHQgY2VudGVyZWQgb24gdGhlIGNvbm5lY3Rpb24gLS0+XG4gKiA8ZGl2IGZDb25uZWN0aW9uQ29udGVudCBbcG9zaXRpb25dPVwiMC41XCI+XG4gKiAgIEhlbGxvXG4gKiA8L2Rpdj5cbiAqXG4gKiA8IS0tIEJ1dHRvbiBuZWFyIHRoZSBzdGFydCBvZiB0aGUgY29ubmVjdGlvbiwgc2hpZnRlZCB1cHdhcmQgYnkgMTJweCAtLT5cbiAqIDxidXR0b24gZkNvbm5lY3Rpb25Db250ZW50IFtwb3NpdGlvbl09XCIwLjJcIiBbb2Zmc2V0XT1cIi0xMlwiPlxuICogICArXG4gKiA8L2J1dHRvbj5cbiAqXG4gKiA8IS0tIEljb24gYXQgdGhlIGVuZCBvZiB0aGUgY29ubmVjdGlvbiwgd2l0aCA2cHggbWFyZ2luIGFuZCByb3RhdGVkIGFsb25nIHRoZSBwYXRoIC0tPlxuICogPHNwYW4gZkNvbm5lY3Rpb25Db250ZW50IFtwb3NpdGlvbl09XCIxXCIgW21hcmdpbl09XCI2XCIgYWxpZ249XCJhbG9uZ1wiPlxuICogICDirpVcbiAqIDwvc3Bhbj5cbiAqIGBgYFxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZkNvbm5lY3Rpb25Db250ZW50XScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGhvc3Q6IHtcbiAgICAnY2xhc3MnOiAnZi1jb25uZWN0aW9uLWNvbnRlbnQnLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBGQ29ubmVjdGlvbkNvbnRlbnQgaW1wbGVtZW50cyBPbkluaXQsIElQb2x5bGluZUNvbnRlbnQge1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9pbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG5cbiAgLyoqXG4gICAqIFRoZSBob3N0IERPTSBlbGVtZW50IHRvIHdoaWNoIHRoZSBkaXJlY3RpdmUgaXMgYXBwbGllZC5cbiAgICogVXNlZCBpbnRlcm5hbGx5IGZvciBwb3NpdGlvbmluZyBjYWxjdWxhdGlvbnMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgaG9zdEVsZW1lbnQgPSBpbmplY3QoRWxlbWVudFJlZjxIVE1MRWxlbWVudD4pLm5hdGl2ZUVsZW1lbnQ7XG5cbiAgLyoqXG4gICAqIFBvc2l0aW9uIGFsb25nIHRoZSBjb25uZWN0aW9uLlxuICAgKlxuICAgKiBBIG5vcm1hbGl6ZWQgdmFsdWUgaW4gdGhlIHJhbmdlIGAwLi4xYDpcbiAgICogLSBgMGAg4oCUIGF0IHRoZSBzdGFydCBvZiB0aGUgY29ubmVjdGlvbixcbiAgICogLSBgMWAg4oCUIGF0IHRoZSBlbmQgb2YgdGhlIGNvbm5lY3Rpb24sXG4gICAqIC0gYDAuNWAg4oCUIGF0IHRoZSBtaWRkbGUgb2YgdGhlIGNvbm5lY3Rpb24gKGRlZmF1bHQpLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHBvc2l0aW9uID0gaW5wdXQ8bnVtYmVyLCBudW1iZXI+KDAuNSwge1xuICAgIHRyYW5zZm9ybTogKHYpID0+ICh2IDwgMCA/IDAgOiB2ID4gMSA/IDEgOiB2KSxcbiAgfSk7XG5cbiAgLyoqXG4gICAqIFBlcnBlbmRpY3VsYXIgb2Zmc2V0IGZyb20gdGhlIGNvbm5lY3Rpb24gbGluZSAoaW4gcGl4ZWxzKS5cbiAgICpcbiAgICogLSBQb3NpdGl2ZSB2YWx1ZXMgc2hpZnQgdGhlIGVsZW1lbnQgdG8gdGhlIHJpZ2h0XG4gICAqICAgcmVsYXRpdmUgdG8gdGhlIGxpbmUgZGlyZWN0aW9uLlxuICAgKiAtIE5lZ2F0aXZlIHZhbHVlcyBzaGlmdCBpdCB0byB0aGUgbGVmdC5cbiAgICogLSBEZWZhdWx0OiBgMGAgKG5vIHNoaWZ0KS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBvZmZzZXQgPSBpbnB1dDxudW1iZXI+KDApO1xuXG4gIC8qKlxuICAgKiBDb250cm9scyB0aGUgb3JpZW50YXRpb24gKHJvdGF0aW9uKSBvZiB0aGUgY29udGVudCByZWxhdGl2ZSB0byB0aGUgY29ubmVjdGlvbi5cbiAgICpcbiAgICogUG9zc2libGUgdmFsdWVzOlxuICAgKiAtIGAnbm9uZSdgIOKAlCBubyByb3RhdGlvbiAoZGVmYXVsdCkuXG4gICAqIC0gYCdhbG9uZydgIOKAlCBhbGlnbmVkIGFsb25nIHRoZSBwYXRoICh0YW5nZW50KS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhbGlnbiA9IGlucHV0PFBvbHlsaW5lQ29udGVudEFsaWduLCB1bmtub3duPihQb2x5bGluZUNvbnRlbnRBbGlnbi5OT05FLCB7XG4gICAgdHJhbnNmb3JtOiAoeCkgPT4gY2FzdFRvRW51bTxQb2x5bGluZUNvbnRlbnRBbGlnbj4oeCwgJ2FsaWduJywgUG9seWxpbmVDb250ZW50QWxpZ24pLFxuICB9KTtcblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fbGlzdGVuQ2hhbmdlcygpO1xuICB9XG5cbiAgcHJpdmF0ZSBfbGlzdGVuQ2hhbmdlcygpOiB2b2lkIHtcbiAgICBlZmZlY3QoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIHRoaXMub2Zmc2V0KCk7XG4gICAgICAgIHRoaXMucG9zaXRpb24oKTtcbiAgICAgICAgdGhpcy5hbGlnbigpO1xuICAgICAgICB1bnRyYWNrZWQoKCkgPT4gdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgTm90aWZ5RGF0YUNoYW5nZWRSZXF1ZXN0KCkpKTtcbiAgICAgIH0sXG4gICAgICB7IGluamVjdG9yOiB0aGlzLl9pbmplY3RvciB9LFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './polyline-content-engine';
2
+ export * from './f-connection-content';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9mLWNvbm5lY3Rpb24tY29udGVudC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3BvbHlsaW5lLWNvbnRlbnQtZW5naW5lJztcbmV4cG9ydCAqIGZyb20gJy4vZi1jb25uZWN0aW9uLWNvbnRlbnQnO1xuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1wb2x5bGluZS1jb250ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24vZi1jb25uZWN0aW9uLWNvbnRlbnQvcG9seWxpbmUtY29udGVudC1lbmdpbmUvaS1wb2x5bGluZS1jb250ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBvbHlsaW5lQ29udGVudEFsaWduIH0gZnJvbSAnLi9wb2x5bGluZS1jb250ZW50LWFsaWduJztcblxuLyoqIERvbWFpbiBjb250cmFjdCBmb3IgY29udGVudCBpdGVtIHRvIGJlIHBsYWNlZCBhbG9uZyB0aGUgcGF0aC4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSVBvbHlsaW5lQ29udGVudCB7XG4gIHBvc2l0aW9uOiBTaWduYWw8bnVtYmVyPjtcblxuICBvZmZzZXQ6IFNpZ25hbDxudW1iZXI+O1xuXG4gIGFsaWduOiBTaWduYWw8UG9seWxpbmVDb250ZW50QWxpZ24+O1xuXG4gIGhvc3RFbGVtZW50OiBIVE1MRWxlbWVudDtcbn1cbiJdfQ==
@@ -0,0 +1,6 @@
1
+ export * from './polyline-sampler';
2
+ export * from './polyline-content-align';
3
+ export * from './i-polyline-content';
4
+ export * from './polyline-content-layout-engine';
5
+ export * from './polyline-content-place';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9mLWNvbm5lY3Rpb24tY29udGVudC9wb2x5bGluZS1jb250ZW50LWVuZ2luZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsMEJBQTBCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3BvbHlsaW5lLXNhbXBsZXInO1xuZXhwb3J0ICogZnJvbSAnLi9wb2x5bGluZS1jb250ZW50LWFsaWduJztcbmV4cG9ydCAqIGZyb20gJy4vaS1wb2x5bGluZS1jb250ZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcG9seWxpbmUtY29udGVudC1sYXlvdXQtZW5naW5lJztcbmV4cG9ydCAqIGZyb20gJy4vcG9seWxpbmUtY29udGVudC1wbGFjZSc7XG4iXX0=
@@ -0,0 +1,6 @@
1
+ export var PolylineContentAlign;
2
+ (function (PolylineContentAlign) {
3
+ PolylineContentAlign["NONE"] = "none";
4
+ PolylineContentAlign["ALONG"] = "along";
5
+ })(PolylineContentAlign || (PolylineContentAlign = {}));
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9seWxpbmUtY29udGVudC1hbGlnbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uL2YtY29ubmVjdGlvbi1jb250ZW50L3BvbHlsaW5lLWNvbnRlbnQtZW5naW5lL3BvbHlsaW5lLWNvbnRlbnQtYWxpZ24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksb0JBSVg7QUFKRCxXQUFZLG9CQUFvQjtJQUM5QixxQ0FBYSxDQUFBO0lBRWIsdUNBQWUsQ0FBQTtBQUNqQixDQUFDLEVBSlcsb0JBQW9CLEtBQXBCLG9CQUFvQixRQUkvQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFBvbHlsaW5lQ29udGVudEFsaWduIHtcbiAgTk9ORSA9ICdub25lJyxcblxuICBBTE9ORyA9ICdhbG9uZycsXG59XG4iXX0=
@@ -0,0 +1,29 @@
1
+ import { PolylineSampler } from './polyline-sampler';
2
+ import { PolylineContentPlace } from './polyline-content-place';
3
+ /**
4
+ * Engine that orchestrates positioning and orientation of all
5
+ * connection contents along a computed path.
6
+ */
7
+ export class ConnectionContentLayoutEngine {
8
+ _placement;
9
+ constructor(_placement = new PolylineContentPlace()) {
10
+ this._placement = _placement;
11
+ }
12
+ layout(line, builderResult, contents) {
13
+ const sampler = new PolylineSampler(builderResult.points ?? calculatePathPointsIfEmpty(line, builderResult));
14
+ const total = sampler.totalLength;
15
+ for (const item of contents) {
16
+ const { position, rotationDeg } = this._placement.compute(sampler, item);
17
+ const style = this._createTransformString(position, rotationDeg);
18
+ item.hostElement.setAttribute('style', style);
19
+ }
20
+ return total;
21
+ }
22
+ _createTransformString(position, rotationDeg) {
23
+ return `position: fixed; pointer-events: all; transform: translate(-50%, -50%) rotate(${rotationDeg}deg); left: ${position.x}px; top: ${position.y}px`;
24
+ }
25
+ }
26
+ function calculatePathPointsIfEmpty({ point1, point2 }, { secondPoint, connectionCenter, penultimatePoint }) {
27
+ return [point1, secondPoint || point1, connectionCenter, penultimatePoint || point2, point2];
28
+ }
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9seWxpbmUtY29udGVudC1sYXlvdXQtZW5naW5lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24vZi1jb25uZWN0aW9uLWNvbnRlbnQvcG9seWxpbmUtY29udGVudC1lbmdpbmUvcG9seWxpbmUtY29udGVudC1sYXlvdXQtZW5naW5lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVoRTs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sNkJBQTZCO0lBRXJCO0lBRG5CLFlBQ21CLGFBQWEsSUFBSSxvQkFBb0IsRUFBRTtRQUF2QyxlQUFVLEdBQVYsVUFBVSxDQUE2QjtJQUN2RCxDQUFDO0lBRUcsTUFBTSxDQUNYLElBQXdDLEVBQ3hDLGFBQTZHLEVBQzdHLFFBQW9DO1FBRXBDLE1BQU0sT0FBTyxHQUFHLElBQUksZUFBZSxDQUFDLGFBQWEsQ0FBQyxNQUFNLElBQUksMEJBQTBCLENBQUMsSUFBSSxFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUM7UUFDN0csTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQztRQUVsQyxLQUFLLE1BQU0sSUFBSSxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQzVCLE1BQU0sRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ3pFLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLEVBQUUsV0FBVyxDQUFDLENBQUM7WUFDakUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2hELENBQUM7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFTyxzQkFBc0IsQ0FBQyxRQUFnQixFQUFFLFdBQW1CO1FBQ2xFLE9BQU8saUZBQWlGLFdBQVcsZUFBZSxRQUFRLENBQUMsQ0FBQyxZQUFZLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUN6SixDQUFDO0NBQ0Y7QUFFRCxTQUFTLDBCQUEwQixDQUNqQyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQVMsRUFDekIsRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQStFO0lBRWhJLE9BQU8sQ0FBQyxNQUFNLEVBQUUsV0FBVyxJQUFJLE1BQU0sRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsSUFBSSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFDL0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElMaW5lLCBJUG9pbnQgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IFBvbHlsaW5lU2FtcGxlciB9IGZyb20gJy4vcG9seWxpbmUtc2FtcGxlcic7XG5pbXBvcnQgeyBJUG9seWxpbmVDb250ZW50IH0gZnJvbSAnLi9pLXBvbHlsaW5lLWNvbnRlbnQnO1xuaW1wb3J0IHsgUG9seWxpbmVDb250ZW50UGxhY2UgfSBmcm9tICcuL3BvbHlsaW5lLWNvbnRlbnQtcGxhY2UnO1xuXG4vKipcbiAqIEVuZ2luZSB0aGF0IG9yY2hlc3RyYXRlcyBwb3NpdGlvbmluZyBhbmQgb3JpZW50YXRpb24gb2YgYWxsXG4gKiBjb25uZWN0aW9uIGNvbnRlbnRzIGFsb25nIGEgY29tcHV0ZWQgcGF0aC5cbiAqL1xuZXhwb3J0IGNsYXNzIENvbm5lY3Rpb25Db250ZW50TGF5b3V0RW5naW5lIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBfcGxhY2VtZW50ID0gbmV3IFBvbHlsaW5lQ29udGVudFBsYWNlKCksXG4gICkge31cblxuICBwdWJsaWMgbGF5b3V0KFxuICAgIGxpbmU6IHsgcG9pbnQxOiBJUG9pbnQ7IHBvaW50MjogSVBvaW50IH0sXG4gICAgYnVpbGRlclJlc3VsdDogeyBwb2ludHM/OiBJUG9pbnRbXSwgc2Vjb25kUG9pbnQ6IElQb2ludDsgY29ubmVjdGlvbkNlbnRlcjogSVBvaW50OyBwZW51bHRpbWF0ZVBvaW50OiBJUG9pbnQgfSxcbiAgICBjb250ZW50czogSXRlcmFibGU8SVBvbHlsaW5lQ29udGVudD4sXG4gICk6IG51bWJlciB7XG4gICAgY29uc3Qgc2FtcGxlciA9IG5ldyBQb2x5bGluZVNhbXBsZXIoYnVpbGRlclJlc3VsdC5wb2ludHMgPz8gY2FsY3VsYXRlUGF0aFBvaW50c0lmRW1wdHkobGluZSwgYnVpbGRlclJlc3VsdCkpO1xuICAgIGNvbnN0IHRvdGFsID0gc2FtcGxlci50b3RhbExlbmd0aDtcblxuICAgIGZvciAoY29uc3QgaXRlbSBvZiBjb250ZW50cykge1xuICAgICAgY29uc3QgeyBwb3NpdGlvbiwgcm90YXRpb25EZWcgfSA9IHRoaXMuX3BsYWNlbWVudC5jb21wdXRlKHNhbXBsZXIsIGl0ZW0pO1xuICAgICAgY29uc3Qgc3R5bGUgPSB0aGlzLl9jcmVhdGVUcmFuc2Zvcm1TdHJpbmcocG9zaXRpb24sIHJvdGF0aW9uRGVnKTtcbiAgICAgIGl0ZW0uaG9zdEVsZW1lbnQuc2V0QXR0cmlidXRlKCdzdHlsZScsIHN0eWxlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdG90YWw7XG4gIH1cblxuICBwcml2YXRlIF9jcmVhdGVUcmFuc2Zvcm1TdHJpbmcocG9zaXRpb246IElQb2ludCwgcm90YXRpb25EZWc6IG51bWJlcik6IHN0cmluZyB7XG4gICAgcmV0dXJuIGBwb3NpdGlvbjogZml4ZWQ7IHBvaW50ZXItZXZlbnRzOiBhbGw7IHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgke3JvdGF0aW9uRGVnfWRlZyk7IGxlZnQ6ICR7cG9zaXRpb24ueH1weDsgdG9wOiAke3Bvc2l0aW9uLnl9cHhgO1xuICB9XG59XG5cbmZ1bmN0aW9uIGNhbGN1bGF0ZVBhdGhQb2ludHNJZkVtcHR5KFxuICB7IHBvaW50MSwgcG9pbnQyIH06IElMaW5lLFxuICB7IHNlY29uZFBvaW50LCBjb25uZWN0aW9uQ2VudGVyLCBwZW51bHRpbWF0ZVBvaW50IH06IHsgc2Vjb25kUG9pbnQ6IElQb2ludDsgY29ubmVjdGlvbkNlbnRlcjogSVBvaW50OyBwZW51bHRpbWF0ZVBvaW50OiBJUG9pbnQgfSxcbik6IElQb2ludFtdIHtcbiAgcmV0dXJuIFtwb2ludDEsIHNlY29uZFBvaW50IHx8IHBvaW50MSwgY29ubmVjdGlvbkNlbnRlciwgcGVudWx0aW1hdGVQb2ludCB8fCBwb2ludDIsIHBvaW50Ml07XG59XG4iXX0=
@@ -0,0 +1,65 @@
1
+ import { PolylineContentAlign } from './polyline-content-align';
2
+ /**
3
+ * Encapsulates placement logic for a single content item along the path.
4
+ */
5
+ export class PolylineContentPlace {
6
+ compute(sampler, content) {
7
+ const progress = this._clamp01(content.position());
8
+ const { point, tangent } = sampler.getPointAtLength(progress);
9
+ // Left-hand normal
10
+ const normal = { x: -tangent.y, y: tangent.x };
11
+ // Apply lateral offset
12
+ const lateral = content.offset() ?? 0;
13
+ const x = point.x + normal.x * lateral;
14
+ const y = point.y + normal.y * lateral;
15
+ // Edge guard
16
+ const projectedSize = this._sizeAlongDirection(content.hostElement, tangent);
17
+ const halfExtent = projectedSize * 0.5;
18
+ const distanceFromStart = progress * sampler.totalLength;
19
+ const distanceFromEnd = sampler.totalLength - distanceFromStart;
20
+ const position = this._applyEdgeGuard(x, y, tangent, distanceFromStart, distanceFromEnd, halfExtent);
21
+ const rotationDeg = this._calculateContentRotation(content.align(), tangent);
22
+ return { position, rotationDeg };
23
+ }
24
+ _clamp01(v) {
25
+ return v <= 0 ? 0 : v >= 1 ? 1 : v;
26
+ }
27
+ _applyEdgeGuard(x, y, tangent, distanceFromStart, distanceFromEnd, halfExtent) {
28
+ if (distanceFromStart <= halfExtent) {
29
+ const push = halfExtent - distanceFromStart;
30
+ return { x: x + tangent.x * push, y: y + tangent.y * push };
31
+ }
32
+ if (distanceFromEnd <= halfExtent) {
33
+ const push = halfExtent - distanceFromEnd;
34
+ return { x: x - tangent.x * push, y: y - tangent.y * push };
35
+ }
36
+ return { x, y };
37
+ }
38
+ _sizeAlongDirection(element, dir) {
39
+ const rect = element.getBoundingClientRect();
40
+ return Math.abs(dir.x) * rect.width + Math.abs(dir.y) * rect.height;
41
+ }
42
+ _normalize180(angleDeg) {
43
+ let a = (angleDeg + 180) % 360;
44
+ if (a < 0)
45
+ a += 360;
46
+ return a - 180;
47
+ }
48
+ _keepUpright(angleDeg) {
49
+ let a = this._normalize180(angleDeg);
50
+ if (a > 90)
51
+ a -= 180;
52
+ else if (a < -90)
53
+ a += 180;
54
+ return a;
55
+ }
56
+ _calculateContentRotation(align, tangent) {
57
+ let result = 0;
58
+ if (align === PolylineContentAlign.ALONG) {
59
+ result = (Math.atan2(tangent.y, tangent.x) * 180) / Math.PI;
60
+ result = this._keepUpright(result);
61
+ }
62
+ return result;
63
+ }
64
+ }
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9seWxpbmUtY29udGVudC1wbGFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uL2YtY29ubmVjdGlvbi1jb250ZW50L3BvbHlsaW5lLWNvbnRlbnQtZW5naW5lL3BvbHlsaW5lLWNvbnRlbnQtcGxhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFaEU7O0dBRUc7QUFDSCxNQUFNLE9BQU8sb0JBQW9CO0lBQ3hCLE9BQU8sQ0FDWixPQUF3QixFQUN4QixPQUF5QjtRQUV6QixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ25ELE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTlELG1CQUFtQjtRQUNuQixNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUUvQyx1QkFBdUI7UUFDdkIsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN0QyxNQUFNLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDO1FBQ3ZDLE1BQU0sQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsR0FBRyxPQUFPLENBQUM7UUFFdkMsYUFBYTtRQUNiLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzdFLE1B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QyxLQUFLLEVBQUUsQ0FBQztZQUN6QyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDNUQsTUFBTSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDckMsQ0FBQztRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElQb2x5bGluZUNvbnRlbnQgfSBmcm9tICcuL2ktcG9seWxpbmUtY29udGVudCc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IFBvbHlsaW5lU2FtcGxlciB9IGZyb20gJy4vcG9seWxpbmUtc2FtcGxlcic7XG5pbXBvcnQgeyBQb2x5bGluZUNvbnRlbnRBbGlnbiB9IGZyb20gJy4vcG9seWxpbmUtY29udGVudC1hbGlnbic7XG5cbi8qKlxuICogRW5jYXBzdWxhdGVzIHBsYWNlbWVudCBsb2dpYyBmb3IgYSBzaW5nbGUgY29udGVudCBpdGVtIGFsb25nIHRoZSBwYXRoLlxuICovXG5leHBvcnQgY2xhc3MgUG9seWxpbmVDb250ZW50UGxhY2Uge1xuICBwdWJsaWMgY29tcHV0ZShcbiAgICBzYW1wbGVyOiBQb2x5bGluZVNhbXBsZXIsXG4gICAgY29udGVudDogSVBvbHlsaW5lQ29udGVudCxcbiAgKTogeyBwb3NpdGlvbjogSVBvaW50OyByb3RhdGlvbkRlZzogbnVtYmVyIH0ge1xuICAgIGNvbnN0IHByb2dyZXNzID0gdGhpcy5fY2xhbXAwMShjb250ZW50LnBvc2l0aW9uKCkpO1xuICAgIGNvbnN0IHsgcG9pbnQsIHRhbmdlbnQgfSA9IHNhbXBsZXIuZ2V0UG9pbnRBdExlbmd0aChwcm9ncmVzcyk7XG5cbiAgICAvLyBMZWZ0LWhhbmQgbm9ybWFsXG4gICAgY29uc3Qgbm9ybWFsID0geyB4OiAtdGFuZ2VudC55LCB5OiB0YW5nZW50LnggfTtcblxuICAgIC8vIEFwcGx5IGxhdGVyYWwgb2Zmc2V0XG4gICAgY29uc3QgbGF0ZXJhbCA9IGNvbnRlbnQub2Zmc2V0KCkgPz8gMDtcbiAgICBjb25zdCB4ID0gcG9pbnQueCArIG5vcm1hbC54ICogbGF0ZXJhbDtcbiAgICBjb25zdCB5ID0gcG9pbnQueSArIG5vcm1hbC55ICogbGF0ZXJhbDtcblxuICAgIC8vIEVkZ2UgZ3VhcmRcbiAgICBjb25zdCBwcm9qZWN0ZWRTaXplID0gdGhpcy5fc2l6ZUFsb25nRGlyZWN0aW9uKGNvbnRlbnQuaG9zdEVsZW1lbnQsIHRhbmdlbnQpO1xuICAgIGNvbnN0IGhhbGZFeHRlbnQgPSBwcm9qZWN0ZWRTaXplICogMC41O1xuXG4gICAgY29uc3QgZGlzdGFuY2VGcm9tU3RhcnQgPSBwcm9ncmVzcyAqIHNhbXBsZXIudG90YWxMZW5ndGg7XG4gICAgY29uc3QgZGlzdGFuY2VGcm9tRW5kID0gc2FtcGxlci50b3RhbExlbmd0aCAtIGRpc3RhbmNlRnJvbVN0YXJ0O1xuXG4gICAgY29uc3QgcG9zaXRpb24gPSB0aGlzLl9hcHBseUVkZ2VHdWFyZCh4LCB5LCB0YW5nZW50LCBkaXN0YW5jZUZyb21TdGFydCwgZGlzdGFuY2VGcm9tRW5kLCBoYWxmRXh0ZW50KTtcblxuICAgIGNvbnN0IHJvdGF0aW9uRGVnID0gdGhpcy5fY2FsY3VsYXRlQ29udGVudFJvdGF0aW9uKGNvbnRlbnQuYWxpZ24oKSwgdGFuZ2VudCk7XG5cbiAgICByZXR1cm4geyBwb3NpdGlvbiwgcm90YXRpb25EZWcgfTtcbiAgfVxuXG4gIHByaXZhdGUgX2NsYW1wMDEodjogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdiA8PSAwID8gMCA6IHYgPj0gMSA/IDEgOiB2O1xuICB9XG5cbiAgcHJpdmF0ZSBfYXBwbHlFZGdlR3VhcmQoXG4gICAgeDogbnVtYmVyLFxuICAgIHk6IG51bWJlcixcbiAgICB0YW5nZW50OiBJUG9pbnQsXG4gICAgZGlzdGFuY2VGcm9tU3RhcnQ6IG51bWJlcixcbiAgICBkaXN0YW5jZUZyb21FbmQ6IG51bWJlcixcbiAgICBoYWxmRXh0ZW50OiBudW1iZXIsXG4gICk6IElQb2ludCB7XG4gICAgaWYgKGRpc3RhbmNlRnJvbVN0YXJ0IDw9IGhhbGZFeHRlbnQpIHtcbiAgICAgIGNvbnN0IHB1c2ggPSBoYWxmRXh0ZW50IC0gZGlzdGFuY2VGcm9tU3RhcnQ7XG5cbiAgICAgIHJldHVybiB7IHg6IHggKyB0YW5nZW50LnggKiBwdXNoLCB5OiB5ICsgdGFuZ2VudC55ICogcHVzaCB9O1xuICAgIH1cbiAgICBpZiAoZGlzdGFuY2VGcm9tRW5kIDw9IGhhbGZFeHRlbnQpIHtcbiAgICAgIGNvbnN0IHB1c2ggPSBoYWxmRXh0ZW50IC0gZGlzdGFuY2VGcm9tRW5kO1xuXG4gICAgICByZXR1cm4geyB4OiB4IC0gdGFuZ2VudC54ICogcHVzaCwgeTogeSAtIHRhbmdlbnQueSAqIHB1c2ggfTtcbiAgICB9XG5cbiAgICByZXR1cm4geyB4LCB5IH07XG4gIH1cblxuICBwcml2YXRlIF9zaXplQWxvbmdEaXJlY3Rpb24oZWxlbWVudDogSFRNTEVsZW1lbnQsIGRpcjogSVBvaW50KTogbnVtYmVyIHtcbiAgICBjb25zdCByZWN0ID0gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgIHJldHVybiBNYXRoLmFicyhkaXIueCkgKiByZWN0LndpZHRoICsgTWF0aC5hYnMoZGlyLnkpICogcmVjdC5oZWlnaHQ7XG4gIH1cblxuICBwcml2YXRlIF9ub3JtYWxpemUxODAoYW5nbGVEZWc6IG51bWJlcik6IG51bWJlciB7XG4gICAgbGV0IGEgPSAoYW5nbGVEZWcgKyAxODApICUgMzYwO1xuICAgIGlmIChhIDwgMCkgYSArPSAzNjA7XG5cbiAgICByZXR1cm4gYSAtIDE4MDtcbiAgfVxuXG4gIHByaXZhdGUgX2tlZXBVcHJpZ2h0KGFuZ2xlRGVnOiBudW1iZXIpOiBudW1iZXIge1xuICAgIGxldCBhID0gdGhpcy5fbm9ybWFsaXplMTgwKGFuZ2xlRGVnKTtcbiAgICBpZiAoYSA+IDkwKSBhIC09IDE4MDtcbiAgICBlbHNlIGlmIChhIDwgLTkwKSBhICs9IDE4MDtcblxuICAgIHJldHVybiBhO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlQ29udGVudFJvdGF0aW9uKGFsaWduOiBQb2x5bGluZUNvbnRlbnRBbGlnbiwgdGFuZ2VudDogSVBvaW50KSB7XG4gICAgbGV0IHJlc3VsdCA9IDA7XG5cbiAgICBpZiAoYWxpZ24gPT09IFBvbHlsaW5lQ29udGVudEFsaWduLkFMT05HKSB7XG4gICAgICByZXN1bHQgPSAoTWF0aC5hdGFuMih0YW5nZW50LnksIHRhbmdlbnQueCkgKiAxODApIC8gTWF0aC5QSTtcbiAgICAgIHJlc3VsdCA9IHRoaXMuX2tlZXBVcHJpZ2h0KHJlc3VsdCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1zYW1wbGVyLXJlc3VsdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uL2YtY29ubmVjdGlvbi1jb250ZW50L3BvbHlsaW5lLWNvbnRlbnQtZW5naW5lL3BvbHlsaW5lLXNhbXBsZXIvaS1zYW1wbGVyLXJlc3VsdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVRhbmdlbnQgfSBmcm9tICcuL2ktdGFuZ2VudCc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdAZm9ibGV4LzJkJztcblxuLyoqIFJlc3VsdCBvZiBzYW1wbGluZyB0aGUgcGF0aC4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSVNhbXBsZXJSZXN1bHQge1xuICAvKiogSW50ZXJwb2xhdGVkIHBvaW50IG9uIHRoZSBwb2x5bGluZS4gKi9cbiAgcG9pbnQ6IElQb2ludDtcbiAgLyoqIFVuaXQgdGFuZ2VudCAoc2VnbWVudCBkaXJlY3Rpb24pIGF0IHRoYXQgcG9pbnQuICovXG4gIHRhbmdlbnQ6IElUYW5nZW50O1xuICAvKiogV2hldGhlciB0aGUgcmVzdWx0IHdhcyBjbGFtcGVkIHRvIHRoZSBwYXRoIGVkZ2UgKHN0YXJ0IG9yIGVuZCkuICovXG4gIGF0RWRnZTogYm9vbGVhbjtcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS10YW5nZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24vZi1jb25uZWN0aW9uLWNvbnRlbnQvcG9seWxpbmUtY29udGVudC1lbmdpbmUvcG9seWxpbmUtc2FtcGxlci9pLXRhbmdlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElQb2ludCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuXG4vKiogVW5pdCB0YW5nZW50IHZlY3Rvci4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSVRhbmdlbnQgZXh0ZW5kcyBJUG9pbnQge31cbiJdfQ==
@@ -0,0 +1,5 @@
1
+ export * from './i-sampler-result';
2
+ export * from './i-tangent';
3
+ export * from './polyline';
4
+ export * from './polyline-sampler';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9mLWNvbm5lY3Rpb24tY29udGVudC9wb2x5bGluZS1jb250ZW50LWVuZ2luZS9wb2x5bGluZS1zYW1wbGVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0JBQW9CLENBQUM7QUFFbkMsY0FBYyxhQUFhLENBQUM7QUFFNUIsY0FBYyxZQUFZLENBQUM7QUFFM0IsY0FBYyxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vaS1zYW1wbGVyLXJlc3VsdCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vaS10YW5nZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9wb2x5bGluZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vcG9seWxpbmUtc2FtcGxlcic7XG4iXX0=