kritzel-stencil 0.0.131 → 0.0.133

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 (362) hide show
  1. package/dist/cjs/{index-BwINBV6L.js → index-DCHCVnOl.js} +755 -701
  2. package/dist/cjs/index-DCHCVnOl.js.map +1 -0
  3. package/dist/cjs/index-nzUNdMPh.js +6 -2
  4. package/dist/cjs/index.cjs.js +1 -1
  5. package/dist/cjs/kritzel-brush-style.cjs.entry.js +32 -0
  6. package/dist/cjs/kritzel-brush-style.entry.cjs.js.map +1 -0
  7. package/dist/cjs/{kritzel-brush-style_23.cjs.entry.js → kritzel-color_22.cjs.entry.js} +1046 -874
  8. package/dist/cjs/loader.cjs.js +1 -1
  9. package/dist/cjs/stencil.cjs.js +1 -1
  10. package/dist/collection/classes/commands/add-object.command.js +6 -7
  11. package/dist/collection/classes/commands/add-object.command.js.map +1 -1
  12. package/dist/collection/classes/commands/add-selection-group.command.js +9 -9
  13. package/dist/collection/classes/commands/add-selection-group.command.js.map +1 -1
  14. package/dist/collection/classes/commands/base.command.js +3 -3
  15. package/dist/collection/classes/commands/base.command.js.map +1 -1
  16. package/dist/collection/classes/commands/batch.command.js +2 -2
  17. package/dist/collection/classes/commands/batch.command.js.map +1 -1
  18. package/dist/collection/classes/commands/move-selection-group.command.js +15 -7
  19. package/dist/collection/classes/commands/move-selection-group.command.js.map +1 -1
  20. package/dist/collection/classes/commands/remove-object.command.js +8 -9
  21. package/dist/collection/classes/commands/remove-object.command.js.map +1 -1
  22. package/dist/collection/classes/commands/remove-selection-group.command.js +7 -7
  23. package/dist/collection/classes/commands/remove-selection-group.command.js.map +1 -1
  24. package/dist/collection/classes/commands/resize-selection-group.command.js +15 -7
  25. package/dist/collection/classes/commands/resize-selection-group.command.js.map +1 -1
  26. package/dist/collection/classes/commands/rotate-selection-group.command.js +14 -12
  27. package/dist/collection/classes/commands/rotate-selection-group.command.js.map +1 -1
  28. package/dist/collection/classes/commands/update-object.command.js +6 -5
  29. package/dist/collection/classes/commands/update-object.command.js.map +1 -1
  30. package/dist/collection/classes/commands/update-viewport.command.js +11 -11
  31. package/dist/collection/classes/commands/update-viewport.command.js.map +1 -1
  32. package/dist/collection/classes/{store.class.js → core/core.class.js} +116 -145
  33. package/dist/collection/classes/core/core.class.js.map +1 -0
  34. package/dist/collection/classes/{database.class.js → core/database.class.js} +28 -20
  35. package/dist/collection/classes/core/database.class.js.map +1 -0
  36. package/dist/collection/classes/core/history.class.js +88 -0
  37. package/dist/collection/classes/core/history.class.js.map +1 -0
  38. package/dist/collection/classes/{reviver.class.js → core/reviver.class.js} +27 -23
  39. package/dist/collection/classes/core/reviver.class.js.map +1 -0
  40. package/dist/collection/classes/core/store.class.js +51 -0
  41. package/dist/collection/classes/core/store.class.js.map +1 -0
  42. package/dist/collection/classes/core/viewport.class.js +165 -0
  43. package/dist/collection/classes/core/viewport.class.js.map +1 -0
  44. package/dist/collection/classes/core/workspace.class.js +42 -0
  45. package/dist/collection/classes/core/workspace.class.js.map +1 -0
  46. package/dist/collection/classes/handlers/base.handler.js +4 -4
  47. package/dist/collection/classes/handlers/base.handler.js.map +1 -1
  48. package/dist/collection/classes/handlers/context-menu.handler.js +29 -19
  49. package/dist/collection/classes/handlers/context-menu.handler.js.map +1 -1
  50. package/dist/collection/classes/handlers/hover.handler.js +5 -5
  51. package/dist/collection/classes/handlers/hover.handler.js.map +1 -1
  52. package/dist/collection/classes/handlers/key.handler.js +38 -44
  53. package/dist/collection/classes/handlers/key.handler.js.map +1 -1
  54. package/dist/collection/classes/handlers/move.handler.js +49 -44
  55. package/dist/collection/classes/handlers/move.handler.js.map +1 -1
  56. package/dist/collection/classes/handlers/resize.handler.js +55 -60
  57. package/dist/collection/classes/handlers/resize.handler.js.map +1 -1
  58. package/dist/collection/classes/handlers/rotation.handler.js +59 -69
  59. package/dist/collection/classes/handlers/rotation.handler.js.map +1 -1
  60. package/dist/collection/classes/handlers/selection.handler.js +73 -72
  61. package/dist/collection/classes/handlers/selection.handler.js.map +1 -1
  62. package/dist/collection/classes/objects/base-object.class.js +30 -17
  63. package/dist/collection/classes/objects/base-object.class.js.map +1 -1
  64. package/dist/collection/classes/objects/custom-element.class.js +3 -3
  65. package/dist/collection/classes/objects/custom-element.class.js.map +1 -1
  66. package/dist/collection/classes/objects/image.class.js +5 -5
  67. package/dist/collection/classes/objects/image.class.js.map +1 -1
  68. package/dist/collection/classes/objects/path.class.js +7 -7
  69. package/dist/collection/classes/objects/path.class.js.map +1 -1
  70. package/dist/collection/classes/objects/selection-box.class.js +4 -4
  71. package/dist/collection/classes/objects/selection-box.class.js.map +1 -1
  72. package/dist/collection/classes/objects/selection-group.class.js +19 -20
  73. package/dist/collection/classes/objects/selection-group.class.js.map +1 -1
  74. package/dist/collection/classes/objects/text.class.js +13 -13
  75. package/dist/collection/classes/objects/text.class.js.map +1 -1
  76. package/dist/collection/classes/registries/tool.registry.js +2 -2
  77. package/dist/collection/classes/registries/tool.registry.js.map +1 -1
  78. package/dist/collection/classes/tools/base-tool.class.js +11 -5
  79. package/dist/collection/classes/tools/base-tool.class.js.map +1 -1
  80. package/dist/collection/classes/tools/brush-tool.class.js +57 -53
  81. package/dist/collection/classes/tools/brush-tool.class.js.map +1 -1
  82. package/dist/collection/classes/tools/eraser-tool.class.js +26 -26
  83. package/dist/collection/classes/tools/eraser-tool.class.js.map +1 -1
  84. package/dist/collection/classes/tools/image-tool.class.js +11 -11
  85. package/dist/collection/classes/tools/image-tool.class.js.map +1 -1
  86. package/dist/collection/classes/tools/selection-tool.class.js +39 -37
  87. package/dist/collection/classes/tools/selection-tool.class.js.map +1 -1
  88. package/dist/collection/classes/tools/text-tool.class.js +37 -37
  89. package/dist/collection/classes/tools/text-tool.class.js.map +1 -1
  90. package/dist/collection/components/core/kritzel-cursor-trail/kritzel-cursor-trail.js +28 -28
  91. package/dist/collection/components/core/kritzel-cursor-trail/kritzel-cursor-trail.js.map +1 -1
  92. package/dist/collection/components/core/kritzel-editor/kritzel-editor.css +7 -9
  93. package/dist/collection/components/core/kritzel-editor/kritzel-editor.js +177 -7
  94. package/dist/collection/components/core/kritzel-editor/kritzel-editor.js.map +1 -1
  95. package/dist/collection/components/core/kritzel-engine/kritzel-engine.js +237 -232
  96. package/dist/collection/components/core/kritzel-engine/kritzel-engine.js.map +1 -1
  97. package/dist/collection/components/shared/kritzel-brush-style/kritzel-brush-style.js +1 -1
  98. package/dist/collection/components/shared/kritzel-brush-style/kritzel-brush-style.js.map +1 -1
  99. package/dist/collection/components/shared/kritzel-color/kritzel-color.js +2 -2
  100. package/dist/collection/components/shared/kritzel-color/kritzel-color.js.map +1 -1
  101. package/dist/collection/components/shared/kritzel-color-palette/kritzel-color-palette.css +5 -0
  102. package/dist/collection/components/shared/kritzel-color-palette/kritzel-color-palette.js +3 -3
  103. package/dist/collection/components/shared/kritzel-color-palette/kritzel-color-palette.js.map +1 -1
  104. package/dist/collection/components/shared/kritzel-dropdown/kritzel-dropdown.js +12 -12
  105. package/dist/collection/components/shared/kritzel-dropdown/kritzel-dropdown.js.map +1 -1
  106. package/dist/collection/components/shared/kritzel-font/kritzel-font.js +1 -1
  107. package/dist/collection/components/shared/kritzel-font/kritzel-font.js.map +1 -1
  108. package/dist/collection/components/shared/kritzel-font-family/kritzel-font-family.js +1 -1
  109. package/dist/collection/components/shared/kritzel-font-family/kritzel-font-family.js.map +1 -1
  110. package/dist/collection/components/shared/kritzel-font-size/kritzel-font-size.js +1 -1
  111. package/dist/collection/components/shared/kritzel-font-size/kritzel-font-size.js.map +1 -1
  112. package/dist/collection/components/shared/kritzel-icon/kritzel-icon.css +1 -0
  113. package/dist/collection/components/shared/kritzel-icon/kritzel-icon.js.map +1 -1
  114. package/dist/collection/components/shared/kritzel-menu/kritzel-menu.css +5 -1
  115. package/dist/collection/components/shared/kritzel-menu/kritzel-menu.js +2 -2
  116. package/dist/collection/components/shared/kritzel-menu/kritzel-menu.js.map +1 -1
  117. package/dist/collection/components/shared/kritzel-menu-item/kritzel-menu-item.css +18 -7
  118. package/dist/collection/components/shared/kritzel-menu-item/kritzel-menu-item.js +24 -9
  119. package/dist/collection/components/shared/kritzel-menu-item/kritzel-menu-item.js.map +1 -1
  120. package/dist/collection/components/shared/kritzel-portal/kritzel-portal.js +4 -42
  121. package/dist/collection/components/shared/kritzel-portal/kritzel-portal.js.map +1 -1
  122. package/dist/collection/components/shared/kritzel-split-button/kritzel-split-button.css +0 -4
  123. package/dist/collection/components/shared/kritzel-split-button/kritzel-split-button.js +52 -10
  124. package/dist/collection/components/shared/kritzel-split-button/kritzel-split-button.js.map +1 -1
  125. package/dist/collection/components/shared/kritzel-stroke-size/kritzel-stroke-size.css +4 -0
  126. package/dist/collection/components/shared/kritzel-stroke-size/kritzel-stroke-size.js +1 -1
  127. package/dist/collection/components/shared/kritzel-stroke-size/kritzel-stroke-size.js.map +1 -1
  128. package/dist/collection/components/shared/kritzel-tooltip/kritzel-tooltip.js +79 -7
  129. package/dist/collection/components/shared/kritzel-tooltip/kritzel-tooltip.js.map +1 -1
  130. package/dist/collection/components/ui/kritzel-context-menu/kritzel-context-menu.js +47 -15
  131. package/dist/collection/components/ui/kritzel-context-menu/kritzel-context-menu.js.map +1 -1
  132. package/dist/collection/components/ui/kritzel-control-brush-config/kritzel-control-brush-config.css +4 -0
  133. package/dist/collection/components/ui/kritzel-control-brush-config/kritzel-control-brush-config.js +6 -6
  134. package/dist/collection/components/ui/kritzel-control-brush-config/kritzel-control-brush-config.js.map +1 -1
  135. package/dist/collection/components/ui/kritzel-control-text-config/kritzel-control-text-config.js +2 -2
  136. package/dist/collection/components/ui/kritzel-control-text-config/kritzel-control-text-config.js.map +1 -1
  137. package/dist/collection/components/ui/kritzel-controls/kritzel-controls.css +12 -1
  138. package/dist/collection/components/ui/kritzel-controls/kritzel-controls.js +23 -7
  139. package/dist/collection/components/ui/kritzel-controls/kritzel-controls.js.map +1 -1
  140. package/dist/collection/components/ui/kritzel-utility-panel/kritzel-utility-panel.css +5 -0
  141. package/dist/collection/components/ui/kritzel-utility-panel/kritzel-utility-panel.js +1 -1
  142. package/dist/collection/components/ui/kritzel-utility-panel/kritzel-utility-panel.js.map +1 -1
  143. package/dist/collection/components/ui/kritzel-workspace-manager/kritzel-workspace-manager.js +25 -15
  144. package/dist/collection/components/ui/kritzel-workspace-manager/kritzel-workspace-manager.js.map +1 -1
  145. package/dist/collection/configs/default-engine-state.js +0 -1
  146. package/dist/collection/configs/default-engine-state.js.map +1 -1
  147. package/dist/collection/helpers/devices.helper.js +20 -0
  148. package/dist/collection/helpers/devices.helper.js.map +1 -1
  149. package/dist/collection/helpers/event.helper.js +1 -5
  150. package/dist/collection/helpers/event.helper.js.map +1 -1
  151. package/dist/collection/helpers/html.helper.js +29 -0
  152. package/dist/collection/helpers/html.helper.js.map +1 -1
  153. package/dist/collection/helpers/object.helper.js +0 -14
  154. package/dist/collection/helpers/object.helper.js.map +1 -1
  155. package/dist/collection/index.js +1 -1
  156. package/dist/collection/index.js.map +1 -1
  157. package/dist/collection/interfaces/clonable.interface.js +2 -0
  158. package/dist/collection/interfaces/clonable.interface.js.map +1 -0
  159. package/dist/collection/interfaces/engine-state.interface.js.map +1 -1
  160. package/dist/collection/interfaces/serializable.interface.js.map +1 -1
  161. package/dist/collection/types/deep-readonly.type.js +2 -0
  162. package/dist/collection/types/deep-readonly.type.js.map +1 -0
  163. package/dist/components/index.js +3 -3
  164. package/dist/components/kritzel-brush-style.js +59 -1
  165. package/dist/components/kritzel-brush-style.js.map +1 -1
  166. package/dist/components/kritzel-color-palette.js +1 -1
  167. package/dist/components/kritzel-color.js +1 -1
  168. package/dist/components/kritzel-context-menu.js +1 -1
  169. package/dist/components/kritzel-control-brush-config.js +1 -1
  170. package/dist/components/kritzel-control-text-config.js +1 -1
  171. package/dist/components/kritzel-controls.js +1 -1
  172. package/dist/components/kritzel-cursor-trail.js +1 -1
  173. package/dist/components/kritzel-dropdown.js +1 -1
  174. package/dist/components/kritzel-editor.js +80 -37
  175. package/dist/components/kritzel-editor.js.map +1 -1
  176. package/dist/components/kritzel-engine.js +1 -1
  177. package/dist/components/kritzel-font-family.js +1 -1
  178. package/dist/components/kritzel-font-size.js +1 -1
  179. package/dist/components/kritzel-font.js +1 -1
  180. package/dist/components/kritzel-icon.js +1 -1
  181. package/dist/components/kritzel-menu-item.js +1 -1
  182. package/dist/components/kritzel-menu.js +1 -1
  183. package/dist/components/kritzel-portal.js +1 -1
  184. package/dist/components/kritzel-split-button.js +1 -1
  185. package/dist/components/kritzel-stroke-size.js +1 -1
  186. package/dist/components/kritzel-tooltip.js +1 -1
  187. package/dist/components/kritzel-utility-panel.js +1 -1
  188. package/dist/components/kritzel-workspace-manager.js +1 -1
  189. package/dist/components/{p-CMJ3P0Vw.js → p-0iJh9Z6m.js} +5 -5
  190. package/dist/components/p-0iJh9Z6m.js.map +1 -0
  191. package/dist/components/p-B0kd2rUI.js +16 -0
  192. package/dist/components/p-B0kd2rUI.js.map +1 -0
  193. package/dist/components/{p-BB5R2k1o.js → p-B3LGnqFz.js} +41 -31
  194. package/dist/components/p-B3LGnqFz.js.map +1 -0
  195. package/dist/components/{p-BB0_-X42.js → p-B7kZ1_RH.js} +4 -4
  196. package/dist/components/{p-BB0_-X42.js.map → p-B7kZ1_RH.js.map} +1 -1
  197. package/dist/components/{p-t4NIsuX9.js → p-B7w19kIk.js} +15 -27
  198. package/dist/components/p-B7w19kIk.js.map +1 -0
  199. package/dist/components/{p-B1BLgWL1.js → p-BGdsAz54.js} +27 -18
  200. package/dist/components/p-BGdsAz54.js.map +1 -0
  201. package/dist/components/{p-CGmS8wnN.js → p-BKvOO7NT.js} +26 -16
  202. package/dist/components/p-BKvOO7NT.js.map +1 -0
  203. package/dist/components/{p-BhiYvSBc.js → p-BM9IjvnD.js} +3 -3
  204. package/dist/components/p-BM9IjvnD.js.map +1 -0
  205. package/dist/components/{p-BrBQUN0Q.js → p-BPsQrpzN.js} +40 -11
  206. package/dist/components/p-BPsQrpzN.js.map +1 -0
  207. package/dist/components/p-C6qB08BS.js +68 -0
  208. package/dist/components/p-C6qB08BS.js.map +1 -0
  209. package/dist/components/{p-BPz_H-EG.js → p-CM8KdFZI.js} +28 -16
  210. package/dist/components/p-CM8KdFZI.js.map +1 -0
  211. package/dist/components/{p-DHSEK3rF.js → p-CNTK3JOp.js} +174 -153
  212. package/dist/components/p-CNTK3JOp.js.map +1 -0
  213. package/dist/components/{p-DMrtdhBD.js → p-CsyM5q2M.js} +7 -7
  214. package/dist/components/p-CsyM5q2M.js.map +1 -0
  215. package/dist/components/{p-BuewJQNl.js → p-CwH-bwjb.js} +1187 -1141
  216. package/dist/components/p-CwH-bwjb.js.map +1 -0
  217. package/dist/components/{p-BgmKrd5Z.js → p-DCx3703u.js} +5 -5
  218. package/dist/components/p-DCx3703u.js.map +1 -0
  219. package/dist/components/{p-trncBp_6.js → p-DFO-6kuA.js} +15 -15
  220. package/dist/components/p-DFO-6kuA.js.map +1 -0
  221. package/dist/components/{p-BubxwvMA.js → p-Db3kxVe2.js} +24 -24
  222. package/dist/components/p-Db3kxVe2.js.map +1 -0
  223. package/dist/components/{p-BexTdWaX.js → p-Ddlbt3Bj.js} +4 -4
  224. package/dist/components/p-Ddlbt3Bj.js.map +1 -0
  225. package/dist/components/{p-CHxPWeZd.js → p-DjU7p3od.js} +11 -11
  226. package/dist/components/{p-CHxPWeZd.js.map → p-DjU7p3od.js.map} +1 -1
  227. package/dist/components/{p-BeljsQ-8.js → p-Dw4n-4zp.js} +32 -17
  228. package/dist/components/p-Dw4n-4zp.js.map +1 -0
  229. package/dist/components/{p-DxTu1aoJ.js → p-NP1Htol7.js} +7 -45
  230. package/dist/components/p-NP1Htol7.js.map +1 -0
  231. package/dist/components/p-YqK8ch2R.js +46 -0
  232. package/dist/components/p-YqK8ch2R.js.map +1 -0
  233. package/dist/components/p-l10It7Nm.js +30 -0
  234. package/dist/components/p-l10It7Nm.js.map +1 -0
  235. package/dist/components/{p-p1Jkec_q.js → p-sq9jgfX0.js} +3 -3
  236. package/dist/components/p-sq9jgfX0.js.map +1 -0
  237. package/dist/components/{p-yZ48g7-u.js → p-sreNwi0N.js} +4 -4
  238. package/dist/components/{p-yZ48g7-u.js.map → p-sreNwi0N.js.map} +1 -1
  239. package/dist/esm/{index-B-oSk-v8.js → index-DY3KqYWc.js} +756 -702
  240. package/dist/esm/index-DY3KqYWc.js.map +1 -0
  241. package/dist/esm/index-oCOlsFCN.js +6 -2
  242. package/dist/esm/index.js +1 -1
  243. package/dist/esm/kritzel-brush-style.entry.js +30 -0
  244. package/dist/esm/kritzel-brush-style.entry.js.map +1 -0
  245. package/dist/esm/{kritzel-brush-style_23.entry.js → kritzel-color_22.entry.js} +1048 -875
  246. package/dist/esm/loader.js +1 -1
  247. package/dist/esm/stencil.js +1 -1
  248. package/dist/stencil/index.esm.js +1 -1
  249. package/dist/stencil/kritzel-brush-style.entry.esm.js.map +1 -0
  250. package/dist/stencil/p-25d1e040.entry.js +2 -0
  251. package/dist/stencil/p-25d1e040.entry.js.map +1 -0
  252. package/dist/stencil/p-DY3KqYWc.js +2 -0
  253. package/dist/stencil/p-DY3KqYWc.js.map +1 -0
  254. package/dist/stencil/p-dc534b01.entry.js +2 -0
  255. package/dist/stencil/p-dc534b01.entry.js.map +1 -0
  256. package/dist/stencil/stencil.esm.js +1 -1
  257. package/dist/types/classes/commands/add-object.command.d.ts +2 -2
  258. package/dist/types/classes/commands/add-selection-group.command.d.ts +2 -1
  259. package/dist/types/classes/commands/base.command.d.ts +3 -3
  260. package/dist/types/classes/commands/batch.command.d.ts +2 -1
  261. package/dist/types/classes/commands/move-selection-group.command.d.ts +2 -1
  262. package/dist/types/classes/commands/remove-object.command.d.ts +2 -2
  263. package/dist/types/classes/commands/remove-selection-group.command.d.ts +2 -2
  264. package/dist/types/classes/commands/resize-selection-group.command.d.ts +2 -1
  265. package/dist/types/classes/commands/rotate-selection-group.command.d.ts +2 -1
  266. package/dist/types/classes/commands/update-object.command.d.ts +2 -2
  267. package/dist/types/classes/commands/update-viewport.command.d.ts +2 -1
  268. package/dist/types/classes/{store.class.d.ts → core/core.class.d.ts} +9 -19
  269. package/dist/types/classes/{database.class.d.ts → core/database.class.d.ts} +3 -2
  270. package/dist/types/classes/{history.class.d.ts → core/history.class.d.ts} +5 -5
  271. package/dist/types/classes/core/reviver.class.d.ts +6 -0
  272. package/dist/types/classes/core/store.class.d.ts +17 -0
  273. package/dist/types/classes/{viewport.class.d.ts → core/viewport.class.d.ts} +3 -3
  274. package/dist/types/classes/core/workspace.class.d.ts +24 -0
  275. package/dist/types/classes/handlers/base.handler.d.ts +3 -3
  276. package/dist/types/classes/handlers/context-menu.handler.d.ts +2 -2
  277. package/dist/types/classes/handlers/hover.handler.d.ts +2 -2
  278. package/dist/types/classes/handlers/key.handler.d.ts +2 -2
  279. package/dist/types/classes/handlers/move.handler.d.ts +4 -2
  280. package/dist/types/classes/handlers/resize.handler.d.ts +3 -2
  281. package/dist/types/classes/handlers/rotation.handler.d.ts +6 -2
  282. package/dist/types/classes/handlers/selection.handler.d.ts +2 -2
  283. package/dist/types/classes/objects/base-object.class.d.ts +8 -5
  284. package/dist/types/classes/objects/custom-element.class.d.ts +2 -2
  285. package/dist/types/classes/objects/image.class.d.ts +2 -2
  286. package/dist/types/classes/objects/path.class.d.ts +2 -2
  287. package/dist/types/classes/objects/selection-box.class.d.ts +2 -2
  288. package/dist/types/classes/objects/selection-group.class.d.ts +2 -2
  289. package/dist/types/classes/objects/text.class.d.ts +2 -2
  290. package/dist/types/classes/registries/tool.registry.d.ts +2 -2
  291. package/dist/types/classes/tools/base-tool.class.d.ts +8 -4
  292. package/dist/types/classes/tools/brush-tool.class.d.ts +2 -2
  293. package/dist/types/classes/tools/eraser-tool.class.d.ts +2 -2
  294. package/dist/types/classes/tools/image-tool.class.d.ts +2 -2
  295. package/dist/types/classes/tools/selection-tool.class.d.ts +2 -2
  296. package/dist/types/classes/tools/text-tool.class.d.ts +2 -2
  297. package/dist/types/components/core/kritzel-cursor-trail/kritzel-cursor-trail.d.ts +5 -5
  298. package/dist/types/components/core/kritzel-editor/kritzel-editor.d.ts +13 -3
  299. package/dist/types/components/core/kritzel-engine/kritzel-engine.d.ts +21 -22
  300. package/dist/types/components/shared/kritzel-dropdown/kritzel-dropdown.d.ts +2 -2
  301. package/dist/types/components/shared/kritzel-menu-item/kritzel-menu-item.d.ts +2 -0
  302. package/dist/types/components/shared/kritzel-portal/kritzel-portal.d.ts +0 -1
  303. package/dist/types/components/shared/kritzel-split-button/kritzel-split-button.d.ts +4 -2
  304. package/dist/types/components/shared/kritzel-tooltip/kritzel-tooltip.d.ts +8 -2
  305. package/dist/types/components/ui/kritzel-context-menu/kritzel-context-menu.d.ts +5 -3
  306. package/dist/types/components/ui/kritzel-control-brush-config/kritzel-control-brush-config.d.ts +1 -1
  307. package/dist/types/components/ui/kritzel-controls/kritzel-controls.d.ts +3 -1
  308. package/dist/types/components/ui/kritzel-workspace-manager/kritzel-workspace-manager.d.ts +3 -2
  309. package/dist/types/components.d.ts +41 -12
  310. package/dist/types/helpers/devices.helper.d.ts +4 -0
  311. package/dist/types/helpers/event.helper.d.ts +1 -1
  312. package/dist/types/helpers/html.helper.d.ts +1 -0
  313. package/dist/types/helpers/object.helper.d.ts +0 -2
  314. package/dist/types/index.d.ts +1 -1
  315. package/dist/types/interfaces/clonable.interface.d.ts +3 -0
  316. package/dist/types/interfaces/engine-state.interface.d.ts +1 -2
  317. package/dist/types/interfaces/serializable.interface.d.ts +2 -1
  318. package/dist/types/types/deep-readonly.type.d.ts +7 -0
  319. package/package.json +3 -2
  320. package/dist/cjs/index-BwINBV6L.js.map +0 -1
  321. package/dist/collection/classes/database.class.js.map +0 -1
  322. package/dist/collection/classes/history.class.js +0 -88
  323. package/dist/collection/classes/history.class.js.map +0 -1
  324. package/dist/collection/classes/reviver.class.js.map +0 -1
  325. package/dist/collection/classes/store.class.js.map +0 -1
  326. package/dist/collection/classes/viewport.class.js +0 -153
  327. package/dist/collection/classes/viewport.class.js.map +0 -1
  328. package/dist/collection/classes/workspace.class.js +0 -15
  329. package/dist/collection/classes/workspace.class.js.map +0 -1
  330. package/dist/components/p-B1BLgWL1.js.map +0 -1
  331. package/dist/components/p-BB5R2k1o.js.map +0 -1
  332. package/dist/components/p-BPz_H-EG.js.map +0 -1
  333. package/dist/components/p-B_lb1FGi.js +0 -19
  334. package/dist/components/p-B_lb1FGi.js.map +0 -1
  335. package/dist/components/p-BeljsQ-8.js.map +0 -1
  336. package/dist/components/p-BexTdWaX.js.map +0 -1
  337. package/dist/components/p-BgmKrd5Z.js.map +0 -1
  338. package/dist/components/p-BhiYvSBc.js.map +0 -1
  339. package/dist/components/p-BrBQUN0Q.js.map +0 -1
  340. package/dist/components/p-BubxwvMA.js.map +0 -1
  341. package/dist/components/p-BuewJQNl.js.map +0 -1
  342. package/dist/components/p-CGmS8wnN.js.map +0 -1
  343. package/dist/components/p-CJKA5zIE.js +0 -10
  344. package/dist/components/p-CJKA5zIE.js.map +0 -1
  345. package/dist/components/p-CMJ3P0Vw.js.map +0 -1
  346. package/dist/components/p-DHSEK3rF.js.map +0 -1
  347. package/dist/components/p-DMrtdhBD.js.map +0 -1
  348. package/dist/components/p-DnUKql15.js +0 -30
  349. package/dist/components/p-DnUKql15.js.map +0 -1
  350. package/dist/components/p-DxTu1aoJ.js.map +0 -1
  351. package/dist/components/p-p1Jkec_q.js.map +0 -1
  352. package/dist/components/p-rIRXQdie.js +0 -64
  353. package/dist/components/p-rIRXQdie.js.map +0 -1
  354. package/dist/components/p-t4NIsuX9.js.map +0 -1
  355. package/dist/components/p-trncBp_6.js.map +0 -1
  356. package/dist/esm/index-B-oSk-v8.js.map +0 -1
  357. package/dist/stencil/p-3bb80782.entry.js +0 -2
  358. package/dist/stencil/p-3bb80782.entry.js.map +0 -1
  359. package/dist/stencil/p-B-oSk-v8.js +0 -2
  360. package/dist/stencil/p-B-oSk-v8.js.map +0 -1
  361. package/dist/types/classes/reviver.class.d.ts +0 -6
  362. package/dist/types/classes/workspace.class.d.ts +0 -16
