@foblex/flow 17.9.21 → 18.0.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 (752) hide show
  1. package/LICENSE +1 -1
  2. package/domain/css-cls.d.ts +0 -3
  3. package/domain/f-background/add-pattern-to-background/{add-pattern-to-background.execution.d.ts → add-pattern-to-background.d.ts} +4 -3
  4. package/domain/f-background/add-pattern-to-background/index.d.ts +1 -1
  5. package/domain/f-background/providers.d.ts +2 -2
  6. package/domain/f-connection/add-connection-for-create-to-store/add-connection-for-create-to-store-request.d.ts +3 -3
  7. package/domain/f-connection/add-connection-for-create-to-store/{add-connection-for-create-to-store.execution.d.ts → add-connection-for-create-to-store.d.ts} +4 -4
  8. package/domain/f-connection/add-connection-for-create-to-store/index.d.ts +1 -1
  9. package/domain/f-connection/add-connection-marker-to-store/add-connection-marker-to-store-request.d.ts +3 -3
  10. package/domain/f-connection/add-connection-marker-to-store/{add-connection-marker-to-store.execution.d.ts → add-connection-marker-to-store.d.ts} +4 -4
  11. package/domain/f-connection/add-connection-marker-to-store/index.d.ts +1 -1
  12. package/domain/f-connection/add-connection-to-store/add-connection-to-store-request.d.ts +3 -3
  13. package/domain/f-connection/add-connection-to-store/{add-connection-to-store.execution.d.ts → add-connection-to-store.d.ts} +4 -4
  14. package/domain/f-connection/add-connection-to-store/index.d.ts +1 -1
  15. package/domain/f-connection/add-snap-connection-to-store/add-snap-connection-to-store-request.d.ts +3 -3
  16. package/domain/f-connection/add-snap-connection-to-store/{add-snap-connection-to-store.execution.d.ts → add-snap-connection-to-store.d.ts} +4 -4
  17. package/domain/f-connection/add-snap-connection-to-store/index.d.ts +1 -1
  18. package/domain/f-connection/create-connection-markers/create-connection-markers-request.d.ts +3 -3
  19. package/domain/f-connection/create-connection-markers/{create-connection-markers.execution.d.ts → create-connection-markers.d.ts} +7 -8
  20. package/domain/f-connection/create-connection-markers/index.d.ts +1 -1
  21. package/domain/f-connection/index.d.ts +1 -1
  22. package/domain/f-connection/providers.d.ts +11 -11
  23. package/domain/f-connection/redraw-connections/redraw-connections.d.ts +6 -4
  24. package/domain/f-connection/remove-connection-for-create-from-store/index.d.ts +1 -1
  25. package/domain/f-connection/remove-connection-for-create-from-store/{remove-connection-for-create-from-store.execution.d.ts → remove-connection-for-create-from-store.d.ts} +4 -4
  26. package/domain/f-connection/remove-connection-from-store/index.d.ts +1 -1
  27. package/domain/f-connection/remove-connection-from-store/remove-connection-from-store-request.d.ts +3 -3
  28. package/domain/f-connection/remove-connection-from-store/{remove-connection-from-store.execution.d.ts → remove-connection-from-store.d.ts} +4 -5
  29. package/domain/f-connection/remove-connection-marker-from-store/index.d.ts +1 -1
  30. package/domain/f-connection/remove-connection-marker-from-store/remove-connection-marker-from-store-request.d.ts +3 -3
  31. package/domain/f-connection/remove-connection-marker-from-store/{remove-connection-marker-from-store.execution.d.ts → remove-connection-marker-from-store.d.ts} +4 -4
  32. package/domain/f-connection/remove-connection-waypoint/index.d.ts +2 -0
  33. package/domain/f-connection/remove-connection-waypoint/remove-connection-waypoint-request.d.ts +6 -0
  34. package/domain/f-connection/remove-connection-waypoint/remove-connection-waypoint.d.ts +11 -0
  35. package/domain/f-connection/remove-snap-connection-from-store/index.d.ts +1 -1
  36. package/domain/f-connection/remove-snap-connection-from-store/{remove-snap-connection-from-store.execution.d.ts → remove-snap-connection-from-store.d.ts} +4 -4
  37. package/domain/f-draggable/on-pointer-move/on-pointer-move.execution.d.ts +1 -1
  38. package/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence.execution.d.ts +1 -1
  39. package/domain/f-flow/calculate-flow-state/calculate-connections-state/calculate-connections-state-request.d.ts +3 -0
  40. package/domain/f-flow/calculate-flow-state/calculate-connections-state/calculate-connections-state.d.ts +14 -0
  41. package/domain/f-flow/calculate-flow-state/calculate-connections-state/index.d.ts +2 -0
  42. package/domain/f-flow/calculate-flow-state/calculate-flow-state-request.d.ts +3 -0
  43. package/domain/f-flow/calculate-flow-state/calculate-flow-state.d.ts +17 -0
  44. package/domain/f-flow/calculate-flow-state/calculate-nodes-state/calculate-nodes-state-request.d.ts +6 -0
  45. package/domain/f-flow/calculate-flow-state/calculate-nodes-state/calculate-nodes-state.d.ts +15 -0
  46. package/domain/f-flow/calculate-flow-state/calculate-nodes-state/index.d.ts +2 -0
  47. package/domain/f-flow/calculate-flow-state/i-f-flow-state-connection.d.ts +13 -0
  48. package/domain/f-flow/{get-flow-state → calculate-flow-state}/i-f-flow-state-connector.d.ts +1 -1
  49. package/domain/f-flow/{get-flow-state → calculate-flow-state}/index.d.ts +4 -4
  50. package/domain/f-flow/calculate-flow-state/providers.d.ts +7 -0
  51. package/domain/f-flow/index.d.ts +1 -1
  52. package/domain/f-flow/providers.d.ts +1 -1
  53. package/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions.d.ts +1 -1
  54. package/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position.d.ts +1 -1
  55. package/domain/f-node/calculate-connectors-connectable-sides/constants/calculatable-sides.d.ts +1 -1
  56. package/domain/f-node/calculate-connectors-connectable-sides/models/t-calculate-mode.d.ts +1 -1
  57. package/domain/f-node/calculate-connectors-connectable-sides/utils/determine-side.d.ts +1 -1
  58. package/domain/f-node/calculate-connectors-connectable-sides/utils/is-calculate-mode.d.ts +1 -1
  59. package/domain/f-node/calculate-input-connections/calculate-input-connections.d.ts +1 -1
  60. package/domain/f-node/calculate-output-connections/calculate-output-connections.d.ts +1 -1
  61. package/domain/f-selection/calculate-selectable-items/calculate-selectable-items-request.d.ts +3 -0
  62. package/domain/f-selection/{get-can-be-selected-items/get-can-be-selected-items.execution.d.ts → calculate-selectable-items/calculate-selectable-items.d.ts} +8 -8
  63. package/domain/f-selection/calculate-selectable-items/index.d.ts +3 -0
  64. package/domain/f-selection/index.d.ts +1 -1
  65. package/domain/f-selection/providers.d.ts +2 -2
  66. package/domain/f-zoom/add-zoom-to-store/add-zoom-to-store-request.d.ts +2 -2
  67. package/domain/f-zoom/add-zoom-to-store/add-zoom-to-store.d.ts +12 -0
  68. package/domain/f-zoom/add-zoom-to-store/index.d.ts +1 -1
  69. package/domain/f-zoom/providers.d.ts +5 -5
  70. package/domain/f-zoom/remove-zoom-from-store/index.d.ts +1 -1
  71. package/domain/f-zoom/remove-zoom-from-store/{remove-zoom-from-store.execution.d.ts → remove-zoom-from-store.d.ts} +3 -3
  72. package/domain/f-zoom/reset-zoom/index.d.ts +1 -1
  73. package/domain/f-zoom/reset-zoom/reset-zoom.d.ts +13 -0
  74. package/domain/f-zoom/set-zoom/index.d.ts +1 -1
  75. package/domain/f-zoom/set-zoom/{set-zoom.execution.d.ts → set-zoom.d.ts} +6 -6
  76. package/domain/index.d.ts +0 -1
  77. package/domain/providers.d.ts +1 -1
  78. package/drag-toolkit/pointer-events/i-pointer-event.d.ts +6 -4
  79. package/esm2022/domain/css-cls.mjs +1 -4
  80. package/esm2022/domain/f-background/add-pattern-to-background/add-pattern-to-background.mjs +56 -0
  81. package/esm2022/domain/f-background/add-pattern-to-background/add-pattern-to-background.request.mjs +1 -1
  82. package/esm2022/domain/f-background/add-pattern-to-background/index.mjs +2 -2
  83. package/esm2022/domain/f-background/providers.mjs +3 -3
  84. package/esm2022/domain/f-connection/add-connection-for-create-to-store/add-connection-for-create-to-store-request.mjs +4 -4
  85. package/esm2022/domain/f-connection/add-connection-for-create-to-store/add-connection-for-create-to-store.mjs +25 -0
  86. package/esm2022/domain/f-connection/add-connection-for-create-to-store/index.mjs +2 -2
  87. package/esm2022/domain/f-connection/add-connection-marker-to-store/add-connection-marker-to-store-request.mjs +4 -4
  88. package/esm2022/domain/f-connection/add-connection-marker-to-store/add-connection-marker-to-store.mjs +25 -0
  89. package/esm2022/domain/f-connection/add-connection-marker-to-store/index.mjs +2 -2
  90. package/esm2022/domain/f-connection/add-connection-to-store/add-connection-to-store-request.mjs +4 -4
  91. package/esm2022/domain/f-connection/add-connection-to-store/add-connection-to-store.mjs +26 -0
  92. package/esm2022/domain/f-connection/add-connection-to-store/index.mjs +2 -2
  93. package/esm2022/domain/f-connection/add-snap-connection-to-store/add-snap-connection-to-store-request.mjs +4 -4
  94. package/esm2022/domain/f-connection/add-snap-connection-to-store/add-snap-connection-to-store.mjs +25 -0
  95. package/esm2022/domain/f-connection/add-snap-connection-to-store/index.mjs +2 -2
  96. package/esm2022/domain/f-connection/create-connection-markers/create-connection-markers-request.mjs +4 -4
  97. package/esm2022/domain/f-connection/create-connection-markers/create-connection-markers.mjs +64 -0
  98. package/esm2022/domain/f-connection/create-connection-markers/index.mjs +2 -2
  99. package/esm2022/domain/f-connection/index.mjs +2 -2
  100. package/esm2022/domain/f-connection/providers.mjs +21 -21
  101. package/esm2022/domain/f-connection/redraw-connections/redraw-connections.mjs +24 -21
  102. package/esm2022/domain/f-connection/remove-connection-for-create-from-store/index.mjs +2 -2
  103. package/esm2022/domain/f-connection/remove-connection-for-create-from-store/remove-connection-for-create-from-store.mjs +25 -0
  104. package/esm2022/domain/f-connection/remove-connection-from-store/index.mjs +2 -2
  105. package/esm2022/domain/f-connection/remove-connection-from-store/remove-connection-from-store-request.mjs +4 -4
  106. package/esm2022/domain/f-connection/remove-connection-from-store/remove-connection-from-store.mjs +33 -0
  107. package/esm2022/domain/f-connection/remove-connection-marker-from-store/index.mjs +2 -2
  108. package/esm2022/domain/f-connection/remove-connection-marker-from-store/remove-connection-marker-from-store-request.mjs +4 -4
  109. package/esm2022/domain/f-connection/remove-connection-marker-from-store/remove-connection-marker-from-store.mjs +25 -0
  110. package/esm2022/domain/f-connection/remove-connection-waypoint/index.mjs +3 -0
  111. package/esm2022/domain/f-connection/remove-connection-waypoint/remove-connection-waypoint-request.mjs +10 -0
  112. package/esm2022/domain/f-connection/remove-connection-waypoint/remove-connection-waypoint.mjs +40 -0
  113. package/esm2022/domain/f-connection/remove-snap-connection-from-store/index.mjs +2 -2
  114. package/esm2022/domain/f-connection/remove-snap-connection-from-store/remove-snap-connection-from-store.mjs +25 -0
  115. package/esm2022/domain/f-connectors/calculate-source-connectors-to-connect/calculate-source-connectors-to-connect.mjs +1 -1
  116. package/esm2022/domain/f-connectors/calculate-target-connectors-to-connect/calculate-target-connectors-to-connect.mjs +1 -1
  117. package/esm2022/domain/f-draggable/add-dnd-to-store/add-dnd-to-store-request.mjs +1 -1
  118. package/esm2022/domain/f-draggable/on-pointer-move/on-pointer-move.execution.mjs +5 -5
  119. package/esm2022/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence-request.mjs +1 -1
  120. package/esm2022/domain/f-draggable/prepare-drag-sequence/prepare-drag-sequence.execution.mjs +3 -5
  121. package/esm2022/domain/f-flow/calculate-flow-state/calculate-connections-state/calculate-connections-state-request.mjs +4 -0
  122. package/esm2022/domain/f-flow/calculate-flow-state/calculate-connections-state/calculate-connections-state.mjs +38 -0
  123. package/esm2022/domain/f-flow/calculate-flow-state/calculate-connections-state/index.mjs +3 -0
  124. package/esm2022/domain/f-flow/calculate-flow-state/calculate-flow-state-request.mjs +4 -0
  125. package/esm2022/domain/f-flow/calculate-flow-state/calculate-flow-state.mjs +45 -0
  126. package/esm2022/domain/f-flow/calculate-flow-state/calculate-nodes-state/calculate-nodes-state-request.mjs +8 -0
  127. package/esm2022/domain/f-flow/calculate-flow-state/calculate-nodes-state/calculate-nodes-state.mjs +58 -0
  128. package/esm2022/domain/f-flow/calculate-flow-state/calculate-nodes-state/index.mjs +3 -0
  129. package/esm2022/domain/f-flow/calculate-flow-state/i-f-flow-state-connection.mjs +2 -0
  130. package/esm2022/domain/f-flow/calculate-flow-state/i-f-flow-state-connector.mjs +2 -0
  131. package/esm2022/domain/f-flow/calculate-flow-state/i-f-flow-state-node.mjs +2 -0
  132. package/esm2022/domain/f-flow/calculate-flow-state/i-f-flow-state.mjs +2 -0
  133. package/esm2022/domain/f-flow/calculate-flow-state/index.mjs +10 -0
  134. package/esm2022/domain/f-flow/calculate-flow-state/providers.mjs +12 -0
  135. package/esm2022/domain/f-flow/index.mjs +2 -2
  136. package/esm2022/domain/f-flow/providers.mjs +2 -2
  137. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-connected-positions/calculate-connectable-side-by-connected-positions.mjs +1 -1
  138. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectable-side-by-internal-position/calculate-connectable-side-by-internal-position.mjs +2 -2
  139. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/calculate-connectors-connectable-sides.mjs +2 -2
  140. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/constants/calculatable-sides.mjs +2 -2
  141. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/models/t-calculate-mode.mjs +1 -1
  142. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/utils/determine-side.mjs +2 -2
  143. package/esm2022/domain/f-node/calculate-connectors-connectable-sides/utils/is-calculate-mode.mjs +2 -2
  144. package/esm2022/domain/f-node/calculate-input-connections/calculate-input-connections.mjs +1 -1
  145. package/esm2022/domain/f-node/calculate-output-connections/calculate-output-connections.mjs +1 -1
  146. package/esm2022/domain/f-node/update-node-when-state-or-size-changed/update-node-when-state-or-size-changed.mjs +2 -2
  147. package/esm2022/domain/f-selection/calculate-selectable-items/calculate-selectable-items-request.mjs +4 -0
  148. package/esm2022/domain/f-selection/calculate-selectable-items/calculate-selectable-items.mjs +70 -0
  149. package/esm2022/domain/f-selection/calculate-selectable-items/i-can-be-selected-element-and-rect.mjs +2 -0
  150. package/esm2022/domain/f-selection/calculate-selectable-items/index.mjs +4 -0
  151. package/esm2022/domain/f-selection/clear-selection/clear-selection.request.mjs +1 -1
  152. package/esm2022/domain/f-selection/index.mjs +2 -2
  153. package/esm2022/domain/f-selection/providers.mjs +3 -3
  154. package/esm2022/domain/f-zoom/add-zoom-to-store/add-zoom-to-store-request.mjs +4 -4
  155. package/esm2022/domain/f-zoom/add-zoom-to-store/add-zoom-to-store.mjs +28 -0
  156. package/esm2022/domain/f-zoom/add-zoom-to-store/index.mjs +2 -2
  157. package/esm2022/domain/f-zoom/providers.mjs +6 -11
  158. package/esm2022/domain/f-zoom/remove-zoom-from-store/index.mjs +2 -2
  159. package/esm2022/domain/f-zoom/remove-zoom-from-store/remove-zoom-from-store.mjs +28 -0
  160. package/esm2022/domain/f-zoom/reset-zoom/index.mjs +2 -2
  161. package/esm2022/domain/f-zoom/reset-zoom/reset-zoom.mjs +30 -0
  162. package/esm2022/domain/f-zoom/set-zoom/index.mjs +2 -2
  163. package/esm2022/domain/f-zoom/set-zoom/set-zoom.mjs +54 -0
  164. package/esm2022/domain/index.mjs +1 -2
  165. package/esm2022/drag-toolkit/event.extensions.mjs +2 -2
  166. package/esm2022/drag-toolkit/pointer-events/i-pointer-event.mjs +15 -10
  167. package/esm2022/f-canvas/domain/{f-canvas-change.event.mjs → f-canvas-change-event.mjs} +1 -1
  168. package/esm2022/f-canvas/domain/index.mjs +2 -2
  169. package/esm2022/f-canvas/f-canvas-base.mjs +7 -5
  170. package/esm2022/f-canvas/f-canvas.component.mjs +26 -36
  171. package/esm2022/f-connection/f-connection/f-connection.component.mjs +10 -24
  172. package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +13 -18
  173. package/esm2022/f-connection/f-snap-connection/f-snap-connection.component.mjs +9 -15
  174. package/esm2022/f-connection/index.mjs +2 -7
  175. package/esm2022/f-connection/providers.mjs +9 -13
  176. package/esm2022/f-connection-v2/components/connection-content/f-connection-content.mjs +76 -0
  177. package/esm2022/f-connection-v2/components/connection-content/index.mjs +4 -0
  178. package/esm2022/f-connection-v2/components/connection-content/models/f-connection-content-base.mjs +10 -0
  179. package/esm2022/f-connection-v2/components/connection-content/models/index.mjs +2 -0
  180. package/esm2022/f-connection-v2/components/connection-content/utils/i-polyline-content.mjs +2 -0
  181. package/esm2022/f-connection-v2/components/connection-content/utils/index.mjs +6 -0
  182. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-content-align.mjs +6 -0
  183. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-content-layout-engine.mjs +25 -0
  184. package/esm2022/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-content-place.mjs +2 -2
  185. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-sampler/i-sampler-result.mjs +2 -0
  186. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-sampler/i-tangent.mjs +2 -0
  187. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-sampler/index.mjs +5 -0
  188. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-sampler/polyline-sampler.mjs +143 -0
  189. package/esm2022/f-connection-v2/components/connection-content/utils/polyline-sampler/polyline.mjs +71 -0
  190. package/esm2022/f-connection-v2/components/connection-drag-handles/f-connection-drag-handle-end.mjs +35 -0
  191. package/esm2022/f-connection-v2/components/connection-drag-handles/f-connection-drag-handle-start.mjs +35 -0
  192. package/esm2022/f-connection-v2/components/connection-drag-handles/index.mjs +4 -0
  193. package/esm2022/f-connection-v2/components/connection-drag-handles/models/f-connection-drag-handle-base.mjs +17 -0
  194. package/esm2022/f-connection-v2/components/connection-drag-handles/models/index.mjs +2 -0
  195. package/esm2022/f-connection-v2/components/connection-gradient/f-connection-gradient.mjs +54 -0
  196. package/esm2022/f-connection-v2/components/connection-gradient/index.mjs +3 -0
  197. package/esm2022/f-connection-v2/components/connection-gradient/models/f-connection-gradient-base.mjs +6 -0
  198. package/esm2022/f-connection-v2/components/connection-gradient/models/index.mjs +2 -0
  199. package/esm2022/f-connection-v2/components/connection-marker/enums/e-f-marker-type.mjs +8 -0
  200. package/esm2022/f-connection-v2/components/connection-marker/enums/index.mjs +2 -0
  201. package/esm2022/f-connection-v2/components/connection-marker/f-connection-marker.mjs +50 -0
  202. package/esm2022/f-connection-v2/components/connection-marker/index.mjs +4 -0
  203. package/esm2022/f-connection-v2/components/connection-marker/models/f-connection-marker-base.mjs +6 -0
  204. package/esm2022/f-connection-v2/components/connection-marker/models/index.mjs +2 -0
  205. package/esm2022/f-connection-v2/components/connection-path/f-connection-path.mjs +66 -0
  206. package/esm2022/f-connection-v2/components/connection-path/index.mjs +3 -0
  207. package/esm2022/f-connection-v2/components/connection-path/models/f-connection-path-base.mjs +6 -0
  208. package/esm2022/f-connection-v2/components/connection-path/models/index.mjs +2 -0
  209. package/esm2022/f-connection-v2/components/connection-selection/f-connection-selection.mjs +34 -0
  210. package/esm2022/f-connection-v2/components/connection-selection/index.mjs +3 -0
  211. package/esm2022/f-connection-v2/components/connection-selection/models/f-connection-selection-base.mjs +6 -0
  212. package/esm2022/f-connection-v2/components/connection-selection/models/index.mjs +2 -0
  213. package/esm2022/f-connection-v2/components/connection-waypoints/f-connection-waypoints.mjs +50 -0
  214. package/esm2022/f-connection-v2/components/connection-waypoints/index.mjs +4 -0
  215. package/esm2022/f-connection-v2/components/connection-waypoints/models/f-connection-waypoints-base.mjs +27 -0
  216. package/esm2022/f-connection-v2/components/connection-waypoints/models/index.mjs +2 -0
  217. package/esm2022/f-connection-v2/components/connection-waypoints/utils/find-existing-waypoint.mjs +7 -0
  218. package/esm2022/f-connection-v2/components/connection-waypoints/utils/find-waypoint-candidate.mjs +7 -0
  219. package/esm2022/f-connection-v2/components/connection-waypoints/utils/index.mjs +5 -0
  220. package/esm2022/f-connection-v2/components/connection-waypoints/utils/is-pointer-inside-point.mjs +4 -0
  221. package/esm2022/f-connection-v2/components/connection-waypoints/utils/pick-waypoint.mjs +16 -0
  222. package/esm2022/f-connection-v2/components/f-connection-base.mjs +112 -0
  223. package/esm2022/f-connection-v2/components/index.mjs +9 -0
  224. package/esm2022/f-connection-v2/enums/e-f-connectable-side.mjs +12 -0
  225. package/esm2022/f-connection-v2/enums/e-f-connection-type.mjs +8 -0
  226. package/esm2022/f-connection-v2/enums/index.mjs +3 -0
  227. package/esm2022/f-connection-v2/index.mjs +5 -0
  228. package/esm2022/f-connection-v2/models/f-connection-components-parent.mjs +5 -0
  229. package/esm2022/f-connection-v2/models/f-connection-waypoints-changed-event.mjs +9 -0
  230. package/esm2022/f-connection-v2/models/index.mjs +3 -0
  231. package/esm2022/f-connection-v2/utils/connection-behaviour/connection-behaviour-builder-request.mjs +15 -0
  232. package/esm2022/f-connection-v2/utils/connection-behaviour/connection-behaviour-builder.mjs +136 -0
  233. package/esm2022/f-connection-v2/utils/connection-behaviour/enums/e-f-connection-behavior.mjs +7 -0
  234. package/esm2022/f-connection-v2/utils/connection-behaviour/enums/e-f-connection-connectable-side.mjs +12 -0
  235. package/esm2022/f-connection-v2/utils/connection-behaviour/enums/index.mjs +3 -0
  236. package/esm2022/f-connection-v2/utils/connection-behaviour/index.mjs +6 -0
  237. package/esm2022/f-connection-v2/utils/connection-behaviour/models/i-calculate-behavior-request.mjs +2 -0
  238. package/esm2022/f-connection-v2/utils/connection-behaviour/models/index.mjs +2 -0
  239. package/esm2022/f-connection-v2/utils/connection-behaviour/utils/fixed-center-behavior.mjs +12 -0
  240. package/esm2022/f-connection-v2/utils/connection-behaviour/utils/fixed-outbound-behavior.mjs +31 -0
  241. package/esm2022/f-connection-v2/utils/connection-behaviour/utils/floating-behavior.mjs +22 -0
  242. package/esm2022/f-connection-v2/utils/connection-behaviour/utils/index.mjs +4 -0
  243. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/adaptive-curve/calculate-adaptive-curve-data.mjs +74 -0
  244. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/adaptive-curve/index.mjs +2 -0
  245. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/bezier-curve/calculate-bezier-curve-data.mjs +49 -0
  246. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/bezier-curve/index.mjs +2 -0
  247. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/index.mjs +6 -0
  248. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/segment-line/build-corner-mid-points-and-apply-offsets.mjs +50 -0
  249. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/segment-line/calculate-segment-line-data.mjs +106 -0
  250. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/segment-line/create-segment-line-path.mjs +46 -0
  251. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/segment-line/index.mjs +4 -0
  252. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/straight-line/calculate-straight-line-data.mjs +28 -0
  253. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/straight-line/index.mjs +2 -0
  254. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/build-connection-anchors.mjs +4 -0
  255. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/calculate-center-between-points.mjs +8 -0
  256. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/calculate-curve-candidates.mjs +7 -0
  257. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/calculate-polyline-candidates.mjs +39 -0
  258. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/index.mjs +9 -0
  259. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/merge-point-chains.mjs +12 -0
  260. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/multi-cubic.mjs +28 -0
  261. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/normalize-polyline.mjs +30 -0
  262. package/esm2022/f-connection-v2/utils/connection-line-builder/builders/utils/sample-cubic-bezier-uniform.mjs +37 -0
  263. package/esm2022/f-connection-v2/utils/connection-line-builder/connection-line-builder-request.mjs +9 -0
  264. package/esm2022/f-connection-v2/utils/connection-line-builder/connection-line-builder.mjs +50 -0
  265. package/esm2022/f-connection-v2/utils/connection-line-builder/index.mjs +6 -0
  266. package/esm2022/f-connection-v2/utils/connection-line-builder/models/i-f-connection-builder-request.mjs +2 -0
  267. package/esm2022/f-connection-v2/utils/connection-line-builder/models/i-f-connection-builder-response.mjs +2 -0
  268. package/esm2022/f-connection-v2/utils/connection-line-builder/models/i-f-connection-builder.mjs +2 -0
  269. package/esm2022/f-connection-v2/utils/connection-line-builder/models/index.mjs +4 -0
  270. package/esm2022/f-connection-v2/utils/connection-line-builder/providers/f-connection-builders.mjs +3 -0
  271. package/esm2022/f-connection-v2/utils/connection-line-builder/providers/index.mjs +2 -0
  272. package/esm2022/f-connection-v2/utils/create-connection-dom-identifier.mjs +5 -0
  273. package/esm2022/f-connection-v2/utils/create-connection-selection-dom-identifier.mjs +5 -0
  274. package/esm2022/f-connection-v2/utils/create-gradient-dom-identifier.mjs +5 -0
  275. package/esm2022/f-connection-v2/utils/create-gradient-dom-url.mjs +5 -0
  276. package/esm2022/f-connection-v2/utils/index.mjs +7 -0
  277. package/esm2022/f-connectors/f-connector-base.mjs +2 -2
  278. package/esm2022/f-connectors/f-node-input/f-node-input.directive.mjs +2 -2
  279. package/esm2022/f-connectors/f-node-outlet/f-node-outlet.directive.mjs +2 -2
  280. package/esm2022/f-connectors/f-node-output/f-node-output.directive.mjs +2 -2
  281. package/esm2022/f-connectors/f-source-connector-base.mjs +8 -1
  282. package/esm2022/f-connectors/index.mjs +1 -2
  283. package/esm2022/f-draggable/domain/is-connection-under-node/is-connection-under-node.execution.mjs +1 -1
  284. package/esm2022/f-draggable/f-connection/f-create-connection/create-preparation/create-connection-preparation.mjs +1 -8
  285. package/esm2022/f-draggable/f-connection/f-create-connection/f-create-connection.drag-handler.mjs +8 -6
  286. package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-connection.drag-handler.mjs +6 -3
  287. package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-source.drag-handler.mjs +8 -5
  288. package/esm2022/f-draggable/f-connection/f-reassign-connection/f-reassign-target.drag-handler.mjs +8 -5
  289. package/esm2022/f-draggable/f-connection/f-reassign-connection/i-f-reassign-connection-drag-result.mjs +1 -1
  290. package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-preparation/f-reassign-connection-preparation.execution.mjs +22 -27
  291. package/esm2022/f-draggable/f-connection/f-reassign-connection/reassign-preparation/is-pointer-inside-start-or-end-drag-handles.mjs +8 -7
  292. package/esm2022/f-draggable/f-connection/index.mjs +2 -1
  293. package/esm2022/f-draggable/f-connection/move-connection-waypoint/index.mjs +4 -0
  294. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-finalize/index.mjs +3 -0
  295. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-finalize/move-connection-waypoint-finalize-request.mjs +8 -0
  296. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-finalize/move-connection-waypoint-finalize.mjs +32 -0
  297. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-handler.mjs +49 -0
  298. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-preparation/index.mjs +3 -0
  299. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-preparation/move-connection-waypoint-preparation-request.mjs +10 -0
  300. package/esm2022/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-preparation/move-connection-waypoint-preparation.mjs +65 -0
  301. package/esm2022/f-draggable/f-connection/providers.mjs +5 -2
  302. package/esm2022/f-draggable/f-drag-handler/i-f-drag-handler.mjs +1 -1
  303. package/esm2022/f-draggable/f-draggable-base.mjs +2 -2
  304. package/esm2022/f-draggable/f-draggable.directive.mjs +20 -9
  305. package/esm2022/f-draggable/f-node-move/connection-drag-handlers/base-connection.drag-handler.mjs +6 -3
  306. package/esm2022/f-draggable/f-node-move/connection-drag-handlers/source-connection.drag-handler.mjs +1 -1
  307. package/esm2022/f-draggable/f-node-move/connection-drag-handlers/source-target-connection.drag-handler.mjs +1 -1
  308. package/esm2022/f-draggable/f-node-move/connection-drag-handlers/target-connection.drag-handler.mjs +1 -1
  309. 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 +1 -1
  310. 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 +1 -1
  311. package/esm2022/f-draggable/f-node-move/create-snap-lines/create-snap-lines-request.mjs +1 -1
  312. package/esm2022/f-draggable/f-node-move/move-drag-handler.mjs +7 -5
  313. package/esm2022/f-draggable/f-node-move/move-finalize/f-node-move-finalize.execution.mjs +19 -14
  314. package/esm2022/f-draggable/f-node-move/move-preparation/index.mjs +3 -3
  315. package/esm2022/f-draggable/f-node-move/move-preparation/move-node-preparation-request.mjs +10 -0
  316. package/esm2022/f-draggable/f-node-move/move-preparation/move-node-preparation.mjs +81 -0
  317. package/esm2022/f-draggable/f-node-move/move-summary-drag-handler.mjs +1 -1
  318. package/esm2022/f-draggable/f-node-move/providers.mjs +3 -3
  319. package/esm2022/f-draggable/f-node-rotate/rotate-preparation/f-node-rotate-preparation.execution.mjs +1 -1
  320. package/esm2022/f-draggable/index.mjs +3 -2
  321. package/esm2022/f-draggable/pinch-to-zoom/constants/constants.mjs +6 -0
  322. package/esm2022/f-draggable/pinch-to-zoom/constants/index.mjs +2 -0
  323. package/esm2022/f-draggable/pinch-to-zoom/finalize/index.mjs +3 -0
  324. package/esm2022/f-draggable/pinch-to-zoom/finalize/pinch-to-zoom-finalize-request.mjs +8 -0
  325. package/esm2022/f-draggable/pinch-to-zoom/finalize/pinch-to-zoom-finalize.mjs +31 -0
  326. package/esm2022/f-draggable/pinch-to-zoom/index.mjs +7 -0
  327. package/esm2022/f-draggable/pinch-to-zoom/pinch-to-zoom-handler.mjs +68 -0
  328. package/esm2022/f-draggable/pinch-to-zoom/preparation/index.mjs +3 -0
  329. package/esm2022/f-draggable/pinch-to-zoom/preparation/pinch-to-zoom-preparation-request.mjs +8 -0
  330. package/esm2022/f-draggable/pinch-to-zoom/preparation/pinch-to-zoom-preparation.mjs +42 -0
  331. package/esm2022/f-draggable/pinch-to-zoom/providers.mjs +4 -0
  332. package/esm2022/f-draggable/pinch-to-zoom/utils/calculate-touch-center.mjs +10 -0
  333. package/esm2022/f-draggable/pinch-to-zoom/utils/calculate-touch-distance.mjs +9 -0
  334. package/esm2022/f-draggable/pinch-to-zoom/utils/index.mjs +3 -0
  335. package/esm2022/f-draggable/providers.mjs +4 -2
  336. package/esm2022/f-draggable/single-select/index.mjs +4 -0
  337. package/esm2022/f-draggable/single-select/providers.mjs +3 -0
  338. package/esm2022/f-draggable/single-select/single-select-request.mjs +10 -0
  339. package/esm2022/f-draggable/single-select/single-select.mjs +139 -0
  340. package/esm2022/f-flow/f-flow.component.mjs +39 -26
  341. package/esm2022/f-flow.module.mjs +38 -37
  342. package/esm2022/f-line-alignment/f-line-alignment-base.mjs +1 -1
  343. package/esm2022/f-line-alignment/f-line-alignment.component.mjs +10 -17
  344. package/esm2022/f-minimap/f-minimap.component.mjs +8 -9
  345. package/esm2022/f-selection-area/domain/selection-area.drag-handle.mjs +21 -19
  346. package/esm2022/f-storage/f-components-store.mjs +1 -1
  347. package/esm2022/f-storage/features/listen-components-data-changed/index.mjs +2 -2
  348. package/esm2022/f-storage/features/listen-components-data-changed/listen-data-changes-request.mjs +1 -1
  349. package/esm2022/f-storage/features/listen-components-data-changed/listen-data-changes.mjs +23 -0
  350. package/esm2022/f-storage/features/listen-count-changes/index.mjs +2 -2
  351. package/esm2022/f-storage/features/listen-count-changes/listen-count-changes-request.mjs +1 -1
  352. package/esm2022/f-storage/features/listen-count-changes/listen-count-changes.mjs +23 -0
  353. package/esm2022/f-storage/features/listen-transform-changes/index.mjs +3 -3
  354. package/esm2022/f-storage/features/listen-transform-changes/{listen-transform-changes.request.mjs → listen-transform-changes-request.mjs} +1 -1
  355. package/esm2022/f-storage/features/listen-transform-changes/listen-transform-changes.mjs +23 -0
  356. package/esm2022/f-storage/features/notify-data-changed/index.mjs +2 -2
  357. package/esm2022/f-storage/features/notify-data-changed/notify-data-changed-request.mjs +1 -1
  358. package/esm2022/f-storage/features/notify-data-changed/notify-data-changed.mjs +22 -0
  359. package/esm2022/f-storage/features/notify-transform-changed/index.mjs +3 -3
  360. package/esm2022/f-storage/features/notify-transform-changed/{notify-transform-changed.request.mjs → notify-transform-changed-request.mjs} +1 -1
  361. package/esm2022/f-storage/features/notify-transform-changed/notify-transform-changed.mjs +22 -0
  362. package/esm2022/f-storage/index.mjs +1 -2
  363. package/esm2022/f-storage/providers.mjs +11 -11
  364. package/esm2022/f-zoom/f-zoom.directive.mjs +44 -45
  365. package/esm2022/public-api.mjs +2 -1
  366. package/esm2022/reactivity/debounce-time.mjs +16 -5
  367. package/esm2022/reactivity/f-channel-hub.mjs +33 -9
  368. package/esm2022/reactivity/index.mjs +2 -1
  369. package/esm2022/reactivity/notify-on-start.mjs +12 -4
  370. package/esm2022/reactivity/take-one.mjs +17 -0
  371. package/esm2022/reactivity/types.mjs +1 -1
  372. package/esm2022/utils/calculate-pointer-in-flow.mjs +9 -0
  373. package/esm2022/utils/index.mjs +2 -1
  374. package/f-canvas/domain/index.d.ts +1 -1
  375. package/f-canvas/f-canvas-base.d.ts +2 -2
  376. package/f-canvas/f-canvas.component.d.ts +3 -10
  377. package/f-connection/f-connection/f-connection.component.d.ts +2 -7
  378. package/f-connection/f-connection-for-create/f-connection-for-create.component.d.ts +2 -6
  379. package/f-connection/f-snap-connection/f-snap-connection.component.d.ts +2 -6
  380. package/f-connection/index.d.ts +1 -6
  381. package/f-connection/providers.d.ts +3 -4
  382. package/{f-connection/f-connection-content → f-connection-v2/components/connection-content}/f-connection-content.d.ts +3 -30
  383. package/f-connection-v2/components/connection-content/index.d.ts +3 -0
  384. package/f-connection-v2/components/connection-content/models/f-connection-content-base.d.ts +36 -0
  385. package/f-connection-v2/components/connection-content/models/index.d.ts +1 -0
  386. package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-content-layout-engine.d.ts +1 -9
  387. package/f-connection-v2/components/connection-drag-handles/f-connection-drag-handle-end.d.ts +8 -0
  388. package/f-connection-v2/components/connection-drag-handles/f-connection-drag-handle-start.d.ts +8 -0
  389. package/f-connection-v2/components/connection-drag-handles/index.d.ts +3 -0
  390. package/f-connection-v2/components/connection-drag-handles/models/f-connection-drag-handle-base.d.ts +11 -0
  391. package/f-connection-v2/components/connection-drag-handles/models/index.d.ts +1 -0
  392. package/{f-connection/common/f-gradient/f-connection-gradient.component.d.ts → f-connection-v2/components/connection-gradient/f-connection-gradient.d.ts} +5 -6
  393. package/f-connection-v2/components/connection-gradient/index.d.ts +2 -0
  394. package/f-connection-v2/components/connection-gradient/models/f-connection-gradient-base.d.ts +8 -0
  395. package/f-connection-v2/components/connection-gradient/models/index.d.ts +1 -0
  396. package/f-connection-v2/components/connection-marker/enums/index.d.ts +1 -0
  397. package/f-connection-v2/components/connection-marker/f-connection-marker.d.ts +17 -0
  398. package/f-connection-v2/components/connection-marker/index.d.ts +3 -0
  399. package/{f-connection/f-marker/f-marker-base.d.ts → f-connection-v2/components/connection-marker/models/f-connection-marker-base.d.ts} +3 -4
  400. package/f-connection-v2/components/connection-marker/models/index.d.ts +1 -0
  401. package/f-connection-v2/components/connection-path/f-connection-path.d.ts +14 -0
  402. package/f-connection-v2/components/connection-path/index.d.ts +2 -0
  403. package/f-connection-v2/components/connection-path/models/f-connection-path-base.d.ts +9 -0
  404. package/f-connection-v2/components/connection-path/models/index.d.ts +1 -0
  405. package/f-connection-v2/components/connection-selection/f-connection-selection.d.ts +9 -0
  406. package/f-connection-v2/components/connection-selection/index.d.ts +2 -0
  407. package/f-connection-v2/components/connection-selection/models/f-connection-selection-base.d.ts +6 -0
  408. package/f-connection-v2/components/connection-selection/models/index.d.ts +1 -0
  409. package/f-connection-v2/components/connection-waypoints/f-connection-waypoints.d.ts +19 -0
  410. package/f-connection-v2/components/connection-waypoints/index.d.ts +3 -0
  411. package/f-connection-v2/components/connection-waypoints/models/f-connection-waypoints-base.d.ts +16 -0
  412. package/f-connection-v2/components/connection-waypoints/models/index.d.ts +1 -0
  413. package/f-connection-v2/components/connection-waypoints/utils/find-existing-waypoint.d.ts +6 -0
  414. package/f-connection-v2/components/connection-waypoints/utils/find-waypoint-candidate.d.ts +6 -0
  415. package/f-connection-v2/components/connection-waypoints/utils/index.d.ts +4 -0
  416. package/f-connection-v2/components/connection-waypoints/utils/is-pointer-inside-point.d.ts +2 -0
  417. package/f-connection-v2/components/connection-waypoints/utils/pick-waypoint.d.ts +17 -0
  418. package/{f-connection/common → f-connection-v2/components}/f-connection-base.d.ts +14 -31
  419. package/f-connection-v2/components/index.d.ts +8 -0
  420. package/f-connection-v2/enums/index.d.ts +2 -0
  421. package/f-connection-v2/index.d.ts +4 -0
  422. package/f-connection-v2/models/f-connection-components-parent.d.ts +15 -0
  423. package/f-connection-v2/models/f-connection-waypoints-changed-event.d.ts +6 -0
  424. package/f-connection-v2/models/index.d.ts +2 -0
  425. package/f-connection-v2/utils/connection-behaviour/connection-behaviour-builder-request.d.ts +11 -0
  426. package/{domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior.d.ts → f-connection-v2/utils/connection-behaviour/connection-behaviour-builder.d.ts} +5 -6
  427. package/f-connection-v2/utils/connection-behaviour/enums/index.d.ts +2 -0
  428. package/f-connection-v2/utils/connection-behaviour/index.d.ts +5 -0
  429. package/{domain/f-connection/calculate-connection-line-by-behavior/models/calculate-behavior-request.d.ts → f-connection-v2/utils/connection-behaviour/models/i-calculate-behavior-request.d.ts} +2 -2
  430. package/f-connection-v2/utils/connection-behaviour/models/index.d.ts +1 -0
  431. package/{domain/f-connection/calculate-connection-line-by-behavior → f-connection-v2/utils/connection-behaviour}/utils/fixed-center-behavior.d.ts +2 -2
  432. package/{domain/f-connection/calculate-connection-line-by-behavior → f-connection-v2/utils/connection-behaviour}/utils/fixed-outbound-behavior.d.ts +2 -2
  433. package/{domain/f-connection/calculate-connection-line-by-behavior → f-connection-v2/utils/connection-behaviour}/utils/floating-behavior.d.ts +2 -2
  434. package/f-connection-v2/utils/connection-behaviour/utils/index.d.ts +3 -0
  435. package/f-connection-v2/utils/connection-line-builder/builders/adaptive-curve/calculate-adaptive-curve-data.d.ts +8 -0
  436. package/f-connection-v2/utils/connection-line-builder/builders/adaptive-curve/index.d.ts +1 -0
  437. package/f-connection-v2/utils/connection-line-builder/builders/bezier-curve/calculate-bezier-curve-data.d.ts +4 -0
  438. package/f-connection-v2/utils/connection-line-builder/builders/bezier-curve/index.d.ts +1 -0
  439. package/f-connection-v2/utils/connection-line-builder/builders/index.d.ts +5 -0
  440. package/f-connection-v2/utils/connection-line-builder/builders/segment-line/build-corner-mid-points-and-apply-offsets.d.ts +17 -0
  441. package/f-connection-v2/utils/connection-line-builder/builders/segment-line/calculate-segment-line-data.d.ts +6 -0
  442. package/f-connection-v2/utils/connection-line-builder/builders/segment-line/create-segment-line-path.d.ts +2 -0
  443. package/f-connection-v2/utils/connection-line-builder/builders/segment-line/index.d.ts +3 -0
  444. package/{f-connection/common/domain/f-straight.path-builder.d.ts → f-connection-v2/utils/connection-line-builder/builders/straight-line/calculate-straight-line-data.d.ts} +2 -2
  445. package/f-connection-v2/utils/connection-line-builder/builders/straight-line/index.d.ts +1 -0
  446. package/f-connection-v2/utils/connection-line-builder/builders/utils/build-connection-anchors.d.ts +2 -0
  447. package/f-connection-v2/utils/connection-line-builder/builders/utils/calculate-center-between-points.d.ts +2 -0
  448. package/f-connection-v2/utils/connection-line-builder/builders/utils/calculate-curve-candidates.d.ts +3 -0
  449. package/f-connection-v2/utils/connection-line-builder/builders/utils/calculate-polyline-candidates.d.ts +2 -0
  450. package/f-connection-v2/utils/connection-line-builder/builders/utils/index.d.ts +8 -0
  451. package/f-connection-v2/utils/connection-line-builder/builders/utils/merge-point-chains.d.ts +2 -0
  452. package/f-connection-v2/utils/connection-line-builder/builders/utils/multi-cubic.d.ts +10 -0
  453. package/f-connection-v2/utils/connection-line-builder/builders/utils/normalize-polyline.d.ts +2 -0
  454. package/f-connection-v2/utils/connection-line-builder/builders/utils/sample-cubic-bezier-uniform.d.ts +24 -0
  455. package/f-connection-v2/utils/connection-line-builder/connection-line-builder-request.d.ts +7 -0
  456. package/f-connection-v2/utils/connection-line-builder/connection-line-builder.d.ts +13 -0
  457. package/f-connection-v2/utils/connection-line-builder/index.d.ts +5 -0
  458. package/{f-connection/f-connection-builder → f-connection-v2/utils/connection-line-builder/models}/i-f-connection-builder-request.d.ts +2 -1
  459. package/{f-connection/f-connection-builder → f-connection-v2/utils/connection-line-builder/models}/i-f-connection-builder-response.d.ts +2 -2
  460. package/{f-connection/f-connection-builder → f-connection-v2/utils/connection-line-builder/models}/i-f-connection-builder.d.ts +1 -2
  461. package/{f-connection/f-connection-builder → f-connection-v2/utils/connection-line-builder/models}/index.d.ts +1 -4
  462. package/f-connection-v2/utils/connection-line-builder/providers/f-connection-builders.d.ts +4 -0
  463. package/f-connection-v2/utils/connection-line-builder/providers/index.d.ts +1 -0
  464. package/f-connection-v2/utils/create-connection-dom-identifier.d.ts +1 -0
  465. package/f-connection-v2/utils/create-connection-selection-dom-identifier.d.ts +1 -0
  466. package/f-connection-v2/utils/create-gradient-dom-identifier.d.ts +1 -0
  467. package/f-connection-v2/utils/create-gradient-dom-url.d.ts +1 -0
  468. package/f-connection-v2/utils/index.d.ts +6 -0
  469. package/f-connectors/f-connector-base.d.ts +1 -1
  470. package/f-connectors/f-node-input/f-node-input.directive.d.ts +1 -1
  471. package/f-connectors/f-node-outlet/f-node-outlet.directive.d.ts +1 -1
  472. package/f-connectors/f-node-output/f-node-output.directive.d.ts +1 -1
  473. package/f-connectors/f-source-connector-base.d.ts +3 -0
  474. package/f-connectors/index.d.ts +0 -1
  475. package/f-draggable/f-connection/f-create-connection/f-create-connection.drag-handler.d.ts +1 -0
  476. package/f-draggable/f-connection/f-reassign-connection/f-reassign-connection.drag-handler.d.ts +2 -1
  477. package/f-draggable/f-connection/f-reassign-connection/f-reassign-source.drag-handler.d.ts +4 -2
  478. package/f-draggable/f-connection/f-reassign-connection/f-reassign-target.drag-handler.d.ts +4 -2
  479. package/f-draggable/f-connection/f-reassign-connection/i-f-reassign-connection-drag-result.d.ts +1 -1
  480. package/f-draggable/f-connection/f-reassign-connection/reassign-preparation/f-reassign-connection-preparation.execution.d.ts +6 -7
  481. package/f-draggable/f-connection/f-reassign-connection/reassign-preparation/is-pointer-inside-start-or-end-drag-handles.d.ts +2 -2
  482. package/f-draggable/f-connection/index.d.ts +1 -0
  483. package/f-draggable/f-connection/move-connection-waypoint/index.d.ts +3 -0
  484. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-finalize/index.d.ts +2 -0
  485. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-finalize/move-connection-waypoint-finalize-request.d.ts +6 -0
  486. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-finalize/move-connection-waypoint-finalize.d.ts +11 -0
  487. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-handler.d.ts +20 -0
  488. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-preparation/index.d.ts +2 -0
  489. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-preparation/move-connection-waypoint-preparation-request.d.ts +8 -0
  490. package/f-draggable/f-connection/move-connection-waypoint/move-connection-waypoint-preparation/move-connection-waypoint-preparation.d.ts +19 -0
  491. package/f-draggable/f-connection/providers.d.ts +3 -2
  492. package/f-draggable/f-drag-handler/i-f-drag-handler.d.ts +2 -1
  493. package/f-draggable/f-draggable-base.d.ts +3 -1
  494. package/f-draggable/f-draggable.directive.d.ts +5 -1
  495. package/f-draggable/f-node-move/connection-drag-handlers/base-connection.drag-handler.d.ts +2 -1
  496. package/f-draggable/f-node-move/connection-drag-handlers/source-connection.drag-handler.d.ts +1 -1
  497. package/f-draggable/f-node-move/connection-drag-handlers/source-target-connection.drag-handler.d.ts +1 -1
  498. package/f-draggable/f-node-move/connection-drag-handlers/target-connection.drag-handler.d.ts +1 -1
  499. package/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.d.ts +1 -1
  500. package/f-draggable/f-node-move/create-snap-lines/create-snap-lines-request.d.ts +1 -1
  501. package/f-draggable/f-node-move/move-drag-handler.d.ts +2 -2
  502. package/f-draggable/f-node-move/move-finalize/f-node-move-finalize.execution.d.ts +1 -1
  503. package/f-draggable/f-node-move/move-preparation/index.d.ts +2 -2
  504. package/f-draggable/f-node-move/move-preparation/{f-node-move-preparation.request.d.ts → move-node-preparation-request.d.ts} +3 -3
  505. package/f-draggable/f-node-move/move-preparation/move-node-preparation.d.ts +17 -0
  506. package/f-draggable/f-node-move/move-summary-drag-handler.d.ts +3 -3
  507. package/f-draggable/f-node-move/providers.d.ts +2 -2
  508. package/f-draggable/index.d.ts +2 -1
  509. package/f-draggable/pinch-to-zoom/constants/constants.d.ts +5 -0
  510. package/f-draggable/pinch-to-zoom/constants/index.d.ts +1 -0
  511. package/f-draggable/pinch-to-zoom/finalize/index.d.ts +2 -0
  512. package/f-draggable/pinch-to-zoom/finalize/pinch-to-zoom-finalize-request.d.ts +6 -0
  513. package/f-draggable/pinch-to-zoom/finalize/pinch-to-zoom-finalize.d.ts +11 -0
  514. package/f-draggable/pinch-to-zoom/index.d.ts +6 -0
  515. package/f-draggable/pinch-to-zoom/pinch-to-zoom-handler.d.ts +21 -0
  516. package/f-draggable/pinch-to-zoom/preparation/index.d.ts +2 -0
  517. package/f-draggable/pinch-to-zoom/preparation/pinch-to-zoom-preparation-request.d.ts +6 -0
  518. package/f-draggable/pinch-to-zoom/preparation/pinch-to-zoom-preparation.d.ts +13 -0
  519. package/f-draggable/pinch-to-zoom/providers.d.ts +3 -0
  520. package/f-draggable/pinch-to-zoom/utils/calculate-touch-center.d.ts +2 -0
  521. package/f-draggable/pinch-to-zoom/utils/calculate-touch-distance.d.ts +1 -0
  522. package/f-draggable/pinch-to-zoom/utils/index.d.ts +2 -0
  523. package/f-draggable/providers.d.ts +1 -1
  524. package/f-draggable/single-select/index.d.ts +3 -0
  525. package/f-draggable/single-select/providers.d.ts +2 -0
  526. package/f-draggable/single-select/single-select-request.d.ts +8 -0
  527. package/f-draggable/{f-single-select/f-single-select.execution.d.ts → single-select/single-select.d.ts} +7 -6
  528. package/f-flow/f-flow.component.d.ts +1 -1
  529. package/f-flow.module.d.ts +36 -37
  530. package/f-line-alignment/f-line-alignment-base.d.ts +3 -4
  531. package/f-line-alignment/f-line-alignment.component.d.ts +3 -4
  532. package/f-minimap/f-minimap.component.d.ts +2 -2
  533. package/f-selection-area/domain/selection-area.drag-handle.d.ts +6 -5
  534. package/f-storage/f-components-store.d.ts +3 -4
  535. package/f-storage/features/listen-components-data-changed/index.d.ts +1 -1
  536. package/f-storage/features/listen-components-data-changed/{listen-data-changes.execution.d.ts → listen-data-changes.d.ts} +3 -3
  537. package/f-storage/features/listen-count-changes/index.d.ts +1 -1
  538. package/f-storage/features/listen-count-changes/{listen-count-changes.execution.d.ts → listen-count-changes.d.ts} +3 -3
  539. package/f-storage/features/listen-transform-changes/index.d.ts +2 -2
  540. package/f-storage/features/listen-transform-changes/{listen-transform-changes.execution.d.ts → listen-transform-changes.d.ts} +4 -4
  541. package/f-storage/features/notify-data-changed/index.d.ts +1 -1
  542. package/f-storage/features/notify-data-changed/{notify-data-changed.execution.d.ts → notify-data-changed.d.ts} +3 -3
  543. package/f-storage/features/notify-transform-changed/index.d.ts +2 -2
  544. package/f-storage/features/notify-transform-changed/{notify-transform-changed.execution.d.ts → notify-transform-changed.d.ts} +4 -4
  545. package/f-storage/index.d.ts +0 -1
  546. package/f-storage/providers.d.ts +6 -6
  547. package/f-zoom/f-zoom.directive.d.ts +11 -14
  548. package/fesm2022/foblex-flow.mjs +4354 -3905
  549. package/fesm2022/foblex-flow.mjs.map +1 -1
  550. package/package.json +2 -2
  551. package/public-api.d.ts +1 -0
  552. package/reactivity/index.d.ts +1 -0
  553. package/reactivity/take-one.d.ts +2 -0
  554. package/reactivity/types.d.ts +6 -1
  555. package/schematics/collection.json +6 -1
  556. package/utils/calculate-pointer-in-flow.d.ts +4 -0
  557. package/utils/index.d.ts +1 -0
  558. package/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior-request.d.ts +0 -12
  559. package/domain/f-connection/calculate-connection-line-by-behavior/index.d.ts +0 -6
  560. package/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections-request.d.ts +0 -3
  561. package/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.d.ts +0 -14
  562. package/domain/f-flow/get-flow-state/get-flow-state-connections/index.d.ts +0 -2
  563. package/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes-request.d.ts +0 -6
  564. package/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.d.ts +0 -15
  565. package/domain/f-flow/get-flow-state/get-flow-state-nodes/index.d.ts +0 -2
  566. package/domain/f-flow/get-flow-state/get-flow-state.execution.d.ts +0 -15
  567. package/domain/f-flow/get-flow-state/get-flow-state.request.d.ts +0 -3
  568. package/domain/f-flow/get-flow-state/i-f-flow-state-connection.d.ts +0 -9
  569. package/domain/f-flow/get-flow-state/providers.d.ts +0 -7
  570. package/domain/f-selection/get-can-be-selected-items/get-can-be-selected-items-request.d.ts +0 -3
  571. package/domain/f-selection/get-can-be-selected-items/index.d.ts +0 -3
  572. package/domain/f-zoom/add-zoom-to-store/add-zoom-to-store.execution.d.ts +0 -12
  573. package/domain/f-zoom/reset-zoom/reset-zoom.execution.d.ts +0 -13
  574. package/domain/i-map.d.ts +0 -1
  575. package/esm2022/domain/f-background/add-pattern-to-background/add-pattern-to-background.execution.mjs +0 -48
  576. package/esm2022/domain/f-connection/add-connection-for-create-to-store/add-connection-for-create-to-store.execution.mjs +0 -25
  577. package/esm2022/domain/f-connection/add-connection-marker-to-store/add-connection-marker-to-store.execution.mjs +0 -25
  578. package/esm2022/domain/f-connection/add-connection-to-store/add-connection-to-store.execution.mjs +0 -26
  579. package/esm2022/domain/f-connection/add-snap-connection-to-store/add-snap-connection-to-store.execution.mjs +0 -25
  580. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior-request.mjs +0 -16
  581. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/calculate-connection-line-by-behavior.mjs +0 -145
  582. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/index.mjs +0 -7
  583. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/models/calculate-behavior-request.mjs +0 -2
  584. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/utils/fixed-center-behavior.mjs +0 -12
  585. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/utils/fixed-outbound-behavior.mjs +0 -31
  586. package/esm2022/domain/f-connection/calculate-connection-line-by-behavior/utils/floating-behavior.mjs +0 -22
  587. package/esm2022/domain/f-connection/create-connection-markers/create-connection-markers.execution.mjs +0 -65
  588. package/esm2022/domain/f-connection/remove-connection-for-create-from-store/remove-connection-for-create-from-store.execution.mjs +0 -25
  589. package/esm2022/domain/f-connection/remove-connection-from-store/remove-connection-from-store.execution.mjs +0 -33
  590. package/esm2022/domain/f-connection/remove-connection-marker-from-store/remove-connection-marker-from-store.execution.mjs +0 -25
  591. package/esm2022/domain/f-connection/remove-snap-connection-from-store/remove-snap-connection-from-store.execution.mjs +0 -25
  592. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections-request.mjs +0 -4
  593. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.mjs +0 -35
  594. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-connections/index.mjs +0 -3
  595. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes-request.mjs +0 -8
  596. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.mjs +0 -58
  597. package/esm2022/domain/f-flow/get-flow-state/get-flow-state-nodes/index.mjs +0 -3
  598. package/esm2022/domain/f-flow/get-flow-state/get-flow-state.execution.mjs +0 -39
  599. package/esm2022/domain/f-flow/get-flow-state/get-flow-state.request.mjs +0 -4
  600. package/esm2022/domain/f-flow/get-flow-state/i-f-flow-state-connection.mjs +0 -2
  601. package/esm2022/domain/f-flow/get-flow-state/i-f-flow-state-connector.mjs +0 -2
  602. package/esm2022/domain/f-flow/get-flow-state/i-f-flow-state-node.mjs +0 -2
  603. package/esm2022/domain/f-flow/get-flow-state/i-f-flow-state.mjs +0 -2
  604. package/esm2022/domain/f-flow/get-flow-state/index.mjs +0 -10
  605. package/esm2022/domain/f-flow/get-flow-state/providers.mjs +0 -12
  606. package/esm2022/domain/f-selection/get-can-be-selected-items/get-can-be-selected-items-request.mjs +0 -4
  607. package/esm2022/domain/f-selection/get-can-be-selected-items/get-can-be-selected-items.execution.mjs +0 -66
  608. package/esm2022/domain/f-selection/get-can-be-selected-items/i-can-be-selected-element-and-rect.mjs +0 -2
  609. package/esm2022/domain/f-selection/get-can-be-selected-items/index.mjs +0 -4
  610. package/esm2022/domain/f-zoom/add-zoom-to-store/add-zoom-to-store.execution.mjs +0 -28
  611. package/esm2022/domain/f-zoom/remove-zoom-from-store/remove-zoom-from-store.execution.mjs +0 -28
  612. package/esm2022/domain/f-zoom/reset-zoom/reset-zoom.execution.mjs +0 -30
  613. package/esm2022/domain/f-zoom/set-zoom/set-zoom.execution.mjs +0 -54
  614. package/esm2022/domain/i-map.mjs +0 -2
  615. package/esm2022/f-connection/common/domain/adaptive-curve-builder.mjs +0 -201
  616. package/esm2022/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points-request.mjs +0 -10
  617. package/esm2022/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points.handler.mjs +0 -12
  618. package/esm2022/f-connection/common/domain/calculate-center-between-points/index.mjs +0 -3
  619. package/esm2022/f-connection/common/domain/calculate-connection-center/calculate-connection-center-request.mjs +0 -8
  620. package/esm2022/f-connection/common/domain/calculate-connection-center/calculate-connection-center.handler.mjs +0 -35
  621. package/esm2022/f-connection/common/domain/calculate-connection-center/index.mjs +0 -3
  622. package/esm2022/f-connection/common/domain/f-bezier.path-builder.mjs +0 -58
  623. package/esm2022/f-connection/common/domain/f-segment.path-builder.mjs +0 -161
  624. package/esm2022/f-connection/common/domain/f-straight.path-builder.mjs +0 -16
  625. package/esm2022/f-connection/common/domain/index.mjs +0 -7
  626. package/esm2022/f-connection/common/e-f-connection-behavior.mjs +0 -7
  627. package/esm2022/f-connection/common/e-f-connection-connectable-side.mjs +0 -12
  628. package/esm2022/f-connection/common/e-f-connection-type.mjs +0 -8
  629. package/esm2022/f-connection/common/f-connection-base.mjs +0 -121
  630. package/esm2022/f-connection/common/f-connection-identifiers.mjs +0 -22
  631. package/esm2022/f-connection/common/f-connection-text/f-connection-text-path.directive.mjs +0 -65
  632. package/esm2022/f-connection/common/f-connection-text/f-connection-text.component.mjs +0 -57
  633. package/esm2022/f-connection/common/f-connection-text/i-connection-text.mjs +0 -3
  634. package/esm2022/f-connection/common/f-connection-text/index.mjs +0 -4
  635. package/esm2022/f-connection/common/f-connection.injection-token.mjs +0 -3
  636. package/esm2022/f-connection/common/f-drag-handle/f-connection-drag-handle-end.component.mjs +0 -37
  637. package/esm2022/f-connection/common/f-drag-handle/f-connection-drag-handle-start.component.mjs +0 -37
  638. package/esm2022/f-connection/common/f-drag-handle/index.mjs +0 -3
  639. package/esm2022/f-connection/common/f-gradient/f-connection-gradient.component.mjs +0 -55
  640. package/esm2022/f-connection/common/f-gradient/i-connection-gradient.mjs +0 -3
  641. package/esm2022/f-connection/common/f-gradient/index.mjs +0 -3
  642. package/esm2022/f-connection/common/f-path/f-connection-path.component.mjs +0 -45
  643. package/esm2022/f-connection/common/f-path/get-path-marker-id.mjs +0 -14
  644. package/esm2022/f-connection/common/f-path/i-connection-path.mjs +0 -3
  645. package/esm2022/f-connection/common/f-path/index.mjs +0 -4
  646. package/esm2022/f-connection/common/f-selection/f-connection-selection.component.mjs +0 -24
  647. package/esm2022/f-connection/common/f-selection/index.mjs +0 -2
  648. package/esm2022/f-connection/common/i-has-connection-color.mjs +0 -2
  649. package/esm2022/f-connection/common/i-has-connection-from-to.mjs +0 -2
  650. package/esm2022/f-connection/common/i-has-connection-text.mjs +0 -2
  651. package/esm2022/f-connection/common/index.mjs +0 -15
  652. package/esm2022/f-connection/f-connection-builder/f-connection-builders.mjs +0 -3
  653. package/esm2022/f-connection/f-connection-builder/f-connection-factory.mjs +0 -26
  654. package/esm2022/f-connection/f-connection-builder/i-f-connection-builder-request.mjs +0 -2
  655. package/esm2022/f-connection/f-connection-builder/i-f-connection-builder-response.mjs +0 -2
  656. package/esm2022/f-connection/f-connection-builder/i-f-connection-builder.mjs +0 -2
  657. package/esm2022/f-connection/f-connection-builder/i-f-connection-factory-request.mjs +0 -2
  658. package/esm2022/f-connection/f-connection-builder/index.mjs +0 -7
  659. package/esm2022/f-connection/f-connection-center/f-connection-center.directive.mjs +0 -30
  660. package/esm2022/f-connection/f-connection-center/index.mjs +0 -2
  661. package/esm2022/f-connection/f-connection-content/f-connection-content.mjs +0 -102
  662. package/esm2022/f-connection/f-connection-content/index.mjs +0 -3
  663. package/esm2022/f-connection/f-connection-content/polyline-content-engine/i-polyline-content.mjs +0 -2
  664. package/esm2022/f-connection/f-connection-content/polyline-content-engine/index.mjs +0 -6
  665. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-content-align.mjs +0 -6
  666. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-content-layout-engine.mjs +0 -28
  667. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/i-sampler-result.mjs +0 -2
  668. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/i-tangent.mjs +0 -2
  669. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/index.mjs +0 -5
  670. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/polyline-sampler.mjs +0 -143
  671. package/esm2022/f-connection/f-connection-content/polyline-content-engine/polyline-sampler/polyline.mjs +0 -68
  672. package/esm2022/f-connection/f-marker/e-f-marker-type.mjs +0 -8
  673. package/esm2022/f-connection/f-marker/f-marker-base.mjs +0 -5
  674. package/esm2022/f-connection/f-marker/f-marker.directive.mjs +0 -51
  675. package/esm2022/f-connection/f-marker/index.mjs +0 -4
  676. package/esm2022/f-connectors/e-f-connectable-side.mjs +0 -12
  677. package/esm2022/f-draggable/f-node-move/move-preparation/f-node-move-preparation.execution.mjs +0 -82
  678. package/esm2022/f-draggable/f-node-move/move-preparation/f-node-move-preparation.request.mjs +0 -10
  679. package/esm2022/f-draggable/f-single-select/f-single-select.execution.mjs +0 -138
  680. package/esm2022/f-draggable/f-single-select/f-single-select.request.mjs +0 -10
  681. package/esm2022/f-draggable/f-single-select/index.mjs +0 -4
  682. package/esm2022/f-draggable/f-single-select/providers.mjs +0 -5
  683. package/esm2022/f-storage/f-connectors-store.mjs +0 -11
  684. package/esm2022/f-storage/features/listen-components-data-changed/listen-data-changes.execution.mjs +0 -23
  685. package/esm2022/f-storage/features/listen-count-changes/listen-count-changes.execution.mjs +0 -23
  686. package/esm2022/f-storage/features/listen-transform-changes/listen-transform-changes.execution.mjs +0 -23
  687. package/esm2022/f-storage/features/notify-data-changed/notify-data-changed.execution.mjs +0 -22
  688. package/esm2022/f-storage/features/notify-transform-changed/notify-transform-changed.execution.mjs +0 -22
  689. package/f-connection/common/domain/adaptive-curve-builder.d.ts +0 -102
  690. package/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points-request.d.ts +0 -7
  691. package/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points.handler.d.ts +0 -6
  692. package/f-connection/common/domain/calculate-center-between-points/index.d.ts +0 -2
  693. package/f-connection/common/domain/calculate-connection-center/calculate-connection-center-request.d.ts +0 -6
  694. package/f-connection/common/domain/calculate-connection-center/calculate-connection-center.handler.d.ts +0 -8
  695. package/f-connection/common/domain/calculate-connection-center/index.d.ts +0 -2
  696. package/f-connection/common/domain/f-bezier.path-builder.d.ts +0 -6
  697. package/f-connection/common/domain/f-segment.path-builder.d.ts +0 -11
  698. package/f-connection/common/domain/index.d.ts +0 -6
  699. package/f-connection/common/f-connection-identifiers.d.ts +0 -8
  700. package/f-connection/common/f-connection-text/f-connection-text-path.directive.d.ts +0 -18
  701. package/f-connection/common/f-connection-text/f-connection-text.component.d.ts +0 -16
  702. package/f-connection/common/f-connection-text/i-connection-text.d.ts +0 -7
  703. package/f-connection/common/f-connection-text/index.d.ts +0 -3
  704. package/f-connection/common/f-connection.injection-token.d.ts +0 -2
  705. package/f-connection/common/f-drag-handle/f-connection-drag-handle-end.component.d.ts +0 -13
  706. package/f-connection/common/f-drag-handle/f-connection-drag-handle-start.component.d.ts +0 -13
  707. package/f-connection/common/f-drag-handle/index.d.ts +0 -2
  708. package/f-connection/common/f-gradient/i-connection-gradient.d.ts +0 -8
  709. package/f-connection/common/f-gradient/index.d.ts +0 -2
  710. package/f-connection/common/f-path/f-connection-path.component.d.ts +0 -15
  711. package/f-connection/common/f-path/get-path-marker-id.d.ts +0 -4
  712. package/f-connection/common/f-path/i-connection-path.d.ts +0 -9
  713. package/f-connection/common/f-path/index.d.ts +0 -3
  714. package/f-connection/common/f-selection/f-connection-selection.component.d.ts +0 -10
  715. package/f-connection/common/f-selection/index.d.ts +0 -1
  716. package/f-connection/common/i-has-connection-color.d.ts +0 -5
  717. package/f-connection/common/i-has-connection-from-to.d.ts +0 -6
  718. package/f-connection/common/i-has-connection-text.d.ts +0 -4
  719. package/f-connection/common/index.d.ts +0 -14
  720. package/f-connection/f-connection-builder/f-connection-builders.d.ts +0 -4
  721. package/f-connection/f-connection-builder/f-connection-factory.d.ts +0 -9
  722. package/f-connection/f-connection-builder/i-f-connection-factory-request.d.ts +0 -6
  723. package/f-connection/f-connection-center/f-connection-center.directive.d.ts +0 -10
  724. package/f-connection/f-connection-center/index.d.ts +0 -1
  725. package/f-connection/f-connection-content/index.d.ts +0 -2
  726. package/f-connection/f-marker/f-marker.directive.d.ts +0 -18
  727. package/f-connection/f-marker/index.d.ts +0 -3
  728. package/f-draggable/f-node-move/move-preparation/f-node-move-preparation.execution.d.ts +0 -20
  729. package/f-draggable/f-single-select/f-single-select.request.d.ts +0 -8
  730. package/f-draggable/f-single-select/index.d.ts +0 -3
  731. package/f-draggable/f-single-select/providers.d.ts +0 -2
  732. package/f-storage/f-connectors-store.d.ts +0 -6
  733. /package/domain/f-flow/{get-flow-state → calculate-flow-state}/i-f-flow-state-node.d.ts +0 -0
  734. /package/domain/f-flow/{get-flow-state → calculate-flow-state}/i-f-flow-state.d.ts +0 -0
  735. /package/domain/f-selection/{get-can-be-selected-items → calculate-selectable-items}/i-can-be-selected-element-and-rect.d.ts +0 -0
  736. /package/f-canvas/domain/{f-canvas-change.event.d.ts → f-canvas-change-event.d.ts} +0 -0
  737. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/i-polyline-content.d.ts +0 -0
  738. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/index.d.ts +0 -0
  739. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-content-align.d.ts +0 -0
  740. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-content-place.d.ts +0 -0
  741. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-sampler/i-sampler-result.d.ts +0 -0
  742. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-sampler/i-tangent.d.ts +0 -0
  743. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-sampler/index.d.ts +0 -0
  744. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-sampler/polyline-sampler.d.ts +0 -0
  745. /package/{f-connection/f-connection-content/polyline-content-engine → f-connection-v2/components/connection-content/utils}/polyline-sampler/polyline.d.ts +0 -0
  746. /package/{f-connection/f-marker → f-connection-v2/components/connection-marker/enums}/e-f-marker-type.d.ts +0 -0
  747. /package/{f-connectors → f-connection-v2/enums}/e-f-connectable-side.d.ts +0 -0
  748. /package/{f-connection/common → f-connection-v2/enums}/e-f-connection-type.d.ts +0 -0
  749. /package/{f-connection/common → f-connection-v2/utils/connection-behaviour/enums}/e-f-connection-behavior.d.ts +0 -0
  750. /package/{f-connection/common → f-connection-v2/utils/connection-behaviour/enums}/e-f-connection-connectable-side.d.ts +0 -0
  751. /package/f-storage/features/listen-transform-changes/{listen-transform-changes.request.d.ts → listen-transform-changes-request.d.ts} +0 -0
  752. /package/f-storage/features/notify-transform-changed/{notify-transform-changed.request.d.ts → notify-transform-changed-request.d.ts} +0 -0
