@zsviczian/excalidraw 0.18.0-3 → 0.18.0-30

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 (400) hide show
  1. package/dist/excalidraw.development.js +2137 -2280
  2. package/dist/excalidraw.production.min.js +1 -1
  3. package/dist/styles.development.css +152 -71
  4. package/dist/styles.production.css +12 -10
  5. package/package.json +25 -3
  6. package/types/{excalidraw/binaryheap.d.ts → common/src/binary-heap.d.ts} +12 -12
  7. package/types/{excalidraw → common/src}/colors.d.ts +62 -61
  8. package/types/{excalidraw → common/src}/constants.d.ts +354 -333
  9. package/types/{excalidraw → common/src}/emitter.d.ts +16 -16
  10. package/types/{excalidraw/fonts/FontMetadata.d.ts → common/src/font-metadata.d.ts} +48 -38
  11. package/types/common/src/index.d.ts +12 -0
  12. package/types/{excalidraw → common/src}/keys.d.ts +189 -189
  13. package/types/{excalidraw → common/src}/points.d.ts +9 -7
  14. package/types/common/src/promise-pool.d.ts +6 -0
  15. package/types/{excalidraw → common/src}/queue.d.ts +9 -9
  16. package/types/{excalidraw → common/src}/random.d.ts +4 -4
  17. package/types/{excalidraw/data → common/src}/url.d.ts +7 -7
  18. package/types/{excalidraw → common/src}/utility-types.d.ts +37 -32
  19. package/types/{excalidraw → common/src}/utils.d.ts +267 -256
  20. package/types/{excalidraw/scene → element/src}/Scene.d.ts +76 -79
  21. package/types/element/src/align.d.ts +8 -0
  22. package/types/{excalidraw/element → element/src}/binding.d.ts +111 -100
  23. package/types/{excalidraw/element → element/src}/bounds.d.ts +89 -76
  24. package/types/element/src/collision.d.ts +32 -0
  25. package/types/{excalidraw/scene → element/src}/comparisons.d.ts +8 -8
  26. package/types/{excalidraw/element → element/src}/containerCache.d.ts +11 -11
  27. package/types/{excalidraw/element → element/src}/cropElement.d.ts +19 -19
  28. package/types/{excalidraw/change.d.ts → element/src/delta.d.ts} +225 -191
  29. package/types/element/src/distance.d.ts +3 -0
  30. package/types/{excalidraw → element/src}/distribute.d.ts +7 -6
  31. package/types/{excalidraw/element → element/src}/dragElements.d.ts +33 -32
  32. package/types/element/src/duplicate.d.ts +63 -0
  33. package/types/{excalidraw/renderer → element/src}/easingFunctions.d.ts +6 -6
  34. package/types/{excalidraw/element → element/src}/elbowArrow.d.ts +17 -17
  35. package/types/{excalidraw/element → element/src}/elementLink.d.ts +13 -13
  36. package/types/element/src/embeddable.d.ts +10 -0
  37. package/types/{excalidraw/element → element/src}/flowchart.d.ts +26 -25
  38. package/types/{excalidraw → element/src}/fractionalIndex.d.ts +57 -48
  39. package/types/{excalidraw → element/src}/frame.d.ts +70 -69
  40. package/types/{excalidraw → element/src}/groups.d.ts +34 -33
  41. package/types/{excalidraw/element → element/src}/heading.d.ts +15 -16
  42. package/types/{excalidraw/element → element/src}/image.d.ts +32 -32
  43. package/types/element/src/index.d.ts +57 -0
  44. package/types/{excalidraw/element → element/src}/linearElementEditor.d.ts +116 -129
  45. package/types/element/src/mutateElement.d.ts +21 -0
  46. package/types/{excalidraw/element → element/src}/newElement.d.ts +63 -102
  47. package/types/{excalidraw/renderer → element/src}/renderElement.d.ts +28 -28
  48. package/types/{excalidraw/element → element/src}/resizeElements.d.ts +39 -38
  49. package/types/{excalidraw/element → element/src}/resizeTest.d.ts +15 -15
  50. package/types/{excalidraw/scene → element/src}/selection.d.ts +38 -32
  51. package/types/element/src/shape.d.ts +42 -0
  52. package/types/{excalidraw/element → element/src}/showSelectedShapeActions.d.ts +3 -3
  53. package/types/{excalidraw/element → element/src}/sizeHelpers.d.ts +35 -35
  54. package/types/{excalidraw/element → element/src}/sortElements.d.ts +2 -2
  55. package/types/element/src/store.d.ts +232 -0
  56. package/types/{excalidraw/element → element/src}/textElement.d.ts +40 -39
  57. package/types/{excalidraw/element → element/src}/textMeasurements.d.ts +41 -41
  58. package/types/{excalidraw/element → element/src}/textWrapping.d.ts +13 -13
  59. package/types/{excalidraw/element → element/src}/transformHandles.d.ts +55 -55
  60. package/types/{excalidraw/element → element/src}/typeChecks.d.ts +57 -39
  61. package/types/{excalidraw/element → element/src}/types.d.ts +298 -285
  62. package/types/element/src/utils.d.ts +31 -0
  63. package/types/{excalidraw → element/src}/zindex.d.ts +7 -6
  64. package/types/excalidraw/actions/actionAddToLibrary.d.ts +632 -629
  65. package/types/excalidraw/actions/actionAlign.d.ts +109 -109
  66. package/types/excalidraw/actions/actionBoundText.d.ts +458 -456
  67. package/types/excalidraw/actions/actionCanvas.d.ts +3293 -3070
  68. package/types/excalidraw/actions/actionClipboard.d.ts +1382 -1374
  69. package/types/excalidraw/actions/actionCropEditor.d.ts +223 -222
  70. package/types/excalidraw/actions/actionDeleteSelected.d.ts +672 -668
  71. package/types/excalidraw/actions/actionDistribute.d.ts +34 -34
  72. package/types/excalidraw/actions/actionDuplicateSelection.d.ts +17 -21
  73. package/types/excalidraw/actions/actionElementLink.d.ts +245 -244
  74. package/types/excalidraw/actions/actionElementLock.d.ts +444 -444
  75. package/types/excalidraw/{element/embeddable.d.ts → actions/actionEmbeddable.d.ts} +220 -229
  76. package/types/excalidraw/actions/actionExport.d.ts +1962 -1953
  77. package/types/excalidraw/actions/actionFinalize.d.ts +670 -425
  78. package/types/excalidraw/actions/actionFlip.d.ts +34 -34
  79. package/types/excalidraw/actions/actionFrame.d.ts +1388 -1384
  80. package/types/excalidraw/actions/actionGroup.d.ts +456 -454
  81. package/types/excalidraw/actions/actionHistory.d.ts +6 -7
  82. package/types/excalidraw/actions/actionLinearEditor.d.ts +751 -223
  83. package/types/excalidraw/actions/actionLink.d.ts +224 -223
  84. package/types/excalidraw/actions/actionMenu.d.ts +652 -649
  85. package/types/excalidraw/actions/actionNavigate.d.ts +432 -430
  86. package/types/excalidraw/actions/actionProperties.d.ts +3299 -3276
  87. package/types/excalidraw/actions/actionSelectAll.d.ts +223 -222
  88. package/types/excalidraw/actions/actionStyles.d.ts +237 -236
  89. package/types/excalidraw/actions/actionTextAutoResize.d.ts +17 -17
  90. package/types/excalidraw/actions/actionToggleGridMode.d.ts +226 -225
  91. package/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +224 -223
  92. package/types/excalidraw/actions/actionToggleSearchMenu.d.ts +217 -420
  93. package/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +19 -0
  94. package/types/excalidraw/actions/actionToggleStats.d.ts +223 -223
  95. package/types/excalidraw/actions/actionToggleViewMode.d.ts +224 -224
  96. package/types/excalidraw/actions/actionToggleZenMode.d.ts +224 -224
  97. package/types/excalidraw/actions/actionZindex.d.ts +74 -74
  98. package/types/excalidraw/actions/index.d.ts +28 -27
  99. package/types/excalidraw/actions/manager.d.ts +21 -21
  100. package/types/excalidraw/actions/register.d.ts +5 -5
  101. package/types/excalidraw/actions/shortcuts.d.ts +4 -4
  102. package/types/excalidraw/actions/types.d.ts +47 -46
  103. package/types/excalidraw/analytics.d.ts +1 -1
  104. package/types/excalidraw/animated-trail.d.ts +39 -33
  105. package/types/excalidraw/animation-frame-handler.d.ts +16 -16
  106. package/types/excalidraw/appState.d.ts +99 -89
  107. package/types/excalidraw/charts.d.ts +27 -27
  108. package/types/excalidraw/clients.d.ts +14 -14
  109. package/types/excalidraw/clipboard.d.ts +66 -66
  110. package/types/excalidraw/components/Actions.d.ts +31 -35
  111. package/types/excalidraw/components/ActiveConfirmDialog.d.ts +4 -4
  112. package/types/excalidraw/components/App.d.ts +565 -561
  113. package/types/excalidraw/components/Avatar.d.ts +11 -11
  114. package/types/excalidraw/components/BraveMeasureTextError.d.ts +2 -2
  115. package/types/excalidraw/components/Button.d.ts +17 -17
  116. package/types/excalidraw/components/ButtonIcon.d.ts +16 -15
  117. package/types/excalidraw/components/ButtonIconCycle.d.ts +11 -11
  118. package/types/excalidraw/components/ButtonSeparator.d.ts +1 -1
  119. package/types/excalidraw/components/Card.d.ts +6 -6
  120. package/types/excalidraw/components/CheckboxItem.d.ts +8 -8
  121. package/types/excalidraw/components/ColorPicker/ColorInput.d.ts +10 -9
  122. package/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +23 -19
  123. package/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +8 -8
  124. package/types/excalidraw/components/ColorPicker/HotkeyLabel.d.ts +7 -8
  125. package/types/excalidraw/components/ColorPicker/Picker.d.ts +17 -18
  126. package/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +9 -10
  127. package/types/excalidraw/components/ColorPicker/PickerHeading.d.ts +5 -5
  128. package/types/excalidraw/components/ColorPicker/ShadeList.d.ts +8 -8
  129. package/types/excalidraw/components/ColorPicker/TopPicks.d.ts +9 -9
  130. package/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +21 -21
  131. package/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +20 -20
  132. package/types/excalidraw/components/CommandPalette/CommandPalette.d.ts +18 -18
  133. package/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +2 -2
  134. package/types/excalidraw/components/CommandPalette/types.d.ts +25 -25
  135. package/types/excalidraw/components/ConfirmDialog.d.ts +10 -10
  136. package/types/excalidraw/components/ContextMenu.d.ts +16 -16
  137. package/types/excalidraw/components/ConvertElementTypePopup.d.ts +23 -0
  138. package/types/excalidraw/components/DarkModeToggle.d.ts +7 -7
  139. package/types/excalidraw/components/DefaultSidebar.d.ts +30 -30
  140. package/types/excalidraw/components/DiagramToCodePlugin/DiagramToCodePlugin.d.ts +4 -4
  141. package/types/excalidraw/components/Dialog.d.ts +13 -13
  142. package/types/excalidraw/components/DialogActionButton.d.ts +10 -10
  143. package/types/excalidraw/{element → components}/ElementCanvasButtons.d.ts +7 -7
  144. package/types/excalidraw/components/ElementLinkDialog.d.ts +12 -11
  145. package/types/excalidraw/components/Ellipsify.d.ts +3 -0
  146. package/types/excalidraw/components/ErrorDialog.d.ts +5 -5
  147. package/types/excalidraw/components/ExcalidrawLogo.d.ts +15 -15
  148. package/types/excalidraw/components/EyeDropper.d.ts +27 -27
  149. package/types/excalidraw/components/FilledButton.d.ts +18 -18
  150. package/types/excalidraw/components/FixedSideContainer.d.ts +9 -9
  151. package/types/excalidraw/components/FollowMode/FollowMode.d.ts +10 -10
  152. package/types/excalidraw/components/FontPicker/FontPicker.d.ts +21 -21
  153. package/types/excalidraw/components/FontPicker/FontPickerList.d.ts +26 -26
  154. package/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +6 -6
  155. package/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +13 -13
  156. package/types/excalidraw/components/HandButton.d.ts +10 -10
  157. package/types/excalidraw/components/HelpButton.d.ts +7 -7
  158. package/types/excalidraw/components/HelpDialog.d.ts +4 -4
  159. package/types/excalidraw/components/HintViewer.d.ts +10 -10
  160. package/types/excalidraw/components/IconPicker.d.ts +15 -15
  161. package/types/excalidraw/components/ImageExportDialog.d.ts +14 -14
  162. package/types/excalidraw/components/InitializeApp.d.ts +10 -10
  163. package/types/excalidraw/components/InlineIcon.d.ts +3 -3
  164. package/types/excalidraw/components/Island.d.ts +10 -10
  165. package/types/excalidraw/components/JSONExportDialog.d.ts +15 -15
  166. package/types/excalidraw/components/LaserPointerButton.d.ts +10 -10
  167. package/types/excalidraw/components/LayerUI.d.ts +31 -31
  168. package/types/excalidraw/components/LibraryMenu.d.ts +10 -10
  169. package/types/excalidraw/components/LibraryMenuBrowseButton.d.ts +7 -7
  170. package/types/excalidraw/components/LibraryMenuControlButtons.d.ts +9 -9
  171. package/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +17 -17
  172. package/types/excalidraw/components/LibraryMenuItems.d.ts +14 -14
  173. package/types/excalidraw/components/LibraryMenuSection.d.ts +23 -23
  174. package/types/excalidraw/components/LibraryUnit.d.ts +14 -14
  175. package/types/excalidraw/components/LoadingMessage.d.ts +5 -5
  176. package/types/excalidraw/components/LockButton.d.ts +10 -10
  177. package/types/excalidraw/components/MagicButton.d.ts +10 -10
  178. package/types/excalidraw/components/MobileMenu.d.ts +25 -25
  179. package/types/excalidraw/components/Modal.d.ts +14 -14
  180. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirm.d.ts +17 -17
  181. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmActions.d.ts +17 -17
  182. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +22 -22
  183. package/types/excalidraw/components/Paragraph.d.ts +4 -4
  184. package/types/excalidraw/components/PasteChartDialog.d.ts +8 -8
  185. package/types/excalidraw/components/PenModeButton.d.ts +12 -12
  186. package/types/excalidraw/components/Popover.d.ts +15 -15
  187. package/types/excalidraw/components/ProjectName.d.ts +10 -10
  188. package/types/excalidraw/components/PropertiesPopover.d.ts +15 -15
  189. package/types/excalidraw/components/PublishLibrary.d.ts +16 -16
  190. package/types/excalidraw/components/QuickSearch.d.ts +9 -9
  191. package/types/excalidraw/components/RadioGroup.d.ts +13 -13
  192. package/types/excalidraw/components/{ButtonIconSelect.d.ts → RadioSelection.d.ts} +20 -20
  193. package/types/excalidraw/components/Range.d.ts +8 -8
  194. package/types/excalidraw/components/SVGLayer.d.ts +7 -7
  195. package/types/excalidraw/components/ScrollableList.d.ts +8 -8
  196. package/types/excalidraw/components/SearchMenu.d.ts +5 -5
  197. package/types/excalidraw/components/Section.d.ts +6 -6
  198. package/types/excalidraw/components/ShareableLinkDialog.d.ts +7 -7
  199. package/types/excalidraw/components/Sidebar/Sidebar.d.ts +76 -76
  200. package/types/excalidraw/components/Sidebar/SidebarHeader.d.ts +7 -7
  201. package/types/excalidraw/components/Sidebar/SidebarTab.d.ts +8 -8
  202. package/types/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +9 -9
  203. package/types/excalidraw/components/Sidebar/SidebarTabTriggers.d.ts +6 -6
  204. package/types/excalidraw/components/Sidebar/SidebarTabs.d.ts +6 -6
  205. package/types/excalidraw/components/Sidebar/SidebarTrigger.d.ts +6 -6
  206. package/types/excalidraw/components/Sidebar/common.d.ts +34 -34
  207. package/types/excalidraw/components/Spinner.d.ts +8 -8
  208. package/types/excalidraw/components/Stack.d.ts +15 -15
  209. package/types/excalidraw/components/Stats/Angle.d.ts +11 -11
  210. package/types/excalidraw/components/Stats/CanvasGrid.d.ts +10 -10
  211. package/types/excalidraw/components/Stats/CanvasGridSize.d.ts +10 -10
  212. package/types/excalidraw/components/Stats/Collapsible.d.ts +10 -9
  213. package/types/excalidraw/components/Stats/Dimension.d.ts +11 -11
  214. package/types/excalidraw/components/Stats/DragInput.d.ts +44 -34
  215. package/types/excalidraw/components/Stats/FontSize.d.ts +11 -11
  216. package/types/excalidraw/components/Stats/MultiAngle.d.ts +11 -11
  217. package/types/excalidraw/components/Stats/MultiDimension.d.ts +14 -14
  218. package/types/excalidraw/components/Stats/MultiFontSize.d.ts +12 -12
  219. package/types/excalidraw/components/Stats/MultiPosition.d.ts +14 -14
  220. package/types/excalidraw/components/Stats/Position.d.ts +12 -12
  221. package/types/excalidraw/components/Stats/index.d.ts +35 -35
  222. package/types/excalidraw/components/Stats/utils.d.ts +19 -26
  223. package/types/excalidraw/components/Switch.d.ts +9 -9
  224. package/types/excalidraw/components/TTDDialog/MermaidToExcalidraw.d.ts +8 -8
  225. package/types/excalidraw/components/TTDDialog/MermaidToExcalidrawLib.d.ts +10 -10
  226. package/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +29 -29
  227. package/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +9 -9
  228. package/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +7 -7
  229. package/types/excalidraw/components/TTDDialog/TTDDialogPanel.d.ts +17 -17
  230. package/types/excalidraw/components/TTDDialog/TTDDialogPanels.d.ts +4 -4
  231. package/types/excalidraw/components/TTDDialog/TTDDialogSubmitShortcut.d.ts +1 -1
  232. package/types/excalidraw/components/TTDDialog/TTDDialogTab.d.ts +7 -7
  233. package/types/excalidraw/components/TTDDialog/TTDDialogTabTrigger.d.ts +8 -8
  234. package/types/excalidraw/components/TTDDialog/TTDDialogTabTriggers.d.ts +6 -6
  235. package/types/excalidraw/components/TTDDialog/TTDDialogTabs.d.ts +11 -11
  236. package/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +9 -9
  237. package/types/excalidraw/components/TTDDialog/common.d.ts +32 -32
  238. package/types/excalidraw/components/TextField.d.ts +21 -21
  239. package/types/excalidraw/components/Toast.d.ts +9 -9
  240. package/types/excalidraw/components/ToolButton.d.ts +49 -49
  241. package/types/excalidraw/components/Tooltip.d.ts +18 -18
  242. package/types/excalidraw/components/Trans.d.ts +9 -9
  243. package/types/excalidraw/components/UnlockPopup.d.ts +8 -0
  244. package/types/excalidraw/components/UserList.d.ts +18 -18
  245. package/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +30 -29
  246. package/types/excalidraw/components/canvases/NewElementCanvas.d.ts +14 -14
  247. package/types/excalidraw/components/canvases/StaticCanvas.d.ts +19 -19
  248. package/types/excalidraw/components/canvases/index.d.ts +3 -3
  249. package/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +86 -86
  250. package/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +15 -15
  251. package/types/excalidraw/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -11
  252. package/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +46 -46
  253. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +8 -8
  254. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +17 -17
  255. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemCustom.d.ts +7 -7
  256. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +16 -16
  257. package/types/excalidraw/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -5
  258. package/types/excalidraw/components/dropdownMenu/DropdownMenuTrigger.d.ts +10 -10
  259. package/types/excalidraw/components/dropdownMenu/common.d.ts +6 -6
  260. package/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +3 -3
  261. package/types/excalidraw/components/footer/Footer.d.ts +12 -12
  262. package/types/excalidraw/components/footer/FooterCenter.d.ts +8 -8
  263. package/types/excalidraw/components/hoc/withInternalFallback.d.ts +4 -4
  264. package/types/excalidraw/components/hyperlink/Hyperlink.d.ts +19 -18
  265. package/types/excalidraw/components/hyperlink/helpers.d.ts +10 -9
  266. package/types/excalidraw/components/icons.d.ts +227 -223
  267. package/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +9 -9
  268. package/types/excalidraw/components/main-menu/DefaultItems.d.ts +64 -64
  269. package/types/excalidraw/components/main-menu/MainMenu.d.ts +83 -80
  270. package/types/excalidraw/{shapes.d.ts → components/shapes.d.ts} +62 -85
  271. package/types/excalidraw/components/welcome-screen/WelcomeScreen.Center.d.ts +60 -60
  272. package/types/excalidraw/components/welcome-screen/WelcomeScreen.Hints.d.ts +19 -19
  273. package/types/excalidraw/components/welcome-screen/WelcomeScreen.d.ts +86 -86
  274. package/types/excalidraw/context/tunnels.d.ts +21 -21
  275. package/types/excalidraw/context/ui-appState.d.ts +4 -4
  276. package/types/excalidraw/cursor.d.ts +6 -6
  277. package/types/excalidraw/data/EditorLocalStorage.d.ts +8 -8
  278. package/types/excalidraw/data/ai/types.d.ts +242 -242
  279. package/types/excalidraw/data/blob.d.ts +53 -53
  280. package/types/excalidraw/data/encode.d.ts +55 -55
  281. package/types/excalidraw/data/encryption.d.ts +9 -9
  282. package/types/excalidraw/data/filesystem.d.ts +21 -21
  283. package/types/excalidraw/data/image.d.ts +9 -9
  284. package/types/excalidraw/data/index.d.ts +22 -22
  285. package/types/excalidraw/data/json.d.ts +16 -16
  286. package/types/excalidraw/data/library.d.ts +112 -112
  287. package/types/excalidraw/data/reconcile.d.ts +7 -6
  288. package/types/excalidraw/data/resave.d.ts +5 -5
  289. package/types/excalidraw/data/restore.d.ts +21 -21
  290. package/types/excalidraw/data/transform.d.ts +81 -81
  291. package/types/excalidraw/data/types.d.ts +45 -45
  292. package/types/excalidraw/deburr.d.ts +1 -1
  293. package/types/excalidraw/dist/excalidraw.development.d.ts +2 -2
  294. package/types/excalidraw/dist/excalidraw.production.min.d.ts +3 -3
  295. package/types/excalidraw/editor-jotai.d.ts +56 -56
  296. package/types/excalidraw/entry.d.ts +1 -1
  297. package/types/excalidraw/env.d.cts +1 -1
  298. package/types/excalidraw/env.d.ts +1 -1
  299. package/types/excalidraw/eraser/index.d.ts +12 -0
  300. package/types/excalidraw/errors.d.ts +29 -32
  301. package/types/excalidraw/fonts/Cascadia/index.d.ts +2 -2
  302. package/types/excalidraw/fonts/ComicShanns/index.d.ts +2 -2
  303. package/types/excalidraw/fonts/Emoji/index.d.ts +2 -2
  304. package/types/excalidraw/fonts/ExcalidrawFontFace.d.ts +29 -29
  305. package/types/excalidraw/fonts/Excalifont/index.d.ts +2 -2
  306. package/types/excalidraw/fonts/Fonts.d.ts +90 -100
  307. package/types/excalidraw/fonts/Helvetica/index.d.ts +2 -2
  308. package/types/excalidraw/fonts/Liberation/index.d.ts +2 -2
  309. package/types/excalidraw/fonts/Lilita/index.d.ts +2 -2
  310. package/types/excalidraw/fonts/Nunito/index.d.ts +2 -2
  311. package/types/excalidraw/fonts/Virgil/index.d.ts +2 -2
  312. package/types/excalidraw/fonts/Xiaolai/index.d.ts +8 -8
  313. package/types/excalidraw/fonts/index.d.ts +1 -1
  314. package/types/excalidraw/gesture.d.ts +6 -6
  315. package/types/excalidraw/history.d.ts +48 -40
  316. package/types/excalidraw/hooks/useCallbackRefState.d.ts +1 -1
  317. package/types/excalidraw/hooks/useCopiedIndicator.d.ts +5 -5
  318. package/types/excalidraw/hooks/useCreatePortalContainer.d.ts +7 -7
  319. package/types/excalidraw/hooks/useEmitter.d.ts +2 -2
  320. package/types/excalidraw/hooks/useLibraryItemSvg.d.ts +11 -11
  321. package/types/excalidraw/hooks/useOutsideClick.d.ts +19 -19
  322. package/types/excalidraw/hooks/useScrollPosition.d.ts +1 -1
  323. package/types/excalidraw/hooks/useStable.d.ts +1 -1
  324. package/types/excalidraw/hooks/useStableCallback.d.ts +4 -4
  325. package/types/excalidraw/hooks/useTransition.d.ts +2 -2
  326. package/types/excalidraw/i18n.d.ts +24 -24
  327. package/types/excalidraw/index-node.d.ts +1 -1
  328. package/types/excalidraw/index.d.ts +61 -65
  329. package/types/excalidraw/laser-trails.d.ts +20 -20
  330. package/types/excalidraw/lasso/index.d.ts +16 -0
  331. package/types/excalidraw/lasso/utils.d.ts +13 -0
  332. package/types/excalidraw/main.d.ts +2 -2
  333. package/types/excalidraw/mermaid.d.ts +2 -2
  334. package/types/excalidraw/obsidianUtils.d.ts +40 -28
  335. package/types/excalidraw/polyfill.d.ts +2 -2
  336. package/types/excalidraw/publicPath.d.ts +1 -1
  337. package/types/excalidraw/reactUtils.d.ts +14 -14
  338. package/types/excalidraw/renderer/helpers.d.ts +18 -13
  339. package/types/excalidraw/renderer/interactiveScene.d.ts +20 -20
  340. package/types/excalidraw/renderer/renderNewElementScene.d.ts +7 -7
  341. package/types/excalidraw/renderer/renderSnaps.d.ts +2 -2
  342. package/types/excalidraw/renderer/roundRect.d.ts +11 -11
  343. package/types/excalidraw/renderer/staticScene.d.ts +14 -11
  344. package/types/excalidraw/renderer/staticSvgScene.d.ts +5 -5
  345. package/types/excalidraw/scene/Renderer.d.ts +27 -28
  346. package/types/excalidraw/scene/export.d.ts +37 -37
  347. package/types/excalidraw/scene/index.d.ts +4 -4
  348. package/types/excalidraw/scene/normalize.d.ts +4 -4
  349. package/types/excalidraw/scene/scroll.d.ts +23 -23
  350. package/types/excalidraw/scene/scrollbars.d.ts +11 -12
  351. package/types/excalidraw/scene/types.d.ts +122 -120
  352. package/types/excalidraw/scene/zoom.d.ts +12 -12
  353. package/types/excalidraw/snapping.d.ts +111 -112
  354. package/types/excalidraw/subset/harfbuzz/harfbuzz-bindings.d.ts +45 -45
  355. package/types/excalidraw/subset/harfbuzz/harfbuzz-loader.d.ts +13 -13
  356. package/types/excalidraw/subset/harfbuzz/harfbuzz-wasm.d.ts +2 -2
  357. package/types/excalidraw/subset/subset-main.d.ts +12 -12
  358. package/types/excalidraw/subset/subset-shared.chunk.d.ts +32 -32
  359. package/types/excalidraw/subset/subset-worker.chunk.d.ts +15 -15
  360. package/types/excalidraw/subset/woff2/woff2-bindings.d.ts +31 -31
  361. package/types/excalidraw/subset/woff2/woff2-loader.d.ts +14 -14
  362. package/types/excalidraw/subset/woff2/woff2-wasm.d.ts +2 -2
  363. package/types/excalidraw/types.d.ts +778 -753
  364. package/types/excalidraw/webpack.dev.config.d.ts +114 -112
  365. package/types/excalidraw/webpack.prod.config.d.ts +128 -126
  366. package/types/excalidraw/workers.d.ts +36 -36
  367. package/types/excalidraw/{element → wysiwyg}/textWysiwyg.d.ts +24 -22
  368. package/types/math/{angle.d.ts → src/angle.d.ts} +19 -17
  369. package/types/math/src/constants.d.ts +3 -0
  370. package/types/math/src/curve.d.ts +74 -0
  371. package/types/math/{ellipse.d.ts → src/ellipse.d.ts} +44 -44
  372. package/types/math/{index.d.ts → src/index.d.ts} +13 -12
  373. package/types/math/{line.d.ts → src/line.d.ts} +17 -17
  374. package/types/math/{point.d.ts → src/point.d.ts} +122 -122
  375. package/types/math/{polygon.d.ts → src/polygon.d.ts} +6 -5
  376. package/types/math/{range.d.ts → src/range.d.ts} +44 -44
  377. package/types/math/{rectangle.d.ts → src/rectangle.d.ts} +5 -3
  378. package/types/math/{segment.d.ts → src/segment.d.ts} +39 -39
  379. package/types/math/{triangle.d.ts → src/triangle.d.ts} +11 -11
  380. package/types/math/{types.d.ts → src/types.d.ts} +106 -105
  381. package/types/math/{utils.d.ts → src/utils.d.ts} +7 -7
  382. package/types/math/{vector.d.ts → src/vector.d.ts} +94 -88
  383. package/types/utils/{bbox.d.ts → src/bbox.d.ts} +9 -9
  384. package/types/utils/{export.d.ts → src/export.d.ts} +35 -45
  385. package/types/utils/{index.d.ts → src/index.d.ts} +4 -4
  386. package/types/utils/{geometry → src}/shape.d.ts +58 -71
  387. package/types/utils/{withinBounds.d.ts → src/withinBounds.d.ts} +19 -19
  388. package/types/excalidraw/align.d.ts +0 -7
  389. package/types/excalidraw/components/ButtonSelect.d.ts +0 -9
  390. package/types/excalidraw/element/collision.d.ts +0 -26
  391. package/types/excalidraw/element/distance.d.ts +0 -3
  392. package/types/excalidraw/element/index.d.ts +0 -26
  393. package/types/excalidraw/element/mutateElement.d.ts +0 -13
  394. package/types/excalidraw/element/utils.d.ts +0 -21
  395. package/types/excalidraw/scene/Shape.d.ts +0 -17
  396. package/types/excalidraw/scene/ShapeCache.d.ts +0 -25
  397. package/types/excalidraw/store.d.ts +0 -129
  398. package/types/excalidraw/visualdebug.d.ts +0 -41
  399. package/types/math/curve.d.ts +0 -40
  400. package/types/utils/collision.d.ts +0 -9