@@ -1,12 +1,12 @@
1
- import { O as ObjectHelper } from './p-DnUKql15.js';
2
1
  import { K as KritzelMouseButton } from './p-D8W6LE-c.js';
2
+ import { O as ObjectHelper } from './p-B0kd2rUI.js';
3
3
 
4
4
  class KritzelBaseCommand {
5
- _store;
5
+ _core;
6
6
  initiator;
7
7
  skipHistory;
8
- constructor(store, initiator, skipHistory = false) {
9
- this._store = store;
8
+ constructor(core, initiator, skipHistory = false) {
9
+ this._core = core;
10
10
  this.initiator = initiator?.constructor?.name ?? 'Unknown';
11
11
  this.skipHistory = skipHistory;
12
12
  }
@@ -22,8 +22,8 @@ class UpdateObjectCommand extends KritzelBaseCommand {
22
22
  object;
23
23
  updatedProperties;
24
24
  previousProperties;
25
- constructor(store, initiator, object, updatedProperties, skipHistory = false) {
26
- super(store, initiator, skipHistory);
25
+ constructor(core, initiator, object, updatedProperties, skipHistory = false) {
26
+ super(core, initiator, skipHistory);
27
27
  this.object = object;
28
28
  this.updatedProperties = updatedProperties;
29
29
  this.previousProperties = {};
@@ -39,7 +39,8 @@ class UpdateObjectCommand extends KritzelBaseCommand {
39
39
  this.object[key] = this.updatedProperties[key];
40
40
  }
41
41
  }
42
- this._store.updateObjectInDatabase(ObjectHelper.clone(this.object));
42
+ this._core.store.state.objectsMap.update(this.object);
43
+ this._core.updateObjectInDatabase(this.object);
43
44
  }
44
45
  undo() {
45
46
  for (const key in this.previousProperties) {
@@ -47,14 +48,15 @@ class UpdateObjectCommand extends KritzelBaseCommand {
47
48
  this.object[key] = this.previousProperties[key];
48
49
  }
49
50
  }
50
- this._store.updateObjectInDatabase(ObjectHelper.clone(this.object));
51
+ this._core.store.state.objectsMap.update(this.object);
52
+ this._core.updateObjectInDatabase(this.object);
51
53
  }
52
54
  }
53
55
 
54
56
  class KritzelToolRegistry {
55
57
  static registry = {};
56
- static registerTool(toolName, constructor, store) {
57
- const toolInstance = new constructor(store);
58
+ static registerTool(toolName, constructor, core) {
59
+ const toolInstance = new constructor(core);
58
60
  toolInstance.name = toolName;
59
61
  this.registry[toolName] = toolInstance;
60
62
  return toolInstance;
@@ -72,9 +74,9 @@ class KritzelToolRegistry {
72
74
  class KritzelBaseTool {
73
75
  __class__ = this.constructor.name;
74
76
  name = 'base-tool';
75
- _store;
76
- constructor(store) {
77
- this._store = store;
77
+ _core;
78
+ constructor(core) {
79
+ this._core = core;
78
80
  }
79
81
  onActivate() {
80
82
  // default implementation
@@ -94,7 +96,13 @@ class KritzelBaseTool {
94
96
  handleWheel(_event) {
95
97
  // default implementation
96
98
  }
97
- revive(object) {
99
+ serialize() {
100
+ return {
101
+ __class__: this.__class__,
102
+ name: this.name,
103
+ };
104
+ }
105
+ deserialize(object) {
98
106
  Object.assign(this, object);
99
107
  return this;
100
108
  }
@@ -102,17 +110,17 @@ class KritzelBaseTool {
102
110
 
103
111
  class AddObjectCommand extends KritzelBaseCommand {
104
112
  object;
105
- constructor(store, initiator, object, skipHistory = false) {
106
- super(store, initiator, skipHistory);
113
+ constructor(core, initiator, object, skipHistory = false) {
114
+ super(core, initiator, skipHistory);
107
115
  this.object = object;
108
116
  }
109
117
  execute() {
110
- this._store.state.objectsMap.insert(this.object);
111
- this._store.addObjectToDatabase(ObjectHelper.clone(this.object));
118
+ this._core.store.state.objectsMap.insert(this.object);
119
+ this._core.addObjectToDatabase(this.object);
112
120
  }
113
121
  undo() {
114
- this._store.state.objectsMap.remove(object => object.id === this.object.id);
115
- this._store.deleteObjectFromDatabase(this.object.id);
122
+ this._core.store.state.objectsMap.remove(object => object.id === this.object.id);
123
+ this._core.deleteObjectFromDatabase(this.object.id);
116
124
  }
117
125
  }
118
126
 
@@ -131,11 +139,7 @@ class KritzelEventHelper {
131
139
  const contextMenu = path.find(element => element.classList && element.classList.contains('context-menu'));
132
140
  return !!contextMenu;
133
141
  }
134
- static onLongTouchPress(event, onSuccess, onCancel) {
135
- if (event.pointerType !== 'touch') {
136
- onCancel?.();
137
- return () => { };
138
- }
142
+ static onLongPress(event, onSuccess, onCancel) {
139
143
  const longPressTimeout = 400;
140
144
  const moveThreshold = 10;
141
145
  const startX = event.clientX;
@@ -243,8 +247,8 @@ class KritzelTextTool extends KritzelBaseTool {
243
247
  '#808000',
244
248
  '#800080',
245
249
  ];
246
- constructor(store) {
247
- super(store);
250
+ constructor(core) {
251
+ super(core);
248
252
  }
249
253
  handlePointerDown(event) {
250
254
  if (event.cancelable) {
@@ -253,66 +257,66 @@ class KritzelTextTool extends KritzelBaseTool {
253
257
  if (event.pointerType === 'mouse') {
254
258
  const path = event.composedPath().slice(1);
255
259
  const objectElement = path.find(element => element.classList && element.classList.contains('object'));
256
- const object = this._store.findObjectById(objectElement?.id);
257
- if (this._store.state.activeText === null && object && object instanceof KritzelText) {
258
- this._store.state.activeText = object;
260
+ const object = this._core.findObjectById(objectElement?.id);
261
+ if (this._core.store.state.activeText === null && object && object instanceof KritzelText) {
262
+ this._core.store.setState('activeText', object);
259
263
  object.focus();
260
264
  return;
261
265
  }
262
- if (this._store.state.activeText !== null && object instanceof KritzelText) {
266
+ if (this._core.store.state.activeText !== null && object instanceof KritzelText) {
263
267
  object.focus();
264
268
  return;
265
269
  }
266
- if (this._store.state.activeText !== null) {
267
- this._store.resetActiveText();
268
- this._store.setState('activeTool', KritzelToolRegistry.getTool('selection'));
270
+ if (this._core.store.state.activeText !== null) {
271
+ this._core.resetActiveText();
272
+ this._core.store.setState('activeTool', KritzelToolRegistry.getTool('selection'));
269
273
  return;
270
274
  }
271
275
  if (KritzelEventHelper.isLeftClick(event) === false) {
272
276
  return;
273
277
  }
274
- const clientX = event.clientX - this._store.offsetX;
275
- const clientY = event.clientY - this._store.offsetY;
276
- const text = KritzelText.create(this._store, this.fontSize, this.fontFamily);
278
+ const clientX = event.clientX - this._core.store.offsetX;
279
+ const clientY = event.clientY - this._core.store.offsetY;
280
+ const text = KritzelText.create(this._core, this.fontSize, this.fontFamily);
277
281
  text.fontColor = this.fontColor;
278
- text.translateX = (clientX - this._store.state.translateX) / this._store.state.scale;
279
- text.translateY = (clientY - this._store.state.translateY) / this._store.state.scale;
280
- text.zIndex = this._store.currentZIndex;
281
- this._store.state.activeText = text;
282
- this._store.history.executeCommand(new AddObjectCommand(this._store, this, text));
282
+ text.translateX = (clientX - this._core.store.state.translateX) / this._core.store.state.scale;
283
+ text.translateY = (clientY - this._core.store.state.translateY) / this._core.store.state.scale;
284
+ text.zIndex = this._core.store.currentZIndex;
285
+ this._core.store.setState('activeText', text);
286
+ this._core.history.executeCommand(new AddObjectCommand(this._core, this, text));
283
287
  }
284
288
  if (event.pointerType === 'touch') {
285
- const activePointers = Array.from(this._store.state.pointers.values());
289
+ const activePointers = Array.from(this._core.store.state.pointers.values());
286
290
  const path = event.composedPath().slice(1);
287
291
  const objectElement = path.find(element => element.classList && element.classList.contains('object'));
288
- const object = this._store.findObjectById(objectElement?.id);
289
- if (this._store.state.activeText === null && object && object instanceof KritzelText) {
290
- this._store.state.activeText = object;
292
+ const object = this._core.findObjectById(objectElement?.id);
293
+ if (this._core.store.state.activeText === null && object && object instanceof KritzelText) {
294
+ this._core.store.setState('activeText', object);
291
295
  object.focus();
292
296
  return;
293
297
  }
294
- if (this._store.state.activeText !== null && object instanceof KritzelText) {
298
+ if (this._core.store.state.activeText !== null && object instanceof KritzelText) {
295
299
  object.focus();
296
300
  return;
297
301
  }
298
- if (this._store.state.activeText !== null) {
299
- this._store.resetActiveText();
300
- this._store.setState('activeTool', KritzelToolRegistry.getTool('selection'));
302
+ if (this._core.store.state.activeText !== null) {
303
+ this._core.resetActiveText();
304
+ this._core.store.setState('activeTool', KritzelToolRegistry.getTool('selection'));
301
305
  return;
302
306
  }
303
307
  if (activePointers.length > 1) {
304
308
  return;
305
309
  }
306
310
  KritzelKeyboardHelper.disableInteractiveWidget();
307
- const clientX = Math.round(activePointers[0].clientX - this._store.offsetX);
308
- const clientY = Math.round(activePointers[0].clientY - this._store.offsetY);
309
- const text = KritzelText.create(this._store, this.fontSize, this.fontFamily);
311
+ const clientX = Math.round(activePointers[0].clientX - this._core.store.offsetX);
312
+ const clientY = Math.round(activePointers[0].clientY - this._core.store.offsetY);
313
+ const text = KritzelText.create(this._core, this.fontSize, this.fontFamily);
310
314
  text.fontColor = this.fontColor;
311
- text.translateX = (clientX - this._store.state.translateX) / this._store.state.scale;
312
- text.translateY = (clientY - this._store.state.translateY) / this._store.state.scale;
313
- text.zIndex = this._store.currentZIndex;
314
- this._store.state.activeText = text;
315
- this._store.history.executeCommand(new AddObjectCommand(this._store, this, text));
315
+ text.translateX = (clientX - this._core.store.state.translateX) / this._core.store.state.scale;
316
+ text.translateY = (clientY - this._core.store.state.translateY) / this._core.store.state.scale;
317
+ text.zIndex = this._core.store.currentZIndex;
318
+ this._core.store.setState('activeText', text);
319
+ this._core.history.executeCommand(new AddObjectCommand(this._core, this, text));
316
320
  }
317
321
  }
318
322
  handlePointerUp(event) {
@@ -320,12 +324,12 @@ class KritzelTextTool extends KritzelBaseTool {
320
324
  event.preventDefault();
321
325
  }
322
326
  if (event.pointerType === 'mouse') {
323
- this._store.state.activeText?.updateTextareaDimensions();
324
- this._store.state.activeText?.focus();
327
+ this._core.store.state.activeText?.updateTextareaDimensions();
328
+ this._core.store.state.activeText?.focus();
325
329
  }
326
330
  if (event.pointerType === 'touch') {
327
- this._store.state.activeText?.updateTextareaDimensions();
328
- this._store.state.activeText?.focus();
331
+ this._core.store.state.activeText?.updateTextareaDimensions();
332
+ this._core.store.state.activeText?.focus();
329
333
  KritzelKeyboardHelper.enableInteractiveWidget();
330
334
  }
331
335
  }
@@ -386,7 +390,7 @@ class KritzelGeometryHelper {
386
390
 
387
391
  class KritzelBaseObject {
388
392
  __class__ = 'KritzelBaseObject';
389
- _store;
393
+ _core;
390
394
  _elementRef;
391
395
  id;
392
396
  workspaceId;
@@ -500,11 +504,11 @@ class KritzelBaseObject {
500
504
  constructor() {
501
505
  this.id = this.generateId();
502
506
  }
503
- static create(store) {
507
+ static create(core) {
504
508
  const object = new KritzelBaseObject();
505
- object._store = store;
506
- object.zIndex = store.currentZIndex;
507
- object.workspaceId = store.state.activeWorkspace.id;
509
+ object._core = core;
510
+ object.zIndex = core.store.currentZIndex;
511
+ object.workspaceId = core.store.state.activeWorkspace.id;
508
512
  return object;
509
513
  }
510
514
  mount(element) {
@@ -531,23 +535,23 @@ class KritzelBaseObject {
531
535
  }
532
536
  isInViewport() {
533
537
  const viewportBounds = {
534
- x: -this._store.state.translateX / this._store.state.scale,
535
- y: -this._store.state.translateY / this._store.state.scale,
536
- width: this._store.state.viewportWidth / this._store.state.scale,
537
- height: this._store.state.viewportHeight / this._store.state.scale};
538
+ x: -this._core.store.state.translateX / this._core.store.state.scale,
539
+ y: -this._core.store.state.translateY / this._core.store.state.scale,
540
+ width: this._core.store.state.viewportWidth / this._core.store.state.scale,
541
+ height: this._core.store.state.viewportHeight / this._core.store.state.scale};
538
542
  return (this.boundingBox.x < viewportBounds.x + viewportBounds.width &&
539
543
  this.boundingBox.x + this.boundingBox.width > viewportBounds.x &&
540
544
  this.boundingBox.y < viewportBounds.y + viewportBounds.height &&
541
545
  this.boundingBox.y + this.boundingBox.height > viewportBounds.y);
542
546
  }
543
547
  centerInViewport() {
544
- const scale = this._store.state.scale;
545
- this.translateX = (this._store.state.viewportWidth / 2 - this.totalWidth / 2 - this._store.state.translateX) / scale;
546
- this.translateY = (this._store.state.viewportHeight / 2 - this.totalHeight / 2 - this._store.state.translateY) / scale;
548
+ const scale = this._core.store.state.scale;
549
+ this.translateX = (this._core.store.state.viewportWidth / 2 - this.totalWidth / 2 - this._core.store.state.translateX) / scale;
550
+ this.translateY = (this._core.store.state.viewportHeight / 2 - this.totalHeight / 2 - this._core.store.state.translateY) / scale;
547
551
  }
548
552
  move(startX, startY, endX, endY) {
549
- const deltaX = (startX - endX) / this._store.state.scale;
550
- const deltaY = (startY - endY) / this._store.state.scale;
553
+ const deltaX = (startX - endX) / this._core.store.state.scale;
554
+ const deltaY = (startY - endY) / this._core.store.state.scale;
551
555
  this.translateX += deltaX;
552
556
  this.translateY += deltaY;
553
557
  }
@@ -563,6 +567,11 @@ class KritzelBaseObject {
563
567
  rotate(value) {
564
568
  this.rotation = value;
565
569
  }
570
+ clone() {
571
+ const clone = new KritzelBaseObject();
572
+ Object.assign(clone, this);
573
+ return clone;
574
+ }
566
575
  copy() {
567
576
  const copiedObject = Object.create(Object.getPrototypeOf(this));
568
577
  Object.assign(copiedObject, this);
@@ -573,7 +582,15 @@ class KritzelBaseObject {
573
582
  onSelectedClick() {
574
583
  // This method can be overridden by subclasses to handle click events when the object is selected.
575
584
  }
576
- revive(object) {
585
+ serialize() {
586
+ const { _core, _elementRef, element, totalWidth, totalHeight, ...remainingProps } = this;
587
+ const clonedProps = structuredClone(remainingProps);
588
+ if (element && typeof element === 'object' && 'nodeType' in element && element.nodeType === 1) {
589
+ clonedProps.element = element.cloneNode(true);
590
+ }
591
+ return clonedProps;
592
+ }
593
+ deserialize(object) {
577
594
  Object.assign(this, object);
578
595
  return this;
579
596
  }
@@ -593,7 +610,7 @@ class KritzelBaseObject {
593
610
  updatePosition(x, y) {
594
611
  this.translateX = x;
595
612
  this.translateY = y;
596
- this._store.state.objectsMap.update(this);
613
+ this._core.store.state.objectsMap.update(this);
597
614
  }
598
615
  }
599
616
 
@@ -609,7 +626,7 @@ class KritzelText extends KritzelBaseObject {
609
626
  isEditable = true;
610
627
  rows = 1;
611
628
  get isReadonly() {
612
- return !(this._store.state.activeTool instanceof KritzelTextTool);
629
+ return !(this._core.store.state.activeTool instanceof KritzelTextTool);
613
630
  }
614
631
  constructor(config) {
615
632
  super();
@@ -625,22 +642,22 @@ class KritzelText extends KritzelBaseObject {
625
642
  this.scale = config.scale || 1;
626
643
  }
627
644
  }
628
- static create(store, fontSize, fontFamily) {
645
+ static create(core, fontSize, fontFamily) {
629
646
  const object = new KritzelText();
630
- object._store = store;
647
+ object._core = core;
631
648
  object.id = object.generateId();
632
- object.workspaceId = store.state.activeWorkspace.id;
649
+ object.workspaceId = core.store.state.activeWorkspace.id;
633
650
  object.fontSize = fontSize;
634
651
  object.fontFamily = fontFamily;
635
652
  object.translateX = 0;
636
653
  object.translateY = 0;
637
- object.width = object.initialWidth / (object._store.state.scale < 0 ? object._store.state.scale : 1);
638
- object.height = (object.fontSize * 1.2) / (object._store.state.scale < 0 ? object._store.state.scale : 1);
654
+ object.width = object.initialWidth / (object._core.store.state.scale < 0 ? object._core.store.state.scale : 1);
655
+ object.height = (object.fontSize * 1.2) / (object._core.store.state.scale < 0 ? object._core.store.state.scale : 1);
639
656
  object.padding = 5;
640
657
  object.backgroundColor = 'transparent';
641
- object.scale = object._store.state.scale;
658
+ object.scale = object._core.store.state.scale;
642
659
  object.value = ' ';
643
- object.zIndex = store.currentZIndex;
660
+ object.zIndex = core.store.currentZIndex;
644
661
  return object;
645
662
  }
646
663
  mount(element) {
@@ -694,7 +711,7 @@ class KritzelText extends KritzelBaseObject {
694
711
  document.body.removeChild(span);
695
712
  this.width = textWidth;
696
713
  this.height = textHeight;
697
- this._store.history.executeCommand(new UpdateObjectCommand(this._store, this, this, { ...this }));
714
+ this._core.history.executeCommand(new UpdateObjectCommand(this._core, this, this, { ...this }));
698
715
  }
699
716
  }
700
717
  focus() {
@@ -727,10 +744,10 @@ class KritzelText extends KritzelBaseObject {
727
744
  }
728
745
  }
729
746
  edit() {
730
- this._store.setState('activeTool', KritzelToolRegistry.getTool('text'));
731
- this._store.state.selectionGroup = null;
732
- this._store.state.selectionBox = null;
733
- this._store.state.activeText = this;
747
+ this._core.store.setState('activeTool', KritzelToolRegistry.getTool('text'));
748
+ this._core.store.setState('selectionGroup', null);
749
+ this._core.store.setState('selectionBox', null);
750
+ this._core.store.setState('activeText', this);
734
751
  setTimeout(() => {
735
752
  this.focus();
736
753
  }, 300);
@@ -790,11 +807,11 @@ class KritzelPath extends KritzelBaseObject {
790
807
  this.d = this.generateSvgPath();
791
808
  this.updateDimensions();
792
809
  }
793
- static create(store, options) {
810
+ static create(core, options) {
794
811
  const object = new KritzelPath();
795
- object._store = store;
812
+ object._core = core;
796
813
  object.id = object.generateId();
797
- object.workspaceId = store.state.activeWorkspace.id;
814
+ object.workspaceId = core.store.state.activeWorkspace.id;
798
815
  object.options = options;
799
816
  object.points = options?.points ?? [];
800
817
  object.translateX = options?.translateX ?? 0;
@@ -802,7 +819,7 @@ class KritzelPath extends KritzelBaseObject {
802
819
  object.scale = options?.scale ?? 1;
803
820
  object.strokeWidth = options?.strokeWidth ?? 8;
804
821
  object.fill = options?.fill ?? '#000000';
805
- object.zIndex = store.currentZIndex;
822
+ object.zIndex = core.store.currentZIndex;
806
823
  object.d = object.generateSvgPath();
807
824
  object.updateDimensions();
808
825
  return object;
@@ -830,8 +847,8 @@ class KritzelPath extends KritzelBaseObject {
830
847
  this._adjustedPoints = null;
831
848
  }
832
849
  move(startX, startY, endX, endY) {
833
- const deltaX = (startX - endX) / this._store.state.scale;
834
- const deltaY = (startY - endY) / this._store.state.scale;
850
+ const deltaX = (startX - endX) / this._core.store.state.scale;
851
+ const deltaY = (startY - endY) / this._core.store.state.scale;
835
852
  this.translateX += deltaX;
836
853
  this.translateY += deltaY;
837
854
  this._adjustedPoints = null;
@@ -910,7 +927,7 @@ class KritzelPath extends KritzelBaseObject {
910
927
  this.translateX = x;
911
928
  this.translateY = y;
912
929
  this._adjustedPoints = null;
913
- this._store.state.objectsMap.update(this);
930
+ this._core.store.state.objectsMap.update(this);
914
931
  }
915
932
  computeAdjustedPoints() {
916
933
  if (!this.points?.length) {
@@ -1033,8 +1050,8 @@ class KritzelBrushTool extends KritzelBaseTool {
1033
1050
  pen: ['#000000', '#FFFFFF', '#FF0000', '#00FF00', '#0000FF', '#FFFF00', '#FF00FF', '#00FFFF', '#808080', '#C0C0C0', '#800000', '#008000', '#000080', '#808000', '#800080'],
1034
1051
  highlighter: ['#ffff00', '#ffb347', '#b4ffb4'],
1035
1052
  };
1036
- constructor(store) {
1037
- super(store);
1053
+ constructor(core) {
1054
+ super(core);
1038
1055
  }
1039
1056
  handlePointerDown(event) {
1040
1057
  if (event.cancelable) {
@@ -1042,34 +1059,34 @@ class KritzelBrushTool extends KritzelBaseTool {
1042
1059
  }
1043
1060
  if (event.pointerType === 'mouse') {
1044
1061
  if (KritzelEventHelper.isLeftClick(event)) {
1045
- this._store.state.isDrawing = true;
1046
- const x = event.clientX - this._store.offsetX;
1047
- const y = event.clientY - this._store.offsetY;
1048
- this._store.state.currentPath = KritzelPath.create(this._store, {
1062
+ this._core.store.setState('isDrawing', true);
1063
+ const x = event.clientX - this._core.store.offsetX;
1064
+ const y = event.clientY - this._core.store.offsetY;
1065
+ this._core.store.setState('currentPath', KritzelPath.create(this._core, {
1049
1066
  points: [[x, y]],
1050
- translateX: -this._store.state.translateX,
1051
- translateY: -this._store.state.translateY,
1052
- scale: this._store.state.scale,
1067
+ translateX: -this._core.store.state.translateX,
1068
+ translateY: -this._core.store.state.translateY,
1069
+ scale: this._core.store.state.scale,
1053
1070
  fill: this.color,
1054
1071
  strokeWidth: this.size,
1055
- });
1072
+ }));
1056
1073
  }
1057
1074
  }
1058
1075
  if (event.pointerType === 'touch') {
1059
- const activePointers = Array.from(this._store.state.pointers.values());
1076
+ const activePointers = Array.from(this._core.store.state.pointers.values());
1060
1077
  if (activePointers.length === 1) {
1061
- const x = Math.round(activePointers[0].clientX - this._store.offsetX);
1062
- const y = Math.round(activePointers[0].clientY - this._store.offsetY);
1063
- this._store.state.isDrawing = true;
1064
- this._store.state.currentPath = KritzelPath.create(this._store, {
1078
+ const x = Math.round(activePointers[0].clientX - this._core.store.offsetX);
1079
+ const y = Math.round(activePointers[0].clientY - this._core.store.offsetY);
1080
+ this._core.store.setState('isDrawing', true);
1081
+ this._core.store.setState('currentPath', KritzelPath.create(this._core, {
1065
1082
  points: [[x, y]],
1066
- translateX: -this._store.state.translateX,
1067
- translateY: -this._store.state.translateY,
1068
- scale: this._store.state.scale,
1083
+ translateX: -this._core.store.state.translateX,
1084
+ translateY: -this._core.store.state.translateY,
1085
+ scale: this._core.store.state.scale,
1069
1086
  fill: this.color,
1070
1087
  strokeWidth: this.size,
1071
- });
1072
- this._store.rerender();
1088
+ }));
1089
+ this._core.rerender();
1073
1090
  }
1074
1091
  }
1075
1092
  }
@@ -1078,34 +1095,34 @@ class KritzelBrushTool extends KritzelBaseTool {
1078
1095
  event.preventDefault();
1079
1096
  }
1080
1097
  if (event.pointerType === 'mouse') {
1081
- if (this._store.state.isDrawing) {
1082
- const x = event.clientX - this._store.offsetX;
1083
- const y = event.clientY - this._store.offsetY;
1084
- this._store.state.currentPath = KritzelPath.create(this._store, {
1085
- points: [...this._store.state.currentPath.points, [x, y]],
1086
- translateX: -this._store.state.translateX,
1087
- translateY: -this._store.state.translateY,
1088
- scale: this._store.state.scale,
1098
+ if (this._core.store.state.isDrawing) {
1099
+ const x = event.clientX - this._core.store.offsetX;
1100
+ const y = event.clientY - this._core.store.offsetY;
1101
+ this._core.store.setState('currentPath', KritzelPath.create(this._core, {
1102
+ points: [...this._core.store.state.currentPath.points, [x, y]],
1103
+ translateX: -this._core.store.state.translateX,
1104
+ translateY: -this._core.store.state.translateY,
1105
+ scale: this._core.store.state.scale,
1089
1106
  fill: this.color,
1090
1107
  strokeWidth: this.size,
1091
- });
1092
- this._store.rerender();
1108
+ }));
1109
+ this._core.rerender();
1093
1110
  }
1094
1111
  }
1095
1112
  if (event.pointerType === 'touch') {
1096
- const activePointers = Array.from(this._store.state.pointers.values());
1113
+ const activePointers = Array.from(this._core.store.state.pointers.values());
1097
1114
  if (activePointers.length === 1) {
1098
- const x = Math.round(activePointers[0].clientX - this._store.offsetX);
1099
- const y = Math.round(activePointers[0].clientY - this._store.offsetY);
1100
- this._store.state.currentPath = KritzelPath.create(this._store, {
1101
- points: [...this._store.state.currentPath.points, [x, y]],
1102
- translateX: -this._store.state.translateX,
1103
- translateY: -this._store.state.translateY,
1104
- scale: this._store.state.scale,
1115
+ const x = Math.round(activePointers[0].clientX - this._core.store.offsetX);
1116
+ const y = Math.round(activePointers[0].clientY - this._core.store.offsetY);
1117
+ this._core.store.setState('currentPath', KritzelPath.create(this._core, {
1118
+ points: [...this._core.store.state.currentPath.points, [x, y]],
1119
+ translateX: -this._core.store.state.translateX,
1120
+ translateY: -this._core.store.state.translateY,
1121
+ scale: this._core.store.state.scale,
1105
1122
  fill: this.color,
1106
1123
  strokeWidth: this.size,
1107
- });
1108
- this._store.rerender();
1124
+ }));
1125
+ this._core.rerender();
1109
1126
  }
1110
1127
  }
1111
1128
  }
@@ -1114,30 +1131,34 @@ class KritzelBrushTool extends KritzelBaseTool {
1114
1131
  event.preventDefault();
1115
1132
  }
1116
1133
  if (event.pointerType === 'mouse') {
1117
- if (this._store.state.isDrawing) {
1118
- this._store.state.isDrawing = false;
1119
- if (this._store.state.currentPath) {
1120
- this._store.state.currentPath.zIndex = this._store.currentZIndex;
1121
- this._store.history.executeCommand(new AddObjectCommand(this._store, this, this._store.state.currentPath));
1134
+ if (this._core.store.state.isDrawing) {
1135
+ this._core.store.setState('isDrawing', false);
1136
+ if (this._core.store.state.currentPath) {
1137
+ const currentPath = this._core.store.state.currentPath;
1138
+ currentPath.zIndex = this._core.store.currentZIndex;
1139
+ this._core.store.setState('currentPath', currentPath);
1140
+ this._core.history.executeCommand(new AddObjectCommand(this._core, this, this._core.store.state.currentPath));
1122
1141
  }
1123
- this._store.state.currentPath = undefined;
1142
+ this._core.store.setState('currentPath', undefined);
1124
1143
  }
1125
1144
  }
1126
1145
  if (event.pointerType === 'touch') {
1127
- if (this._store.state.isDrawing) {
1128
- this._store.state.isDrawing = false;
1129
- if (this._store.state.currentPath) {
1130
- this._store.state.currentPath.zIndex = this._store.currentZIndex;
1131
- this._store.history.executeCommand(new AddObjectCommand(this._store, this, this._store.state.currentPath));
1146
+ if (this._core.store.state.isDrawing) {
1147
+ this._core.store.setState('isDrawing', false);
1148
+ if (this._core.store.state.currentPath) {
1149
+ const currentPath = this._core.store.state.currentPath;
1150
+ currentPath.zIndex = this._core.store.currentZIndex;
1151
+ this._core.store.setState('currentPath', currentPath);
1152
+ this._core.history.executeCommand(new AddObjectCommand(this._core, this, currentPath));
1132
1153
  }
1133
- this._store.state.currentPath = undefined;
1134
- this._store.rerender();
1154
+ this._core.store.setState('currentPath', undefined);
1155
+ this._core.rerender();
1135
1156
  }
1136
1157
  }
1137
1158
  }
1138
1159
  }
1139
1160
 
1140
1161
  export { AddObjectCommand as A, KritzelText as K, UpdateObjectCommand as U, KritzelPath as a, KritzelBrushTool as b, KritzelTextTool as c, KritzelKeyboardHelper as d, KritzelBaseObject as e, KritzelBaseCommand as f, KritzelBaseTool as g, KritzelEventHelper as h, KritzelToolRegistry as i };
1141
- //# sourceMappingURL=p-DHSEK3rF.js.map
1162
+ //# sourceMappingURL=p-CNTK3JOp.js.map
1142
1163
 
1143
- //# sourceMappingURL=p-DHSEK3rF.js.map
1164
+ //# sourceMappingURL=p-CNTK3JOp.js.map