@@ -1,3 +1,3 @@
1
- export * from './reset-zoom.execution';
1
+ export * from './reset-zoom';
2
2
  export * from './reset-zoom-request';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLXpvb20vcmVzZXQtem9vbS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDO0FBRXZDLGNBQWMsc0JBQXNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3Jlc2V0LXpvb20uZXhlY3V0aW9uJztcblxuZXhwb3J0ICogZnJvbSAnLi9yZXNldC16b29tLXJlcXVlc3QnO1xuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLXpvb20vcmVzZXQtem9vbS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGNBQWMsQ0FBQztBQUU3QixjQUFjLHNCQUFzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9yZXNldC16b29tJztcblxuZXhwb3J0ICogZnJvbSAnLi9yZXNldC16b29tLXJlcXVlc3QnO1xuIl19
@@ -0,0 +1,30 @@
1
+ import { __decorate } from "tslib";
2
+ import { inject, Injectable } from '@angular/core';
3
+ import { FExecutionRegister } from '@foblex/mediator';
4
+ import { ResetZoomRequest } from './reset-zoom-request';
5
+ import { FComponentsStore } from '../../../f-storage';
6
+ import * as i0 from "@angular/core";
7
+ /**
8
+ * Execution that resets the zoom level of the FCanvas.
9
+ */
10
+ let ResetZoom = class ResetZoom {
11
+ _store = inject(FComponentsStore);
12
+ get _canvas() {
13
+ return this._store.fCanvas;
14
+ }
15
+ handle(_request) {
16
+ this._canvas.resetScale();
17
+ this._canvas.redraw();
18
+ this._canvas.emitCanvasChangeEvent();
19
+ }
20
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ResetZoom, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
21
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ResetZoom });
22
+ };
23
+ ResetZoom = __decorate([
24
+ FExecutionRegister(ResetZoomRequest)
25
+ ], ResetZoom);
26
+ export { ResetZoom };
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ResetZoom, decorators: [{
28
+ type: Injectable
29
+ }] });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXQtem9vbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZG9tYWluL2Ytem9vbS9yZXNldC16b29tL3Jlc2V0LXpvb20udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQUd0RDs7R0FFRztBQUdJLElBQU0sU0FBUyxHQUFmLE1BQU0sU0FBUztJQUNILE1BQU0sR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUVuRCxJQUFZLE9BQU87UUFDakIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQXNCLENBQUM7SUFDNUMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxRQUEwQjtRQUN0QyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7d0dBWFUsU0FBUzs0R0FBVCxTQUFTOztBQUFULFNBQVM7SUFEckIsa0JBQWtCLENBQUMsZ0JBQWdCLENBQUM7R0FDeEIsU0FBUyxDQVlyQjs7NEZBWlksU0FBUztrQkFGckIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkV4ZWN1dGlvblJlZ2lzdGVyLCBJRXhlY3V0aW9uIH0gZnJvbSAnQGZvYmxleC9tZWRpYXRvcic7XG5pbXBvcnQgeyBSZXNldFpvb21SZXF1ZXN0IH0gZnJvbSAnLi9yZXNldC16b29tLXJlcXVlc3QnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGQ2FudmFzQmFzZSB9IGZyb20gJy4uLy4uLy4uL2YtY2FudmFzJztcblxuLyoqXG4gKiBFeGVjdXRpb24gdGhhdCByZXNldHMgdGhlIHpvb20gbGV2ZWwgb2YgdGhlIEZDYW52YXMuXG4gKi9cbkBJbmplY3RhYmxlKClcbkBGRXhlY3V0aW9uUmVnaXN0ZXIoUmVzZXRab29tUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBSZXNldFpvb20gaW1wbGVtZW50cyBJRXhlY3V0aW9uPFJlc2V0Wm9vbVJlcXVlc3QsIHZvaWQ+IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfc3RvcmUgPSBpbmplY3QoRkNvbXBvbmVudHNTdG9yZSk7XG5cbiAgcHJpdmF0ZSBnZXQgX2NhbnZhcygpOiBGQ2FudmFzQmFzZSB7XG4gICAgcmV0dXJuIHRoaXMuX3N0b3JlLmZDYW52YXMgYXMgRkNhbnZhc0Jhc2U7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKF9yZXF1ZXN0OiBSZXNldFpvb21SZXF1ZXN0KTogdm9pZCB7XG4gICAgdGhpcy5fY2FudmFzLnJlc2V0U2NhbGUoKTtcbiAgICB0aGlzLl9jYW52YXMucmVkcmF3KCk7XG4gICAgdGhpcy5fY2FudmFzLmVtaXRDYW52YXNDaGFuZ2VFdmVudCgpO1xuICB9XG59XG4iXX0=
@@ -1,3 +1,3 @@
1
- export * from './set-zoom.execution';
1
+ export * from './set-zoom';
2
2
  export * from './set-zoom-request';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLXpvb20vc2V0LXpvb20vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxzQkFBc0IsQ0FBQztBQUVyQyxjQUFjLG9CQUFvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zZXQtem9vbS5leGVjdXRpb24nO1xuXG5leHBvcnQgKiBmcm9tICcuL3NldC16b29tLXJlcXVlc3QnO1xuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLXpvb20vc2V0LXpvb20vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxZQUFZLENBQUM7QUFFM0IsY0FBYyxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc2V0LXpvb20nO1xuXG5leHBvcnQgKiBmcm9tICcuL3NldC16b29tLXJlcXVlc3QnO1xuIl19
