kritzel-stencil 0.0.138 → 0.0.140

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 (167) hide show
  1. package/dist/cjs/{index-CYkadfjX.js → index-Clh2g9JM.js} +186 -107
  2. package/dist/cjs/index-Clh2g9JM.js.map +1 -0
  3. package/dist/cjs/index.cjs.js +1 -1
  4. package/dist/cjs/kritzel-color_22.cjs.entry.js +186 -148
  5. package/dist/cjs/loader.cjs.js +1 -1
  6. package/dist/cjs/stencil.cjs.js +1 -1
  7. package/dist/collection/classes/commands/add-selection-group.command.js +4 -4
  8. package/dist/collection/classes/commands/add-selection-group.command.js.map +1 -1
  9. package/dist/collection/classes/commands/move-selection-group.command.js +2 -2
  10. package/dist/collection/classes/commands/move-selection-group.command.js.map +1 -1
  11. package/dist/collection/classes/commands/remove-selection-group.command.js +2 -2
  12. package/dist/collection/classes/commands/remove-selection-group.command.js.map +1 -1
  13. package/dist/collection/classes/commands/resize-selection-group.command.js +2 -2
  14. package/dist/collection/classes/commands/resize-selection-group.command.js.map +1 -1
  15. package/dist/collection/classes/commands/rotate-selection-group.command.js +2 -2
  16. package/dist/collection/classes/commands/rotate-selection-group.command.js.map +1 -1
  17. package/dist/collection/classes/commands/update-viewport.command.js +6 -6
  18. package/dist/collection/classes/commands/update-viewport.command.js.map +1 -1
  19. package/dist/collection/classes/core/core.class.js +43 -27
  20. package/dist/collection/classes/core/core.class.js.map +1 -1
  21. package/dist/collection/classes/core/history.class.js +3 -3
  22. package/dist/collection/classes/core/history.class.js.map +1 -1
  23. package/dist/collection/classes/core/store.class.js +4 -1
  24. package/dist/collection/classes/core/store.class.js.map +1 -1
  25. package/dist/collection/classes/core/viewport.class.js +63 -44
  26. package/dist/collection/classes/core/viewport.class.js.map +1 -1
  27. package/dist/collection/classes/handlers/context-menu.handler.js +16 -8
  28. package/dist/collection/classes/handlers/context-menu.handler.js.map +1 -1
  29. package/dist/collection/classes/handlers/key.handler.js +2 -2
  30. package/dist/collection/classes/handlers/key.handler.js.map +1 -1
  31. package/dist/collection/classes/handlers/move.handler.js +30 -6
  32. package/dist/collection/classes/handlers/move.handler.js.map +1 -1
  33. package/dist/collection/classes/handlers/resize.handler.js +6 -4
  34. package/dist/collection/classes/handlers/resize.handler.js.map +1 -1
  35. package/dist/collection/classes/handlers/rotation.handler.js +6 -4
  36. package/dist/collection/classes/handlers/rotation.handler.js.map +1 -1
  37. package/dist/collection/classes/handlers/selection.handler.js +72 -32
  38. package/dist/collection/classes/handlers/selection.handler.js.map +1 -1
  39. package/dist/collection/classes/objects/base-object.class.js +9 -3
  40. package/dist/collection/classes/objects/base-object.class.js.map +1 -1
  41. package/dist/collection/classes/objects/selection-group.class.js +3 -1
  42. package/dist/collection/classes/objects/selection-group.class.js.map +1 -1
  43. package/dist/collection/classes/objects/text.class.js +9 -7
  44. package/dist/collection/classes/objects/text.class.js.map +1 -1
  45. package/dist/collection/classes/tools/brush-tool.class.js +16 -16
  46. package/dist/collection/classes/tools/brush-tool.class.js.map +1 -1
  47. package/dist/collection/classes/tools/eraser-tool.class.js +4 -4
  48. package/dist/collection/classes/tools/eraser-tool.class.js.map +1 -1
  49. package/dist/collection/classes/tools/selection-tool.class.js +8 -8
  50. package/dist/collection/classes/tools/selection-tool.class.js.map +1 -1
  51. package/dist/collection/classes/tools/text-tool.class.js +10 -8
  52. package/dist/collection/classes/tools/text-tool.class.js.map +1 -1
  53. package/dist/collection/components/core/kritzel-cursor-trail/kritzel-cursor-trail.js +1 -1
  54. package/dist/collection/components/core/kritzel-editor/kritzel-editor.js +2 -15
  55. package/dist/collection/components/core/kritzel-editor/kritzel-editor.js.map +1 -1
  56. package/dist/collection/components/core/kritzel-engine/kritzel-engine.js +27 -16
  57. package/dist/collection/components/core/kritzel-engine/kritzel-engine.js.map +1 -1
  58. package/dist/collection/components/shared/kritzel-color/kritzel-color.js +2 -2
  59. package/dist/collection/components/shared/kritzel-color-palette/kritzel-color-palette.js +1 -1
  60. package/dist/collection/components/shared/kritzel-font/kritzel-font.js +1 -1
  61. package/dist/collection/components/shared/kritzel-font-family/kritzel-font-family.js +1 -1
  62. package/dist/collection/components/shared/kritzel-font-size/kritzel-font-size.js +1 -1
  63. package/dist/collection/components/shared/kritzel-menu/kritzel-menu.js +1 -1
  64. package/dist/collection/components/shared/kritzel-menu-item/kritzel-menu-item.js +2 -2
  65. package/dist/collection/components/shared/kritzel-portal/kritzel-portal.js +1 -1
  66. package/dist/collection/components/shared/kritzel-split-button/kritzel-split-button.js +1 -1
  67. package/dist/collection/components/shared/kritzel-stroke-size/kritzel-stroke-size.js +1 -1
  68. package/dist/collection/components/shared/kritzel-tooltip/kritzel-tooltip.js +4 -4
  69. package/dist/collection/components/ui/kritzel-context-menu/kritzel-context-menu.js +1 -1
  70. package/dist/collection/components/ui/kritzel-control-brush-config/kritzel-control-brush-config.js +2 -2
  71. package/dist/collection/components/ui/kritzel-control-text-config/kritzel-control-text-config.js +2 -2
  72. package/dist/collection/components/ui/kritzel-controls/kritzel-controls.js +3 -3
  73. package/dist/collection/components/ui/kritzel-utility-panel/kritzel-utility-panel.js +1 -1
  74. package/dist/collection/components/ui/kritzel-workspace-manager/kritzel-workspace-manager.js +1 -1
  75. package/dist/collection/components/ui/kritzel-workspace-manager/kritzel-workspace-manager.js.map +1 -1
  76. package/dist/collection/configs/default-engine-state.js +1 -0
  77. package/dist/collection/configs/default-engine-state.js.map +1 -1
  78. package/dist/collection/interfaces/engine-state.interface.js.map +1 -1
  79. package/dist/components/index.js +2 -2
  80. package/dist/components/kritzel-color-palette.js +1 -1
  81. package/dist/components/kritzel-color.js +1 -1
  82. package/dist/components/kritzel-context-menu.js +1 -1
  83. package/dist/components/kritzel-control-brush-config.js +1 -1
  84. package/dist/components/kritzel-control-text-config.js +1 -1
  85. package/dist/components/kritzel-controls.js +1 -1
  86. package/dist/components/kritzel-cursor-trail.js +1 -1
  87. package/dist/components/kritzel-editor.js +20 -33
  88. package/dist/components/kritzel-editor.js.map +1 -1
  89. package/dist/components/kritzel-engine.js +1 -1
  90. package/dist/components/kritzel-font-family.js +1 -1
  91. package/dist/components/kritzel-font-size.js +1 -1
  92. package/dist/components/kritzel-font.js +1 -1
  93. package/dist/components/kritzel-menu-item.js +1 -1
  94. package/dist/components/kritzel-menu.js +1 -1
  95. package/dist/components/kritzel-portal.js +1 -1
  96. package/dist/components/kritzel-split-button.js +1 -1
  97. package/dist/components/kritzel-stroke-size.js +1 -1
  98. package/dist/components/kritzel-tooltip.js +1 -1
  99. package/dist/components/kritzel-utility-panel.js +1 -1
  100. package/dist/components/kritzel-workspace-manager.js +1 -1
  101. package/dist/components/{p-DjU7p3od.js → p-BFLXutiB.js} +9 -9
  102. package/dist/components/{p-DjU7p3od.js.map → p-BFLXutiB.js.map} +1 -1
  103. package/dist/components/{p-B7kZ1_RH.js → p-BJZudenH.js} +4 -4
  104. package/dist/components/{p-B7kZ1_RH.js.map → p-BJZudenH.js.map} +1 -1
  105. package/dist/components/{p-B7w19kIk.js → p-BLc8TzcU.js} +7 -7
  106. package/dist/components/{p-B7w19kIk.js.map → p-BLc8TzcU.js.map} +1 -1
  107. package/dist/components/{p-BlPlPpUy.js → p-BQJhnpY3.js} +3 -3
  108. package/dist/components/{p-BlPlPpUy.js.map → p-BQJhnpY3.js.map} +1 -1
  109. package/dist/components/{p-D554MPA9.js → p-BV5iL9W6.js} +305 -184
  110. package/dist/components/p-BV5iL9W6.js.map +1 -0
  111. package/dist/components/{p-DOPuq6gn.js → p-C-ozL_Es.js} +3 -3
  112. package/dist/components/{p-DOPuq6gn.js.map → p-C-ozL_Es.js.map} +1 -1
  113. package/dist/components/{p-Di5CEwzQ.js → p-C5sTCwe3.js} +45 -36
  114. package/dist/components/p-C5sTCwe3.js.map +1 -0
  115. package/dist/components/{p-BM9IjvnD.js → p-C7UWRUAy.js} +3 -3
  116. package/dist/components/{p-BM9IjvnD.js.map → p-C7UWRUAy.js.map} +1 -1
  117. package/dist/components/{p-sreNwi0N.js → p-CE_sOMS2.js} +4 -4
  118. package/dist/components/{p-sreNwi0N.js.map → p-CE_sOMS2.js.map} +1 -1
  119. package/dist/components/{p-BPsQrpzN.js → p-D2eJXNMx.js} +6 -6
  120. package/dist/components/{p-BPsQrpzN.js.map → p-D2eJXNMx.js.map} +1 -1
  121. package/dist/components/{p-DCx3703u.js → p-D6FeQRzi.js} +3 -3
  122. package/dist/components/{p-DCx3703u.js.map → p-D6FeQRzi.js.map} +1 -1
  123. package/dist/components/{p-Ddlbt3Bj.js → p-DbmQ5DrU.js} +3 -3
  124. package/dist/components/{p-Ddlbt3Bj.js.map → p-DbmQ5DrU.js.map} +1 -1
  125. package/dist/components/{p-BehchtaT.js → p-Dh61W3GT.js} +6 -6
  126. package/dist/components/{p-BehchtaT.js.map → p-Dh61W3GT.js.map} +1 -1
  127. package/dist/components/{p-CsyM5q2M.js → p-IgPm36bH.js} +4 -4
  128. package/dist/components/{p-CsyM5q2M.js.map → p-IgPm36bH.js.map} +1 -1
  129. package/dist/components/{p-BgpsMYcw.js → p-JYqCBcMd.js} +6 -6
  130. package/dist/components/p-JYqCBcMd.js.map +1 -0
  131. package/dist/components/{p-PvCKCYuw.js → p-SKH0G2nM.js} +16 -16
  132. package/dist/components/{p-PvCKCYuw.js.map → p-SKH0G2nM.js.map} +1 -1
  133. package/dist/components/{p-Db3kxVe2.js → p-bC64Ng59.js} +3 -3
  134. package/dist/components/{p-Db3kxVe2.js.map → p-bC64Ng59.js.map} +1 -1
  135. package/dist/components/{p-BorT6g39.js → p-sHDCqDbD.js} +5 -5
  136. package/dist/components/{p-BorT6g39.js.map → p-sHDCqDbD.js.map} +1 -1
  137. package/dist/components/{p-0iJh9Z6m.js → p-vNnVlsJt.js} +4 -4
  138. package/dist/components/{p-0iJh9Z6m.js.map → p-vNnVlsJt.js.map} +1 -1
  139. package/dist/esm/{index-IhpPa9g4.js → index-BAbkwyRx.js} +187 -108
  140. package/dist/esm/index-BAbkwyRx.js.map +1 -0
  141. package/dist/esm/index.js +1 -1
  142. package/dist/esm/kritzel-color_22.entry.js +186 -148
  143. package/dist/esm/loader.js +1 -1
  144. package/dist/esm/stencil.js +1 -1
  145. package/dist/stencil/index.esm.js +1 -1
  146. package/dist/stencil/p-BAbkwyRx.js +2 -0
  147. package/dist/stencil/p-BAbkwyRx.js.map +1 -0
  148. package/dist/stencil/p-fe465059.entry.js +2 -0
  149. package/dist/stencil/p-fe465059.entry.js.map +1 -0
  150. package/dist/stencil/stencil.esm.js +1 -1
  151. package/dist/types/classes/core/store.class.d.ts +2 -1
  152. package/dist/types/classes/core/viewport.class.d.ts +3 -0
  153. package/dist/types/classes/handlers/move.handler.d.ts +2 -0
  154. package/dist/types/classes/handlers/selection.handler.d.ts +3 -0
  155. package/dist/types/components/core/kritzel-engine/kritzel-engine.d.ts +1 -0
  156. package/dist/types/components.d.ts +2 -2
  157. package/dist/types/interfaces/engine-state.interface.d.ts +1 -0
  158. package/package.json +1 -1
  159. package/dist/cjs/index-CYkadfjX.js.map +0 -1
  160. package/dist/components/p-BgpsMYcw.js.map +0 -1
  161. package/dist/components/p-D554MPA9.js.map +0 -1
  162. package/dist/components/p-Di5CEwzQ.js.map +0 -1
  163. package/dist/esm/index-IhpPa9g4.js.map +0 -1
  164. package/dist/stencil/p-32ac435d.entry.js +0 -2
  165. package/dist/stencil/p-32ac435d.entry.js.map +0 -1
  166. package/dist/stencil/p-IhpPa9g4.js +0 -2
  167. package/dist/stencil/p-IhpPa9g4.js.map +0 -1
