@foblex/flow 12.6.3 → 12.6.5

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 (554) hide show
  1. package/bundles/foblex-flow.umd.js +3320 -3399
  2. package/bundles/foblex-flow.umd.js.map +1 -1
  3. package/domain/center-group-or-node/center-group-or-node-request.d.ts +5 -0
  4. package/domain/center-group-or-node/center-group-or-node.execution.d.ts +17 -0
  5. package/domain/center-group-or-node/index.d.ts +2 -0
  6. package/domain/clear-selection/clear-selection.execution.d.ts +1 -1
  7. package/domain/constants.d.ts +1 -0
  8. package/domain/create-connection-markers/create-connection-markers.execution.d.ts +1 -1
  9. package/domain/create-rounded-rect-from-element/create-rounded-rect-from-element-request.d.ts +4 -0
  10. package/domain/create-rounded-rect-from-element/create-rounded-rect-from-element.execution.d.ts +15 -0
  11. package/domain/create-rounded-rect-from-element/index.d.ts +2 -0
  12. package/domain/emit-transform-changes/emit-transform-changes.execution.d.ts +1 -1
  13. package/domain/get-can-be-selected-items/get-can-be-selected-items.execution.d.ts +2 -2
  14. package/domain/get-can-be-selected-items/i-selectable-with-rect.d.ts +3 -3
  15. package/domain/get-connection-line/get-connection-line.execution.d.ts +2 -2
  16. package/domain/get-connection-line/get-connection-line.request.d.ts +4 -4
  17. package/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.execution.d.ts +1 -1
  18. package/domain/get-element-rect-in-flow/get-element-rect-in-flow.execution.d.ts +4 -5
  19. package/domain/get-flow-state/get-flow-state-connections/get-flow-state-connections-request.d.ts +2 -0
  20. package/domain/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.d.ts +12 -0
  21. package/domain/get-flow-state/get-flow-state-connections/index.d.ts +2 -0
  22. package/domain/get-flow-state/get-flow-state-nodes/get-flow-state-nodes-request.d.ts +5 -0
  23. package/domain/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.d.ts +14 -0
  24. package/domain/get-flow-state/get-flow-state-nodes/index.d.ts +2 -0
  25. package/domain/get-flow-state/get-flow-state.execution.d.ts +14 -0
  26. package/domain/get-flow-state/get-flow-state.request.d.ts +2 -0
  27. package/domain/get-flow-state/i-f-flow-state-connection.d.ts +9 -0
  28. package/domain/get-flow-state/i-f-flow-state-connector.d.ts +5 -0
  29. package/domain/get-flow-state/i-f-flow-state-node.d.ts +11 -0
  30. package/domain/get-flow-state/i-f-flow-state.d.ts +10 -0
  31. package/domain/get-flow-state/index.d.ts +9 -0
  32. package/domain/get-flow-state/providers.d.ts +4 -0
  33. package/domain/get-input-rect-in-flow/get-input-rect-in-flow-response.d.ts +1 -1
  34. package/domain/get-input-rect-in-flow/get-input-rect-in-flow.execution.d.ts +2 -2
  35. package/domain/get-nodes-rect/get-nodes-rect.execution.d.ts +2 -2
  36. package/domain/get-output-rect-in-flow/get-output-rect-in-flow-response.d.ts +1 -1
  37. package/domain/get-output-rect-in-flow/get-output-rect-in-flow.execution.d.ts +2 -2
  38. package/domain/get-position-in-flow/get-position-in-flow-request.d.ts +1 -1
  39. package/domain/get-position-in-flow/get-position-in-flow.execution.d.ts +2 -2
  40. package/domain/get-scaled-node-rects-with-flow-position/get-scaled-node-rects-with-flow-position.execution.d.ts +2 -2
  41. package/domain/get-selection/get-selection.execution.d.ts +1 -1
  42. package/domain/i-map.d.ts +3 -0
  43. package/domain/index.d.ts +6 -5
  44. package/domain/is-connection-under-node/is-connection-under-node.execution.d.ts +2 -2
  45. package/domain/providers.d.ts +4 -1
  46. package/domain/redraw-connections/redraw-connections.execution.d.ts +2 -2
  47. package/domain/select/select.execution.d.ts +1 -1
  48. package/domain/select-all/select-all.execution.d.ts +1 -1
  49. package/domain/select-and-update-node-layer/select-and-update-node-layer.execution.d.ts +3 -3
  50. package/domain/show-connections-after-calculations/index.d.ts +2 -0
  51. package/domain/show-connections-after-calculations/show-connections-after-calculations-request.d.ts +2 -0
  52. package/domain/show-connections-after-calculations/show-connections-after-calculations.execution.d.ts +11 -0
  53. package/domain/sort-item-layers/sort-item-layers.execution.d.ts +2 -2
  54. package/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.execution.d.ts +2 -2
  55. package/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.execution.d.ts +2 -2
  56. package/domain/subscribe-on-transform-changes/subscribe-on-transform-changes.execution.d.ts +1 -1
  57. package/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element.execution.d.ts +1 -1
  58. package/domain/update-item-and-children-layers/update-item-and-children-layers.execution.d.ts +2 -2
  59. package/domain/update-item-and-children-layers/update-item-and-children-layers.request.d.ts +3 -3
  60. package/esm2015/domain/center-group-or-node/center-group-or-node-request.js +7 -0
  61. package/esm2015/domain/center-group-or-node/center-group-or-node.execution.js +51 -0
  62. package/esm2015/domain/center-group-or-node/index.js +3 -0
  63. package/esm2015/domain/clear-selection/clear-selection.execution.js +2 -2
  64. package/esm2015/domain/constants.js +2 -0
  65. package/esm2015/domain/create-connection-markers/create-connection-markers.execution.js +4 -9
  66. package/esm2015/domain/create-rounded-rect-from-element/create-rounded-rect-from-element-request.js +6 -0
  67. package/esm2015/domain/create-rounded-rect-from-element/create-rounded-rect-from-element.execution.js +39 -0
  68. package/esm2015/domain/create-rounded-rect-from-element/index.js +3 -0
  69. package/esm2015/domain/emit-transform-changes/emit-transform-changes.execution.js +2 -2
  70. package/esm2015/domain/get-can-be-selected-items/get-can-be-selected-items.execution.js +6 -6
  71. package/esm2015/domain/get-can-be-selected-items/i-selectable-with-rect.js +1 -1
  72. package/esm2015/domain/get-connection-line/get-connection-line.execution.js +5 -6
  73. package/esm2015/domain/get-connection-line/get-connection-line.request.js +1 -1
  74. package/esm2015/domain/get-deep-children-nodes-and-groups/get-deep-children-nodes-and-groups.execution.js +2 -2
  75. package/esm2015/domain/get-element-rect-in-flow/get-element-rect-in-flow.execution.js +10 -10
  76. package/esm2015/domain/get-flow-state/get-flow-state-connections/get-flow-state-connections-request.js +3 -0
  77. package/esm2015/domain/get-flow-state/get-flow-state-connections/get-flow-state-connections.execution.js +33 -0
  78. package/esm2015/domain/get-flow-state/get-flow-state-connections/index.js +3 -0
  79. package/esm2015/domain/get-flow-state/get-flow-state-nodes/get-flow-state-nodes-request.js +6 -0
  80. package/esm2015/domain/get-flow-state/get-flow-state-nodes/get-flow-state-nodes.execution.js +50 -0
  81. package/esm2015/domain/get-flow-state/get-flow-state-nodes/index.js +3 -0
  82. package/esm2015/domain/get-flow-state/get-flow-state.execution.js +39 -0
  83. package/esm2015/domain/get-flow-state/get-flow-state.request.js +3 -0
  84. package/esm2015/domain/get-flow-state/i-f-flow-state-connection.js +2 -0
  85. package/esm2015/domain/get-flow-state/i-f-flow-state-connector.js +2 -0
  86. package/esm2015/domain/get-flow-state/i-f-flow-state-node.js +2 -0
  87. package/esm2015/domain/get-flow-state/i-f-flow-state.js +2 -0
  88. package/esm2015/domain/get-flow-state/index.js +10 -0
  89. package/esm2015/domain/get-flow-state/providers.js +9 -0
  90. package/esm2015/domain/get-input-rect-in-flow/get-input-rect-in-flow-response.js +1 -1
  91. package/esm2015/domain/get-input-rect-in-flow/get-input-rect-in-flow.execution.js +5 -5
  92. package/esm2015/domain/get-nodes-rect/get-nodes-rect.execution.js +3 -3
  93. package/esm2015/domain/get-output-rect-in-flow/get-output-rect-in-flow-response.js +1 -1
  94. package/esm2015/domain/get-output-rect-in-flow/get-output-rect-in-flow.execution.js +5 -5
  95. package/esm2015/domain/get-position-in-flow/get-position-in-flow-request.js +1 -1
  96. package/esm2015/domain/get-position-in-flow/get-position-in-flow.execution.js +3 -3
  97. package/esm2015/domain/get-scaled-node-rects-with-flow-position/get-scaled-node-rects-with-flow-position.execution.js +3 -3
  98. package/esm2015/domain/get-selection/get-selection.execution.js +2 -2
  99. package/esm2015/domain/i-map.js +2 -0
  100. package/esm2015/domain/index.js +7 -6
  101. package/esm2015/domain/is-connection-under-node/is-connection-under-node.execution.js +5 -5
  102. package/esm2015/domain/providers.js +9 -1
  103. package/esm2015/domain/redraw-connections/redraw-connections.execution.js +5 -5
  104. package/esm2015/domain/select/select.execution.js +2 -2
  105. package/esm2015/domain/select-all/select-all.execution.js +2 -2
  106. package/esm2015/domain/select-and-update-node-layer/select-and-update-node-layer.execution.js +5 -5
  107. package/esm2015/domain/show-connections-after-calculations/index.js +3 -0
  108. package/esm2015/domain/show-connections-after-calculations/show-connections-after-calculations-request.js +3 -0
  109. package/esm2015/domain/show-connections-after-calculations/show-connections-after-calculations.execution.js +26 -0
  110. package/esm2015/domain/sort-item-layers/sort-item-layers.execution.js +5 -5
  111. package/esm2015/domain/sort-item-layers/sort-items-by-parent/sort-items-by-parent.execution.js +5 -5
  112. package/esm2015/domain/sort-item-layers/sort-node-layers-by-groups/sort-node-layers.execution.js +5 -5
  113. package/esm2015/domain/subscribe-on-transform-changes/subscribe-on-transform-changes.execution.js +2 -2
  114. package/esm2015/domain/update-item-and-children-layers/move-front-elements-before-target-element/move-front-elements-before-target-element.execution.js +2 -2
  115. package/esm2015/domain/update-item-and-children-layers/update-item-and-children-layers.execution.js +5 -5
  116. package/esm2015/domain/update-item-and-children-layers/update-item-and-children-layers.request.js +1 -1
  117. package/esm2015/f-backgroud/domain/i-f-background-pattern.js +1 -1
  118. package/esm2015/f-backgroud/f-background-base.js +1 -1
  119. package/esm2015/f-backgroud/f-background.component.js +2 -2
  120. package/esm2015/f-backgroud/f-circle-pattern/f-circle-pattern.component.js +2 -2
  121. package/esm2015/f-backgroud/f-rect-pattern/f-rect-pattern.component.js +2 -2
  122. package/esm2015/f-canvas/domain/f-canvas-change.event.js +1 -1
  123. package/esm2015/f-canvas/f-canvas-base.js +3 -2
  124. package/esm2015/f-canvas/f-canvas.component.js +18 -9
  125. package/esm2015/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points-request.js +1 -1
  126. package/esm2015/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points.handler.js +2 -2
  127. package/esm2015/f-connection/common/domain/calculate-connection-center/calculate-connection-center-request.js +1 -1
  128. package/esm2015/f-connection/common/domain/calculate-connection-center/calculate-connection-center.handler.js +1 -1
  129. package/esm2015/f-connection/common/domain/f-bezier.path-builder.js +1 -1
  130. package/esm2015/f-connection/common/domain/f-segment.path-builder.js +2 -2
  131. package/esm2015/f-connection/common/f-connection-base.js +10 -4
  132. package/esm2015/f-connection/common/f-connection-identifiers.js +6 -11
  133. package/esm2015/f-connection/common/f-connection-text/f-connection-text-path.directive.js +1 -1
  134. package/esm2015/f-connection/common/f-connection-text/f-connection-text.component.js +2 -2
  135. package/esm2015/f-connection/common/f-connection-text/i-connection-text.js +1 -1
  136. package/esm2015/f-connection/common/f-drag-handle/f-connection-drag-handle.component.js +1 -1
  137. package/esm2015/f-connection/common/f-gradient/f-connection-gradient.component.js +2 -2
  138. package/esm2015/f-connection/common/f-gradient/i-connection-gradient.js +1 -1
  139. package/esm2015/f-connection/common/f-path/get-path-marker-id.js +6 -11
  140. package/esm2015/f-connection/common/f-path/i-connection-path.js +1 -1
  141. package/esm2015/f-connection/common/f-selection/f-connection-selection.component.js +1 -1
  142. package/esm2015/f-connection/common/index.js +1 -2
  143. package/esm2015/f-connection/f-connection/f-connection.component.js +2 -2
  144. package/esm2015/f-connection/f-connection-builder/f-connection-factory.js +1 -1
  145. package/esm2015/f-connection/f-connection-builder/i-f-connection-builder-request.js +1 -1
  146. package/esm2015/f-connection/f-connection-builder/i-f-connection-builder-response.js +1 -1
  147. package/esm2015/f-connection/f-connection-builder/i-f-connection-builder.js +1 -1
  148. package/esm2015/f-connection/f-connection-for-create/f-connection-for-create.component.js +4 -7
  149. package/esm2015/f-connection/f-marker/f-marker-base.js +1 -1
  150. package/esm2015/f-connection/f-snap-connection/f-snap-connection.component.js +139 -0
  151. package/esm2015/f-connection/f-snap-connection/index.js +2 -0
  152. package/esm2015/f-connection/index.js +2 -1
  153. package/esm2015/f-connectors/domain/calculate-connector-connectable-side/calculate-connector-connectable-side.handler.js +2 -2
  154. package/esm2015/f-connectors/f-connector-base.js +1 -1
  155. package/esm2015/f-connectors/f-node-input/f-node-input.directive.js +3 -4
  156. package/esm2015/f-connectors/f-node-outlet/f-node-outlet.directive.js +3 -3
  157. package/esm2015/f-connectors/f-node-output/f-node-output.directive.js +3 -4
  158. package/esm2015/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.execution.js +2 -2
  159. package/esm2015/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.request.js +1 -1
  160. package/esm2015/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.validator.js +2 -2
  161. package/esm2015/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.execution.js +3 -3
  162. package/esm2015/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.request.js +1 -1
  163. package/esm2015/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.validator.js +2 -7
  164. package/esm2015/f-draggable/canvas/canvas.drag-handler.js +2 -2
  165. package/esm2015/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.execution.js +5 -5
  166. package/esm2015/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.request.js +1 -1
  167. package/esm2015/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.validator.js +2 -2
  168. package/esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.execution.js +6 -6
  169. package/esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.request.js +1 -1
  170. package/esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.execution.js +5 -5
  171. package/esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.request.js +1 -1
  172. package/esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.execution.js +5 -5
  173. package/esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.request.js +1 -1
  174. package/esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.validator.js +2 -2
  175. package/esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.execution.js +5 -5
  176. package/esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.request.js +1 -1
  177. package/esm2015/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.validator.js +2 -2
  178. package/esm2015/f-draggable/connections/create-connection/create-connection.drag-handler.js +3 -3
  179. package/esm2015/f-draggable/connections/create-connection/f-create-connection.event.js +1 -1
  180. package/esm2015/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.execution.js +2 -2
  181. package/esm2015/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.validator.js +2 -2
  182. package/esm2015/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.execution.js +2 -2
  183. package/esm2015/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.request.js +1 -1
  184. package/esm2015/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.validator.js +2 -2
  185. package/esm2015/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.execution.js +5 -5
  186. package/esm2015/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.request.js +1 -1
  187. package/esm2015/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.validator.js +2 -2
  188. package/esm2015/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.execution.js +6 -6
  189. package/esm2015/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.request.js +1 -1
  190. package/esm2015/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.validator.js +2 -2
  191. package/esm2015/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.js +3 -3
  192. package/esm2015/f-draggable/domain/get-node-padding/get-node-padding.execution.js +2 -2
  193. package/esm2015/f-draggable/domain/get-node-padding/get-node-padding.request.js +1 -1
  194. package/esm2015/f-draggable/domain/get-normalized-node-rect/get-normalized-node-rect.execution.js +3 -3
  195. package/esm2015/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.execution.js +6 -6
  196. package/esm2015/f-draggable/domain/get-parent-nodes/get-parent-nodes.execution.js +2 -2
  197. package/esm2015/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.execution.js +5 -5
  198. package/esm2015/f-draggable/f-draggable-base.js +6 -166
  199. package/esm2015/f-draggable/f-draggable-data-context.js +2 -2
  200. package/esm2015/f-draggable/f-draggable.directive.js +8 -13
  201. package/esm2015/f-draggable/i-draggable-item.js +1 -1
  202. package/esm2015/f-draggable/i-f-drag-and-drop-plugin.js +1 -1
  203. package/esm2015/f-draggable/index.js +1 -2
  204. package/esm2015/f-draggable/node/connection-base-drag-handler.js +6 -5
  205. package/esm2015/f-draggable/node/connection-source.drag-handler.js +1 -1
  206. package/esm2015/f-draggable/node/connection-target.drag-handler.js +1 -1
  207. package/esm2015/f-draggable/node/connection.drag-handler.js +1 -1
  208. package/esm2015/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.js +8 -13
  209. package/esm2015/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/get-node-move-restrictions.execution.js +6 -6
  210. package/esm2015/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/i-node-move-restrictions.js +1 -1
  211. package/esm2015/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.execution.js +5 -5
  212. package/esm2015/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.execution.js +5 -5
  213. package/esm2015/f-draggable/node/node-move-finalize/node-move-finalize.execution.js +6 -6
  214. package/esm2015/f-draggable/node/node-move-finalize/node-move-finalize.request.js +1 -1
  215. package/esm2015/f-draggable/node/node-move-finalize/node-move-finalize.validator.js +2 -2
  216. package/esm2015/f-draggable/node/node-move-preparation/node-move-preparation.execution.js +6 -6
  217. package/esm2015/f-draggable/node/node-move-preparation/node-move-preparation.request.js +1 -1
  218. package/esm2015/f-draggable/node/node-move-preparation/node-move-preparation.validator.js +4 -4
  219. package/esm2015/f-draggable/node/node-resize-by-child.drag-handler.js +3 -2
  220. package/esm2015/f-draggable/node/node.drag-handler.js +2 -2
  221. package/esm2015/f-draggable/node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.execution.js +2 -2
  222. package/esm2015/f-draggable/node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.request.js +1 -1
  223. package/esm2015/f-draggable/node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.execution.js +2 -2
  224. package/esm2015/f-draggable/node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.request.js +1 -1
  225. package/esm2015/f-draggable/node-resize/calculate-changed-position/calculate-changed-position.execution.js +3 -3
  226. package/esm2015/f-draggable/node-resize/calculate-changed-position/calculate-changed-position.request.js +1 -1
  227. package/esm2015/f-draggable/node-resize/calculate-changed-size/calculate-changed-size.execution.js +3 -3
  228. package/esm2015/f-draggable/node-resize/calculate-changed-size/calculate-changed-size.request.js +1 -1
  229. package/esm2015/f-draggable/node-resize/get-node-resize-restrictions/get-node-resize-restrictions.execution.js +5 -5
  230. package/esm2015/f-draggable/node-resize/get-node-resize-restrictions/get-node-resize-restrictions.request.js +1 -1
  231. package/esm2015/f-draggable/node-resize/get-node-resize-restrictions/i-node-resize-restrictions.js +1 -1
  232. package/esm2015/f-draggable/node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.execution.js +6 -6
  233. package/esm2015/f-draggable/node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.request.js +1 -1
  234. package/esm2015/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.execution.js +2 -2
  235. package/esm2015/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.request.js +1 -1
  236. package/esm2015/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.validator.js +2 -2
  237. package/esm2015/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.execution.js +9 -8
  238. package/esm2015/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.request.js +1 -1
  239. package/esm2015/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.validator.js +4 -4
  240. package/esm2015/f-draggable/node-resize/node-resize.drag-handler.js +2 -2
  241. package/esm2015/f-draggable/single-select/single-select.execution.js +5 -5
  242. package/esm2015/f-draggable/single-select/single-select.request.js +1 -1
  243. package/esm2015/f-draggable/single-select/single-select.validator.js +2 -2
  244. package/esm2015/f-external-item/domain/external-item-finalize/external-item-finalize.execution.js +5 -5
  245. package/esm2015/f-external-item/domain/external-item-finalize/external-item-finalize.request.js +1 -1
  246. package/esm2015/f-external-item/domain/external-item-finalize/external-item-finalize.validator.js +2 -2
  247. package/esm2015/f-external-item/domain/external-item-preparation/external-item-preparation.execution.js +3 -3
  248. package/esm2015/f-external-item/domain/external-item-preparation/external-item-preparation.request.js +1 -1
  249. package/esm2015/f-external-item/domain/external-item-preparation/external-item-preparation.validator.js +2 -2
  250. package/esm2015/f-external-item/domain/external-item.drag-handler.js +3 -3
  251. package/esm2015/f-external-item/domain/f-create-node.event.js +1 -1
  252. package/esm2015/f-external-item/f-external-item-base.js +1 -1
  253. package/esm2015/f-flow/f-flow-base.js +1 -1
  254. package/esm2015/f-flow/f-flow.component.js +13 -11
  255. package/esm2015/f-line-alignment/domain/line-service.js +1 -1
  256. package/esm2015/f-line-alignment/domain/nearest-coordinate.js +1 -1
  257. package/esm2015/f-line-alignment/f-line-alignment-base.js +1 -1
  258. package/esm2015/f-line-alignment/f-line-alignment.component.js +5 -5
  259. package/esm2015/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.execution.js +3 -3
  260. package/esm2015/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.request.js +1 -1
  261. package/esm2015/f-minimap/domain/check-rect-is-finite.js +2 -2
  262. package/esm2015/f-minimap/domain/f-minimap-data.js +2 -2
  263. package/esm2015/f-minimap/domain/f-minimap.drag-handler.js +2 -2
  264. package/esm2015/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.js +2 -2
  265. package/esm2015/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.request.js +1 -1
  266. package/esm2015/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.validator.js +2 -2
  267. package/esm2015/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.js +6 -6
  268. package/esm2015/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.request.js +1 -1
  269. package/esm2015/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.validator.js +2 -2
  270. package/esm2015/f-minimap/f-minimap-canvas.directive.js +2 -2
  271. package/esm2015/f-minimap/f-minimap-flow.directive.js +5 -5
  272. package/esm2015/f-minimap/f-minimap-view.directive.js +2 -2
  273. package/esm2015/f-minimap/f-minimap.component.js +4 -4
  274. package/esm2015/f-node/f-drag-handle/f-drag-handle.directive.js +1 -1
  275. package/esm2015/f-node/f-group.directive.js +6 -10
  276. package/esm2015/f-node/f-node-base.js +10 -13
  277. package/esm2015/f-node/f-node.directive.js +6 -10
  278. package/esm2015/f-node/f-resize-handle/f-resize-handle.directive.js +2 -2
  279. package/esm2015/f-node/f-rotate-handle/f-rotate-handle.directive.js +1 -1
  280. package/esm2015/f-selection-area/domain/selection-area-finalize/selection-area-finalize.execution.js +2 -2
  281. package/esm2015/f-selection-area/domain/selection-area-finalize/selection-area-finalize.request.js +1 -1
  282. package/esm2015/f-selection-area/domain/selection-area-finalize/selection-area-finalize.validator.js +2 -2
  283. package/esm2015/f-selection-area/domain/selection-area-preparation/selection-area-preparation.execution.js +6 -6
  284. package/esm2015/f-selection-area/domain/selection-area-preparation/selection-area-preparation.request.js +1 -1
  285. package/esm2015/f-selection-area/domain/selection-area-preparation/selection-area-preparation.validator.js +2 -2
  286. package/esm2015/f-selection-area/domain/selection-area.drag-handle.js +2 -2
  287. package/esm2015/f-selection-area/f-selection-area-base.js +1 -1
  288. package/esm2015/f-selection-area/f-selection-area.component.js +4 -4
  289. package/esm2015/f-storage/f-components-store.js +1 -1
  290. package/esm2015/f-zoom/f-zoom-base.js +3 -2
  291. package/esm2015/f-zoom/f-zoom.directive.js +3 -3
  292. package/esm2015/i-has-host-element.js +2 -0
  293. package/esm2015/mixins/change-position.js +15 -0
  294. package/esm2015/mixins/change-selection/change-selection.js +30 -0
  295. package/esm2015/mixins/change-selection/i-can-change-selection.js +2 -0
  296. package/esm2015/mixins/change-selection/index.js +3 -0
  297. package/esm2015/mixins/change-visibility/change-visibility.js +14 -0
  298. package/esm2015/mixins/change-visibility/i-can-change-visibility.js +2 -0
  299. package/esm2015/mixins/change-visibility/index.js +3 -0
  300. package/esm2015/mixins/change-zoom/change-zoom.js +25 -0
  301. package/esm2015/mixins/change-zoom/i-can-change-zoom.js +2 -0
  302. package/esm2015/mixins/change-zoom/index.js +3 -0
  303. package/esm2015/mixins/constructor.js +2 -0
  304. package/esm2015/mixins/fit-to-parent/fit-to-parent.js +27 -0
  305. package/esm2015/mixins/fit-to-parent/i-can-fit-to-parent.js +2 -0
  306. package/esm2015/mixins/fit-to-parent/index.js +3 -0
  307. package/esm2015/mixins/i-transformable.js +2 -0
  308. package/esm2015/mixins/index.js +9 -0
  309. package/esm2015/mixins/one-to-one-centering/i-can-one-to-one-centering.js +2 -0
  310. package/esm2015/mixins/one-to-one-centering/index.js +3 -0
  311. package/esm2015/mixins/one-to-one-centering/one-to-one-centering.js +24 -0
  312. package/esm2015/public-api.js +3 -2
  313. package/f-backgroud/domain/i-f-background-pattern.d.ts +1 -1
  314. package/f-backgroud/f-background-base.d.ts +2 -1
  315. package/f-backgroud/f-background.component.d.ts +1 -1
  316. package/f-backgroud/f-circle-pattern/f-circle-pattern.component.d.ts +1 -1
  317. package/f-backgroud/f-rect-pattern/f-rect-pattern.component.d.ts +1 -1
  318. package/f-canvas/domain/f-canvas-change.event.d.ts +1 -1
  319. package/f-canvas/f-canvas-base.d.ts +4 -2
  320. package/f-canvas/f-canvas.component.d.ts +5 -4
  321. package/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points-request.d.ts +1 -1
  322. package/f-connection/common/domain/calculate-center-between-points/calculate-center-between-points.handler.d.ts +2 -1
  323. package/f-connection/common/domain/calculate-connection-center/calculate-connection-center-request.d.ts +1 -1
  324. package/f-connection/common/domain/calculate-connection-center/calculate-connection-center.handler.d.ts +2 -1
  325. package/f-connection/common/f-connection-base.d.ts +7 -4
  326. package/f-connection/common/f-connection-text/f-connection-text-path.directive.d.ts +1 -1
  327. package/f-connection/common/f-connection-text/f-connection-text.component.d.ts +1 -1
  328. package/f-connection/common/f-connection-text/i-connection-text.d.ts +2 -1
  329. package/f-connection/common/f-drag-handle/f-connection-drag-handle.component.d.ts +2 -1
  330. package/f-connection/common/f-gradient/f-connection-gradient.component.d.ts +1 -1
  331. package/f-connection/common/f-gradient/i-connection-gradient.d.ts +2 -1
  332. package/f-connection/common/f-path/i-connection-path.d.ts +1 -1
  333. package/f-connection/common/f-selection/f-connection-selection.component.d.ts +1 -1
  334. package/f-connection/common/index.d.ts +0 -1
  335. package/f-connection/f-connection-builder/i-f-connection-builder-request.d.ts +1 -1
  336. package/f-connection/f-connection-builder/i-f-connection-builder-response.d.ts +1 -1
  337. package/f-connection/f-connection-builder/i-f-connection-builder.d.ts +1 -1
  338. package/f-connection/f-connection-for-create/f-connection-for-create.component.d.ts +1 -1
  339. package/f-connection/f-marker/f-marker-base.d.ts +1 -1
  340. package/f-connection/f-snap-connection/f-snap-connection.component.d.ts +53 -0
  341. package/f-connection/f-snap-connection/index.d.ts +1 -0
  342. package/f-connection/index.d.ts +1 -0
  343. package/f-connectors/domain/calculate-connector-connectable-side/calculate-connector-connectable-side.handler.d.ts +1 -1
  344. package/f-connectors/f-connector-base.d.ts +1 -1
  345. package/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.execution.d.ts +1 -1
  346. package/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.request.d.ts +1 -1
  347. package/f-draggable/canvas/canvas-move-finalize/canvas-move-finalize.validator.d.ts +1 -1
  348. package/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.execution.d.ts +1 -1
  349. package/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.request.d.ts +1 -1
  350. package/f-draggable/canvas/canvas-move-preparation/canvas-move-preparation.validator.d.ts +1 -2
  351. package/f-draggable/canvas/canvas.drag-handler.d.ts +1 -1
  352. package/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.execution.d.ts +3 -3
  353. package/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.request.d.ts +1 -1
  354. package/f-draggable/connections/create-connection/create-connection-finalize/create-connection-finalize.validator.d.ts +1 -1
  355. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.execution.d.ts +3 -3
  356. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-drag-handler/create-connection-drag-handler.request.d.ts +1 -1
  357. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.execution.d.ts +3 -3
  358. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-outlet-preparation/create-connection-from-outlet-preparation.request.d.ts +1 -1
  359. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.execution.d.ts +3 -3
  360. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.request.d.ts +1 -1
  361. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-from-output-preparation/create-connection-from-output-preparation.validator.d.ts +1 -1
  362. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.execution.d.ts +3 -3
  363. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.request.d.ts +1 -1
  364. package/f-draggable/connections/create-connection/create-connection-preparation/create-connection-preparation.validator.d.ts +1 -1
  365. package/f-draggable/connections/create-connection/create-connection.drag-handler.d.ts +3 -3
  366. package/f-draggable/connections/create-connection/f-create-connection.event.d.ts +1 -1
  367. package/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.execution.d.ts +1 -1
  368. package/f-draggable/connections/create-connection/get-can-be-connected-output-by-outlet/get-can-be-connected-output-by-outlet.validator.d.ts +1 -1
  369. package/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.execution.d.ts +1 -1
  370. package/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.request.d.ts +1 -1
  371. package/f-draggable/connections/get-input-under-pointer/get-input-under-pointer.validator.d.ts +1 -1
  372. package/f-draggable/connections/providers.d.ts +1 -1
  373. package/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.execution.d.ts +2 -2
  374. package/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.request.d.ts +1 -1
  375. package/f-draggable/connections/reassign-connection/reassign-connection-finalize/reassign-connection-finalize.validator.d.ts +1 -1
  376. package/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.execution.d.ts +2 -2
  377. package/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.request.d.ts +1 -1
  378. package/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.validator.d.ts +1 -1
  379. package/f-draggable/connections/reassign-connection/reassign-connection.drag-handler.d.ts +3 -3
  380. package/f-draggable/domain/get-node-padding/get-node-padding.execution.d.ts +1 -1
  381. package/f-draggable/domain/get-node-padding/get-node-padding.request.d.ts +1 -1
  382. package/f-draggable/domain/get-normalized-node-rect/get-normalized-node-rect.execution.d.ts +2 -2
  383. package/f-draggable/domain/get-normalized-parent-node-rect/get-normalized-parent-node-rect.execution.d.ts +3 -3
  384. package/f-draggable/domain/get-parent-nodes/get-parent-nodes.execution.d.ts +1 -1
  385. package/f-draggable/domain/is-array-has-parent-node/is-array-has-parent-node.execution.d.ts +2 -2
  386. package/f-draggable/f-draggable-base.d.ts +3 -39
  387. package/f-draggable/f-draggable-data-context.d.ts +3 -3
  388. package/f-draggable/f-draggable.directive.d.ts +3 -4
  389. package/f-draggable/i-draggable-item.d.ts +1 -1
  390. package/f-draggable/i-f-drag-and-drop-plugin.d.ts +1 -1
  391. package/f-draggable/index.d.ts +0 -1
  392. package/f-draggable/node/connection-base-drag-handler.d.ts +4 -5
  393. package/f-draggable/node/connection-source.drag-handler.d.ts +3 -3
  394. package/f-draggable/node/connection-target.drag-handler.d.ts +3 -3
  395. package/f-draggable/node/connection.drag-handler.d.ts +3 -3
  396. package/f-draggable/node/create-move-nodes-drag-model-from-selection/create-move-nodes-drag-model-from-selection.execution.d.ts +2 -2
  397. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/get-node-move-restrictions.execution.d.ts +2 -2
  398. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/get-node-move-restrictions/i-node-move-restrictions.d.ts +1 -1
  399. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-input-connection-handlers-to-array/put-input-connection-handlers-to-array.execution.d.ts +2 -2
  400. package/f-draggable/node/create-move-nodes-drag-model-from-selection/domain/put-output-connection-handlers-to-array/put-output-connection-handlers-to-array.execution.d.ts +2 -2
  401. package/f-draggable/node/create-move-nodes-drag-model-from-selection/providers.d.ts +1 -1
  402. package/f-draggable/node/node-move-finalize/node-move-finalize.execution.d.ts +2 -2
  403. package/f-draggable/node/node-move-finalize/node-move-finalize.request.d.ts +1 -1
  404. package/f-draggable/node/node-move-finalize/node-move-finalize.validator.d.ts +1 -1
  405. package/f-draggable/node/node-move-preparation/node-move-preparation.execution.d.ts +2 -2
  406. package/f-draggable/node/node-move-preparation/node-move-preparation.request.d.ts +1 -1
  407. package/f-draggable/node/node-move-preparation/node-move-preparation.validator.d.ts +1 -1
  408. package/f-draggable/node/node-resize-by-child.drag-handler.d.ts +1 -1
  409. package/f-draggable/node/node.drag-handler.d.ts +1 -1
  410. package/f-draggable/node/providers.d.ts +1 -1
  411. package/f-draggable/node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.execution.d.ts +1 -1
  412. package/f-draggable/node-resize/apply-child-resize-restrictions/apply-child-resize-restrictions.request.d.ts +1 -1
  413. package/f-draggable/node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.execution.d.ts +1 -1
  414. package/f-draggable/node-resize/apply-parent-resize-restrictions/apply-parent-resize-restrictions.request.d.ts +1 -1
  415. package/f-draggable/node-resize/calculate-changed-position/calculate-changed-position.execution.d.ts +2 -2
  416. package/f-draggable/node-resize/calculate-changed-position/calculate-changed-position.request.d.ts +1 -1
  417. package/f-draggable/node-resize/calculate-changed-size/calculate-changed-size.execution.d.ts +2 -2
  418. package/f-draggable/node-resize/calculate-changed-size/calculate-changed-size.request.d.ts +1 -1
  419. package/f-draggable/node-resize/get-node-resize-restrictions/get-node-resize-restrictions.execution.d.ts +2 -2
  420. package/f-draggable/node-resize/get-node-resize-restrictions/get-node-resize-restrictions.request.d.ts +1 -1
  421. package/f-draggable/node-resize/get-node-resize-restrictions/i-node-resize-restrictions.d.ts +1 -1
  422. package/f-draggable/node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.execution.d.ts +3 -3
  423. package/f-draggable/node-resize/get-normalized-children-nodes-rect/get-normalized-children-nodes-rect.request.d.ts +1 -1
  424. package/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.execution.d.ts +1 -1
  425. package/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.request.d.ts +1 -1
  426. package/f-draggable/node-resize/node-resize-finalize/node-resize-finalize.validator.d.ts +1 -1
  427. package/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.execution.d.ts +2 -2
  428. package/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.request.d.ts +1 -1
  429. package/f-draggable/node-resize/node-resize-preparation/node-resize-preparation.validator.d.ts +1 -1
  430. package/f-draggable/node-resize/node-resize.drag-handler.d.ts +3 -3
  431. package/f-draggable/providers.d.ts +1 -1
  432. package/f-draggable/single-select/single-select.execution.d.ts +2 -2
  433. package/f-draggable/single-select/single-select.request.d.ts +1 -1
  434. package/f-draggable/single-select/single-select.validator.d.ts +1 -1
  435. package/f-external-item/domain/external-item-finalize/external-item-finalize.execution.d.ts +2 -2
  436. package/f-external-item/domain/external-item-finalize/external-item-finalize.request.d.ts +1 -1
  437. package/f-external-item/domain/external-item-finalize/external-item-finalize.validator.d.ts +1 -1
  438. package/f-external-item/domain/external-item-preparation/external-item-preparation.execution.d.ts +1 -1
  439. package/f-external-item/domain/external-item-preparation/external-item-preparation.request.d.ts +1 -1
  440. package/f-external-item/domain/external-item-preparation/external-item-preparation.validator.d.ts +1 -1
  441. package/f-external-item/domain/external-item.drag-handler.d.ts +1 -1
  442. package/f-external-item/domain/f-create-node.event.d.ts +1 -1
  443. package/f-external-item/f-external-item-base.d.ts +1 -1
  444. package/f-flow/f-flow-base.d.ts +1 -1
  445. package/f-flow/f-flow.component.d.ts +5 -3
  446. package/f-line-alignment/domain/line-service.d.ts +1 -1
  447. package/f-line-alignment/domain/nearest-coordinate.d.ts +1 -1
  448. package/f-line-alignment/f-line-alignment-base.d.ts +2 -1
  449. package/f-line-alignment/f-line-alignment.component.d.ts +3 -3
  450. package/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.execution.d.ts +2 -2
  451. package/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.request.d.ts +1 -1
  452. package/f-minimap/domain/check-rect-is-finite.d.ts +1 -1
  453. package/f-minimap/domain/f-minimap-data.d.ts +1 -1
  454. package/f-minimap/domain/f-minimap.drag-handler.d.ts +3 -3
  455. package/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.d.ts +1 -1
  456. package/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.request.d.ts +1 -1
  457. package/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.validator.d.ts +1 -1
  458. package/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.d.ts +2 -2
  459. package/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.request.d.ts +1 -1
  460. package/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.validator.d.ts +1 -1
  461. package/f-minimap/domain/providers.d.ts +1 -1
  462. package/f-minimap/f-minimap-flow.directive.d.ts +2 -2
  463. package/f-minimap/f-minimap.component.d.ts +3 -3
  464. package/f-node/f-drag-handle/f-drag-handle.directive.d.ts +1 -1
  465. package/f-node/f-group.directive.d.ts +4 -5
  466. package/f-node/f-node-base.d.ts +10 -7
  467. package/f-node/f-node.directive.d.ts +4 -5
  468. package/f-node/f-resize-handle/f-resize-handle.directive.d.ts +1 -1
  469. package/f-node/f-rotate-handle/f-rotate-handle.directive.d.ts +1 -1
  470. package/f-selection-area/domain/selection-area-finalize/selection-area-finalize.execution.d.ts +1 -1
  471. package/f-selection-area/domain/selection-area-finalize/selection-area-finalize.request.d.ts +1 -1
  472. package/f-selection-area/domain/selection-area-finalize/selection-area-finalize.validator.d.ts +1 -1
  473. package/f-selection-area/domain/selection-area-preparation/selection-area-preparation.execution.d.ts +2 -2
  474. package/f-selection-area/domain/selection-area-preparation/selection-area-preparation.request.d.ts +1 -1
  475. package/f-selection-area/domain/selection-area-preparation/selection-area-preparation.validator.d.ts +1 -1
  476. package/f-selection-area/domain/selection-area.drag-handle.d.ts +3 -3
  477. package/f-selection-area/f-selection-area-base.d.ts +2 -1
  478. package/f-selection-area/f-selection-area.component.d.ts +4 -3
  479. package/f-storage/f-components-store.d.ts +1 -1
  480. package/f-zoom/f-zoom-base.d.ts +1 -1
  481. package/fesm2015/foblex-flow.js +2615 -2731
  482. package/fesm2015/foblex-flow.js.map +1 -1
  483. package/i-has-host-element.d.ts +3 -0
  484. package/mixins/change-position.d.ts +10 -0
  485. package/mixins/change-selection/change-selection.d.ts +7 -0
  486. package/mixins/change-selection/i-can-change-selection.d.ts +10 -0
  487. package/mixins/change-selection/index.d.ts +2 -0
  488. package/mixins/change-visibility/change-visibility.d.ts +6 -0
  489. package/mixins/change-visibility/i-can-change-visibility.d.ts +5 -0
  490. package/mixins/change-visibility/index.d.ts +2 -0
  491. package/mixins/change-zoom/change-zoom.d.ts +6 -0
  492. package/mixins/change-zoom/i-can-change-zoom.d.ts +6 -0
  493. package/mixins/change-zoom/index.d.ts +2 -0
  494. package/mixins/constructor.d.ts +2 -0
  495. package/mixins/fit-to-parent/fit-to-parent.d.ts +6 -0
  496. package/mixins/fit-to-parent/i-can-fit-to-parent.d.ts +4 -0
  497. package/mixins/fit-to-parent/index.d.ts +2 -0
  498. package/mixins/i-transformable.d.ts +4 -0
  499. package/mixins/index.d.ts +8 -0
  500. package/mixins/one-to-one-centering/i-can-one-to-one-centering.d.ts +4 -0
  501. package/mixins/one-to-one-centering/index.d.ts +2 -0
  502. package/mixins/one-to-one-centering/one-to-one-centering.d.ts +6 -0
  503. package/package.json +5 -2
  504. package/public-api.d.ts +2 -1
  505. package/domain/cast-to-enum.d.ts +0 -1
  506. package/domain/deep-clone-node.d.ts +0 -1
  507. package/domain/get-value-from-data-attr.d.ts +0 -1
  508. package/domain/intersections/e-f-connector-shape.d.ts +0 -3
  509. package/domain/intersections/f-connector-shape.extensions.d.ts +0 -11
  510. package/domain/intersections/i-connector-shape.d.ts +0 -6
  511. package/domain/intersections/index.d.ts +0 -5
  512. package/domain/intersections/intersection-finder.d.ts +0 -67
  513. package/domain/intersections/rounded-rect/i-rounded-rect.d.ts +0 -8
  514. package/domain/intersections/rounded-rect/index.d.ts +0 -2
  515. package/domain/intersections/rounded-rect/rounded-rect.d.ts +0 -23
  516. package/domain/is-element-with-class.d.ts +0 -1
  517. package/esm2015/domain/cast-to-enum.js +0 -12
  518. package/esm2015/domain/deep-clone-node.js +0 -47
  519. package/esm2015/domain/get-value-from-data-attr.js +0 -7
  520. package/esm2015/domain/intersections/e-f-connector-shape.js +0 -5
  521. package/esm2015/domain/intersections/f-connector-shape.extensions.js +0 -46
  522. package/esm2015/domain/intersections/i-connector-shape.js +0 -2
  523. package/esm2015/domain/intersections/index.js +0 -6
  524. package/esm2015/domain/intersections/intersection-finder.js +0 -156
  525. package/esm2015/domain/intersections/rounded-rect/i-rounded-rect.js +0 -2
  526. package/esm2015/domain/intersections/rounded-rect/index.js +0 -3
  527. package/esm2015/domain/intersections/rounded-rect/rounded-rect.js +0 -46
  528. package/esm2015/domain/is-element-with-class.js +0 -8
  529. package/esm2015/f-connection/common/mixins/change-connection-selection.mixin.js +0 -26
  530. package/esm2015/f-connection/common/mixins/change-connection-visibility.mixin.js +0 -14
  531. package/esm2015/f-connection/common/mixins/index.js +0 -3
  532. package/esm2015/f-draggable/i-can-run-outside-angular.js +0 -2
  533. package/esm2015/infrastructure/f-mediator/f-execution-register.js +0 -7
  534. package/esm2015/infrastructure/f-mediator/f-flow-mediator.js +0 -29
  535. package/esm2015/infrastructure/f-mediator/f-validator-register.js +0 -7
  536. package/esm2015/infrastructure/f-mediator/index.js +0 -4
  537. package/esm2015/infrastructure/index.js +0 -3
  538. package/esm2015/infrastructure/pipeline/i-execution.js +0 -2
  539. package/esm2015/infrastructure/pipeline/i-validator.js +0 -2
  540. package/esm2015/infrastructure/pipeline/index.js +0 -4
  541. package/esm2015/infrastructure/pipeline/pipeline.js +0 -19
  542. package/f-connection/common/mixins/change-connection-selection.mixin.d.ts +0 -13
  543. package/f-connection/common/mixins/change-connection-visibility.mixin.d.ts +0 -9
  544. package/f-connection/common/mixins/index.d.ts +0 -2
  545. package/f-draggable/i-can-run-outside-angular.d.ts +0 -3
  546. package/infrastructure/f-mediator/f-execution-register.d.ts +0 -5
  547. package/infrastructure/f-mediator/f-flow-mediator.d.ts +0 -12
  548. package/infrastructure/f-mediator/f-validator-register.d.ts +0 -5
  549. package/infrastructure/f-mediator/index.d.ts +0 -3
  550. package/infrastructure/index.d.ts +0 -2
  551. package/infrastructure/pipeline/i-execution.d.ts +0 -3
  552. package/infrastructure/pipeline/i-validator.d.ts +0 -3
  553. package/infrastructure/pipeline/index.d.ts +0 -3
  554. package/infrastructure/pipeline/pipeline.d.ts +0 -11