@@ -0,0 +1,54 @@
1
+ import { __decorate } from "tslib";
2
+ import { inject, Injectable } from '@angular/core';
3
+ import { FExecutionRegister, FMediator } from '@foblex/mediator';
4
+ import { SetZoomRequest } from './set-zoom-request';
5
+ import { FComponentsStore } from '../../../f-storage';
6
+ import { F_ZOOM_TAG } from '../f-zoom-tag';
7
+ import { Point } from '@foblex/2d';
8
+ import { IsDragStartedRequest } from '../../f-draggable';
9
+ import * as i0 from "@angular/core";
10
+ /**
11
+ * Execution that sets the zoom level of the FCanvas based on the provided request.
12
+ * It adjusts the zoom level by a specified step and direction, ensuring it stays within defined limits.
13
+ */
14
+ let SetZoom = class SetZoom {
15
+ _mediator = inject(FMediator);
16
+ _store = inject(FComponentsStore);
17
+ get _flowHost() {
18
+ return this._store.fFlow?.hostElement;
19
+ }
20
+ get _canvas() {
21
+ return this._store.fCanvas;
22
+ }
23
+ get _zoomComponent() {
24
+ return this._store.fComponents[F_ZOOM_TAG];
25
+ }
26
+ get _isDragStarted() {
27
+ return this._mediator.execute(new IsDragStartedRequest());
28
+ }
29
+ handle(request) {
30
+ if (this._isDragStarted || !this._zoomComponent) {
31
+ return;
32
+ }
33
+ const result = this._canvas.transform.scale + request.step * request.direction;
34
+ this._canvas.setScale(this._clamp(result), this._castPositionToFlow(request.position));
35
+ request.animate ? this._canvas.redrawWithAnimation() : this._canvas.redraw();
36
+ this._canvas.emitCanvasChangeEvent();
37
+ }
38
+ _clamp(value) {
39
+ return Math.max(this._zoomComponent.minimum, Math.min(value, this._zoomComponent.maximum));
40
+ }
41
+ _castPositionToFlow(position) {
42
+ return Point.fromPoint(position).elementTransform(this._flowHost);
43
+ }
44
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SetZoom, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
45
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SetZoom });
46
+ };
47
+ SetZoom = __decorate([
48
+ FExecutionRegister(SetZoomRequest)
49
+ ], SetZoom);
50
+ export { SetZoom };
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SetZoom, decorators: [{
52
+ type: Injectable
53
+ }] });
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0LXpvb20uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9mLXpvb20vc2V0LXpvb20vc2V0LXpvb20udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxTQUFTLEVBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQVUsS0FBSyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDOztBQUV6RDs7O0dBR0c7QUFHSSxJQUFNLE9BQU8sR0FBYixNQUFNLE9BQU87SUFDRCxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlCLE1BQU0sR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUVuRCxJQUFZLFNBQVM7UUFDbkIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxXQUEwQixDQUFDO0lBQ3ZELENBQUM7SUFFRCxJQUFZLE9BQU87UUFDakIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQXNCLENBQUM7SUFDNUMsQ0FBQztJQUVELElBQVksY0FBYztRQUN4QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBYyxDQUFDO0lBQzFELENBQUM7SUFFRCxJQUFZLGNBQWM7UUFDeEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBVSxJQUFJLG9CQUFvQixFQUFFLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQXVCO1FBQ25DLElBQUksSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUNoRCxPQUFPO1FBQ1QsQ0FBQztRQUVELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUM7UUFFL0UsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDdkYsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzdFLElBQUksQ0FBQyxPQUFPLENBQUMscUJBQXFCLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBRU8sTUFBTSxDQUFDLEtBQWE7UUFDMUIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUM3RixDQUFDO0lBRU8sbUJBQW1CLENBQUMsUUFBZ0I7UUFDMUMsT0FBTyxLQUFLLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNwRSxDQUFDO3dHQXRDVSxPQUFPOzRHQUFQLE9BQU87O0FBQVAsT0FBTztJQURuQixrQkFBa0IsQ0FBQyxjQUFjLENBQUM7R0FDdEIsT0FBTyxDQXVDbkI7OzRGQXZDWSxPQUFPO2tCQUZuQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGRXhlY3V0aW9uUmVnaXN0ZXIsIEZNZWRpYXRvciwgSUV4ZWN1dGlvbiB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgU2V0Wm9vbVJlcXVlc3QgfSBmcm9tICcuL3NldC16b29tLXJlcXVlc3QnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGX1pPT01fVEFHIH0gZnJvbSAnLi4vZi16b29tLXRhZyc7XG5pbXBvcnQgeyBJUG9pbnQsIFBvaW50IH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBGQ2FudmFzQmFzZSB9IGZyb20gJy4uLy4uLy4uL2YtY2FudmFzJztcbmltcG9ydCB7IEZab29tQmFzZSB9IGZyb20gJy4uLy4uLy4uL2Ytem9vbSc7XG5pbXBvcnQgeyBJc0RyYWdTdGFydGVkUmVxdWVzdCB9IGZyb20gJy4uLy4uL2YtZHJhZ2dhYmxlJztcblxuLyoqXG4gKiBFeGVjdXRpb24gdGhhdCBzZXRzIHRoZSB6b29tIGxldmVsIG9mIHRoZSBGQ2FudmFzIGJhc2VkIG9uIHRoZSBwcm92aWRlZCByZXF1ZXN0LlxuICogSXQgYWRqdXN0cyB0aGUgem9vbSBsZXZlbCBieSBhIHNwZWNpZmllZCBzdGVwIGFuZCBkaXJlY3Rpb24sIGVuc3VyaW5nIGl0IHN0YXlzIHdpdGhpbiBkZWZpbmVkIGxpbWl0cy5cbiAqL1xuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihTZXRab29tUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBTZXRab29tIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxTZXRab29tUmVxdWVzdCwgdm9pZD4ge1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9zdG9yZSA9IGluamVjdChGQ29tcG9uZW50c1N0b3JlKTtcblxuICBwcml2YXRlIGdldCBfZmxvd0hvc3QoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLl9zdG9yZS5mRmxvdz8uaG9zdEVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG4gIH1cblxuICBwcml2YXRlIGdldCBfY2FudmFzKCk6IEZDYW52YXNCYXNlIHtcbiAgICByZXR1cm4gdGhpcy5fc3RvcmUuZkNhbnZhcyBhcyBGQ2FudmFzQmFzZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF96b29tQ29tcG9uZW50KCk6IEZab29tQmFzZSB7XG4gICAgcmV0dXJuIHRoaXMuX3N0b3JlLmZDb21wb25lbnRzW0ZfWk9PTV9UQUddIGFzIEZab29tQmFzZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF9pc0RyYWdTdGFydGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9tZWRpYXRvci5leGVjdXRlPGJvb2xlYW4+KG5ldyBJc0RyYWdTdGFydGVkUmVxdWVzdCgpKTtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogU2V0Wm9vbVJlcXVlc3QpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5faXNEcmFnU3RhcnRlZCB8fCAhdGhpcy5fem9vbUNvbXBvbmVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuX2NhbnZhcy50cmFuc2Zvcm0uc2NhbGUgKyByZXF1ZXN0LnN0ZXAgKiByZXF1ZXN0LmRpcmVjdGlvbjtcblxuICAgIHRoaXMuX2NhbnZhcy5zZXRTY2FsZSh0aGlzLl9jbGFtcChyZXN1bHQpLCB0aGlzLl9jYXN0UG9zaXRpb25Ub0Zsb3cocmVxdWVzdC5wb3NpdGlvbikpO1xuICAgIHJlcXVlc3QuYW5pbWF0ZSA/IHRoaXMuX2NhbnZhcy5yZWRyYXdXaXRoQW5pbWF0aW9uKCkgOiB0aGlzLl9jYW52YXMucmVkcmF3KCk7XG4gICAgdGhpcy5fY2FudmFzLmVtaXRDYW52YXNDaGFuZ2VFdmVudCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2xhbXAodmFsdWU6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIE1hdGgubWF4KHRoaXMuX3pvb21Db21wb25lbnQubWluaW11bSwgTWF0aC5taW4odmFsdWUsIHRoaXMuX3pvb21Db21wb25lbnQubWF4aW11bSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FzdFBvc2l0aW9uVG9GbG93KHBvc2l0aW9uOiBJUG9pbnQpOiBJUG9pbnQge1xuICAgIHJldHVybiBQb2ludC5mcm9tUG9pbnQocG9zaXRpb24pLmVsZW1lbnRUcmFuc2Zvcm0odGhpcy5fZmxvd0hvc3QpO1xuICB9XG59XG4iXX0=
@@ -18,11 +18,10 @@ export * from './update-item-and-children-layers';
18
18
  export * from './create-dom-element';