@@ -1,2 +1,2 @@
1
- import{p as e,b as t}from"./p-oCOlsFCN.js";export{s as setNonce}from"./p-oCOlsFCN.js";import{g as o}from"./p-DQuL1Twl.js";var n=()=>{const t=import.meta.url;const o={};if(t!==""){o.resourcesUrl=new URL(".",t).href}return e(o)};n().then((async e=>{await o();return t([["p-32ac435d",[[256,"kritzel-editor",{scaleMax:[2,"scale-max"],scaleMin:[2,"scale-min"],controls:[16],globalContextMenuItems:[16,"global-context-menu-items"],objectContextMenuItems:[16,"object-context-menu-items"],customSvgIcons:[16,"custom-svg-icons"],isControlsVisible:[4,"is-controls-visible"],isUtilityPanelVisible:[4,"is-utility-panel-visible"],isEngineReady:[32],isControlsReady:[32],isWorkspaceManagerReady:[32],workspaces:[32],activeWorkspace:[32],isVirtualKeyboardOpen:[32],getObjectById:[64],addObject:[64],updateObject:[64],removeObject:[64],getSelectedObjects:[64],selectObjects:[64],selectAllObjectsInViewport:[64],clearSelection:[64],centerObjectInViewport:[64],createWorkspace:[64],updateWorkspace:[64],deleteWorkspace:[64],getWorkspaces:[64],getActiveWorkspace:[64]},[[0,"dblclick","handleTouchStart"]],{isEngineReady:["onIsEngineReady"],isControlsReady:["onIsControlsReady"]}],[257,"kritzel-controls",{controls:[16],activeControl:[1040,"active-control"],isUtilityPanelVisible:[4,"is-utility-panel-visible"],firstConfig:[32],isTooltipVisible:[32],isTouchDevice:[32],closeTooltip:[64]},[[4,"click","handleDocumentClick"],[8,"keydown","handleKeyDown"],[4,"activeToolChange","handleActiveToolChange"]]],[257,"kritzel-workspace-manager",{activeWorkspace:[16,"active-workspace"],workspaces:[16],childMenuAnchor:[32],openChildMenuItem:[32],newWorkspace:[32],editingItemId:[32]},[[8,"wheel","handleWheel"]]],[257,"kritzel-engine",{workspace:[16],activeTool:[16,"active-tool"],globalContextMenuItems:[16,"global-context-menu-items"],objectContextMenuItems:[16,"object-context-menu-items"],scaleMax:[1026,"scale-max"],scaleMin:[1026,"scale-min"],forceUpdate:[32],registerTool:[64],changeActiveTool:[64],disable:[64],enable:[64],delete:[64],copy:[64],paste:[64],bringForward:[64],sendBackward:[64],bringToFront:[64],sendToBack:[64],undo:[64],redo:[64],hideContextMenu:[64],getObjectById:[64],addObject:[64],updateObject:[64],removeObject:[64],getSelectedObjects:[64],selectObjects:[64],selectAllObjectsInViewport:[64],clearSelection:[64],centerObjectInViewport:[64],getCopiedObjects:[64],createWorkspace:[64],updateWorkspace:[64],deleteWorkspace:[64],getWorkspaces:[64],getActiveWorkspace:[64]},[[0,"wheel","handleWheel"],[0,"pointerdown","handlePointerDown"],[0,"pointermove","handlePointerMove"],[0,"pointerup","handlePointerUp"],[0,"pointercancel","handlePointerCancel"],[0,"longpress","handleLongPress"],[0,"contextmenu","handleContextMenu"],[9,"resize","handleResize"],[8,"keydown","handleKeyDown"],[8,"keyup","handleKeyUp"]],{workspace:["onWorkspaceChange"],scaleMax:["validateScaleMax"],scaleMin:["validateScaleMin"]}],[257,"kritzel-control-text-config",{tool:[1040],isExpanded:[1028,"is-expanded"]}],[257,"kritzel-control-brush-config",{tool:[1040],isExpanded:[1028,"is-expanded"],palette:[32]},null,{tool:["handleToolChange"]}],[257,"kritzel-split-button",{buttonIcon:[1,"button-icon"],dropdownIcon:[1,"dropdown-icon"],items:[16],mainButtonDisabled:[4,"main-button-disabled"],menuButtonDisabled:[4,"menu-button-disabled"],isMenuOpen:[32],isTouchDevice:[32],anchorElement:[32],menuScrollTop:[32],open:[64],focusMenu:[64]}],[257,"kritzel-context-menu",{items:[16],objects:[16],processedItems:[32]},[[9,"pointerdown","handleOutsideClick"]],{items:["onItemsChanged"]}],[257,"kritzel-utility-panel"],[257,"kritzel-cursor-trail",{core:[16],cursorTrailPoints:[32],isLeftButtonDown:[32]},[[9,"pointerdown","handleMouseDown"],[9,"pointermove","handlePointerMove"],[9,"pointerup","handlePointerUp"]]],[257,"kritzel-tooltip",{isVisible:[4,"is-visible"],anchorElement:[16,"anchor-element"],arrowSize:[2,"arrow-size"],offsetY:[2,"offset-y"],positionX:[32],arrowOffset:[32],isMobileView:[32],focusContent:[64]},[[4,"click","handleOutsideClick"],[9,"resize","handleWindowResize"]]],[257,"kritzel-font-family",{fontOptions:[16,"font-options"],selectedFontFamily:[1025,"selected-font-family"]}],[257,"kritzel-font-size",{sizes:[16],selectedSize:[1026,"selected-size"],fontFamily:[1,"font-family"]}],[257,"kritzel-stroke-size",{sizes:[16],selectedSize:[1026,"selected-size"]}],[257,"kritzel-color-palette",{colors:[16],selectedColor:[1025,"selected-color"],isExpanded:[4,"is-expanded"],isOpaque:[4,"is-opaque"]}],[257,"kritzel-font",{fontFamily:[1,"font-family"],size:[2],color:[1]}],[257,"kritzel-menu",{items:[16],parent:[16],selectedIndex:[32],setScrollTop:[64],setFocus:[64]}],[257,"kritzel-menu-item",{item:[16],parent:[16],isDirty:[32]},null,{item:["onItemChange"]}],[257,"kritzel-dropdown",{options:[16],value:[1],width:[1],selectStyles:[8,"select-styles"],internalValue:[32],hasSuffixContent:[32],hasPrefixContent:[32]},null,{options:["optionsChanged"],value:["externalValueChanged"]}],[257,"kritzel-portal",{anchor:[16],offsetX:[2,"offset-x"],offsetY:[2,"offset-y"],autoFocus:[4,"auto-focus"]},[[8,"click","handleOutsideClick"],[8,"keydown","handleKeyDown"],[11,"resize","handleResize"],[11,"scroll","handleWindowScroll"]],{anchor:["anchorChanged"]}],[257,"kritzel-color",{value:[1],size:[2]}],[257,"kritzel-icon",{name:[1],label:[1],size:[2]}]]],["p-25d1e040",[[257,"kritzel-brush-style",{type:[1],brushOptions:[16,"brush-options"]}]]]],e)}));
1
+ import{p as e,b as t}from"./p-oCOlsFCN.js";export{s as setNonce}from"./p-oCOlsFCN.js";import{g as o}from"./p-DQuL1Twl.js";var n=()=>{const t=import.meta.url;const o={};if(t!==""){o.resourcesUrl=new URL(".",t).href}return e(o)};n().then((async e=>{await o();return t([["p-fe465059",[[256,"kritzel-editor",{scaleMax:[2,"scale-max"],scaleMin:[2,"scale-min"],controls:[16],globalContextMenuItems:[16,"global-context-menu-items"],objectContextMenuItems:[16,"object-context-menu-items"],customSvgIcons:[16,"custom-svg-icons"],isControlsVisible:[4,"is-controls-visible"],isUtilityPanelVisible:[4,"is-utility-panel-visible"],isEngineReady:[32],isControlsReady:[32],isWorkspaceManagerReady:[32],workspaces:[32],activeWorkspace:[32],isVirtualKeyboardOpen:[32],getObjectById:[64],addObject:[64],updateObject:[64],removeObject:[64],getSelectedObjects:[64],selectObjects:[64],selectAllObjectsInViewport:[64],clearSelection:[64],centerObjectInViewport:[64],createWorkspace:[64],updateWorkspace:[64],deleteWorkspace:[64],getWorkspaces:[64],getActiveWorkspace:[64]},[[0,"dblclick","handleTouchStart"]],{isEngineReady:["onIsEngineReady"],isControlsReady:["onIsControlsReady"]}],[257,"kritzel-controls",{controls:[16],activeControl:[1040,"active-control"],isUtilityPanelVisible:[4,"is-utility-panel-visible"],firstConfig:[32],isTooltipVisible:[32],isTouchDevice:[32],closeTooltip:[64]},[[4,"click","handleDocumentClick"],[8,"keydown","handleKeyDown"],[4,"activeToolChange","handleActiveToolChange"]]],[257,"kritzel-workspace-manager",{activeWorkspace:[1040,"active-workspace"],workspaces:[16],childMenuAnchor:[32],openChildMenuItem:[32],newWorkspace:[32],editingItemId:[32]},[[8,"wheel","handleWheel"]]],[257,"kritzel-engine",{workspace:[16],activeTool:[16,"active-tool"],globalContextMenuItems:[16,"global-context-menu-items"],objectContextMenuItems:[16,"object-context-menu-items"],scaleMax:[1026,"scale-max"],scaleMin:[1026,"scale-min"],forceUpdate:[32],registerTool:[64],changeActiveTool:[64],disable:[64],enable:[64],delete:[64],copy:[64],paste:[64],bringForward:[64],sendBackward:[64],bringToFront:[64],sendToBack:[64],undo:[64],redo:[64],hideContextMenu:[64],getObjectById:[64],addObject:[64],updateObject:[64],removeObject:[64],getSelectedObjects:[64],selectObjects:[64],selectAllObjectsInViewport:[64],clearSelection:[64],centerObjectInViewport:[64],getCopiedObjects:[64],createWorkspace:[64],updateWorkspace:[64],deleteWorkspace:[64],getWorkspaces:[64],getActiveWorkspace:[64]},[[0,"wheel","handleWheel"],[0,"pointerdown","handlePointerDown"],[0,"pointermove","handlePointerMove"],[0,"pointerup","handlePointerUp"],[0,"pointercancel","handlePointerCancel"],[0,"longpress","handleLongPress"],[0,"contextmenu","handleContextMenu"],[9,"resize","handleResize"],[8,"keydown","handleKeyDown"],[8,"keyup","handleKeyUp"],[4,"dblclick","preventDoubleTapZoomOnTouchDevices"]],{workspace:["onWorkspaceChange"],scaleMax:["validateScaleMax"],scaleMin:["validateScaleMin"]}],[257,"kritzel-control-text-config",{tool:[1040],isExpanded:[1028,"is-expanded"]}],[257,"kritzel-control-brush-config",{tool:[1040],isExpanded:[1028,"is-expanded"],palette:[32]},null,{tool:["handleToolChange"]}],[257,"kritzel-split-button",{buttonIcon:[1,"button-icon"],dropdownIcon:[1,"dropdown-icon"],items:[16],mainButtonDisabled:[4,"main-button-disabled"],menuButtonDisabled:[4,"menu-button-disabled"],isMenuOpen:[32],isTouchDevice:[32],anchorElement:[32],menuScrollTop:[32],open:[64],focusMenu:[64]}],[257,"kritzel-context-menu",{items:[16],objects:[16],processedItems:[32]},[[9,"pointerdown","handleOutsideClick"]],{items:["onItemsChanged"]}],[257,"kritzel-utility-panel"],[257,"kritzel-cursor-trail",{core:[16],cursorTrailPoints:[32],isLeftButtonDown:[32]},[[9,"pointerdown","handleMouseDown"],[9,"pointermove","handlePointerMove"],[9,"pointerup","handlePointerUp"]]],[257,"kritzel-tooltip",{isVisible:[4,"is-visible"],anchorElement:[16,"anchor-element"],arrowSize:[2,"arrow-size"],offsetY:[2,"offset-y"],positionX:[32],arrowOffset:[32],isMobileView:[32],focusContent:[64]},[[4,"click","handleOutsideClick"],[9,"resize","handleWindowResize"]]],[257,"kritzel-font-family",{fontOptions:[16,"font-options"],selectedFontFamily:[1025,"selected-font-family"]}],[257,"kritzel-font-size",{sizes:[16],selectedSize:[1026,"selected-size"],fontFamily:[1,"font-family"]}],[257,"kritzel-stroke-size",{sizes:[16],selectedSize:[1026,"selected-size"]}],[257,"kritzel-color-palette",{colors:[16],selectedColor:[1025,"selected-color"],isExpanded:[4,"is-expanded"],isOpaque:[4,"is-opaque"]}],[257,"kritzel-font",{fontFamily:[1,"font-family"],size:[2],color:[1]}],[257,"kritzel-menu",{items:[16],parent:[16],selectedIndex:[32],setScrollTop:[64],setFocus:[64]}],[257,"kritzel-menu-item",{item:[16],parent:[16],isDirty:[32]},null,{item:["onItemChange"]}],[257,"kritzel-dropdown",{options:[16],value:[1],width:[1],selectStyles:[8,"select-styles"],internalValue:[32],hasSuffixContent:[32],hasPrefixContent:[32]},null,{options:["optionsChanged"],value:["externalValueChanged"]}],[257,"kritzel-portal",{anchor:[16],offsetX:[2,"offset-x"],offsetY:[2,"offset-y"],autoFocus:[4,"auto-focus"]},[[8,"click","handleOutsideClick"],[8,"keydown","handleKeyDown"],[11,"resize","handleResize"],[11,"scroll","handleWindowScroll"]],{anchor:["anchorChanged"]}],[257,"kritzel-color",{value:[1],size:[2]}],[257,"kritzel-icon",{name:[1],label:[1],size:[2]}]]],["p-25d1e040",[[257,"kritzel-brush-style",{type:[1],brushOptions:[16,"brush-options"]}]]]],e)}));
2
2
  //# sourceMappingURL=stencil.esm.js.map
