@snowcone-app/canvas 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (370) hide show
  1. package/LICENSE.txt +70 -0
  2. package/README.md +357 -0
  3. package/dist/CanvasStateV1-D5GzvmnY.cjs +65 -0
  4. package/dist/CanvasStateV1-D5GzvmnY.cjs.map +1 -0
  5. package/dist/CanvasStateV1-ejb4d_LM.js +3692 -0
  6. package/dist/CanvasStateV1-ejb4d_LM.js.map +1 -0
  7. package/dist/ElementFactory-B7UOaJSD.cjs +23865 -0
  8. package/dist/ElementFactory-B7UOaJSD.cjs.map +1 -0
  9. package/dist/ElementFactory-uJTXU-nP.js +29615 -0
  10. package/dist/ElementFactory-uJTXU-nP.js.map +1 -0
  11. package/dist/HybridHistoryManager-BV6XV0nD.js +8048 -0
  12. package/dist/HybridHistoryManager-BV6XV0nD.js.map +1 -0
  13. package/dist/HybridHistoryManager-BXD93pp8.cjs +8 -0
  14. package/dist/HybridHistoryManager-BXD93pp8.cjs.map +1 -0
  15. package/dist/ImportManager-BYwuK6n4.cjs +2 -0
  16. package/dist/ImportManager-BYwuK6n4.cjs.map +1 -0
  17. package/dist/ImportManager-CxiaRg1N.js +222 -0
  18. package/dist/ImportManager-CxiaRg1N.js.map +1 -0
  19. package/dist/ThemeContext-4mJ_y0Me.cjs +2 -0
  20. package/dist/ThemeContext-4mJ_y0Me.cjs.map +1 -0
  21. package/dist/ThemeContext-H0Z-MqqR.js +1077 -0
  22. package/dist/ThemeContext-H0Z-MqqR.js.map +1 -0
  23. package/dist/advanced.d.ts +2 -0
  24. package/dist/advanced.js +48 -0
  25. package/dist/advanced.js.map +1 -0
  26. package/dist/advanced.mjs +15679 -0
  27. package/dist/advanced.mjs.map +1 -0
  28. package/dist/api/advanced.d.ts +110 -0
  29. package/dist/api/internals.d.ts +39 -0
  30. package/dist/api/stable.d.ts +44 -0
  31. package/dist/api/testing.d.ts +25 -0
  32. package/dist/browser-module-D0gHY9rY.cjs +9 -0
  33. package/dist/browser-module-D0gHY9rY.cjs.map +1 -0
  34. package/dist/browser-module-DFvKXBUE.js +15474 -0
  35. package/dist/browser-module-DFvKXBUE.js.map +1 -0
  36. package/dist/components/ArtboardDistressPanel.d.ts +7 -0
  37. package/dist/components/ArtboardImageMaskPanel.d.ts +7 -0
  38. package/dist/components/ArtboardPropertiesToolbar.d.ts +19 -0
  39. package/dist/components/ArtboardToolbar.d.ts +10 -0
  40. package/dist/components/BackButton.d.ts +7 -0
  41. package/dist/components/BackgroundPickerDropdown.d.ts +11 -0
  42. package/dist/components/BackgroundSwitcher.d.ts +7 -0
  43. package/dist/components/CanvasA11yFallback.d.ts +62 -0
  44. package/dist/components/CanvasEditor/CanvasRendererComponent.d.ts +51 -0
  45. package/dist/components/CanvasEditor/handlers/cropModeHandlers.d.ts +114 -0
  46. package/dist/components/CanvasEditor/handlers/groupChildHandlers.d.ts +65 -0
  47. package/dist/components/CanvasEditor/handlers/index.d.ts +10 -0
  48. package/dist/components/CanvasEditor/handlers/multiSelectionHandlers.d.ts +86 -0
  49. package/dist/components/CanvasEditor/hooks/buildSpreadClipShape.d.ts +20 -0
  50. package/dist/components/CanvasEditor/hooks/index.d.ts +24 -0
  51. package/dist/components/CanvasEditor/hooks/useActiveChild.d.ts +23 -0
  52. package/dist/components/CanvasEditor/hooks/useAnimatedFocusRect.d.ts +17 -0
  53. package/dist/components/CanvasEditor/hooks/useCanvasInteraction.d.ts +284 -0
  54. package/dist/components/CanvasEditor/hooks/useCanvasLayout.d.ts +50 -0
  55. package/dist/components/CanvasEditor/hooks/useCanvasRenderLoop.d.ts +140 -0
  56. package/dist/components/CanvasEditor/hooks/useCropMode.d.ts +4 -0
  57. package/dist/components/CanvasEditor/hooks/useHoverState.d.ts +9 -0
  58. package/dist/components/CanvasEditor/hooks/useInteractionState.d.ts +23 -0
  59. package/dist/components/CanvasEditor/hooks/useKeyboardHandlers.d.ts +16 -0
  60. package/dist/components/CanvasEditor/hooks/useMarqueeSelection.d.ts +22 -0
  61. package/dist/components/CanvasEditor/hooks/useMultiSelection.d.ts +5 -0
  62. package/dist/components/CanvasEditor/hooks/usePenTool.d.ts +10 -0
  63. package/dist/components/CanvasEditor/hooks/useRenderState.d.ts +31 -0
  64. package/dist/components/CanvasEditor/hooks/useSnapAndSpacing.d.ts +42 -0
  65. package/dist/components/CanvasEditor/hooks/useTextEditing.d.ts +56 -0
  66. package/dist/components/CanvasEditor/hooks/useTextEditingHandlers.d.ts +75 -0
  67. package/dist/components/CanvasEditor/renderers/hoverRenderer.d.ts +12 -0
  68. package/dist/components/CanvasEditor/renderers/index.d.ts +10 -0
  69. package/dist/components/CanvasEditor/renderers/marqueeRenderer.d.ts +21 -0
  70. package/dist/components/CanvasEditor/renderers/multiSelectionRenderer.d.ts +52 -0
  71. package/dist/components/CanvasEditor/renderers/renderingConstants.d.ts +59 -0
  72. package/dist/components/CanvasEditor/types/index.d.ts +11 -0
  73. package/dist/components/CanvasEditor.d.ts +102 -0
  74. package/dist/components/ColorPickerDropdown.d.ts +29 -0
  75. package/dist/components/CompositingPanel.d.ts +8 -0
  76. package/dist/components/ContextualToolbars.d.ts +150 -0
  77. package/dist/components/CropPanel.d.ts +20 -0
  78. package/dist/components/DistressPanel.d.ts +7 -0
  79. package/dist/components/DocsPage.d.ts +6 -0
  80. package/dist/components/Drawer.d.ts +39 -0
  81. package/dist/components/EffectsPanel.d.ts +14 -0
  82. package/dist/components/ExportTestPanel.d.ts +16 -0
  83. package/dist/components/FontBrowserDrawer.d.ts +20 -0
  84. package/dist/components/FontSizeDropdown.d.ts +12 -0
  85. package/dist/components/GlyphBrowserDrawer.d.ts +13 -0
  86. package/dist/components/GlyphPicker.d.ts +14 -0
  87. package/dist/components/IconMatchTest.d.ts +3 -0
  88. package/dist/components/IconSizeTest.d.ts +3 -0
  89. package/dist/components/ImageBrowserDrawer.d.ts +27 -0
  90. package/dist/components/ImageToolbar.d.ts +47 -0
  91. package/dist/components/LayerEffects.d.ts +11 -0
  92. package/dist/components/LayerLeadingChip.d.ts +9 -0
  93. package/dist/components/LayersPanel.d.ts +30 -0
  94. package/dist/components/MaskItem.d.ts +12 -0
  95. package/dist/components/MasksPanel.d.ts +7 -0
  96. package/dist/components/MonotypeDemoPage.d.ts +2 -0
  97. package/dist/components/MoreMenu.d.ts +15 -0
  98. package/dist/components/OpenTypeFeaturesPanel.d.ts +12 -0
  99. package/dist/components/PathToolbar.d.ts +10 -0
  100. package/dist/components/PenToolDemo.d.ts +3 -0
  101. package/dist/components/ProgressiveBlur.d.ts +25 -0
  102. package/dist/components/RotationHandle.d.ts +47 -0
  103. package/dist/components/SaveLoadMenu.d.ts +15 -0
  104. package/dist/components/ShapeToolbar.d.ts +71 -0
  105. package/dist/components/ShapeTypeDrawer.d.ts +10 -0
  106. package/dist/components/StrokePanel.d.ts +7 -0
  107. package/dist/components/TailwindDemo.d.ts +3 -0
  108. package/dist/components/TextEffectsDropdown.d.ts +14 -0
  109. package/dist/components/TextToolbar.d.ts +47 -0
  110. package/dist/components/TextTypeDrawer.d.ts +8 -0
  111. package/dist/components/ThemeToggle.d.ts +2 -0
  112. package/dist/components/TransformControlPanel.d.ts +12 -0
  113. package/dist/components/VisualGuideOverlay.d.ts +156 -0
  114. package/dist/components/embed/ArtboardTabs.d.ts +74 -0
  115. package/dist/components/embed/Canvas.d.ts +72 -0
  116. package/dist/components/embed/EffectsPanel.d.ts +76 -0
  117. package/dist/components/embed/ErrorBoundary.d.ts +34 -0
  118. package/dist/components/embed/ExportPanel.d.ts +51 -0
  119. package/dist/components/embed/GlyphPanel.d.ts +70 -0
  120. package/dist/components/embed/ImagePanel.d.ts +58 -0
  121. package/dist/components/embed/LayersPanel.d.ts +13 -0
  122. package/dist/components/embed/LoadingStates.d.ts +32 -0
  123. package/dist/components/embed/MenuButton.d.ts +47 -0
  124. package/dist/components/embed/SnowconeCanvas.d.ts +844 -0
  125. package/dist/components/embed/ZoomControls.d.ts +16 -0
  126. package/dist/components/embed/index.d.ts +129 -0
  127. package/dist/components/embed/primitives/index.d.ts +42 -0
  128. package/dist/components/embed/ui/index.d.ts +52 -0
  129. package/dist/components/embed/utils/index.d.ts +31 -0
  130. package/dist/components/embedded/ArtboardEmbed.d.ts +70 -0
  131. package/dist/components/embedded/MerchifyThemeWrapper.d.ts +30 -0
  132. package/dist/components/embedded/ProductPreviewCard.d.ts +8 -0
  133. package/dist/components/embedded/index.d.ts +7 -0
  134. package/dist/components/primitives/ButtonGroup.d.ts +27 -0
  135. package/dist/components/primitives/ControlGroup.d.ts +15 -0
  136. package/dist/components/primitives/Dropdown.d.ts +27 -0
  137. package/dist/components/primitives/DropdownMenu.d.ts +9 -0
  138. package/dist/components/primitives/MenuItem.d.ts +13 -0
  139. package/dist/components/primitives/Panel.d.ts +25 -0
  140. package/dist/components/primitives/SecondaryToolbar.d.ts +9 -0
  141. package/dist/components/primitives/Switch.d.ts +10 -0
  142. package/dist/components/primitives/Toggle.d.ts +17 -0
  143. package/dist/components/primitives/index.d.ts +22 -0
  144. package/dist/components/stories/utils/MockEditorProvider.d.ts +32 -0
  145. package/dist/components/stories/utils/QACanvasCard.d.ts +41 -0
  146. package/dist/components/stories/utils/VisualQACard.d.ts +24 -0
  147. package/dist/components/stories/utils/element-factories.d.ts +188 -0
  148. package/dist/components/stories/utils/spec-to-elements.d.ts +74 -0
  149. package/dist/components/stories/utils/themeDecorator.d.ts +45 -0
  150. package/dist/components/stories/utils/unified-test-cases.d.ts +27 -0
  151. package/dist/components/text-toolbar/BoldButton.d.ts +5 -0
  152. package/dist/components/text-toolbar/FontColorButton.d.ts +6 -0
  153. package/dist/components/text-toolbar/FontSizeGroup.d.ts +5 -0
  154. package/dist/components/text-toolbar/ItalicButton.d.ts +5 -0
  155. package/dist/components/text-toolbar/TextAlignButton.d.ts +5 -0
  156. package/dist/components/text-toolbar/TextMoreMenu.d.ts +7 -0
  157. package/dist/components/text-toolbar/UnderlineButton.d.ts +5 -0
  158. package/dist/components/text-toolbar/UppercaseButton.d.ts +5 -0
  159. package/dist/components/text-toolbar/index.d.ts +25 -0
  160. package/dist/components/toolbars/EmbeddedToolbarLayout.d.ts +49 -0
  161. package/dist/components/toolbars/ExpandedPanelIcon.d.ts +13 -0
  162. package/dist/components/toolbars/FloatingPanels.d.ts +23 -0
  163. package/dist/components/toolbars/GroupElementToolbar.d.ts +35 -0
  164. package/dist/components/toolbars/SecondaryPanels.d.ts +125 -0
  165. package/dist/components/toolbars/index.d.ts +18 -0
  166. package/dist/components/toolbars/shared/ColorPanelWrapper.d.ts +9 -0
  167. package/dist/components/toolbars/shared/SecondaryPanelWrapper.d.ts +9 -0
  168. package/dist/components/ui/PresetCarousel.d.ts +21 -0
  169. package/dist/components/ui/SecondaryPanel.d.ts +28 -0
  170. package/dist/components/ui/SliderRow.d.ts +30 -0
  171. package/dist/components/ui/collapsed-toolbar-header.d.ts +14 -0
  172. package/dist/components/ui/custom-icons.d.ts +25 -0
  173. package/dist/components/ui/icons.d.ts +100 -0
  174. package/dist/components/ui/index.d.ts +48 -0
  175. package/dist/components/ui/normalized-icon.d.ts +63 -0
  176. package/dist/components/ui/toolbar-button.d.ts +24 -0
  177. package/dist/compose-Bo108juW.cjs +33 -0
  178. package/dist/compose-Bo108juW.cjs.map +1 -0
  179. package/dist/compose-DQ1FZS3O.js +7690 -0
  180. package/dist/compose-DQ1FZS3O.js.map +1 -0
  181. package/dist/constants.d.ts +121 -0
  182. package/dist/contexts/CommandContext.d.ts +87 -0
  183. package/dist/contexts/EditorContext.d.ts +190 -0
  184. package/dist/contexts/ElementsContext.d.ts +104 -0
  185. package/dist/contexts/HistoryContext.d.ts +60 -0
  186. package/dist/contexts/KitContext.d.ts +50 -0
  187. package/dist/contexts/SelectionContext.d.ts +51 -0
  188. package/dist/contexts/ThemeContext.d.ts +55 -0
  189. package/dist/contexts/ToolStateContext.d.ts +60 -0
  190. package/dist/contexts/ViewportContext.d.ts +87 -0
  191. package/dist/core/AlignmentSnapSystem.d.ts +270 -0
  192. package/dist/core/ArtboardElement.d.ts +106 -0
  193. package/dist/core/ArtboardManager.d.ts +130 -0
  194. package/dist/core/ArtboardRenderer.d.ts +97 -0
  195. package/dist/core/BaseElement.d.ts +94 -0
  196. package/dist/core/CanvasRenderer.d.ts +237 -0
  197. package/dist/core/CommandHistory.d.ts +173 -0
  198. package/dist/core/CoordinateTransform.d.ts +69 -0
  199. package/dist/core/CropModeController.d.ts +90 -0
  200. package/dist/core/EditModeRenderer.d.ts +51 -0
  201. package/dist/core/ElementFactory.d.ts +73 -0
  202. package/dist/core/ElementStore.d.ts +69 -0
  203. package/dist/core/EventBus.d.ts +163 -0
  204. package/dist/core/GeometryUtils.d.ts +247 -0
  205. package/dist/core/GroupElement.d.ts +134 -0
  206. package/dist/core/HoverRenderer.d.ts +103 -0
  207. package/dist/core/HybridHistoryManager.d.ts +137 -0
  208. package/dist/core/ImageCache.d.ts +63 -0
  209. package/dist/core/ImageElement.d.ts +226 -0
  210. package/dist/core/ImageLoadEvents.d.ts +23 -0
  211. package/dist/core/InteractionFeedbackRenderer.d.ts +15 -0
  212. package/dist/core/InteractionStateMachine.d.ts +199 -0
  213. package/dist/core/PathElement.d.ts +84 -0
  214. package/dist/core/PenToolManager.d.ts +112 -0
  215. package/dist/core/PinchHandler.d.ts +32 -0
  216. package/dist/core/ResizeHandler.d.ts +51 -0
  217. package/dist/core/ResizePipeline.d.ts +83 -0
  218. package/dist/core/ResizeUtils.d.ts +17 -0
  219. package/dist/core/RotationAnchorResolver.d.ts +60 -0
  220. package/dist/core/RotationUtils.d.ts +28 -0
  221. package/dist/core/SelectionRenderer.d.ts +24 -0
  222. package/dist/core/ShapeElement.d.ts +121 -0
  223. package/dist/core/SpacingSystem.d.ts +73 -0
  224. package/dist/core/SpatialGrid.d.ts +53 -0
  225. package/dist/core/TextElement.d.ts +80 -0
  226. package/dist/core/TextMetrics.d.ts +117 -0
  227. package/dist/core/Transform.d.ts +158 -0
  228. package/dist/core/TransformConverter.d.ts +16 -0
  229. package/dist/core/TransformHandles.d.ts +55 -0
  230. package/dist/core/artboardReducer.d.ts +46 -0
  231. package/dist/effects/DistressGenerator.d.ts +26 -0
  232. package/dist/effects/DistressTextureCache.d.ts +49 -0
  233. package/dist/effects/distress-presets.d.ts +86 -0
  234. package/dist/effects/distress-textures.d.ts +34 -0
  235. package/dist/effects/distress-utils.d.ts +39 -0
  236. package/dist/effects/mask-presets.d.ts +36 -0
  237. package/dist/fonts/google-fonts.d.ts +48 -0
  238. package/dist/google-fonts.json +1 -0
  239. package/dist/hooks/index.d.ts +42 -0
  240. package/dist/hooks/useArtboards.d.ts +71 -0
  241. package/dist/hooks/useAutoExport.d.ts +66 -0
  242. package/dist/hooks/useBreakpoint.d.ts +53 -0
  243. package/dist/hooks/useCanvasEvents.d.ts +8 -0
  244. package/dist/hooks/useCanvasReady.d.ts +22 -0
  245. package/dist/hooks/useClickOutside.d.ts +3 -0
  246. package/dist/hooks/useCommandHistory.d.ts +39 -0
  247. package/dist/hooks/useCommands.d.ts +47 -0
  248. package/dist/hooks/useContentReady.d.ts +18 -0
  249. package/dist/hooks/useElementById.d.ts +20 -0
  250. package/dist/hooks/useElementByName.d.ts +10 -0
  251. package/dist/hooks/useElementProperties.d.ts +29 -0
  252. package/dist/hooks/useExport.d.ts +89 -0
  253. package/dist/hooks/useImageBinding.d.ts +34 -0
  254. package/dist/hooks/useKeyboardShortcuts.d.ts +13 -0
  255. package/dist/hooks/useLayerDndKit.d.ts +24 -0
  256. package/dist/hooks/useLayerDragDrop.d.ts +58 -0
  257. package/dist/hooks/useLayerPreview.d.ts +31 -0
  258. package/dist/hooks/useLayerSelection.d.ts +76 -0
  259. package/dist/hooks/useLayers.d.ts +91 -0
  260. package/dist/hooks/usePerformance.d.ts +48 -0
  261. package/dist/hooks/useProjectLoader.d.ts +64 -0
  262. package/dist/hooks/useSelectedElement.d.ts +17 -0
  263. package/dist/hooks/useTextBinding.d.ts +26 -0
  264. package/dist/hooks/useTextToolbar.d.ts +61 -0
  265. package/dist/hooks/useViewport.d.ts +46 -0
  266. package/dist/icons/icon-data.d.ts +2 -0
  267. package/dist/icons/registry.d.ts +28 -0
  268. package/dist/index.d.ts +6 -0
  269. package/dist/index.js +2 -0
  270. package/dist/index.js.map +1 -0
  271. package/dist/index.mjs +1138 -0
  272. package/dist/index.mjs.map +1 -0
  273. package/dist/internals.d.ts +2 -0
  274. package/dist/internals.js +2 -0
  275. package/dist/internals.js.map +1 -0
  276. package/dist/internals.mjs +219 -0
  277. package/dist/internals.mjs.map +1 -0
  278. package/dist/kits/compose.d.ts +69 -0
  279. package/dist/kits/index.d.ts +21 -0
  280. package/dist/kits/presets.d.ts +40 -0
  281. package/dist/kits/registry.d.ts +33 -0
  282. package/dist/kits/sections.d.ts +119 -0
  283. package/dist/kits/serialization.d.ts +78 -0
  284. package/dist/kits/types.d.ts +129 -0
  285. package/dist/kits/validation.d.ts +36 -0
  286. package/dist/lib/utils.d.ts +2 -0
  287. package/dist/plugins/ElementTypePlugin.d.ts +90 -0
  288. package/dist/presets/artboard-color-presets.d.ts +22 -0
  289. package/dist/presets/tshirt-presets.d.ts +60 -0
  290. package/dist/rendering/CompositingRenderer.d.ts +33 -0
  291. package/dist/rendering/DistressTextureRenderer.d.ts +39 -0
  292. package/dist/rendering/ElementRenderUtils.d.ts +17 -0
  293. package/dist/rendering/MaskRenderer.d.ts +41 -0
  294. package/dist/rendering/PieceGuideRenderer.d.ts +177 -0
  295. package/dist/rendering/StrokeRenderer.d.ts +24 -0
  296. package/dist/rendering/canvas-renderer.d.ts +18 -0
  297. package/dist/rendering/element-serializer.d.ts +143 -0
  298. package/dist/rendering/image-renderer.d.ts +6 -0
  299. package/dist/rendering/knockout-utils.d.ts +48 -0
  300. package/dist/rendering/mask-utils.d.ts +65 -0
  301. package/dist/rendering/renderer-types.d.ts +79 -0
  302. package/dist/rendering/rich-text-renderer.d.ts +43 -0
  303. package/dist/rendering/serialize-for-server.d.ts +45 -0
  304. package/dist/rendering/shape-renderer.d.ts +6 -0
  305. package/dist/rendering/stroke-utils.d.ts +18 -0
  306. package/dist/rendering/text-renderer.d.ts +71 -0
  307. package/dist/rendering/transform-renderer.d.ts +33 -0
  308. package/dist/services/AutoExportManager.d.ts +107 -0
  309. package/dist/services/falApi.d.ts +63 -0
  310. package/dist/services/nounProjectApi.d.ts +90 -0
  311. package/dist/services/recraftApi.d.ts +65 -0
  312. package/dist/services/runwareApi.d.ts +69 -0
  313. package/dist/state/CanvasStateV1.d.ts +373 -0
  314. package/dist/state/index.d.ts +10 -0
  315. package/dist/style.css +1 -0
  316. package/dist/taco-reference-cropped.jpg +0 -0
  317. package/dist/testing/MockEditorProvider.d.ts +49 -0
  318. package/dist/testing/index.d.ts +25 -0
  319. package/dist/testing/utils.d.ts +128 -0
  320. package/dist/testing.d.ts +2 -0
  321. package/dist/testing.js +2 -0
  322. package/dist/testing.js.map +1 -0
  323. package/dist/testing.mjs +140 -0
  324. package/dist/testing.mjs.map +1 -0
  325. package/dist/textures/glass-frame.svg +32 -0
  326. package/dist/theme.d.ts +99 -0
  327. package/dist/themes/index.d.ts +23 -0
  328. package/dist/transforms/ArchTransform.d.ts +14 -0
  329. package/dist/transforms/AscendTransform.d.ts +14 -0
  330. package/dist/transforms/CircleTransform.d.ts +51 -0
  331. package/dist/transforms/CustomTransform.d.ts +81 -0
  332. package/dist/transforms/FlagTransform.d.ts +14 -0
  333. package/dist/transforms/LeanTransform.d.ts +14 -0
  334. package/dist/transforms/WaveTransform.d.ts +16 -0
  335. package/dist/transforms/defaults.d.ts +33 -0
  336. package/dist/transforms/index.d.ts +10 -0
  337. package/dist/transforms/registry.d.ts +51 -0
  338. package/dist/types/capabilities.d.ts +50 -0
  339. package/dist/types/guards.d.ts +31 -0
  340. package/dist/types/index.d.ts +765 -0
  341. package/dist/types/public.d.ts +31 -0
  342. package/dist/types/react.d.ts +132 -0
  343. package/dist/utils/ArtworkPlacement.d.ts +97 -0
  344. package/dist/utils/ElementPreviewRenderer.d.ts +19 -0
  345. package/dist/utils/ExportManager.d.ts +208 -0
  346. package/dist/utils/FontAnalyzer.d.ts +137 -0
  347. package/dist/utils/GlyphRenderer.d.ts +55 -0
  348. package/dist/utils/GoogleFontsService.d.ts +37 -0
  349. package/dist/utils/ImageLoader.d.ts +124 -0
  350. package/dist/utils/ImportManager.d.ts +72 -0
  351. package/dist/utils/MonotypeCategoryMapping.d.ts +36 -0
  352. package/dist/utils/MonotypeService.d.ts +148 -0
  353. package/dist/utils/PerformanceMonitor.d.ts +54 -0
  354. package/dist/utils/TextureManager.d.ts +60 -0
  355. package/dist/utils/UnifiedFontService.d.ts +117 -0
  356. package/dist/utils/WorkerExportManager.d.ts +185 -0
  357. package/dist/utils/clickProtection.d.ts +39 -0
  358. package/dist/utils/cn.d.ts +4 -0
  359. package/dist/utils/colorConversion.d.ts +101 -0
  360. package/dist/utils/documentColors.d.ts +108 -0
  361. package/dist/utils/featureApplied.d.ts +14 -0
  362. package/dist/utils/google-fonts-loader.d.ts +67 -0
  363. package/dist/utils/logger.d.ts +66 -0
  364. package/dist/utils/selectionPreservation.d.ts +42 -0
  365. package/dist/utils/textCursorUtils.d.ts +39 -0
  366. package/dist/utils/textUtils.d.ts +11 -0
  367. package/dist/workers/export-protocol.d.ts +119 -0
  368. package/dist/workers/export-worker.bundle.string.d.ts +2 -0
  369. package/dist/workers/export-worker.d.ts +5 -0
  370. package/package.json +201 -0