19
19
  export * from './css-cls';
20
20
  export * from './f-event-trigger';
21
- export * from './i-map';
22
21
  export * from './is-mobile';
23
22
  export * from './log-deprecated';
24
23
  export * from './log-execution-time';
25
24
  export * from './providers';
26
25
  export * from './drag-rect-cache';
27
26
  export * from './transition-end';
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFDO0FBRTNDLGNBQWMsZ0JBQWdCLENBQUM7QUFFL0IsY0FBYyxZQUFZLENBQUM7QUFFM0IsY0FBYyxnQkFBZ0IsQ0FBQztBQUUvQixjQUFjLGdCQUFnQixDQUFDO0FBRS9CLGNBQWMsZUFBZSxDQUFDO0FBRTlCLGNBQWMsVUFBVSxDQUFDO0FBRXpCLGNBQWMsb0JBQW9CLENBQUM7QUFFbkMsY0FBYyxVQUFVLENBQUM7QUFFekIsY0FBYyxlQUFlLENBQUM7QUFFOUIsY0FBYyxVQUFVLENBQUM7QUFFekIsY0FBYyxzQ0FBc0MsQ0FBQztBQUVyRCxjQUFjLGlDQUFpQyxDQUFDO0FBRWhELGNBQWMsK0JBQStCLENBQUM7QUFFOUMsY0FBYyx3QkFBd0IsQ0FBQztBQUV2QyxjQUFjLG9CQUFvQixDQUFDO0FBRW5DLGNBQWMsbUNBQW1DLENBQUM7QUFFbEQsY0FBYyxzQkFBc0IsQ0FBQztBQUVyQyxjQUFjLFdBQVcsQ0FBQztBQUUxQixjQUFjLG1CQUFtQixDQUFDO0FBRWxDLGNBQWMsU0FBUyxDQUFDO0FBRXhCLGNBQWMsYUFBYSxDQUFDO0FBRTVCLGNBQWMsa0JBQWtCLENBQUM7QUFFakMsY0FBYyxzQkFBc0IsQ0FBQztBQUVyQyxjQUFjLGFBQWEsQ0FBQztBQUU1QixjQUFjLG1CQUFtQixDQUFDO0FBRWxDLGNBQWMsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2dldC1lbGVtZW50LXJvdW5kZWQtcmVjdCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1iYWNrZ3JvdW5kJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWNhbnZhcyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1jb25uZWN0aW9uJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWNvbm5lY3RvcnMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtZHJhZ2dhYmxlJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWZsb3cnO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtbGluZS1hbGlnbm1lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2Ytbm9kZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1zZWxlY3Rpb24nO1xuXG5leHBvcnQgKiBmcm9tICcuL2Ytem9vbSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZ2V0LWRlZXAtY2hpbGRyZW4tbm9kZXMtYW5kLWdyb3Vwcyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZ2V0LW5vcm1hbGl6ZWQtY29ubmVjdG9yLXJlY3QnO1xuXG5leHBvcnQgKiBmcm9tICcuL2dldC1ub3JtYWxpemVkLWVsZW1lbnQtcmVjdCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZ2V0LW5vcm1hbGl6ZWQtcG9pbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL3NvcnQtaXRlbS1sYXllcnMnO1xuXG5leHBvcnQgKiBmcm9tICcuL3VwZGF0ZS1pdGVtLWFuZC1jaGlsZHJlbi1sYXllcnMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2NyZWF0ZS1kb20tZWxlbWVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vY3NzLWNscyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1ldmVudC10cmlnZ2VyJztcblxuZXhwb3J0ICogZnJvbSAnLi9pLW1hcCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vaXMtbW9iaWxlJztcblxuZXhwb3J0ICogZnJvbSAnLi9sb2ctZGVwcmVjYXRlZCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbG9nLWV4ZWN1dGlvbi10aW1lJztcblxuZXhwb3J0ICogZnJvbSAnLi9wcm92aWRlcnMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2RyYWctcmVjdC1jYWNoZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vdHJhbnNpdGlvbi1lbmQnO1xuIl19
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2RvbWFpbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFDO0FBRTNDLGNBQWMsZ0JBQWdCLENBQUM7QUFFL0IsY0FBYyxZQUFZLENBQUM7QUFFM0IsY0FBYyxnQkFBZ0IsQ0FBQztBQUUvQixjQUFjLGdCQUFnQixDQUFDO0FBRS9CLGNBQWMsZUFBZSxDQUFDO0FBRTlCLGNBQWMsVUFBVSxDQUFDO0FBRXpCLGNBQWMsb0JBQW9CLENBQUM7QUFFbkMsY0FBYyxVQUFVLENBQUM7QUFFekIsY0FBYyxlQUFlLENBQUM7QUFFOUIsY0FBYyxVQUFVLENBQUM7QUFFekIsY0FBYyxzQ0FBc0MsQ0FBQztBQUVyRCxjQUFjLGlDQUFpQyxDQUFDO0FBRWhELGNBQWMsK0JBQStCLENBQUM7QUFFOUMsY0FBYyx3QkFBd0IsQ0FBQztBQUV2QyxjQUFjLG9CQUFvQixDQUFDO0FBRW5DLGNBQWMsbUNBQW1DLENBQUM7QUFFbEQsY0FBYyxzQkFBc0IsQ0FBQztBQUVyQyxjQUFjLFdBQVcsQ0FBQztBQUUxQixjQUFjLG1CQUFtQixDQUFDO0FBRWxDLGNBQWMsYUFBYSxDQUFDO0FBRTVCLGNBQWMsa0JBQWtCLENBQUM7QUFFakMsY0FBYyxzQkFBc0IsQ0FBQztBQUVyQyxjQUFjLGFBQWEsQ0FBQztBQUU1QixjQUFjLG1CQUFtQixDQUFDO0FBRWxDLGNBQWMsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2dldC1lbGVtZW50LXJvdW5kZWQtcmVjdCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1iYWNrZ3JvdW5kJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWNhbnZhcyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1jb25uZWN0aW9uJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWNvbm5lY3RvcnMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtZHJhZ2dhYmxlJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWZsb3cnO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtbGluZS1hbGlnbm1lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2Ytbm9kZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1zZWxlY3Rpb24nO1xuXG5leHBvcnQgKiBmcm9tICcuL2Ytem9vbSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZ2V0LWRlZXAtY2hpbGRyZW4tbm9kZXMtYW5kLWdyb3Vwcyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZ2V0LW5vcm1hbGl6ZWQtY29ubmVjdG9yLXJlY3QnO1xuXG5leHBvcnQgKiBmcm9tICcuL2dldC1ub3JtYWxpemVkLWVsZW1lbnQtcmVjdCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZ2V0LW5vcm1hbGl6ZWQtcG9pbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL3NvcnQtaXRlbS1sYXllcnMnO1xuXG5leHBvcnQgKiBmcm9tICcuL3VwZGF0ZS1pdGVtLWFuZC1jaGlsZHJlbi1sYXllcnMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2NyZWF0ZS1kb20tZWxlbWVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vY3NzLWNscyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1ldmVudC10cmlnZ2VyJztcblxuZXhwb3J0ICogZnJvbSAnLi9pcy1tb2JpbGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xvZy1kZXByZWNhdGVkJztcblxuZXhwb3J0ICogZnJvbSAnLi9sb2ctZXhlY3V0aW9uLXRpbWUnO1xuXG5leHBvcnQgKiBmcm9tICcuL3Byb3ZpZGVycyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZHJhZy1yZWN0LWNhY2hlJztcblxuZXhwb3J0ICogZnJvbSAnLi90cmFuc2l0aW9uLWVuZCc7XG4iXX0=
@@ -6,7 +6,7 @@ export class EventExtensions {
6
6
  window.addEventListener('test', EventExtensions.emptyListener, { passive: true });
7
7
  EventExtensions._isSupported = true;
8
8
  }