@@ -3,9 +3,10 @@ import { StateChangeListener, StatePropertyKey } from '../../types/state.types';
3
3
  export declare class KritzelStore {
4
4
  private readonly _state;
5
5
  private readonly _listeners;
6
- get state(): Readonly<KritzelEngineState>;
6
+ get state(): KritzelEngineState;
7
7
  get currentZIndex(): number;
8
8
  get allObjects(): import("../..").KritzelBaseObject<Element>[];
9
+ get allNonSelectionObjects(): import("../..").KritzelBaseObject<Element>[];
9
10
  get selectedObjects(): import("../..").KritzelBaseObject<Element>[];
10
11
  get offsetX(): number;
11
12
  get offsetY(): number;
@@ -1,3 +1,4 @@
1
+ import { KritzelBaseObject } from '../..';
1
2
  import { KritzelCore } from './core.class';
2
3
  export declare class KritzelViewport {
3
4
  private readonly _core;
@@ -10,6 +11,8 @@ export declare class KritzelViewport {
10
11
  handlePointerMove(event: PointerEvent): void;
11
12
  handlePointerUp(event: PointerEvent): void;
12
13
  handleWheel(event: WheelEvent): void;
14
+ centerInViewport(object: KritzelBaseObject): void;
15
+ centerFitInViewport(object: KritzelBaseObject): void;
13
16
  private handleZoom;
14
17
  private handlePan;
15
18
  }
@@ -8,8 +8,10 @@ export declare class KritzelMoveHandler extends KritzelBaseHandler {
8
8
  endX: number;
9
9
  endY: number;
10
10
  hasMoved: boolean;
11
+ private trackedPointerId;
11
12
  constructor(core: KritzelCore);
12
13
  private reset;
14
+ cancelPendingDrag(): void;
13
15
  handlePointerDown(event: PointerEvent): void;
14
16
  handlePointerMove(event: PointerEvent): void;
15
17
  handlePointerUp(event: PointerEvent): void;
@@ -18,6 +18,9 @@ export declare class KritzelSelectionHandler extends KritzelBaseHandler {
18
18
  private updateMouseSelection;
19
19
  private updateTouchSelection;
20
20
  private updateSelectedObjects;
21
+ private handleSelectionClick;
22
+ private getTopmostHitObject;
23
+ private clearSelectionPreview;
21
24
  private addObjectToSelectionGroup;
22
25
  private addSelectedObjectsToSelectionGroup;
23
26
  }
@@ -36,6 +36,7 @@ export declare class KritzelEngine {
36
36
  handleResize(): void;
37
37
  handleKeyDown(ev: any): void;
38
38
  handleKeyUp(ev: any): void;
39
+ preventDoubleTapZoomOnTouchDevices(ev: MouseEvent): void;
39
40
  registerTool(toolName: string, toolClass: any, toolConfig?: KritzelTextToolConfig | KritzelBrushToolConfig): Promise<KritzelBaseTool>;
40
41
  changeActiveTool(tool: KritzelBaseTool): Promise<void>;
41
42
  disable(): Promise<void>;
@@ -148,7 +148,7 @@ export namespace Components {
148
148
  */
149
149
  "isUtilityPanelVisible": boolean;
150
150
  /**
151
- * @default [ { label: 'Edit', icon: 'pen', visible: (_, objects) => objects.length === 1 && objects[0].isEditable, action: (_, objects) => { if (objects.length === 1) { const object = objects[0]; if (object.isEditable) { object.edit(); } } }, }, { label: 'Copy', icon: 'copy', action: () => this.engineRef.copy() }, { label: 'Paste', icon: 'paste', disabled: async () => (await this.engineRef.getCopiedObjects()).length === 0, action: (menu, _) => this.engineRef.paste(menu.x, menu.y), }, { label: 'Delete', icon: 'delete', action: () => this.engineRef.delete() }, { label: 'Bring to Front', icon: 'bring-to-front', action: () => this.engineRef.bringToFront() }, { label: 'Send to Back', icon: 'send-to-back', action: () => this.engineRef.sendToBack() }, ]
151
+ * @default [ { label: 'Copy', icon: 'copy', action: () => this.engineRef.copy() }, { label: 'Paste', icon: 'paste', disabled: async () => (await this.engineRef.getCopiedObjects()).length === 0, action: (menu, _) => this.engineRef.paste(menu.x, menu.y), }, { label: 'Delete', icon: 'delete', action: () => this.engineRef.delete() }, { label: 'Bring to Front', icon: 'bring-to-front', action: () => this.engineRef.bringToFront() }, { label: 'Send to Back', icon: 'send-to-back', action: () => this.engineRef.sendToBack() }, ]
152
152
  */
153
153
  "objectContextMenuItems": ContextMenuItem[];
154
154
  "removeObject": <T extends KritzelBaseObject>(object: T) => Promise<T | null>;
@@ -922,7 +922,7 @@ declare namespace LocalJSX {
922
922
  */
923
923
  "isUtilityPanelVisible"?: boolean;
924
924
  /**
925
- * @default [ { label: 'Edit', icon: 'pen', visible: (_, objects) => objects.length === 1 && objects[0].isEditable, action: (_, objects) => { if (objects.length === 1) { const object = objects[0]; if (object.isEditable) { object.edit(); } } }, }, { label: 'Copy', icon: 'copy', action: () => this.engineRef.copy() }, { label: 'Paste', icon: 'paste', disabled: async () => (await this.engineRef.getCopiedObjects()).length === 0, action: (menu, _) => this.engineRef.paste(menu.x, menu.y), }, { label: 'Delete', icon: 'delete', action: () => this.engineRef.delete() }, { label: 'Bring to Front', icon: 'bring-to-front', action: () => this.engineRef.bringToFront() }, { label: 'Send to Back', icon: 'send-to-back', action: () => this.engineRef.sendToBack() }, ]
925
+ * @default [ { label: 'Copy', icon: 'copy', action: () => this.engineRef.copy() }, { label: 'Paste', icon: 'paste', disabled: async () => (await this.engineRef.getCopiedObjects()).length === 0, action: (menu, _) => this.engineRef.paste(menu.x, menu.y), }, { label: 'Delete', icon: 'delete', action: () => this.engineRef.delete() }, { label: 'Bring to Front', icon: 'bring-to-front', action: () => this.engineRef.bringToFront() }, { label: 'Send to Back', icon: 'send-to-back', action: () => this.engineRef.sendToBack() }, ]
926
926
  */
927
927
  "objectContextMenuItems"?: ContextMenuItem[];
928
928
  "onIsReady"?: (event: KritzelEditorCustomEvent<HTMLElement>) => void;
@@ -20,6 +20,7 @@ export interface KritzelEngineState {
20
20
  selectionGroup?: KritzelSelectionGroup;
21
21
  resizeHandleType: KritzelHandleType;
22
22
  hasViewportChanged: boolean;
23
+ hasObjectsChanged: boolean;
23
24
  isReady: boolean;
24
25
  isEnabled: boolean;
25
26
  isScaling: boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kritzel-stencil",
3
- "version": "0.0.138",
3
+ "version": "0.0.140",
4
4
  "description": "Stencil Component Starter",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.js",