@@ -49,4 +49,4 @@ FComponentsStore.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", ver
49
49
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FComponentsStore, decorators: [{
50
50
  type: Injectable
51
51
  }] });
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb21wb25lbnRzLXN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLXN0b3JhZ2UvZi1jb21wb25lbnRzLXN0b3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFXM0MsTUFBTSxPQUFPLGdCQUFnQjtJQUQ3QjtRQUdtQiwwQkFBcUIsR0FBa0IsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUszRCwyQkFBc0IsR0FBa0IsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQW1CdEUsV0FBTSxHQUFnQixFQUFFLENBQUM7UUFFekIsaUJBQVksR0FBc0IsRUFBRSxDQUFDO1FBSXJDLGFBQVEsR0FBa0IsRUFBRSxDQUFDO1FBRTdCLGFBQVEsR0FBcUIsRUFBRSxDQUFDO1FBRWhDLFlBQU8sR0FBcUIsRUFBRSxDQUFDO1FBRS9CLGFBQVEsR0FBcUIsRUFBRSxDQUFDO0tBd0J4QztJQTNEQyxJQUFXLGVBQWU7UUFDeEIsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDbkQsQ0FBQztJQUdELElBQVcsZ0JBQWdCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3BELENBQUM7SUFFRCxJQUFXLFFBQVE7O1FBQ2pCLE9BQU8sTUFBQSxJQUFJLENBQUMsS0FBSywwQ0FBRSxXQUFZLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQVcsU0FBUzs7UUFDbEIsT0FBTyxNQUFBLElBQUksQ0FBQyxPQUFPLDBDQUFFLFNBQVUsQ0FBQztJQUNsQyxDQUFDO0lBd0JNLFFBQVEsQ0FBQyxPQUFpQztRQUMvQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFTSxZQUFZLENBQUksVUFBZSxFQUFFLFNBQVk7UUFDbEQsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVNLGVBQWUsQ0FBSSxVQUFlLEVBQUUsU0FBWTtRQUNyRCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzVDLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFFO1lBQ2QsVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDNUIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksRUFBRSxDQUFDO1NBQ3BDO0lBQ0gsQ0FBQztJQUVNLG9CQUFvQjtRQUN6QixJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDcEMsQ0FBQzs7OEdBN0RVLGdCQUFnQjtrSEFBaEIsZ0JBQWdCOzRGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJVHJhbnNmb3JtTW9kZWwgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuaW1wb3J0IHsgRkNvbm5lY3Rpb25CYXNlLCBGTWFya2VyQmFzZSB9IGZyb20gJy4uL2YtY29ubmVjdGlvbic7XG5pbXBvcnQgeyBGRmxvd0Jhc2UgfSBmcm9tICcuLi9mLWZsb3cnO1xuaW1wb3J0IHsgRkNhbnZhc0Jhc2UgfSBmcm9tICcuLi9mLWNhbnZhcyc7XG5pbXBvcnQgeyBGQmFja2dyb3VuZEJhc2UgfSBmcm9tICcuLi9mLWJhY2tncm91ZCc7XG5pbXBvcnQgeyBGTm9kZUJhc2UgfSBmcm9tICcuLi9mLW5vZGUnO1xuaW1wb3J0IHsgRkNvbm5lY3RvckJhc2UgfSBmcm9tICcuLi9mLWNvbm5lY3RvcnMnO1xuaW1wb3J0IHsgRkRyYWdnYWJsZUJhc2UgfSBmcm9tICcuLi9mLWRyYWdnYWJsZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBGQ29tcG9uZW50c1N0b3JlIHtcblxuICBwcml2YXRlIHJlYWRvbmx5IGNvbXBvbmVudHNEYXRhQ2hhbmdlczogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHB1YmxpYyBnZXQgY29tcG9uZW50c0RhdGEkKCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLmNvbXBvbmVudHNEYXRhQ2hhbmdlcy5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgY29tcG9uZW50c0NvdW50Q2hhbmdlczogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHB1YmxpYyBnZXQgY29tcG9uZW50c0NvdW50JCgpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5jb21wb25lbnRzQ291bnRDaGFuZ2VzLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGdldCBmbG93SG9zdCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZkZsb3c/Lmhvc3RFbGVtZW50ITtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdHJhbnNmb3JtKCk6IElUcmFuc2Zvcm1Nb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuZkNhbnZhcz8udHJhbnNmb3JtITtcbiAgfVxuXG4gIHB1YmxpYyBmRmxvdzogRkZsb3dCYXNlIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBmQ2FudmFzOiBGQ2FudmFzQmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZkJhY2tncm91bmQ6IEZCYWNrZ3JvdW5kQmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZk5vZGVzOiBGTm9kZUJhc2VbXSA9IFtdO1xuXG4gIHB1YmxpYyBmQ29ubmVjdGlvbnM6IEZDb25uZWN0aW9uQmFzZVtdID0gW107XG5cbiAgcHVibGljIGZUZW1wQ29ubmVjdGlvbjogRkNvbm5lY3Rpb25CYXNlIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBmTWFya2VyczogRk1hcmtlckJhc2VbXSA9IFtdO1xuXG4gIHB1YmxpYyBmT3V0cHV0czogRkNvbm5lY3RvckJhc2VbXSA9IFtdO1xuXG4gIHB1YmxpYyBmSW5wdXRzOiBGQ29ubmVjdG9yQmFzZVtdID0gW107XG5cbiAgcHVibGljIGZPdXRsZXRzOiBGQ29ubmVjdG9yQmFzZVtdID0gW107XG5cbiAgcHVibGljIGZEcmFnZ2FibGU6IEZEcmFnZ2FibGVCYXNlIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBmaW5kTm9kZShlbGVtZW50OiBIVE1MRWxlbWVudCB8IFNWR0VsZW1lbnQpOiBGTm9kZUJhc2UgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmZOb2Rlcy5maW5kKG4gPT4gbi5pc0NvbnRhaW5zKGVsZW1lbnQpKTtcbiAgfVxuXG4gIHB1YmxpYyBhZGRDb21wb25lbnQ8VD4oY29sbGVjdGlvbjogVFtdLCBjb21wb25lbnQ6IFQpOiB2b2lkIHtcbiAgICBjb2xsZWN0aW9uLnB1c2goY29tcG9uZW50KTtcbiAgICB0aGlzLmNvbXBvbmVudHNDb3VudENoYW5nZXMubmV4dCgpO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZUNvbXBvbmVudDxUPihjb2xsZWN0aW9uOiBUW10sIGNvbXBvbmVudDogVCk6IHZvaWQge1xuICAgIGNvbnN0IGluZGV4ID0gY29sbGVjdGlvbi5pbmRleE9mKGNvbXBvbmVudCk7XG4gICAgaWYgKGluZGV4ID4gLTEpIHtcbiAgICAgIGNvbGxlY3Rpb24uc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIHRoaXMuY29tcG9uZW50c0NvdW50Q2hhbmdlcy5uZXh0KCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNvbXBvbmVudERhdGFDaGFuZ2VkKCk6IHZvaWQge1xuICAgIHRoaXMuY29tcG9uZW50c0RhdGFDaGFuZ2VzLm5leHQoKTtcbiAgfVxufVxuIl19
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jb21wb25lbnRzLXN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLXN0b3JhZ2UvZi1jb21wb25lbnRzLXN0b3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFXM0MsTUFBTSxPQUFPLGdCQUFnQjtJQUQ3QjtRQUdtQiwwQkFBcUIsR0FBa0IsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUszRCwyQkFBc0IsR0FBa0IsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQW1CdEUsV0FBTSxHQUFnQixFQUFFLENBQUM7UUFFekIsaUJBQVksR0FBc0IsRUFBRSxDQUFDO1FBSXJDLGFBQVEsR0FBa0IsRUFBRSxDQUFDO1FBRTdCLGFBQVEsR0FBcUIsRUFBRSxDQUFDO1FBRWhDLFlBQU8sR0FBcUIsRUFBRSxDQUFDO1FBRS9CLGFBQVEsR0FBcUIsRUFBRSxDQUFDO0tBd0J4QztJQTNEQyxJQUFXLGVBQWU7UUFDeEIsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDbkQsQ0FBQztJQUdELElBQVcsZ0JBQWdCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3BELENBQUM7SUFFRCxJQUFXLFFBQVE7O1FBQ2pCLE9BQU8sTUFBQSxJQUFJLENBQUMsS0FBSywwQ0FBRSxXQUFZLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQVcsU0FBUzs7UUFDbEIsT0FBTyxNQUFBLElBQUksQ0FBQyxPQUFPLDBDQUFFLFNBQVUsQ0FBQztJQUNsQyxDQUFDO0lBd0JNLFFBQVEsQ0FBQyxPQUFpQztRQUMvQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFTSxZQUFZLENBQUksVUFBZSxFQUFFLFNBQVk7UUFDbEQsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVNLGVBQWUsQ0FBSSxVQUFlLEVBQUUsU0FBWTtRQUNyRCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzVDLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFFO1lBQ2QsVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDNUIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksRUFBRSxDQUFDO1NBQ3BDO0lBQ0gsQ0FBQztJQUVNLG9CQUFvQjtRQUN6QixJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDcEMsQ0FBQzs7OEdBN0RVLGdCQUFnQjtrSEFBaEIsZ0JBQWdCOzRGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJVHJhbnNmb3JtTW9kZWwgfSBmcm9tICdAZm9ibGV4LzJkJztcbmltcG9ydCB7IEZDb25uZWN0aW9uQmFzZSwgRk1hcmtlckJhc2UgfSBmcm9tICcuLi9mLWNvbm5lY3Rpb24nO1xuaW1wb3J0IHsgRkZsb3dCYXNlIH0gZnJvbSAnLi4vZi1mbG93JztcbmltcG9ydCB7IEZDYW52YXNCYXNlIH0gZnJvbSAnLi4vZi1jYW52YXMnO1xuaW1wb3J0IHsgRkJhY2tncm91bmRCYXNlIH0gZnJvbSAnLi4vZi1iYWNrZ3JvdWQnO1xuaW1wb3J0IHsgRk5vZGVCYXNlIH0gZnJvbSAnLi4vZi1ub2RlJztcbmltcG9ydCB7IEZDb25uZWN0b3JCYXNlIH0gZnJvbSAnLi4vZi1jb25uZWN0b3JzJztcbmltcG9ydCB7IEZEcmFnZ2FibGVCYXNlIH0gZnJvbSAnLi4vZi1kcmFnZ2FibGUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRkNvbXBvbmVudHNTdG9yZSB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBjb21wb25lbnRzRGF0YUNoYW5nZXM6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwdWJsaWMgZ2V0IGNvbXBvbmVudHNEYXRhJCgpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5jb21wb25lbnRzRGF0YUNoYW5nZXMuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IGNvbXBvbmVudHNDb3VudENoYW5nZXM6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwdWJsaWMgZ2V0IGNvbXBvbmVudHNDb3VudCQoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuY29tcG9uZW50c0NvdW50Q2hhbmdlcy5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZmxvd0hvc3QoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmZGbG93Py5ob3N0RWxlbWVudCE7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHRyYW5zZm9ybSgpOiBJVHJhbnNmb3JtTW9kZWwge1xuICAgIHJldHVybiB0aGlzLmZDYW52YXM/LnRyYW5zZm9ybSE7XG4gIH1cblxuICBwdWJsaWMgZkZsb3c6IEZGbG93QmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZkNhbnZhczogRkNhbnZhc0Jhc2UgfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIGZCYWNrZ3JvdW5kOiBGQmFja2dyb3VuZEJhc2UgfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIGZOb2RlczogRk5vZGVCYXNlW10gPSBbXTtcblxuICBwdWJsaWMgZkNvbm5lY3Rpb25zOiBGQ29ubmVjdGlvbkJhc2VbXSA9IFtdO1xuXG4gIHB1YmxpYyBmVGVtcENvbm5lY3Rpb246IEZDb25uZWN0aW9uQmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZk1hcmtlcnM6IEZNYXJrZXJCYXNlW10gPSBbXTtcblxuICBwdWJsaWMgZk91dHB1dHM6IEZDb25uZWN0b3JCYXNlW10gPSBbXTtcblxuICBwdWJsaWMgZklucHV0czogRkNvbm5lY3RvckJhc2VbXSA9IFtdO1xuXG4gIHB1YmxpYyBmT3V0bGV0czogRkNvbm5lY3RvckJhc2VbXSA9IFtdO1xuXG4gIHB1YmxpYyBmRHJhZ2dhYmxlOiBGRHJhZ2dhYmxlQmFzZSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZmluZE5vZGUoZWxlbWVudDogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50KTogRk5vZGVCYXNlIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5mTm9kZXMuZmluZChuID0+IG4uaXNDb250YWlucyhlbGVtZW50KSk7XG4gIH1cblxuICBwdWJsaWMgYWRkQ29tcG9uZW50PFQ+KGNvbGxlY3Rpb246IFRbXSwgY29tcG9uZW50OiBUKTogdm9pZCB7XG4gICAgY29sbGVjdGlvbi5wdXNoKGNvbXBvbmVudCk7XG4gICAgdGhpcy5jb21wb25lbnRzQ291bnRDaGFuZ2VzLm5leHQoKTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVDb21wb25lbnQ8VD4oY29sbGVjdGlvbjogVFtdLCBjb21wb25lbnQ6IFQpOiB2b2lkIHtcbiAgICBjb25zdCBpbmRleCA9IGNvbGxlY3Rpb24uaW5kZXhPZihjb21wb25lbnQpO1xuICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICBjb2xsZWN0aW9uLnNwbGljZShpbmRleCwgMSk7XG4gICAgICB0aGlzLmNvbXBvbmVudHNDb3VudENoYW5nZXMubmV4dCgpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjb21wb25lbnREYXRhQ2hhbmdlZCgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbXBvbmVudHNEYXRhQ2hhbmdlcy5uZXh0KCk7XG4gIH1cbn1cbiJdfQ==
@@ -1,4 +1,5 @@
1
- import { EventExtensions, Point, RectExtensions } from '@foblex/core';
1
+ import { EventExtensions } from '@foblex/drag-toolkit';
2
+ import { Point, RectExtensions } from '@foblex/2d';
2
3
  import { InjectionToken } from '@angular/core';
