@excalidraw/element 0.18.0-91c7748 → 0.18.0-a52cd20

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 (360) hide show
  1. package/dist/dev/index.js +15101 -8988
  2. package/dist/dev/index.js.map +4 -4
  3. package/dist/prod/index.js +20 -19
  4. package/dist/types/common/debug.d.ts +21 -0
  5. package/dist/types/common/src/appEventBus.d.ts +27 -0
  6. package/dist/types/common/src/bounds.d.ts +10 -0
  7. package/dist/types/common/src/colors.d.ts +81 -39
  8. package/dist/types/common/src/constants.d.ts +89 -34
  9. package/dist/types/common/src/editorInterface.d.ts +34 -0
  10. package/dist/types/common/src/font-metadata.d.ts +1 -3
  11. package/dist/types/common/src/index.d.ts +5 -0
  12. package/dist/types/common/src/keys.d.ts +5 -1
  13. package/dist/types/common/src/points.d.ts +1 -1
  14. package/dist/types/common/src/random.d.ts +7 -0
  15. package/dist/types/common/src/utility-types.d.ts +0 -1
  16. package/dist/types/common/src/utils.d.ts +52 -78
  17. package/dist/types/common/src/versionedSnapshotStore.d.ts +17 -0
  18. package/dist/types/element/src/Scene.d.ts +12 -8
  19. package/dist/types/element/src/align.d.ts +2 -2
  20. package/dist/types/element/src/arrowEndpointText.d.ts +49 -0
  21. package/dist/types/element/src/arrowheads.d.ts +3 -0
  22. package/dist/types/element/src/arrows/focus.d.ts +30 -0
  23. package/dist/types/element/src/arrows/helpers.d.ts +5 -0
  24. package/dist/types/element/src/binding.d.ts +85 -51
  25. package/dist/types/element/src/bounds.d.ts +25 -18
  26. package/dist/types/element/src/bucketFill.d.ts +110 -0
  27. package/dist/types/element/src/collision.d.ts +11 -3
  28. package/dist/types/element/src/comparisons.d.ts +10 -7
  29. package/dist/types/element/src/convertToShape.d.ts +23 -0
  30. package/dist/types/element/src/delta.d.ts +23 -1
  31. package/dist/types/element/src/distribute.d.ts +3 -2
  32. package/dist/types/element/src/dragElements.d.ts +30 -3
  33. package/dist/types/element/src/duplicate.d.ts +67 -6
  34. package/dist/types/element/src/elbowArrow.d.ts +2 -0
  35. package/dist/types/element/src/embeddable.d.ts +2 -2
  36. package/dist/types/element/src/flowchart.d.ts +11 -7
  37. package/dist/types/element/src/fractionalIndex.d.ts +4 -4
  38. package/dist/types/element/src/frame.d.ts +16 -11
  39. package/dist/types/element/src/groups.d.ts +9 -9
  40. package/dist/types/element/src/heading.d.ts +2 -1
  41. package/dist/types/element/src/image.d.ts +1 -11
  42. package/dist/types/element/src/index.d.ts +9 -4
  43. package/dist/types/element/src/linearElementEditor.d.ts +48 -30
  44. package/dist/types/element/src/mutateElement.d.ts +6 -2
  45. package/dist/types/element/src/newElement.d.ts +59 -9
  46. package/dist/types/element/src/renderElement.d.ts +21 -13
  47. package/dist/types/element/src/resizeElements.d.ts +12 -12
  48. package/dist/types/element/src/resizeTest.d.ts +6 -5
  49. package/dist/types/element/src/selection.d.ts +14 -14
  50. package/dist/types/element/src/shape.d.ts +36 -9
  51. package/dist/types/element/src/sizeHelpers.d.ts +6 -0
  52. package/dist/types/element/src/sortElements.d.ts +10 -0
  53. package/dist/types/element/src/stickyNote.d.ts +183 -0
  54. package/dist/types/element/src/textElement.d.ts +21 -10
  55. package/dist/types/element/src/textMeasurements.d.ts +1 -3
  56. package/dist/types/element/src/textWrapping.d.ts +26 -0
  57. package/dist/types/{excalidraw/data → element/src}/transform.d.ts +27 -8
  58. package/dist/types/element/src/transformHandles.d.ts +8 -27
  59. package/dist/types/element/src/typeChecks.d.ts +30 -31
  60. package/dist/types/element/src/types.d.ts +55 -20
  61. package/dist/types/element/src/utils.d.ts +22 -6
  62. package/dist/types/element/src/visualdebug.d.ts +58 -0
  63. package/dist/types/element/src/zindex.d.ts +7 -1
  64. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +215 -189
  65. package/dist/types/excalidraw/actions/actionAlign.d.ts +12 -13
  66. package/dist/types/excalidraw/actions/actionBoundText.d.ts +150 -133
  67. package/dist/types/excalidraw/actions/actionCanvas.d.ts +543 -1576
  68. package/dist/types/excalidraw/actions/actionClipboard.d.ts +152 -880
  69. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +73 -65
  70. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +237 -214
  71. package/dist/types/excalidraw/actions/actionDeselect.d.ts +182 -0
  72. package/dist/types/excalidraw/actions/actionDistribute.d.ts +4 -6
  73. package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +2 -3
  74. package/dist/types/excalidraw/actions/actionElementLink.d.ts +65 -63
  75. package/dist/types/excalidraw/actions/actionElementLock.d.ts +149 -132
  76. package/dist/types/excalidraw/actions/actionExport.d.ts +228 -1423
  77. package/dist/types/excalidraw/actions/actionFinalize.d.ts +11 -396
  78. package/dist/types/excalidraw/actions/actionFlip.d.ts +2 -3
  79. package/dist/types/excalidraw/actions/actionFrame.d.ts +373 -521
  80. package/dist/types/excalidraw/actions/actionGroup.d.ts +160 -151
  81. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +236 -214
  82. package/dist/types/excalidraw/actions/actionLink.d.ts +72 -64
  83. package/dist/types/excalidraw/actions/actionMenu.d.ts +64 -430
  84. package/dist/types/excalidraw/actions/actionNavigate.d.ts +18 -361
  85. package/dist/types/excalidraw/actions/actionProperties.d.ts +241 -2560
  86. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +80 -76
  87. package/dist/types/excalidraw/actions/actionStyles.d.ts +74 -65
  88. package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +3 -3
  89. package/dist/types/excalidraw/actions/{actionEmbeddable.d.ts → actionToggleArrowBinding.d.ts} +88 -79
  90. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +77 -70
  91. package/dist/types/excalidraw/actions/actionToggleMidpointSnapping.d.ts +195 -0
  92. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +74 -66
  93. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +65 -64
  94. package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +2 -2
  95. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +74 -66
  96. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +75 -67
  97. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +75 -67
  98. package/dist/types/excalidraw/actions/actionZindex.d.ts +2 -3
  99. package/dist/types/excalidraw/actions/colorTargets.d.ts +39 -0
  100. package/dist/types/excalidraw/actions/index.d.ts +5 -3
  101. package/dist/types/excalidraw/actions/manager.d.ts +1 -0
  102. package/dist/types/excalidraw/actions/register.d.ts +2 -2
  103. package/dist/types/excalidraw/actions/shortcuts.d.ts +1 -1
  104. package/dist/types/excalidraw/actions/types.d.ts +11 -7
  105. package/dist/types/excalidraw/{animated-trail.d.ts → animatedTrail.d.ts} +4 -3
  106. package/dist/types/excalidraw/appState.d.ts +50 -20
  107. package/dist/types/excalidraw/charts/charts.bar.d.ts +2 -0
  108. package/dist/types/excalidraw/charts/charts.constants.d.ts +48 -0
  109. package/dist/types/excalidraw/charts/charts.helpers.d.ts +32 -0
  110. package/dist/types/excalidraw/charts/charts.line.d.ts +2 -0
  111. package/dist/types/excalidraw/charts/charts.parse.d.ts +10 -0
  112. package/dist/types/excalidraw/charts/charts.radar.d.ts +2 -0
  113. package/dist/types/excalidraw/charts/charts.types.d.ts +18 -0
  114. package/dist/types/excalidraw/charts/index.d.ts +7 -0
  115. package/dist/types/excalidraw/clipboard.d.ts +13 -38
  116. package/dist/types/excalidraw/components/Actions.d.ts +26 -11
  117. package/dist/types/excalidraw/components/ActiveConfirmDialog.d.ts +1 -1
  118. package/dist/types/excalidraw/components/App.arrowText.d.ts +70 -0
  119. package/dist/types/excalidraw/components/App.bucketFill.d.ts +48 -0
  120. package/dist/types/excalidraw/components/App.cursor.d.ts +38 -0
  121. package/dist/types/excalidraw/components/App.d.ts +646 -132
  122. package/dist/types/excalidraw/components/App.drawshape.d.ts +55 -0
  123. package/dist/types/excalidraw/components/App.duplicate.d.ts +51 -0
  124. package/dist/types/excalidraw/components/App.flowchart.d.ts +21 -0
  125. package/dist/types/excalidraw/components/App.pan.d.ts +62 -0
  126. package/dist/types/excalidraw/components/App.textTool.d.ts +140 -0
  127. package/dist/types/excalidraw/components/App.toolDrag.d.ts +63 -0
  128. package/dist/types/excalidraw/components/App.viewport.d.ts +113 -0
  129. package/dist/types/excalidraw/components/App.wheel.d.ts +26 -0
  130. package/dist/types/excalidraw/components/AppStateObserver.d.ts +37 -0
  131. package/dist/types/excalidraw/components/Card.d.ts +1 -3
  132. package/dist/types/excalidraw/components/ColorPicker/ColorInput.d.ts +2 -4
  133. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +9 -5
  134. package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +3 -1
  135. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +7 -1
  136. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +10 -2
  137. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +5 -2
  138. package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +8 -1
  139. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -2
  140. package/dist/types/excalidraw/components/ColorPicker/colorTopPicksDnD.d.ts +11 -0
  141. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +2 -2
  142. package/dist/types/excalidraw/components/CommandPalette/CommandPalette.d.ts +1 -0
  143. package/dist/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +1 -2
  144. package/dist/types/excalidraw/components/CommandPalette/types.d.ts +2 -4
  145. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +4 -4
  146. package/dist/types/excalidraw/components/CursorHint.d.ts +46 -0
  147. package/dist/types/excalidraw/components/DarkModeToggle.d.ts +1 -1
  148. package/dist/types/excalidraw/components/DefaultSidebar.d.ts +9 -13
  149. package/dist/types/excalidraw/components/ElementLinkDialog.d.ts +1 -1
  150. package/dist/types/excalidraw/components/Ellipsify.d.ts +1 -2
  151. package/dist/types/excalidraw/components/ErrorDialog.d.ts +1 -1
  152. package/dist/types/excalidraw/components/EyeDropper.d.ts +1 -2
  153. package/dist/types/excalidraw/components/FileDropOverlay.d.ts +2 -0
  154. package/dist/types/excalidraw/components/FilledButton.d.ts +2 -1
  155. package/dist/types/excalidraw/components/FontPicker/FontPicker.d.ts +4 -1
  156. package/dist/types/excalidraw/components/FontPicker/FontPickerList.d.ts +6 -1
  157. package/dist/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +2 -1
  158. package/dist/types/excalidraw/components/FontPicker/fontTopPicksDnD.d.ts +12 -0
  159. package/dist/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +0 -1
  160. package/dist/types/excalidraw/components/HelpDialog.d.ts +1 -1
  161. package/dist/types/excalidraw/components/HintViewer.d.ts +4 -3
  162. package/dist/types/excalidraw/components/IconButton.d.ts +48 -0
  163. package/dist/types/excalidraw/components/IconPicker.d.ts +14 -9
  164. package/dist/types/excalidraw/components/InlineIcon.d.ts +3 -1
  165. package/dist/types/excalidraw/components/Island.d.ts +7 -0
  166. package/dist/types/excalidraw/components/LaserPointerButton.d.ts +2 -4
  167. package/dist/types/excalidraw/components/LayerUI.d.ts +6 -2
  168. package/dist/types/excalidraw/components/LibraryMenu.d.ts +1 -1
  169. package/dist/types/excalidraw/components/LibraryMenuControlButtons.d.ts +1 -1
  170. package/dist/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +1 -2
  171. package/dist/types/excalidraw/components/LibraryMenuSection.d.ts +7 -3
  172. package/dist/types/excalidraw/components/LibraryUnit.d.ts +9 -5
  173. package/dist/types/excalidraw/components/LoadingMessage.d.ts +0 -1
  174. package/dist/types/excalidraw/components/LockButton.d.ts +3 -4
  175. package/dist/types/excalidraw/components/MagicButton.d.ts +0 -2
  176. package/dist/types/excalidraw/components/MobileMenu.d.ts +5 -7
  177. package/dist/types/excalidraw/components/MobileToolbar.d.ts +9 -0
  178. package/dist/types/excalidraw/components/Modal.d.ts +0 -1
  179. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirm.d.ts +1 -1
  180. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +1 -1
  181. package/dist/types/excalidraw/components/PasteChartDialog.d.ts +4 -5
  182. package/dist/types/excalidraw/components/PenModeButton.d.ts +2 -5
  183. package/dist/types/excalidraw/components/Popover.d.ts +2 -3
  184. package/dist/types/excalidraw/components/PropertiesPopover.d.ts +1 -1
  185. package/dist/types/excalidraw/components/{ButtonIcon.d.ts → RadioButton.d.ts} +2 -5
  186. package/dist/types/excalidraw/components/RadioGroup.d.ts +0 -1
  187. package/dist/types/excalidraw/components/RadioSelection.d.ts +4 -4
  188. package/dist/types/excalidraw/components/Range.d.ts +10 -4
  189. package/dist/types/excalidraw/components/SVGLayer.d.ts +1 -1
  190. package/dist/types/excalidraw/components/ScrollableList.d.ts +0 -1
  191. package/dist/types/excalidraw/components/SearchMenu.d.ts +1 -1
  192. package/dist/types/excalidraw/components/Sidebar/Sidebar.d.ts +16 -22
  193. package/dist/types/excalidraw/components/Sidebar/SidebarHeader.d.ts +1 -1
  194. package/dist/types/excalidraw/components/Sidebar/SidebarTab.d.ts +1 -2
  195. package/dist/types/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +1 -2
  196. package/dist/types/excalidraw/components/Sidebar/SidebarTabTriggers.d.ts +1 -2
  197. package/dist/types/excalidraw/components/Sidebar/SidebarTabs.d.ts +1 -2
  198. package/dist/types/excalidraw/components/Spinner.d.ts +4 -4
  199. package/dist/types/excalidraw/components/Stats/Angle.d.ts +2 -2
  200. package/dist/types/excalidraw/components/Stats/CanvasGrid.d.ts +0 -1
  201. package/dist/types/excalidraw/components/Stats/Collapsible.d.ts +0 -1
  202. package/dist/types/excalidraw/components/Stats/Dimension.d.ts +2 -2
  203. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +2 -3
  204. package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +2 -2
  205. package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +2 -2
  206. package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +2 -2
  207. package/dist/types/excalidraw/components/Stats/Position.d.ts +3 -3
  208. package/dist/types/excalidraw/components/Stats/index.d.ts +7 -8
  209. package/dist/types/excalidraw/components/Stats/utils.d.ts +1 -1
  210. package/dist/types/excalidraw/components/TTDDialog/Chat/ChatHistoryMenu.d.ts +15 -0
  211. package/dist/types/excalidraw/components/TTDDialog/Chat/ChatInterface.d.ts +23 -0
  212. package/dist/types/excalidraw/components/TTDDialog/Chat/ChatMessage.d.ts +14 -0
  213. package/dist/types/excalidraw/components/TTDDialog/Chat/TTDChatPanel.d.ts +27 -0
  214. package/dist/types/excalidraw/components/TTDDialog/Chat/index.d.ts +3 -0
  215. package/dist/types/excalidraw/components/TTDDialog/Chat/useChatAgent.d.ts +8 -0
  216. package/dist/types/excalidraw/components/TTDDialog/CodeMirrorEditor.d.ts +11 -0
  217. package/dist/types/excalidraw/components/TTDDialog/MermaidToExcalidraw.d.ts +3 -2
  218. package/dist/types/excalidraw/components/TTDDialog/TTDContext.d.ts +13 -0
  219. package/dist/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +12 -29
  220. package/dist/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +3 -3
  221. package/dist/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +5 -2
  222. package/dist/types/excalidraw/components/TTDDialog/TTDDialogPanel.d.ts +13 -9
  223. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTab.d.ts +1 -2
  224. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabTrigger.d.ts +1 -2
  225. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTabTriggers.d.ts +1 -2
  226. package/dist/types/excalidraw/components/TTDDialog/TTDPreviewPanel.d.ts +9 -0
  227. package/dist/types/excalidraw/components/TTDDialog/TTDWelcomeMessage.d.ts +1 -0
  228. package/dist/types/excalidraw/components/TTDDialog/TextToDiagram.d.ts +9 -0
  229. package/dist/types/excalidraw/components/TTDDialog/common.d.ts +16 -16
  230. package/dist/types/excalidraw/components/TTDDialog/hooks/useChatManagement.d.ts +13 -0
  231. package/dist/types/excalidraw/components/TTDDialog/hooks/useMermaidRenderer.d.ts +14 -0
  232. package/dist/types/excalidraw/components/TTDDialog/hooks/useTextGeneration.d.ts +7 -0
  233. package/dist/types/excalidraw/components/TTDDialog/mermaid-lang-lite.d.ts +2 -0
  234. package/dist/types/excalidraw/components/TTDDialog/types.d.ts +95 -0
  235. package/dist/types/excalidraw/components/TTDDialog/useTTDChatStorage.d.ts +22 -0
  236. package/dist/types/excalidraw/components/TTDDialog/utils/chat.d.ts +10 -0
  237. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidAutoFix.d.ts +1 -0
  238. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidError.d.ts +10 -0
  239. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidValidation.d.ts +1 -0
  240. package/dist/types/excalidraw/components/TextField.d.ts +1 -0
  241. package/dist/types/excalidraw/components/Toast.d.ts +11 -7
  242. package/dist/types/excalidraw/components/ToolPopover.d.ts +22 -0
  243. package/dist/types/excalidraw/components/Toolbar.d.ts +11 -0
  244. package/dist/types/excalidraw/components/Tools.d.ts +151 -0
  245. package/dist/types/excalidraw/components/Tooltip.d.ts +15 -1
  246. package/dist/types/excalidraw/components/TopPicksDnD/TopPicksContextMenu.d.ts +14 -0
  247. package/dist/types/excalidraw/components/TopPicksDnD/TopPicksTip.d.ts +11 -0
  248. package/dist/types/excalidraw/components/TopPicksDnD/topPicksDnD.d.ts +58 -0
  249. package/dist/types/excalidraw/components/Trans.d.ts +2 -2
  250. package/dist/types/excalidraw/components/UserList.d.ts +3 -2
  251. package/dist/types/excalidraw/components/ViewportStatusFrame/ViewportStatusFrame.d.ts +11 -0
  252. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +10 -4
  253. package/dist/types/excalidraw/components/canvases/NewElementCanvas.d.ts +3 -0
  254. package/dist/types/excalidraw/components/canvases/StaticCanvas.d.ts +1 -1
  255. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +47 -35
  256. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +7 -5
  257. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuGroup.d.ts +3 -3
  258. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +13 -22
  259. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemCheckbox.d.ts +5 -0
  260. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +5 -4
  261. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +2 -2
  262. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemCustom.d.ts +2 -2
  263. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +6 -6
  264. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSub.d.ts +23 -0
  265. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSubContent.d.ts +8 -0
  266. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSubTrigger.d.ts +12 -0
  267. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuTrigger.d.ts +3 -4
  268. package/dist/types/excalidraw/components/dropdownMenu/common.d.ts +2 -2
  269. package/dist/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +2 -0
  270. package/dist/types/excalidraw/components/footer/Footer.d.ts +3 -1
  271. package/dist/types/excalidraw/components/hoc/withInternalFallback.d.ts +1 -1
  272. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +3 -3
  273. package/dist/types/excalidraw/components/icons.d.ts +51 -23
  274. package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +26 -3
  275. package/dist/types/excalidraw/components/main-menu/MainMenu.d.ts +39 -35
  276. package/dist/types/excalidraw/components/positionElementBesideCursor.d.ts +26 -0
  277. package/dist/types/excalidraw/components/shapeActionPredicates.d.ts +39 -0
  278. package/dist/types/excalidraw/data/blob.d.ts +373 -8
  279. package/dist/types/excalidraw/data/encode.d.ts +4 -4
  280. package/dist/types/excalidraw/data/encryption.d.ts +5 -5
  281. package/dist/types/excalidraw/data/filesystem.d.ts +5 -7
  282. package/dist/types/excalidraw/data/index.d.ts +8 -9
  283. package/dist/types/excalidraw/data/json.d.ts +192 -3
  284. package/dist/types/excalidraw/data/library.d.ts +25 -10
  285. package/dist/types/excalidraw/data/resave.d.ts +7 -2
  286. package/dist/types/excalidraw/data/restore.d.ts +25 -10
  287. package/dist/types/excalidraw/drawShapeTrail.d.ts +16 -0
  288. package/dist/types/excalidraw/editor-jotai.d.ts +11 -11
  289. package/dist/types/excalidraw/eraser/index.d.ts +2 -3
  290. package/dist/types/excalidraw/errors.d.ts +14 -0
  291. package/dist/types/excalidraw/fonts/Fonts.d.ts +3 -2
  292. package/dist/types/excalidraw/hooks/useAppStateValue.d.ts +29 -0
  293. package/dist/types/excalidraw/hooks/useLibraryItemSvg.d.ts +2 -2
  294. package/dist/types/excalidraw/hooks/useOutsideClick.d.ts +4 -3
  295. package/dist/types/excalidraw/hooks/useScrollPosition.d.ts +1 -2
  296. package/dist/types/excalidraw/hooks/useTextEditorFocus.d.ts +5 -5
  297. package/dist/types/excalidraw/i18n.d.ts +2 -2
  298. package/dist/types/excalidraw/{laser-trails.d.ts → laserTrails.d.ts} +5 -7
  299. package/dist/types/excalidraw/lasso/index.d.ts +2 -3
  300. package/dist/types/excalidraw/lasso/utils.d.ts +2 -0
  301. package/dist/types/excalidraw/renderOverrides.d.ts +9 -0
  302. package/dist/types/excalidraw/renderer/animation.d.ts +16 -0
  303. package/dist/types/excalidraw/renderer/helpers.d.ts +31 -8
  304. package/dist/types/excalidraw/renderer/interactiveScene.d.ts +7 -15
  305. package/dist/types/excalidraw/scene/Renderer.d.ts +491 -19
  306. package/dist/types/excalidraw/scene/export.d.ts +4 -4
  307. package/dist/types/excalidraw/scene/index.d.ts +2 -2
  308. package/dist/types/excalidraw/scene/types.d.ts +28 -8
  309. package/dist/types/excalidraw/shortcut.d.ts +1 -0
  310. package/dist/types/excalidraw/snapping.d.ts +12 -12
  311. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-bindings.d.ts +1 -1
  312. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-loader.d.ts +1 -1
  313. package/dist/types/excalidraw/subset/harfbuzz/harfbuzz-wasm.d.ts +1 -1
  314. package/dist/types/excalidraw/subset/woff2/woff2-loader.d.ts +2 -2
  315. package/dist/types/excalidraw/subset/woff2/woff2-wasm.d.ts +1 -1
  316. package/dist/types/excalidraw/textAutoResizeHandle.d.ts +15 -0
  317. package/dist/types/excalidraw/types.d.ts +644 -60
  318. package/dist/types/excalidraw/viewport.d.ts +302 -0
  319. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +14 -5
  320. package/dist/types/fractional-indexing/src/index.d.ts +29 -0
  321. package/dist/types/laser-pointer/src/index.d.ts +2 -0
  322. package/dist/types/laser-pointer/src/math.d.ts +16 -0
  323. package/dist/types/laser-pointer/src/simplify.d.ts +2 -0
  324. package/dist/types/laser-pointer/src/state.d.ts +36 -0
  325. package/dist/types/math/src/constants.d.ts +0 -1
  326. package/dist/types/math/src/curve.d.ts +23 -13
  327. package/dist/types/math/src/index.d.ts +1 -0
  328. package/dist/types/math/src/pca.d.ts +79 -0
  329. package/dist/types/math/src/point.d.ts +8 -2
  330. package/dist/types/math/src/polygon.d.ts +26 -2
  331. package/dist/types/math/src/range.d.ts +1 -3
  332. package/dist/types/math/src/segment.d.ts +9 -3
  333. package/dist/types/math/src/types.d.ts +25 -1
  334. package/dist/types/utils/src/export.d.ts +9 -8
  335. package/dist/types/utils/src/index.d.ts +1 -2
  336. package/dist/types/utils/src/shape.d.ts +8 -8
  337. package/package.json +10 -3
  338. package/dist/types/excalidraw/animation-frame-handler.d.ts +0 -16
  339. package/dist/types/excalidraw/charts.d.ts +0 -27
  340. package/dist/types/excalidraw/components/DiagramToCodePlugin/DiagramToCodePlugin.d.ts +0 -4
  341. package/dist/types/excalidraw/components/ExcalidrawLogo.d.ts +0 -16
  342. package/dist/types/excalidraw/components/FollowMode/FollowMode.d.ts +0 -10
  343. package/dist/types/excalidraw/components/HandButton.d.ts +0 -10
  344. package/dist/types/excalidraw/components/InitializeApp.d.ts +0 -10
  345. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +0 -9
  346. package/dist/types/excalidraw/components/ToolButton.d.ts +0 -49
  347. package/dist/types/excalidraw/components/footer/FooterCenter.d.ts +0 -8
  348. package/dist/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +0 -10
  349. package/dist/types/excalidraw/components/shapes.d.ts +0 -190
  350. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.Center.d.ts +0 -58
  351. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.Hints.d.ts +0 -19
  352. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.d.ts +0 -85
  353. package/dist/types/excalidraw/cursor.d.ts +0 -5
  354. package/dist/types/excalidraw/data/reconcile.d.ts +0 -7
  355. package/dist/types/excalidraw/index.d.ts +0 -47
  356. package/dist/types/excalidraw/polyfill.d.ts +0 -2
  357. package/dist/types/excalidraw/scene/scroll.d.ts +0 -23
  358. package/dist/types/excalidraw/scene/zoom.d.ts +0 -12
  359. package/dist/types/utils/src/bbox.d.ts +0 -9
  360. package/dist/types/utils/src/withinBounds.d.ts +0 -19
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  export declare const actionToggleViewMode: {
3
2
  name: "viewMode";
4
3
  label: string;
@@ -18,18 +17,36 @@ export declare const actionToggleViewMode: {
18
17
  } | null;
19
18
  showWelcomeScreen: boolean;
20
19
  isLoading: boolean;
21
- errorMessage: import("react").ReactNode;
20
+ errorMessage: React.ReactNode;
22
21
  activeEmbeddable: {
23
22
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
24
- state: "active" | "hover";
23
+ state: "hover" | "active";
25
24
  } | null;
26
25
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
27
26
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
28
27
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
29
28
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
30
29
  isBindingEnabled: boolean;
31
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
32
- suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
30
+ boxSelectionMode: import("../types").BoxSelectionMode;
31
+ bindingPreference: "enabled" | "disabled";
32
+ isMidpointSnappingEnabled: boolean;
33
+ showHints: boolean;
34
+ inputDevice: import("../types").InputDevice;
35
+ suggestedBinding: {
36
+ element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
37
+ midPoint?: import("@excalidraw/math").GlobalPoint;
38
+ } | null;
39
+ textToolHover: {
40
+ type: "text";
41
+ elementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
42
+ } | {
43
+ type: "container";
44
+ elementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
45
+ } | {
46
+ type: "arrow";
47
+ elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
48
+ anchor: "start" | "end" | "label";
49
+ } | null;
33
50
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
34
51
  frameRendering: {
35
52
  enabled: boolean;
@@ -37,14 +54,18 @@ export declare const actionToggleViewMode: {
37
54
  outline: boolean;
38
55
  clip: boolean;
39
56
  };
40
- editingFrame: string | null;
41
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
42
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
57
+ editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
58
+ elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
59
+ editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
43
60
  activeTool: {
44
61
  lastActiveTool: import("../types").ActiveTool | null;
45
62
  locked: boolean;
46
63
  fromSelection: boolean;
47
64
  } & import("../types").ActiveTool;
65
+ preferredSelectionTool: {
66
+ type: "selection" | "lasso";
67
+ initialized: boolean;
68
+ };
48
69
  penMode: boolean;
49
70
  penDetected: boolean;
50
71
  exportBackground: boolean;
@@ -52,48 +73,56 @@ export declare const actionToggleViewMode: {
52
73
  exportWithDarkMode: boolean;
53
74
  exportScale: number;
54
75
  currentItemStrokeColor: string;
76
+ currentItemStickynoteStrokeColor: string;
77
+ currentItemStickynoteBackgroundColor: string;
55
78
  currentItemBackgroundColor: string;
56
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
57
- currentItemStrokeWidth: number;
58
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
79
+ currentItemFillStyle: import("@excalidraw/element/types").ExcalidrawElement["fillStyle"];
80
+ currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
81
+ currentItemStrokeStyle: import("@excalidraw/element/types").ExcalidrawElement["strokeStyle"];
59
82
  currentItemRoughness: number;
83
+ currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
60
84
  currentItemOpacity: number;
61
- currentItemFontFamily: number;
85
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
62
86
  currentItemFontSize: number;
63
- currentItemTextAlign: string;
87
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
64
88
  currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
65
89
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
66
- currentHoveredFontFamily: number | null;
90
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
67
91
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
68
- currentItemArrowType: "round" | "sharp" | "elbow";
92
+ currentItemArrowType: "sharp" | "round" | "elbow";
69
93
  viewBackgroundColor: string;
70
94
  scrollX: number;
71
95
  scrollY: number;
96
+ scrollConstraints: import("../types").ScrollConstraints | null;
72
97
  cursorButton: "up" | "down";
73
98
  scrolledOutside: boolean;
74
99
  name: string | null;
75
100
  isResizing: boolean;
76
101
  isRotating: boolean;
77
- zoom: Readonly<{
78
- value: import("../types").NormalizedZoomValue;
79
- }>;
80
- openMenu: "canvas" | "shape" | null;
81
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
102
+ zoom: import("../types").Zoom;
103
+ openMenu: "canvas" | null;
104
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
82
105
  openSidebar: {
83
- name: string;
84
- tab?: string | undefined;
106
+ name: import("../types").SidebarName;
107
+ tab?: import("../types").SidebarTabName;
85
108
  } | null;
86
- openDialog: {
109
+ openDialog: null | {
87
110
  name: "imageExport" | "help" | "jsonExport";
88
111
  } | {
89
112
  name: "ttd";
90
- tab: "mermaid" | "text-to-diagram";
113
+ tab: "text-to-diagram" | "mermaid";
91
114
  } | {
92
115
  name: "commandPalette";
116
+ } | {
117
+ name: "settings";
93
118
  } | {
94
119
  name: "elementLinkSelector";
95
- sourceElementId: string;
96
- } | null;
120
+ sourceElementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
121
+ } | {
122
+ name: "charts";
123
+ data: import("../charts").Spreadsheet;
124
+ rawText: string;
125
+ };
97
126
  defaultSidebarDockedPreference: boolean;
98
127
  lastPointerDownWith: import("@excalidraw/element/types").PointerType;
99
128
  selectedElementIds: Readonly<{
@@ -108,9 +137,9 @@ export declare const actionToggleViewMode: {
108
137
  selectedElementsAreBeingDragged: boolean;
109
138
  shouldCacheIgnoreZoom: boolean;
110
139
  toast: {
111
- message: string;
112
- closable?: boolean | undefined;
113
- duration?: number | undefined;
140
+ message: React.ReactNode;
141
+ closable?: boolean;
142
+ duration?: number;
114
143
  } | null;
115
144
  zenModeEnabled: boolean;
116
145
  theme: import("@excalidraw/element/types").Theme;
@@ -120,45 +149,18 @@ export declare const actionToggleViewMode: {
120
149
  selectedGroupIds: {
121
150
  [groupId: string]: boolean;
122
151
  };
123
- editingGroupId: string | null;
152
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
124
153
  width: number;
125
154
  height: number;
126
155
  offsetTop: number;
127
156
  offsetLeft: number;
128
- fileHandle: import("browser-fs-access").FileSystemHandle | null;
129
- collaborators: Map<import("../types").SocketId, Readonly<{
130
- pointer?: import("../types").CollaboratorPointer | undefined;
131
- button?: "up" | "down" | undefined;
132
- selectedElementIds?: Readonly<{
133
- [id: string]: true;
134
- }> | undefined;
135
- username?: string | null | undefined;
136
- userState?: import("@excalidraw/common").UserIdleState | undefined;
137
- color?: {
138
- background: string;
139
- stroke: string;
140
- } | undefined;
141
- avatarUrl?: string | undefined;
142
- id?: string | undefined;
143
- socketId?: import("../types").SocketId | undefined;
144
- isCurrentUser?: boolean | undefined;
145
- isInCall?: boolean | undefined;
146
- isSpeaking?: boolean | undefined;
147
- isMuted?: boolean | undefined;
148
- }>>;
157
+ fileHandle: FileSystemFileHandle | null;
158
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
149
159
  stats: {
150
160
  open: boolean;
151
161
  panels: number;
152
162
  };
153
- currentChartType: import("@excalidraw/element/types").ChartType;
154
- pasteDialog: {
155
- shown: false;
156
- data: null;
157
- } | {
158
- shown: true;
159
- data: import("../charts").Spreadsheet;
160
- };
161
- showHyperlinkPopup: false | "editor" | "info";
163
+ showHyperlinkPopup: false | "info" | "editor";
162
164
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
163
165
  snapLines: readonly import("../snapping").SnapLine[];
164
166
  originSnapOffset: {
@@ -166,24 +168,30 @@ export declare const actionToggleViewMode: {
166
168
  y: number;
167
169
  } | null;
168
170
  objectsSnapModeEnabled: boolean;
169
- userToFollow: import("../types").UserToFollow | null;
170
- followedBy: Set<import("../types").SocketId>;
171
171
  isCropping: boolean;
172
- croppingElementId: string | null;
172
+ croppingElementId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
173
173
  searchMatches: Readonly<{
174
- focusedId: string | null;
174
+ focusedId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
175
175
  matches: readonly import("../types").SearchMatch[];
176
176
  }> | null;
177
177
  activeLockedId: string | null;
178
178
  lockedMultiSelections: {
179
179
  [groupId: string]: true;
180
180
  };
181
- stylesPanelMode: "compact" | "full";
181
+ bindMode: import("@excalidraw/element/types").BindMode;
182
+ colorTopPicks: {
183
+ elementStroke: readonly string[] | null;
184
+ elementBackground: readonly string[] | null;
185
+ bucketFill: readonly string[] | null;
186
+ stickyNoteStroke: readonly string[] | null;
187
+ stickyNoteBackground: readonly string[] | null;
188
+ };
189
+ fontTopPicks: readonly import("@excalidraw/element/types").FontFamilyValues[] | null;
182
190
  };
183
191
  captureUpdate: "EVENTUALLY";
184
192
  };
185
- checked: (appState: Readonly<import("../types").AppState>) => boolean;
186
- predicate: (elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: import("../types").AppState, appProps: import("../types").ExcalidrawProps) => boolean;
193
+ checked: (appState: Readonly<import("../types").UIAppState>) => boolean;
194
+ predicate: (elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: import("../types").AppState, appProps: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
187
195
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
188
196
  } & {
189
197
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  export declare const actionToggleZenMode: {
3
2
  name: "zenMode";
4
3
  label: string;
@@ -18,18 +17,36 @@ export declare const actionToggleZenMode: {
18
17
  } | null;
19
18
  showWelcomeScreen: boolean;
20
19
  isLoading: boolean;
21
- errorMessage: import("react").ReactNode;
20
+ errorMessage: React.ReactNode;
22
21
  activeEmbeddable: {
23
22
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
24
- state: "active" | "hover";
23
+ state: "hover" | "active";
25
24
  } | null;
26
25
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
27
26
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
28
27
  multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
29
28
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
30
29
  isBindingEnabled: boolean;
31
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
32
- suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
30
+ boxSelectionMode: import("../types").BoxSelectionMode;
31
+ bindingPreference: "enabled" | "disabled";
32
+ isMidpointSnappingEnabled: boolean;
33
+ showHints: boolean;
34
+ inputDevice: import("../types").InputDevice;
35
+ suggestedBinding: {
36
+ element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
37
+ midPoint?: import("@excalidraw/math").GlobalPoint;
38
+ } | null;
39
+ textToolHover: {
40
+ type: "text";
41
+ elementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
42
+ } | {
43
+ type: "container";
44
+ elementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
45
+ } | {
46
+ type: "arrow";
47
+ elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
48
+ anchor: "start" | "end" | "label";
49
+ } | null;
33
50
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
34
51
  frameRendering: {
35
52
  enabled: boolean;
@@ -37,14 +54,18 @@ export declare const actionToggleZenMode: {
37
54
  outline: boolean;
38
55
  clip: boolean;
39
56
  };
40
- editingFrame: string | null;
41
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
42
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
57
+ editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
58
+ elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
59
+ editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
43
60
  activeTool: {
44
61
  lastActiveTool: import("../types").ActiveTool | null;
45
62
  locked: boolean;
46
63
  fromSelection: boolean;
47
64
  } & import("../types").ActiveTool;
65
+ preferredSelectionTool: {
66
+ type: "selection" | "lasso";
67
+ initialized: boolean;
68
+ };
48
69
  penMode: boolean;
49
70
  penDetected: boolean;
50
71
  exportBackground: boolean;
@@ -52,48 +73,56 @@ export declare const actionToggleZenMode: {
52
73
  exportWithDarkMode: boolean;
53
74
  exportScale: number;
54
75
  currentItemStrokeColor: string;
76
+ currentItemStickynoteStrokeColor: string;
77
+ currentItemStickynoteBackgroundColor: string;
55
78
  currentItemBackgroundColor: string;
56
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
57
- currentItemStrokeWidth: number;
58
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
79
+ currentItemFillStyle: import("@excalidraw/element/types").ExcalidrawElement["fillStyle"];
80
+ currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
81
+ currentItemStrokeStyle: import("@excalidraw/element/types").ExcalidrawElement["strokeStyle"];
59
82
  currentItemRoughness: number;
83
+ currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
60
84
  currentItemOpacity: number;
61
- currentItemFontFamily: number;
85
+ currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
62
86
  currentItemFontSize: number;
63
- currentItemTextAlign: string;
87
+ currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
64
88
  currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
65
89
  currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
66
- currentHoveredFontFamily: number | null;
90
+ currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
67
91
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
68
- currentItemArrowType: "round" | "sharp" | "elbow";
92
+ currentItemArrowType: "sharp" | "round" | "elbow";
69
93
  viewBackgroundColor: string;
70
94
  scrollX: number;
71
95
  scrollY: number;
96
+ scrollConstraints: import("../types").ScrollConstraints | null;
72
97
  cursorButton: "up" | "down";
73
98
  scrolledOutside: boolean;
74
99
  name: string | null;
75
100
  isResizing: boolean;
76
101
  isRotating: boolean;
77
- zoom: Readonly<{
78
- value: import("../types").NormalizedZoomValue;
79
- }>;
80
- openMenu: "canvas" | "shape" | null;
81
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
102
+ zoom: import("../types").Zoom;
103
+ openMenu: "canvas" | null;
104
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | null;
82
105
  openSidebar: {
83
- name: string;
84
- tab?: string | undefined;
106
+ name: import("../types").SidebarName;
107
+ tab?: import("../types").SidebarTabName;
85
108
  } | null;
86
- openDialog: {
109
+ openDialog: null | {
87
110
  name: "imageExport" | "help" | "jsonExport";
88
111
  } | {
89
112
  name: "ttd";
90
- tab: "mermaid" | "text-to-diagram";
113
+ tab: "text-to-diagram" | "mermaid";
91
114
  } | {
92
115
  name: "commandPalette";
116
+ } | {
117
+ name: "settings";
93
118
  } | {
94
119
  name: "elementLinkSelector";
95
- sourceElementId: string;
96
- } | null;
120
+ sourceElementId: import("@excalidraw/element/types").ExcalidrawElement["id"];
121
+ } | {
122
+ name: "charts";
123
+ data: import("../charts").Spreadsheet;
124
+ rawText: string;
125
+ };
97
126
  defaultSidebarDockedPreference: boolean;
98
127
  lastPointerDownWith: import("@excalidraw/element/types").PointerType;
99
128
  selectedElementIds: Readonly<{
@@ -108,9 +137,9 @@ export declare const actionToggleZenMode: {
108
137
  selectedElementsAreBeingDragged: boolean;
109
138
  shouldCacheIgnoreZoom: boolean;
110
139
  toast: {
111
- message: string;
112
- closable?: boolean | undefined;
113
- duration?: number | undefined;
140
+ message: React.ReactNode;
141
+ closable?: boolean;
142
+ duration?: number;
114
143
  } | null;
115
144
  theme: import("@excalidraw/element/types").Theme;
116
145
  gridSize: number;
@@ -120,45 +149,18 @@ export declare const actionToggleZenMode: {
120
149
  selectedGroupIds: {
121
150
  [groupId: string]: boolean;
122
151
  };
123
- editingGroupId: string | null;
152
+ editingGroupId: import("@excalidraw/element/types").GroupId | null;
124
153
  width: number;
125
154
  height: number;
126
155
  offsetTop: number;
127
156
  offsetLeft: number;
128
- fileHandle: import("browser-fs-access").FileSystemHandle | null;
129
- collaborators: Map<import("../types").SocketId, Readonly<{
130
- pointer?: import("../types").CollaboratorPointer | undefined;
131
- button?: "up" | "down" | undefined;
132
- selectedElementIds?: Readonly<{
133
- [id: string]: true;
134
- }> | undefined;
135
- username?: string | null | undefined;
136
- userState?: import("@excalidraw/common").UserIdleState | undefined;
137
- color?: {
138
- background: string;
139
- stroke: string;
140
- } | undefined;
141
- avatarUrl?: string | undefined;
142
- id?: string | undefined;
143
- socketId?: import("../types").SocketId | undefined;
144
- isCurrentUser?: boolean | undefined;
145
- isInCall?: boolean | undefined;
146
- isSpeaking?: boolean | undefined;
147
- isMuted?: boolean | undefined;
148
- }>>;
157
+ fileHandle: FileSystemFileHandle | null;
158
+ collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
149
159
  stats: {
150
160
  open: boolean;
151
161
  panels: number;
152
162
  };
153
- currentChartType: import("@excalidraw/element/types").ChartType;
154
- pasteDialog: {
155
- shown: false;
156
- data: null;
157
- } | {
158
- shown: true;
159
- data: import("../charts").Spreadsheet;
160
- };
161
- showHyperlinkPopup: false | "editor" | "info";
163
+ showHyperlinkPopup: false | "info" | "editor";
162
164
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
163
165
  snapLines: readonly import("../snapping").SnapLine[];
164
166
  originSnapOffset: {
@@ -166,24 +168,30 @@ export declare const actionToggleZenMode: {
166
168
  y: number;
167
169
  } | null;
168
170
  objectsSnapModeEnabled: boolean;
169
- userToFollow: import("../types").UserToFollow | null;
170
- followedBy: Set<import("../types").SocketId>;
171
171
  isCropping: boolean;
172
- croppingElementId: string | null;
172
+ croppingElementId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
173
173
  searchMatches: Readonly<{
174
- focusedId: string | null;
174
+ focusedId: import("@excalidraw/element/types").ExcalidrawElement["id"] | null;
175
175
  matches: readonly import("../types").SearchMatch[];
176
176
  }> | null;
177
177
  activeLockedId: string | null;
178
178
  lockedMultiSelections: {
179
179
  [groupId: string]: true;
180
180
  };
181
- stylesPanelMode: "compact" | "full";
181
+ bindMode: import("@excalidraw/element/types").BindMode;
182
+ colorTopPicks: {
183
+ elementStroke: readonly string[] | null;
184
+ elementBackground: readonly string[] | null;
185
+ bucketFill: readonly string[] | null;
186
+ stickyNoteStroke: readonly string[] | null;
187
+ stickyNoteBackground: readonly string[] | null;
188
+ };
189
+ fontTopPicks: readonly import("@excalidraw/element/types").FontFamilyValues[] | null;
182
190
  };
183
191
  captureUpdate: "EVENTUALLY";
184
192
  };
185
- checked: (appState: Readonly<import("../types").AppState>) => boolean;
186
- predicate: (elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: import("../types").AppState, appProps: import("../types").ExcalidrawProps) => boolean;
193
+ checked: (appState: Readonly<import("../types").UIAppState>) => boolean;
194
+ predicate: (elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: import("../types").AppState, appProps: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
187
195
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
188
196
  } & {
189
197
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  export declare const actionSendBackward: {
3
2
  name: "sendBackward";
4
3
  label: string;
@@ -7,7 +6,7 @@ export declare const actionSendBackward: {
7
6
  trackEvent: {
8
7
  category: "element";
9
8
  };
10
- perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<import("../types").AppState>, value: any, app: import("../types").AppClassProperties) => {
9
+ perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<import("../types").AppState>, value: unknown, app: import("../types").AppClassProperties) => {
11
10
  elements: readonly import("@excalidraw/element/types").ExcalidrawElement[];
12
11
  appState: Readonly<import("../types").AppState>;
13
12
  captureUpdate: "IMMEDIATELY";
@@ -26,7 +25,7 @@ export declare const actionBringForward: {
26
25
  trackEvent: {
27
26
  category: "element";
28
27
  };
29
- perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<import("../types").AppState>, value: any, app: import("../types").AppClassProperties) => {
28
+ perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<import("../types").AppState>, value: unknown, app: import("../types").AppClassProperties) => {
30
29
  elements: readonly import("@excalidraw/element/types").ExcalidrawElement[];
31
30
  appState: Readonly<import("../types").AppState>;
32
31
  captureUpdate: "IMMEDIATELY";
@@ -0,0 +1,39 @@
1
+ import type { ColorPaletteCustom, ColorTuple } from "@excalidraw/common";
2
+ import type { ExcalidrawElement } from "@excalidraw/element/types";
3
+ import type { AppState } from "../types";
4
+ export type ColorProperty = "strokeColor" | "backgroundColor";
5
+ /**
6
+ * Sticky notes are their own color domain: own defaults, own top picks, no
7
+ * transparent. A pick targets the regular domain, the sticky domain, or both
8
+ * ("mixed" selections write both defaults and use the regular picker).
9
+ */
10
+ export type ColorTargetKind = "regular" | "sticky" | "mixed";
11
+ export type ColorDefaultKey = "currentItemStrokeColor" | "currentItemBackgroundColor" | "currentItemStickynoteStrokeColor" | "currentItemStickynoteBackgroundColor";
12
+ export type ColorTargetAppState = Pick<AppState, "selectedElementIds" | "editingTextElement" | "activeTool" | ColorDefaultKey>;
13
+ export type ColorTarget = {
14
+ kind: ColorTargetKind;
15
+ property: ColorProperty;
16
+ /** the current-item defaults a pick is written to (normalized per domain) */
17
+ appStateKeys: readonly ColorDefaultKey[];
18
+ /** the default shown when no element is targeted */
19
+ currentValue: string;
20
+ palette: ColorPaletteCustom;
21
+ topPicks: ColorTuple;
22
+ customizableTopPicks: keyof AppState["colorTopPicks"];
23
+ excludedColors: readonly string[] | undefined;
24
+ };
25
+ /**
26
+ * Who a stroke/background pick targets. Resolve it from the state an action
27
+ * runs against, at execution time — never capture it in a render closure:
28
+ * the memoized picker keeps a stale `onChange`, and the always-visible top
29
+ * picks fire it without a re-render.
30
+ *
31
+ * Targets are the selected color-capable elements (for stroke incl. bound
32
+ * labels, since a note's visible text is its label) plus the text being
33
+ * edited (`handleTextWysiwyg` deselects while editing) — or, for a
34
+ * background pick on a note's label, the note (see `getColorTargetElement`).
35
+ * With no target, the active tool decides the domain.
36
+ */
37
+ export declare const resolveColorTarget: (appState: ColorTargetAppState, elements: readonly ExcalidrawElement[], property: ColorProperty) => ColorTarget;
38
+ /** the current-item default updates for a picked color */
39
+ export declare const getColorTargetAppStateUpdates: (target: ColorTarget, color: string) => Partial<AppState>;
@@ -2,13 +2,13 @@ export { actionDeleteSelected } from "./actionDeleteSelected";
2
2
  export { actionBringForward, actionBringToFront, actionSendBackward, actionSendToBack, } from "./actionZindex";
3
3
  export { actionSelectAll } from "./actionSelectAll";
4
4
  export { actionDuplicateSelection } from "./actionDuplicateSelection";
5
- export { actionChangeStrokeColor, actionChangeBackgroundColor, actionChangeStrokeWidth, actionChangeFillStyle, actionChangeSloppiness, actionChangeOpacity, actionChangeFontSize, actionChangeFontFamily, actionChangeTextAlign, actionChangeVerticalAlign, actionChangeArrowProperties, } from "./actionProperties";
5
+ export { actionChangeStrokeColor, actionChangeBackgroundColor, actionChangeBucketFillBackgroundColor, actionChangeStrokeWidth, actionChangeFillStyle, actionChangeSloppiness, actionChangeFreedrawMode, actionChangeOpacity, actionChangeFontSize, actionChangeFontFamily, actionChangeTextAlign, actionChangeVerticalAlign, actionChangeArrowProperties, } from "./actionProperties";
6
6
  export { actionChangeViewBackgroundColor, actionClearCanvas, actionZoomIn, actionZoomOut, actionResetZoom, actionZoomToFit, actionToggleTheme, } from "./actionCanvas";
7
- export { actionSetEmbeddableAsActiveTool } from "./actionEmbeddable";
8
7
  export { actionFinalize } from "./actionFinalize";
8
+ export { actionDeselect } from "./actionDeselect";
9
9
  export { actionChangeProjectName, actionChangeExportBackground, actionSaveToActiveFile, actionSaveFileToDisk, actionLoadScene, } from "./actionExport";
10
10
  export { actionCopyStyles, actionPasteStyles } from "./actionStyles";
11
- export { actionToggleCanvasMenu, actionToggleEditMenu, actionShortcuts, } from "./actionMenu";
11
+ export { actionShortcuts } from "./actionMenu";
12
12
  export { actionGroup, actionUngroup } from "./actionGroup";
13
13
  export { actionGoToCollaborator } from "./actionNavigate";
14
14
  export { actionAddToLibrary } from "./actionAddToLibrary";
@@ -19,6 +19,8 @@ export { actionCopy, actionCut, actionCopyAsPng, actionCopyAsSvg, copyText, } fr
19
19
  export { actionToggleGridMode } from "./actionToggleGridMode";
20
20
  export { actionToggleZenMode } from "./actionToggleZenMode";
21
21
  export { actionToggleObjectsSnapMode } from "./actionToggleObjectsSnapMode";
22
+ export { actionToggleArrowBinding } from "./actionToggleArrowBinding";
23
+ export { actionToggleMidpointSnapping } from "./actionToggleMidpointSnapping";
22
24
  export { actionToggleStats } from "./actionToggleStats";
23
25
  export { actionUnbindText, actionBindText } from "./actionBoundText";
24
26
  export { actionLink } from "./actionLink";
@@ -11,6 +11,7 @@ export declare class ActionManager {
11
11
  constructor(updater: UpdaterFn, getAppState: () => AppState, getElementsIncludingDeleted: () => readonly OrderedExcalidrawElement[], app: AppClassProperties);
12
12
  registerAction(action: Action): void;
13
13
  registerAll(actions: readonly Action[]): void;
14
+ private isActionBlockedByViewportTransition;
14
15
  handleKeyDown(event: React.KeyboardEvent | KeyboardEvent): boolean;
15
16
  executeAction<T extends Action>(action: T, source?: ActionSource, value?: Parameters<T["perform"]>[2]): void;
16
17
  /**
@@ -1,5 +1,5 @@
1
1
  import type { Action } from "./types";
2
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;
3
+ export declare const register: <TData extends any, T extends Action<TData> = Action<TData>>(action: T) => T & {
4
+ keyTest?: unknown extends T["keyTest"] ? never : T["keyTest"];
5
5
  };
@@ -1,4 +1,4 @@
1
1
  import type { SubtypeOf } from "@excalidraw/common/utility-types";
2
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" | "resetZoom" | "zoomOut" | "zoomIn" | "zoomToFit" | "zoomToFitSelectionInViewport" | "zoomToFitSelection" | "toggleEraserTool" | "toggleHandTool" | "setFrameAsActiveTool" | "saveFileToDisk" | "saveToActiveFile" | "toggleShortcuts" | "wrapSelectionInFrame"> | "saveScene" | "imageExport" | "commandPalette" | "searchMenu";
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" | "resetZoom" | "zoomOut" | "zoomIn" | "zoomToFit" | "zoomToFitSelectionInViewport" | "zoomToFitSelection" | "saveFileToDisk" | "saveToActiveFile" | "toggleShortcuts" | "wrapSelectionInFrame"> | "saveScene" | "imageExport" | "commandPalette" | "searchMenu" | "toolLock";
4
4
  export declare const getShortcutFromShortcutName: (name: ShortcutName, idx?: number) => string;