9
- catch (e) {
9
+ catch {
10
10
  EventExtensions._isSupported = false;
11
11
  }
12
12
  }
@@ -28,4 +28,4 @@ export class EventExtensions {
28
28
  return () => { };
29
29
  }
30
30
  }
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuZXh0ZW5zaW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZHJhZy10b29sa2l0L2V2ZW50LmV4dGVuc2lvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLGVBQWU7SUFDbEIsTUFBTSxDQUFDLFlBQVksQ0FBVTtJQUU3QixNQUFNLENBQUMsZ0NBQWdDO1FBQzdDLElBQUksZUFBZSxDQUFDLFlBQVksSUFBSSxJQUFJLElBQUksT0FBTyxNQUFNLEtBQUssV0FBVyxFQUFFLENBQUM7WUFDMUUsSUFBSSxDQUFDO2dCQUNILE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsZUFBZSxDQUFDLGFBQWEsRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO2dCQUNsRixlQUFlLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztZQUN0QyxDQUFDO1lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztnQkFDWCxlQUFlLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztZQUN2QyxDQUFDO1FBQ0gsQ0FBQztRQUVELE9BQU8sZUFBZSxDQUFDLFlBQVksQ0FBQztJQUN0QyxDQUFDO0lBRU8sTUFBTSxDQUFDLHFCQUFxQixDQUNsQyxPQUFnQztRQUVoQyxPQUFPLGVBQWUsQ0FBQyxnQ0FBZ0MsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO0lBQzFGLENBQUM7SUFFTSxNQUFNLENBQUMsY0FBYztRQUMxQixPQUFPLGVBQWUsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFTSxNQUFNLENBQUMsZUFBZTtRQUMzQixPQUFPLGVBQWUsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFTSxNQUFNLENBQUMscUJBQXFCO1FBQ2pDLE9BQU8sZUFBZSxDQUFDLHFCQUFxQixDQUFDLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNsRixDQUFDO0lBRU0sTUFBTSxDQUFDLGFBQWE7UUFDekIsT0FBTyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7SUFDbEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIEV2ZW50RXh0ZW5zaW9ucyB7XG4gIHByaXZhdGUgc3RhdGljIF9pc1N1cHBvcnRlZDogYm9vbGVhbjtcblxuICBwcml2YXRlIHN0YXRpYyBfaXNQYXNzaXZlRXZlbnRMaXN0ZW5lclN1cHBvcnRlZCgpOiBib29sZWFuIHtcbiAgICBpZiAoRXZlbnRFeHRlbnNpb25zLl9pc1N1cHBvcnRlZCA9PSBudWxsICYmIHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICB0cnkge1xuICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigndGVzdCcsIEV2ZW50RXh0ZW5zaW9ucy5lbXB0eUxpc3RlbmVyLCB7IHBhc3NpdmU6IHRydWUgfSk7XG4gICAgICAgIEV2ZW50RXh0ZW5zaW9ucy5faXNTdXBwb3J0ZWQgPSB0cnVlO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBFdmVudEV4dGVuc2lvbnMuX2lzU3VwcG9ydGVkID0gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIEV2ZW50RXh0ZW5zaW9ucy5faXNTdXBwb3J0ZWQ7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBfcGFzc2l2ZUV2ZW50TGlzdGVuZXIoXG4gICAgb3B0aW9uczogQWRkRXZlbnRMaXN0ZW5lck9wdGlvbnMsXG4gICk6IEFkZEV2ZW50TGlzdGVuZXJPcHRpb25zIHwgYm9vbGVhbiB7XG4gICAgcmV0dXJuIEV2ZW50RXh0ZW5zaW9ucy5faXNQYXNzaXZlRXZlbnRMaXN0ZW5lclN1cHBvcnRlZCgpID8gb3B0aW9ucyA6ICEhb3B0aW9ucy5jYXB0dXJlO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBhY3RpdmVMaXN0ZW5lcigpOiBib29sZWFuIHwgQWRkRXZlbnRMaXN0ZW5lck9wdGlvbnMge1xuICAgIHJldHVybiBFdmVudEV4dGVuc2lvbnMuX3Bhc3NpdmVFdmVudExpc3RlbmVyKHsgcGFzc2l2ZTogZmFsc2UgfSk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHBhc3NpdmVMaXN0ZW5lcigpOiBib29sZWFuIHwgQWRkRXZlbnRMaXN0ZW5lck9wdGlvbnMge1xuICAgIHJldHVybiBFdmVudEV4dGVuc2lvbnMuX3Bhc3NpdmVFdmVudExpc3RlbmVyKHsgcGFzc2l2ZTogdHJ1ZSB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgYWN0aXZlQ2FwdHVyZUxpc3RlbmVyKCk6IGJvb2xlYW4gfCBBZGRFdmVudExpc3RlbmVyT3B0aW9ucyB7XG4gICAgcmV0dXJuIEV2ZW50RXh0ZW5zaW9ucy5fcGFzc2l2ZUV2ZW50TGlzdGVuZXIoeyBwYXNzaXZlOiBmYWxzZSwgY2FwdHVyZTogdHJ1ZSB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgZW1wdHlMaXN0ZW5lcigpOiAoKSA9PiB2b2lkIHtcbiAgICByZXR1cm4gKCkgPT4ge307XG4gIH1cbn1cbiJdfQ==
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuZXh0ZW5zaW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZHJhZy10b29sa2l0L2V2ZW50LmV4dGVuc2lvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLGVBQWU7SUFDbEIsTUFBTSxDQUFDLFlBQVksQ0FBVTtJQUU3QixNQUFNLENBQUMsZ0NBQWdDO1FBQzdDLElBQUksZUFBZSxDQUFDLFlBQVksSUFBSSxJQUFJLElBQUksT0FBTyxNQUFNLEtBQUssV0FBVyxFQUFFLENBQUM7WUFDMUUsSUFBSSxDQUFDO2dCQUNILE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsZUFBZSxDQUFDLGFBQWEsRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO2dCQUNsRixlQUFlLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztZQUN0QyxDQUFDO1lBQUMsTUFBTSxDQUFDO2dCQUNQLGVBQWUsQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1lBQ3ZDLENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxlQUFlLENBQUMsWUFBWSxDQUFDO0lBQ3RDLENBQUM7SUFFTyxNQUFNLENBQUMscUJBQXFCLENBQ2xDLE9BQWdDO1FBRWhDLE9BQU8sZUFBZSxDQUFDLGdDQUFnQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7SUFDMUYsQ0FBQztJQUVNLE1BQU0sQ0FBQyxjQUFjO1FBQzFCLE9BQU8sZUFBZSxDQUFDLHFCQUFxQixDQUFDLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVNLE1BQU0sQ0FBQyxlQUFlO1FBQzNCLE9BQU8sZUFBZSxDQUFDLHFCQUFxQixDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVNLE1BQU0sQ0FBQyxxQkFBcUI7UUFDakMsT0FBTyxlQUFlLENBQUMscUJBQXFCLENBQUMsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFFTSxNQUFNLENBQUMsYUFBYTtRQUN6QixPQUFPLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztJQUNsQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgRXZlbnRFeHRlbnNpb25zIHtcbiAgcHJpdmF0ZSBzdGF0aWMgX2lzU3VwcG9ydGVkOiBib29sZWFuO1xuXG4gIHByaXZhdGUgc3RhdGljIF9pc1Bhc3NpdmVFdmVudExpc3RlbmVyU3VwcG9ydGVkKCk6IGJvb2xlYW4ge1xuICAgIGlmIChFdmVudEV4dGVuc2lvbnMuX2lzU3VwcG9ydGVkID09IG51bGwgJiYgdHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCd0ZXN0JywgRXZlbnRFeHRlbnNpb25zLmVtcHR5TGlzdGVuZXIsIHsgcGFzc2l2ZTogdHJ1ZSB9KTtcbiAgICAgICAgRXZlbnRFeHRlbnNpb25zLl9pc1N1cHBvcnRlZCA9IHRydWU7XG4gICAgICB9IGNhdGNoIHtcbiAgICAgICAgRXZlbnRFeHRlbnNpb25zLl9pc1N1cHBvcnRlZCA9IGZhbHNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBFdmVudEV4dGVuc2lvbnMuX2lzU3VwcG9ydGVkO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgX3Bhc3NpdmVFdmVudExpc3RlbmVyKFxuICAgIG9wdGlvbnM6IEFkZEV2ZW50TGlzdGVuZXJPcHRpb25zLFxuICApOiBBZGRFdmVudExpc3RlbmVyT3B0aW9ucyB8IGJvb2xlYW4ge1xuICAgIHJldHVybiBFdmVudEV4dGVuc2lvbnMuX2lzUGFzc2l2ZUV2ZW50TGlzdGVuZXJTdXBwb3J0ZWQoKSA/IG9wdGlvbnMgOiAhIW9wdGlvbnMuY2FwdHVyZTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgYWN0aXZlTGlzdGVuZXIoKTogYm9vbGVhbiB8IEFkZEV2ZW50TGlzdGVuZXJPcHRpb25zIHtcbiAgICByZXR1cm4gRXZlbnRFeHRlbnNpb25zLl9wYXNzaXZlRXZlbnRMaXN0ZW5lcih7IHBhc3NpdmU6IGZhbHNlIH0pO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBwYXNzaXZlTGlzdGVuZXIoKTogYm9vbGVhbiB8IEFkZEV2ZW50TGlzdGVuZXJPcHRpb25zIHtcbiAgICByZXR1cm4gRXZlbnRFeHRlbnNpb25zLl9wYXNzaXZlRXZlbnRMaXN0ZW5lcih7IHBhc3NpdmU6IHRydWUgfSk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGFjdGl2ZUNhcHR1cmVMaXN0ZW5lcigpOiBib29sZWFuIHwgQWRkRXZlbnRMaXN0ZW5lck9wdGlvbnMge1xuICAgIHJldHVybiBFdmVudEV4dGVuc2lvbnMuX3Bhc3NpdmVFdmVudExpc3RlbmVyKHsgcGFzc2l2ZTogZmFsc2UsIGNhcHR1cmU6IHRydWUgfSk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGVtcHR5TGlzdGVuZXIoKTogKCkgPT4gdm9pZCB7XG4gICAgcmV0dXJuICgpID0+IHt9O1xuICB9XG59XG4iXX0=
@@ -1,19 +1,24 @@
1
1
  export class IPointerEvent {
2
- event;
3
- target;
2
+ _event;
3
+ _target;
4
4
  get originalEvent() {
5
- return this.event;
5
+ return this._event;
6
6
  }
7
7
  get targetElement() {
8
- return this.target || this.originalEvent.target;
8
+ return this._target || this.originalEvent.target;
9
9
  }
10
- constructor(event, target) {
11
- this.event = event;
12
- this.target = target;
13
- this.event = event;
10
+ get touchEvent() {
11
+ return this._event;
12
+ }
13
+ get touches() {
14
+ return this.touchEvent.touches;
15
+ }
16
+ constructor(_event, _target) {
17
+ this._event = _event;
18
+ this._target = _target;
14
19
  }
15
20
  setTarget(target) {
16
- this.target = target;
21
+ this._target = target;
17
22
  }
18
23
  preventDefault() {
19
24
  this.originalEvent.preventDefault();
@@ -22,4 +27,4 @@ export class IPointerEvent {
22
27
  return this.targetElement.closest('[fLockedContext]') !== null;
23
28
  }
24
29
  }
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1wb2ludGVyLWV2ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kcmFnLXRvb2xraXQvcG9pbnRlci1ldmVudHMvaS1wb2ludGVyLWV2ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBZ0IsYUFBYTtJQVVNO0lBQTBDO0lBUmpGLElBQVcsYUFBYTtRQUN0QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQVcsYUFBYTtRQUN0QixPQUFPLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFxQixDQUFDO0lBQ2pFLENBQUM7SUFFRCxZQUF1QyxLQUFnQyxFQUFVLE1BQW9CO1FBQTlELFVBQUssR0FBTCxLQUFLLENBQTJCO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBYztRQUNuRyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBRU0sU0FBUyxDQUFDLE1BQW1CO1FBQ2xDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFNTSxjQUFjO1FBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDdEMsQ0FBQztJQUlELElBQVcsc0JBQXNCO1FBQy9CLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsS0FBSyxJQUFJLENBQUM7SUFDakUsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGFic3RyYWN0IGNsYXNzIElQb2ludGVyRXZlbnQge1xuXG4gIHB1YmxpYyBnZXQgb3JpZ2luYWxFdmVudCgpOiAoTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpIHtcbiAgICByZXR1cm4gdGhpcy5ldmVudDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdGFyZ2V0RWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMudGFyZ2V0IHx8IHRoaXMub3JpZ2luYWxFdmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG4gIH1cblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBldmVudDogKE1vdXNlRXZlbnQgfCBUb3VjaEV2ZW50KSwgcHJpdmF0ZSB0YXJnZXQ/OiBIVE1MRWxlbWVudCkge1xuICAgIHRoaXMuZXZlbnQgPSBldmVudDtcbiAgfVxuXG4gIHB1YmxpYyBzZXRUYXJnZXQodGFyZ2V0OiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgIHRoaXMudGFyZ2V0ID0gdGFyZ2V0O1xuICB9XG5cbiAgcHVibGljIGFic3RyYWN0IGlzTW91c2VMZWZ0QnV0dG9uKCk6IGJvb2xlYW47XG5cbiAgcHVibGljIGFic3RyYWN0IGlzTW91c2VSaWdodEJ1dHRvbigpOiBib29sZWFuO1xuXG4gIHB1YmxpYyBwcmV2ZW50RGVmYXVsdCgpOiB2b2lkIHtcbiAgICB0aGlzLm9yaWdpbmFsRXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgfVxuXG4gIHB1YmxpYyBhYnN0cmFjdCBnZXRQb3NpdGlvbigpOiB7IHg6IG51bWJlciwgeTogbnVtYmVyIH07XG5cbiAgcHVibGljIGdldCBpc0V2ZW50SW5Mb2NrZWRDb250ZXh0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnRhcmdldEVsZW1lbnQuY2xvc2VzdCgnW2ZMb2NrZWRDb250ZXh0XScpICE9PSBudWxsO1xuICB9XG59XG4iXX0=
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1wb2ludGVyLWV2ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9kcmFnLXRvb2xraXQvcG9pbnRlci1ldmVudHMvaS1wb2ludGVyLWV2ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBZ0IsYUFBYTtJQWtCZDtJQUNUO0lBbEJWLElBQVcsYUFBYTtRQUN0QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVELElBQVcsYUFBYTtRQUN0QixPQUFPLElBQUksQ0FBQyxPQUFPLElBQUssSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFzQixDQUFDO0lBQ3BFLENBQUM7SUFFRCxJQUFXLFVBQVU7UUFDbkIsT0FBTyxJQUFJLENBQUMsTUFBb0IsQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUM7SUFDakMsQ0FBQztJQUVELFlBQ21CLE1BQStCLEVBQ3hDLE9BQXFCO1FBRFosV0FBTSxHQUFOLE1BQU0sQ0FBeUI7UUFDeEMsWUFBTyxHQUFQLE9BQU8sQ0FBYztJQUM1QixDQUFDO0lBRUcsU0FBUyxDQUFDLE1BQW1CO1FBQ2xDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO0lBQ3hCLENBQUM7SUFNTSxjQUFjO1FBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDdEMsQ0FBQztJQUlELElBQVcsc0JBQXNCO1FBQy9CLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsS0FBSyxJQUFJLENBQUM7SUFDakUsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGFic3RyYWN0IGNsYXNzIElQb2ludGVyRXZlbnQge1xuICBwdWJsaWMgZ2V0IG9yaWdpbmFsRXZlbnQoKTogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQge1xuICAgIHJldHVybiB0aGlzLl9ldmVudDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdGFyZ2V0RWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuX3RhcmdldCB8fCAodGhpcy5vcmlnaW5hbEV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHRvdWNoRXZlbnQoKTogVG91Y2hFdmVudCB7XG4gICAgcmV0dXJuIHRoaXMuX2V2ZW50IGFzIFRvdWNoRXZlbnQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHRvdWNoZXMoKTogVG91Y2hMaXN0IHtcbiAgICByZXR1cm4gdGhpcy50b3VjaEV2ZW50LnRvdWNoZXM7XG4gIH1cblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBfZXZlbnQ6IE1vdXNlRXZlbnQgfCBUb3VjaEV2ZW50LFxuICAgIHByaXZhdGUgX3RhcmdldD86IEhUTUxFbGVtZW50LFxuICApIHt9XG5cbiAgcHVibGljIHNldFRhcmdldCh0YXJnZXQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgdGhpcy5fdGFyZ2V0ID0gdGFyZ2V0O1xuICB9XG5cbiAgcHVibGljIGFic3RyYWN0IGlzTW91c2VMZWZ0QnV0dG9uKCk6IGJvb2xlYW47XG5cbiAgcHVibGljIGFic3RyYWN0IGlzTW91c2VSaWdodEJ1dHRvbigpOiBib29sZWFuO1xuXG4gIHB1YmxpYyBwcmV2ZW50RGVmYXVsdCgpOiB2b2lkIHtcbiAgICB0aGlzLm9yaWdpbmFsRXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgfVxuXG4gIHB1YmxpYyBhYnN0cmFjdCBnZXRQb3NpdGlvbigpOiB7IHg6IG51bWJlcjsgeTogbnVtYmVyIH07XG5cbiAgcHVibGljIGdldCBpc0V2ZW50SW5Mb2NrZWRDb250ZXh0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnRhcmdldEVsZW1lbnQuY2xvc2VzdCgnW2ZMb2NrZWRDb250ZXh0XScpICE9PSBudWxsO1xuICB9XG59XG4iXX0=
@@ -6,4 +6,4 @@ export class FCanvasChangeEvent {
6
6
  this.scale = scale;
7
7
  }
8
8
  }
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jYW52YXMtY2hhbmdlLmV2ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNhbnZhcy9kb21haW4vZi1jYW52YXMtY2hhbmdlLmV2ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxrQkFBa0I7SUFFWDtJQUNBO0lBRmxCLFlBQ2tCLFFBQWdCLEVBQ2hCLEtBQWE7UUFEYixhQUFRLEdBQVIsUUFBUSxDQUFRO1FBQ2hCLFVBQUssR0FBTCxLQUFLLENBQVE7SUFFL0IsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnQGZvYmxleC8yZCc7XG5cbmV4cG9ydCBjbGFzcyBGQ2FudmFzQ2hhbmdlRXZlbnQge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgcG9zaXRpb246IElQb2ludCxcbiAgICBwdWJsaWMgcmVhZG9ubHkgc2NhbGU6IG51bWJlcixcbiAgKSB7XG4gIH1cbn1cbiJdfQ==
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jYW52YXMtY2hhbmdlLWV2ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNhbnZhcy9kb21haW4vZi1jYW52YXMtY2hhbmdlLWV2ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxrQkFBa0I7SUFFWDtJQUNBO0lBRmxCLFlBQ2tCLFFBQWdCLEVBQ2hCLEtBQWE7UUFEYixhQUFRLEdBQVIsUUFBUSxDQUFRO1FBQ2hCLFVBQUssR0FBTCxLQUFLLENBQVE7SUFDNUIsQ0FBQztDQUNMIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnQGZvYmxleC8yZCc7XG5cbmV4cG9ydCBjbGFzcyBGQ2FudmFzQ2hhbmdlRXZlbnQge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgcG9zaXRpb246IElQb2ludCxcbiAgICBwdWJsaWMgcmVhZG9ubHkgc2NhbGU6IG51bWJlcixcbiAgKSB7fVxufVxuIl19
@@ -1,2 +1,2 @@
1
- export * from './f-canvas-change.event';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY2FudmFzL2RvbWFpbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mLWNhbnZhcy1jaGFuZ2UuZXZlbnQnO1xuIl19
1
+ export * from './f-canvas-change-event';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY2FudmFzL2RvbWFpbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mLWNhbnZhcy1jaGFuZ2UtZXZlbnQnO1xuIl19
@@ -1,13 +1,13 @@
1
1
  import { PointExtensions, TransformModelExtensions } from '@foblex/2d';
2
- import { DestroyRef, Directive, inject, InjectionToken } from '@angular/core';
2
+ import { DestroyRef, Directive, inject, InjectionToken, } from '@angular/core';
3
3
  import { FCanvasChangeEvent } from './domain';
4
- import { debounceTime, FChannel, FChannelHub } from "../reactivity";
4
+ import { debounceTime, FChannel, FChannelHub } from '../reactivity';
5
5
  import * as i0 from "@angular/core";
6
6
  export const F_CANVAS = new InjectionToken('F_CANVAS');
7
7
  export class FCanvasBase {
8
8
  transform = TransformModelExtensions.default();
9
9
  _fCanvasChange = new FChannel();
10
- _destroyRef = inject(DestroyRef);
10
+ destroyRef = inject(DestroyRef);
11
11
  getPosition() {
12
12
  return this.transform.position;
13
13
  }
@@ -18,7 +18,9 @@ export class FCanvasBase {
18
18
  this._fCanvasChange.notify();
19
19
  }
20
20
  subscribeOnCanvasChange() {
21
- new FChannelHub(this._fCanvasChange).pipe(debounceTime(this.debounce())).listen(this._destroyRef, () => {
21
+ new FChannelHub(this._fCanvasChange)
22
+ .pipe(debounceTime(this.debounce()))
23
+ .listen(this.destroyRef, () => {
22
24
  this.fCanvasChange.emit(new FCanvasChangeEvent(PointExtensions.sum(this.transform.position, this.transform.scaledPosition), this.transform.scale));
23
25
  });
24
26
  }
@@ -28,4 +30,4 @@ export class FCanvasBase {
28
30
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FCanvasBase, decorators: [{
29
31
  type: Directive
30
32
  }] });
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jYW52YXMtYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jYW52YXMvZi1jYW52YXMtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLHdCQUF3QixFQUFVLE1BQU0sWUFBWSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFjLE1BQU0sRUFBRSxjQUFjLEVBQTRCLE1BQU0sZUFBZSxDQUFDO0FBQ3BILE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUU5QyxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRXBFLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxJQUFJLGNBQWMsQ0FBYyxVQUFVLENBQUMsQ0FBQztBQUdwRSxNQUFNLE9BQWdCLFdBQVc7SUFZeEIsU0FBUyxHQUFHLHdCQUF3QixDQUFDLE9BQU8sRUFBRSxDQUFDO0lBSXJDLGNBQWMsR0FBRyxJQUFJLFFBQVEsRUFBRSxDQUFDO0lBQ2hDLFdBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFNM0MsV0FBVztRQUNoQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDO0lBQ2pDLENBQUM7SUFFTSxXQUFXLENBQUMsUUFBZ0I7UUFDakMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQ3JDLENBQUM7SUFNTSxxQkFBcUI7UUFDMUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRVMsdUJBQXVCO1FBQy9CLElBQUksV0FBVyxDQUNiLElBQUksQ0FBQyxjQUFjLENBQ3BCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEdBQUcsRUFBRTtZQUNsRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FDckIsSUFBSSxrQkFBa0IsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FDMUgsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt3R0EvQ21CLFdBQVc7NEZBQVgsV0FBVzs7NEZBQVgsV0FBVztrQkFEaEMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBvaW50RXh0ZW5zaW9ucywgVHJhbnNmb3JtTW9kZWxFeHRlbnNpb25zLCBJUG9pbnQgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IERlc3Ryb3lSZWYsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiwgT3V0cHV0RW1pdHRlclJlZiwgU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGQ2FudmFzQ2hhbmdlRXZlbnQgfSBmcm9tICcuL2RvbWFpbic7XG5pbXBvcnQgeyBJSGFzSG9zdEVsZW1lbnQgfSBmcm9tICcuLi9pLWhhcy1ob3N0LWVsZW1lbnQnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBGQ2hhbm5lbCwgRkNoYW5uZWxIdWIgfSBmcm9tIFwiLi4vcmVhY3Rpdml0eVwiO1xuXG5leHBvcnQgY29uc3QgRl9DQU5WQVMgPSBuZXcgSW5qZWN0aW9uVG9rZW48RkNhbnZhc0Jhc2U+KCdGX0NBTlZBUycpO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGQ2FudmFzQmFzZSBpbXBsZW1lbnRzIElIYXNIb3N0RWxlbWVudCB7XG5cbiAgcHVibGljIGFic3RyYWN0IGZDYW52YXNDaGFuZ2U6IE91dHB1dEVtaXR0ZXJSZWY8RkNhbnZhc0NoYW5nZUV2ZW50PjtcblxuICBwdWJsaWMgYWJzdHJhY3QgaG9zdEVsZW1lbnQ6IEhUTUxFbGVtZW50O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmR3JvdXBzQ29udGFpbmVyOiBTaWduYWw8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmTm9kZXNDb250YWluZXI6IFNpZ25hbDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj47XG5cbiAgcHVibGljIGFic3RyYWN0IGZDb25uZWN0aW9uc0NvbnRhaW5lcjogU2lnbmFsPEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PjtcblxuICBwdWJsaWMgdHJhbnNmb3JtID0gVHJhbnNmb3JtTW9kZWxFeHRlbnNpb25zLmRlZmF1bHQoKTtcblxuICBwdWJsaWMgYWJzdHJhY3QgZGVib3VuY2U6IFNpZ25hbDxudW1iZXI+O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2ZDYW52YXNDaGFuZ2UgPSBuZXcgRkNoYW5uZWwoKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcblxuICBwdWJsaWMgYWJzdHJhY3QgcmVkcmF3KCk6IHZvaWQ7XG5cbiAgcHVibGljIGFic3RyYWN0IHJlZHJhd1dpdGhBbmltYXRpb24oKTogdm9pZDtcblxuICBwdWJsaWMgZ2V0UG9zaXRpb24oKTogSVBvaW50IHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm0ucG9zaXRpb247XG4gIH1cblxuICBwdWJsaWMgc2V0UG9zaXRpb24ocG9zaXRpb246IElQb2ludCk6IHZvaWQge1xuICAgIHRoaXMudHJhbnNmb3JtLnBvc2l0aW9uID0gcG9zaXRpb247XG4gIH1cblxuICBwdWJsaWMgYWJzdHJhY3Qgc2V0U2NhbGUoc2NhbGU6IG51bWJlciwgdG9Qb3NpdGlvbjogSVBvaW50KTogdm9pZDtcblxuICBwdWJsaWMgYWJzdHJhY3QgcmVzZXRTY2FsZSgpOiB2b2lkO1xuXG4gIHB1YmxpYyBlbWl0Q2FudmFzQ2hhbmdlRXZlbnQoKTogdm9pZCB7XG4gICAgdGhpcy5fZkNhbnZhc0NoYW5nZS5ub3RpZnkoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzdWJzY3JpYmVPbkNhbnZhc0NoYW5nZSgpOiB2b2lkIHtcbiAgICBuZXcgRkNoYW5uZWxIdWIoXG4gICAgICB0aGlzLl9mQ2FudmFzQ2hhbmdlLFxuICAgICkucGlwZShkZWJvdW5jZVRpbWUodGhpcy5kZWJvdW5jZSgpKSkubGlzdGVuKHRoaXMuX2Rlc3Ryb3lSZWYsICgpID0+IHtcbiAgICAgIHRoaXMuZkNhbnZhc0NoYW5nZS5lbWl0KFxuICAgICAgICBuZXcgRkNhbnZhc0NoYW5nZUV2ZW50KFBvaW50RXh0ZW5zaW9ucy5zdW0odGhpcy50cmFuc2Zvcm0ucG9zaXRpb24sIHRoaXMudHJhbnNmb3JtLnNjYWxlZFBvc2l0aW9uKSwgdGhpcy50cmFuc2Zvcm0uc2NhbGUpLFxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jYW52YXMtYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1jYW52YXMvZi1jYW52YXMtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLHdCQUF3QixFQUFVLE1BQU0sWUFBWSxDQUFDO0FBQy9FLE9BQU8sRUFDTCxVQUFVLEVBQ1YsU0FBUyxFQUVULE1BQU0sRUFDTixjQUFjLEdBR2YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRTlDLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFcEUsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLElBQUksY0FBYyxDQUFjLFVBQVUsQ0FBQyxDQUFDO0FBR3BFLE1BQU0sT0FBZ0IsV0FBVztJQVd4QixTQUFTLEdBQUcsd0JBQXdCLENBQUMsT0FBTyxFQUFFLENBQUM7SUFJckMsY0FBYyxHQUFHLElBQUksUUFBUSxFQUFFLENBQUM7SUFDOUIsVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQU01QyxXQUFXO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUM7SUFDakMsQ0FBQztJQUVNLFdBQVcsQ0FBQyxRQUFnQjtRQUNqQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDckMsQ0FBQztJQU1NLHFCQUFxQjtRQUMxQixJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFUyx1QkFBdUI7UUFDL0IsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQzthQUNqQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO2FBQ25DLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLEdBQUcsRUFBRTtZQUM1QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FDckIsSUFBSSxrQkFBa0IsQ0FDcEIsZUFBZSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxFQUMzRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FDckIsQ0FDRixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO3dHQWpEbUIsV0FBVzs0RkFBWCxXQUFXOzs0RkFBWCxXQUFXO2tCQURoQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUG9pbnRFeHRlbnNpb25zLCBUcmFuc2Zvcm1Nb2RlbEV4dGVuc2lvbnMsIElQb2ludCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuaW1wb3J0IHtcbiAgRGVzdHJveVJlZixcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBpbmplY3QsXG4gIEluamVjdGlvblRva2VuLFxuICBPdXRwdXRFbWl0dGVyUmVmLFxuICBTaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkNhbnZhc0NoYW5nZUV2ZW50IH0gZnJvbSAnLi9kb21haW4nO1xuaW1wb3J0IHsgSUhhc0hvc3RFbGVtZW50IH0gZnJvbSAnLi4vaS1oYXMtaG9zdC1lbGVtZW50JztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgRkNoYW5uZWwsIEZDaGFubmVsSHViIH0gZnJvbSAnLi4vcmVhY3Rpdml0eSc7XG5cbmV4cG9ydCBjb25zdCBGX0NBTlZBUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxGQ2FudmFzQmFzZT4oJ0ZfQ0FOVkFTJyk7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEZDYW52YXNCYXNlIGltcGxlbWVudHMgSUhhc0hvc3RFbGVtZW50IHtcbiAgcHVibGljIGFic3RyYWN0IGZDYW52YXNDaGFuZ2U6IE91dHB1dEVtaXR0ZXJSZWY8RkNhbnZhc0NoYW5nZUV2ZW50PjtcblxuICBwdWJsaWMgYWJzdHJhY3QgaG9zdEVsZW1lbnQ6IEhUTUxFbGVtZW50O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmR3JvdXBzQ29udGFpbmVyOiBTaWduYWw8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+O1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBmTm9kZXNDb250YWluZXI6IFNpZ25hbDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj47XG5cbiAgcHVibGljIGFic3RyYWN0IGZDb25uZWN0aW9uc0NvbnRhaW5lcjogU2lnbmFsPEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PjtcblxuICBwdWJsaWMgdHJhbnNmb3JtID0gVHJhbnNmb3JtTW9kZWxFeHRlbnNpb25zLmRlZmF1bHQoKTtcblxuICBwdWJsaWMgYWJzdHJhY3QgZGVib3VuY2U6IFNpZ25hbDxudW1iZXI+O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2ZDYW52YXNDaGFuZ2UgPSBuZXcgRkNoYW5uZWwoKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG5cbiAgcHVibGljIGFic3RyYWN0IHJlZHJhdygpOiB2b2lkO1xuXG4gIHB1YmxpYyBhYnN0cmFjdCByZWRyYXdXaXRoQW5pbWF0aW9uKCk6IHZvaWQ7XG5cbiAgcHVibGljIGdldFBvc2l0aW9uKCk6IElQb2ludCB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNmb3JtLnBvc2l0aW9uO1xuICB9XG5cbiAgcHVibGljIHNldFBvc2l0aW9uKHBvc2l0aW9uOiBJUG9pbnQpOiB2b2lkIHtcbiAgICB0aGlzLnRyYW5zZm9ybS5wb3NpdGlvbiA9IHBvc2l0aW9uO1xuICB9XG5cbiAgcHVibGljIGFic3RyYWN0IHNldFNjYWxlKHNjYWxlOiBudW1iZXIsIHRvUG9zaXRpb246IElQb2ludCk6IHZvaWQ7XG5cbiAgcHVibGljIGFic3RyYWN0IHJlc2V0U2NhbGUoKTogdm9pZDtcblxuICBwdWJsaWMgZW1pdENhbnZhc0NoYW5nZUV2ZW50KCk6IHZvaWQge1xuICAgIHRoaXMuX2ZDYW52YXNDaGFuZ2Uubm90aWZ5KCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc3Vic2NyaWJlT25DYW52YXNDaGFuZ2UoKTogdm9pZCB7XG4gICAgbmV3IEZDaGFubmVsSHViKHRoaXMuX2ZDYW52YXNDaGFuZ2UpXG4gICAgICAucGlwZShkZWJvdW5jZVRpbWUodGhpcy5kZWJvdW5jZSgpKSlcbiAgICAgIC5saXN0ZW4odGhpcy5kZXN0cm95UmVmLCAoKSA9PiB7XG4gICAgICAgIHRoaXMuZkNhbnZhc0NoYW5nZS5lbWl0KFxuICAgICAgICAgIG5ldyBGQ2FudmFzQ2hhbmdlRXZlbnQoXG4gICAgICAgICAgICBQb2ludEV4dGVuc2lvbnMuc3VtKHRoaXMudHJhbnNmb3JtLnBvc2l0aW9uLCB0aGlzLnRyYW5zZm9ybS5zY2FsZWRQb3NpdGlvbiksXG4gICAgICAgICAgICB0aGlzLnRyYW5zZm9ybS5zY2FsZSxcbiAgICAgICAgICApLFxuICAgICAgICApO1xuICAgICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,10 +1,10 @@
1
- import { __decorate } from "tslib";
2
- import { ChangeDetectionStrategy, Component, computed, effect, ElementRef, inject, Injector, input, numberAttribute, output, viewChild, } from "@angular/core";
1
+ import { ChangeDetectionStrategy, Component, computed, effect, ElementRef, inject, Injector, input, numberAttribute, output, viewChild, } from '@angular/core';
3
2
  import { F_CANVAS, FCanvasBase } from './f-canvas-base';
4
3
  import { PointExtensions, TransformModelExtensions } from '@foblex/2d';
5
4
  import { FMediator } from '@foblex/mediator';
6
- import { AddCanvasToStoreRequest, CenterGroupOrNodeRequest, Deprecated, FitToFlowRequest, GetFlowRequest, InputCanvasPositionRequest, InputCanvasScaleRequest, isMobile, RemoveCanvasFromStoreRequest, ResetScaleAndCenterRequest, ResetScaleRequest, SetBackgroundTransformRequest, transitionEnd, UpdateScaleRequest, } from '../domain';
7
- import { NotifyTransformChangedRequest } from '../f-storage';
5
+ import { AddCanvasToStoreRequest, CenterGroupOrNodeRequest, FitToFlowRequest, GetFlowRequest, InputCanvasPositionRequest, InputCanvasScaleRequest, isMobile, RemoveCanvasFromStoreRequest, ResetScaleAndCenterRequest, ResetScaleRequest, SetBackgroundTransformRequest, transitionEnd, UpdateScaleRequest, } from '../domain';
6
+ import { ListenDataChangesRequest, NotifyTransformChangedRequest } from '../f-storage';
7
+ import { takeOne } from '../reactivity';
8
8
  import * as i0 from "@angular/core";
9
9
  /**
10
10
  * Component representing a canvas in the F-Flow framework.
@@ -24,7 +24,7 @@ export class FCanvasComponent extends FCanvasBase {
24
24
  position = input(PointExtensions.initialize(), { transform: PointExtensions.castToPoint });
25
25
  scale = input(1, { transform: numberAttribute });
26
26
  debounceTime = input(0, { transform: numberAttribute });
27
- debounce = computed(() => this.debounceTime() < 0 ? 0 : this.debounceTime());
27
+ debounce = computed(() => (this.debounceTime() < 0 ? 0 : this.debounceTime()));
28
28
  get hostElement() {
29
29
  return this._elementReference.nativeElement;
30
30
  }
@@ -56,7 +56,7 @@ export class FCanvasComponent extends FCanvasBase {
56
56
  */
57
57
  redraw() {
58
58
  this._mediator.execute(new SetBackgroundTransformRequest(this.transform));
59
- this.hostElement.setAttribute("style", `transform: ${TransformModelExtensions.toString(this.transform)}`);
59
+ this.hostElement.setAttribute('style', `transform: ${TransformModelExtensions.toString(this.transform)}`);
60
60
  this._mediator.execute(new NotifyTransformChangedRequest());
61
61
  }
62
62
  /**
@@ -66,7 +66,7 @@ export class FCanvasComponent extends FCanvasBase {
66
66
  */
67
67
  redrawWithAnimation() {
68
68
  this._mediator.execute(new SetBackgroundTransformRequest(this.transform));
69
- this.hostElement.setAttribute("style", `transition: transform ${isMobile() ? 80 : 150}ms ease-in-out; transform: ${TransformModelExtensions.toString(this.transform)}`);
69
+ this.hostElement.setAttribute('style', `transition: transform ${isMobile() ? 80 : 150}ms ease-in-out; transform: ${TransformModelExtensions.toString(this.transform)}`);
70
70
  transitionEnd(this.hostElement, () => this.redraw());
71
71
  }
72
72
  /**
@@ -75,7 +75,9 @@ export class FCanvasComponent extends FCanvasBase {
75
75
  * @param animated - If true, the centering will be animated; otherwise, it will be instantaneous.
76
76
  */
77
77
  centerGroupOrNode(groupOrNodeId, animated = true) {
78
- setTimeout(() => this._mediator.execute(new CenterGroupOrNodeRequest(groupOrNodeId, animated)));
78
+ this._afterRedraw(() => {
79
+ this._mediator.execute(new CenterGroupOrNodeRequest(groupOrNodeId, animated));
80
+ });
79
81
  }
80
82
  /**
81
83
  * Fits the canvas to the screen by adjusting the scale and position.
@@ -83,7 +85,9 @@ export class FCanvasComponent extends FCanvasBase {
83
85
  * @param animated - If true, the fit will be animated; otherwise, it will be instantaneous.
84
86
  */
85
87
  fitToScreen(padding = PointExtensions.initialize(), animated = true) {
86
- setTimeout(() => this._mediator.execute(new FitToFlowRequest(padding, animated)));
88
+ this._afterRedraw(() => {
89
+ this._mediator.execute(new FitToFlowRequest(padding, animated));
90
+ });
87
91
  }
88
92
  /**
89
93
  * Resets the scale and center all nodes and groups on the canvas.
@@ -93,7 +97,9 @@ export class FCanvasComponent extends FCanvasBase {
93
97
  * This is useful for providing a smooth user experience when resetting the view.
94
98
  */
95
99
  resetScaleAndCenter(animated = true) {
96
- setTimeout(() => this._mediator.execute(new ResetScaleAndCenterRequest(animated)));
100
+ this._afterRedraw(() => {
101
+ this._mediator.execute(new ResetScaleAndCenterRequest(animated));
102
+ });
97
103
  }
98
104
  /**
99
105
  * Gets the current scale of the canvas.
@@ -101,12 +107,6 @@ export class FCanvasComponent extends FCanvasBase {
101
107
  getScale() {
102
108
  return this.transform.scale || 1;
103
109
  }
104
- /**
105
- * @deprecated Method "setZoom" is deprecated. Use "setScale" instead. This method will be removed in version 18.0.0.`,
106
- */
107
- setZoom(scale, toPosition = PointExtensions.initialize()) {
108
- this.setScale(scale, toPosition);
109
- }
110
110
  /**
111
111
  * Sets the scale of the canvas to a specified value.
112
112
  * This method is used to zoom in or out of the canvas,
@@ -117,12 +117,6 @@ export class FCanvasComponent extends FCanvasBase {
117
117
  setScale(scale, toPosition = PointExtensions.initialize()) {
118
118
  this._mediator.execute(new UpdateScaleRequest(scale, toPosition));
119
119
  }
120
- /**
121
- * @deprecated Method "resetZoom" is deprecated. Use "resetScale" instead. This method will be removed in version 18.0.0.`,
122
- */
123
- resetZoom() {
124
- this.resetScale();
125
- }
126
120
  /**
127
121
  * Resets the scale of the canvas to its default value.
128
122
  * This method is used to restore the canvas to its original scale.
@@ -133,23 +127,19 @@ export class FCanvasComponent extends FCanvasBase {
133
127
  ngOnDestroy() {
134
128
  this._mediator.execute(new RemoveCanvasFromStoreRequest());
135
129
  }
130
+ _afterRedraw(callback) {
131
+ this._mediator
132
+ .execute(new ListenDataChangesRequest())
133
+ .pipe(takeOne())
134
+ .listen(this.destroyRef, callback);
135
+ }
136
136
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FCanvasComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
137
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.13", type: FCanvasComponent, isStandalone: true, selector: "f-canvas", inputs: { position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null }, scale: { classPropertyName: "scale", publicName: "scale", isSignal: true, isRequired: false, transformFunction: null }, debounceTime: { classPropertyName: "debounceTime", publicName: "debounceTime", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { fCanvasChange: "fCanvasChange" }, host: { classAttribute: "f-component f-canvas" }, providers: [
138
- { provide: F_CANVAS, useExisting: FCanvasComponent },
139
- ], viewQueries: [{ propertyName: "fGroupsContainer", first: true, predicate: ["fGroupsContainer"], descendants: true, isSignal: true }, { propertyName: "fNodesContainer", first: true, predicate: ["fNodesContainer"], descendants: true, isSignal: true }, { propertyName: "fConnectionsContainer", first: true, predicate: ["fConnectionsContainer"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ng-container>\n <div #fGroupsContainer>\n <ng-content select=\"[fGroup]\"></ng-content>\n </div>\n <div #fConnectionsContainer>\n <ng-content select=\"f-snap-connection\"></ng-content>\n <ng-content select=\"f-connection\"></ng-content>\n <ng-content select=\"f-connection-for-create\"></ng-content>\n </div>\n\n <div #fNodesContainer>\n <ng-content select=\"[fNode]\"></ng-content>\n </div>\n</ng-container>\n", styles: [":host{position:absolute;overflow:visible;width:100%;height:100%;left:0;top:0;transform-origin:0 0;pointer-events:none}:host.canvas-dragging{will-change:transform;transform:translateZ(0)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
137
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.13", type: FCanvasComponent, isStandalone: true, selector: "f-canvas", inputs: { position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null }, scale: { classPropertyName: "scale", publicName: "scale", isSignal: true, isRequired: false, transformFunction: null }, debounceTime: { classPropertyName: "debounceTime", publicName: "debounceTime", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { fCanvasChange: "fCanvasChange" }, host: { classAttribute: "f-component f-canvas" }, providers: [{ provide: F_CANVAS, useExisting: FCanvasComponent }], viewQueries: [{ propertyName: "fGroupsContainer", first: true, predicate: ["fGroupsContainer"], descendants: true, isSignal: true }, { propertyName: "fNodesContainer", first: true, predicate: ["fNodesContainer"], descendants: true, isSignal: true }, { propertyName: "fConnectionsContainer", first: true, predicate: ["fConnectionsContainer"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ng-container>\n <div #fGroupsContainer>\n <ng-content select=\"[fGroup], [fGroups]\" />\n </div>\n <div #fConnectionsContainer class=\"f-connections-container\">\n <ng-content select=\"f-snap-connection\" />\n <ng-content select=\"f-connection, [fConnections]\" />\n <ng-content select=\"f-connection-for-create\" />\n </div>\n\n <div #fNodesContainer>\n <ng-content select=\"[fNode], [fNodes]\" />\n </div>\n</ng-container>\n", styles: [":host{position:absolute;overflow:visible;width:100%;height:100%;left:0;top:0;transform-origin:0 0;pointer-events:none}:host.canvas-dragging{transform:translateZ(0)}.f-connections-container{position:absolute;z-index:2}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
140
138
  }
141
- __decorate([
142
- Deprecated('setScale')
143
- ], FCanvasComponent.prototype, "setZoom", null);
144
- __decorate([
145
- Deprecated('resetScale')
146
- ], FCanvasComponent.prototype, "resetZoom", null);
147
139
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FCanvasComponent, decorators: [{
148
140
  type: Component,
149
141
  args: [{ selector: 'f-canvas', standalone: true, host: {
150
142
  'class': 'f-component f-canvas',
151
- }, providers: [
152
- { provide: F_CANVAS, useExisting: FCanvasComponent },
153
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container>\n <div #fGroupsContainer>\n <ng-content select=\"[fGroup]\"></ng-content>\n </div>\n <div #fConnectionsContainer>\n <ng-content select=\"f-snap-connection\"></ng-content>\n <ng-content select=\"f-connection\"></ng-content>\n <ng-content select=\"f-connection-for-create\"></ng-content>\n </div>\n\n <div #fNodesContainer>\n <ng-content select=\"[fNode]\"></ng-content>\n </div>\n</ng-container>\n", styles: [":host{position:absolute;overflow:visible;width:100%;height:100%;left:0;top:0;transform-origin:0 0;pointer-events:none}:host.canvas-dragging{will-change:transform;transform:translateZ(0)}\n"] }]
154
- }], propDecorators: { setZoom: [], resetZoom: [] } });
155
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jYW52YXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNhbnZhcy9mLWNhbnZhcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY2FudmFzL2YtY2FudmFzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFVBQVUsRUFDVixNQUFNLEVBQ04sUUFBUSxFQUNSLEtBQUssRUFDTCxlQUFlLEVBR2YsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBVSxlQUFlLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFL0UsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzdDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsd0JBQXdCLEVBQ3hCLFVBQVUsRUFDVixnQkFBZ0IsRUFDaEIsY0FBYyxFQUNkLDBCQUEwQixFQUMxQix1QkFBdUIsRUFDdkIsUUFBUSxFQUNSLDRCQUE0QixFQUM1QiwwQkFBMEIsRUFDMUIsaUJBQWlCLEVBQ2pCLDZCQUE2QixFQUM3QixhQUFhLEVBQ2Isa0JBQWtCLEdBQ25CLE1BQU0sV0FBVyxDQUFDO0FBQ25CLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFHN0Q7Ozs7Ozs7O0dBUUc7QUFjSCxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsV0FBVztJQUU5QixTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlCLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJ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LENBQUMsTUFBTTs4QkE2R3hDLE9BQU8sTUFtQlAsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIGNvbXB1dGVkLFxuICBlZmZlY3QsXG4gIEVsZW1lbnRSZWYsXG4gIGluamVjdCxcbiAgSW5qZWN0b3IsXG4gIGlucHV0LFxuICBudW1iZXJBdHRyaWJ1dGUsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBvdXRwdXQsXG4gIHZpZXdDaGlsZCxcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEZfQ0FOVkFTLCBGQ2FudmFzQmFzZSB9IGZyb20gJy4vZi1jYW52YXMtYmFzZSc7XG5pbXBvcnQgeyBJUG9pbnQsIFBvaW50RXh0ZW5zaW9ucywgVHJhbnNmb3JtTW9kZWxFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBGQ2FudmFzQ2hhbmdlRXZlbnQgfSBmcm9tICcuL2RvbWFpbic7XG5pbXBvcnQgeyBGTWVkaWF0b3IgfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcbmltcG9ydCB7XG4gIEFkZENhbnZhc1RvU3RvcmVSZXF1ZXN0LFxuICBDZW50ZXJHcm91cE9yTm9kZVJlcXVlc3QsXG4gIERlcHJlY2F0ZWQsXG4gIEZpdFRvRmxvd1JlcXVlc3QsXG4gIEdldEZsb3dSZXF1ZXN0LFxuICBJbnB1dENhbnZhc1Bvc2l0aW9uUmVxdWVzdCxcbiAgSW5wdXRDYW52YXNTY2FsZVJlcXVlc3QsXG4gIGlzTW9iaWxlLFxuICBSZW1vdmVDYW52YXNGcm9tU3RvcmVSZXF1ZXN0LFxuICBSZXNldFNjYWxlQW5kQ2VudGVyUmVxdWVzdCxcbiAgUmVzZXRTY2FsZVJlcXVlc3QsXG4gIFNldEJhY2tncm91bmRUcmFuc2Zvcm1SZXF1ZXN0LFxuICB0cmFuc2l0aW9uRW5kLFxuICBVcGRhdGVTY2FsZVJlcXVlc3QsXG59IGZyb20gJy4uL2RvbWFpbic7XG5pbXBvcnQgeyBOb3RpZnlUcmFuc2Zvcm1DaGFuZ2VkUmVxdWVzdCB9IGZyb20gJy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGRmxvd0Jhc2UgfSBmcm9tICcuLi9mLWZsb3cnO1xuXG4vKipcbiAqIENvbXBvbmVudCByZXByZXNlbnRpbmcgYSBjYW52YXMgaW4gdGhlIEYtRmxvdyBmcmFtZXdvcmsuXG4gKiBJdCBoYW5kbGVzIHRoZSByZW5kZXJpbmcgb2Ygbm9kZXMsIGNvbm5lY3Rpb25zLCBhbmQgZ3JvdXBzLFxuICogYXMgd2VsbCBhcyB1c2VyIGludGVyYWN0aW9ucyBzdWNoIGFzIHpvb21pbmcgYW5kIHBhbm5pbmcuXG4gKiBJdCBleHRlbmRzIHRoZSBGQ2FudmFzQmFzZSBjbGFzcyBhbmQgaW1wbGVtZW50cyBPbkluaXQgYW5kIE9uRGVzdHJveSBsaWZlY3ljbGUgaG9va3MuXG4gKiBJdCBwcm92aWRlcyBtZXRob2RzIHRvIG1hbmlwdWxhdGUgdGhlIGNhbnZhcywgc3VjaCBhcyBjZW50ZXJpbmcgbm9kZXMgb3IgZ3JvdXBzLFxuICogZml0dGluZyB0aGUgY2FudmFzIHRvIHRoZSBzY3JlZW4sIGFuZCByZXNldHRpbmcgdGhlIHNjYWxlLlxuICogSXQgYWxzbyBlbWl0cyBldmVudHMgd2hlbiB0aGUgY2FudmFzIGNoYW5nZXMsIGFsbG93aW5nIG90aGVyIGNvbXBvbmVudHMgdG8gcmVhY3QgdG8gdGhlc2UgY2hhbmdlcy5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZi1jYW52YXMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZi1jYW52YXMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9mLWNhbnZhcy5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBob3N0OiB7XG4gICAgJ2NsYXNzJzogJ2YtY29tcG9uZW50IGYtY2FudmFzJyxcbiAgfSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgeyBwcm92aWRlOiBGX0NBTlZBUywgdXNlRXhpc3Rpbmc6IEZDYW52YXNDb21wb25lbnQgfSxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEZDYW52YXNDb21wb25lbnQgZXh0ZW5kcyBGQ2FudmFzQmFzZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRvciA9IGluamVjdChGTWVkaWF0b3IpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9lbGVtZW50UmVmZXJlbmNlID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9pbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG5cbiAgcHJpdmF0ZSBfZmxvd0lkOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIG92ZXJyaWRlIGZDYW52YXNDaGFuZ2UgPSBvdXRwdXQ8RkNhbnZhc0NoYW5nZUV2ZW50PigpO1xuXG4gIHB1YmxpYyByZWFkb25seSBwb3NpdGlvbiA9IGlucHV0PElQb2ludCwgSVBvaW50IHwgbnVsbCB8IHVuZGVmaW5lZD4oUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoKSwgeyB0cmFuc2Zvcm06IFBvaW50RXh0ZW5zaW9ucy5jYXN0VG9Qb2ludCB9KTtcbiAgcHVibGljIHJlYWRvbmx5IHNjYWxlID0gaW5wdXQ8bnVtYmVyLCB1bmtub3duPigxLCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pO1xuICBwdWJsaWMgcmVhZG9ubHkgZGVib3VuY2VUaW1lID0gaW5wdXQ8bnVtYmVyLCB1bmtub3duPigwLCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pO1xuICBwdWJsaWMgb3ZlcnJpZGUgZGVib3VuY2UgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmRlYm91bmNlVGltZSgpIDwgMCA/IDAgOiB0aGlzLmRlYm91bmNlVGltZSgpKTtcblxuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IGhvc3RFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5fZWxlbWVudFJlZmVyZW5jZS5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGZHcm91cHNDb250YWluZXIgPSB2aWV3Q2hpbGQucmVxdWlyZWQ8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KCdmR3JvdXBzQ29udGFpbmVyJyk7XG4gIHB1YmxpYyBvdmVycmlkZSBmTm9kZXNDb250YWluZXIgPSB2aWV3Q2hpbGQucmVxdWlyZWQ8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KCdmTm9kZXNDb250YWluZXInKTtcbiAgcHVibGljIG92ZXJyaWRlIGZDb25uZWN0aW9uc0NvbnRhaW5lciA9IHZpZXdDaGlsZC5yZXF1aXJlZDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oJ2ZDb25uZWN0aW9uc0NvbnRhaW5lcicpO1xuXG4gIHB1YmxpYyBnZXQgZmxvd0lkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2Zsb3dJZCE7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fZmxvd0lkID0gdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZTxGRmxvd0Jhc2U+KG5ldyBHZXRGbG93UmVxdWVzdCgpKS5mSWQoKTtcbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBBZGRDYW52YXNUb1N0b3JlUmVxdWVzdCh0aGlzKSk7XG4gICAgdGhpcy5fcG9zaXRpb25DaGFuZ2UoKTtcbiAgICB0aGlzLl9zY2FsZUNoYW5nZSgpO1xuICAgIHN1cGVyLnN1YnNjcmliZU9uQ2FudmFzQ2hhbmdlKCk7XG4gIH1cblxuICBwcml2YXRlIF9wb3NpdGlvbkNoYW5nZSgpOiB2b2lkIHtcbiAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgSW5wdXRDYW52YXNQb3NpdGlvblJlcXVlc3QodGhpcy50cmFuc2Zvcm0sIHRoaXMucG9zaXRpb24oKSkpO1xuICAgIH0sIHsgaW5qZWN0b3I6IHRoaXMuX2luamVjdG9yIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2NhbGVDaGFuZ2UoKTogdm9pZCB7XG4gICAgZWZmZWN0KCgpID0+IHtcbiAgICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUobmV3IElucHV0Q2FudmFzU2NhbGVSZXF1ZXN0KHRoaXMudHJhbnNmb3JtLCB0aGlzLnNjYWxlKCkpKTtcbiAgICB9LCB7IGluamVjdG9yOiB0aGlzLl9pbmplY3RvciB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWRyYXdzIHRoZSBjYW52YXMgYnkgYXBwbHlpbmcgdGhlIGN1cnJlbnQgdHJhbnNmb3JtYXRpb24uXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgcmVkcmF3KCk6IHZvaWQge1xuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUobmV3IFNldEJhY2tncm91bmRUcmFuc2Zvcm1SZXF1ZXN0KHRoaXMudHJhbnNmb3JtKSk7XG4gICAgdGhpcy5ob3N0RWxlbWVudC5zZXRBdHRyaWJ1dGUoXCJzdHlsZVwiLCBgdHJhbnNmb3JtOiAke1RyYW5zZm9ybU1vZGVsRXh0ZW5zaW9ucy50b1N0cmluZyh0aGlzLnRyYW5zZm9ybSl9YCk7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgTm90aWZ5VHJhbnNmb3JtQ2hhbmdlZFJlcXVlc3QoKSk7XG4gIH1cblxuICAvKipcbiAgICogUmVkcmF3cyB0aGUgY2FudmFzIHdpdGggYW4gYW5pbWF0aW9uIGVmZmVjdC5cbiAgICogVGhpcyBtZXRob2QgYXBwbGllcyBhIENTUyB0cmFuc2l0aW9uIHRvIHRoZSBjYW52YXMgZWxlbWVudCxcbiAgICogYWxsb3dpbmcgZm9yIGEgc21vb3RoIHZpc3VhbCB1cGRhdGUgb2YgdGhlIGNhbnZhcydzIHRyYW5zZm9ybWF0aW9uLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHJlZHJhd1dpdGhBbmltYXRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgU2V0QmFja2dyb3VuZFRyYW5zZm9ybVJlcXVlc3QodGhpcy50cmFuc2Zvcm0pKTtcbiAgICB0aGlzLmhvc3RFbGVtZW50LnNldEF0dHJpYnV0ZShcInN0eWxlXCIsIGB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHtpc01vYmlsZSgpID8gODAgOiAxNTB9bXMgZWFzZS1pbi1vdXQ7IHRyYW5zZm9ybTogJHtUcmFuc2Zvcm1Nb2RlbEV4dGVuc2lvbnMudG9TdHJpbmcodGhpcy50cmFuc2Zvcm0pfWApO1xuICAgIHRyYW5zaXRpb25FbmQodGhpcy5ob3N0RWxlbWVudCwgKCkgPT4gdGhpcy5yZWRyYXcoKSk7XG4gIH1cblxuICAvKipcbiAgICogQ2VudGVycyB0aGUgc3BlY2lmaWVkIGdyb3VwIG9yIG5vZGUgb24gdGhlIGNhbnZhcy5cbiAgICogQHBhcmFtIGdyb3VwT3JOb2RlSWQgLSBUaGUgSUQgb2YgdGhlIGdyb3VwIG9yIG5vZGUgdG8gY2VudGVyLlxuICAgKiBAcGFyYW0gYW5pbWF0ZWQgLSBJZiB0cnVlLCB0aGUgY2VudGVyaW5nIHdpbGwgYmUgYW5pbWF0ZWQ7IG90aGVyd2lzZSwgaXQgd2lsbCBiZSBpbnN0YW50YW5lb3VzLlxuICAgKi9cbiAgcHVibGljIGNlbnRlckdyb3VwT3JOb2RlKGdyb3VwT3JOb2RlSWQ6IHN0cmluZywgYW5pbWF0ZWQ6IGJvb2xlYW4gPSB0cnVlKTogdm9pZCB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBDZW50ZXJHcm91cE9yTm9kZVJlcXVlc3QoZ3JvdXBPck5vZGVJZCwgYW5pbWF0ZWQpKSk7XG4gIH1cblxuICAvKipcbiAgICogRml0cyB0aGUgY2FudmFzIHRvIHRoZSBzY3JlZW4gYnkgYWRqdXN0aW5nIHRoZSBzY2FsZSBhbmQgcG9zaXRpb24uXG4gICAqIEBwYXJhbSBwYWRkaW5nIC0gcGFkZGluZ3MgZnJvbSB0aGUgYm91bmRzIG9mIHRoZSBjYW52YXNcbiAgICogQHBhcmFtIGFuaW1hdGVkIC0gSWYgdHJ1ZSwgdGhlIGZpdCB3aWxsIGJlIGFuaW1hdGVkOyBvdGhlcndpc2UsIGl0IHdpbGwgYmUgaW5zdGFudGFuZW91cy5cbiAgICovXG4gIHB1YmxpYyBmaXRUb1NjcmVlbihwYWRkaW5nOiBJUG9pbnQgPSBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpLCBhbmltYXRlZDogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUobmV3IEZpdFRvRmxvd1JlcXVlc3QocGFkZGluZywgYW5pbWF0ZWQpKSk7XG4gIH1cblxuICAvKipcbiAgICogUmVzZXRzIHRoZSBzY2FsZSBhbmQgY2VudGVyIGFsbCBub2RlcyBhbmQgZ3JvdXBzIG9uIHRoZSBjYW52YXMuXG4gICAqIFRoaXMgbWV0aG9kIGlzIHVzZWQgdG8gcmVzdG9yZSB0aGUgY2FudmFzIHRvIGl0cyBkZWZhdWx0IHNjYWxlIGFuZCBwb3NpdGlvbixcbiAgICogYWxsb3dpbmcgdXNlcnMgdG8gcXVpY2tseSByZXR1cm4gdG8gYSBzdGFuZGFyZCB2aWV3IG9mIHRoZSBjYW52YXMgY29udGVudC5cbiAgICogQHBhcmFtIGFuaW1hdGVkIC0gSWYgdHJ1ZSwgdGhlIHJlc2V0IHdpbGwgYmUgYW5pbWF0ZWQ7IG90aGVyd2lzZSwgaXQgd2lsbCBiZSBpbnN0YW50YW5lb3VzLlxuICAgKiBUaGlzIGlzIHVzZWZ1bCBmb3IgcHJvdmlkaW5nIGEgc21vb3RoIHVzZXIgZXhwZXJpZW5jZSB3aGVuIHJlc2V0dGluZyB0aGUgdmlldy5cbiAgICovXG4gIHB1YmxpYyByZXNldFNjYWxlQW5kQ2VudGVyKGFuaW1hdGVkOiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgUmVzZXRTY2FsZUFuZENlbnRlclJlcXVlc3QoYW5pbWF0ZWQpKSk7XG4gIH1cblxuICAvKipcbiAgICogIEdldHMgdGhlIGN1cnJlbnQgc2NhbGUgb2YgdGhlIGNhbnZhcy5cbiAgICovXG4gIHB1YmxpYyBnZXRTY2FsZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnRyYW5zZm9ybS5zY2FsZSB8fCAxO1xuICB9XG5cbiAgLyoqXG4gICAqICBAZGVwcmVjYXRlZCBNZXRob2QgXCJzZXRab29tXCIgaXMgZGVwcmVjYXRlZC4gVXNlIFwic2V0U2NhbGVcIiBpbnN0ZWFkLiBUaGlzIG1ldGhvZCB3aWxsIGJlIHJlbW92ZWQgaW4gdmVyc2lvbiAxOC4wLjAuYCxcbiAgICovXG4gIEBEZXByZWNhdGVkKCdzZXRTY2FsZScpXG4gIHB1YmxpYyBzZXRab29tKHNjYWxlOiBudW1iZXIsIHRvUG9zaXRpb246IElQb2ludCA9IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCkpOiB2b2lkIHtcbiAgICB0aGlzLnNldFNjYWxlKHNjYWxlLCB0b1Bvc2l0aW9uKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBzY2FsZSBvZiB0aGUgY2FudmFzIHRvIGEgc3BlY2lmaWVkIHZhbHVlLlxuICAgKiBUaGlzIG1ldGhvZCBpcyB1c2VkIHRvIHpvb20gaW4gb3Igb3V0IG9mIHRoZSBjYW52YXMsXG4gICAqIGFsbG93aW5nIHVzZXJzIHRvIGFkanVzdCB0aGUgdmlldyBvZiB0aGUgY2FudmFzIGNvbnRlbnQuXG4gICAqIEBwYXJhbSBzY2FsZSAtIFRoZSBzY2FsZSBmYWN0b3IgdG8gc2V0IGZvciB0aGUgY2FudmFzLlxuICAgKiBAcGFyYW0gdG9Qb3NpdGlvbiAtIFRoZSBwb3NpdGlvbiB0byB3aGljaCB0aGUgY2FudmFzIHNob3VsZCBiZSBjZW50ZXJlZCBhZnRlciBzY2FsaW5nLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHNldFNjYWxlKHNjYWxlOiBudW1iZXIsIHRvUG9zaXRpb246IElQb2ludCA9IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCkpOiB2b2lkIHtcbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBVcGRhdGVTY2FsZVJlcXVlc3Qoc2NhbGUsIHRvUG9zaXRpb24pKTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgQGRlcHJlY2F0ZWQgTWV0aG9kIFwicmVzZXRab29tXCIgaXMgZGVwcmVjYXRlZC4gVXNlIFwicmVzZXRTY2FsZVwiIGluc3RlYWQuIFRoaXMgbWV0aG9kIHdpbGwgYmUgcmVtb3ZlZCBpbiB2ZXJzaW9uIDE4LjAuMC5gLFxuICAgKi9cbiAgQERlcHJlY2F0ZWQoJ3Jlc2V0U2NhbGUnKVxuICBwdWJsaWMgcmVzZXRab29tKCk6IHZvaWQge1xuICAgIHRoaXMucmVzZXRTY2FsZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc2V0cyB0aGUgc2NhbGUgb2YgdGhlIGNhbnZhcyB0byBpdHMgZGVmYXVsdCB2YWx1ZS5cbiAgICogVGhpcyBtZXRob2QgaXMgdXNlZCB0byByZXN0b3JlIHRoZSBjYW52YXMgdG8gaXRzIG9yaWdpbmFsIHNjYWxlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHJlc2V0U2NhbGUoKTogdm9pZCB7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgUmVzZXRTY2FsZVJlcXVlc3QoKSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgUmVtb3ZlQ2FudmFzRnJvbVN0b3JlUmVxdWVzdCgpKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lcj5cbiAgPGRpdiAjZkdyb3Vwc0NvbnRhaW5lcj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZkdyb3VwXVwiPjwvbmctY29udGVudD5cbiAgPC9kaXY+XG4gIDxkaXYgI2ZDb25uZWN0aW9uc0NvbnRhaW5lcj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJmLXNuYXAtY29ubmVjdGlvblwiPjwvbmctY29udGVudD5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJmLWNvbm5lY3Rpb25cIj48L25nLWNvbnRlbnQ+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZi1jb25uZWN0aW9uLWZvci1jcmVhdGVcIj48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuXG4gIDxkaXYgI2ZOb2Rlc0NvbnRhaW5lcj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZk5vZGVdXCI+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
143
+ }, providers: [{ provide: F_CANVAS, useExisting: FCanvasComponent }], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container>\n <div #fGroupsContainer>\n <ng-content select=\"[fGroup], [fGroups]\" />\n </div>\n <div #fConnectionsContainer class=\"f-connections-container\">\n <ng-content select=\"f-snap-connection\" />\n <ng-content select=\"f-connection, [fConnections]\" />\n <ng-content select=\"f-connection-for-create\" />\n </div>\n\n <div #fNodesContainer>\n <ng-content select=\"[fNode], [fNodes]\" />\n </div>\n</ng-container>\n", styles: [":host{position:absolute;overflow:visible;width:100%;height:100%;left:0;top:0;transform-origin:0 0;pointer-events:none}:host.canvas-dragging{transform:translateZ(0)}.f-connections-container{position:absolute;z-index:2}\n"] }]
144
+ }] });
145
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jYW52YXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWNhbnZhcy9mLWNhbnZhcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtY2FudmFzL2YtY2FudmFzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFFBQVEsRUFDUixNQUFNLEVBQ04sVUFBVSxFQUNWLE1BQU0sRUFDTixRQUFRLEVBQ1IsS0FBSyxFQUNMLGVBQWUsRUFHZixNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDeEQsT0FBTyxFQUFVLGVBQWUsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUUvRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDN0MsT0FBTyxFQUNMLHVCQUF1QixFQUN2Qix3QkFBd0IsRUFDeEIsZ0JBQWdCLEVBQ2hCLGNBQWMsRUFDZCwwQkFBMEIsRUFDMUIsdUJBQXVCLEVBQ3ZCLFFBQVEsRUFDUiw0QkFBNEIsRUFDNUIsMEJBQTBCLEVBQzFCLGlCQUFpQixFQUNqQiw2QkFBNkIsRUFDN0IsYUFBYSxFQUNiLGtCQUFrQixHQUNuQixNQUFNLFdBQVcsQ0FBQztBQUNuQixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFdkYsT0FBTyxFQUFlLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFckQ7Ozs7Ozs7O0dBUUc7QUFZSCxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsV0FBVztJQUM5QixTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lB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QVEsRUFBRSxXQUFXLGtCQUFrQixFQUFFLENBQUMsbUJBQ2hELHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBjb21wdXRlZCxcbiAgZWZmZWN0LFxuICBFbGVtZW50UmVmLFxuICBpbmplY3QsXG4gIEluamVjdG9yLFxuICBpbnB1dCxcbiAgbnVtYmVyQXR0cmlidXRlLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgb3V0cHV0LFxuICB2aWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRl9DQU5WQVMsIEZDYW52YXNCYXNlIH0gZnJvbSAnLi9mLWNhbnZhcy1iYXNlJztcbmltcG9ydCB7IElQb2ludCwgUG9pbnRFeHRlbnNpb25zLCBUcmFuc2Zvcm1Nb2RlbEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZDYW52YXNDaGFuZ2VFdmVudCB9IGZyb20gJy4vZG9tYWluJztcbmltcG9ydCB7IEZNZWRpYXRvciB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHtcbiAgQWRkQ2FudmFzVG9TdG9yZVJlcXVlc3QsXG4gIENlbnRlckdyb3VwT3JOb2RlUmVxdWVzdCxcbiAgRml0VG9GbG93UmVxdWVzdCxcbiAgR2V0Rmxvd1JlcXVlc3QsXG4gIElucHV0Q2FudmFzUG9zaXRpb25SZXF1ZXN0LFxuICBJbnB1dENhbnZhc1NjYWxlUmVxdWVzdCxcbiAgaXNNb2JpbGUsXG4gIFJlbW92ZUNhbnZhc0Zyb21TdG9yZVJlcXVlc3QsXG4gIFJlc2V0U2NhbGVBbmRDZW50ZXJSZXF1ZXN0LFxuICBSZXNldFNjYWxlUmVxdWVzdCxcbiAgU2V0QmFja2dyb3VuZFRyYW5zZm9ybVJlcXVlc3QsXG4gIHRyYW5zaXRpb25FbmQsXG4gIFVwZGF0ZVNjYWxlUmVxdWVzdCxcbn0gZnJvbSAnLi4vZG9tYWluJztcbmltcG9ydCB7IExpc3RlbkRhdGFDaGFuZ2VzUmVxdWVzdCwgTm90aWZ5VHJhbnNmb3JtQ2hhbmdlZFJlcXVlc3QgfSBmcm9tICcuLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgRkZsb3dCYXNlIH0gZnJvbSAnLi4vZi1mbG93JztcbmltcG9ydCB7IEZDaGFubmVsSHViLCB0YWtlT25lIH0gZnJvbSAnLi4vcmVhY3Rpdml0eSc7XG5cbi8qKlxuICogQ29tcG9uZW50IHJlcHJlc2VudGluZyBhIGNhbnZhcyBpbiB0aGUgRi1GbG93IGZyYW1ld29yay5cbiAqIEl0IGhhbmRsZXMgdGhlIHJlbmRlcmluZyBvZiBub2RlcywgY29ubmVjdGlvbnMsIGFuZCBncm91cHMsXG4gKiBhcyB3ZWxsIGFzIHVzZXIgaW50ZXJhY3Rpb25zIHN1Y2ggYXMgem9vbWluZyBhbmQgcGFubmluZy5cbiAqIEl0IGV4dGVuZHMgdGhlIEZDYW52YXNCYXNlIGNsYXNzIGFuZCBpbXBsZW1lbnRzIE9uSW5pdCBhbmQgT25EZXN0cm95IGxpZmVjeWNsZSBob29rcy5cbiAqIEl0IHByb3ZpZGVzIG1ldGhvZHMgdG8gbWFuaXB1bGF0ZSB0aGUgY2FudmFzLCBzdWNoIGFzIGNlbnRlcmluZyBub2RlcyBvciBncm91cHMsXG4gKiBmaXR0aW5nIHRoZSBjYW52YXMgdG8gdGhlIHNjcmVlbiwgYW5kIHJlc2V0dGluZyB0aGUgc2NhbGUuXG4gKiBJdCBhbHNvIGVtaXRzIGV2ZW50cyB3aGVuIHRoZSBjYW52YXMgY2hhbmdlcywgYWxsb3dpbmcgb3RoZXIgY29tcG9uZW50cyB0byByZWFjdCB0byB0aGVzZSBjaGFuZ2VzLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmLWNhbnZhcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9mLWNhbnZhcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2YtY2FudmFzLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGhvc3Q6IHtcbiAgICAnY2xhc3MnOiAnZi1jb21wb25lbnQgZi1jYW52YXMnLFxuICB9LFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IEZfQ0FOVkFTLCB1c2VFeGlzdGluZzogRkNhbnZhc0NvbXBvbmVudCB9XSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEZDYW52YXNDb21wb25lbnQgZXh0ZW5kcyBGQ2FudmFzQmFzZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfbWVkaWF0b3IgPSBpbmplY3QoRk1lZGlhdG9yKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZWxlbWVudFJlZmVyZW5jZSA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuXG4gIHByaXZhdGUgX2Zsb3dJZDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBvdmVycmlkZSBmQ2FudmFzQ2hhbmdlID0gb3V0cHV0PEZDYW52YXNDaGFuZ2VFdmVudD4oKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgcG9zaXRpb24gPSBpbnB1dDxJUG9pbnQsIElQb2ludCB8IG51bGwgfCB1bmRlZmluZWQ+KFxuICAgIFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKCksXG4gICAgeyB0cmFuc2Zvcm06IFBvaW50RXh0ZW5zaW9ucy5jYXN0VG9Qb2ludCB9LFxuICApO1xuICBwdWJsaWMgcmVhZG9ubHkgc2NhbGUgPSBpbnB1dDxudW1iZXIsIHVua25vd24+KDEsIHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSk7XG4gIHB1YmxpYyByZWFkb25seSBkZWJvdW5jZVRpbWUgPSBpbnB1dDxudW1iZXIsIHVua25vd24+KDAsIHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSk7XG4gIHB1YmxpYyBvdmVycmlkZSBkZWJvdW5jZSA9IGNvbXB1dGVkKCgpID0+ICh0aGlzLmRlYm91bmNlVGltZSgpIDwgMCA/IDAgOiB0aGlzLmRlYm91bmNlVGltZSgpKSk7XG5cbiAgcHVibGljIG92ZXJyaWRlIGdldCBob3N0RWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuX2VsZW1lbnRSZWZlcmVuY2UubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBmR3JvdXBzQ29udGFpbmVyID1cbiAgICB2aWV3Q2hpbGQucmVxdWlyZWQ8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KCdmR3JvdXBzQ29udGFpbmVyJyk7XG4gIHB1YmxpYyBvdmVycmlkZSBmTm9kZXNDb250YWluZXIgPSB2aWV3Q2hpbGQucmVxdWlyZWQ8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KCdmTm9kZXNDb250YWluZXInKTtcbiAgcHVibGljIG92ZXJyaWRlIGZDb25uZWN0aW9uc0NvbnRhaW5lciA9XG4gICAgdmlld0NoaWxkLnJlcXVpcmVkPEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PignZkNvbm5lY3Rpb25zQ29udGFpbmVyJyk7XG5cbiAgcHVibGljIGdldCBmbG93SWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fZmxvd0lkITtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9mbG93SWQgPSB0aGlzLl9tZWRpYXRvci5leGVjdXRlPEZGbG93QmFzZT4obmV3IEdldEZsb3dSZXF1ZXN0KCkpLmZJZCgpO1xuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUobmV3IEFkZENhbnZhc1RvU3RvcmVSZXF1ZXN0KHRoaXMpKTtcbiAgICB0aGlzLl9wb3NpdGlvbkNoYW5nZSgpO1xuICAgIHRoaXMuX3NjYWxlQ2hhbmdlKCk7XG4gICAgc3VwZXIuc3Vic2NyaWJlT25DYW52YXNDaGFuZ2UoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3Bvc2l0aW9uQ2hhbmdlKCk6IHZvaWQge1xuICAgIGVmZmVjdChcbiAgICAgICgpID0+IHtcbiAgICAgICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgSW5wdXRDYW52YXNQb3NpdGlvblJlcXVlc3QodGhpcy50cmFuc2Zvcm0sIHRoaXMucG9zaXRpb24oKSkpO1xuICAgICAgfSxcbiAgICAgIHsgaW5qZWN0b3I6IHRoaXMuX2luamVjdG9yIH0sXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NjYWxlQ2hhbmdlKCk6IHZvaWQge1xuICAgIGVmZmVjdChcbiAgICAgICgpID0+IHtcbiAgICAgICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgSW5wdXRDYW52YXNTY2FsZVJlcXVlc3QodGhpcy50cmFuc2Zvcm0sIHRoaXMuc2NhbGUoKSkpO1xuICAgICAgfSxcbiAgICAgIHsgaW5qZWN0b3I6IHRoaXMuX2luamVjdG9yIH0sXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWRyYXdzIHRoZSBjYW52YXMgYnkgYXBwbHlpbmcgdGhlIGN1cnJlbnQgdHJhbnNmb3JtYXRpb24uXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgcmVkcmF3KCk6IHZvaWQge1xuICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUobmV3IFNldEJhY2tncm91bmRUcmFuc2Zvcm1SZXF1ZXN0KHRoaXMudHJhbnNmb3JtKSk7XG4gICAgdGhpcy5ob3N0RWxlbWVudC5zZXRBdHRyaWJ1dGUoXG4gICAgICAnc3R5bGUnLFxuICAgICAgYHRyYW5zZm9ybTogJHtUcmFuc2Zvcm1Nb2RlbEV4dGVuc2lvbnMudG9TdHJpbmcodGhpcy50cmFuc2Zvcm0pfWAsXG4gICAgKTtcbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBOb3RpZnlUcmFuc2Zvcm1DaGFuZ2VkUmVxdWVzdCgpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWRyYXdzIHRoZSBjYW52YXMgd2l0aCBhbiBhbmltYXRpb24gZWZmZWN0LlxuICAgKiBUaGlzIG1ldGhvZCBhcHBsaWVzIGEgQ1NTIHRyYW5zaXRpb24gdG8gdGhlIGNhbnZhcyBlbGVtZW50LFxuICAgKiBhbGxvd2luZyBmb3IgYSBzbW9vdGggdmlzdWFsIHVwZGF0ZSBvZiB0aGUgY2FudmFzJ3MgdHJhbnNmb3JtYXRpb24uXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgcmVkcmF3V2l0aEFuaW1hdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBTZXRCYWNrZ3JvdW5kVHJhbnNmb3JtUmVxdWVzdCh0aGlzLnRyYW5zZm9ybSkpO1xuICAgIHRoaXMuaG9zdEVsZW1lbnQuc2V0QXR0cmlidXRlKFxuICAgICAgJ3N0eWxlJyxcbiAgICAgIGB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHtpc01vYmlsZSgpID8gODAgOiAxNTB9bXMgZWFzZS1pbi1vdXQ7IHRyYW5zZm9ybTogJHtUcmFuc2Zvcm1Nb2RlbEV4dGVuc2lvbnMudG9TdHJpbmcodGhpcy50cmFuc2Zvcm0pfWAsXG4gICAgKTtcbiAgICB0cmFuc2l0aW9uRW5kKHRoaXMuaG9zdEVsZW1lbnQsICgpID0+IHRoaXMucmVkcmF3KCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENlbnRlcnMgdGhlIHNwZWNpZmllZCBncm91cCBvciBub2RlIG9uIHRoZSBjYW52YXMuXG4gICAqIEBwYXJhbSBncm91cE9yTm9kZUlkIC0gVGhlIElEIG9mIHRoZSBncm91cCBvciBub2RlIHRvIGNlbnRlci5cbiAgICogQHBhcmFtIGFuaW1hdGVkIC0gSWYgdHJ1ZSwgdGhlIGNlbnRlcmluZyB3aWxsIGJlIGFuaW1hdGVkOyBvdGhlcndpc2UsIGl0IHdpbGwgYmUgaW5zdGFudGFuZW91cy5cbiAgICovXG4gIHB1YmxpYyBjZW50ZXJHcm91cE9yTm9kZShncm91cE9yTm9kZUlkOiBzdHJpbmcsIGFuaW1hdGVkOiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xuICAgIHRoaXMuX2FmdGVyUmVkcmF3KCgpID0+IHtcbiAgICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUobmV3IENlbnRlckdyb3VwT3JOb2RlUmVxdWVzdChncm91cE9yTm9kZUlkLCBhbmltYXRlZCkpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpdHMgdGhlIGNhbnZhcyB0byB0aGUgc2NyZWVuIGJ5IGFkanVzdGluZyB0aGUgc2NhbGUgYW5kIHBvc2l0aW9uLlxuICAgKiBAcGFyYW0gcGFkZGluZyAtIHBhZGRpbmdzIGZyb20gdGhlIGJvdW5kcyBvZiB0aGUgY2FudmFzXG4gICAqIEBwYXJhbSBhbmltYXRlZCAtIElmIHRydWUsIHRoZSBmaXQgd2lsbCBiZSBhbmltYXRlZDsgb3RoZXJ3aXNlLCBpdCB3aWxsIGJlIGluc3RhbnRhbmVvdXMuXG4gICAqL1xuICBwdWJsaWMgZml0VG9TY3JlZW4oXG4gICAgcGFkZGluZzogSVBvaW50ID0gUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoKSxcbiAgICBhbmltYXRlZDogYm9vbGVhbiA9IHRydWUsXG4gICk6IHZvaWQge1xuICAgIHRoaXMuX2FmdGVyUmVkcmF3KCgpID0+IHtcbiAgICAgIHRoaXMuX21lZGlhdG9yLmV4ZWN1dGUobmV3IEZpdFRvRmxvd1JlcXVlc3QocGFkZGluZywgYW5pbWF0ZWQpKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNldHMgdGhlIHNjYWxlIGFuZCBjZW50ZXIgYWxsIG5vZGVzIGFuZCBncm91cHMgb24gdGhlIGNhbnZhcy5cbiAgICogVGhpcyBtZXRob2QgaXMgdXNlZCB0byByZXN0b3JlIHRoZSBjYW52YXMgdG8gaXRzIGRlZmF1bHQgc2NhbGUgYW5kIHBvc2l0aW9uLFxuICAgKiBhbGxvd2luZyB1c2VycyB0byBxdWlja2x5IHJldHVybiB0byBhIHN0YW5kYXJkIHZpZXcgb2YgdGhlIGNhbnZhcyBjb250ZW50LlxuICAgKiBAcGFyYW0gYW5pbWF0ZWQgLSBJZiB0cnVlLCB0aGUgcmVzZXQgd2lsbCBiZSBhbmltYXRlZDsgb3RoZXJ3aXNlLCBpdCB3aWxsIGJlIGluc3RhbnRhbmVvdXMuXG4gICAqIFRoaXMgaXMgdXNlZnVsIGZvciBwcm92aWRpbmcgYSBzbW9vdGggdXNlciBleHBlcmllbmNlIHdoZW4gcmVzZXR0aW5nIHRoZSB2aWV3LlxuICAgKi9cbiAgcHVibGljIHJlc2V0U2NhbGVBbmRDZW50ZXIoYW5pbWF0ZWQ6IGJvb2xlYW4gPSB0cnVlKTogdm9pZCB7XG4gICAgdGhpcy5fYWZ0ZXJSZWRyYXcoKCkgPT4ge1xuICAgICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgUmVzZXRTY2FsZUFuZENlbnRlclJlcXVlc3QoYW5pbWF0ZWQpKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgR2V0cyB0aGUgY3VycmVudCBzY2FsZSBvZiB0aGUgY2FudmFzLlxuICAgKi9cbiAgcHVibGljIGdldFNjYWxlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNmb3JtLnNjYWxlIHx8IDE7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgc2NhbGUgb2YgdGhlIGNhbnZhcyB0byBhIHNwZWNpZmllZCB2YWx1ZS5cbiAgICogVGhpcyBtZXRob2QgaXMgdXNlZCB0byB6b29tIGluIG9yIG91dCBvZiB0aGUgY2FudmFzLFxuICAgKiBhbGxvd2luZyB1c2VycyB0byBhZGp1c3QgdGhlIHZpZXcgb2YgdGhlIGNhbnZhcyBjb250ZW50LlxuICAgKiBAcGFyYW0gc2NhbGUgLSBUaGUgc2NhbGUgZmFjdG9yIHRvIHNldCBmb3IgdGhlIGNhbnZhcy5cbiAgICogQHBhcmFtIHRvUG9zaXRpb24gLSBUaGUgcG9zaXRpb24gdG8gd2hpY2ggdGhlIGNhbnZhcyBzaG91bGQgYmUgY2VudGVyZWQgYWZ0ZXIgc2NhbGluZy5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBzZXRTY2FsZShzY2FsZTogbnVtYmVyLCB0b1Bvc2l0aW9uOiBJUG9pbnQgPSBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpKTogdm9pZCB7XG4gICAgdGhpcy5fbWVkaWF0b3IuZXhlY3V0ZShuZXcgVXBkYXRlU2NhbGVSZXF1ZXN0KHNjYWxlLCB0b1Bvc2l0aW9uKSk7XG4gIH1cblxuICAvKipcbiAgICogUmVzZXRzIHRoZSBzY2FsZSBvZiB0aGUgY2FudmFzIHRvIGl0cyBkZWZhdWx0IHZhbHVlLlxuICAgKiBUaGlzIG1ldGhvZCBpcyB1c2VkIHRvIHJlc3RvcmUgdGhlIGNhbnZhcyB0byBpdHMgb3JpZ2luYWwgc2NhbGUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgcmVzZXRTY2FsZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBSZXNldFNjYWxlUmVxdWVzdCgpKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9tZWRpYXRvci5leGVjdXRlKG5ldyBSZW1vdmVDYW52YXNGcm9tU3RvcmVSZXF1ZXN0KCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfYWZ0ZXJSZWRyYXcoY2FsbGJhY2s6ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLl9tZWRpYXRvclxuICAgICAgLmV4ZWN1dGU8RkNoYW5uZWxIdWI+KG5ldyBMaXN0ZW5EYXRhQ2hhbmdlc1JlcXVlc3QoKSlcbiAgICAgIC5waXBlKHRha2VPbmUoKSlcbiAgICAgIC5saXN0ZW4odGhpcy5kZXN0cm95UmVmLCBjYWxsYmFjayk7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXI+XG4gIDxkaXYgI2ZHcm91cHNDb250YWluZXI+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2ZHcm91cF0sIFtmR3JvdXBzXVwiIC8+XG4gIDwvZGl2PlxuICA8ZGl2ICNmQ29ubmVjdGlvbnNDb250YWluZXIgY2xhc3M9XCJmLWNvbm5lY3Rpb25zLWNvbnRhaW5lclwiPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImYtc25hcC1jb25uZWN0aW9uXCIgLz5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJmLWNvbm5lY3Rpb24sIFtmQ29ubmVjdGlvbnNdXCIgLz5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJmLWNvbm5lY3Rpb24tZm9yLWNyZWF0ZVwiIC8+XG4gIDwvZGl2PlxuXG4gIDxkaXYgI2ZOb2Rlc0NvbnRhaW5lcj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZk5vZGVdLCBbZk5vZGVzXVwiIC8+XG4gIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG4iXX0=