@@ -0,0 +1,110 @@
1
+ /**
2
+ * @snowcone-app/canvas/advanced — Advanced API (Tier 2)
3
+ *
4
+ * May add new exports in minor versions. Breaking changes with migration
5
+ * guide in minor versions. For developers building custom editor layouts
6
+ * and integrations.
7
+ *
8
+ * @packageDocumentation
9
+ */
10
+ export { Canvas } from '../components/embed/Canvas.js';
11
+ export type { CanvasProps } from '../components/embed/Canvas.js';
12
+ export { LayersPanel } from '../components/embed/LayersPanel.js';
13
+ export type { LayersPanelProps } from '../components/embed/LayersPanel.js';
14
+ export { EffectsPanel } from '../components/embed/EffectsPanel.js';
15
+ export type { EffectsPanelProps } from '../components/embed/EffectsPanel.js';
16
+ export { ExportPanel } from '../components/embed/ExportPanel.js';
17
+ export type { ExportPanelProps } from '../components/embed/ExportPanel.js';
18
+ export { ImagePanel } from '../components/embed/ImagePanel.js';
19
+ export type { ImagePanelProps } from '../components/embed/ImagePanel.js';
20
+ export { GlyphPanel } from '../components/embed/GlyphPanel.js';
21
+ export type { GlyphPanelProps } from '../components/embed/GlyphPanel.js';
22
+ export { ArtboardTabs } from '../components/embed/ArtboardTabs.js';
23
+ export type { ArtboardTabsProps } from '../components/embed/ArtboardTabs.js';
24
+ export { ContextualToolbars } from '../components/ContextualToolbars.js';
25
+ export type { ContextualToolbarsProps } from '../components/ContextualToolbars.js';
26
+ export { default as ShapeTypeDrawer } from '../components/ShapeTypeDrawer.js';
27
+ export { MenuButton } from '../components/embed/MenuButton.js';
28
+ export type { MenuButtonProps } from '../components/embed/MenuButton.js';
29
+ export { ZoomControls } from '../components/embed/ZoomControls.js';
30
+ export type { ZoomControlsProps } from '../components/embed/ZoomControls.js';
31
+ export { CropPanel } from '../components/CropPanel.js';
32
+ export type { CropPanelProps } from '../components/CropPanel.js';
33
+ export { EditorProvider } from '../contexts/EditorContext.js';
34
+ export type { EditorElement, PanOffset, ExpandedPanelType } from '../contexts/EditorContext.js';
35
+ export { ThemeProvider, useTheme } from '../contexts/ThemeContext.js';
36
+ export type { Theme } from '../contexts/ThemeContext.js';
37
+ export { KitProvider, useKit, useCapabilities } from '../contexts/KitContext.js';
38
+ export type { KitContextValue, KitProviderProps } from '../contexts/KitContext.js';
39
+ export { useViewportContext } from '../contexts/ViewportContext.js';
40
+ export type { ViewportContextValue, ViewportProviderProps } from '../contexts/ViewportContext.js';
41
+ export { useSelectionContext } from '../contexts/SelectionContext.js';
42
+ export type { SelectionContextValue, SelectionProviderProps } from '../contexts/SelectionContext.js';
43
+ export { useHistoryContext } from '../contexts/HistoryContext.js';
44
+ export type { HistoryContextValue, HistoryProviderProps } from '../contexts/HistoryContext.js';
45
+ export { useToolStateContext } from '../contexts/ToolStateContext.js';
46
+ export type { ToolStateContextValue, ToolStateProviderProps } from '../contexts/ToolStateContext.js';
47
+ export { useElementsContext } from '../contexts/ElementsContext.js';
48
+ export type { ElementsContextValue, ElementsProviderProps } from '../contexts/ElementsContext.js';
49
+ export { useCommandContext } from '../contexts/CommandContext.js';
50
+ export type { CommandContextValue, CommandProviderProps } from '../contexts/CommandContext.js';
51
+ export { TextElement } from '../core/TextElement.js';
52
+ export { ImageElement } from '../core/ImageElement.js';
53
+ export { GroupElement } from '../core/GroupElement.js';
54
+ export { ShapeElement } from '../core/ShapeElement.js';
55
+ export { PathElement } from '../core/PathElement.js';
56
+ export { BaseElement } from '../core/BaseElement.js';
57
+ export { ArtboardElement } from '../core/ArtboardElement.js';
58
+ export { isTextElementConfig, isImageElementConfig, isCustomElementConfig, isCircleElementConfig, isGroupElementConfig, isShapeElementConfig, isPathElementConfig, } from '../types/index.js';
59
+ export { isTextElement, isImageElement, isGroupElement, isShapeElement, isPathElement, } from '../types/guards.js';
60
+ export type { BaseElementConfig, BaseTextElementConfig, TextOnlyElementConfig, CustomElementConfig, ImageElementConfig, GroupElementConfig, ShapeElementConfig, PathElementConfig, CircleElementConfig, ArchElementConfig, WaveElementConfig, FlagElementConfig, LeanElementConfig, AscendElementConfig, } from '../types/index.js';
61
+ export { useProjectLoader } from '../hooks/useProjectLoader.js';
62
+ export type { ProjectTemplate, ProjectMetadata, UseProjectLoaderReturn } from '../hooks/useProjectLoader.js';
63
+ export { useTextToolbar } from '../hooks/useTextToolbar.js';
64
+ export type { UseTextToolbarOptions, UseTextToolbarReturn } from '../hooks/useTextToolbar.js';
65
+ export { useBreakpoint } from '../hooks/useBreakpoint.js';
66
+ export type { BreakpointConfig, Breakpoint, UseBreakpointReturn } from '../hooks/useBreakpoint.js';
67
+ export { usePerformance } from '../hooks/usePerformance.js';
68
+ export type { PerformanceMetrics, UsePerformanceReturn } from '../hooks/usePerformance.js';
69
+ export { useElementById } from '../hooks/useElementById.js';
70
+ export { useLayerPreview } from '../hooks/useLayerPreview.js';
71
+ export type { UseLayerPreviewOptions, UseLayerPreviewReturn } from '../hooks/useLayerPreview.js';
72
+ export { useLayerDragDrop } from '../hooks/useLayerDragDrop.js';
73
+ export type { UseLayerDragDropOptions, UseLayerDragDropReturn } from '../hooks/useLayerDragDrop.js';
74
+ export { useLayerSelection } from '../hooks/useLayerSelection.js';
75
+ export type { UseLayerSelectionOptions, UseLayerSelectionReturn } from '../hooks/useLayerSelection.js';
76
+ export * from '../components/embed/primitives/index.js';
77
+ export * from '../components/embed/ui/index.js';
78
+ export { TextToolbar } from '../components/TextToolbar.js';
79
+ export type { TextToolbarProps } from '../components/TextToolbar.js';
80
+ export * from '../components/text-toolbar/index.js';
81
+ export { CanvasSkeleton, LayersPanelSkeleton, ToolbarSkeleton, Spinner } from '../components/embed/LoadingStates.js';
82
+ export type { CanvasSkeletonProps, LayersPanelSkeletonProps, ToolbarSkeletonProps } from '../components/embed/LoadingStates.js';
83
+ export { AutoExportManager, DEFAULT_AUTO_EXPORT_CONFIG } from '../services/AutoExportManager.js';
84
+ export type { AutoExportConfig, AutoExportStats } from '../services/AutoExportManager.js';
85
+ export { shouldPreserveSelection, preserveSelectionProps, PRESERVE_SELECTION_ATTR, } from '../utils/selectionPreservation.js';
86
+ export type { AnyTransformData, CustomTransformData, CircleTransformData, ArchTransformData, WaveTransformData, FlagTransformData, LeanTransformData, AscendTransformData, ImageTransformData, GroupTransformData, ShapeTransformData, PathTransformData, StrokeConfig, MaskType, MaskDefinition, KnockoutScope, KnockoutConfig, DistressStyle, DistressEffect, CharacterStyle, TextSpan, GlyphOverride, GlyphAlternate, OpenTypeFeatures, ShapeType, PathPointType, PathPoint, InteractionMode, SelectionState, ResizeAnchor, RenderingContext, } from '../types/index.js';
87
+ export { RichText } from '../types/index.js';
88
+ export { isCustomTransform, isCircleTransform, isArchTransform, isWaveTransform, isFlagTransform, isImageTransform, isGroupTransform, isShapeTransform, isPathTransform, hasStroke, hasMasks, isKnockout, hasDistressEffect, } from '../types/index.js';
89
+ export { KIT_PRESETS } from '../kits/registry.js';
90
+ export { registerSection, getSection, getSectionIds, getAllSections, unregisterSection, registerBuiltinSections, registerBuiltinSectionsSync, } from '../kits/sections.js';
91
+ export type { SectionConfig, SectionComponent } from '../kits/sections.js';
92
+ export { serializeKit, loadKitFromJSON } from '../kits/serialization.js';
93
+ export type { KitJSON } from '../kits/serialization.js';
94
+ export { registerElementType, unregisterElementType, getCustomElementTypes, isRegisteredElementType, } from '../plugins/ElementTypePlugin.js';
95
+ export type { ElementTypeRegistration } from '../plugins/ElementTypePlugin.js';
96
+ export { CanvasEventBus, canvasEventBus } from '../core/EventBus.js';
97
+ export type { CanvasEventMap, CanvasEventHandler } from '../core/EventBus.js';
98
+ export { useCanvasEvents } from '../hooks/useCanvasEvents.js';
99
+ export { VisualGuideOverlay } from '../components/VisualGuideOverlay.js';
100
+ export type { VisualGuideOverlayProps, VisualGuideOverlayStyle, OverlayPiece, PieceGuide, SvgPath, ZoneShape, GuideLabel, } from '../components/VisualGuideOverlay.js';
101
+ /**
102
+ * Canvas-native piece-guide rendering (ADR-0054). Prefer the
103
+ * `pieceGuides` prop on `SnowconeCanvas` over mounting a
104
+ * `VisualGuideOverlay` — the canvas-native path draws inside the
105
+ * render loop and avoids the coordinate-system drift of the DOM
106
+ * overlay.
107
+ */
108
+ export { renderPieceGuides } from '../rendering/PieceGuideRenderer.js';
109
+ export type { PieceGuideRenderParams, PieceGuideRendererPiece, PieceGuideRendererStyle, PieceGuideVisibility, } from '../rendering/PieceGuideRenderer.js';
110
+ export type { PieceGuidesConfig } from '../components/embed/SnowconeCanvas.js';
@@ -0,0 +1,39 @@
1
+ /**
2
+ * @snowcone-app/canvas/internals — Internal API (Tier 3)
3
+ *
4
+ * No stability guarantee. May change in any release.
5
+ * For advanced integrations that need direct access to core systems.
6
+ *
7
+ * @packageDocumentation
8
+ */
9
+ export { CanvasRenderer } from '../core/CanvasRenderer.js';
10
+ export { applyStrokeStyle, renderTextStroke, renderImageStroke, renderPathStroke } from '../rendering/StrokeRenderer.js';
11
+ export { renderWithMasks, invalidateMaskCache, clearMaskCache } from '../rendering/MaskRenderer.js';
12
+ export { renderWithKnockout } from '../rendering/CompositingRenderer.js';
13
+ export { ArtboardRenderer } from '../core/ArtboardRenderer.js';
14
+ export { ElementStore } from '../core/ElementStore.js';
15
+ export type { StoreElement } from '../core/ElementStore.js';
16
+ export { ArtboardManager } from '../core/ArtboardManager.js';
17
+ export { HybridHistoryManager } from '../core/HybridHistoryManager.js';
18
+ export { AlignmentSnapSystem } from '../core/AlignmentSnapSystem.js';
19
+ export { SpacingSystem } from '../core/SpacingSystem.js';
20
+ export { InteractionStateMachine } from '../core/InteractionStateMachine.js';
21
+ export { ResizePipeline } from '../core/ResizePipeline.js';
22
+ export { TransformHandles } from '../core/TransformHandles.js';
23
+ export { calculateFixedCornerPosition, calculateRotationHandlePosition, calculateResizeHandles, hitTestCircle, hitTestRect, } from '../core/GeometryUtils.js';
24
+ export { CustomTransform } from '../transforms/CustomTransform.js';
25
+ export { CircleTransform } from '../transforms/CircleTransform.js';
26
+ export { ArchTransform } from '../transforms/ArchTransform.js';
27
+ export { WaveTransform } from '../transforms/WaveTransform.js';
28
+ export { FlagTransform } from '../transforms/FlagTransform.js';
29
+ export { LeanTransform } from '../transforms/LeanTransform.js';
30
+ export { AscendTransform } from '../transforms/AscendTransform.js';
31
+ export { WorkerExportManager, getSharedWorkerExportManager, terminateSharedWorkerExportManager, } from '../utils/WorkerExportManager.js';
32
+ export type { WorkerExportResult, WorkerBlobExportResult } from '../utils/WorkerExportManager.js';
33
+ export { ExportManager } from '../utils/ExportManager.js';
34
+ export { ImportManager } from '../utils/ImportManager.js';
35
+ export { clearImageBitmapCache, removeFromImageBitmapCache, clearRegisteredBitmapKeys, unregisterElementBitmaps, DEFAULT_MAX_BITMAP_DIMENSION, } from '../rendering/element-serializer.js';
36
+ export * from '../rendering/canvas-renderer.js';
37
+ export * from '../rendering/stroke-utils.js';
38
+ export { CanvasStateV1Schema, SerializedArtboardSchema, AnyElementConfigSchema, AnyTransformDataSchema, } from '../state/index.js';
39
+ export { createLogger, logger, LogLevel } from '../utils/logger.js';
@@ -0,0 +1,44 @@
1
+ /**
2
+ * @snowcone-app/canvas — Stable API (Tier 1)
3
+ *
4
+ * Semver-protected exports. Breaking changes only in major versions.
5
+ * Deprecation warnings for 2 minor versions before removal.
6
+ *
7
+ * @packageDocumentation
8
+ */
9
+ export { SnowconeCanvas, SnowconeCanvas as default } from '../components/embed/SnowconeCanvas.js';
10
+ export type { SnowconeCanvasProps, SnowconeCanvasHandle, ArtboardConfig, CanvasState, ClipShape, AlignmentPoint, ExportStatusEvent, ExportConfig, ImageConfig, LayoutConfig, CanvasCutoutShape } from '../components/embed/SnowconeCanvas.js';
11
+ export { useEditor } from '../contexts/EditorContext.js';
12
+ export type { EditorContextValue, EditorProviderProps } from '../contexts/EditorContext.js';
13
+ export { useArtboards } from '../hooks/useArtboards.js';
14
+ export type { ArtboardInfo, UseArtboardsReturn } from '../hooks/useArtboards.js';
15
+ export { useLayers } from '../hooks/useLayers.js';
16
+ export type { LayerInfo, UseLayersOptions, UseLayersReturn } from '../hooks/useLayers.js';
17
+ export { useExport } from '../hooks/useExport.js';
18
+ export type { ExportProgress, ContinuousExportOptions, UseExportReturn } from '../hooks/useExport.js';
19
+ export { useAutoExport } from '../hooks/useAutoExport.js';
20
+ export type { UseAutoExportOptions, UseAutoExportReturn } from '../hooks/useAutoExport.js';
21
+ export { useCommands } from '../hooks/useCommands.js';
22
+ export type { UseCommandsReturn } from '../hooks/useCommands.js';
23
+ export { useSelectedElement } from '../hooks/useSelectedElement.js';
24
+ export { useCanvasReady } from '../hooks/useCanvasReady.js';
25
+ export { useTextBinding } from '../hooks/useTextBinding.js';
26
+ export type { TextBindingResult } from '../hooks/useTextBinding.js';
27
+ export { useImageBinding } from '../hooks/useImageBinding.js';
28
+ export type { ImageBindingResult, ImageBindingOptions, ImageFitMode } from '../hooks/useImageBinding.js';
29
+ export { useElementByName } from '../hooks/useElementByName.js';
30
+ export { useContentReady } from '../hooks/useContentReady.js';
31
+ export type { UseContentReadyOptions } from '../hooks/useContentReady.js';
32
+ export { useViewport } from '../hooks/useViewport.js';
33
+ export type { UseViewportReturn } from '../hooks/useViewport.js';
34
+ export { resolveKit, extendKit, createKit, validateKit } from '../kits/index.js';
35
+ export { COMPACT_CUSTOMIZER, PRO_STUDIO, EMBED_ONLY } from '../kits/presets.js';
36
+ export type { KitDefinition, KitPresetId, RuntimeTheme, KitValidationResult } from '../kits/index.js';
37
+ export { ALL_CAPABILITIES, MINIMAL_CAPABILITIES } from '../types/capabilities.js';
38
+ export type { EditorCapabilities, ElementType, EffectType, PanelType, ToolType } from '../types/capabilities.js';
39
+ export type { ArtboardConfig as ArtboardElementConfig, TransformType, AnyElementConfig, TextAlign, BlendMode, BoundingBox, Point, CanvasError, CanvasErrorCategory, } from '../types/index.js';
40
+ export { ErrorBoundary } from '../components/embed/ErrorBoundary.js';
41
+ export type { ErrorBoundaryProps } from '../components/embed/ErrorBoundary.js';
42
+ export { serializeState, deserializeState, validateState, migrateState, } from '../state/index.js';
43
+ export { serializeStateForServer } from '../rendering/serialize-for-server.js';
44
+ export type { CanvasStateV1, SerializedArtboard, SerializedElement, DeserializeResult, ValidationResult, } from '../state/index.js';
@@ -0,0 +1,25 @@
1
+ /**
2
+ * @snowcone-app/canvas/testing — Testing API (Tier 4)
3
+ *
4
+ * Test utilities for consumers building components on top of @snowcone-app/canvas.
5
+ * Provides mock providers, fixture helpers, and assertion utilities
6
+ * compatible with Vitest and React Testing Library.
7
+ *
8
+ * @example
9
+ * ```tsx
10
+ * import { MockEditorProvider, createMockElement } from '@snowcone-app/canvas/testing';
11
+ *
12
+ * test('component renders', () => {
13
+ * const element = createMockElement('custom', { text: 'Hello' });
14
+ * render(
15
+ * <MockEditorProvider>
16
+ * <MyComponent />
17
+ * </MockEditorProvider>
18
+ * );
19
+ * });
20
+ * ```
21
+ *
22
+ * @packageDocumentation
23
+ */
24
+ export { MockEditorProvider, MockEditorProviderWithState, createMockElement, createMockImageElement, createMockArtboard, waitFor, waitForExport, simulateKeyPress, createMockCanvas, assertElementProperties, getElementBounds, } from '../testing/index.js';
25
+ export type { MockEditorProviderProps, MockEditorElement, } from '../testing/index.js';