@foblex/flow 1.4.1 → 1.5.0

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 (274) hide show
  1. package/README.md +14 -30
  2. package/domain/get-connection-vector/get-connection-vector.request.d.ts +4 -4
  3. package/domain/get-incoming-connections.handler.d.ts +1 -1
  4. package/domain/get-input-rect-in-flow.handler.d.ts +5 -5
  5. package/domain/get-outgoing-connections.handler.d.ts +1 -1
  6. package/domain/get-output-rect-in-flow.handler.d.ts +5 -5
  7. package/domain/index.d.ts +0 -1
  8. package/domain/select-all.handler.d.ts +1 -1
  9. package/esm2022/domain/get-connection-vector/get-connection-vector.handler.mjs +8 -8
  10. package/esm2022/domain/get-connection-vector/get-connection-vector.request.mjs +1 -1
  11. package/esm2022/domain/get-incoming-connections.handler.mjs +2 -2
  12. package/esm2022/domain/get-input-rect-in-flow.handler.mjs +2 -2
  13. package/esm2022/domain/get-outgoing-connections.handler.mjs +2 -2
  14. package/esm2022/domain/get-output-rect-in-flow.handler.mjs +2 -2
  15. package/esm2022/domain/index.mjs +1 -2
  16. package/esm2022/domain/select-all.handler.mjs +2 -2
  17. package/esm2022/f-components-store.mjs +1 -1
  18. package/esm2022/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points-request.mjs +7 -0
  19. package/esm2022/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points.handler.mjs +12 -0
  20. package/esm2022/f-connection/common/domain/calculate-center-between-points/index.mjs +3 -0
  21. package/esm2022/f-connection/common/domain/calculate-connection-center/calculate-connection-center-request.mjs +6 -0
  22. package/esm2022/f-connection/common/domain/calculate-connection-center/calculate-connection-center.handler.mjs +36 -0
  23. package/esm2022/f-connection/common/domain/calculate-connection-center/index.mjs +3 -0
  24. package/esm2022/f-connection/common/domain/f-bezier.path-builder.mjs +22 -0
  25. package/esm2022/f-connection/common/domain/f-path-builder-base.mjs +3 -0
  26. package/esm2022/f-connection/common/domain/f-path-builder-selector.mjs +19 -0
  27. package/esm2022/f-connection/common/domain/f-segment.path-builder.mjs +142 -0
  28. package/esm2022/f-connection/common/domain/f-straight.path-builder.mjs +11 -0
  29. package/esm2022/f-connection/common/domain/i-f-path-builder-request.mjs +2 -0
  30. package/esm2022/f-connection/common/domain/i-f-path-builder-response.mjs +2 -0
  31. package/esm2022/f-connection/common/domain/index.mjs +10 -0
  32. package/esm2022/f-connection/common/f-connection-base.mjs +15 -6
  33. package/esm2022/f-connection/common/f-connection-text/f-connection-text-path.directive.mjs +3 -3
  34. package/esm2022/f-connection/common/f-connection-text/f-connection-text.component.mjs +4 -4
  35. package/esm2022/f-connection/common/f-gradient/f-connection-gradient.component.mjs +4 -4
  36. package/esm2022/f-connection/common/f-path/f-connection-path.component.mjs +4 -4
  37. package/esm2022/f-connection/common/f-selection/f-connection-selection.component.mjs +2 -2
  38. package/esm2022/f-connection/common/i-has-connection-color.mjs +1 -1
  39. package/esm2022/f-connection/common/i-has-connection-from-to.mjs +1 -1
  40. package/esm2022/f-connection/common/i-has-connection-text.mjs +1 -1
  41. package/esm2022/f-connection/common/index.mjs +2 -2
  42. package/esm2022/f-connection/f-connection/f-connection.component.mjs +30 -26
  43. package/esm2022/f-connection/f-connection-center/f-connection-center.directive.mjs +14 -0
  44. package/esm2022/f-connection/f-connection-center/index.mjs +2 -0
  45. package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +23 -21
  46. package/esm2022/f-connection/index.mjs +2 -1
  47. package/esm2022/f-connectors/domain/calculate-connector-connectable-side/calculate-connector-connectable-side-request.mjs +7 -0
  48. package/esm2022/f-connectors/domain/calculate-connector-connectable-side/calculate-connector-connectable-side.handler.mjs +38 -0
  49. package/esm2022/f-connectors/domain/calculate-connector-connectable-side/index.mjs +3 -0
  50. package/esm2022/f-connectors/domain/index.mjs +2 -0
  51. package/esm2022/f-connectors/e-f-connectable-side.mjs +9 -0
  52. package/esm2022/f-connectors/f-connector-base.mjs +16 -0
  53. package/esm2022/f-connectors/f-node-input/f-node-input-base.mjs +19 -0
  54. package/esm2022/f-connectors/f-node-input/f-node-input.directive.mjs +83 -0
  55. package/esm2022/f-connectors/f-node-input/index.mjs +4 -0
  56. package/esm2022/f-connectors/f-node-input/is-node-input.mjs +4 -0
  57. package/esm2022/f-connectors/f-node-outlet/f-node-outlet-base.mjs +23 -0
  58. package/esm2022/f-connectors/f-node-outlet/f-node-outlet.directive.mjs +71 -0
  59. package/esm2022/f-connectors/f-node-outlet/index.mjs +4 -0
  60. package/esm2022/f-connectors/f-node-outlet/is-node-outlet.mjs +4 -0
  61. package/esm2022/f-connectors/f-node-output/f-node-output-base.mjs +19 -0
  62. package/esm2022/f-connectors/f-node-output/f-node-output.directive.mjs +77 -0
  63. package/esm2022/f-connectors/f-node-output/index.mjs +4 -0
  64. package/esm2022/f-connectors/f-node-output/is-node-output.mjs +4 -0
  65. package/esm2022/f-connectors/index.mjs +7 -0
  66. package/esm2022/f-draggable/canvas/canvas.drag-handler.mjs +3 -3
  67. package/esm2022/f-draggable/canvas/canvas.on-pointer-up.mjs +3 -3
  68. package/esm2022/f-draggable/connections/create-connection/create-connection.drag-handler.mjs +10 -9
  69. package/esm2022/f-draggable/connections/create-connection/create-connection.on-pointer-up.mjs +7 -7
  70. package/esm2022/f-draggable/connections/create-connection/create-connection.prepare-drag-sequence.mjs +3 -3
  71. package/esm2022/f-draggable/connections/create-connection/find-first-can-be-connected-output-by-outlet/find-first-can-be-connected-output-by-outlet.handler.mjs +1 -1
  72. package/esm2022/f-draggable/connections/find-inputs-under-pointer/find-inputs-under-pointer.handler.mjs +3 -3
  73. package/esm2022/f-draggable/connections/find-inputs-under-pointer/first-not-connected-input-of-node-under-pointer/first-not-connected-input-of-node-under-pointer.handler.mjs +1 -1
  74. package/esm2022/f-draggable/connections/find-inputs-under-pointer/inputs-under-pointer/inputs-under-pointer.handler.mjs +2 -2
  75. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.mjs +15 -14
  76. package/esm2022/f-draggable/connections/reassign-connection/reassign-connection.on-pointer-up.mjs +5 -5
  77. package/esm2022/f-draggable/e-f-draggable-type.mjs +11 -0
  78. package/esm2022/f-draggable/external-item/external-item.drag-handler.mjs +3 -3
  79. package/esm2022/f-draggable/external-item/external-item.on-pointer-up.mjs +3 -3
  80. package/esm2022/f-draggable/i-draggable-item.mjs +1 -1
  81. package/esm2022/f-draggable/node/connection-source.drag-handler.mjs +12 -11
  82. package/esm2022/f-draggable/node/connection-target.drag-handler.mjs +12 -11
  83. package/esm2022/f-draggable/node/connection.drag-handler.mjs +12 -11
  84. package/esm2022/f-draggable/node/domain/is-connection-under-node/is-connection-under-node.handler.mjs +4 -4
  85. package/esm2022/f-draggable/node/index.mjs +2 -1
  86. package/esm2022/f-draggable/node/node.drag-handler.mjs +3 -3
  87. package/esm2022/f-draggable/node/node.on-pointer-up.mjs +3 -3
  88. package/esm2022/f-draggable/node/node.prepare-drag-sequence.mjs +6 -6
  89. package/esm2022/f-draggable/public-api.mjs +13 -4
  90. package/esm2022/f-draggable/selection-area/selection-area.drag-handle.mjs +3 -3
  91. package/esm2022/f-draggable/selection-area/selection-area.on-pointer-up.mjs +3 -3
  92. package/esm2022/f-draggable/selection-area/selection-area.prepare-drag-sequence.mjs +1 -1
  93. package/esm2022/f-draggable/single-select/single-select.on-pointer-down.mjs +2 -2
  94. package/esm2022/f-flow/domain/redraw-connections/redraw-connections.handler.mjs +5 -5
  95. package/esm2022/f-flow/f-flow-base.mjs +5 -0
  96. package/esm2022/f-flow/f-flow.component.mjs +18 -18
  97. package/esm2022/f-flow/index.mjs +2 -3
  98. package/esm2022/f-flow.module.mjs +6 -4
  99. package/esm2022/f-node/f-drag-handle/index.mjs +1 -1
  100. package/esm2022/f-node/f-node-base.mjs +1 -3
  101. package/esm2022/f-node/f-node.directive.mjs +9 -9
  102. package/esm2022/f-node/index.mjs +1 -2
  103. package/esm2022/public-api.mjs +12 -6
  104. package/f-components-store.d.ts +5 -4
  105. package/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points-request.d.ts +6 -0
  106. package/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points.handler.d.ts +5 -0
  107. package/f-connection/common/domain/calculate-center-between-points/index.d.ts +2 -0
  108. package/f-connection/common/domain/calculate-connection-center/calculate-connection-center-request.d.ts +5 -0
  109. package/f-connection/common/domain/calculate-connection-center/calculate-connection-center.handler.d.ts +7 -0
  110. package/f-connection/common/domain/calculate-connection-center/index.d.ts +2 -0
  111. package/f-connection/common/domain/f-bezier.path-builder.d.ts +7 -0
  112. package/f-connection/common/domain/f-path-builder-base.d.ts +6 -0
  113. package/f-connection/common/domain/f-path-builder-selector.d.ts +7 -0
  114. package/f-connection/common/domain/f-segment.path-builder.d.ts +13 -0
  115. package/f-connection/common/domain/f-straight.path-builder.d.ts +6 -0
  116. package/f-connection/common/domain/i-f-path-builder-request.d.ts +12 -0
  117. package/f-connection/common/domain/i-f-path-builder-response.d.ts +5 -0
  118. package/f-connection/common/domain/index.d.ts +9 -0
  119. package/f-connection/common/f-connection-base.d.ts +15 -13
  120. package/f-connection/common/i-has-connection-color.d.ts +2 -2
  121. package/f-connection/common/i-has-connection-from-to.d.ts +4 -4
  122. package/f-connection/common/i-has-connection-text.d.ts +1 -1
  123. package/f-connection/common/index.d.ts +1 -1
  124. package/f-connection/f-connection/f-connection.component.d.ts +14 -12
  125. package/f-connection/f-connection-center/f-connection-center.directive.d.ts +5 -0
  126. package/f-connection/f-connection-center/index.d.ts +1 -0
  127. package/f-connection/f-connection-for-create/f-connection-for-create.component.d.ts +14 -12
  128. package/f-connection/index.d.ts +1 -0
  129. package/f-connectors/domain/calculate-connector-connectable-side/calculate-connector-connectable-side-request.d.ts +6 -0
  130. package/f-connectors/domain/calculate-connector-connectable-side/calculate-connector-connectable-side.handler.d.ts +7 -0
  131. package/f-connectors/domain/calculate-connector-connectable-side/index.d.ts +2 -0
  132. package/f-connectors/domain/index.d.ts +1 -0
  133. package/f-connectors/e-f-connectable-side.d.ts +7 -0
  134. package/{f-node/f-connectors → f-connectors}/f-connector-base.d.ts +4 -3
  135. package/{f-node/f-connectors → f-connectors}/f-node-input/f-node-input.directive.d.ts +5 -3
  136. package/{f-node/f-connectors → f-connectors}/f-node-outlet/f-node-outlet.directive.d.ts +6 -3
  137. package/{f-node/f-connectors → f-connectors}/f-node-output/f-node-output.directive.d.ts +5 -3
  138. package/{f-node/f-connectors → f-connectors}/index.d.ts +2 -0
  139. package/f-draggable/canvas/canvas.drag-handler.d.ts +2 -2
  140. package/f-draggable/connections/create-connection/create-connection.drag-handler.d.ts +2 -2
  141. package/f-draggable/connections/create-connection/find-first-can-be-connected-output-by-outlet/find-first-can-be-connected-output-by-outlet.handler.d.ts +1 -1
  142. package/f-draggable/connections/find-inputs-under-pointer/find-inputs-under-pointer.handler.d.ts +1 -1
  143. package/f-draggable/connections/find-inputs-under-pointer/first-not-connected-input-of-node-under-pointer/first-not-connected-input-of-node-under-pointer.handler.d.ts +1 -1
  144. package/f-draggable/connections/find-inputs-under-pointer/inputs-under-pointer/inputs-under-pointer.handler.d.ts +1 -1
  145. package/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.d.ts +2 -2
  146. package/f-draggable/{e-draggable-type.d.ts → e-f-draggable-type.d.ts} +1 -1
  147. package/f-draggable/external-item/external-item.drag-handler.d.ts +2 -2
  148. package/f-draggable/i-draggable-item.d.ts +2 -2
  149. package/f-draggable/node/connection-source.drag-handler.d.ts +2 -2
  150. package/f-draggable/node/connection-target.drag-handler.d.ts +2 -2
  151. package/f-draggable/node/connection.drag-handler.d.ts +2 -2
  152. package/f-draggable/node/index.d.ts +1 -0
  153. package/f-draggable/node/node.drag-handler.d.ts +2 -2
  154. package/f-draggable/public-api.d.ts +12 -3
  155. package/f-draggable/selection-area/selection-area.drag-handle.d.ts +2 -2
  156. package/f-flow/f-flow-base.d.ts +8 -0
  157. package/f-flow/f-flow.component.d.ts +4 -4
  158. package/f-flow/index.d.ts +1 -2
  159. package/f-flow.module.d.ts +3 -3
  160. package/f-node/f-node-base.d.ts +2 -2
  161. package/f-node/f-node.directive.d.ts +3 -3
  162. package/f-node/index.d.ts +0 -1
  163. package/fesm2022/foblex-flow.mjs +2503 -2423
  164. package/fesm2022/foblex-flow.mjs.map +1 -1
  165. package/package.json +6 -3
  166. package/public-api.d.ts +11 -5
  167. package/domain/get-connector-side-in-node/e-connector-side.d.ts +0 -6
  168. package/domain/get-connector-side-in-node/get-connector-side-in-node.handler.d.ts +0 -5
  169. package/domain/get-connector-side-in-node/index.d.ts +0 -2
  170. package/esm2022/domain/get-connector-side-in-node/e-connector-side.mjs +0 -8
  171. package/esm2022/domain/get-connector-side-in-node/get-connector-side-in-node.handler.mjs +0 -26
  172. package/esm2022/domain/get-connector-side-in-node/index.mjs +0 -3
  173. package/esm2022/f-backgroud/domain/public-api.mjs +0 -2
  174. package/esm2022/f-backgroud/f-cell-pattern/public-api.mjs +0 -2
  175. package/esm2022/f-backgroud/public-api.mjs +0 -4
  176. package/esm2022/f-canvas/domain/public-api.mjs +0 -2
  177. package/esm2022/f-canvas/f-zoom/public-api.mjs +0 -2
  178. package/esm2022/f-canvas/public-api.mjs +0 -4
  179. package/esm2022/f-connection/common/path-constructor/bezier-path/bezier-path.mjs +0 -29
  180. package/esm2022/f-connection/common/path-constructor/bezier-path/index.mjs +0 -2
  181. package/esm2022/f-connection/common/path-constructor/i-path-constructor.mjs +0 -2
  182. package/esm2022/f-connection/common/path-constructor/index.mjs +0 -6
  183. package/esm2022/f-connection/common/path-constructor/path-constructor.mjs +0 -15
  184. package/esm2022/f-connection/common/path-constructor/segment-path/connector-side-point.mjs +0 -9
  185. package/esm2022/f-connection/common/path-constructor/segment-path/edge-center-calculator.mjs +0 -10
  186. package/esm2022/f-connection/common/path-constructor/segment-path/index.mjs +0 -6
  187. package/esm2022/f-connection/common/path-constructor/segment-path/path-bend.mjs +0 -19
  188. package/esm2022/f-connection/common/path-constructor/segment-path/point-utils.mjs +0 -14
  189. package/esm2022/f-connection/common/path-constructor/segment-path/segment-path.mjs +0 -123
  190. package/esm2022/f-connection/common/path-constructor/straight-path/index.mjs +0 -2
  191. package/esm2022/f-connection/common/path-constructor/straight-path/straight-path.mjs +0 -9
  192. package/esm2022/f-connection/common/public-api.mjs +0 -3
  193. package/esm2022/f-connection/public-api.mjs +0 -5
  194. package/esm2022/f-draggable/components/f-external-item/public-api.mjs +0 -2
  195. package/esm2022/f-draggable/components/f-line-alignment/public-api.mjs +0 -2
  196. package/esm2022/f-draggable/components/f-selection-area/public-api.mjs +0 -2
  197. package/esm2022/f-draggable/components/public-api.mjs +0 -4
  198. package/esm2022/f-draggable/connections/create-connection/public-api.mjs +0 -2
  199. package/esm2022/f-draggable/connections/public-api.mjs +0 -3
  200. package/esm2022/f-draggable/connections/reassign-connection/public-api.mjs +0 -2
  201. package/esm2022/f-draggable/e-draggable-type.mjs +0 -11
  202. package/esm2022/f-draggable/external-item/public-api.mjs +0 -2
  203. package/esm2022/f-draggable/index.mjs +0 -14
  204. package/esm2022/f-flow/f-parent.injection-token.mjs +0 -3
  205. package/esm2022/f-flow/i-flow-base.mjs +0 -3
  206. package/esm2022/f-flow/public-api.mjs +0 -2
  207. package/esm2022/f-node/f-connectors/f-connector-base.mjs +0 -15
  208. package/esm2022/f-node/f-connectors/f-node-input/f-node-input-base.mjs +0 -19
  209. package/esm2022/f-node/f-connectors/f-node-input/f-node-input.directive.mjs +0 -78
  210. package/esm2022/f-node/f-connectors/f-node-input/index.mjs +0 -4
  211. package/esm2022/f-node/f-connectors/f-node-input/is-node-input.mjs +0 -4
  212. package/esm2022/f-node/f-connectors/f-node-input/public-api.mjs +0 -2
  213. package/esm2022/f-node/f-connectors/f-node-outlet/f-node-outlet-base.mjs +0 -23
  214. package/esm2022/f-node/f-connectors/f-node-outlet/f-node-outlet.directive.mjs +0 -68
  215. package/esm2022/f-node/f-connectors/f-node-outlet/index.mjs +0 -4
  216. package/esm2022/f-node/f-connectors/f-node-outlet/is-node-outlet.mjs +0 -4
  217. package/esm2022/f-node/f-connectors/f-node-outlet/public-api.mjs +0 -2
  218. package/esm2022/f-node/f-connectors/f-node-output/f-node-output-base.mjs +0 -19
  219. package/esm2022/f-node/f-connectors/f-node-output/f-node-output.directive.mjs +0 -72
  220. package/esm2022/f-node/f-connectors/f-node-output/index.mjs +0 -4
  221. package/esm2022/f-node/f-connectors/f-node-output/is-node-output.mjs +0 -4
  222. package/esm2022/f-node/f-connectors/f-node-output/public-api.mjs +0 -2
  223. package/esm2022/f-node/f-connectors/index.mjs +0 -5
  224. package/esm2022/f-node/f-connectors/public-api.mjs +0 -4
  225. package/esm2022/f-node/f-drag-handle/public-api.mjs +0 -2
  226. package/esm2022/f-node/public-api.mjs +0 -4
  227. package/f-backgroud/domain/public-api.d.ts +0 -1
  228. package/f-backgroud/f-cell-pattern/public-api.d.ts +0 -1
  229. package/f-backgroud/public-api.d.ts +0 -3
  230. package/f-canvas/domain/public-api.d.ts +0 -1
  231. package/f-canvas/f-zoom/public-api.d.ts +0 -1
  232. package/f-canvas/public-api.d.ts +0 -3
  233. package/f-connection/common/path-constructor/bezier-path/bezier-path.d.ts +0 -7
  234. package/f-connection/common/path-constructor/bezier-path/index.d.ts +0 -1
  235. package/f-connection/common/path-constructor/i-path-constructor.d.ts +0 -12
  236. package/f-connection/common/path-constructor/index.d.ts +0 -5
  237. package/f-connection/common/path-constructor/path-constructor.d.ts +0 -8
  238. package/f-connection/common/path-constructor/segment-path/connector-side-point.d.ts +0 -6
  239. package/f-connection/common/path-constructor/segment-path/edge-center-calculator.d.ts +0 -3
  240. package/f-connection/common/path-constructor/segment-path/index.d.ts +0 -5
  241. package/f-connection/common/path-constructor/segment-path/path-bend.d.ts +0 -4
  242. package/f-connection/common/path-constructor/segment-path/point-utils.d.ts +0 -6
  243. package/f-connection/common/path-constructor/segment-path/segment-path.d.ts +0 -10
  244. package/f-connection/common/path-constructor/straight-path/index.d.ts +0 -1
  245. package/f-connection/common/path-constructor/straight-path/straight-path.d.ts +0 -6
  246. package/f-connection/common/public-api.d.ts +0 -2
  247. package/f-connection/public-api.d.ts +0 -4
  248. package/f-draggable/components/f-external-item/public-api.d.ts +0 -1
  249. package/f-draggable/components/f-line-alignment/public-api.d.ts +0 -1
  250. package/f-draggable/components/f-selection-area/public-api.d.ts +0 -1
  251. package/f-draggable/components/public-api.d.ts +0 -3
  252. package/f-draggable/connections/create-connection/public-api.d.ts +0 -1
  253. package/f-draggable/connections/public-api.d.ts +0 -2
  254. package/f-draggable/connections/reassign-connection/public-api.d.ts +0 -1
  255. package/f-draggable/external-item/public-api.d.ts +0 -1
  256. package/f-draggable/index.d.ts +0 -13
  257. package/f-flow/f-parent.injection-token.d.ts +0 -2
  258. package/f-flow/i-flow-base.d.ts +0 -8
  259. package/f-flow/public-api.d.ts +0 -1
  260. package/f-node/f-connectors/f-node-input/public-api.d.ts +0 -1
  261. package/f-node/f-connectors/f-node-outlet/public-api.d.ts +0 -1
  262. package/f-node/f-connectors/f-node-output/public-api.d.ts +0 -1
  263. package/f-node/f-connectors/public-api.d.ts +0 -3
  264. package/f-node/f-drag-handle/public-api.d.ts +0 -1
  265. package/f-node/public-api.d.ts +0 -3
  266. /package/{f-node/f-connectors → f-connectors}/f-node-input/f-node-input-base.d.ts +0 -0
  267. /package/{f-node/f-connectors → f-connectors}/f-node-input/index.d.ts +0 -0
  268. /package/{f-node/f-connectors → f-connectors}/f-node-input/is-node-input.d.ts +0 -0
  269. /package/{f-node/f-connectors → f-connectors}/f-node-outlet/f-node-outlet-base.d.ts +0 -0
  270. /package/{f-node/f-connectors → f-connectors}/f-node-outlet/index.d.ts +0 -0
  271. /package/{f-node/f-connectors → f-connectors}/f-node-outlet/is-node-outlet.d.ts +0 -0
  272. /package/{f-node/f-connectors → f-connectors}/f-node-output/f-node-output-base.d.ts +0 -0
  273. /package/{f-node/f-connectors → f-connectors}/f-node-output/index.d.ts +0 -0
  274. /package/{f-node/f-connectors → f-connectors}/f-node-output/is-node-output.d.ts +0 -0