3
4
  import { isNode } from '../f-node';
4
5
  export const F_ZOOM = new InjectionToken('F_ZOOM');
@@ -95,4 +96,4 @@ export class FZoomBase {
95
96
  this.listeners = EventExtensions.emptyListener();
96
97
  }
97
98
  }
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi16b29tLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2Ytem9vbS9mLXpvb20tYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFVLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDOUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRW5DLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxJQUFJLGNBQWMsQ0FBWSxRQUFRLENBQUMsQ0FBQztBQUU5RCxNQUFNLE9BQWdCLFNBQVM7SUFvQjdCLFlBQ2MsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFuQnRDLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFRN0IsY0FBUyxHQUFhLGVBQWUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQWE5RCxDQUFDO0lBWEQsSUFBWSxRQUFRO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFBWSxPQUFPO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQXNCLENBQUM7SUFDdEQsQ0FBQztJQU9TLFVBQVU7UUFDbEIsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztTQUNsQjthQUFNO1lBQ0wsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3BCO0lBQ0gsQ0FBQztJQUVPLFNBQVM7UUFDZixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDbEIsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFP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QUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFTSxLQUFLO1FBQ1YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVTLFdBQVc7UUFDbkIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxTQUFTLEdBQUcsZUFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ25ELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50RXh0ZW5zaW9ucywgSVBvaW50LCBQb2ludCwgUmVjdEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZDYW52YXNCYXNlIH0gZnJvbSAnLi4vZi1jYW52YXMnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBpc05vZGUgfSBmcm9tICcuLi9mLW5vZGUnO1xuXG5leHBvcnQgY29uc3QgRl9aT09NID0gbmV3IEluamVjdGlvblRva2VuPEZab29tQmFzZT4oJ0ZfWk9PTScpO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRlpvb21CYXNlIHtcblxuICBwcm90ZWN0ZWQgaXNFbmFibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHVibGljIGFic3RyYWN0IG1pbmltdW06IG51bWJlcjtcbiAgcHVibGljIGFic3RyYWN0IG1heGltdW06IG51bWJlcjtcblxuICBwdWJsaWMgYWJzdHJhY3Qgc3RlcDogbnVtYmVyO1xuICBwdWJsaWMgYWJzdHJhY3QgZGJsQ2xpY2tTdGVwOiBudW1iZXI7XG5cbiAgcHJpdmF0ZSBsaXN0ZW5lcnM6IEZ1bmN0aW9uID0gRXZlbnRFeHRlbnNpb25zLmVtcHR5TGlzdGVuZXIoKTtcblxuICBwcml2YXRlIGdldCBmbG93SG9zdCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mbG93SG9zdDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGZDYW52YXMoKTogRkNhbnZhc0Jhc2Uge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyBhcyBGQ2FudmFzQmFzZTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihcbiAgICAgIHByb3RlY3RlZCBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlXG4gICkge1xuICB9XG5cbiAgcHJvdGVjdGVkIHRvZ2dsZVpvb20oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNFbmFibGVkKSB7XG4gICAgICB0aGlzLnN1YnNjcmliZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzdWJzY3JpYmUoKTogdm9pZCB7XG4gICAgdGhpcy5saXN0ZW5lcnMoKTtcbiAgICBpZiAoIXRoaXMuZmxvd0hvc3QpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmZsb3dIb3N0LmFkZEV2ZW50TGlzdGVuZXIoJ3doZWVsJywgdGhpcy5vbldoZWVsLmJpbmQodGhpcykpO1xuICAgIHRoaXMuZmxvd0hvc3QuYWRkRXZlbnRMaXN0ZW5lcignZGJsY2xpY2snLCB0aGlzLm9uRG91YmxlQ2xpY2suYmluZCh0aGlzKSk7XG4gICAgdGhpcy5saXN0ZW5lcnMgPSAoKSA9PiB7XG4gICAgICB0aGlzLmZsb3dIb3N0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3doZWVsJywgdGhpcy5vbldoZWVsLmJpbmQodGhpcykpO1xuICAgICAgdGhpcy5mbG93SG9zdC5yZW1vdmVFdmVudExpc3RlbmVyKCdkYmxjbGljaycsIHRoaXMub25Eb3VibGVDbGljay5iaW5kKHRoaXMpKTtcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIGdldFNjYWxlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZkNhbnZhcy50cmFuc2Zvcm0uc2NhbGUgfHwgMTtcbiAgfVxuXG4gIHByaXZhdGUgb25XaGVlbChldmVudDogV2hlZWxFdmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgY29uc3QgdGFyZ2V0RWxlbWVudCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcblxuICAgIGlmICh0aGlzLmZDb21wb25lbnRzU3RvcmUuZkRyYWdnYWJsZT8uaXNEcmFnU3RhcnRlZCB8fCB0YXJnZXRFbGVtZW50Py5jbG9zZXN0KCdbZkxvY2tlZENvbnRleHRdJykpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBsZXQgcmVzdWx0OiBudW1iZXIgPSB0aGlzLmdldFNjYWxlKCk7XG5cbiAgICBjb25zdCBkaXJlY3Rpb24gPSBldmVudC5kZWx0YVkgPiAwID8gLTEgOiAxO1xuICAgIGNvbnN0IHN0ZXAgPSB0aGlzLnN0ZXA7XG4gICAgcmVzdWx0ID0gcmVzdWx0ICsgc3RlcCAqIGRpcmVjdGlvbjtcblxuICAgIHJlc3VsdCA9IE1hdGgubWF4KHRoaXMubWluaW11bSwgTWF0aC5taW4ocmVzdWx0LCB0aGlzLm1heGltdW0pKTtcblxuICAgIGNvbnN0IHBvaW50ZXJQb3NpdGlvbkluRmxvdyA9IG5ldyBQb2ludChldmVudC5jbGllbnRYLCBldmVudC5jbGllbnRZKS5lbGVtZW50VHJhbnNmb3JtKHRoaXMuZmxvd0hvc3QpO1xuXG4gICAgdGhpcy5mQ2FudmFzLnNldFpvb20ocmVzdWx0LCBwb2ludGVyUG9zaXRpb25JbkZsb3cpO1xuICAgIHRoaXMuZkNhbnZhcy5yZWRyYXcoKTtcbiAgICB0aGlzLmZDYW52YXMuY29tcGxldGVEcmFnKCk7XG4gIH1cblxuICBwcml2YXRlIG9uRG91YmxlQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGNvbnN0IHRhcmdldEVsZW1lbnQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICBpZiAodGhpcy5mQ29tcG9uZW50c1N0b3JlLmZEcmFnZ2FibGU/LmlzRHJhZ1N0YXJ0ZWQgfHwgaXNOb2RlKHRhcmdldEVsZW1lbnQpIHx8IHRhcmdldEVsZW1lbnQ/LmNsb3Nlc3QoJ1tmTG9ja2VkQ29udGV4dF0nKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxldCByZXN1bHQ6IG51bWJlciA9IHRoaXMuZ2V0U2NhbGUoKTtcblxuICAgIGNvbnN0IGRpcmVjdGlvbiA9IDE7XG4gICAgY29uc3Qgc3RlcCA9IHRoaXMuZGJsQ2xpY2tTdGVwO1xuICAgIHJlc3VsdCA9IHJlc3VsdCArIHN0ZXAgKiBkaXJlY3Rpb247XG5cbiAgICByZXN1bHQgPSBNYXRoLm1heCh0aGlzLm1pbmltdW0sIE1hdGgubWluKHJlc3VsdCwgdGhpcy5tYXhpbXVtKSk7XG5cbiAgICBjb25zdCBwb2ludGVyUG9zaXRpb25JbkZsb3cgPSBuZXcgUG9pbnQoZXZlbnQuY2xpZW50WCwgZXZlbnQuY2xpZW50WSkuZWxlbWVudFRyYW5zZm9ybSh0aGlzLmZsb3dIb3N0KTtcbiAgICB0aGlzLmZDYW52YXMuc2V0Wm9vbShyZXN1bHQsIHBvaW50ZXJQb3NpdGlvbkluRmxvdyk7XG4gICAgdGhpcy5mQ2FudmFzLnJlZHJhd1dpdGhBbmltYXRpb24oKTtcbiAgICB0aGlzLmZDYW52YXMuY29tcGxldGVEcmFnKCk7XG4gIH1cblxuICBwcml2YXRlIG9uWm9vbVRvQ2VudGVyKGRlbHRhWTogbnVtYmVyLCBwb3NpdGlvbj86IElQb2ludCk6IHZvaWQge1xuICAgIGNvbnN0IHByZXZlbnREZWZhdWx0ID0gKCkgPT4ge1xuICAgIH07XG4gICAgY29uc3QgcmVjdCA9IFJlY3RFeHRlbnNpb25zLmZyb21FbGVtZW50KHRoaXMuZmxvd0hvc3QpO1xuXG4gICAgdGhpcy5vbldoZWVsKHtcbiAgICAgIGRlbHRhWSwgcHJldmVudERlZmF1bHQsIGNsaWVudFg6IHBvc2l0aW9uPy54IHx8IHJlY3QuZ3Jhdml0eUNlbnRlci54LCBjbGllbnRZOiBwb3NpdGlvbj8ueSB8fCByZWN0LmdyYXZpdHlDZW50ZXIueVxuICAgIH0gYXMgV2hlZWxFdmVudCk7XG4gIH1cblxuICBwdWJsaWMgem9vbUluKHBvc2l0aW9uPzogSVBvaW50KTogdm9pZCB7XG4gICAgdGhpcy5vblpvb21Ub0NlbnRlcigtMSwgcG9zaXRpb24pO1xuICB9XG5cbiAgcHVibGljIHpvb21PdXQocG9zaXRpb24/OiBJUG9pbnQpOiB2b2lkIHtcbiAgICB0aGlzLm9uWm9vbVRvQ2VudGVyKDEsIHBvc2l0aW9uKTtcbiAgfVxuXG4gIHB1YmxpYyByZXNldCgpOiB2b2lkIHtcbiAgICB0aGlzLmZDYW52YXMucmVzZXRab29tKCk7XG4gICAgdGhpcy5mQ2FudmFzLnJlZHJhdygpO1xuICAgIHRoaXMuZkNhbnZhcy5jb21wbGV0ZURyYWcoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCB1bnN1YnNjcmliZSgpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RlbmVycygpO1xuICAgIHRoaXMubGlzdGVuZXJzID0gRXZlbnRFeHRlbnNpb25zLmVtcHR5TGlzdGVuZXIoKTtcbiAgfVxufVxuIl19
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi16b29tLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2Ytem9vbS9mLXpvb20tYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFVLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRW5DLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxJQUFJLGNBQWMsQ0FBWSxRQUFRLENBQUMsQ0FBQztBQUU5RCxNQUFNLE9BQWdCLFNBQVM7SUFvQjdCLFlBQ2MsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFuQnRDLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFRN0IsY0FBUyxHQUFhLGVBQWUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQWE5RCxDQUFDO0lBWEQsSUFBWSxRQUFRO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFBWSxPQUFPO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQXNCLENBQUM7SUFDdEQsQ0FBQztJQU9TLFVBQVU7UUFDbEIsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztTQUNsQjthQUFNO1lBQ0wsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3BCO0lBQ0gsQ0FBQztJQUVPLFNBQVM7UUFDZixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDbEIsT0FBTztTQUNSO1FBRUQsSUFB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O1FBQzlCLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFTSxLQUFLO1FBQ1YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVTLFdBQVc7UUFDbkIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxTQUFTLEdBQUcsZUFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ25ELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50RXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvZHJhZy10b29sa2l0JztcbmltcG9ydCB7IElQb2ludCwgUG9pbnQsIFJlY3RFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC8yZCc7XG5pbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkNhbnZhc0Jhc2UgfSBmcm9tICcuLi9mLWNhbnZhcyc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IGlzTm9kZSB9IGZyb20gJy4uL2Ytbm9kZSc7XG5cbmV4cG9ydCBjb25zdCBGX1pPT00gPSBuZXcgSW5qZWN0aW9uVG9rZW48Rlpvb21CYXNlPignRl9aT09NJyk7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGWm9vbUJhc2Uge1xuXG4gIHByb3RlY3RlZCBpc0VuYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwdWJsaWMgYWJzdHJhY3QgbWluaW11bTogbnVtYmVyO1xuICBwdWJsaWMgYWJzdHJhY3QgbWF4aW11bTogbnVtYmVyO1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBzdGVwOiBudW1iZXI7XG4gIHB1YmxpYyBhYnN0cmFjdCBkYmxDbGlja1N0ZXA6IG51bWJlcjtcblxuICBwcml2YXRlIGxpc3RlbmVyczogRnVuY3Rpb24gPSBFdmVudEV4dGVuc2lvbnMuZW1wdHlMaXN0ZW5lcigpO1xuXG4gIHByaXZhdGUgZ2V0IGZsb3dIb3N0KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZsb3dIb3N0O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgZkNhbnZhcygpOiBGQ2FudmFzQmFzZSB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzIGFzIEZDYW52YXNCYXNlO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKFxuICAgICAgcHJvdGVjdGVkIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmVcbiAgKSB7XG4gIH1cblxuICBwcm90ZWN0ZWQgdG9nZ2xlWm9vbSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc0VuYWJsZWQpIHtcbiAgICAgIHRoaXMuc3Vic2NyaWJlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHN1YnNjcmliZSgpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RlbmVycygpO1xuICAgIGlmICghdGhpcy5mbG93SG9zdCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuZmxvd0hvc3QuYWRkRXZlbnRMaXN0ZW5lcignd2hlZWwnLCB0aGlzLm9uV2hlZWwuYmluZCh0aGlzKSk7XG4gICAgdGhpcy5mbG93SG9zdC5hZGRFdmVudExpc3RlbmVyKCdkYmxjbGljaycsIHRoaXMub25Eb3VibGVDbGljay5iaW5kKHRoaXMpKTtcbiAgICB0aGlzLmxpc3RlbmVycyA9ICgpID0+IHtcbiAgICAgIHRoaXMuZmxvd0hvc3QucmVtb3ZlRXZlbnRMaXN0ZW5lcignd2hlZWwnLCB0aGlzLm9uV2hlZWwuYmluZCh0aGlzKSk7XG4gICAgICB0aGlzLmZsb3dIb3N0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2RibGNsaWNrJywgdGhpcy5vbkRvdWJsZUNsaWNrLmJpbmQodGhpcykpO1xuICAgIH07XG4gIH1cblxuICBwdWJsaWMgZ2V0U2NhbGUoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5mQ2FudmFzLnRyYW5zZm9ybS5zY2FsZSB8fCAxO1xuICB9XG5cbiAgcHJpdmF0ZSBvbldoZWVsKGV2ZW50OiBXaGVlbEV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBjb25zdCB0YXJnZXRFbGVtZW50ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xuXG4gICAgaWYgKHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mRHJhZ2dhYmxlPy5pc0RyYWdTdGFydGVkIHx8IHRhcmdldEVsZW1lbnQ/LmNsb3Nlc3QoJ1tmTG9ja2VkQ29udGV4dF0nKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxldCByZXN1bHQ6IG51bWJlciA9IHRoaXMuZ2V0U2NhbGUoKTtcblxuICAgIGNvbnN0IGRpcmVjdGlvbiA9IGV2ZW50LmRlbHRhWSA+IDAgPyAtMSA6IDE7XG4gICAgY29uc3Qgc3RlcCA9IHRoaXMuc3RlcDtcbiAgICByZXN1bHQgPSByZXN1bHQgKyBzdGVwICogZGlyZWN0aW9uO1xuXG4gICAgcmVzdWx0ID0gTWF0aC5tYXgodGhpcy5taW5pbXVtLCBNYXRoLm1pbihyZXN1bHQsIHRoaXMubWF4aW11bSkpO1xuXG4gICAgY29uc3QgcG9pbnRlclBvc2l0aW9uSW5GbG93ID0gbmV3IFBvaW50KGV2ZW50LmNsaWVudFgsIGV2ZW50LmNsaWVudFkpLmVsZW1lbnRUcmFuc2Zvcm0odGhpcy5mbG93SG9zdCk7XG5cbiAgICB0aGlzLmZDYW52YXMuc2V0Wm9vbShyZXN1bHQsIHBvaW50ZXJQb3NpdGlvbkluRmxvdyk7XG4gICAgdGhpcy5mQ2FudmFzLnJlZHJhdygpO1xuICAgIHRoaXMuZkNhbnZhcy5jb21wbGV0ZURyYWcoKTtcbiAgfVxuXG4gIHByaXZhdGUgb25Eb3VibGVDbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgY29uc3QgdGFyZ2V0RWxlbWVudCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcblxuICAgIGlmICh0aGlzLmZDb21wb25lbnRzU3RvcmUuZkRyYWdnYWJsZT8uaXNEcmFnU3RhcnRlZCB8fCBpc05vZGUodGFyZ2V0RWxlbWVudCkgfHwgdGFyZ2V0RWxlbWVudD8uY2xvc2VzdCgnW2ZMb2NrZWRDb250ZXh0XScpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbGV0IHJlc3VsdDogbnVtYmVyID0gdGhpcy5nZXRTY2FsZSgpO1xuXG4gICAgY29uc3QgZGlyZWN0aW9uID0gMTtcbiAgICBjb25zdCBzdGVwID0gdGhpcy5kYmxDbGlja1N0ZXA7XG4gICAgcmVzdWx0ID0gcmVzdWx0ICsgc3RlcCAqIGRpcmVjdGlvbjtcblxuICAgIHJlc3VsdCA9IE1hdGgubWF4KHRoaXMubWluaW11bSwgTWF0aC5taW4ocmVzdWx0LCB0aGlzLm1heGltdW0pKTtcblxuICAgIGNvbnN0IHBvaW50ZXJQb3NpdGlvbkluRmxvdyA9IG5ldyBQb2ludChldmVudC5jbGllbnRYLCBldmVudC5jbGllbnRZKS5lbGVtZW50VHJhbnNmb3JtKHRoaXMuZmxvd0hvc3QpO1xuICAgIHRoaXMuZkNhbnZhcy5zZXRab29tKHJlc3VsdCwgcG9pbnRlclBvc2l0aW9uSW5GbG93KTtcbiAgICB0aGlzLmZDYW52YXMucmVkcmF3V2l0aEFuaW1hdGlvbigpO1xuICAgIHRoaXMuZkNhbnZhcy5jb21wbGV0ZURyYWcoKTtcbiAgfVxuXG4gIHByaXZhdGUgb25ab29tVG9DZW50ZXIoZGVsdGFZOiBudW1iZXIsIHBvc2l0aW9uPzogSVBvaW50KTogdm9pZCB7XG4gICAgY29uc3QgcHJldmVudERlZmF1bHQgPSAoKSA9PiB7XG4gICAgfTtcbiAgICBjb25zdCByZWN0ID0gUmVjdEV4dGVuc2lvbnMuZnJvbUVsZW1lbnQodGhpcy5mbG93SG9zdCk7XG5cbiAgICB0aGlzLm9uV2hlZWwoe1xuICAgICAgZGVsdGFZLCBwcmV2ZW50RGVmYXVsdCwgY2xpZW50WDogcG9zaXRpb24/LnggfHwgcmVjdC5ncmF2aXR5Q2VudGVyLngsIGNsaWVudFk6IHBvc2l0aW9uPy55IHx8IHJlY3QuZ3Jhdml0eUNlbnRlci55XG4gICAgfSBhcyBXaGVlbEV2ZW50KTtcbiAgfVxuXG4gIHB1YmxpYyB6b29tSW4ocG9zaXRpb24/OiBJUG9pbnQpOiB2b2lkIHtcbiAgICB0aGlzLm9uWm9vbVRvQ2VudGVyKC0xLCBwb3NpdGlvbik7XG4gIH1cblxuICBwdWJsaWMgem9vbU91dChwb3NpdGlvbj86IElQb2ludCk6IHZvaWQge1xuICAgIHRoaXMub25ab29tVG9DZW50ZXIoMSwgcG9zaXRpb24pO1xuICB9XG5cbiAgcHVibGljIHJlc2V0KCk6IHZvaWQge1xuICAgIHRoaXMuZkNhbnZhcy5yZXNldFpvb20oKTtcbiAgICB0aGlzLmZDYW52YXMucmVkcmF3KCk7XG4gICAgdGhpcy5mQ2FudmFzLmNvbXBsZXRlRHJhZygpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHVuc3Vic2NyaWJlKCk6IHZvaWQge1xuICAgIHRoaXMubGlzdGVuZXJzKCk7XG4gICAgdGhpcy5saXN0ZW5lcnMgPSBFdmVudEV4dGVuc2lvbnMuZW1wdHlMaXN0ZW5lcigpO1xuICB9XG59XG4iXX0=
@@ -1,6 +1,6 @@
1
1
  import { Directive, Input } from "@angular/core";