@@ -1,27 +1,28 @@
1
- export { actionDeleteSelected } from "./actionDeleteSelected";
2
- export { actionBringForward, actionBringToFront, actionSendBackward, actionSendToBack, } from "./actionZindex";
3
- export { actionSelectAll } from "./actionSelectAll";
4
- export { actionDuplicateSelection } from "./actionDuplicateSelection";
5
- export { actionChangeStrokeColor, actionChangeBackgroundColor, actionChangeStrokeWidth, actionChangeFillStyle, actionChangeSloppiness, actionChangeOpacity, actionChangeFontSize, actionChangeFontFamily, actionChangeTextAlign, actionChangeVerticalAlign, } from "./actionProperties";
6
- export { actionChangeViewBackgroundColor, actionClearCanvas, actionZoomIn, actionZoomOut, actionResetZoom, actionZoomToFit, actionToggleTheme, zoomToFitElements, } from "./actionCanvas";
7
- export { actionFinalize } from "./actionFinalize";
8
- export { actionChangeProjectName, actionChangeExportBackground, actionSaveToActiveFile, actionSaveFileToDisk, actionLoadScene, } from "./actionExport";
9
- export { actionCopyStyles, actionPasteStyles } from "./actionStyles";
10
- export { actionToggleCanvasMenu, actionToggleEditMenu, actionShortcuts, } from "./actionMenu";
11
- export { actionGroup, actionUngroup } from "./actionGroup";
12
- export { actionGoToCollaborator } from "./actionNavigate";
13
- export { actionAddToLibrary } from "./actionAddToLibrary";
14
- export { actionAlignTop, actionAlignBottom, actionAlignLeft, actionAlignRight, actionAlignVerticallyCentered, actionAlignHorizontallyCentered, } from "./actionAlign";
15
- export { distributeHorizontally, distributeVertically, } from "./actionDistribute";
16
- export { actionFlipHorizontal, actionFlipVertical } from "./actionFlip";
17
- export { actionCopy, actionCut, actionCopyAsPng, actionCopyAsSvg, copyText, } from "./actionClipboard";
18
- export { actionToggleGridMode } from "./actionToggleGridMode";
19
- export { actionToggleZenMode } from "./actionToggleZenMode";
20
- export { actionToggleObjectsSnapMode } from "./actionToggleObjectsSnapMode";
21
- export { actionToggleStats } from "./actionToggleStats";
22
- export { actionUnbindText, actionBindText } from "./actionBoundText";
23
- export { actionLink } from "./actionLink";
24
- export { actionToggleElementLock } from "./actionElementLock";
25
- export { actionToggleLinearEditor } from "./actionLinearEditor";
26
- export { actionToggleSearchMenu } from "./actionToggleSearchMenu";
27
- export { actionToggleCropEditor } from "./actionCropEditor";
1
+ export { actionDeleteSelected } from "./actionDeleteSelected";
2
+ export { actionBringForward, actionBringToFront, actionSendBackward, actionSendToBack, } from "./actionZindex";
3
+ export { actionSelectAll } from "./actionSelectAll";
4
+ export { actionDuplicateSelection } from "./actionDuplicateSelection";
5
+ export { actionChangeStrokeColor, actionChangeBackgroundColor, actionChangeStrokeWidth, actionChangeFillStyle, actionChangeSloppiness, actionChangeOpacity, actionChangeFontSize, actionChangeFontFamily, actionChangeTextAlign, actionChangeVerticalAlign, } from "./actionProperties";
6
+ export { actionChangeViewBackgroundColor, actionClearCanvas, actionZoomIn, actionZoomOut, actionResetZoom, actionZoomToFit, actionToggleTheme, zoomToFitElements, } from "./actionCanvas";
7
+ export { actionSetEmbeddableAsActiveTool } from "./actionEmbeddable";
8
+ export { actionFinalize } from "./actionFinalize";
9
+ export { actionChangeProjectName, actionChangeExportBackground, actionSaveToActiveFile, actionSaveFileToDisk, actionLoadScene, } from "./actionExport";
10
+ export { actionCopyStyles, actionPasteStyles } from "./actionStyles";
11
+ export { actionToggleCanvasMenu, actionToggleEditMenu, actionShortcuts, } from "./actionMenu";
12
+ export { actionGroup, actionUngroup } from "./actionGroup";
13
+ export { actionGoToCollaborator } from "./actionNavigate";
14
+ export { actionAddToLibrary } from "./actionAddToLibrary";
15
+ export { actionAlignTop, actionAlignBottom, actionAlignLeft, actionAlignRight, actionAlignVerticallyCentered, actionAlignHorizontallyCentered, } from "./actionAlign";
16
+ export { distributeHorizontally, distributeVertically, } from "./actionDistribute";
17
+ export { actionFlipHorizontal, actionFlipVertical } from "./actionFlip";
18
+ export { actionCopy, actionCut, actionCopyAsPng, actionCopyAsSvg, copyText, } from "./actionClipboard";
19
+ export { actionToggleGridMode } from "./actionToggleGridMode";
20
+ export { actionToggleZenMode } from "./actionToggleZenMode";
21
+ export { actionToggleObjectsSnapMode } from "./actionToggleObjectsSnapMode";
22
+ export { actionToggleStats } from "./actionToggleStats";
23
+ export { actionUnbindText, actionBindText } from "./actionBoundText";
24
+ export { actionLink } from "./actionLink";
25
+ export { actionToggleElementLock } from "./actionElementLock";
26
+ export { actionToggleLinearEditor } from "./actionLinearEditor";
27
+ export { actionToggleSearchMenu } from "./actionToggleSearchMenu";
28
+ export { actionToggleCropEditor } from "./actionCropEditor";
@@ -1,21 +1,21 @@
1
- import React from "react";
2
- import type { OrderedExcalidrawElement } from "../element/types";
3
- import type { AppClassProperties, AppState } from "../types";
4
- import type { Action, UpdaterFn, ActionName, ActionResult, PanelComponentProps, ActionSource } from "./types";
5
- export declare class ActionManager {
6
- actions: Record<ActionName, Action>;
7
- updater: (actionResult: ActionResult | Promise<ActionResult>) => void;
8
- getAppState: () => Readonly<AppState>;
9
- getElementsIncludingDeleted: () => readonly OrderedExcalidrawElement[];
10
- app: AppClassProperties;
11
- constructor(updater: UpdaterFn, getAppState: () => AppState, getElementsIncludingDeleted: () => readonly OrderedExcalidrawElement[], app: AppClassProperties);
12
- registerAction(action: Action): void;
13
- registerAll(actions: readonly Action[]): void;
14
- handleKeyDown(event: React.KeyboardEvent | KeyboardEvent): boolean;
15
- executeAction<T extends Action>(action: T, source?: ActionSource, value?: Parameters<T["perform"]>[2]): void;
16
- /**
17
- * @param data additional data sent to the PanelComponent
18
- */
19
- renderAction: (name: ActionName, data?: PanelComponentProps["data"]) => import("react/jsx-runtime").JSX.Element | null;
20
- isActionEnabled: (action: Action) => boolean;
21
- }
1
+ import React from "react";
2
+ import type { OrderedExcalidrawElement } from "@excalidraw/element/types";
3
+ import type { AppClassProperties, AppState } from "../types";
4
+ import type { Action, UpdaterFn, ActionName, ActionResult, PanelComponentProps, ActionSource } from "./types";
5
+ export declare class ActionManager {
6
+ actions: Record<ActionName, Action>;
7
+ updater: (actionResult: ActionResult | Promise<ActionResult>) => void;
8
+ getAppState: () => Readonly<AppState>;
9
+ getElementsIncludingDeleted: () => readonly OrderedExcalidrawElement[];
10
+ app: AppClassProperties;
11
+ constructor(updater: UpdaterFn, getAppState: () => AppState, getElementsIncludingDeleted: () => readonly OrderedExcalidrawElement[], app: AppClassProperties);
12
+ registerAction(action: Action): void;
13
+ registerAll(actions: readonly Action[]): void;
14
+ handleKeyDown(event: React.KeyboardEvent | KeyboardEvent): boolean;
15
+ executeAction<T extends Action>(action: T, source?: ActionSource, value?: Parameters<T["perform"]>[2]): void;
16
+ /**
17
+ * @param data additional data sent to the PanelComponent
18
+ */
19
+ renderAction: (name: ActionName, data?: PanelComponentProps["data"]) => import("react/jsx-runtime").JSX.Element | null;
20
+ isActionEnabled: (action: Action) => boolean;
21
+ }
@@ -1,5 +1,5 @@
1
- import type { Action } from "./types";
2
- export declare let actions: readonly Action[];
3
- export declare const register: <T extends Action>(action: T) => T & {
4
- keyTest?: (unknown extends T["keyTest"] ? never : T["keyTest"]) | undefined;
5
- };
1
+ import type { Action } from "./types";
2
+ export declare let actions: readonly Action[];
3
+ export declare const register: <T extends Action>(action: T) => T & {
4
+ keyTest?: (unknown extends T["keyTest"] ? never : T["keyTest"]) | undefined;
5
+ };
@@ -1,4 +1,4 @@
1
- import type { SubtypeOf } from "../utility-types";
2
- import type { ActionName } from "./types";
3
- export type ShortcutName = SubtypeOf<ActionName, "toggleTheme" | "loadScene" | "clearCanvas" | "cut" | "copy" | "paste" | "copyStyles" | "pasteStyles" | "selectAll" | "deleteSelectedElements" | "duplicateSelection" | "sendBackward" | "bringForward" | "sendToBack" | "bringToFront" | "copyAsPng" | "group" | "ungroup" | "gridMode" | "zenMode" | "objectsSnapMode" | "stats" | "addToLibrary" | "viewMode" | "flipHorizontal" | "flipVertical" | "hyperlink" | "toggleElementLock" | "toggleLaserPointerTool" | "resetZoom" | "zoomOut" | "zoomIn" | "zoomToFit" | "zoomToFitSelectionInViewport" | "zoomToFitSelection" | "toggleEraserTool" | "toggleHandTool" | "setFrameAsActiveTool" | "saveFileToDisk" | "saveToActiveFile" | "toggleShortcuts" | "wrapSelectionInFrame"> | "saveScene" | "imageExport" | "commandPalette" | "searchMenu";
4
- export declare const getShortcutFromShortcutName: (name: ShortcutName, idx?: number) => string;
1
+ import type { SubtypeOf } from "@excalidraw/common/utility-types";
2
+ import type { ActionName } from "./types";
3
+ export type ShortcutName = SubtypeOf<ActionName, "toggleTheme" | "loadScene" | "clearCanvas" | "cut" | "copy" | "paste" | "copyStyles" | "pasteStyles" | "selectAll" | "deleteSelectedElements" | "duplicateSelection" | "sendBackward" | "bringForward" | "sendToBack" | "bringToFront" | "copyAsPng" | "group" | "ungroup" | "gridMode" | "zenMode" | "objectsSnapMode" | "stats" | "addToLibrary" | "viewMode" | "flipHorizontal" | "flipVertical" | "hyperlink" | "toggleElementLock" | "toggleLaserPointerTool" | "resetZoom" | "zoomOut" | "zoomIn" | "zoomToFit" | "zoomToFitSelectionInViewport" | "zoomToFitSelection" | "toggleEraserTool" | "toggleHandTool" | "setFrameAsActiveTool" | "saveFileToDisk" | "saveToActiveFile" | "toggleShortcuts" | "wrapSelectionInFrame"> | "saveScene" | "imageExport" | "commandPalette" | "searchMenu";
4
+ export declare const getShortcutFromShortcutName: (name: ShortcutName, idx?: number) => string;
@@ -1,46 +1,47 @@
1
- import type { ExcalidrawElement, OrderedExcalidrawElement } from "../element/types";
2
- import type { CaptureUpdateActionType } from "../store";
3
- import type { AppClassProperties, AppState, ExcalidrawProps, BinaryFiles, UIAppState } from "../types";
4
- import type React from "react";
5
- export type ActionSource = "ui" | "keyboard" | "contextMenu" | "api" | "commandPalette";
6
- /** if false, the action should be prevented */
7
- export type ActionResult = {
8
- elements?: readonly ExcalidrawElement[] | null;
9
- appState?: Partial<AppState> | null;
10
- files?: BinaryFiles | null;
11
- captureUpdate: CaptureUpdateActionType;
12
- replaceFiles?: boolean;
13
- } | false;
14
- type ActionFn = (elements: readonly OrderedExcalidrawElement[], appState: Readonly<AppState>, formData: any, app: AppClassProperties) => ActionResult | Promise<ActionResult>;
15
- export type UpdaterFn = (res: ActionResult) => void;
16
- export type ActionFilterFn = (action: Action) => void;
17
- export type ActionName = "copy" | "cut" | "paste" | "copyAsPng" | "copyAsSvg" | "copyText" | "sendBackward" | "bringForward" | "sendToBack" | "bringToFront" | "copyStyles" | "selectAll" | "pasteStyles" | "gridMode" | "zenMode" | "objectsSnapMode" | "stats" | "changeStrokeColor" | "changeBackgroundColor" | "changeFillStyle" | "changeStrokeWidth" | "changeStrokeShape" | "changeSloppiness" | "changeStrokeStyle" | "changeArrowhead" | "changeArrowType" | "changeOpacity" | "changeFontSize" | "toggleCanvasMenu" | "toggleEditMenu" | "undo" | "redo" | "finalize" | "changeProjectName" | "changeExportBackground" | "changeExportEmbedScene" | "changeExportScale" | "saveToActiveFile" | "saveFileToDisk" | "loadScene" | "duplicateSelection" | "deleteSelectedElements" | "changeViewBackgroundColor" | "clearCanvas" | "zoomIn" | "zoomOut" | "resetZoom" | "zoomToFit" | "zoomToFitSelection" | "zoomToFitSelectionInViewport" | "changeFontFamily" | "changeTextAlign" | "changeVerticalAlign" | "toggleFullScreen" | "toggleShortcuts" | "group" | "ungroup" | "goToCollaborator" | "addToLibrary" | "changeRoundness" | "alignTop" | "alignBottom" | "alignLeft" | "alignRight" | "alignVerticallyCentered" | "alignHorizontallyCentered" | "distributeHorizontally" | "distributeVertically" | "flipHorizontal" | "flipVertical" | "viewMode" | "exportWithDarkMode" | "toggleTheme" | "increaseFontSize" | "decreaseFontSize" | "unbindText" | "hyperlink" | "bindText" | "unlockAllElements" | "toggleElementLock" | "toggleLinearEditor" | "toggleEraserTool" | "toggleHandTool" | "selectAllElementsInFrame" | "removeAllElementsFromFrame" | "updateFrameRendering" | "setFrameAsActiveTool" | "setEmbeddableAsActiveTool" | "createContainerFromText" | "wrapTextInContainer" | "toggleLaserPointerTool" | "commandPalette" | "autoResize" | "elementStats" | "searchMenu" | "copyElementLink" | "linkToElement" | "cropEditor" | "wrapSelectionInFrame";
18
- export type PanelComponentProps = {
19
- elements: readonly ExcalidrawElement[];
20
- appState: AppState;
21
- updateData: <T = any>(formData?: T) => void;
22
- appProps: ExcalidrawProps;
23
- data?: Record<string, any>;
24
- app: AppClassProperties;
25
- };
26
- export interface Action {
27
- name: ActionName;
28
- label: string | ((elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, app: AppClassProperties) => string);
29
- keywords?: string[];
30
- icon?: React.ReactNode | ((appState: UIAppState, elements: readonly ExcalidrawElement[]) => React.ReactNode);
31
- PanelComponent?: React.FC<PanelComponentProps>;
32
- perform: ActionFn;
33
- keyPriority?: number;
34
- keyTest?: (event: React.KeyboardEvent | KeyboardEvent, appState: AppState, elements: readonly ExcalidrawElement[], app: AppClassProperties) => boolean;
35
- predicate?: (elements: readonly ExcalidrawElement[], appState: AppState, appProps: ExcalidrawProps, app: AppClassProperties) => boolean;
36
- checked?: (appState: Readonly<AppState>) => boolean;
37
- trackEvent: false | {
38
- category: "toolbar" | "element" | "canvas" | "export" | "history" | "menu" | "collab" | "hyperlink" | "search_menu";
39
- action?: string;
40
- predicate?: (appState: Readonly<AppState>, elements: readonly ExcalidrawElement[], value: any) => boolean;
41
- };
42
- /** if set to `true`, allow action to be performed in viewMode.
43
- * Defaults to `false` */
44
- viewMode?: boolean;
45
- }
46
- export {};
1
+ import type { ExcalidrawElement, OrderedExcalidrawElement } from "@excalidraw/element/types";
2
+ import type { CaptureUpdateActionType } from "@excalidraw/element";
3
+ import type { AppClassProperties, AppState, ExcalidrawProps, BinaryFiles, UIAppState } from "../types";
4
+ import type React from "react";
5
+ export type ActionSource = "ui" | "keyboard" | "contextMenu" | "api" | "commandPalette";
6
+ /** if false, the action should be prevented */
7
+ export type ActionResult = {
8
+ elements?: readonly ExcalidrawElement[] | null;
9
+ appState?: Partial<AppState> | null;
10
+ files?: BinaryFiles | null;
11
+ captureUpdate: CaptureUpdateActionType;
12
+ replaceFiles?: boolean;
13
+ } | false;
14
+ type ActionFn = (elements: readonly OrderedExcalidrawElement[], appState: Readonly<AppState>, formData: any, app: AppClassProperties) => ActionResult | Promise<ActionResult>;
15
+ export type UpdaterFn = (res: ActionResult) => void;
16
+ export type ActionFilterFn = (action: Action) => void;
17
+ export type ActionName = "copy" | "cut" | "paste" | "copyAsPng" | "copyAsSvg" | "copyText" | "sendBackward" | "bringForward" | "sendToBack" | "bringToFront" | "copyStyles" | "selectAll" | "pasteStyles" | "gridMode" | "zenMode" | "objectsSnapMode" | "stats" | "changeStrokeColor" | "changeBackgroundColor" | "changeFillStyle" | "changeStrokeWidth" | "changeStrokeShape" | "changeSloppiness" | "changeStrokeStyle" | "changeArrowhead" | "changeArrowType" | "changeOpacity" | "changeFontSize" | "toggleCanvasMenu" | "toggleEditMenu" | "undo" | "redo" | "finalize" | "changeProjectName" | "changeExportBackground" | "changeExportEmbedScene" | "changeExportScale" | "saveToActiveFile" | "saveFileToDisk" | "loadScene" | "duplicateSelection" | "deleteSelectedElements" | "changeViewBackgroundColor" | "clearCanvas" | "zoomIn" | "zoomOut" | "resetZoom" | "zoomToFit" | "zoomToFitSelection" | "zoomToFitSelectionInViewport" | "changeFontFamily" | "changeTextAlign" | "changeVerticalAlign" | "toggleFullScreen" | "toggleShortcuts" | "group" | "ungroup" | "goToCollaborator" | "addToLibrary" | "changeRoundness" | "alignTop" | "alignBottom" | "alignLeft" | "alignRight" | "alignVerticallyCentered" | "alignHorizontallyCentered" | "distributeHorizontally" | "distributeVertically" | "flipHorizontal" | "flipVertical" | "viewMode" | "exportWithDarkMode" | "toggleTheme" | "increaseFontSize" | "decreaseFontSize" | "unbindText" | "hyperlink" | "bindText" | "unlockAllElements" | "toggleElementLock" | "toggleLinearEditor" | "toggleEraserTool" | "toggleHandTool" | "selectAllElementsInFrame" | "removeAllElementsFromFrame" | "updateFrameRendering" | "setFrameAsActiveTool" | "setEmbeddableAsActiveTool" | "createContainerFromText" | "wrapTextInContainer" | "toggleLaserPointerTool" | "commandPalette" | "autoResize" | "elementStats" | "searchMenu" | "copyElementLink" | "linkToElement" | "cropEditor" | "wrapSelectionInFrame" | "toggleLassoTool" | "toggleShapeSwitch" | "togglePolygon";
18
+ export type PanelComponentProps = {
19
+ elements: readonly ExcalidrawElement[];
20
+ appState: AppState;
21
+ updateData: <T = any>(formData?: T) => void;
22
+ appProps: ExcalidrawProps;
23
+ data?: Record<string, any>;
24
+ app: AppClassProperties;
25
+ renderAction: (name: ActionName, data?: PanelComponentProps["data"]) => React.JSX.Element | null;
26
+ };
27
+ export interface Action {
28
+ name: ActionName;
29
+ label: string | ((elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, app: AppClassProperties) => string);
30
+ keywords?: string[];
31
+ icon?: React.ReactNode | ((appState: UIAppState, elements: readonly ExcalidrawElement[]) => React.ReactNode);
32
+ PanelComponent?: React.FC<PanelComponentProps>;
33
+ perform: ActionFn;
34
+ keyPriority?: number;
35
+ keyTest?: (event: React.KeyboardEvent | KeyboardEvent, appState: AppState, elements: readonly ExcalidrawElement[], app: AppClassProperties) => boolean;
36
+ predicate?: (elements: readonly ExcalidrawElement[], appState: AppState, appProps: ExcalidrawProps, app: AppClassProperties) => boolean;
37
+ checked?: (appState: Readonly<AppState>) => boolean;
38
+ trackEvent: false | {
39
+ category: "toolbar" | "element" | "canvas" | "export" | "history" | "menu" | "collab" | "hyperlink" | "search_menu" | "shape_switch";
40
+ action?: string;
41
+ predicate?: (appState: Readonly<AppState>, elements: readonly ExcalidrawElement[], value: any) => boolean;
42
+ };
43
+ /** if set to `true`, allow action to be performed in viewMode.
44
+ * Defaults to `false` */
45
+ viewMode?: boolean;
46
+ }
47
+ export {};
@@ -1 +1 @@
1
- export declare const trackEvent: (category: string, action: string, label?: string, value?: number) => void;
1
+ export declare const trackEvent: (category: string, action: string, label?: string, value?: number) => void;
@@ -1,33 +1,39 @@
1
- import type { AnimationFrameHandler } from "./animation-frame-handler";
2
- import type App from "./components/App";
3
- import type { LaserPointerOptions } from "@zsviczian/laser-pointer";
4
- export interface Trail {
5
- start(container: SVGSVGElement): void;
6
- stop(): void;
7
- startPath(x: number, y: number): void;
8
- addPointToPath(x: number, y: number): void;
9
- endPath(): void;
10
- }
11
- export interface AnimatedTrailOptions {
12
- fill: (trail: AnimatedTrail) => string;
13
- }
14
- export declare class AnimatedTrail implements Trail {
15
- private animationFrameHandler;
16
- private app;
17
- private options;
18
- private currentTrail?;
19
- private pastTrails;
20
- private container?;
21
- private trailElement;
22
- constructor(animationFrameHandler: AnimationFrameHandler, app: App, options: Partial<LaserPointerOptions> & Partial<AnimatedTrailOptions>);
23
- get hasCurrentTrail(): boolean;
24
- hasLastPoint(x: number, y: number): boolean;
25
- start(container?: SVGSVGElement): void;
26
- stop(): void;
27
- startPath(x: number, y: number): void;
28
- addPointToPath(x: number, y: number): void;
29
- endPath(): void;
30
- private update;
31
- private onFrame;
32
- private drawTrail;
33
- }
1
+ import { LaserPointer } from "@zsviczian/laser-pointer";
2
+ import type { LaserPointerOptions } from "@zsviczian/laser-pointer";
3
+ import type { AnimationFrameHandler } from "./animation-frame-handler";
4
+ import type App from "./components/App";
5
+ export interface Trail {
6
+ start(container: SVGSVGElement): void;
7
+ stop(): void;
8
+ startPath(x: number, y: number): void;
9
+ addPointToPath(x: number, y: number): void;
10
+ endPath(): void;
11
+ }
12
+ export interface AnimatedTrailOptions {
13
+ fill: (trail: AnimatedTrail) => string;
14
+ stroke?: (trail: AnimatedTrail) => string;
15
+ animateTrail?: boolean;
16
+ }
17
+ export declare class AnimatedTrail implements Trail {
18
+ private animationFrameHandler;
19
+ protected app: App;
20
+ private options;
21
+ private currentTrail?;
22
+ private pastTrails;
23
+ private container?;
24
+ private trailElement;
25
+ private trailAnimation?;
26
+ constructor(animationFrameHandler: AnimationFrameHandler, app: App, options: Partial<LaserPointerOptions> & Partial<AnimatedTrailOptions>);
27
+ get hasCurrentTrail(): boolean;
28
+ hasLastPoint(x: number, y: number): boolean;
29
+ start(container?: SVGSVGElement): void;
30
+ stop(): void;
31
+ startPath(x: number, y: number): void;
32
+ addPointToPath(x: number, y: number): void;
33
+ endPath(): void;
34
+ getCurrentTrail(): LaserPointer | undefined;
35
+ clearTrails(): void;
36
+ private update;
37
+ private onFrame;
38
+ private drawTrail;
39
+ }
@@ -1,16 +1,16 @@
1
- export type AnimationCallback = (timestamp: number) => void | boolean;
2
- export type AnimationTarget = {
3
- callback: AnimationCallback;
4
- stopped: boolean;
5
- };
6
- export declare class AnimationFrameHandler {
7
- private targets;
8
- private rafIds;
9
- register(key: object, callback: AnimationCallback): void;
10
- start(key: object): void;
11
- stop(key: object): void;
12
- private constructFrame;
13
- private scheduleFrame;
14
- private cancelFrame;
15
- private onFrame;
16
- }
1
+ export type AnimationCallback = (timestamp: number) => void | boolean;
2
+ export type AnimationTarget = {
3
+ callback: AnimationCallback;
4
+ stopped: boolean;
5
+ };
6
+ export declare class AnimationFrameHandler {
7
+ private targets;
8
+ private rafIds;
9
+ register(key: object, callback: AnimationCallback): void;
10
+ start(key: object): void;
11
+ stop(key: object): void;
12
+ private constructFrame;
13
+ private scheduleFrame;
14
+ private cancelFrame;
15
+ private onFrame;
16
+ }
@@ -1,89 +1,99 @@
1
- import type { AppState, NormalizedZoomValue } from "./types";
2
- export declare const getDefaultAppState: () => Omit<AppState, "offsetTop" | "offsetLeft" | "width" | "height">;
3
- export declare const clearAppStateForLocalStorage: (appState: Partial<AppState>) => {
4
- showWelcomeScreen?: boolean | undefined;
5
- activeTool?: ({
6
- lastActiveTool: import("./types").ActiveTool | null;
7
- locked: boolean;
8
- } & import("./types").ActiveTool) | undefined;
9
- penMode?: boolean | undefined;
10
- penDetected?: boolean | undefined;
11
- exportBackground?: boolean | undefined;
12
- exportEmbedScene?: boolean | undefined;
13
- exportWithDarkMode?: boolean | undefined;
14
- exportScale?: number | undefined;
15
- currentItemStrokeColor?: string | undefined;
16
- currentItemBackgroundColor?: string | undefined;
17
- currentItemFillStyle?: import("./element/types").FillStyle | undefined;
18
- currentItemStrokeWidth?: number | undefined;
19
- currentItemStrokeStyle?: import("./element/types").StrokeStyle | undefined;
20
- currentItemRoughness?: number | undefined;
21
- currentItemOpacity?: number | undefined;
22
- currentItemFontFamily?: number | undefined;
23
- currentItemFontSize?: number | undefined;
24
- currentItemTextAlign?: string | undefined;
25
- currentItemStartArrowhead?: import("./element/types").Arrowhead | null | undefined;
26
- currentItemEndArrowhead?: import("./element/types").Arrowhead | null | undefined;
27
- currentItemRoundness?: import("./element/types").StrokeRoundness | undefined;
28
- currentItemArrowType?: "round" | "sharp" | "elbow" | undefined;
29
- viewBackgroundColor?: string | undefined;
30
- scrollX?: number | undefined;
31
- scrollY?: number | undefined;
32
- cursorButton?: "up" | "down" | undefined;
33
- scrolledOutside?: boolean | undefined;
34
- name?: string | null | undefined;
35
- zoom?: Readonly<{
36
- value: NormalizedZoomValue;
37
- }> | undefined;
38
- openMenu?: "canvas" | "shape" | null | undefined;
39
- openSidebar?: {
40
- name: string;
41
- tab?: string | undefined;
42
- } | null | undefined;
43
- defaultSidebarDockedPreference?: boolean | undefined;
44
- lastPointerDownWith?: import("./element/types").PointerType | undefined;
45
- selectedElementIds?: Readonly<{
46
- [id: string]: true;
47
- }> | undefined;
48
- previousSelectedElementIds?: {
49
- [id: string]: true;
50
- } | undefined;
51
- shouldCacheIgnoreZoom?: boolean | undefined;
52
- zenModeEnabled?: boolean | undefined;
53
- theme?: import("./element/types").Theme | undefined;
54
- gridSize?: number | undefined;
55
- gridStep?: number | undefined;
56
- gridModeEnabled?: boolean | undefined;
57
- selectedGroupIds?: {
58
- [groupId: string]: boolean;
59
- } | undefined;
60
- editingGroupId?: string | null | undefined;
61
- stats?: {
62
- open: boolean;
63
- panels: number;
64
- } | undefined;
65
- currentChartType?: import("./element/types").ChartType | undefined;
66
- selectedLinearElement?: import("./element/linearElementEditor").LinearElementEditor | null | undefined;
67
- objectsSnapModeEnabled?: boolean | undefined;
68
- };
69
- export declare const cleanAppStateForExport: (appState: Partial<AppState>) => {
70
- viewBackgroundColor?: string | undefined;
71
- gridSize?: number | undefined;
72
- gridStep?: number | undefined;
73
- gridModeEnabled?: boolean | undefined;
74
- };
75
- export declare const clearAppStateForDatabase: (appState: Partial<AppState>) => {
76
- viewBackgroundColor?: string | undefined;
77
- gridSize?: number | undefined;
78
- gridStep?: number | undefined;
79
- gridModeEnabled?: boolean | undefined;
80
- };
81
- export declare const isEraserActive: ({ activeTool, }: {
82
- activeTool: AppState["activeTool"];
83
- }) => boolean;
84
- export declare const isHandToolActive: ({ activeTool, }: {
85
- activeTool: AppState["activeTool"];
86
- }) => boolean;
87
- export declare const isLaserPointerActive: ({ activeTool, }: {
88
- activeTool: AppState["activeTool"];
89
- }) => boolean;
1
+ import type { AppState, NormalizedZoomValue } from "./types";
2
+ export declare const getDefaultAppState: () => Omit<AppState, "offsetTop" | "offsetLeft" | "width" | "height">;
3
+ export declare const clearAppStateForLocalStorage: (appState: Partial<AppState>) => {
4
+ viewBackgroundColor?: string | undefined;
5
+ name?: string | null | undefined;
6
+ zoom?: Readonly<{
7
+ value: NormalizedZoomValue;
8
+ }> | undefined;
9
+ scrollX?: number | undefined;
10
+ scrollY?: number | undefined;
11
+ editingGroupId?: string | null | undefined;
12
+ selectedElementIds?: Readonly<{
13
+ [id: string]: true;
14
+ }> | undefined;
15
+ theme?: import("@excalidraw/element/types").Theme | undefined;
16
+ selectedGroupIds?: {
17
+ [groupId: string]: boolean;
18
+ } | undefined;
19
+ selectedLinearElement?: import("@excalidraw/element").LinearElementEditor | null | undefined;
20
+ zenModeEnabled?: boolean | undefined;
21
+ showWelcomeScreen?: boolean | undefined;
22
+ activeTool?: ({
23
+ lastActiveTool: import("./types").ActiveTool | null;
24
+ locked: boolean;
25
+ fromSelection: boolean;
26
+ } & import("./types").ActiveTool) | undefined;
27
+ penMode?: boolean | undefined;
28
+ penDetected?: boolean | undefined;
29
+ exportBackground?: boolean | undefined;
30
+ exportEmbedScene?: boolean | undefined;
31
+ exportWithDarkMode?: boolean | undefined;
32
+ exportScale?: number | undefined;
33
+ currentItemStrokeColor?: string | undefined;
34
+ currentItemBackgroundColor?: string | undefined;
35
+ currentItemFillStyle?: import("@excalidraw/element/types").FillStyle | undefined;
36
+ currentItemStrokeWidth?: number | undefined;
37
+ currentItemStrokeStyle?: import("@excalidraw/element/types").StrokeStyle | undefined;
38
+ currentItemRoughness?: number | undefined;
39
+ currentItemOpacity?: number | undefined;
40
+ currentItemFontFamily?: number | undefined;
41
+ currentItemFontSize?: number | undefined;
42
+ currentItemTextAlign?: string | undefined;
43
+ currentItemStartArrowhead?: import("@excalidraw/element/types").Arrowhead | null | undefined;
44
+ currentItemEndArrowhead?: import("@excalidraw/element/types").Arrowhead | null | undefined;
45
+ currentItemRoundness?: import("@excalidraw/element/types").StrokeRoundness | undefined;
46
+ currentItemArrowType?: "round" | "sharp" | "elbow" | undefined;
47
+ cursorButton?: "up" | "down" | undefined;
48
+ scrolledOutside?: boolean | undefined;
49
+ openMenu?: "canvas" | "shape" | null | undefined;
50
+ openSidebar?: {
51
+ name: string;
52
+ tab?: string | undefined;
53
+ } | null | undefined;
54
+ defaultSidebarDockedPreference?: boolean | undefined;
55
+ lastPointerDownWith?: import("@excalidraw/element/types").PointerType | undefined;
56
+ previousSelectedElementIds?: {
57
+ [id: string]: true;
58
+ } | undefined;
59
+ shouldCacheIgnoreZoom?: boolean | undefined;
60
+ gridSize?: number | undefined;
61
+ gridStep?: number | undefined;
62
+ gridModeEnabled?: boolean | undefined;
63
+ stats?: {
64
+ open: boolean;
65
+ panels: number;
66
+ } | undefined;
67
+ currentChartType?: import("@excalidraw/element/types").ChartType | undefined;
68
+ objectsSnapModeEnabled?: boolean | undefined;
69
+ lockedMultiSelections?: {
70
+ [groupId: string]: true;
71
+ } | undefined;
72
+ };
73
+ export declare const cleanAppStateForExport: (appState: Partial<AppState>) => {
74
+ viewBackgroundColor?: string | undefined;
75
+ gridSize?: number | undefined;
76
+ gridStep?: number | undefined;
77
+ gridModeEnabled?: boolean | undefined;
78
+ lockedMultiSelections?: {
79
+ [groupId: string]: true;
80
+ } | undefined;
81
+ };
82
+ export declare const clearAppStateForDatabase: (appState: Partial<AppState>) => {
83
+ viewBackgroundColor?: string | undefined;
84
+ gridSize?: number | undefined;
85
+ gridStep?: number | undefined;
86
+ gridModeEnabled?: boolean | undefined;
87
+ lockedMultiSelections?: {
88
+ [groupId: string]: true;
89
+ } | undefined;
90
+ };
91
+ export declare const isEraserActive: ({ activeTool, }: {
92
+ activeTool: AppState["activeTool"];
93
+ }) => boolean;
94
+ export declare const isHandToolActive: ({ activeTool, }: {
95
+ activeTool: AppState["activeTool"];
96
+ }) => boolean;
97
+ export declare const isLaserPointerActive: ({ activeTool, }: {
98
+ activeTool: AppState["activeTool"];
99
+ }) => boolean;
@@ -1,27 +1,27 @@
1
- import type { NonDeletedExcalidrawElement } from "./element/types";
2
- export type ChartElements = readonly NonDeletedExcalidrawElement[];
3
- export interface Spreadsheet {
4
- title: string | null;
5
- labels: string[] | null;
6
- values: number[];
7
- }
8
- export declare const NOT_SPREADSHEET = "NOT_SPREADSHEET";
9
- export declare const VALID_SPREADSHEET = "VALID_SPREADSHEET";
10
- type ParseSpreadsheetResult = {
11
- type: typeof NOT_SPREADSHEET;
12
- reason: string;
13
- } | {
14
- type: typeof VALID_SPREADSHEET;
15
- spreadsheet: Spreadsheet;
16
- };
17
- /**
18
- * @private exported for testing
19
- */
20
- export declare const tryParseNumber: (s: string) => number | null;
21
- /**
22
- * @private exported for testing
23
- */
24
- export declare const tryParseCells: (cells: string[][]) => ParseSpreadsheetResult;
25
- export declare const tryParseSpreadsheet: (text: string) => ParseSpreadsheetResult;
26
- export declare const renderSpreadsheet: (chartType: string, spreadsheet: Spreadsheet, x: number, y: number) => ChartElements;
27
- export {};
1
+ import type { NonDeletedExcalidrawElement } from "@excalidraw/element/types";
2
+ export type ChartElements = readonly NonDeletedExcalidrawElement[];
3
+ export interface Spreadsheet {
4
+ title: string | null;
5
+ labels: string[] | null;
6
+ values: number[];
7
+ }
8
+ export declare const NOT_SPREADSHEET = "NOT_SPREADSHEET";
9
+ export declare const VALID_SPREADSHEET = "VALID_SPREADSHEET";
10
+ type ParseSpreadsheetResult = {
11
+ type: typeof NOT_SPREADSHEET;
12
+ reason: string;
13
+ } | {
14
+ type: typeof VALID_SPREADSHEET;
15
+ spreadsheet: Spreadsheet;
16
+ };
17
+ /**
18
+ * @private exported for testing
19
+ */
20
+ export declare const tryParseNumber: (s: string) => number | null;
21
+ /**
22
+ * @private exported for testing
23
+ */
24
+ export declare const tryParseCells: (cells: string[][]) => ParseSpreadsheetResult;
25
+ export declare const tryParseSpreadsheet: (text: string) => ParseSpreadsheetResult;
26
+ export declare const renderSpreadsheet: (chartType: string, spreadsheet: Spreadsheet, x: number, y: number) => ChartElements;
27
+ export {};