package/package.json CHANGED
@@ -1,12 +1,15 @@
1
1
  {
2
2
  "name": "@foblex/flow",
3
- "version": "1.4.1",
3
+ "version": "1.5.0",
4
4
  "description": "An Angular library designed to simplify the creation and manipulation of dynamic flow. Provides components for flows, nodes, and connections, automating node manipulation and inter-node connections.",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",
7
7
  "author": "Siarhei Huzarevich",
8
- "docs": "https://foblex.com/flow/documentation/get-started",
9
- "repository": "https://foblex.com/flow/home",
8
+ "docs": "https://foblex.com/flow/documentation",
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "git+https://github.com/foblex/flow.git"
12
+ },
10
13
  "license": "MIT",
11
14
  "private": false,
12
15
  "keywords": [
package/public-api.d.ts CHANGED
@@ -1,7 +1,13 @@
1
- export * from './f-flow/public-api';
2
- export * from './f-backgroud/public-api';
3
- export * from './f-canvas/public-api';
4
- export * from './f-connection/public-api';
1
+ export * from './common-behaviours';
2
+ export * from './f-backgroud';
3
+ export * from './f-canvas';
4
+ export * from './domain';
5
+ export * from './f-connection';
6
+ export * from './f-connectors';
5
7
  export * from './f-draggable/public-api';
6
- export * from './f-node/public-api';
8
+ export * from './f-flow';
9
+ export * from './f-node';
10
+ export * from './f-components-store';
7
11
  export * from './f-flow.module';
12
+ export * from './get-flow-uid';
13
+ export * from './i-has-state-changes';
@@ -1,6 +0,0 @@
1
- export declare enum EConnectorSide {
2
- LEFT = "left",
3
- TOP = "top",
4
- RIGHT = "right",
5
- BOTTOM = "bottom"
6
- }
@@ -1,5 +0,0 @@
1
- import { IHandler } from '@foblex/core';
2
- import { EConnectorSide } from './e-connector-side';
3
- export declare class GetConnectorSideInNodeHandler implements IHandler<HTMLElement | SVGElement, EConnectorSide> {
4
- handle(connector: HTMLElement | SVGElement, node: HTMLElement | SVGElement): EConnectorSide;
5
- }
@@ -1,2 +0,0 @@
1
- export * from './e-connector-side';
2
- export * from './get-connector-side-in-node.handler';
@@ -1,8 +0,0 @@
1
- export var EConnectorSide;
2
- (function (EConnectorSide) {
3
- EConnectorSide["LEFT"] = "left";
4
- EConnectorSide["TOP"] = "top";
5
- EConnectorSide["RIGHT"] = "right";
6
- EConnectorSide["BOTTOM"] = "bottom";
7
- })(EConnectorSide || (EConnectorSide = {}));
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZS1jb25uZWN0b3Itc2lkZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2dldC1jb25uZWN0b3Itc2lkZS1pbi1ub2RlL2UtY29ubmVjdG9yLXNpZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksY0FTWDtBQVRELFdBQVksY0FBYztJQUV4QiwrQkFBYSxDQUFBO0lBRWIsNkJBQVcsQ0FBQTtJQUVYLGlDQUFlLENBQUE7SUFFZixtQ0FBaUIsQ0FBQTtBQUNuQixDQUFDLEVBVFcsY0FBYyxLQUFkLGNBQWMsUUFTekIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBFQ29ubmVjdG9yU2lkZSB7XG5cbiAgTEVGVCA9ICdsZWZ0JyxcblxuICBUT1AgPSAndG9wJyxcblxuICBSSUdIVCA9ICdyaWdodCcsXG5cbiAgQk9UVE9NID0gJ2JvdHRvbScsXG59XG4iXX0=
@@ -1,26 +0,0 @@
1
- import { RectExtensions } from '@foblex/core';
2
- import { EConnectorSide } from './e-connector-side';
3
- export class GetConnectorSideInNodeHandler {
4
- handle(connector, node) {
5
- const childRect = RectExtensions.fromElement(connector);
6
- const parentRect = node.getBoundingClientRect();
7
- const deltaLeft = childRect.gravityCenter.x - parentRect.left;
8
- const deltaRight = parentRect.right - childRect.gravityCenter.x;
9
- const deltaTop = childRect.gravityCenter.y - parentRect.top;
10
- const deltaBottom = parentRect.bottom - childRect.gravityCenter.y;
11
- const minDelta = Math.min(deltaLeft, deltaRight, deltaTop, deltaBottom);
12
- if (minDelta === deltaLeft) {
13
- return EConnectorSide.LEFT;
14
- }
15
- else if (minDelta === deltaRight) {
16
- return EConnectorSide.RIGHT;
17
- }
18
- else if (minDelta === deltaTop) {
19
- return EConnectorSide.TOP;
20
- }
21
- else {
22
- return EConnectorSide.BOTTOM;
23
- }
24
- }
25
- }
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWNvbm5lY3Rvci1zaWRlLWluLW5vZGUuaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2dldC1jb25uZWN0b3Itc2lkZS1pbi1ub2RlL2dldC1jb25uZWN0b3Itc2lkZS1pbi1ub2RlLmhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFZLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFcEQsTUFBTSxPQUFPLDZCQUE2QjtJQUVqQyxNQUFNLENBQUMsU0FBbUMsRUFBRSxJQUE4QjtRQUMvRSxNQUFNLFNBQVMsR0FBRyxjQUFjLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3hELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBRWhELE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUM7UUFDOUQsTUFBTSxVQUFVLEdBQUcsVUFBVSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztRQUNoRSxNQUFNLFFBQVEsR0FBRyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDO1FBQzVELE1BQU0sV0FBVyxHQUFHLFVBQVUsQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7UUFFbEUsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUV4RSxJQUFJLFFBQVEsS0FBSyxTQUFTLEVBQUU7WUFDMUIsT0FBTyxjQUFjLENBQUMsSUFBSSxDQUFDO1NBQzVCO2FBQU0sSUFBSSxRQUFRLEtBQUssVUFBVSxFQUFFO1lBQ2xDLE9BQU8sY0FBYyxDQUFDLEtBQUssQ0FBQztTQUM3QjthQUFNLElBQUksUUFBUSxLQUFLLFFBQVEsRUFBRTtZQUNoQyxPQUFPLGNBQWMsQ0FBQyxHQUFHLENBQUM7U0FDM0I7YUFBTTtZQUNMLE9BQU8sY0FBYyxDQUFDLE1BQU0sQ0FBQztTQUM5QjtJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElIYW5kbGVyLCBSZWN0RXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBFQ29ubmVjdG9yU2lkZSB9IGZyb20gJy4vZS1jb25uZWN0b3Itc2lkZSc7XG5cbmV4cG9ydCBjbGFzcyBHZXRDb25uZWN0b3JTaWRlSW5Ob2RlSGFuZGxlciBpbXBsZW1lbnRzIElIYW5kbGVyPEhUTUxFbGVtZW50IHwgU1ZHRWxlbWVudCwgRUNvbm5lY3RvclNpZGU+IHtcblxuICBwdWJsaWMgaGFuZGxlKGNvbm5lY3RvcjogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50LCBub2RlOiBIVE1MRWxlbWVudCB8IFNWR0VsZW1lbnQpOiBFQ29ubmVjdG9yU2lkZSB7XG4gICAgY29uc3QgY2hpbGRSZWN0ID0gUmVjdEV4dGVuc2lvbnMuZnJvbUVsZW1lbnQoY29ubmVjdG9yKTtcbiAgICBjb25zdCBwYXJlbnRSZWN0ID0gbm9kZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgIGNvbnN0IGRlbHRhTGVmdCA9IGNoaWxkUmVjdC5ncmF2aXR5Q2VudGVyLnggLSBwYXJlbnRSZWN0LmxlZnQ7XG4gICAgY29uc3QgZGVsdGFSaWdodCA9IHBhcmVudFJlY3QucmlnaHQgLSBjaGlsZFJlY3QuZ3Jhdml0eUNlbnRlci54O1xuICAgIGNvbnN0IGRlbHRhVG9wID0gY2hpbGRSZWN0LmdyYXZpdHlDZW50ZXIueSAtIHBhcmVudFJlY3QudG9wO1xuICAgIGNvbnN0IGRlbHRhQm90dG9tID0gcGFyZW50UmVjdC5ib3R0b20gLSBjaGlsZFJlY3QuZ3Jhdml0eUNlbnRlci55O1xuXG4gICAgY29uc3QgbWluRGVsdGEgPSBNYXRoLm1pbihkZWx0YUxlZnQsIGRlbHRhUmlnaHQsIGRlbHRhVG9wLCBkZWx0YUJvdHRvbSk7XG5cbiAgICBpZiAobWluRGVsdGEgPT09IGRlbHRhTGVmdCkge1xuICAgICAgcmV0dXJuIEVDb25uZWN0b3JTaWRlLkxFRlQ7XG4gICAgfSBlbHNlIGlmIChtaW5EZWx0YSA9PT0gZGVsdGFSaWdodCkge1xuICAgICAgcmV0dXJuIEVDb25uZWN0b3JTaWRlLlJJR0hUO1xuICAgIH0gZWxzZSBpZiAobWluRGVsdGEgPT09IGRlbHRhVG9wKSB7XG4gICAgICByZXR1cm4gRUNvbm5lY3RvclNpZGUuVE9QO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gRUNvbm5lY3RvclNpZGUuQk9UVE9NO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -1,3 +0,0 @@
1
- export * from './e-connector-side';
2
- export * from './get-connector-side-in-node.handler';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9nZXQtY29ubmVjdG9yLXNpZGUtaW4tbm9kZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9CQUFvQixDQUFDO0FBRW5DLGNBQWMsc0NBQXNDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2UtY29ubmVjdG9yLXNpZGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2dldC1jb25uZWN0b3Itc2lkZS1pbi1ub2RlLmhhbmRsZXInO1xuIl19
@@ -1,2 +0,0 @@
1
- export * from './i-f-background-pattern';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1iYWNrZ3JvdWQvZG9tYWluL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vaS1mLWJhY2tncm91bmQtcGF0dGVybic7XG4iXX0=
@@ -1,2 +0,0 @@
1
- export * from './f-cell-pattern.component';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1iYWNrZ3JvdWQvZi1jZWxsLXBhdHRlcm4vcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mLWNlbGwtcGF0dGVybi5jb21wb25lbnQnO1xuIl19
@@ -1,4 +0,0 @@
1
- export * from './domain/public-api';
2
- export * from './f-cell-pattern/public-api';
3
- export * from './f-background.component';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1iYWNrZ3JvdWQvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHFCQUFxQixDQUFDO0FBRXBDLGNBQWMsNkJBQTZCLENBQUM7QUFFNUMsY0FBYywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZG9tYWluL3B1YmxpYy1hcGknO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtY2VsbC1wYXR0ZXJuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtYmFja2dyb3VuZC5jb21wb25lbnQnO1xuIl19
@@ -1,2 +0,0 @@
1
- export * from './f-canvas-change.event';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jYW52YXMvZG9tYWluL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZi1jYW52YXMtY2hhbmdlLmV2ZW50JztcbiJdfQ==
@@ -1,2 +0,0 @@
1
- export * from './f-zoom.directive';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jYW52YXMvZi16b29tL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZi16b29tLmRpcmVjdGl2ZSc7XG4iXX0=
@@ -1,4 +0,0 @@
1
- export * from './domain/public-api';
2
- export * from './f-zoom/public-api';
3
- export * from './f-canvas.component';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jYW52YXMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHFCQUFxQixDQUFDO0FBRXBDLGNBQWMscUJBQXFCLENBQUM7QUFFcEMsY0FBYyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZG9tYWluL3B1YmxpYy1hcGknO1xuXG5leHBvcnQgKiBmcm9tICcuL2Ytem9vbS9wdWJsaWMtYXBpJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWNhbnZhcy5jb21wb25lbnQnO1xuIl19
@@ -1,29 +0,0 @@
1
- import { EConnectorSide } from '../../../../domain';
2
- export class BezierPath {
3
- // @ts-ignore
4
- static getControl({ pos, x1, y1, x2, y2 }) {
5
- if (pos === EConnectorSide.LEFT || pos === EConnectorSide.RIGHT) {
6
- return [0.5 * (x1 + x2), y1];
7
- }
8
- return [x1, 0.5 * (y1 + y2)];
9
- }
10
- handle(from, fromSide, to, toSide, borderRadius = 8, offset = 32) {
11
- const [sourceControlX, sourceControlY] = BezierPath.getControl({
12
- pos: fromSide,
13
- x1: from.x,
14
- y1: from.y,
15
- x2: to.x,
16
- y2: to.y,
17
- });
18
- const [targetControlX, targetControlY] = BezierPath.getControl({
19
- pos: toSide,
20
- x1: from.x,
21
- y1: from.y,
22
- x2: to.x,
23
- y2: to.y,
24
- });
25
- const path = `M ${from.x} ${from.y} C ${sourceControlX} ${sourceControlY}, ${targetControlX} ${targetControlY}, ${to.x + 0.0001} ${to.y + 0.0001}`;
26
- return { path, labelX: 0, labelY: 0, offsetX: 0, offsetY: 0 };
27
- }
28
- }
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmV6aWVyLXBhdGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9jb21tb24vcGF0aC1jb25zdHJ1Y3Rvci9iZXppZXItcGF0aC9iZXppZXItcGF0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFcEQsTUFBTSxPQUFPLFVBQVU7SUFFckIsYUFBYTtJQUNMLE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO1FBQy9DLElBQUksR0FBRyxLQUFLLGNBQWMsQ0FBQyxJQUFJLElBQUksR0FBRyxLQUFLLGNBQWMsQ0FBQyxLQUFLLEVBQUU7WUFDL0QsT0FBTyxDQUFDLEdBQUcsR0FBRyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUM5QjtRQUVELE9BQU8sQ0FBQyxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVNLE1BQU0sQ0FBQyxJQUFZLEVBQUUsUUFBd0IsRUFBRSxFQUFVLEVBQUUsTUFBc0IsRUFBRSxlQUF1QixDQUFDLEVBQUUsTUFBTSxHQUFHLEVBQUU7UUFHN0gsTUFBTSxDQUFDLGNBQWMsRUFBRSxjQUFjLENBQUMsR0FBRyxVQUFVLENBQUMsVUFBVSxDQUFDO1lBQzdELEdBQUcsRUFBRSxRQUFRO1lBQ2IsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ1YsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ1YsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ1IsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQ1QsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxDQUFDLGNBQWMsRUFBRSxjQUFjLENBQUMsR0FBRyxVQUFVLENBQUMsVUFBVSxDQUFDO1lBQzdELEdBQUcsRUFBRSxNQUFNO1lBQ1gsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ1YsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ1YsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ1IsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQ1QsQ0FBQyxDQUFDO1FBRUgsTUFBTSxJQUFJLEdBQUcsS0FBTSxJQUFJLENBQUMsQ0FBRSxJQUFLLElBQUksQ0FBQyxDQUFFLE1BQU8sY0FBZSxJQUFLLGNBQWUsS0FBTSxjQUFlLElBQUssY0FBZSxLQUFNLEVBQUUsQ0FBQyxDQUFDLEdBQUcsTUFBTyxJQUFLLEVBQUUsQ0FBQyxDQUFDLEdBQUcsTUFBTyxFQUFFLENBQUM7UUFFbkssT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUM7SUFDaEUsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IElQYXRoQ29uc3RydWN0b3IsIElQYXRoQ29uc3RydWN0b3JSZXN1bHQgfSBmcm9tICcuLi9pLXBhdGgtY29uc3RydWN0b3InO1xuaW1wb3J0IHsgRUNvbm5lY3RvclNpZGUgfSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nO1xuXG5leHBvcnQgY2xhc3MgQmV6aWVyUGF0aCBpbXBsZW1lbnRzIElQYXRoQ29uc3RydWN0b3Ige1xuXG4gIC8vIEB0cy1pZ25vcmVcbiAgcHJpdmF0ZSBzdGF0aWMgZ2V0Q29udHJvbCh7IHBvcywgeDEsIHkxLCB4MiwgeTIgfSk6IFtudW1iZXIsIG51bWJlcl0ge1xuICAgIGlmIChwb3MgPT09IEVDb25uZWN0b3JTaWRlLkxFRlQgfHwgcG9zID09PSBFQ29ubmVjdG9yU2lkZS5SSUdIVCkge1xuICAgICAgcmV0dXJuIFswLjUgKiAoeDEgKyB4MiksIHkxXTtcbiAgICB9XG5cbiAgICByZXR1cm4gW3gxLCAwLjUgKiAoeTEgKyB5MildO1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShmcm9tOiBJUG9pbnQsIGZyb21TaWRlOiBFQ29ubmVjdG9yU2lkZSwgdG86IElQb2ludCwgdG9TaWRlOiBFQ29ubmVjdG9yU2lkZSwgYm9yZGVyUmFkaXVzOiBudW1iZXIgPSA4LCBvZmZzZXQgPSAzMik6IElQYXRoQ29uc3RydWN0b3JSZXN1bHQge1xuXG5cbiAgICBjb25zdCBbc291cmNlQ29udHJvbFgsIHNvdXJjZUNvbnRyb2xZXSA9IEJlemllclBhdGguZ2V0Q29udHJvbCh7XG4gICAgICBwb3M6IGZyb21TaWRlLFxuICAgICAgeDE6IGZyb20ueCxcbiAgICAgIHkxOiBmcm9tLnksXG4gICAgICB4MjogdG8ueCxcbiAgICAgIHkyOiB0by55LFxuICAgIH0pO1xuICAgIGNvbnN0IFt0YXJnZXRDb250cm9sWCwgdGFyZ2V0Q29udHJvbFldID0gQmV6aWVyUGF0aC5nZXRDb250cm9sKHtcbiAgICAgIHBvczogdG9TaWRlLFxuICAgICAgeDE6IGZyb20ueCxcbiAgICAgIHkxOiBmcm9tLnksXG4gICAgICB4MjogdG8ueCxcbiAgICAgIHkyOiB0by55LFxuICAgIH0pO1xuXG4gICAgY29uc3QgcGF0aCA9IGBNICR7IGZyb20ueCB9ICR7IGZyb20ueSB9IEMgJHsgc291cmNlQ29udHJvbFggfSAkeyBzb3VyY2VDb250cm9sWSB9LCAkeyB0YXJnZXRDb250cm9sWCB9ICR7IHRhcmdldENvbnRyb2xZIH0sICR7IHRvLnggKyAwLjAwMDEgfSAkeyB0by55ICsgMC4wMDAxIH1gO1xuXG4gICAgcmV0dXJuIHsgcGF0aCwgbGFiZWxYOiAwLCBsYWJlbFk6IDAsIG9mZnNldFg6IDAsIG9mZnNldFk6IDAgfTtcbiAgfVxufVxuIl19
@@ -1,2 +0,0 @@
1
- export * from './bezier-path';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9jb21tb24vcGF0aC1jb25zdHJ1Y3Rvci9iZXppZXItcGF0aC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYmV6aWVyLXBhdGgnO1xuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1wYXRoLWNvbnN0cnVjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24vY29tbW9uL3BhdGgtY29uc3RydWN0b3IvaS1wYXRoLWNvbnN0cnVjdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuaW1wb3J0IHsgRUNvbm5lY3RvclNpZGUgfSBmcm9tICcuLi8uLi8uLi9kb21haW4nO1xuXG5leHBvcnQgaW50ZXJmYWNlIElQYXRoQ29uc3RydWN0b3JSZXN1bHQge1xuXG4gIHBhdGg6IHN0cmluZztcblxuICBsYWJlbFg6IG51bWJlcjtcblxuICBsYWJlbFk6IG51bWJlcjtcblxuICBvZmZzZXRYOiBudW1iZXI7XG5cbiAgb2Zmc2V0WTogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElQYXRoQ29uc3RydWN0b3Ige1xuXG4gIGhhbmRsZShmcm9tOiBJUG9pbnQsIGZyb21TaWRlOiBFQ29ubmVjdG9yU2lkZSwgdG86IElQb2ludCwgdG9TaWRlOiBFQ29ubmVjdG9yU2lkZSwgYm9yZGVyUmFkaXVzOiBudW1iZXIsIG9mZnNldDogbnVtYmVyKTogSVBhdGhDb25zdHJ1Y3RvclJlc3VsdDtcbn1cbiJdfQ==
@@ -1,6 +0,0 @@
1
- export * from './bezier-path';
2
- export * from './segment-path';
3
- export * from './straight-path';
4
- export * from './i-path-constructor';
5
- export * from './path-constructor';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9jb21tb24vcGF0aC1jb25zdHJ1Y3Rvci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQztBQUU5QixjQUFjLGdCQUFnQixDQUFDO0FBRS9CLGNBQWMsaUJBQWlCLENBQUM7QUFHaEMsY0FBYyxzQkFBc0IsQ0FBQztBQUVyQyxjQUFjLG9CQUFvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9iZXppZXItcGF0aCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vc2VnbWVudC1wYXRoJztcblxuZXhwb3J0ICogZnJvbSAnLi9zdHJhaWdodC1wYXRoJztcblxuXG5leHBvcnQgKiBmcm9tICcuL2ktcGF0aC1jb25zdHJ1Y3Rvcic7XG5cbmV4cG9ydCAqIGZyb20gJy4vcGF0aC1jb25zdHJ1Y3Rvcic7XG4iXX0=
@@ -1,15 +0,0 @@
1
- import { EFConnectionType } from '../e-f-connection-type';
2
- import { StraightPath } from './straight-path';
3
- import { SegmentPath } from './segment-path';
4
- import { BezierPath } from './bezier-path';
5
- export class PathConstructor {
6
- static { this.constructors = {
7
- [EFConnectionType.STRAIGHT]: new StraightPath(),
8
- [EFConnectionType.BEZIER]: new BezierPath(),
9
- [EFConnectionType.SEGMENT]: new SegmentPath(),
10
- }; }
11
- static handle(type, from, fromSide, to, toSide) {
12
- return this.constructors[type].handle(from, fromSide, to, toSide);
13
- }
14
- }
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0aC1jb25zdHJ1Y3Rvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uL2NvbW1vbi9wYXRoLWNvbnN0cnVjdG9yL3BhdGgtY29uc3RydWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUk3QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE1BQU0sT0FBTyxlQUFlO2FBRVgsaUJBQVksR0FBRztRQUM1QixDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxFQUFFLElBQUksWUFBWSxFQUFFO1FBQy9DLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxVQUFVLEVBQUU7UUFDM0MsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsRUFBRSxJQUFJLFdBQVcsRUFBRTtLQUM5QyxDQUFBO0lBRU0sTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFzQixFQUFFLElBQVksRUFBRSxRQUF3QixFQUFFLEVBQVUsRUFBRSxNQUFzQjtRQUNySCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3BFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFRkNvbm5lY3Rpb25UeXBlIH0gZnJvbSAnLi4vZS1mLWNvbm5lY3Rpb24tdHlwZSc7XG5pbXBvcnQgeyBTdHJhaWdodFBhdGggfSBmcm9tICcuL3N0cmFpZ2h0LXBhdGgnO1xuaW1wb3J0IHsgU2VnbWVudFBhdGggfSBmcm9tICcuL3NlZ21lbnQtcGF0aCc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuaW1wb3J0IHsgSVBhdGhDb25zdHJ1Y3RvclJlc3VsdCB9IGZyb20gJy4vaS1wYXRoLWNvbnN0cnVjdG9yJztcbmltcG9ydCB7IEVDb25uZWN0b3JTaWRlIH0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IEJlemllclBhdGggfSBmcm9tICcuL2Jlemllci1wYXRoJztcblxuZXhwb3J0IGNsYXNzIFBhdGhDb25zdHJ1Y3RvciB7XG5cbiAgcHJpdmF0ZSBzdGF0aWMgY29uc3RydWN0b3JzID0ge1xuICAgIFtFRkNvbm5lY3Rpb25UeXBlLlNUUkFJR0hUXTogbmV3IFN0cmFpZ2h0UGF0aCgpLFxuICAgIFtFRkNvbm5lY3Rpb25UeXBlLkJFWklFUl06IG5ldyBCZXppZXJQYXRoKCksXG4gICAgW0VGQ29ubmVjdGlvblR5cGUuU0VHTUVOVF06IG5ldyBTZWdtZW50UGF0aCgpLFxuICB9XG5cbiAgcHVibGljIHN0YXRpYyBoYW5kbGUodHlwZTogRUZDb25uZWN0aW9uVHlwZSwgZnJvbTogSVBvaW50LCBmcm9tU2lkZTogRUNvbm5lY3RvclNpZGUsIHRvOiBJUG9pbnQsIHRvU2lkZTogRUNvbm5lY3RvclNpZGUpOiBJUGF0aENvbnN0cnVjdG9yUmVzdWx0IHtcbiAgICByZXR1cm4gdGhpcy5jb25zdHJ1Y3RvcnNbdHlwZV0uaGFuZGxlKGZyb20sIGZyb21TaWRlLCB0bywgdG9TaWRlKTtcbiAgfVxufVxuIl19
@@ -1,9 +0,0 @@
1
- import { PointExtensions } from '@foblex/core';
2
- import { EConnectorSide } from '../../../../domain';
3
- export const CONNECTOR_SIDE_POINT = {
4
- [EConnectorSide.LEFT]: PointExtensions.initialize(-1, 0),
5
- [EConnectorSide.RIGHT]: PointExtensions.initialize(1, 0),
6
- [EConnectorSide.TOP]: PointExtensions.initialize(0, -1),
7
- [EConnectorSide.BOTTOM]: PointExtensions.initialize(0, 1),
8
- };
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdG9yLXNpZGUtcG9pbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9jb21tb24vcGF0aC1jb25zdHJ1Y3Rvci9zZWdtZW50LXBhdGgvY29ubmVjdG9yLXNpZGUtcG9pbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMvQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFcEQsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUc7SUFFbEMsQ0FBRSxjQUFjLENBQUMsSUFBSSxDQUFFLEVBQUUsZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7SUFFMUQsQ0FBRSxjQUFjLENBQUMsS0FBSyxDQUFFLEVBQUUsZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRTFELENBQUUsY0FBYyxDQUFDLEdBQUcsQ0FBRSxFQUFFLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBRXpELENBQUUsY0FBYyxDQUFDLE1BQU0sQ0FBRSxFQUFFLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztDQUM1RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUG9pbnRFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IEVDb25uZWN0b3JTaWRlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJztcblxuZXhwb3J0IGNvbnN0IENPTk5FQ1RPUl9TSURFX1BPSU5UID0ge1xuXG4gIFsgRUNvbm5lY3RvclNpZGUuTEVGVCBdOiBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgtMSwgMCksXG5cbiAgWyBFQ29ubmVjdG9yU2lkZS5SSUdIVCBdOiBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgxLCAwKSxcblxuICBbIEVDb25uZWN0b3JTaWRlLlRPUCBdOiBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgwLCAtMSksXG5cbiAgWyBFQ29ubmVjdG9yU2lkZS5CT1RUT00gXTogUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoMCwgMSksXG59O1xuIl19
@@ -1,10 +0,0 @@
1
- export class EdgeCenterCalculator {
2
- static getEdgeCenter(sourceX, sourceY, targetX, targetY) {
3
- const xOffset = Math.abs(targetX - sourceX) / 2;
4
- const centerX = targetX < sourceX ? targetX + xOffset : targetX - xOffset;
5
- const yOffset = Math.abs(targetY - sourceY) / 2;
6
- const centerY = targetY < sourceY ? targetY + yOffset : targetY - yOffset;
7
- return [centerX, centerY, xOffset, yOffset];
8
- }
9
- }
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRnZS1jZW50ZXItY2FsY3VsYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uL2NvbW1vbi9wYXRoLWNvbnN0cnVjdG9yL3NlZ21lbnQtcGF0aC9lZGdlLWNlbnRlci1jYWxjdWxhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxvQkFBb0I7SUFDeEIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxPQUFlLEVBQUUsT0FBZSxFQUFFLE9BQWUsRUFBRSxPQUFlO1FBQzVGLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNoRCxNQUFNLE9BQU8sR0FBRyxPQUFPLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBRTFFLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNoRCxNQUFNLE9BQU8sR0FBRyxPQUFPLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBRTFFLE9BQU8sQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM5QyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgRWRnZUNlbnRlckNhbGN1bGF0b3Ige1xuICBwdWJsaWMgc3RhdGljIGdldEVkZ2VDZW50ZXIoc291cmNlWDogbnVtYmVyLCBzb3VyY2VZOiBudW1iZXIsIHRhcmdldFg6IG51bWJlciwgdGFyZ2V0WTogbnVtYmVyKTogW251bWJlciwgbnVtYmVyLCBudW1iZXIsIG51bWJlcl0ge1xuICAgIGNvbnN0IHhPZmZzZXQgPSBNYXRoLmFicyh0YXJnZXRYIC0gc291cmNlWCkgLyAyO1xuICAgIGNvbnN0IGNlbnRlclggPSB0YXJnZXRYIDwgc291cmNlWCA/IHRhcmdldFggKyB4T2Zmc2V0IDogdGFyZ2V0WCAtIHhPZmZzZXQ7XG5cbiAgICBjb25zdCB5T2Zmc2V0ID0gTWF0aC5hYnModGFyZ2V0WSAtIHNvdXJjZVkpIC8gMjtcbiAgICBjb25zdCBjZW50ZXJZID0gdGFyZ2V0WSA8IHNvdXJjZVkgPyB0YXJnZXRZICsgeU9mZnNldCA6IHRhcmdldFkgLSB5T2Zmc2V0O1xuXG4gICAgcmV0dXJuIFtjZW50ZXJYLCBjZW50ZXJZLCB4T2Zmc2V0LCB5T2Zmc2V0XTtcbiAgfVxufVxuIl19
@@ -1,6 +0,0 @@
1
- export * from './connector-side-point';
2
- export * from './edge-center-calculator';
3
- export * from './path-bend';
4
- export * from './point-utils';
5
- export * from './segment-path';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9jb21tb24vcGF0aC1jb25zdHJ1Y3Rvci9zZWdtZW50LXBhdGgvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx3QkFBd0IsQ0FBQztBQUV2QyxjQUFjLDBCQUEwQixDQUFDO0FBRXpDLGNBQWMsYUFBYSxDQUFDO0FBRTVCLGNBQWMsZUFBZSxDQUFDO0FBRTlCLGNBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Nvbm5lY3Rvci1zaWRlLXBvaW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9lZGdlLWNlbnRlci1jYWxjdWxhdG9yJztcblxuZXhwb3J0ICogZnJvbSAnLi9wYXRoLWJlbmQnO1xuXG5leHBvcnQgKiBmcm9tICcuL3BvaW50LXV0aWxzJztcblxuZXhwb3J0ICogZnJvbSAnLi9zZWdtZW50LXBhdGgnO1xuIl19
@@ -1,19 +0,0 @@
1
- import { PointUtils } from './point-utils';
2
- export class PathBend {
3
- static getBend(a, b, c, size) {
4
- const bendSize = Math.min(PointUtils.distance(a, b) / 2, PointUtils.distance(b, c) / 2, size);
5
- const { x, y } = b;
6
- if ((a.x === x && x === c.x) || (a.y === y && y === c.y)) {
7
- return `L${x} ${y}`;
8
- }
9
- if (a.y === y) {
10
- const xDir = a.x < c.x ? -1 : 1;
11
- const yDir = a.y < c.y ? 1 : -1;
12
- return `L ${x + bendSize * xDir},${y}Q ${x},${y} ${x},${y + bendSize * yDir}`;
13
- }
14
- const xDir = a.x < c.x ? 1 : -1;
15
- const yDir = a.y < c.y ? -1 : 1;
16
- return `L ${x},${y + bendSize * yDir}Q ${x},${y} ${x + bendSize * xDir},${y}`;
17
- }
18
- }
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0aC1iZW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24vY29tbW9uL3BhdGgtY29uc3RydWN0b3Ivc2VnbWVudC1wYXRoL3BhdGgtYmVuZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE1BQU0sT0FBTyxRQUFRO0lBQ1osTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFTLEVBQUUsQ0FBUyxFQUFFLENBQVMsRUFBRSxJQUFZO1FBQ2pFLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUM5RixNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUVuQixJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDeEQsT0FBTyxJQUFLLENBQUUsSUFBSyxDQUFFLEVBQUUsQ0FBQztTQUN6QjtRQUVELElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDYixNQUFNLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDaEMsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2hDLE9BQU8sS0FBTSxDQUFDLEdBQUcsUUFBUSxHQUFHLElBQUssSUFBSyxDQUFFLEtBQU0sQ0FBRSxJQUFLLENBQUUsSUFBSyxDQUFFLElBQUssQ0FBQyxHQUFHLFFBQVEsR0FBRyxJQUFLLEVBQUUsQ0FBQztTQUMzRjtRQUVELE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoQyxNQUFNLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEMsT0FBTyxLQUFNLENBQUUsSUFBSyxDQUFDLEdBQUcsUUFBUSxHQUFHLElBQUssS0FBTSxDQUFFLElBQUssQ0FBRSxJQUFLLENBQUMsR0FBRyxRQUFRLEdBQUcsSUFBSyxJQUFLLENBQUUsRUFBRSxDQUFDO0lBQzVGLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElQb2ludCB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBQb2ludFV0aWxzIH0gZnJvbSAnLi9wb2ludC11dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBQYXRoQmVuZCB7XG4gIHB1YmxpYyBzdGF0aWMgZ2V0QmVuZChhOiBJUG9pbnQsIGI6IElQb2ludCwgYzogSVBvaW50LCBzaXplOiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGNvbnN0IGJlbmRTaXplID0gTWF0aC5taW4oUG9pbnRVdGlscy5kaXN0YW5jZShhLCBiKSAvIDIsIFBvaW50VXRpbHMuZGlzdGFuY2UoYiwgYykgLyAyLCBzaXplKTtcbiAgICBjb25zdCB7IHgsIHkgfSA9IGI7XG5cbiAgICBpZiAoKGEueCA9PT0geCAmJiB4ID09PSBjLngpIHx8IChhLnkgPT09IHkgJiYgeSA9PT0gYy55KSkge1xuICAgICAgcmV0dXJuIGBMJHsgeCB9ICR7IHkgfWA7XG4gICAgfVxuXG4gICAgaWYgKGEueSA9PT0geSkge1xuICAgICAgY29uc3QgeERpciA9IGEueCA8IGMueCA/IC0xIDogMTtcbiAgICAgIGNvbnN0IHlEaXIgPSBhLnkgPCBjLnkgPyAxIDogLTE7XG4gICAgICByZXR1cm4gYEwgJHsgeCArIGJlbmRTaXplICogeERpciB9LCR7IHkgfVEgJHsgeCB9LCR7IHkgfSAkeyB4IH0sJHsgeSArIGJlbmRTaXplICogeURpciB9YDtcbiAgICB9XG5cbiAgICBjb25zdCB4RGlyID0gYS54IDwgYy54ID8gMSA6IC0xO1xuICAgIGNvbnN0IHlEaXIgPSBhLnkgPCBjLnkgPyAtMSA6IDE7XG4gICAgcmV0dXJuIGBMICR7IHggfSwkeyB5ICsgYmVuZFNpemUgKiB5RGlyIH1RICR7IHggfSwkeyB5IH0gJHsgeCArIGJlbmRTaXplICogeERpciB9LCR7IHkgfWA7XG4gIH1cbn1cbiJdfQ==
@@ -1,14 +0,0 @@
1
- import { PointExtensions } from '@foblex/core';
2
- import { EConnectorSide } from '../../../../domain';
3
- export class PointUtils {
4
- static getDirection(source, sourcePosition, target) {
5
- if (sourcePosition === EConnectorSide.LEFT || sourcePosition === EConnectorSide.RIGHT) {
6
- return source.x < target.x ? PointExtensions.initialize(1, 0) : PointExtensions.initialize(-1, 0);
7
- }
8
- return source.y < target.y ? PointExtensions.initialize(0, 1) : PointExtensions.initialize(0, -1);
9
- }
10
- static distance(a, b) {
11
- return Math.sqrt(Math.pow(b.x - a.x, 2) + Math.pow(b.y - a.y, 2));
12
- }
13
- }
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9pbnQtdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9jb21tb24vcGF0aC1jb25zdHJ1Y3Rvci9zZWdtZW50LXBhdGgvcG9pbnQtdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFVLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFcEQsTUFBTSxPQUFPLFVBQVU7SUFDZCxNQUFNLENBQUMsWUFBWSxDQUFDLE1BQWMsRUFBRSxjQUE4QixFQUFFLE1BQWM7UUFDdkYsSUFBSSxjQUFjLEtBQUssY0FBYyxDQUFDLElBQUksSUFBSSxjQUFjLEtBQUssY0FBYyxDQUFDLEtBQUssRUFBRTtZQUNyRixPQUFPLE1BQU0sQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDbkc7UUFDRCxPQUFPLE1BQU0sQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEcsQ0FBQztJQUVNLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBUyxFQUFFLENBQVM7UUFDekMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEUsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVBvaW50LCBQb2ludEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuaW1wb3J0IHsgRUNvbm5lY3RvclNpZGUgfSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nO1xuXG5leHBvcnQgY2xhc3MgUG9pbnRVdGlscyB7XG4gIHB1YmxpYyBzdGF0aWMgZ2V0RGlyZWN0aW9uKHNvdXJjZTogSVBvaW50LCBzb3VyY2VQb3NpdGlvbjogRUNvbm5lY3RvclNpZGUsIHRhcmdldDogSVBvaW50KTogSVBvaW50IHtcbiAgICBpZiAoc291cmNlUG9zaXRpb24gPT09IEVDb25uZWN0b3JTaWRlLkxFRlQgfHwgc291cmNlUG9zaXRpb24gPT09IEVDb25uZWN0b3JTaWRlLlJJR0hUKSB7XG4gICAgICByZXR1cm4gc291cmNlLnggPCB0YXJnZXQueCA/IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKDEsIDApIDogUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoLTEsIDApO1xuICAgIH1cbiAgICByZXR1cm4gc291cmNlLnkgPCB0YXJnZXQueSA/IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKDAsIDEpIDogUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoMCwgLTEpO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBkaXN0YW5jZShhOiBJUG9pbnQsIGI6IElQb2ludCk6IG51bWJlciB7XG4gICAgcmV0dXJuIE1hdGguc3FydChNYXRoLnBvdyhiLnggLSBhLngsIDIpICsgTWF0aC5wb3coYi55IC0gYS55LCAyKSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,123 +0,0 @@
1
- import { CONNECTOR_SIDE_POINT } from './connector-side-point';
2
- import { PointUtils } from './point-utils';
3
- import { EdgeCenterCalculator } from './edge-center-calculator';
4
- import { PathBend } from './path-bend';
5
- export class SegmentPath {
6
- handle(from, fromSide, to, toSide, borderRadius = 8, offset = 32) {
7
- const [points, labelX, labelY, offsetX, offsetY] = SegmentPath.getPoints(from, fromSide, to, toSide, { x: undefined, y: undefined }, offset);
8
- const path = SegmentPath.buildPath(points, borderRadius);
9
- return { path, labelX, labelY, offsetX, offsetY };
10
- }
11
- static getPoints(source, sourcePosition, target, targetPosition, center, offset) {
12
- const sourceDir = CONNECTOR_SIDE_POINT[sourcePosition];
13
- const targetDir = CONNECTOR_SIDE_POINT[targetPosition];
14
- const sourceGapped = { x: source.x + sourceDir.x * offset, y: source.y + sourceDir.y * offset };
15
- const targetGapped = { x: target.x + targetDir.x * offset, y: target.y + targetDir.y * offset };
16
- const dir = PointUtils.getDirection(sourceGapped, sourcePosition, targetGapped);
17
- const dirAccessor = dir.x !== 0 ? 'x' : 'y';
18
- const currDir = dir[dirAccessor];
19
- let points = [];
20
- let centerX, centerY;
21
- const sourceGapOffset = { x: 0, y: 0 };
22
- const targetGapOffset = { x: 0, y: 0 };
23
- const [defaultCenterX, defaultCenterY, defaultOffsetX, defaultOffsetY] = EdgeCenterCalculator.getEdgeCenter(source.x, source.y, target.x, target.y);
24
- if (sourceDir[dirAccessor] * targetDir[dirAccessor] === -1) {
25
- centerX = center.x || defaultCenterX;
26
- centerY = center.y || defaultCenterY;
27
- const verticalSplit = [
28
- { x: centerX, y: sourceGapped.y },
29
- { x: centerX, y: targetGapped.y },
30
- ];
31
- const horizontalSplit = [
32
- { x: sourceGapped.x, y: centerY },
33
- { x: targetGapped.x, y: centerY },
34
- ];
35
- if (sourceDir[dirAccessor] === currDir) {
36
- points = dirAccessor === 'x' ? verticalSplit : horizontalSplit;
37
- }
38
- else {
39
- points = dirAccessor === 'x' ? horizontalSplit : verticalSplit;
40
- }
41
- }
42
- else {
43
- const sourceTarget = [{ x: sourceGapped.x, y: targetGapped.y }];
44
- const targetSource = [{ x: targetGapped.x, y: sourceGapped.y }];
45
- if (dirAccessor === 'x') {
46
- points = sourceDir.x === currDir ? targetSource : sourceTarget;
47
- }
48
- else {
49
- points = sourceDir.y === currDir ? sourceTarget : targetSource;
50
- }
51
- if (sourcePosition === targetPosition) {
52
- const diff = Math.abs(source[dirAccessor] - target[dirAccessor]);
53
- if (diff <= offset) {
54
- const gapOffset = Math.min(offset - 1, offset - diff);
55
- if (sourceDir[dirAccessor] === currDir) {
56
- sourceGapOffset[dirAccessor] = (sourceGapped[dirAccessor] > source[dirAccessor] ? -1 : 1) * gapOffset;
57
- }
58
- else {
59
- targetGapOffset[dirAccessor] = (targetGapped[dirAccessor] > target[dirAccessor] ? -1 : 1) * gapOffset;
60
- }
61
- }
62
- }
63
- if (sourcePosition !== targetPosition) {
64
- const dirAccessorOpposite = dirAccessor === 'x' ? 'y' : 'x';
65
- const isSameDir = sourceDir[dirAccessor] === targetDir[dirAccessorOpposite];
66
- const sourceGtTargetOppo = sourceGapped[dirAccessorOpposite] > targetGapped[dirAccessorOpposite];
67
- const sourceLtTargetOppo = sourceGapped[dirAccessorOpposite] < targetGapped[dirAccessorOpposite];
68
- const flipSourceTarget = (sourceDir[dirAccessor] === 1 &&
69
- ((!isSameDir && sourceGtTargetOppo) || (isSameDir && sourceLtTargetOppo))) ||
70
- (sourceDir[dirAccessor] !== 1 &&
71
- ((!isSameDir && sourceLtTargetOppo) || (isSameDir && sourceGtTargetOppo)));
72
- if (flipSourceTarget) {
73
- points = dirAccessor === 'x' ? sourceTarget : targetSource;
74
- }
75
- }
76
- const sourceGapPoint = { x: sourceGapped.x + sourceGapOffset.x, y: sourceGapped.y + sourceGapOffset.y };
77
- const targetGapPoint = { x: targetGapped.x + targetGapOffset.x, y: targetGapped.y + targetGapOffset.y };
78
- const maxXDistance = Math.max(Math.abs(sourceGapPoint.x - points[0].x), Math.abs(targetGapPoint.x - points[0].x));
79
- const maxYDistance = Math.max(Math.abs(sourceGapPoint.y - points[0].y), Math.abs(targetGapPoint.y - points[0].y));
80
- if (maxXDistance >= maxYDistance) {
81
- centerX = (sourceGapPoint.x + targetGapPoint.x) / 2;
82
- centerY = points[0].y;
83
- }
84
- else {
85
- centerX = points[0].x;
86
- centerY = (sourceGapPoint.y + targetGapPoint.y) / 2;
87
- }
88
- }
89
- const pathPoints = [
90
- source,
91
- { x: sourceGapped.x + sourceGapOffset.x, y: sourceGapped.y + sourceGapOffset.y },
92
- ...points,
93
- { x: targetGapped.x + targetGapOffset.x, y: targetGapped.y + targetGapOffset.y },
94
- target,
95
- ];
96
- return [pathPoints, centerX, centerY, defaultOffsetX, defaultOffsetY];
97
- }
98
- static buildPath(points, borderRadius) {
99
- let path = '';
100
- for (let i = 0; i < points.length; i++) {
101
- const p = points[i];
102
- let segment = '';
103
- if (i > 0 && i < points.length - 1) {
104
- segment = PathBend.getBend(points[i - 1], p, points[i + 1], borderRadius);
105
- }
106
- else if (i === points.length - 1) {
107
- segment = SegmentPath.buildLastLineSegment(i, p);
108
- }
109
- else {
110
- segment = SegmentPath.buildMoveOrLineSegment(i, p);
111
- }
112
- path += segment;
113
- }
114
- return path;
115
- }
116
- static buildMoveOrLineSegment(index, point) {
117
- return `${index === 0 ? 'M' : 'L'}${point.x} ${point.y}`;
118
- }
119
- static buildLastLineSegment(index, point) {
120
- return `L${point.x + 0.0001} ${point.y + 0.0001}`;
121
- }
122
- }
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VnbWVudC1wYXRoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNvbm5lY3Rpb24vY29tbW9uL3BhdGgtY29uc3RydWN0b3Ivc2VnbWVudC1wYXRoL3NlZ21lbnQtcGF0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFJdkMsTUFBTSxPQUFPLFdBQVc7SUFFZixNQUFNLENBQUMsSUFBWSxFQUFFLFFBQXdCLEVBQUUsRUFBVSxFQUFFLE1BQXNCLEVBQUUsZUFBdUIsQ0FBQyxFQUFFLE1BQU0sR0FBRyxFQUFFO1FBQzdILE1BQU0sQ0FBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFFLEdBQUcsV0FBVyxDQUFDLFNBQVMsQ0FDdEUsSUFBSSxFQUNKLFFBQVEsRUFDUixFQUFFLEVBQ0YsTUFBTSxFQUNOLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLEVBQzlCLE1BQU0sQ0FDVCxDQUFDO1FBRUYsTUFBTSxJQUFJLEdBQUcsV0FBVyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFFekQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQztJQUNwRCxDQUFDO0lBRU0sTUFBTSxDQUFDLFNBQVMsQ0FDbkIsTUFBYyxFQUNkLGNBQThCLEVBQzlCLE1BQWMsRUFDZCxjQUE4QixFQUM5QixNQUF1QixFQUN2QixNQUFjO1FBRWhCLE1BQU0sU0FBUyxHQUFHLG9CQUFvQixDQUFFLGNBQWMsQ0FBRSxDQUFDO1FBQ3pELE1BQU0sU0FBUyxHQUFHLG9CQUFvQixDQUFFLGNBQWMsQ0FBRSxDQUFDO1FBQ3pELE1BQU0sWUFBWSxHQUFXLEVBQUUsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQztRQUN4RyxNQUFNLFlBQVksR0FBVyxFQUFFLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUM7UUFDeEcsTUFBTSxHQUFHLEdBQUcsVUFBVSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsY0FBYyxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQ2hGLE1BQU0sV0FBVyxHQUFHLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztRQUM1QyxNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUUsV0FBVyxDQUFFLENBQUM7UUFFbkMsSUFBSSxNQUFNLEdBQWEsRUFBRSxDQUFDO1FBQzFCLElBQUksT0FBTyxFQUFFLE9BQU8sQ0FBQztRQUNyQixNQUFNLGVBQWUsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1FBQ3ZDLE1BQU0sZUFBZSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFFdkMsTUFBTSxDQUFFLGNBQWMsRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLGNBQWMsQ0FBRSxHQUFHLG9CQUFvQixDQUFDLGFBQWEsQ0FDekcsTUFBTSxDQUFDLENBQUMsRUFDUixNQUFNLENBQUMsQ0FBQyxFQUNSLE1BQU0sQ0FBQyxDQUFDLEVBQ1IsTUFBTSxDQUFDLENBQUMsQ0FDWCxDQUFDO1FBRUYsSUFBSSxTQUFTLENBQUUsV0FBVyxDQUFFLEdBQUcsU0FBUyxDQUFFLFdBQVcsQ0FBRSxLQUFLLENBQUMsQ0FBQyxFQUFFO1lBQzlELE9BQU8sR0FBRyxNQUFNLENBQUMsQ0FBQyxJQUFJLGNBQWMsQ0FBQztZQUNyQyxPQUFPLEdBQUcsTUFBTSxDQUFDLENBQUMsSUFBSSxjQUFjLENBQUM7WUFDckMsTUFBTSxhQUFhLEdBQWE7Z0JBQzlCLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUMsRUFBRTtnQkFDakMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQyxFQUFFO2FBQ2xDLENBQUM7WUFDRixNQUFNLGVBQWUsR0FBYTtnQkFDaEMsRUFBRSxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFO2dCQUNqQyxFQUFFLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUU7YUFDbEMsQ0FBQztZQUVGLElBQUksU0FBUyxDQUFFLFdBQVcsQ0FBRSxLQUFLLE9BQU8sRUFBRTtnQkFDeEMsTUFBTSxHQUFHLFdBQVcsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDO2FBQ2hFO2lCQUFNO2dCQUNMLE1BQU0sR0FBRyxXQUFXLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQzthQUNoRTtTQUNGO2FBQU07WUFDTCxNQUFNLFlBQVksR0FBYSxDQUFFLEVBQUUsQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDLEVBQUUsQ0FBRSxDQUFDO1lBQzVFLE1BQU0sWUFBWSxHQUFhLENBQUUsRUFBRSxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUMsRUFBRSxDQUFFLENBQUM7WUFFNUUsSUFBSSxXQUFXLEtBQUssR0FBRyxFQUFFO2dCQUN2QixNQUFNLEdBQUcsU0FBUyxDQUFDLENBQUMsS0FBSyxPQUFPLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDO2FBQ2hFO2lCQUFNO2dCQUNMLE1BQU0sR0FBRyxTQUFTLENBQUMsQ0FBQyxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUM7YUFDaEU7WUFFRCxJQUFJLGNBQWMsS0FBSyxjQUFjLEVBQUU7Z0JBQ3JDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFFLFdBQVcsQ0FBRSxHQUFHLE1BQU0sQ0FBRSxXQUFXLENBQUUsQ0FBQyxDQUFDO2dCQUVyRSxJQUFJLElBQUksSUFBSSxNQUFNLEVBQUU7b0JBQ2xCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxNQUFNLEdBQUcsSUFBSSxDQUFDLENBQUM7b0JBQ3RELElBQUksU0FBUyxDQUFFLFdBQVcsQ0FBRSxLQUFLLE9BQU8sRUFBRTt3QkFDeEMsZUFBZSxDQUFFLFdBQVcsQ0FBRSxHQUFHLENBQUMsWUFBWSxDQUFFLFdBQVcsQ0FBRSxHQUFHLE1BQU0sQ0FBRSxXQUFXLENBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQztxQkFDN0c7eUJBQU07d0JBQ0wsZUFBZSxDQUFFLFdBQVcsQ0FBRSxHQUFHLENBQUMsWUFBWSxDQUFFLFdBQVcsQ0FBRSxHQUFHLE1BQU0sQ0FBRSxXQUFXLENBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQztxQkFDN0c7aUJBQ0Y7YUFDRjtZQUVELElBQUksY0FBYyxLQUFLLGNBQWMsRUFBRTtnQkFDckMsTUFBTSxtQkFBbUIsR0FBRyxXQUFXLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztnQkFDNUQsTUFBTSxTQUFTLEdBQUcsU0FBUyxDQUFFLFdBQVcsQ0FBRSxLQUFLLFNBQVMsQ0FBRSxtQkFBbUIsQ0FBRSxDQUFDO2dCQUNoRixNQUFNLGtCQUFrQixHQUFHLFlBQVksQ0FBRSxtQkFBbUIsQ0FBRSxHQUFHLFlBQVksQ0FBRSxtQkFBbUIsQ0FBRSxDQUFDO2dCQUNyRyxNQUFNLGtCQUFrQixHQUFHLFlBQVksQ0FBRSxtQkFBbUIsQ0FBRSxHQUFHLFlBQVksQ0FBRSxtQkFBbUIsQ0FBRSxDQUFDO2dCQUNyRyxNQUFNLGdCQUFnQixHQUNsQixDQUFDLFNBQVMsQ0FBRSxXQUFXLENBQUUsS0FBSyxDQUFDO29CQUMzQixDQUFDLENBQUMsQ0FBQyxTQUFTLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxrQkFBa0IsQ0FBQyxDQUFDLENBQUM7b0JBQzlFLENBQUMsU0FBUyxDQUFFLFdBQVcsQ0FBRSxLQUFLLENBQUM7d0JBQzNCLENBQUMsQ0FBQyxDQUFDLFNBQVMsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUVuRixJQUFJLGdCQUFnQixFQUFFO29CQUNwQixNQUFNLEdBQUcsV0FBVyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUM7aUJBQzVEO2FBQ0Y7WUFFRCxNQUFNLGNBQWMsR0FBRyxFQUFFLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQyxHQUFHLGVBQWUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDLEdBQUcsZUFBZSxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ3hHLE1BQU0sY0FBYyxHQUFHLEVBQUUsQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDLEdBQUcsZUFBZSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUMsR0FBRyxlQUFlLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDeEcsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FDekIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBRSxDQUFDLENBQUUsQ0FBQyxDQUFDLENBQUMsRUFDMUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBRSxDQUFDLENBQUUsQ0FBQyxDQUFDLENBQUMsQ0FDN0MsQ0FBQztZQUNGLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQ3pCLElBQUksQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUUsQ0FBQyxDQUFFLENBQUMsQ0FBQyxDQUFDLEVBQzFDLElBQUksQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUUsQ0FBQyxDQUFFLENBQUMsQ0FBQyxDQUFDLENBQzdDLENBQUM7WUFFRixJQUFJLFlBQVksSUFBSSxZQUFZLEVBQUU7Z0JBQ2hDLE9BQU8sR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDLEdBQUcsY0FBYyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDcEQsT0FBTyxHQUFHLE1BQU0sQ0FBRSxDQUFDLENBQUUsQ0FBQyxDQUFDLENBQUM7YUFDekI7aUJBQU07Z0JBQ0wsT0FBTyxHQUFHLE1BQU0sQ0FBRSxDQUFDLENBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ3hCLE9BQU8sR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDLEdBQUcsY0FBYyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUNyRDtTQUNGO1FBRUQsTUFBTSxVQUFVLEdBQUc7WUFDakIsTUFBTTtZQUNOLEVBQUUsQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDLEdBQUcsZUFBZSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUMsR0FBRyxlQUFlLENBQUMsQ0FBQyxFQUFFO1lBQ2hGLEdBQUcsTUFBTTtZQUNULEVBQUUsQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDLEdBQUcsZUFBZSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUMsR0FBRyxlQUFlLENBQUMsQ0FBQyxFQUFFO1lBQ2hGLE1BQU07U0FDUCxDQUFDO1FBRUYsT0FBTyxDQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxjQUFjLENBQUUsQ0FBQztJQUMxRSxDQUFDO0lBRU8sTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFnQixFQUFFLFlBQW9CO1FBQzdELElBQUksSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUNkLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3RDLE1BQU0sQ0FBQyxHQUFHLE1BQU0sQ0FBRSxDQUFDLENBQUUsQ0FBQztZQUN0QixJQUFJLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFFakIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDbEMsT0FBTyxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFFLENBQUMsR0FBRyxDQUFDLENBQUUsRUFBRSxDQUFDLEVBQUUsTUFBTSxDQUFFLENBQUMsR0FBRyxDQUFDLENBQUUsRUFBRSxZQUFZLENBQUMsQ0FBQzthQUMvRTtpQkFBTSxJQUFJLENBQUMsS0FBSyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDbEMsT0FBTyxHQUFHLFdBQVcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7YUFDbEQ7aUJBQU07Z0JBQ0wsT0FBTyxHQUFHLFdBQVcsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7YUFDcEQ7WUFDRCxJQUFJLElBQUksT0FBTyxDQUFDO1NBQ2pCO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU8sTUFBTSxDQUFDLHNCQUFzQixDQUFDLEtBQWEsRUFBRSxLQUFhO1FBQ2hFLE9BQU8sR0FBSSxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUksR0FBSSxLQUFLLENBQUMsQ0FBRSxJQUFLLEtBQUssQ0FBQyxDQUFFLEVBQUUsQ0FBQztJQUNqRSxDQUFDO0lBR08sTUFBTSxDQUFDLG9CQUFvQixDQUFDLEtBQWEsRUFBRSxLQUFhO1FBQzlELE9BQU8sSUFBSyxLQUFLLENBQUMsQ0FBQyxHQUFHLE1BQU8sSUFBSyxLQUFLLENBQUMsQ0FBQyxHQUFHLE1BQU8sRUFBRSxDQUFDO0lBQ3hELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElQb2ludCB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBDT05ORUNUT1JfU0lERV9QT0lOVCB9IGZyb20gJy4vY29ubmVjdG9yLXNpZGUtcG9pbnQnO1xuaW1wb3J0IHsgUG9pbnRVdGlscyB9IGZyb20gJy4vcG9pbnQtdXRpbHMnO1xuaW1wb3J0IHsgRWRnZUNlbnRlckNhbGN1bGF0b3IgfSBmcm9tICcuL2VkZ2UtY2VudGVyLWNhbGN1bGF0b3InO1xuaW1wb3J0IHsgUGF0aEJlbmQgfSBmcm9tICcuL3BhdGgtYmVuZCc7XG5pbXBvcnQgeyBJUGF0aENvbnN0cnVjdG9yLCBJUGF0aENvbnN0cnVjdG9yUmVzdWx0IH0gZnJvbSAnLi4vaS1wYXRoLWNvbnN0cnVjdG9yJztcbmltcG9ydCB7IEVDb25uZWN0b3JTaWRlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZG9tYWluJztcblxuZXhwb3J0IGNsYXNzIFNlZ21lbnRQYXRoIGltcGxlbWVudHMgSVBhdGhDb25zdHJ1Y3RvciB7XG5cbiAgcHVibGljIGhhbmRsZShmcm9tOiBJUG9pbnQsIGZyb21TaWRlOiBFQ29ubmVjdG9yU2lkZSwgdG86IElQb2ludCwgdG9TaWRlOiBFQ29ubmVjdG9yU2lkZSwgYm9yZGVyUmFkaXVzOiBudW1iZXIgPSA4LCBvZmZzZXQgPSAzMik6IElQYXRoQ29uc3RydWN0b3JSZXN1bHQge1xuICAgIGNvbnN0IFsgcG9pbnRzLCBsYWJlbFgsIGxhYmVsWSwgb2Zmc2V0WCwgb2Zmc2V0WSBdID0gU2VnbWVudFBhdGguZ2V0UG9pbnRzKFxuICAgICAgICBmcm9tLFxuICAgICAgICBmcm9tU2lkZSxcbiAgICAgICAgdG8sXG4gICAgICAgIHRvU2lkZSxcbiAgICAgICAgeyB4OiB1bmRlZmluZWQsIHk6IHVuZGVmaW5lZCB9LFxuICAgICAgICBvZmZzZXRcbiAgICApO1xuXG4gICAgY29uc3QgcGF0aCA9IFNlZ21lbnRQYXRoLmJ1aWxkUGF0aChwb2ludHMsIGJvcmRlclJhZGl1cyk7XG5cbiAgICByZXR1cm4geyBwYXRoLCBsYWJlbFgsIGxhYmVsWSwgb2Zmc2V0WCwgb2Zmc2V0WSB9O1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBnZXRQb2ludHMoXG4gICAgICBzb3VyY2U6IElQb2ludCxcbiAgICAgIHNvdXJjZVBvc2l0aW9uOiBFQ29ubmVjdG9yU2lkZSxcbiAgICAgIHRhcmdldDogSVBvaW50LFxuICAgICAgdGFyZ2V0UG9zaXRpb246IEVDb25uZWN0b3JTaWRlLFxuICAgICAgY2VudGVyOiBQYXJ0aWFsPElQb2ludD4sXG4gICAgICBvZmZzZXQ6IG51bWJlclxuICApOiBbIElQb2ludFtdLCBudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXIgXSB7XG4gICAgY29uc3Qgc291cmNlRGlyID0gQ09OTkVDVE9SX1NJREVfUE9JTlRbIHNvdXJjZVBvc2l0aW9uIF07XG4gICAgY29uc3QgdGFyZ2V0RGlyID0gQ09OTkVDVE9SX1NJREVfUE9JTlRbIHRhcmdldFBvc2l0aW9uIF07XG4gICAgY29uc3Qgc291cmNlR2FwcGVkOiBJUG9pbnQgPSB7IHg6IHNvdXJjZS54ICsgc291cmNlRGlyLnggKiBvZmZzZXQsIHk6IHNvdXJjZS55ICsgc291cmNlRGlyLnkgKiBvZmZzZXQgfTtcbiAgICBjb25zdCB0YXJnZXRHYXBwZWQ6IElQb2ludCA9IHsgeDogdGFyZ2V0LnggKyB0YXJnZXREaXIueCAqIG9mZnNldCwgeTogdGFyZ2V0LnkgKyB0YXJnZXREaXIueSAqIG9mZnNldCB9O1xuICAgIGNvbnN0IGRpciA9IFBvaW50VXRpbHMuZ2V0RGlyZWN0aW9uKHNvdXJjZUdhcHBlZCwgc291cmNlUG9zaXRpb24sIHRhcmdldEdhcHBlZCk7XG4gICAgY29uc3QgZGlyQWNjZXNzb3IgPSBkaXIueCAhPT0gMCA/ICd4JyA6ICd5JztcbiAgICBjb25zdCBjdXJyRGlyID0gZGlyWyBkaXJBY2Nlc3NvciBdO1xuXG4gICAgbGV0IHBvaW50czogSVBvaW50W10gPSBbXTtcbiAgICBsZXQgY2VudGVyWCwgY2VudGVyWTtcbiAgICBjb25zdCBzb3VyY2VHYXBPZmZzZXQgPSB7IHg6IDAsIHk6IDAgfTtcbiAgICBjb25zdCB0YXJnZXRHYXBPZmZzZXQgPSB7IHg6IDAsIHk6IDAgfTtcblxuICAgIGNvbnN0IFsgZGVmYXVsdENlbnRlclgsIGRlZmF1bHRDZW50ZXJZLCBkZWZhdWx0T2Zmc2V0WCwgZGVmYXVsdE9mZnNldFkgXSA9IEVkZ2VDZW50ZXJDYWxjdWxhdG9yLmdldEVkZ2VDZW50ZXIoXG4gICAgICAgIHNvdXJjZS54LFxuICAgICAgICBzb3VyY2UueSxcbiAgICAgICAgdGFyZ2V0LngsXG4gICAgICAgIHRhcmdldC55XG4gICAgKTtcblxuICAgIGlmIChzb3VyY2VEaXJbIGRpckFjY2Vzc29yIF0gKiB0YXJnZXREaXJbIGRpckFjY2Vzc29yIF0gPT09IC0xKSB7XG4gICAgICBjZW50ZXJYID0gY2VudGVyLnggfHwgZGVmYXVsdENlbnRlclg7XG4gICAgICBjZW50ZXJZID0gY2VudGVyLnkgfHwgZGVmYXVsdENlbnRlclk7XG4gICAgICBjb25zdCB2ZXJ0aWNhbFNwbGl0OiBJUG9pbnRbXSA9IFtcbiAgICAgICAgeyB4OiBjZW50ZXJYLCB5OiBzb3VyY2VHYXBwZWQueSB9LFxuICAgICAgICB7IHg6IGNlbnRlclgsIHk6IHRhcmdldEdhcHBlZC55IH0sXG4gICAgICBdO1xuICAgICAgY29uc3QgaG9yaXpvbnRhbFNwbGl0OiBJUG9pbnRbXSA9IFtcbiAgICAgICAgeyB4OiBzb3VyY2VHYXBwZWQueCwgeTogY2VudGVyWSB9LFxuICAgICAgICB7IHg6IHRhcmdldEdhcHBlZC54LCB5OiBjZW50ZXJZIH0sXG4gICAgICBdO1xuXG4gICAgICBpZiAoc291cmNlRGlyWyBkaXJBY2Nlc3NvciBdID09PSBjdXJyRGlyKSB7XG4gICAgICAgIHBvaW50cyA9IGRpckFjY2Vzc29yID09PSAneCcgPyB2ZXJ0aWNhbFNwbGl0IDogaG9yaXpvbnRhbFNwbGl0O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcG9pbnRzID0gZGlyQWNjZXNzb3IgPT09ICd4JyA/IGhvcml6b250YWxTcGxpdCA6IHZlcnRpY2FsU3BsaXQ7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHNvdXJjZVRhcmdldDogSVBvaW50W10gPSBbIHsgeDogc291cmNlR2FwcGVkLngsIHk6IHRhcmdldEdhcHBlZC55IH0gXTtcbiAgICAgIGNvbnN0IHRhcmdldFNvdXJjZTogSVBvaW50W10gPSBbIHsgeDogdGFyZ2V0R2FwcGVkLngsIHk6IHNvdXJjZUdhcHBlZC55IH0gXTtcblxuICAgICAgaWYgKGRpckFjY2Vzc29yID09PSAneCcpIHtcbiAgICAgICAgcG9pbnRzID0gc291cmNlRGlyLnggPT09IGN1cnJEaXIgPyB0YXJnZXRTb3VyY2UgOiBzb3VyY2VUYXJnZXQ7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBwb2ludHMgPSBzb3VyY2VEaXIueSA9PT0gY3VyckRpciA/IHNvdXJjZVRhcmdldCA6IHRhcmdldFNvdXJjZTtcbiAgICAgIH1cblxuICAgICAgaWYgKHNvdXJjZVBvc2l0aW9uID09PSB0YXJnZXRQb3NpdGlvbikge1xuICAgICAgICBjb25zdCBkaWZmID0gTWF0aC5hYnMoc291cmNlWyBkaXJBY2Nlc3NvciBdIC0gdGFyZ2V0WyBkaXJBY2Nlc3NvciBdKTtcblxuICAgICAgICBpZiAoZGlmZiA8PSBvZmZzZXQpIHtcbiAgICAgICAgICBjb25zdCBnYXBPZmZzZXQgPSBNYXRoLm1pbihvZmZzZXQgLSAxLCBvZmZzZXQgLSBkaWZmKTtcbiAgICAgICAgICBpZiAoc291cmNlRGlyWyBkaXJBY2Nlc3NvciBdID09PSBjdXJyRGlyKSB7XG4gICAgICAgICAgICBzb3VyY2VHYXBPZmZzZXRbIGRpckFjY2Vzc29yIF0gPSAoc291cmNlR2FwcGVkWyBkaXJBY2Nlc3NvciBdID4gc291cmNlWyBkaXJBY2Nlc3NvciBdID8gLTEgOiAxKSAqIGdhcE9mZnNldDtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGFyZ2V0R2FwT2Zmc2V0WyBkaXJBY2Nlc3NvciBdID0gKHRhcmdldEdhcHBlZFsgZGlyQWNjZXNzb3IgXSA+IHRhcmdldFsgZGlyQWNjZXNzb3IgXSA/IC0xIDogMSkgKiBnYXBPZmZzZXQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmIChzb3VyY2VQb3NpdGlvbiAhPT0gdGFyZ2V0UG9zaXRpb24pIHtcbiAgICAgICAgY29uc3QgZGlyQWNjZXNzb3JPcHBvc2l0ZSA9IGRpckFjY2Vzc29yID09PSAneCcgPyAneScgOiAneCc7XG4gICAgICAgIGNvbnN0IGlzU2FtZURpciA9IHNvdXJjZURpclsgZGlyQWNjZXNzb3IgXSA9PT0gdGFyZ2V0RGlyWyBkaXJBY2Nlc3Nvck9wcG9zaXRlIF07XG4gICAgICAgIGNvbnN0IHNvdXJjZUd0VGFyZ2V0T3BwbyA9IHNvdXJjZUdhcHBlZFsgZGlyQWNjZXNzb3JPcHBvc2l0ZSBdID4gdGFyZ2V0R2FwcGVkWyBkaXJBY2Nlc3Nvck9wcG9zaXRlIF07XG4gICAgICAgIGNvbnN0IHNvdXJjZUx0VGFyZ2V0T3BwbyA9IHNvdXJjZUdhcHBlZFsgZGlyQWNjZXNzb3JPcHBvc2l0ZSBdIDwgdGFyZ2V0R2FwcGVkWyBkaXJBY2Nlc3Nvck9wcG9zaXRlIF07XG4gICAgICAgIGNvbnN0IGZsaXBTb3VyY2VUYXJnZXQgPVxuICAgICAgICAgICAgKHNvdXJjZURpclsgZGlyQWNjZXNzb3IgXSA9PT0gMSAmJlxuICAgICAgICAgICAgICAgICgoIWlzU2FtZURpciAmJiBzb3VyY2VHdFRhcmdldE9wcG8pIHx8IChpc1NhbWVEaXIgJiYgc291cmNlTHRUYXJnZXRPcHBvKSkpIHx8XG4gICAgICAgICAgICAoc291cmNlRGlyWyBkaXJBY2Nlc3NvciBdICE9PSAxICYmXG4gICAgICAgICAgICAgICAgKCghaXNTYW1lRGlyICYmIHNvdXJjZUx0VGFyZ2V0T3BwbykgfHwgKGlzU2FtZURpciAmJiBzb3VyY2VHdFRhcmdldE9wcG8pKSk7XG5cbiAgICAgICAgaWYgKGZsaXBTb3VyY2VUYXJnZXQpIHtcbiAgICAgICAgICBwb2ludHMgPSBkaXJBY2Nlc3NvciA9PT0gJ3gnID8gc291cmNlVGFyZ2V0IDogdGFyZ2V0U291cmNlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHNvdXJjZUdhcFBvaW50ID0geyB4OiBzb3VyY2VHYXBwZWQueCArIHNvdXJjZUdhcE9mZnNldC54LCB5OiBzb3VyY2VHYXBwZWQueSArIHNvdXJjZUdhcE9mZnNldC55IH07XG4gICAgICBjb25zdCB0YXJnZXRHYXBQb2ludCA9IHsgeDogdGFyZ2V0R2FwcGVkLnggKyB0YXJnZXRHYXBPZmZzZXQueCwgeTogdGFyZ2V0R2FwcGVkLnkgKyB0YXJnZXRHYXBPZmZzZXQueSB9O1xuICAgICAgY29uc3QgbWF4WERpc3RhbmNlID0gTWF0aC5tYXgoXG4gICAgICAgICAgTWF0aC5hYnMoc291cmNlR2FwUG9pbnQueCAtIHBvaW50c1sgMCBdLngpLFxuICAgICAgICAgIE1hdGguYWJzKHRhcmdldEdhcFBvaW50LnggLSBwb2ludHNbIDAgXS54KVxuICAgICAgKTtcbiAgICAgIGNvbnN0IG1heFlEaXN0YW5jZSA9IE1hdGgubWF4KFxuICAgICAgICAgIE1hdGguYWJzKHNvdXJjZUdhcFBvaW50LnkgLSBwb2ludHNbIDAgXS55KSxcbiAgICAgICAgICBNYXRoLmFicyh0YXJnZXRHYXBQb2ludC55IC0gcG9pbnRzWyAwIF0ueSlcbiAgICAgICk7XG5cbiAgICAgIGlmIChtYXhYRGlzdGFuY2UgPj0gbWF4WURpc3RhbmNlKSB7XG4gICAgICAgIGNlbnRlclggPSAoc291cmNlR2FwUG9pbnQueCArIHRhcmdldEdhcFBvaW50LngpIC8gMjtcbiAgICAgICAgY2VudGVyWSA9IHBvaW50c1sgMCBdLnk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjZW50ZXJYID0gcG9pbnRzWyAwIF0ueDtcbiAgICAgICAgY2VudGVyWSA9IChzb3VyY2VHYXBQb2ludC55ICsgdGFyZ2V0R2FwUG9pbnQueSkgLyAyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IHBhdGhQb2ludHMgPSBbXG4gICAgICBzb3VyY2UsXG4gICAgICB7IHg6IHNvdXJjZUdhcHBlZC54ICsgc291cmNlR2FwT2Zmc2V0LngsIHk6IHNvdXJjZUdhcHBlZC55ICsgc291cmNlR2FwT2Zmc2V0LnkgfSxcbiAgICAgIC4uLnBvaW50cyxcbiAgICAgIHsgeDogdGFyZ2V0R2FwcGVkLnggKyB0YXJnZXRHYXBPZmZzZXQueCwgeTogdGFyZ2V0R2FwcGVkLnkgKyB0YXJnZXRHYXBPZmZzZXQueSB9LFxuICAgICAgdGFyZ2V0LFxuICAgIF07XG5cbiAgICByZXR1cm4gWyBwYXRoUG9pbnRzLCBjZW50ZXJYLCBjZW50ZXJZLCBkZWZhdWx0T2Zmc2V0WCwgZGVmYXVsdE9mZnNldFkgXTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIGJ1aWxkUGF0aChwb2ludHM6IElQb2ludFtdLCBib3JkZXJSYWRpdXM6IG51bWJlcik6IHN0cmluZyB7XG4gICAgbGV0IHBhdGggPSAnJztcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHBvaW50cy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgcCA9IHBvaW50c1sgaSBdO1xuICAgICAgbGV0IHNlZ21lbnQgPSAnJztcblxuICAgICAgaWYgKGkgPiAwICYmIGkgPCBwb2ludHMubGVuZ3RoIC0gMSkge1xuICAgICAgICBzZWdtZW50ID0gUGF0aEJlbmQuZ2V0QmVuZChwb2ludHNbIGkgLSAxIF0sIHAsIHBvaW50c1sgaSArIDEgXSwgYm9yZGVyUmFkaXVzKTtcbiAgICAgIH0gZWxzZSBpZiAoaSA9PT0gcG9pbnRzLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgc2VnbWVudCA9IFNlZ21lbnRQYXRoLmJ1aWxkTGFzdExpbmVTZWdtZW50KGksIHApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc2VnbWVudCA9IFNlZ21lbnRQYXRoLmJ1aWxkTW92ZU9yTGluZVNlZ21lbnQoaSwgcCk7XG4gICAgICB9XG4gICAgICBwYXRoICs9IHNlZ21lbnQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBhdGg7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBidWlsZE1vdmVPckxpbmVTZWdtZW50KGluZGV4OiBudW1iZXIsIHBvaW50OiBJUG9pbnQpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHsgaW5kZXggPT09IDAgPyAnTScgOiAnTCcgfSR7IHBvaW50LnggfSAkeyBwb2ludC55IH1gO1xuICB9XG5cblxuICBwcml2YXRlIHN0YXRpYyBidWlsZExhc3RMaW5lU2VnbWVudChpbmRleDogbnVtYmVyLCBwb2ludDogSVBvaW50KTogc3RyaW5nIHtcbiAgICByZXR1cm4gYEwkeyBwb2ludC54ICsgMC4wMDAxIH0gJHsgcG9pbnQueSArIDAuMDAwMSB9YDtcbiAgfVxufVxuIl19
@@ -1,2 +0,0 @@
1
- export * from './straight-path';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY29ubmVjdGlvbi9jb21tb24vcGF0aC1jb25zdHJ1Y3Rvci9zdHJhaWdodC1wYXRoL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3N0cmFpZ2h0LXBhdGgnO1xuIl19
@@ -1,9 +0,0 @@
1
- import { EdgeCenterCalculator } from '../segment-path';
2
- export class StraightPath {
3
- handle(from, fromSide, to, toSide, borderRadius = 8, offset = 32) {
4
- const [labelX, labelY, offsetX, offsetY] = EdgeCenterCalculator.getEdgeCenter(from.x, from.y, to.x, to.y);
5
- const path = `M ${from.x} ${from.y} L ${to.x + 0.0001} ${to.y + 0.0001}`;
6
- return { path, labelX, labelY, offsetX, offsetY };
7
- }
8
- }
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyYWlnaHQtcGF0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uL2NvbW1vbi9wYXRoLWNvbnN0cnVjdG9yL3N0cmFpZ2h0LXBhdGgvc3RyYWlnaHQtcGF0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUd2RCxNQUFNLE9BQU8sWUFBWTtJQUVoQixNQUFNLENBQUMsSUFBWSxFQUFFLFFBQXdCLEVBQUUsRUFBVSxFQUFFLE1BQXNCLEVBQUUsZUFBdUIsQ0FBQyxFQUFFLE1BQU0sR0FBRyxFQUFFO1FBRTdILE1BQU0sQ0FBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUUsR0FBRyxvQkFBb0IsQ0FBQyxhQUFhLENBQzNFLElBQUksQ0FBQyxDQUFDLEVBQ04sSUFBSSxDQUFDLENBQUMsRUFDTixFQUFFLENBQUMsQ0FBQyxFQUNKLEVBQUUsQ0FBQyxDQUFDLENBQ1AsQ0FBQztRQUVGLE1BQU0sSUFBSSxHQUFHLEtBQU0sSUFBSSxDQUFDLENBQUUsSUFBSyxJQUFJLENBQUMsQ0FBRSxNQUFPLEVBQUUsQ0FBQyxDQUFDLEdBQUcsTUFBTyxJQUFLLEVBQUUsQ0FBQyxDQUFDLEdBQUcsTUFBTyxFQUFFLENBQUM7UUFFakYsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQztJQUNwRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJUGF0aENvbnN0cnVjdG9yLCBJUGF0aENvbnN0cnVjdG9yUmVzdWx0IH0gZnJvbSAnLi4vaS1wYXRoLWNvbnN0cnVjdG9yJztcbmltcG9ydCB7IElQb2ludCB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBFZGdlQ2VudGVyQ2FsY3VsYXRvciB9IGZyb20gJy4uL3NlZ21lbnQtcGF0aCc7XG5pbXBvcnQgeyBFQ29ubmVjdG9yU2lkZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbic7XG5cbmV4cG9ydCBjbGFzcyBTdHJhaWdodFBhdGggaW1wbGVtZW50cyBJUGF0aENvbnN0cnVjdG9yIHtcblxuICBwdWJsaWMgaGFuZGxlKGZyb206IElQb2ludCwgZnJvbVNpZGU6IEVDb25uZWN0b3JTaWRlLCB0bzogSVBvaW50LCB0b1NpZGU6IEVDb25uZWN0b3JTaWRlLCBib3JkZXJSYWRpdXM6IG51bWJlciA9IDgsIG9mZnNldCA9IDMyKTogSVBhdGhDb25zdHJ1Y3RvclJlc3VsdCB7XG5cbiAgICBjb25zdCBbIGxhYmVsWCwgbGFiZWxZLCBvZmZzZXRYLCBvZmZzZXRZIF0gPSBFZGdlQ2VudGVyQ2FsY3VsYXRvci5nZXRFZGdlQ2VudGVyKFxuICAgICAgICBmcm9tLngsXG4gICAgICAgIGZyb20ueSxcbiAgICAgICAgdG8ueCxcbiAgICAgICAgdG8ueVxuICAgICk7XG5cbiAgICBjb25zdCBwYXRoID0gYE0gJHsgZnJvbS54IH0gJHsgZnJvbS55IH0gTCAkeyB0by54ICsgMC4wMDAxIH0gJHsgdG8ueSArIDAuMDAwMSB9YDtcblxuICAgIHJldHVybiB7IHBhdGgsIGxhYmVsWCwgbGFiZWxZLCBvZmZzZXRYLCBvZmZzZXRZIH07XG4gIH1cbn1cbiJdfQ==
@@ -1,3 +0,0 @@
1
- export * from './e-f-connection-behavior';
2
- export * from './e-f-connection-type';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uL2NvbW1vbi9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMkJBQTJCLENBQUM7QUFFMUMsY0FBYyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZS1mLWNvbm5lY3Rpb24tYmVoYXZpb3InO1xuXG5leHBvcnQgKiBmcm9tICcuL2UtZi1jb25uZWN0aW9uLXR5cGUnO1xuIl19
@@ -1,5 +0,0 @@
1
- export * from './common/public-api';
2
- export * from './f-connection-for-create/f-connection-for-create.component';
3
- export * from './f-connection/f-connection.component';
4
- export * from './f-marker';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jb25uZWN0aW9uL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQkFBcUIsQ0FBQztBQUVwQyxjQUFjLDZEQUE2RCxDQUFDO0FBRTVFLGNBQWMsdUNBQXVDLENBQUM7QUFFdEQsY0FBYyxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbW1vbi9wdWJsaWMtYXBpJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWNvbm5lY3Rpb24tZm9yLWNyZWF0ZS9mLWNvbm5lY3Rpb24tZm9yLWNyZWF0ZS5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtY29ubmVjdGlvbi9mLWNvbm5lY3Rpb24uY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9mLW1hcmtlcic7XG4iXX0=
@@ -1,2 +0,0 @@
1
- export * from './f-external-item.directive';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvY29tcG9uZW50cy9mLWV4dGVybmFsLWl0ZW0vcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mLWV4dGVybmFsLWl0ZW0uZGlyZWN0aXZlJztcbiJdfQ==
@@ -1,2 +0,0 @@
1
- export * from './f-line-alignment.component';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvY29tcG9uZW50cy9mLWxpbmUtYWxpZ25tZW50L3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw4QkFBOEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZi1saW5lLWFsaWdubWVudC5jb21wb25lbnQnO1xuIl19
@@ -1,2 +0,0 @@
1
- export * from './f-selection-area.component';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvY29tcG9uZW50cy9mLXNlbGVjdGlvbi1hcmVhL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw4QkFBOEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZi1zZWxlY3Rpb24tYXJlYS5jb21wb25lbnQnO1xuIl19
@@ -1,4 +0,0 @@
1
- export * from './f-external-item/public-api';
2
- export * from './f-line-alignment/public-api';
3
- export * from './f-selection-area/public-api';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvY29tcG9uZW50cy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsOEJBQThCLENBQUM7QUFFN0MsY0FBYywrQkFBK0IsQ0FBQztBQUU5QyxjQUFjLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mLWV4dGVybmFsLWl0ZW0vcHVibGljLWFwaSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1saW5lLWFsaWdubWVudC9wdWJsaWMtYXBpJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLXNlbGVjdGlvbi1hcmVhL3B1YmxpYy1hcGknO1xuIl19
@@ -1,2 +0,0 @@
1
- export * from './create-connection.event';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvY29ubmVjdGlvbnMvY3JlYXRlLWNvbm5lY3Rpb24vcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jcmVhdGUtY29ubmVjdGlvbi5ldmVudCc7XG4iXX0=
@@ -1,3 +0,0 @@
1
- export * from './create-connection/public-api';
2
- export * from './reassign-connection/public-api';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvY29ubmVjdGlvbnMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdDQUFnQyxDQUFDO0FBRS9DLGNBQWMsa0NBQWtDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NyZWF0ZS1jb25uZWN0aW9uL3B1YmxpYy1hcGknO1xuXG5leHBvcnQgKiBmcm9tICcuL3JlYXNzaWduLWNvbm5lY3Rpb24vcHVibGljLWFwaSc7XG4iXX0=
@@ -1,2 +0,0 @@
1
- export * from './reassign-connection.event';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvY29ubmVjdGlvbnMvcmVhc3NpZ24tY29ubmVjdGlvbi9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNkJBQTZCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3JlYXNzaWduLWNvbm5lY3Rpb24uZXZlbnQnO1xuIl19
@@ -1,11 +0,0 @@
1
- export var EDraggableType;
2
- (function (EDraggableType) {
3
- EDraggableType["NODE"] = "node";
4
- EDraggableType["REASSIGN_CONNECTION"] = "reassign-connection";
5
- EDraggableType["CREATE_CONNECTION"] = "create-connection";
6
- EDraggableType["CONNECTION"] = "connection";
7
- EDraggableType["CANVAS"] = "canvas";
8
- EDraggableType["PALETTE_ITEM"] = "palette-item";
9
- EDraggableType["SELECTION"] = "selection";
10
- })(EDraggableType || (EDraggableType = {}));
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZS1kcmFnZ2FibGUtdHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZS1kcmFnZ2FibGUtdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxjQWVYO0FBZkQsV0FBWSxjQUFjO0lBRXhCLCtCQUFhLENBQUE7SUFFYiw2REFBMkMsQ0FBQTtJQUUzQyx5REFBdUMsQ0FBQTtJQUV2QywyQ0FBeUIsQ0FBQTtJQUV6QixtQ0FBaUIsQ0FBQTtJQUVqQiwrQ0FBNkIsQ0FBQTtJQUU3Qix5Q0FBdUIsQ0FBQTtBQUN6QixDQUFDLEVBZlcsY0FBYyxLQUFkLGNBQWMsUUFlekIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBFRHJhZ2dhYmxlVHlwZSB7XG5cbiAgTk9ERSA9ICdub2RlJyxcblxuICBSRUFTU0lHTl9DT05ORUNUSU9OID0gJ3JlYXNzaWduLWNvbm5lY3Rpb24nLFxuXG4gIENSRUFURV9DT05ORUNUSU9OID0gJ2NyZWF0ZS1jb25uZWN0aW9uJyxcblxuICBDT05ORUNUSU9OID0gJ2Nvbm5lY3Rpb24nLFxuXG4gIENBTlZBUyA9ICdjYW52YXMnLFxuXG4gIFBBTEVUVEVfSVRFTSA9ICdwYWxldHRlLWl0ZW0nLFxuXG4gIFNFTEVDVElPTiA9ICdzZWxlY3Rpb24nXG59XG4iXX0=
@@ -1,2 +0,0 @@
1
- export * from './create-node.event';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1kcmFnZ2FibGUvZXh0ZXJuYWwtaXRlbS9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NyZWF0ZS1ub2RlLmV2ZW50JztcbiJdfQ==
@@ -1,14 +0,0 @@
1
- export * from './canvas';
2
- export * from './components';
3
- export * from './connections';
4
- export * from './external-item';
5
- export * from './node';
6
- export * from './single-select';
7
- export * from './selection-area';
8
- export * from './e-draggable-type';
9
- export * from './f-draggable.directive';
10
- export * from './f-draggable-base';
11
- export * from './f-draggable-data-context';
12
- export * from './i-drag-and-drop-base';
13
- export * from './i-draggable-item';
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsVUFBVSxDQUFDO0FBRXpCLGNBQWMsY0FBYyxDQUFDO0FBRTdCLGNBQWMsZUFBZSxDQUFDO0FBRTlCLGNBQWMsaUJBQWlCLENBQUM7QUFFaEMsY0FBYyxRQUFRLENBQUM7QUFFdkIsY0FBYyxpQkFBaUIsQ0FBQztBQUVoQyxjQUFjLGtCQUFrQixDQUFDO0FBRWpDLGNBQWMsb0JBQW9CLENBQUM7QUFFbkMsY0FBYyx5QkFBeUIsQ0FBQztBQUV4QyxjQUFjLG9CQUFvQixDQUFDO0FBRW5DLGNBQWMsNEJBQTRCLENBQUM7QUFFM0MsY0FBYyx3QkFBd0IsQ0FBQztBQUV2QyxjQUFjLG9CQUFvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jYW52YXMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2Nvbm5lY3Rpb25zJztcblxuZXhwb3J0ICogZnJvbSAnLi9leHRlcm5hbC1pdGVtJztcblxuZXhwb3J0ICogZnJvbSAnLi9ub2RlJztcblxuZXhwb3J0ICogZnJvbSAnLi9zaW5nbGUtc2VsZWN0JztcblxuZXhwb3J0ICogZnJvbSAnLi9zZWxlY3Rpb24tYXJlYSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZS1kcmFnZ2FibGUtdHlwZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1kcmFnZ2FibGUuZGlyZWN0aXZlJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWRyYWdnYWJsZS1iYXNlJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWRyYWdnYWJsZS1kYXRhLWNvbnRleHQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2ktZHJhZy1hbmQtZHJvcC1iYXNlJztcblxuZXhwb3J0ICogZnJvbSAnLi9pLWRyYWdnYWJsZS1pdGVtJztcblxuXG5cblxuXG4iXX0=
@@ -1,3 +0,0 @@
1
- import { InjectionToken } from '@angular/core';
2
- export const F_PARENT = new InjectionToken('F_PARENT');
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1wYXJlbnQuaW5qZWN0aW9uLXRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWZsb3cvZi1wYXJlbnQuaW5qZWN0aW9uLXRva2VuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0MsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLElBQUksY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGNvbnN0IEZfUEFSRU5UID0gbmV3IEluamVjdGlvblRva2VuKCdGX1BBUkVOVCcpO1xuIl19
@@ -1,3 +0,0 @@
1
- import { InjectionToken } from '@angular/core';
2
- export const F_FLOW = new InjectionToken('F_FLOW');
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1mbG93LWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZmxvdy9pLWZsb3ctYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdCLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUc3RCxNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsSUFBSSxjQUFjLENBQVksUUFBUSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFdmVudEVtaXR0ZXIsIEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJSGFzSG9zdEVsZW1lbnQgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuXG5leHBvcnQgY29uc3QgRl9GTE9XID0gbmV3IEluamVjdGlvblRva2VuPElGbG93QmFzZT4oJ0ZfRkxPVycpO1xuXG5leHBvcnQgaW50ZXJmYWNlIElGbG93QmFzZSBleHRlbmRzIElIYXNIb3N0RWxlbWVudCB7XG5cbiAgaWQ6IHN0cmluZztcblxuICBob3N0RWxlbWVudDogSFRNTEVsZW1lbnQ7XG5cbiAgZkxvYWRlZDogRXZlbnRFbWl0dGVyPHZvaWQ+O1xufVxuIl19
@@ -1,2 +0,0 @@
1
- export * from './f-flow.component';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1mbG93L3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsY0FBYyxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5leHBvcnQgKiBmcm9tICcuL2YtZmxvdy5jb21wb25lbnQnO1xuIl19