2
- import { BooleanExtensions } from '@foblex/core';
3
2
  import { F_ZOOM, FZoomBase } from './f-zoom-base';
3
+ import { castToBoolean } from '@foblex/utils';
4
4
  import * as i0 from "@angular/core";
5
5
  import * as i1 from "../f-storage";
6
6
  export class FZoomDirective extends FZoomBase {
@@ -15,7 +15,7 @@ export class FZoomDirective extends FZoomBase {
15
15
  return this.isEnabled;
16
16
  }
17
17
  set fFlowZoom(isEnabled) {
18
- const value = BooleanExtensions.castToBoolean(isEnabled);
18
+ const value = castToBoolean(isEnabled);
19
19
  if (value !== this.isEnabled) {
20
20
  this.isEnabled = value;
21
21
  this.toggleZoom();
@@ -56,4 +56,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
56
56
  type: Input,
57
57
  args: ['fZoomDblClickStep']
58
58
  }] } });
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi16b29tLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi16b29tL2Ytem9vbS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFBRSxLQUFLLEVBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNqRCxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBV2xELE1BQU0sT0FBTyxjQUFlLFNBQVEsU0FBUztJQTJCM0MsWUFDSSxnQkFBa0M7UUFFcEMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFkVixZQUFPLEdBQVcsR0FBRyxDQUFDO1FBR3RCLFlBQU8sR0FBVyxDQUFDLENBQUM7UUFHcEIsU0FBSSxHQUFXLEdBQUcsQ0FBQztRQUduQixpQkFBWSxHQUFXLEdBQUcsQ0FBQztJQU0zQyxDQUFDO0lBN0JELElBQ1csU0FBUztRQUNsQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQVcsU0FBUyxDQUFDLFNBQXVDO1FBQzFELE1BQU0sS0FBSyxHQUFHLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN6RCxJQUFJLEtBQUssS0FBSyxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQzVCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztTQUNuQjtJQUNILENBQUM7SUFvQk0sZUFBZTtRQUNwQixLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVNLFdBQVc7UUFDaEIsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7OzRHQXZDVSxjQUFjO2dHQUFkLGNBQWMsdVNBRmQsQ0FBRSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBRSxDQUFFOzRGQUVwRCxjQUFjO2tCQVIxQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFFBQVEsRUFBRSxZQUFZO29CQUN0QixJQUFJLEVBQUU7d0JBQ0osT0FBTyxFQUFFLG9CQUFvQjtxQkFDOUI7b0JBQ0QsU0FBUyxFQUFFLENBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFdBQVcsZ0JBQWdCLEVBQUUsQ0FBRTtpQkFDaEU7dUdBSVksU0FBUztzQkFEbkIsS0FBSzt1QkFBQyxPQUFPO2dCQWNFLE9BQU87c0JBRHRCLEtBQUs7dUJBQUMsY0FBYztnQkFJTCxPQUFPO3NCQUR0QixLQUFLO3VCQUFDLGNBQWM7Z0JBSUwsSUFBSTtzQkFEbkIsS0FBSzt1QkFBQyxXQUFXO2dCQUlGLFlBQVk7c0JBRDNCLEtBQUs7dUJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgRGlyZWN0aXZlLCBJbnB1dCwgT25EZXN0cm95XG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBCb29sZWFuRXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBGX1pPT00sIEZab29tQmFzZSB9IGZyb20gJy4vZi16b29tLWJhc2UnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uL2Ytc3RvcmFnZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogXCJmLWNhbnZhc1tmWm9vbV1cIixcbiAgZXhwb3J0QXM6ICdmQ29tcG9uZW50JyxcbiAgaG9zdDoge1xuICAgICdjbGFzcyc6ICdmLXpvb20gZi1jb21wb25lbnQnXG4gIH0sXG4gIHByb3ZpZGVyczogWyB7IHByb3ZpZGU6IEZfWk9PTSwgdXNlRXhpc3Rpbmc6IEZab29tRGlyZWN0aXZlIH0gXSxcbn0pXG5leHBvcnQgY2xhc3MgRlpvb21EaXJlY3RpdmUgZXh0ZW5kcyBGWm9vbUJhc2UgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuXG4gIEBJbnB1dCgnZlpvb20nKVxuICBwdWJsaWMgZ2V0IGZGbG93Wm9vbSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pc0VuYWJsZWQ7XG4gIH1cblxuICBwdWJsaWMgc2V0IGZGbG93Wm9vbShpc0VuYWJsZWQ6IGJvb2xlYW4gfCB1bmRlZmluZWQgfCBzdHJpbmcpIHtcbiAgICBjb25zdCB2YWx1ZSA9IEJvb2xlYW5FeHRlbnNpb25zLmNhc3RUb0Jvb2xlYW4oaXNFbmFibGVkKTtcbiAgICBpZiAodmFsdWUgIT09IHRoaXMuaXNFbmFibGVkKSB7XG4gICAgICB0aGlzLmlzRW5hYmxlZCA9IHZhbHVlO1xuICAgICAgdGhpcy50b2dnbGVab29tKCk7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KCdmWm9vbU1pbmltdW0nKVxuICBwdWJsaWMgb3ZlcnJpZGUgbWluaW11bTogbnVtYmVyID0gMC4xO1xuXG4gIEBJbnB1dCgnZlpvb21NYXhpbXVtJylcbiAgcHVibGljIG92ZXJyaWRlIG1heGltdW06IG51bWJlciA9IDQ7XG5cbiAgQElucHV0KCdmWm9vbVN0ZXAnKVxuICBwdWJsaWMgb3ZlcnJpZGUgc3RlcDogbnVtYmVyID0gMC4xO1xuXG4gIEBJbnB1dCgnZlpvb21EYmxDbGlja1N0ZXAnKVxuICBwdWJsaWMgb3ZlcnJpZGUgZGJsQ2xpY2tTdGVwOiBudW1iZXIgPSAwLjU7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgICBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICApIHtcbiAgICBzdXBlcihmQ29tcG9uZW50c1N0b3JlKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgc3VwZXIudG9nZ2xlWm9vbSgpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiJdfQ==
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi16b29tLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi16b29tL2Ytem9vbS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFBRSxLQUFLLEVBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWxELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQVU5QyxNQUFNLE9BQU8sY0FBZSxTQUFRLFNBQVM7SUEyQjNDLFlBQ0ksZ0JBQWtDO1FBRXBDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBZFYsWUFBTyxHQUFXLEdBQUcsQ0FBQztRQUd0QixZQUFPLEdBQVcsQ0FBQyxDQUFDO1FBR3BCLFNBQUksR0FBVyxHQUFHLENBQUM7UUFHbkIsaUJBQVksR0FBVyxHQUFHLENBQUM7SUFNM0MsQ0FBQztJQTdCRCxJQUNXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFXLFNBQVMsQ0FBQyxTQUF1QztRQUMxRCxNQUFNLEtBQUssR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdkMsSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztZQUN2QixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7U0FDbkI7SUFDSCxDQUFDO0lBb0JNLGVBQWU7UUFDcEIsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFTSxXQUFXO1FBQ2hCLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN0QixDQUFDOzs0R0F2Q1UsY0FBYztnR0FBZCxjQUFjLHVTQUZkLENBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsQ0FBRTs0RkFFcEQsY0FBYztrQkFSMUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixRQUFRLEVBQUUsWUFBWTtvQkFDdEIsSUFBSSxFQUFFO3dCQUNKLE9BQU8sRUFBRSxvQkFBb0I7cUJBQzlCO29CQUNELFNBQVMsRUFBRSxDQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxXQUFXLGdCQUFnQixFQUFFLENBQUU7aUJBQ2hFO3VHQUlZLFNBQVM7c0JBRG5CLEtBQUs7dUJBQUMsT0FBTztnQkFjRSxPQUFPO3NCQUR0QixLQUFLO3VCQUFDLGNBQWM7Z0JBSUwsT0FBTztzQkFEdEIsS0FBSzt1QkFBQyxjQUFjO2dCQUlMLElBQUk7c0JBRG5CLEtBQUs7dUJBQUMsV0FBVztnQkFJRixZQUFZO3NCQUQzQixLQUFLO3VCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIERpcmVjdGl2ZSwgSW5wdXQsIE9uRGVzdHJveVxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRl9aT09NLCBGWm9vbUJhc2UgfSBmcm9tICcuL2Ytem9vbS1iYXNlJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi9mLXN0b3JhZ2UnO1xuaW1wb3J0IHsgY2FzdFRvQm9vbGVhbiB9IGZyb20gJ0Bmb2JsZXgvdXRpbHMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6IFwiZi1jYW52YXNbZlpvb21dXCIsXG4gIGV4cG9ydEFzOiAnZkNvbXBvbmVudCcsXG4gIGhvc3Q6IHtcbiAgICAnY2xhc3MnOiAnZi16b29tIGYtY29tcG9uZW50J1xuICB9LFxuICBwcm92aWRlcnM6IFsgeyBwcm92aWRlOiBGX1pPT00sIHVzZUV4aXN0aW5nOiBGWm9vbURpcmVjdGl2ZSB9IF0sXG59KVxuZXhwb3J0IGNsYXNzIEZab29tRGlyZWN0aXZlIGV4dGVuZHMgRlpvb21CYXNlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcblxuICBASW5wdXQoJ2Zab29tJylcbiAgcHVibGljIGdldCBmRmxvd1pvb20oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNFbmFibGVkO1xuICB9XG5cbiAgcHVibGljIHNldCBmRmxvd1pvb20oaXNFbmFibGVkOiBib29sZWFuIHwgdW5kZWZpbmVkIHwgc3RyaW5nKSB7XG4gICAgY29uc3QgdmFsdWUgPSBjYXN0VG9Cb29sZWFuKGlzRW5hYmxlZCk7XG4gICAgaWYgKHZhbHVlICE9PSB0aGlzLmlzRW5hYmxlZCkge1xuICAgICAgdGhpcy5pc0VuYWJsZWQgPSB2YWx1ZTtcbiAgICAgIHRoaXMudG9nZ2xlWm9vbSgpO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgnZlpvb21NaW5pbXVtJylcbiAgcHVibGljIG92ZXJyaWRlIG1pbmltdW06IG51bWJlciA9IDAuMTtcblxuICBASW5wdXQoJ2Zab29tTWF4aW11bScpXG4gIHB1YmxpYyBvdmVycmlkZSBtYXhpbXVtOiBudW1iZXIgPSA0O1xuXG4gIEBJbnB1dCgnZlpvb21TdGVwJylcbiAgcHVibGljIG92ZXJyaWRlIHN0ZXA6IG51bWJlciA9IDAuMTtcblxuICBASW5wdXQoJ2Zab29tRGJsQ2xpY2tTdGVwJylcbiAgcHVibGljIG92ZXJyaWRlIGRibENsaWNrU3RlcDogbnVtYmVyID0gMC41O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZSxcbiAgKSB7XG4gICAgc3VwZXIoZkNvbXBvbmVudHNTdG9yZSk7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHN1cGVyLnRvZ2dsZVpvb20oKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBzdXBlci51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1oYXMtaG9zdC1lbGVtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9pLWhhcy1ob3N0LWVsZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgSUhhc0hvc3RFbGVtZW50IHtcblxuICBob3N0RWxlbWVudDogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50O1xufVxuIl19
@@ -0,0 +1,15 @@
1
+ import { PointExtensions } from '@foblex/2d';
2
+ export function mixinChangePosition(base) {
3
+ return class extends base {
4
+ getPosition() {
5
+ return this.transform.position;
6
+ }
7
+ setPosition(position) {
8
+ this.transform.position = PointExtensions.copy(position);
9
+ }
10
+ constructor(...args) {
11
+ super(...args);
12
+ }
13
+ };
14
+ }
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbmdlLXBvc2l0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9taXhpbnMvY2hhbmdlLXBvc2l0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBVSxlQUFlLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFZckQsTUFBTSxVQUFVLG1CQUFtQixDQUF3QyxJQUFPO0lBQ2hGLE9BQU8sS0FBTSxTQUFRLElBQUk7UUFFaEIsV0FBVztZQUNoQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDO1FBQ2pDLENBQUM7UUFFTSxXQUFXLENBQUMsUUFBZ0I7WUFDakMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEdBQUcsZUFBZSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMzRCxDQUFDO1FBRUQsWUFBWSxHQUFHLElBQVc7WUFDeEIsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFDakIsQ0FBQztLQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb25zdHJ1Y3RvciwgQ29uc3RydWN0b3IgfSBmcm9tICcuL2NvbnN0cnVjdG9yJztcbmltcG9ydCB7IElUcmFuc2Zvcm1hYmxlIH0gZnJvbSAnLi9pLXRyYW5zZm9ybWFibGUnO1xuaW1wb3J0IHsgSVBvaW50LCBQb2ludEV4dGVuc2lvbnMgfSBmcm9tICdAZm9ibGV4LzJkJztcblxuZXhwb3J0IGludGVyZmFjZSBJQ2FuQ2hhbmdlUG9zaXRpb24ge1xuXG4gIHNldFBvc2l0aW9uKHBvc2l0aW9uOiBJUG9pbnQpOiB2b2lkO1xuXG4gIGdldFBvc2l0aW9uKCk6IElQb2ludDtcbn1cblxudHlwZSBDYW5DaGFuZ2VQb3NpdGlvbkNvbnN0cnVjdG9yID0gQ29uc3RydWN0b3I8SUNhbkNoYW5nZVBvc2l0aW9uPiAmIEFic3RyYWN0Q29uc3RydWN0b3I8SUNhbkNoYW5nZVBvc2l0aW9uPjtcblxuZXhwb3J0IGZ1bmN0aW9uIG1peGluQ2hhbmdlUG9zaXRpb248VCBleHRlbmRzIEFic3RyYWN0Q29uc3RydWN0b3I8SVRyYW5zZm9ybWFibGU+PihiYXNlOiBUKTogQ2FuQ2hhbmdlUG9zaXRpb25Db25zdHJ1Y3RvciAmIFQ7XG5leHBvcnQgZnVuY3Rpb24gbWl4aW5DaGFuZ2VQb3NpdGlvbjxUIGV4dGVuZHMgQ29uc3RydWN0b3I8SVRyYW5zZm9ybWFibGU+PihiYXNlOiBUKTogQ2FuQ2hhbmdlUG9zaXRpb25Db25zdHJ1Y3RvciAmIFQge1xuICByZXR1cm4gY2xhc3MgZXh0ZW5kcyBiYXNlIHtcblxuICAgIHB1YmxpYyBnZXRQb3NpdGlvbigpOiBJUG9pbnQge1xuICAgICAgcmV0dXJuIHRoaXMudHJhbnNmb3JtLnBvc2l0aW9uO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXRQb3NpdGlvbihwb3NpdGlvbjogSVBvaW50KTogdm9pZCB7XG4gICAgICB0aGlzLnRyYW5zZm9ybS5wb3NpdGlvbiA9IFBvaW50RXh0ZW5zaW9ucy5jb3B5KHBvc2l0aW9uKTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvciguLi5hcmdzOiBhbnlbXSkge1xuICAgICAgc3VwZXIoLi4uYXJncyk7XG4gICAgfVxuICB9O1xufVxuIl19
@@ -0,0 +1,30 @@
1
+ export const F_SELECTED_CLASS = 'f-selected';
2
+ export function mixinChangeSelection(base) {
3
+ return class extends base {
4
+ constructor(...args) {
5
+ super(...args);
6
+ this.fId = '';
7
+ this.fSelectionDisabled = false;
8
+ }
9
+ deselect() {
10
+ var _a;
11
+ (_a = this.deselectChild) === null || _a === void 0 ? void 0 : _a.call(this);
12
+ this.hostElement.classList.remove(F_SELECTED_CLASS);
13
+ }
14
+ select() {
15
+ var _a;
16
+ (_a = this.selectChild) === null || _a === void 0 ? void 0 : _a.call(this);
17
+ if (!this.isSelected()) {
18
+ this.hostElement.classList.add(F_SELECTED_CLASS);
19
+ }
20
+ }
21
+ isSelected() {
22
+ return this.hostElement.classList.contains(F_SELECTED_CLASS);
23
+ }
24
+ selectChild() {
25
+ }
26
+ deselectChild() {
27
+ }
28
+ };
29
+ }
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbmdlLXNlbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvbWl4aW5zL2NoYW5nZS1zZWxlY3Rpb24vY2hhbmdlLXNlbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxZQUFZLENBQUM7QUFLN0MsTUFBTSxVQUFVLG9CQUFvQixDQUF5QyxJQUFPO0lBQ2xGLE9BQU8sS0FBTSxTQUFRLElBQUk7UUE0QnZCLFlBQVksR0FBRyxJQUFXO1lBQ3hCLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1lBM0JWLFFBQUcsR0FBVyxFQUFFLENBQUM7WUFFakIsdUJBQWtCLEdBQVksS0FBSyxDQUFDO1FBMEIzQyxDQUFDO1FBeEJNLFFBQVE7O1lBQ2IsTUFBQSxJQUFJLENBQUMsYUFBYSwrQ0FBbEIsSUFBSSxDQUFrQixDQUFDO1lBQ3ZCLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3RELENBQUM7UUFFTSxNQUFNOztZQUNYLE1BQUEsSUFBSSxDQUFDLFdBQVcsK0NBQWhCLElBQUksQ0FBZ0IsQ0FBQztZQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFO2dCQUN0QixJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQzthQUNsRDtRQUNILENBQUM7UUFFTSxVQUFVO1lBQ2YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUMvRCxDQUFDO1FBRU0sV0FBVztRQUNsQixDQUFDO1FBRU0sYUFBYTtRQUNwQixDQUFDO0tBS0YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnN0cnVjdG9yLCBDb25zdHJ1Y3RvciB9IGZyb20gJy4uL2NvbnN0cnVjdG9yJztcbmltcG9ydCB7IElIYXNIb3N0RWxlbWVudCB9IGZyb20gJy4uLy4uL2ktaGFzLWhvc3QtZWxlbWVudCc7XG5pbXBvcnQgeyBJQ2FuQ2hhbmdlU2VsZWN0aW9uIH0gZnJvbSAnLi9pLWNhbi1jaGFuZ2Utc2VsZWN0aW9uJztcblxuZXhwb3J0IGNvbnN0IEZfU0VMRUNURURfQ0xBU1MgPSAnZi1zZWxlY3RlZCc7XG5cbnR5cGUgQ2FuQ2hhbmdlU2VsZWN0aW9uQ29uc3RydWN0b3IgPSBDb25zdHJ1Y3RvcjxJQ2FuQ2hhbmdlU2VsZWN0aW9uPiAmIEFic3RyYWN0Q29uc3RydWN0b3I8SUNhbkNoYW5nZVNlbGVjdGlvbj47XG5cbmV4cG9ydCBmdW5jdGlvbiBtaXhpbkNoYW5nZVNlbGVjdGlvbjxUIGV4dGVuZHMgQWJzdHJhY3RDb25zdHJ1Y3RvcjxJSGFzSG9zdEVsZW1lbnQ+PihiYXNlOiBUKTogQ2FuQ2hhbmdlU2VsZWN0aW9uQ29uc3RydWN0b3IgJiBUO1xuZXhwb3J0IGZ1bmN0aW9uIG1peGluQ2hhbmdlU2VsZWN0aW9uPFQgZXh0ZW5kcyBDb25zdHJ1Y3RvcjxJSGFzSG9zdEVsZW1lbnQ+PihiYXNlOiBUKTogQ2FuQ2hhbmdlU2VsZWN0aW9uQ29uc3RydWN0b3IgJiBUIHtcbiAgcmV0dXJuIGNsYXNzIGV4dGVuZHMgYmFzZSB7XG5cbiAgICBwdWJsaWMgZklkOiBzdHJpbmcgPSAnJztcblxuICAgIHB1YmxpYyBmU2VsZWN0aW9uRGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIHB1YmxpYyBkZXNlbGVjdCgpOiB2b2lkIHtcbiAgICAgIHRoaXMuZGVzZWxlY3RDaGlsZD8uKCk7XG4gICAgICB0aGlzLmhvc3RFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoRl9TRUxFQ1RFRF9DTEFTUyk7XG4gICAgfVxuXG4gICAgcHVibGljIHNlbGVjdCgpOiB2b2lkIHtcbiAgICAgIHRoaXMuc2VsZWN0Q2hpbGQ/LigpO1xuICAgICAgaWYgKCF0aGlzLmlzU2VsZWN0ZWQoKSkge1xuICAgICAgICB0aGlzLmhvc3RFbGVtZW50LmNsYXNzTGlzdC5hZGQoRl9TRUxFQ1RFRF9DTEFTUyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGlzU2VsZWN0ZWQoKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gdGhpcy5ob3N0RWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoRl9TRUxFQ1RFRF9DTEFTUyk7XG4gICAgfVxuXG4gICAgcHVibGljIHNlbGVjdENoaWxkKCk6IHZvaWQge1xuICAgIH1cblxuICAgIHB1YmxpYyBkZXNlbGVjdENoaWxkKCk6IHZvaWQge1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKC4uLmFyZ3M6IGFueVtdKSB7XG4gICAgICBzdXBlciguLi5hcmdzKTtcbiAgICB9XG4gIH07XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1jYW4tY2hhbmdlLXNlbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvbWl4aW5zL2NoYW5nZS1zZWxlY3Rpb24vaS1jYW4tY2hhbmdlLXNlbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBJQ2FuQ2hhbmdlU2VsZWN0aW9uIHtcblxuICBmSWQ6IHN0cmluZztcblxuICBmU2VsZWN0aW9uRGlzYWJsZWQ6IGJvb2xlYW47XG5cbiAgaG9zdEVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgU1ZHRWxlbWVudDtcblxuICBzZWxlY3QoKTogdm9pZDtcblxuICBkZXNlbGVjdCgpOiB2b2lkO1xuXG4gIGlzU2VsZWN0ZWQoKTogYm9vbGVhbjtcblxuICBzZWxlY3RDaGlsZD8oKTogdm9pZDtcblxuICBkZXNlbGVjdENoaWxkPygpOiB2b2lkO1xufVxuIl19
@@ -0,0 +1,3 @@
1
+ export * from './change-selection';
2
+ export * from './i-can-change-selection';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL21peGlucy9jaGFuZ2Utc2VsZWN0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0JBQW9CLENBQUM7QUFFbkMsY0FBYywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2hhbmdlLXNlbGVjdGlvbic7XG5cbmV4cG9ydCAqIGZyb20gJy4vaS1jYW4tY2hhbmdlLXNlbGVjdGlvbic7XG4iXX0=
@@ -0,0 +1,14 @@
1
+ export function mixinChangeVisibility(base) {
2
+ return class extends base {
3
+ show() {
4
+ this.hostElement.style.display = "unset";
5
+ }
6
+ hide() {
7
+ this.hostElement.style.display = "none";
8
+ }
9
+ constructor(...args) {
10
+ super(...args);
11
+ }
12
+ };
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbmdlLXZpc2liaWxpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL21peGlucy9jaGFuZ2UtdmlzaWJpbGl0eS9jaGFuZ2UtdmlzaWJpbGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPQSxNQUFNLFVBQVUscUJBQXFCLENBQXlDLElBQU87SUFDbkYsT0FBTyxLQUFNLFNBQVEsSUFBSTtRQUVoQixJQUFJO1lBQ1QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUMzQyxDQUFDO1FBRU0sSUFBSTtZQUNULElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDMUMsQ0FBQztRQUVELFlBQVksR0FBRyxJQUFXO1lBQ3hCLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQ2pCLENBQUM7S0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElDYW5DaGFuZ2VWaXNpYmlsaXR5IH0gZnJvbSAnLi9pLWNhbi1jaGFuZ2UtdmlzaWJpbGl0eSc7XG5pbXBvcnQgeyBJSGFzSG9zdEVsZW1lbnQgfSBmcm9tICcuLi8uLi9pLWhhcy1ob3N0LWVsZW1lbnQnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb25zdHJ1Y3RvciwgQ29uc3RydWN0b3IgfSBmcm9tICcuLi9jb25zdHJ1Y3Rvcic7XG5cbnR5cGUgQ2FuQ2hhbmdlVmlzaWJpbGl0eUNvbnN0cnVjdG9yID0gQ29uc3RydWN0b3I8SUNhbkNoYW5nZVZpc2liaWxpdHk+ICYgQWJzdHJhY3RDb25zdHJ1Y3RvcjxJQ2FuQ2hhbmdlVmlzaWJpbGl0eT47XG5cbmV4cG9ydCBmdW5jdGlvbiBtaXhpbkNoYW5nZVZpc2liaWxpdHk8VCBleHRlbmRzIEFic3RyYWN0Q29uc3RydWN0b3I8SUhhc0hvc3RFbGVtZW50Pj4oYmFzZTogVCk6IENhbkNoYW5nZVZpc2liaWxpdHlDb25zdHJ1Y3RvciAmIFQ7XG5leHBvcnQgZnVuY3Rpb24gbWl4aW5DaGFuZ2VWaXNpYmlsaXR5PFQgZXh0ZW5kcyBDb25zdHJ1Y3RvcjxJSGFzSG9zdEVsZW1lbnQ+PihiYXNlOiBUKTogQ2FuQ2hhbmdlVmlzaWJpbGl0eUNvbnN0cnVjdG9yICYgVCB7XG4gIHJldHVybiBjbGFzcyBleHRlbmRzIGJhc2Uge1xuXG4gICAgcHVibGljIHNob3coKTogdm9pZCB7XG4gICAgICB0aGlzLmhvc3RFbGVtZW50LnN0eWxlLmRpc3BsYXkgPSBcInVuc2V0XCI7XG4gICAgfVxuXG4gICAgcHVibGljIGhpZGUoKTogdm9pZCB7XG4gICAgICB0aGlzLmhvc3RFbGVtZW50LnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvciguLi5hcmdzOiBhbnlbXSkge1xuICAgICAgc3VwZXIoLi4uYXJncyk7XG4gICAgfVxuICB9O1xufVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1jYW4tY2hhbmdlLXZpc2liaWxpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL21peGlucy9jaGFuZ2UtdmlzaWJpbGl0eS9pLWNhbi1jaGFuZ2UtdmlzaWJpbGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBJQ2FuQ2hhbmdlVmlzaWJpbGl0eSB7XG5cbiAgaG9zdEVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgU1ZHRWxlbWVudDtcblxuICBzaG93KCk6IHZvaWQ7XG5cbiAgaGlkZSgpOiB2b2lkO1xufVxuIl19
@@ -0,0 +1,3 @@
1
+ export * from './change-visibility';
2
+ export * from './i-can-change-visibility';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL21peGlucy9jaGFuZ2UtdmlzaWJpbGl0eS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHFCQUFxQixDQUFDO0FBRXBDLGNBQWMsMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NoYW5nZS12aXNpYmlsaXR5JztcblxuZXhwb3J0ICogZnJvbSAnLi9pLWNhbi1jaGFuZ2UtdmlzaWJpbGl0eSc7XG4iXX0=
@@ -0,0 +1,25 @@
1
+ import { PointExtensions } from '@foblex/2d';
2
+ export function mixinChangeZoom(base) {
3
+ return class extends base {
4
+ setZoom(scaleValue, toPosition) {
5
+ if (scaleValue !== this.transform.scale) {
6
+ const summaryPosition = PointExtensions.sum(this.transform.scaledPosition, this.transform.position);
7
+ const newX = toPosition.x - (toPosition.x - summaryPosition.x) * scaleValue / this.transform.scale;
8
+ const newY = toPosition.y - (toPosition.y - summaryPosition.y) * scaleValue / this.transform.scale;
9
+ this.transform.scale = scaleValue;
10
+ this.transform.scaledPosition = PointExtensions.sub(PointExtensions.initialize(newX, newY), this.transform.position);
11
+ }
12
+ }
13
+ setScalePosition(value) {
14
+ this.transform.scaledPosition = value;
15
+ }
16
+ resetZoom() {
17
+ this.transform.scale = 1;
18
+ this.transform.scaledPosition = PointExtensions.initialize();
19
+ }
20
+ constructor(...args) {
21
+ super(...args);
22
+ }
23
+ };
24
+ }
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbmdlLXpvb20uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL21peGlucy9jaGFuZ2Utem9vbS9jaGFuZ2Utem9vbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQVUsZUFBZSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBS3JELE1BQU0sVUFBVSxlQUFlLENBQXdDLElBQU87SUFDNUUsT0FBTyxLQUFNLFNBQVEsSUFBSTtRQUVoQixPQUFPLENBQUMsVUFBa0IsRUFBRSxVQUFrQjtZQUNuRCxJQUFJLFVBQVUsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRTtnQkFFdkMsTUFBTSxlQUFlLEdBQUcsZUFBZSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUVwRyxNQUFNLElBQUksR0FBRyxVQUFVLENBQUMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsR0FBRyxlQUFlLENBQUMsQ0FBQyxDQUFDLEdBQUcsVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDO2dCQUNuRyxNQUFNLElBQUksR0FBRyxVQUFVLENBQUMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsR0FBRyxlQUFlLENBQUMsQ0FBQyxDQUFDLEdBQUcsVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDO2dCQUVuRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxVQUFVLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxHQUFHLGVBQWUsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUN0SDtRQUNILENBQUM7UUFFTSxnQkFBZ0IsQ0FBQyxLQUFhO1lBQ25DLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztRQUN4QyxDQUFDO1FBRU0sU0FBUztZQUNkLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztZQUN6QixJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsR0FBRyxlQUFlLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDL0QsQ0FBQztRQUVELFlBQVksR0FBRyxJQUFXO1lBQ3hCLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQ2pCLENBQUM7S0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29uc3RydWN0b3IsIENvbnN0cnVjdG9yIH0gZnJvbSAnLi4vY29uc3RydWN0b3InO1xuaW1wb3J0IHsgSUNhbkNoYW5nZVpvb20gfSBmcm9tICcuL2ktY2FuLWNoYW5nZS16b29tJztcbmltcG9ydCB7IElUcmFuc2Zvcm1hYmxlIH0gZnJvbSAnLi4vaS10cmFuc2Zvcm1hYmxlJztcbmltcG9ydCB7IElQb2ludCwgUG9pbnRFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC8yZCc7XG5cbnR5cGUgQ2FuQ2hhbmdlWm9vbUNvbnN0cnVjdG9yID0gQ29uc3RydWN0b3I8SUNhbkNoYW5nZVpvb20+ICYgQWJzdHJhY3RDb25zdHJ1Y3RvcjxJQ2FuQ2hhbmdlWm9vbT47XG5cbmV4cG9ydCBmdW5jdGlvbiBtaXhpbkNoYW5nZVpvb208VCBleHRlbmRzIEFic3RyYWN0Q29uc3RydWN0b3I8SVRyYW5zZm9ybWFibGU+PihiYXNlOiBUKTogQ2FuQ2hhbmdlWm9vbUNvbnN0cnVjdG9yICYgVDtcbmV4cG9ydCBmdW5jdGlvbiBtaXhpbkNoYW5nZVpvb208VCBleHRlbmRzIENvbnN0cnVjdG9yPElUcmFuc2Zvcm1hYmxlPj4oYmFzZTogVCk6IENhbkNoYW5nZVpvb21Db25zdHJ1Y3RvciAmIFQge1xuICByZXR1cm4gY2xhc3MgZXh0ZW5kcyBiYXNlIHtcblxuICAgIHB1YmxpYyBzZXRab29tKHNjYWxlVmFsdWU6IG51bWJlciwgdG9Qb3NpdGlvbjogSVBvaW50KTogdm9pZCB7XG4gICAgICBpZiAoc2NhbGVWYWx1ZSAhPT0gdGhpcy50cmFuc2Zvcm0uc2NhbGUpIHtcblxuICAgICAgICBjb25zdCBzdW1tYXJ5UG9zaXRpb24gPSBQb2ludEV4dGVuc2lvbnMuc3VtKHRoaXMudHJhbnNmb3JtLnNjYWxlZFBvc2l0aW9uLCB0aGlzLnRyYW5zZm9ybS5wb3NpdGlvbik7XG5cbiAgICAgICAgY29uc3QgbmV3WCA9IHRvUG9zaXRpb24ueCAtICh0b1Bvc2l0aW9uLnggLSBzdW1tYXJ5UG9zaXRpb24ueCkgKiBzY2FsZVZhbHVlIC8gdGhpcy50cmFuc2Zvcm0uc2NhbGU7XG4gICAgICAgIGNvbnN0IG5ld1kgPSB0b1Bvc2l0aW9uLnkgLSAodG9Qb3NpdGlvbi55IC0gc3VtbWFyeVBvc2l0aW9uLnkpICogc2NhbGVWYWx1ZSAvIHRoaXMudHJhbnNmb3JtLnNjYWxlO1xuXG4gICAgICAgIHRoaXMudHJhbnNmb3JtLnNjYWxlID0gc2NhbGVWYWx1ZTtcbiAgICAgICAgdGhpcy50cmFuc2Zvcm0uc2NhbGVkUG9zaXRpb24gPSBQb2ludEV4dGVuc2lvbnMuc3ViKFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKG5ld1gsIG5ld1kpLCB0aGlzLnRyYW5zZm9ybS5wb3NpdGlvbik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHNldFNjYWxlUG9zaXRpb24odmFsdWU6IElQb2ludCk6IHZvaWQge1xuICAgICAgdGhpcy50cmFuc2Zvcm0uc2NhbGVkUG9zaXRpb24gPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVzZXRab29tKCk6IHZvaWQge1xuICAgICAgdGhpcy50cmFuc2Zvcm0uc2NhbGUgPSAxO1xuICAgICAgdGhpcy50cmFuc2Zvcm0uc2NhbGVkUG9zaXRpb24gPSBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKC4uLmFyZ3M6IGFueVtdKSB7XG4gICAgICBzdXBlciguLi5hcmdzKTtcbiAgICB9XG4gIH07XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1jYW4tY2hhbmdlLXpvb20uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL21peGlucy9jaGFuZ2Utem9vbS9pLWNhbi1jaGFuZ2Utem9vbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnQGZvYmxleC8yZCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNhbkNoYW5nZVpvb20ge1xuXG4gIHNldFpvb20odmFsdWU6IG51bWJlciwgdG9Qb3NpdGlvbjogSVBvaW50KTogdm9pZDtcblxuICBzZXRTY2FsZVBvc2l0aW9uKHZhbHVlOiBJUG9pbnQpOiB2b2lkO1xuXG4gIHJlc2V0Wm9vbSgpOiB2b2lkO1xufVxuIl19
@@ -0,0 +1,3 @@
1
+ export * from './change-zoom';
2
+ export * from './i-can-change-zoom';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL21peGlucy9jaGFuZ2Utem9vbS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLHFCQUFxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jaGFuZ2Utem9vbSc7XG5leHBvcnQgKiBmcm9tICcuL2ktY2FuLWNoYW5nZS16b29tJztcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RydWN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL21peGlucy9jb25zdHJ1Y3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgQ29uc3RydWN0b3I8VD4gPSBuZXcgKC4uLmFyZ3M6IGFueVtdKSA9PiBUO1xuXG5leHBvcnQgdHlwZSBBYnN0cmFjdENvbnN0cnVjdG9yPFQgPSBvYmplY3Q+ID0gYWJzdHJhY3QgbmV3ICguLi5hcmdzOiBhbnlbXSkgPT4gVDtcbiJdfQ==
@@ -0,0 +1,27 @@
1
+ import { PointExtensions } from '@foblex/2d';
2
+ export function mixinFitToParent(base) {
3
+ return class extends base {
4
+ fitToParent(rect, parentRect, points, toCenter) {
5
+ this.transform.scaledPosition = PointExtensions.initialize();
6
+ this.transform.position = this.getZeroPositionWithoutScale(points);
7
+ const itemsContainerWidth = (rect.width / this.transform.scale) + toCenter.x;
8
+ const itemsContainerHeight = (rect.height / this.transform.scale) + toCenter.y;
9
+ if ((itemsContainerWidth > parentRect.width || itemsContainerHeight > parentRect.height) ||
10
+ itemsContainerWidth < parentRect.width && itemsContainerHeight < parentRect.height) {
11
+ this.transform.scale = Math.min(parentRect.width / itemsContainerWidth, parentRect.height / itemsContainerHeight);
12
+ }
13
+ const newX = (parentRect.width - itemsContainerWidth * this.transform.scale) / 2 - this.transform.position.x * this.transform.scale;
14
+ const newY = (parentRect.height - itemsContainerHeight * this.transform.scale) / 2 - this.transform.position.y * this.transform.scale;
15
+ this.transform.position = PointExtensions.initialize(newX + (toCenter.x / 2) * this.transform.scale, newY + (toCenter.y / 2) * this.transform.scale);
16
+ }
17
+ getZeroPositionWithoutScale(points) {
18
+ const xPoint = points.length ? Math.min(...points.map((point) => point.x)) : 0;
19
+ const yPoint = points.length ? Math.min(...points.map((point) => point.y)) : 0;
20
+ return PointExtensions.initialize(xPoint, yPoint);
21
+ }
22
+ constructor(...args) {
23
+ super(...args);
24
+ }
25
+ };
26
+ }
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml0LXRvLXBhcmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvbWl4aW5zL2ZpdC10by1wYXJlbnQvZml0LXRvLXBhcmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQWlCLGVBQWUsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUs1RCxNQUFNLFVBQVUsZ0JBQWdCLENBQXdDLElBQU87SUFDN0UsT0FBTyxLQUFNLFNBQVEsSUFBSTtRQUVoQixXQUFXLENBQUMsSUFBVyxFQUFFLFVBQWlCLEVBQUUsTUFBZ0IsRUFBRSxRQUFnQjtZQUNuRixJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsR0FBRyxlQUFlLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDN0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLDJCQUEyQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ25FLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUM3RSxNQUFNLG9CQUFvQixHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDL0UsSUFDSSxDQUFDLG1CQUFtQixHQUFHLFVBQVUsQ0FBQyxLQUFLLElBQUksb0JBQW9CLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQztnQkFDcEYsbUJBQW1CLEdBQUcsVUFBVSxDQUFDLEtBQUssSUFBSSxvQkFBb0IsR0FBRyxVQUFVLENBQUMsTUFBTSxFQUNwRjtnQkFDQSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsbUJBQW1CLEVBQUUsVUFBVSxDQUFDLE1BQU0sR0FBRyxvQkFBb0IsQ0FBQyxDQUFDO2FBQ25IO1lBRUQsTUFBTSxJQUFJLEdBQUcsQ0FBQyxVQUFVLENBQUMsS0FBSyxHQUFHLG1CQUFtQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztZQUNwSSxNQUFNLElBQUksR0FBRyxDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDO1lBRXRJLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxHQUFHLGVBQWUsQ0FBQyxVQUFVLENBQUMsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUE7UUFFdEosQ0FBQztRQUVPLDJCQUEyQixDQUFDLE1BQWdCO1lBQ2xELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQy9FLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQy9FLE9BQU8sZUFBZSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUE7UUFDbkQsQ0FBQztRQUVELFlBQVksR0FBRyxJQUFXO1lBQ3hCLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQ2pCLENBQUM7S0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29uc3RydWN0b3IsIENvbnN0cnVjdG9yIH0gZnJvbSAnLi4vY29uc3RydWN0b3InO1xuaW1wb3J0IHsgSUNhbkZpdFRvUGFyZW50IH0gZnJvbSAnLi9pLWNhbi1maXQtdG8tcGFyZW50JztcbmltcG9ydCB7IElUcmFuc2Zvcm1hYmxlIH0gZnJvbSAnLi4vaS10cmFuc2Zvcm1hYmxlJztcbmltcG9ydCB7IElQb2ludCwgSVJlY3QsIFBvaW50RXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuXG50eXBlIENhbkZpdFRvUGFyZW50Q29uc3RydWN0b3IgPSBDb25zdHJ1Y3RvcjxJQ2FuRml0VG9QYXJlbnQ+ICYgQWJzdHJhY3RDb25zdHJ1Y3RvcjxJQ2FuRml0VG9QYXJlbnQ+O1xuXG5leHBvcnQgZnVuY3Rpb24gbWl4aW5GaXRUb1BhcmVudDxUIGV4dGVuZHMgQWJzdHJhY3RDb25zdHJ1Y3RvcjxJVHJhbnNmb3JtYWJsZT4+KGJhc2U6IFQpOiBDYW5GaXRUb1BhcmVudENvbnN0cnVjdG9yICYgVDtcbmV4cG9ydCBmdW5jdGlvbiBtaXhpbkZpdFRvUGFyZW50PFQgZXh0ZW5kcyBDb25zdHJ1Y3RvcjxJVHJhbnNmb3JtYWJsZT4+KGJhc2U6IFQpOiBDYW5GaXRUb1BhcmVudENvbnN0cnVjdG9yICYgVCB7XG4gIHJldHVybiBjbGFzcyBleHRlbmRzIGJhc2Uge1xuXG4gICAgcHVibGljIGZpdFRvUGFyZW50KHJlY3Q6IElSZWN0LCBwYXJlbnRSZWN0OiBJUmVjdCwgcG9pbnRzOiBJUG9pbnRbXSwgdG9DZW50ZXI6IElQb2ludCk6IHZvaWQge1xuICAgICAgdGhpcy50cmFuc2Zvcm0uc2NhbGVkUG9zaXRpb24gPSBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpO1xuICAgICAgdGhpcy50cmFuc2Zvcm0ucG9zaXRpb24gPSB0aGlzLmdldFplcm9Qb3NpdGlvbldpdGhvdXRTY2FsZShwb2ludHMpO1xuICAgICAgY29uc3QgaXRlbXNDb250YWluZXJXaWR0aCA9IChyZWN0LndpZHRoIC8gdGhpcy50cmFuc2Zvcm0uc2NhbGUpICsgdG9DZW50ZXIueDtcbiAgICAgIGNvbnN0IGl0ZW1zQ29udGFpbmVySGVpZ2h0ID0gKHJlY3QuaGVpZ2h0IC8gdGhpcy50cmFuc2Zvcm0uc2NhbGUpICsgdG9DZW50ZXIueTtcbiAgICAgIGlmIChcbiAgICAgICAgICAoaXRlbXNDb250YWluZXJXaWR0aCA+IHBhcmVudFJlY3Qud2lkdGggfHwgaXRlbXNDb250YWluZXJIZWlnaHQgPiBwYXJlbnRSZWN0LmhlaWdodCkgfHxcbiAgICAgICAgICBpdGVtc0NvbnRhaW5lcldpZHRoIDwgcGFyZW50UmVjdC53aWR0aCAmJiBpdGVtc0NvbnRhaW5lckhlaWdodCA8IHBhcmVudFJlY3QuaGVpZ2h0XG4gICAgICApIHtcbiAgICAgICAgdGhpcy50cmFuc2Zvcm0uc2NhbGUgPSBNYXRoLm1pbihwYXJlbnRSZWN0LndpZHRoIC8gaXRlbXNDb250YWluZXJXaWR0aCwgcGFyZW50UmVjdC5oZWlnaHQgLyBpdGVtc0NvbnRhaW5lckhlaWdodCk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG5ld1ggPSAocGFyZW50UmVjdC53aWR0aCAtIGl0ZW1zQ29udGFpbmVyV2lkdGggKiB0aGlzLnRyYW5zZm9ybS5zY2FsZSkgLyAyIC0gdGhpcy50cmFuc2Zvcm0ucG9zaXRpb24ueCAqIHRoaXMudHJhbnNmb3JtLnNjYWxlO1xuICAgICAgY29uc3QgbmV3WSA9IChwYXJlbnRSZWN0LmhlaWdodCAtIGl0ZW1zQ29udGFpbmVySGVpZ2h0ICogdGhpcy50cmFuc2Zvcm0uc2NhbGUpIC8gMiAtIHRoaXMudHJhbnNmb3JtLnBvc2l0aW9uLnkgKiB0aGlzLnRyYW5zZm9ybS5zY2FsZTtcblxuICAgICAgdGhpcy50cmFuc2Zvcm0ucG9zaXRpb24gPSBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZShuZXdYICsgKHRvQ2VudGVyLnggLyAyKSAqIHRoaXMudHJhbnNmb3JtLnNjYWxlLCBuZXdZICsgKHRvQ2VudGVyLnkgLyAyKSAqIHRoaXMudHJhbnNmb3JtLnNjYWxlKVxuXG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRaZXJvUG9zaXRpb25XaXRob3V0U2NhbGUocG9pbnRzOiBJUG9pbnRbXSk6IElQb2ludCB7XG4gICAgICBjb25zdCB4UG9pbnQgPSBwb2ludHMubGVuZ3RoID8gTWF0aC5taW4oLi4ucG9pbnRzLm1hcCgocG9pbnQpID0+IHBvaW50LngpKSA6IDA7XG4gICAgICBjb25zdCB5UG9pbnQgPSBwb2ludHMubGVuZ3RoID8gTWF0aC5taW4oLi4ucG9pbnRzLm1hcCgocG9pbnQpID0+IHBvaW50LnkpKSA6IDA7XG4gICAgICByZXR1cm4gUG9pbnRFeHRlbnNpb25zLmluaXRpYWxpemUoeFBvaW50LCB5UG9pbnQpXG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoLi4uYXJnczogYW55W10pIHtcbiAgICAgIHN1cGVyKC4uLmFyZ3MpO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1jYW4tZml0LXRvLXBhcmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvbWl4aW5zL2ZpdC10by1wYXJlbnQvaS1jYW4tZml0LXRvLXBhcmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVBvaW50LCBJUmVjdCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElDYW5GaXRUb1BhcmVudCB7XG5cbiAgZml0VG9QYXJlbnQocmVjdDogSVJlY3QsIHBhcmVudFJlY3Q6IElSZWN0LCBwb2ludHM6IElQb2ludFtdLCB0b0NlbnRlcjogSVBvaW50KTogdm9pZDtcbn1cblxuIl19
@@ -0,0 +1,3 @@
1
+ export * from './fit-to-parent';
2
+ export * from './i-can-fit-to-parent';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL21peGlucy9maXQtdG8tcGFyZW50L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZml0LXRvLXBhcmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2ktY2FuLWZpdC10by1wYXJlbnQnO1xuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS10cmFuc2Zvcm1hYmxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9taXhpbnMvaS10cmFuc2Zvcm1hYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJVHJhbnNmb3JtTW9kZWwgfSBmcm9tICdAZm9ibGV4LzJkJztcblxuZXhwb3J0IGludGVyZmFjZSBJVHJhbnNmb3JtYWJsZSB7XG5cbiAgdHJhbnNmb3JtOiBJVHJhbnNmb3JtTW9kZWw7XG59XG4iXX0=
@@ -0,0 +1,9 @@
1
+ export * from './change-selection';
2
+ export * from './change-visibility';
3
+ export * from './change-zoom';
4
+ export * from './fit-to-parent';
5
+ export * from './one-to-one-centering';
6
+ export * from './change-position';
7
+ export * from './constructor';
8
+ export * from './i-transformable';
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL21peGlucy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9CQUFvQixDQUFDO0FBRW5DLGNBQWMscUJBQXFCLENBQUM7QUFFcEMsY0FBYyxlQUFlLENBQUM7QUFFOUIsY0FBYyxpQkFBaUIsQ0FBQztBQUVoQyxjQUFjLHdCQUF3QixDQUFDO0FBRXZDLGNBQWMsbUJBQW1CLENBQUM7QUFFbEMsY0FBYyxlQUFlLENBQUM7QUFFOUIsY0FBYyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2hhbmdlLXNlbGVjdGlvbic7XG5cbmV4cG9ydCAqIGZyb20gJy4vY2hhbmdlLXZpc2liaWxpdHknO1xuXG5leHBvcnQgKiBmcm9tICcuL2NoYW5nZS16b29tJztcblxuZXhwb3J0ICogZnJvbSAnLi9maXQtdG8tcGFyZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9vbmUtdG8tb25lLWNlbnRlcmluZyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vY2hhbmdlLXBvc2l0aW9uJztcblxuZXhwb3J0ICogZnJvbSAnLi9jb25zdHJ1Y3Rvcic7XG5cbmV4cG9ydCAqIGZyb20gJy4vaS10cmFuc2Zvcm1hYmxlJztcblxuXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1jYW4tb25lLXRvLW9uZS1jZW50ZXJpbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL21peGlucy9vbmUtdG8tb25lLWNlbnRlcmluZy9pLWNhbi1vbmUtdG8tb25lLWNlbnRlcmluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVBvaW50LCBJUmVjdCB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElDYW5PbmVUb09uZUNlbnRlcmluZyB7XG5cbiAgb25lVG9PbmVDZW50ZXJpbmcocmVjdDogSVJlY3QsIHBhcmVudFJlY3Q6IElSZWN0LCBwb2ludHM6IElQb2ludFtdKTogdm9pZDtcbn1cbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './one-to-one-centering';
2
+ export * from './i-can-one-to-one-centering';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL21peGlucy9vbmUtdG8tb25lLWNlbnRlcmluZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL29uZS10by1vbmUtY2VudGVyaW5nJztcbmV4cG9ydCAqIGZyb20gJy4vaS1jYW4tb25lLXRvLW9uZS1jZW50ZXJpbmcnO1xuIl19
@@ -0,0 +1,24 @@
1
+ import { PointExtensions } from '@foblex/2d';
2
+ export function mixinOneToOneCentering(base) {
3
+ return class extends base {
4
+ oneToOneCentering(rect, parentRect, points) {
5
+ this.transform.scaledPosition = PointExtensions.initialize();
6
+ this.transform.position = this.getZeroPositionWithoutScale(points);
7
+ const itemsContainerWidth = rect.width / this.transform.scale;
8
+ const itemsContainerHeight = rect.height / this.transform.scale;
9
+ this.transform.scale = 1;
10
+ const newX = (parentRect.width - itemsContainerWidth * this.transform.scale) / 2 - this.transform.position.x * this.transform.scale;
11
+ const newY = (parentRect.height - itemsContainerHeight * this.transform.scale) / 2 - this.transform.position.y * this.transform.scale;
12
+ this.transform.position = PointExtensions.initialize(newX, newY);
13
+ }
14
+ getZeroPositionWithoutScale(points) {
15
+ const xPoint = points.length ? Math.min(...points.map((point) => point.x)) : 0;
16
+ const yPoint = points.length ? Math.min(...points.map((point) => point.y)) : 0;
17
+ return PointExtensions.initialize(xPoint, yPoint);
18
+ }
19
+ constructor(...args) {
20
+ super(...args);
21
+ }
22
+ };
23
+ }
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLXRvLW9uZS1jZW50ZXJpbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL21peGlucy9vbmUtdG8tb25lLWNlbnRlcmluZy9vbmUtdG8tb25lLWNlbnRlcmluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQWlCLGVBQWUsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUs1RCxNQUFNLFVBQVUsc0JBQXNCLENBQXdDLElBQU87SUFDbkYsT0FBTyxLQUFNLFNBQVEsSUFBSTtRQUVoQixpQkFBaUIsQ0FBQyxJQUFXLEVBQUUsVUFBaUIsRUFBRSxNQUFnQjtZQUN2RSxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsR0FBRyxlQUFlLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDN0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLDJCQUEyQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ25FLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztZQUM5RCxNQUFNLG9CQUFvQixHQUFHLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7WUFDaEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1lBRXpCLE1BQU0sSUFBSSxHQUFHLENBQUMsVUFBVSxDQUFDLEtBQUssR0FBRyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7WUFDcEksTUFBTSxJQUFJLEdBQUcsQ0FBQyxVQUFVLENBQUMsTUFBTSxHQUFHLG9CQUFvQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztZQUV0SSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsR0FBRyxlQUFlLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNuRSxDQUFDO1FBRU8sMkJBQTJCLENBQUMsTUFBZ0I7WUFDbEQsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDL0UsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDL0UsT0FBTyxlQUFlLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQTtRQUNuRCxDQUFDO1FBRUQsWUFBWSxHQUFHLElBQVc7WUFDeEIsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFDakIsQ0FBQztLQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb25zdHJ1Y3RvciwgQ29uc3RydWN0b3IgfSBmcm9tICcuLi9jb25zdHJ1Y3Rvcic7XG5pbXBvcnQgeyBJQ2FuT25lVG9PbmVDZW50ZXJpbmcgfSBmcm9tICcuL2ktY2FuLW9uZS10by1vbmUtY2VudGVyaW5nJztcbmltcG9ydCB7IElUcmFuc2Zvcm1hYmxlIH0gZnJvbSAnLi4vaS10cmFuc2Zvcm1hYmxlJztcbmltcG9ydCB7IElQb2ludCwgSVJlY3QsIFBvaW50RXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvMmQnO1xuXG50eXBlIENhbk9uZVRvT25lQ2VudGVyaW5nQ29uc3RydWN0b3IgPSBDb25zdHJ1Y3RvcjxJQ2FuT25lVG9PbmVDZW50ZXJpbmc+ICYgQWJzdHJhY3RDb25zdHJ1Y3RvcjxJQ2FuT25lVG9PbmVDZW50ZXJpbmc+O1xuXG5leHBvcnQgZnVuY3Rpb24gbWl4aW5PbmVUb09uZUNlbnRlcmluZzxUIGV4dGVuZHMgQWJzdHJhY3RDb25zdHJ1Y3RvcjxJVHJhbnNmb3JtYWJsZT4+KGJhc2U6IFQpOiBDYW5PbmVUb09uZUNlbnRlcmluZ0NvbnN0cnVjdG9yICYgVDtcbmV4cG9ydCBmdW5jdGlvbiBtaXhpbk9uZVRvT25lQ2VudGVyaW5nPFQgZXh0ZW5kcyBDb25zdHJ1Y3RvcjxJVHJhbnNmb3JtYWJsZT4+KGJhc2U6IFQpOiBDYW5PbmVUb09uZUNlbnRlcmluZ0NvbnN0cnVjdG9yICYgVCB7XG4gIHJldHVybiBjbGFzcyBleHRlbmRzIGJhc2Uge1xuXG4gICAgcHVibGljIG9uZVRvT25lQ2VudGVyaW5nKHJlY3Q6IElSZWN0LCBwYXJlbnRSZWN0OiBJUmVjdCwgcG9pbnRzOiBJUG9pbnRbXSk6IHZvaWQge1xuICAgICAgdGhpcy50cmFuc2Zvcm0uc2NhbGVkUG9zaXRpb24gPSBQb2ludEV4dGVuc2lvbnMuaW5pdGlhbGl6ZSgpO1xuICAgICAgdGhpcy50cmFuc2Zvcm0ucG9zaXRpb24gPSB0aGlzLmdldFplcm9Qb3NpdGlvbldpdGhvdXRTY2FsZShwb2ludHMpO1xuICAgICAgY29uc3QgaXRlbXNDb250YWluZXJXaWR0aCA9IHJlY3Qud2lkdGggLyB0aGlzLnRyYW5zZm9ybS5zY2FsZTtcbiAgICAgIGNvbnN0IGl0ZW1zQ29udGFpbmVySGVpZ2h0ID0gcmVjdC5oZWlnaHQgLyB0aGlzLnRyYW5zZm9ybS5zY2FsZTtcbiAgICAgIHRoaXMudHJhbnNmb3JtLnNjYWxlID0gMTtcblxuICAgICAgY29uc3QgbmV3WCA9IChwYXJlbnRSZWN0LndpZHRoIC0gaXRlbXNDb250YWluZXJXaWR0aCAqIHRoaXMudHJhbnNmb3JtLnNjYWxlKSAvIDIgLSB0aGlzLnRyYW5zZm9ybS5wb3NpdGlvbi54ICogdGhpcy50cmFuc2Zvcm0uc2NhbGU7XG4gICAgICBjb25zdCBuZXdZID0gKHBhcmVudFJlY3QuaGVpZ2h0IC0gaXRlbXNDb250YWluZXJIZWlnaHQgKiB0aGlzLnRyYW5zZm9ybS5zY2FsZSkgLyAyIC0gdGhpcy50cmFuc2Zvcm0ucG9zaXRpb24ueSAqIHRoaXMudHJhbnNmb3JtLnNjYWxlO1xuXG4gICAgICB0aGlzLnRyYW5zZm9ybS5wb3NpdGlvbiA9IFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKG5ld1gsIG5ld1kpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0WmVyb1Bvc2l0aW9uV2l0aG91dFNjYWxlKHBvaW50czogSVBvaW50W10pOiBJUG9pbnQge1xuICAgICAgY29uc3QgeFBvaW50ID0gcG9pbnRzLmxlbmd0aCA/IE1hdGgubWluKC4uLnBvaW50cy5tYXAoKHBvaW50KSA9PiBwb2ludC54KSkgOiAwO1xuICAgICAgY29uc3QgeVBvaW50ID0gcG9pbnRzLmxlbmd0aCA/IE1hdGgubWluKC4uLnBvaW50cy5tYXAoKHBvaW50KSA9PiBwb2ludC55KSkgOiAwO1xuICAgICAgcmV0dXJuIFBvaW50RXh0ZW5zaW9ucy5pbml0aWFsaXplKHhQb2ludCwgeVBvaW50KVxuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKC4uLmFyZ3M6IGFueVtdKSB7XG4gICAgICBzdXBlciguLi5hcmdzKTtcbiAgICB9XG4gIH07XG59XG4iXX0=
@@ -12,7 +12,8 @@ export * from './f-flow';
12
12
  export * from './f-node';
13
13
  export * from './f-storage';
14
14
  export * from './f-zoom';
15
- export * from './infrastructure';
15
+ export * from './mixins';
16
16
  export * from './f-flow.module';
17
+ export * from './i-has-host-element';
17
18
  export * from './i-has-state-changes';
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQztBQUU5QixjQUFjLFlBQVksQ0FBQztBQUUzQixjQUFjLFVBQVUsQ0FBQztBQUV6QixjQUFjLGdCQUFnQixDQUFDO0FBRS9CLGNBQWMsZ0JBQWdCLENBQUM7QUFFL0IsY0FBYyxlQUFlLENBQUM7QUFFOUIsY0FBYyxtQkFBbUIsQ0FBQztBQUVsQyxjQUFjLG9CQUFvQixDQUFDO0FBRW5DLGNBQWMsYUFBYSxDQUFDO0FBRTVCLGNBQWMsb0JBQW9CLENBQUM7QUFFbkMsY0FBYyxVQUFVLENBQUM7QUFFekIsY0FBYyxVQUFVLENBQUM7QUFFekIsY0FBYyxhQUFhLENBQUM7QUFFNUIsY0FBYyxVQUFVLENBQUM7QUFFekIsY0FBYyxrQkFBa0IsQ0FBQztBQUVqQyxjQUFjLGlCQUFpQixDQUFDO0FBRWhDLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2YtYmFja2dyb3VkJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWNhbnZhcyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZG9tYWluJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWNvbm5lY3Rpb24nO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtY29ubmVjdG9ycyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1kcmFnZ2FibGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtZXh0ZXJuYWwtaXRlbSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1saW5lLWFsaWdubWVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1taW5pbWFwJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLXNlbGVjdGlvbi1hcmVhJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWZsb3cnO1xuXG5leHBvcnQgKiBmcm9tICcuL2Ytbm9kZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1zdG9yYWdlJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLXpvb20nO1xuXG5leHBvcnQgKiBmcm9tICcuL2luZnJhc3RydWN0dXJlJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWZsb3cubW9kdWxlJztcblxuZXhwb3J0ICogZnJvbSAnLi9pLWhhcy1zdGF0ZS1jaGFuZ2VzJztcbiJdfQ==
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQztBQUU5QixjQUFjLFlBQVksQ0FBQztBQUUzQixjQUFjLFVBQVUsQ0FBQztBQUV6QixjQUFjLGdCQUFnQixDQUFDO0FBRS9CLGNBQWMsZ0JBQWdCLENBQUM7QUFFL0IsY0FBYyxlQUFlLENBQUM7QUFFOUIsY0FBYyxtQkFBbUIsQ0FBQztBQUVsQyxjQUFjLG9CQUFvQixDQUFDO0FBRW5DLGNBQWMsYUFBYSxDQUFDO0FBRTVCLGNBQWMsb0JBQW9CLENBQUM7QUFFbkMsY0FBYyxVQUFVLENBQUM7QUFFekIsY0FBYyxVQUFVLENBQUM7QUFFekIsY0FBYyxhQUFhLENBQUM7QUFFNUIsY0FBYyxVQUFVLENBQUM7QUFFekIsY0FBYyxVQUFVLENBQUM7QUFFekIsY0FBYyxpQkFBaUIsQ0FBQztBQUVoQyxjQUFjLHNCQUFzQixDQUFDO0FBRXJDLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2YtYmFja2dyb3VkJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWNhbnZhcyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZG9tYWluJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWNvbm5lY3Rpb24nO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtY29ubmVjdG9ycyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1kcmFnZ2FibGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtZXh0ZXJuYWwtaXRlbSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1saW5lLWFsaWdubWVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1taW5pbWFwJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLXNlbGVjdGlvbi1hcmVhJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWZsb3cnO1xuXG5leHBvcnQgKiBmcm9tICcuL2Ytbm9kZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1zdG9yYWdlJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLXpvb20nO1xuXG5leHBvcnQgKiBmcm9tICcuL21peGlucyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1mbG93Lm1vZHVsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vaS1oYXMtaG9zdC1lbGVtZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9pLWhhcy1zdGF0ZS1jaGFuZ2VzJztcbiJdfQ==
@@ -1,4 +1,4 @@
1
- import { ITransformModel } from '@foblex/core';
1
+ import { ITransformModel } from '@foblex/2d';
2
2
  import { InjectionToken } from '@angular/core';
3
3
  export declare const F_BACKGROUND_PATTERN: InjectionToken<IFBackgroundPattern>;
4
4
  export interface IFBackgroundPattern {
@@ -1,5 +1,6 @@
1
1
  import { InjectionToken } from '@angular/core';
2
- import { IHasHostElement, ITransformModel } from '@foblex/core';
2
+ import { ITransformModel } from '@foblex/2d';
3
+ import { IHasHostElement } from '../i-has-host-element';
3
4
  import * as i0 from "@angular/core";
4
5
  export declare const F_BACKGROUND: InjectionToken<FBackgroundBase>;
5
6
  export declare abstract class FBackgroundBase implements IHasHostElement {
@@ -1,6 +1,6 @@
1
1
  import { AfterContentInit, ElementRef, OnDestroy, OnInit } from "@angular/core";
2
2
  import { FBackgroundBase } from './f-background-base';
3
- import { ITransformModel } from '@foblex/core';
3
+ import { ITransformModel } from '@foblex/2d';
4
4
  import { FComponentsStore } from '../f-storage';
5
5
  import { BrowserService } from '@foblex/platform';
6
6
  import * as i0 from "@angular/core";
@@ -1,5 +1,5 @@
1
1
  import { ElementRef, OnDestroy, OnInit } from "@angular/core";
2
- import { ITransformModel } from '@foblex/core';
2
+ import { ITransformModel } from '@foblex/2d';
3
3
  import { IFBackgroundPattern } from '../domain';
4
4
  import { BrowserService } from '@foblex/platform';
5
5
  import * as i0 from "@angular/core";
@@ -1,5 +1,5 @@
1
1
  import { ElementRef, OnDestroy, OnInit } from "@angular/core";
2
- import { ITransformModel } from '@foblex/core';
2
+ import { ITransformModel } from '@foblex/2d';
3
3
  import { IFBackgroundPattern } from '../domain';
4
4
  import { BrowserService } from '@foblex/platform';
5
5
  import * as i0 from "@angular/core";
@@ -1,4 +1,4 @@
1
- import { IPoint } from '@foblex/core';
1
+ import { IPoint } from '@foblex/2d';
2
2
  export declare class FCanvasChangeEvent {
3
3
  readonly position: IPoint;
4
4
  readonly scale: number;
@@ -1,10 +1,12 @@
1
- import { IHasHostElement, ITransformModel, ICanChangePosition, ICanChangeZoom, ICanFitToParent, ICanOneToOneCentering } from '@foblex/core';
1
+ import { ICanChangePosition, ICanChangeZoom, ICanFitToParent, ICanOneToOneCentering } from '../mixins';
2
+ import { ITransformModel } from '@foblex/2d';
2
3
  import { ElementRef, EventEmitter, InjectionToken } from '@angular/core';
3
4
  import { FCanvasChangeEvent } from './domain';
4
5
  import { FNodeBase } from '../f-node';
6
+ import { IHasHostElement } from '../i-has-host-element';
5
7
  import * as i0 from "@angular/core";
6
8
  export declare const F_CANVAS: InjectionToken<FCanvasBase>;
7
- declare const MIXIN_BASE: import("@foblex/core").Constructor<ICanChangePosition> & import("@foblex/core").AbstractConstructor<ICanChangePosition> & import("@foblex/core").Constructor<ICanFitToParent> & import("@foblex/core").AbstractConstructor<ICanFitToParent> & import("@foblex/core").Constructor<ICanOneToOneCentering> & import("@foblex/core").AbstractConstructor<ICanOneToOneCentering> & import("@foblex/core").Constructor<ICanChangeZoom> & import("@foblex/core").AbstractConstructor<ICanChangeZoom> & {
9
+ declare const MIXIN_BASE: import("../mixins").Constructor<ICanChangePosition> & import("../mixins").AbstractConstructor<ICanChangePosition> & import("../mixins").Constructor<ICanFitToParent> & import("../mixins").AbstractConstructor<ICanFitToParent> & import("../mixins").Constructor<ICanOneToOneCentering> & import("../mixins").AbstractConstructor<ICanOneToOneCentering> & import("../mixins").Constructor<ICanChangeZoom> & import("../mixins").AbstractConstructor<ICanChangeZoom> & {
8
10
  new (transform: ITransformModel): {
9
11
  transform: ITransformModel;
10
12
  };
@@ -1,10 +1,10 @@
1
1
  import { ElementRef, EventEmitter, OnInit } from "@angular/core";
2
2
  import { FCanvasBase } from './f-canvas-base';
3
- import { IPoint } from '@foblex/core';
3
+ import { IPoint } from '@foblex/2d';
4
4
  import { FCanvasChangeEvent } from './domain';
5
5
  import { FComponentsStore } from '../f-storage';
6
6
  import { FNodeBase } from '../f-node';
7
- import { FFlowMediator } from '../infrastructure';
7
+ import { FMediator } from '@foblex/mediator';
8
8
  import * as i0 from "@angular/core";
9
9
  export declare class FCanvasComponent extends FCanvasBase implements OnInit {
10
10
  private elementReference;
@@ -18,12 +18,13 @@ export declare class FCanvasComponent extends FCanvasBase implements OnInit {
18
18
  fGroupsContainer: ElementRef<HTMLElement>;
19
19
  fNodesContainer: ElementRef<HTMLElement>;
20
20
  fConnectionsContainer: ElementRef<HTMLElement>;
21
- constructor(elementReference: ElementRef<HTMLElement>, fMediator: FFlowMediator, fComponentsStore: FComponentsStore);
21
+ constructor(elementReference: ElementRef<HTMLElement>, fMediator: FMediator, fComponentsStore: FComponentsStore);
22
22
  ngOnInit(): void;
23
23
  redraw(): void;
24
24
  redrawWithAnimation(): void;
25
+ centerGroupOrNode(id: string, animated?: boolean): void;
25
26
  fitToScreen(toCenter?: IPoint, animated?: boolean): void;
26
27
  oneToOne(): void;
27
28
  static ɵfac: i0.ɵɵFactoryDeclaration<FCanvasComponent, never>;
28
- static ɵcmp: i0.ɵɵComponentDeclaration<FCanvasComponent, "f-canvas", ["fComponent"], { "position": "position"; "scale": "scale"; }, { "fCanvasChange": "fCanvasChange"; }, never, ["[fGroup]", "f-connection", "f-connection-for-create", "[fNode]"]>;
29
+ static ɵcmp: i0.ɵɵComponentDeclaration<FCanvasComponent, "f-canvas", ["fComponent"], { "position": "position"; "scale": "scale"; }, { "fCanvasChange": "fCanvasChange"; }, never, ["[fGroup]", "f-snap-connection", "f-connection", "f-connection-for-create", "[fNode]"]>;
29
30
  }
@@ -1,4 +1,4 @@
1
- import { IPoint } from '@foblex/core';
1
+ import { IPoint } from '@foblex/2d';
2
2
  export declare class CalculateCenterBetweenPointsRequest {
3
3
  source: IPoint;
4
4
  target: IPoint;
@@ -1,4 +1,5 @@
1
- import { IHandler, IPoint } from '@foblex/core';
1
+ import { IHandler } from '@foblex/mediator';
2
+ import { IPoint } from '@foblex/2d';
2
3
  import { CalculateCenterBetweenPointsRequest } from './calculate-center-between-points-request';
3
4
  export declare class CalculateCenterBetweenPointsHandler implements IHandler<CalculateCenterBetweenPointsRequest, IPoint> {
4
5
  handle(request: CalculateCenterBetweenPointsRequest): IPoint;
@@ -1,4 +1,4 @@
1
- import { IPoint } from '@foblex/core';
1
+ import { IPoint } from '@foblex/2d';
2
2
  export declare class CalculateConnectionCenterRequest {
3
3
  points: IPoint[];
4
4
  constructor(points: IPoint[]);
@@ -1,4 +1,5 @@
1
- import { IHandler, IPoint } from '@foblex/core';
1
+ import { IPoint } from '@foblex/2d';
2
+ import { IHandler } from '@foblex/mediator';
2
3
  import { CalculateConnectionCenterRequest } from './calculate-connection-center-request';
3
4
  export declare class CalculateConnectionCenterHandler implements IHandler<CalculateConnectionCenterRequest, IPoint> {
4
5
  handle(request: CalculateConnectionCenterRequest): IPoint;
@@ -1,5 +1,5 @@
1
1
  import { ElementRef } from '@angular/core';
2
- import { IHasHostElement, ILine, IPoint } from '@foblex/core';
2
+ import { ILine, IPoint } from '@foblex/2d';
3
3
  import { Subject } from 'rxjs';
4
4
  import { EFConnectionBehavior } from './e-f-connection-behavior';
5
5
  import { EFConnectionType } from './e-f-connection-type';
@@ -15,14 +15,15 @@ import { IHasStateChanges } from '../../i-has-state-changes';
15
15
  import { FMarkerBase } from '../f-marker';
16
16
  import { EFConnectableSide } from '../../f-connectors';
17
17
  import { FConnectionFactory } from '../f-connection-builder';
18
- import { ICanChangeConnectionVisibility, ISelectable } from './mixins';
18
+ import { IHasHostElement } from '../../i-has-host-element';
19
+ import { ICanChangeSelection, ICanChangeVisibility } from '../../mixins';
19
20
  import * as i0 from "@angular/core";
20
- declare const MIXIN_BASE: import("@foblex/core").Constructor<ISelectable> & import("@foblex/core").AbstractConstructor<ISelectable> & import("@foblex/core").Constructor<ICanChangeConnectionVisibility> & import("@foblex/core").AbstractConstructor<ICanChangeConnectionVisibility> & {
21
+ declare const MIXIN_BASE: import("../../mixins").Constructor<ICanChangeSelection> & import("../../mixins").AbstractConstructor<ICanChangeSelection> & import("../../mixins").Constructor<ICanChangeVisibility> & import("../../mixins").AbstractConstructor<ICanChangeVisibility> & {
21
22
  new (hostElement: HTMLElement): {
22
23
  hostElement: HTMLElement;
23
24
  };
24
25
  };
25
- export declare abstract class FConnectionBase extends MIXIN_BASE implements IHasHostElement, ISelectable, ICanChangeConnectionVisibility, IHasStateChanges, IHasConnectionColor, IHasConnectionFromTo, IHasConnectionText {
26
+ export declare abstract class FConnectionBase extends MIXIN_BASE implements IHasHostElement, ICanChangeSelection, ICanChangeVisibility, IHasStateChanges, IHasConnectionColor, IHasConnectionFromTo, IHasConnectionText {
26
27
  private cFactory;
27
28
  abstract fId: string;
28
29
  abstract fStartColor: string;
@@ -55,6 +56,8 @@ export declare abstract class FConnectionBase extends MIXIN_BASE implements IHas
55
56
  setLine(source: IPoint, sourceSide: EFConnectableSide, target: IPoint, targetSide: EFConnectableSide): void;
56
57
  private getPathResult;
57
58
  private getTransform;
59
+ selectChild(): void;
60
+ deselectChild(): void;
58
61
  redraw(): void;
59
62
  static ɵfac: i0.ɵɵFactoryDeclaration<FConnectionBase, never>;
60
63
  static ɵdir: i0.ɵɵDirectiveDeclaration<FConnectionBase, never, never, {}, {}, never>;
@@ -1,8 +1,8 @@
1
1
  import { ElementRef, OnInit } from '@angular/core';
2
- import { IHasHostElement } from '@foblex/core';
3
2
  import { IHasConnectionText } from '../i-has-connection-text';
4
3
  import { IHasConnectionFromTo } from '../i-has-connection-from-to';
5
4
  import { BrowserService } from '@foblex/platform';
5
+ import { IHasHostElement } from '../../../i-has-host-element';
6
6
  import * as i0 from "@angular/core";
7
7
  export declare class FConnectionTextPathDirective implements IHasHostElement, OnInit {
8
8
  private elementReference;
@@ -1,5 +1,5 @@
1
1
  import { ElementRef } from "@angular/core";
2
- import { ILine } from '@foblex/core';
2
+ import { ILine } from '@foblex/2d';
3
3
  import { FConnectionTextPathDirective } from './f-connection-text-path.directive';
4
4
  import { IHasConnectionText } from '../i-has-connection-text';
5
5
  import { IHasConnectionFromTo } from '../i-has-connection-from-to';