@excalidraw/element 0.18.0-9ba0f5d → 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 (279) hide show
  1. package/dist/dev/index.js +13141 -8453
  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/colors.d.ts +24 -2
  7. package/dist/types/common/src/constants.d.ts +70 -7
  8. package/dist/types/common/src/index.d.ts +3 -0
  9. package/dist/types/common/src/keys.d.ts +4 -0
  10. package/dist/types/common/src/points.d.ts +1 -1
  11. package/dist/types/common/src/random.d.ts +7 -0
  12. package/dist/types/common/src/utils.d.ts +10 -50
  13. package/dist/types/common/src/versionedSnapshotStore.d.ts +17 -0
  14. package/dist/types/element/src/Scene.d.ts +9 -5
  15. package/dist/types/element/src/align.d.ts +2 -2
  16. package/dist/types/element/src/arrowEndpointText.d.ts +49 -0
  17. package/dist/types/element/src/arrowheads.d.ts +3 -0
  18. package/dist/types/element/src/arrows/focus.d.ts +30 -0
  19. package/dist/types/element/src/arrows/helpers.d.ts +5 -0
  20. package/dist/types/element/src/binding.d.ts +37 -17
  21. package/dist/types/element/src/bounds.d.ts +23 -8
  22. package/dist/types/element/src/bucketFill.d.ts +110 -0
  23. package/dist/types/element/src/collision.d.ts +7 -3
  24. package/dist/types/element/src/comparisons.d.ts +8 -5
  25. package/dist/types/element/src/convertToShape.d.ts +23 -0
  26. package/dist/types/element/src/delta.d.ts +23 -1
  27. package/dist/types/element/src/distribute.d.ts +3 -2
  28. package/dist/types/element/src/dragElements.d.ts +27 -0
  29. package/dist/types/element/src/duplicate.d.ts +64 -3
  30. package/dist/types/element/src/elbowArrow.d.ts +2 -0
  31. package/dist/types/element/src/embeddable.d.ts +2 -2
  32. package/dist/types/element/src/flowchart.d.ts +11 -7
  33. package/dist/types/element/src/fractionalIndex.d.ts +2 -2
  34. package/dist/types/element/src/frame.d.ts +11 -10
  35. package/dist/types/element/src/groups.d.ts +9 -9
  36. package/dist/types/element/src/index.d.ts +8 -1
  37. package/dist/types/element/src/linearElementEditor.d.ts +32 -10
  38. package/dist/types/element/src/mutateElement.d.ts +3 -1
  39. package/dist/types/element/src/newElement.d.ts +53 -3
  40. package/dist/types/element/src/renderElement.d.ts +21 -7
  41. package/dist/types/element/src/resizeElements.d.ts +2 -2
  42. package/dist/types/element/src/selection.d.ts +11 -7
  43. package/dist/types/element/src/shape.d.ts +28 -2
  44. package/dist/types/element/src/sizeHelpers.d.ts +6 -0
  45. package/dist/types/element/src/sortElements.d.ts +10 -0
  46. package/dist/types/element/src/stickyNote.d.ts +183 -0
  47. package/dist/types/element/src/textElement.d.ts +21 -10
  48. package/dist/types/element/src/textWrapping.d.ts +26 -0
  49. package/dist/types/element/src/transform.d.ts +26 -7
  50. package/dist/types/element/src/typeChecks.d.ts +29 -27
  51. package/dist/types/element/src/types.d.ts +48 -9
  52. package/dist/types/element/src/utils.d.ts +19 -6
  53. package/dist/types/element/src/visualdebug.d.ts +1 -2
  54. package/dist/types/element/src/zindex.d.ts +2 -2
  55. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +125 -53
  56. package/dist/types/excalidraw/actions/actionAlign.d.ts +6 -6
  57. package/dist/types/excalidraw/actions/actionBoundText.d.ts +85 -37
  58. package/dist/types/excalidraw/actions/actionCanvas.d.ts +356 -1019
  59. package/dist/types/excalidraw/actions/actionClipboard.d.ts +84 -36
  60. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +42 -18
  61. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +130 -55
  62. package/dist/types/excalidraw/actions/actionDeselect.d.ts +182 -0
  63. package/dist/types/excalidraw/actions/actionDistribute.d.ts +2 -3
  64. package/dist/types/excalidraw/actions/actionElementLink.d.ts +38 -18
  65. package/dist/types/excalidraw/actions/actionElementLock.d.ts +85 -37
  66. package/dist/types/excalidraw/actions/actionExport.d.ts +133 -359
  67. package/dist/types/excalidraw/actions/actionFinalize.d.ts +1 -0
  68. package/dist/types/excalidraw/actions/actionFrame.d.ts +187 -236
  69. package/dist/types/excalidraw/actions/actionGroup.d.ts +100 -52
  70. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +99 -21
  71. package/dist/types/excalidraw/actions/actionLink.d.ts +43 -19
  72. package/dist/types/excalidraw/actions/actionMenu.d.ts +38 -18
  73. package/dist/types/excalidraw/actions/actionProperties.d.ts +120 -56
  74. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +46 -22
  75. package/dist/types/excalidraw/actions/actionStyles.d.ts +43 -18
  76. package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +3 -3
  77. package/dist/types/excalidraw/actions/{actionEmbeddable.d.ts → actionToggleArrowBinding.d.ts} +57 -32
  78. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +46 -23
  79. package/dist/types/excalidraw/actions/actionToggleMidpointSnapping.d.ts +195 -0
  80. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +43 -19
  81. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +42 -23
  82. package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +1 -1
  83. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +43 -19
  84. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +44 -20
  85. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +43 -19
  86. package/dist/types/excalidraw/actions/colorTargets.d.ts +39 -0
  87. package/dist/types/excalidraw/actions/index.d.ts +4 -2
  88. package/dist/types/excalidraw/actions/manager.d.ts +1 -0
  89. package/dist/types/excalidraw/actions/shortcuts.d.ts +1 -1
  90. package/dist/types/excalidraw/actions/types.d.ts +8 -4
  91. package/dist/types/excalidraw/{animated-trail.d.ts → animatedTrail.d.ts} +4 -3
  92. package/dist/types/excalidraw/appState.d.ts +39 -13
  93. package/dist/types/excalidraw/charts/charts.bar.d.ts +2 -0
  94. package/dist/types/excalidraw/charts/charts.constants.d.ts +48 -0
  95. package/dist/types/excalidraw/charts/charts.helpers.d.ts +32 -0
  96. package/dist/types/excalidraw/charts/charts.line.d.ts +2 -0
  97. package/dist/types/excalidraw/charts/charts.parse.d.ts +10 -0
  98. package/dist/types/excalidraw/charts/charts.radar.d.ts +2 -0
  99. package/dist/types/excalidraw/charts/charts.types.d.ts +18 -0
  100. package/dist/types/excalidraw/charts/index.d.ts +7 -0
  101. package/dist/types/excalidraw/clipboard.d.ts +6 -7
  102. package/dist/types/excalidraw/components/Actions.d.ts +17 -12
  103. package/dist/types/excalidraw/components/ActiveConfirmDialog.d.ts +1 -1
  104. package/dist/types/excalidraw/components/App.arrowText.d.ts +70 -0
  105. package/dist/types/excalidraw/components/App.bucketFill.d.ts +48 -0
  106. package/dist/types/excalidraw/components/App.cursor.d.ts +38 -0
  107. package/dist/types/excalidraw/components/App.d.ts +604 -89
  108. package/dist/types/excalidraw/components/App.drawshape.d.ts +55 -0
  109. package/dist/types/excalidraw/components/App.duplicate.d.ts +51 -0
  110. package/dist/types/excalidraw/components/App.flowchart.d.ts +21 -0
  111. package/dist/types/excalidraw/components/App.pan.d.ts +62 -0
  112. package/dist/types/excalidraw/components/App.textTool.d.ts +140 -0
  113. package/dist/types/excalidraw/components/App.toolDrag.d.ts +63 -0
  114. package/dist/types/excalidraw/components/App.viewport.d.ts +113 -0
  115. package/dist/types/excalidraw/components/App.wheel.d.ts +26 -0
  116. package/dist/types/excalidraw/components/AppStateObserver.d.ts +37 -0
  117. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +9 -3
  118. package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +3 -1
  119. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +5 -1
  120. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +9 -2
  121. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +4 -2
  122. package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +8 -1
  123. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -1
  124. package/dist/types/excalidraw/components/ColorPicker/colorTopPicksDnD.d.ts +11 -0
  125. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +2 -1
  126. package/dist/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +1 -2
  127. package/dist/types/excalidraw/components/CommandPalette/types.d.ts +1 -1
  128. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +2 -2
  129. package/dist/types/excalidraw/components/CursorHint.d.ts +46 -0
  130. package/dist/types/excalidraw/components/EyeDropper.d.ts +1 -1
  131. package/dist/types/excalidraw/components/FileDropOverlay.d.ts +2 -0
  132. package/dist/types/excalidraw/components/FontPicker/FontPicker.d.ts +4 -1
  133. package/dist/types/excalidraw/components/FontPicker/FontPickerList.d.ts +6 -1
  134. package/dist/types/excalidraw/components/FontPicker/fontTopPicksDnD.d.ts +12 -0
  135. package/dist/types/excalidraw/components/IconButton.d.ts +48 -0
  136. package/dist/types/excalidraw/components/IconPicker.d.ts +14 -9
  137. package/dist/types/excalidraw/components/Island.d.ts +7 -0
  138. package/dist/types/excalidraw/components/LaserPointerButton.d.ts +2 -4
  139. package/dist/types/excalidraw/components/LayerUI.d.ts +5 -2
  140. package/dist/types/excalidraw/components/LibraryMenu.d.ts +1 -1
  141. package/dist/types/excalidraw/components/LibraryMenuSection.d.ts +6 -2
  142. package/dist/types/excalidraw/components/LibraryUnit.d.ts +7 -2
  143. package/dist/types/excalidraw/components/LockButton.d.ts +3 -4
  144. package/dist/types/excalidraw/components/MagicButton.d.ts +0 -2
  145. package/dist/types/excalidraw/components/MobileMenu.d.ts +4 -4
  146. package/dist/types/excalidraw/components/MobileToolbar.d.ts +9 -0
  147. package/dist/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +1 -1
  148. package/dist/types/excalidraw/components/PasteChartDialog.d.ts +4 -5
  149. package/dist/types/excalidraw/components/PenModeButton.d.ts +2 -5
  150. package/dist/types/excalidraw/components/Popover.d.ts +1 -3
  151. package/dist/types/excalidraw/components/PropertiesPopover.d.ts +1 -1
  152. package/dist/types/excalidraw/components/{ButtonIcon.d.ts → RadioButton.d.ts} +2 -5
  153. package/dist/types/excalidraw/components/Range.d.ts +10 -4
  154. package/dist/types/excalidraw/components/SVGLayer.d.ts +1 -1
  155. package/dist/types/excalidraw/components/SearchMenu.d.ts +1 -1
  156. package/dist/types/excalidraw/components/Sidebar/Sidebar.d.ts +1 -1
  157. package/dist/types/excalidraw/components/Stats/Angle.d.ts +2 -2
  158. package/dist/types/excalidraw/components/Stats/Dimension.d.ts +2 -2
  159. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +2 -2
  160. package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +2 -2
  161. package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +2 -2
  162. package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +2 -2
  163. package/dist/types/excalidraw/components/Stats/Position.d.ts +3 -3
  164. package/dist/types/excalidraw/components/Stats/utils.d.ts +1 -1
  165. package/dist/types/excalidraw/components/TTDDialog/Chat/ChatInterface.d.ts +2 -6
  166. package/dist/types/excalidraw/components/TTDDialog/Chat/TTDChatPanel.d.ts +2 -1
  167. package/dist/types/excalidraw/components/TTDDialog/CodeMirrorEditor.d.ts +11 -0
  168. package/dist/types/excalidraw/components/TTDDialog/TTDContext.d.ts +4 -4
  169. package/dist/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +11 -7
  170. package/dist/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +3 -3
  171. package/dist/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +4 -1
  172. package/dist/types/excalidraw/components/TTDDialog/TTDWelcomeMessage.d.ts +1 -0
  173. package/dist/types/excalidraw/components/TTDDialog/TextToDiagram.d.ts +2 -1
  174. package/dist/types/excalidraw/components/TTDDialog/mermaid-lang-lite.d.ts +2 -0
  175. package/dist/types/excalidraw/components/TTDDialog/types.d.ts +4 -0
  176. package/dist/types/excalidraw/components/TTDDialog/useTTDChatStorage.d.ts +3 -3
  177. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidAutoFix.d.ts +1 -0
  178. package/dist/types/excalidraw/components/TTDDialog/utils/mermaidError.d.ts +10 -0
  179. package/dist/types/excalidraw/components/Toast.d.ts +8 -4
  180. package/dist/types/excalidraw/components/ToolPopover.d.ts +3 -6
  181. package/dist/types/excalidraw/components/Toolbar.d.ts +11 -0
  182. package/dist/types/excalidraw/components/Tools.d.ts +151 -0
  183. package/dist/types/excalidraw/components/Tooltip.d.ts +15 -1
  184. package/dist/types/excalidraw/components/TopPicksDnD/TopPicksContextMenu.d.ts +14 -0
  185. package/dist/types/excalidraw/components/TopPicksDnD/TopPicksTip.d.ts +11 -0
  186. package/dist/types/excalidraw/components/TopPicksDnD/topPicksDnD.d.ts +58 -0
  187. package/dist/types/excalidraw/components/UserList.d.ts +3 -2
  188. package/dist/types/excalidraw/components/ViewportStatusFrame/ViewportStatusFrame.d.ts +11 -0
  189. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +4 -1
  190. package/dist/types/excalidraw/components/canvases/NewElementCanvas.d.ts +3 -0
  191. package/dist/types/excalidraw/components/canvases/StaticCanvas.d.ts +1 -1
  192. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +30 -16
  193. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +3 -2
  194. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +11 -12
  195. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemCheckbox.d.ts +5 -0
  196. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +2 -1
  197. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +2 -1
  198. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSub.d.ts +23 -0
  199. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSubContent.d.ts +8 -0
  200. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuSubTrigger.d.ts +12 -0
  201. package/dist/types/excalidraw/components/dropdownMenu/common.d.ts +1 -1
  202. package/dist/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +2 -0
  203. package/dist/types/excalidraw/components/footer/Footer.d.ts +3 -1
  204. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +2 -2
  205. package/dist/types/excalidraw/components/icons.d.ts +30 -10
  206. package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +26 -3
  207. package/dist/types/excalidraw/components/main-menu/MainMenu.d.ts +23 -14
  208. package/dist/types/excalidraw/components/positionElementBesideCursor.d.ts +26 -0
  209. package/dist/types/excalidraw/components/shapeActionPredicates.d.ts +39 -0
  210. package/dist/types/excalidraw/data/blob.d.ts +107 -60
  211. package/dist/types/excalidraw/data/filesystem.d.ts +3 -5
  212. package/dist/types/excalidraw/data/index.d.ts +6 -7
  213. package/dist/types/excalidraw/data/json.d.ts +62 -30
  214. package/dist/types/excalidraw/data/library.d.ts +1 -1
  215. package/dist/types/excalidraw/data/resave.d.ts +7 -2
  216. package/dist/types/excalidraw/drawShapeTrail.d.ts +16 -0
  217. package/dist/types/excalidraw/eraser/index.d.ts +2 -3
  218. package/dist/types/excalidraw/fonts/Fonts.d.ts +3 -2
  219. package/dist/types/excalidraw/hooks/useAppStateValue.d.ts +29 -0
  220. package/dist/types/excalidraw/hooks/useLibraryItemSvg.d.ts +1 -1
  221. package/dist/types/excalidraw/hooks/useTextEditorFocus.d.ts +5 -5
  222. package/dist/types/excalidraw/{laser-trails.d.ts → laserTrails.d.ts} +5 -7
  223. package/dist/types/excalidraw/lasso/index.d.ts +2 -3
  224. package/dist/types/excalidraw/lasso/utils.d.ts +2 -0
  225. package/dist/types/excalidraw/renderOverrides.d.ts +9 -0
  226. package/dist/types/excalidraw/renderer/animation.d.ts +5 -1
  227. package/dist/types/excalidraw/renderer/helpers.d.ts +25 -0
  228. package/dist/types/excalidraw/renderer/interactiveScene.d.ts +2 -4
  229. package/dist/types/excalidraw/scene/Renderer.d.ts +489 -20
  230. package/dist/types/excalidraw/scene/export.d.ts +3 -3
  231. package/dist/types/excalidraw/scene/index.d.ts +2 -2
  232. package/dist/types/excalidraw/scene/types.d.ts +7 -4
  233. package/dist/types/excalidraw/snapping.d.ts +7 -7
  234. package/dist/types/excalidraw/textAutoResizeHandle.d.ts +15 -0
  235. package/dist/types/excalidraw/types.d.ts +619 -42
  236. package/dist/types/excalidraw/viewport.d.ts +302 -0
  237. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +12 -3
  238. package/dist/types/fractional-indexing/src/index.d.ts +29 -0
  239. package/dist/types/laser-pointer/src/index.d.ts +2 -0
  240. package/dist/types/laser-pointer/src/math.d.ts +16 -0
  241. package/dist/types/laser-pointer/src/simplify.d.ts +2 -0
  242. package/dist/types/laser-pointer/src/state.d.ts +36 -0
  243. package/dist/types/math/src/constants.d.ts +0 -1
  244. package/dist/types/math/src/curve.d.ts +23 -13
  245. package/dist/types/math/src/index.d.ts +1 -0
  246. package/dist/types/math/src/pca.d.ts +79 -0
  247. package/dist/types/math/src/point.d.ts +8 -2
  248. package/dist/types/math/src/polygon.d.ts +25 -1
  249. package/dist/types/math/src/segment.d.ts +6 -0
  250. package/dist/types/math/src/types.d.ts +25 -1
  251. package/dist/types/utils/src/export.d.ts +4 -3
  252. package/dist/types/utils/src/index.d.ts +1 -2
  253. package/dist/types/utils/src/shape.d.ts +2 -2
  254. package/package.json +4 -3
  255. package/dist/types/excalidraw/animation-frame-handler.d.ts +0 -16
  256. package/dist/types/excalidraw/charts.d.ts +0 -27
  257. package/dist/types/excalidraw/components/DiagramToCodePlugin/DiagramToCodePlugin.d.ts +0 -4
  258. package/dist/types/excalidraw/components/ExcalidrawLogo.d.ts +0 -15
  259. package/dist/types/excalidraw/components/FollowMode/FollowMode.d.ts +0 -10
  260. package/dist/types/excalidraw/components/HandButton.d.ts +0 -10
  261. package/dist/types/excalidraw/components/InitializeApp.d.ts +0 -10
  262. package/dist/types/excalidraw/components/MobileToolBar.d.ts +0 -10
  263. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +0 -8
  264. package/dist/types/excalidraw/components/TTDDialog/utils/TTDStreamFetch.d.ts +0 -24
  265. package/dist/types/excalidraw/components/ToolButton.d.ts +0 -49
  266. package/dist/types/excalidraw/components/footer/FooterCenter.d.ts +0 -8
  267. package/dist/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +0 -11
  268. package/dist/types/excalidraw/components/shapes.d.ts +0 -190
  269. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.Center.d.ts +0 -58
  270. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.Hints.d.ts +0 -19
  271. package/dist/types/excalidraw/components/welcome-screen/WelcomeScreen.d.ts +0 -84
  272. package/dist/types/excalidraw/cursor.d.ts +0 -5
  273. package/dist/types/excalidraw/data/reconcile.d.ts +0 -7
  274. package/dist/types/excalidraw/index.d.ts +0 -46
  275. package/dist/types/excalidraw/polyfill.d.ts +0 -2
  276. package/dist/types/excalidraw/scene/scroll.d.ts +0 -18
  277. package/dist/types/excalidraw/scene/zoom.d.ts +0 -12
  278. package/dist/types/utils/src/bbox.d.ts +0 -9
  279. package/dist/types/utils/src/withinBounds.d.ts +0 -19
@@ -1,9 +1,11 @@
1
- import type { ColorPaletteCustom } from "@excalidraw/common";
1
+ import { type ColorPaletteCustom } from "@excalidraw/common";
2
+ import type { Theme } from "@excalidraw/element/types";
2
3
  interface ShadeListProps {
4
+ theme: Theme;
3
5
  color: string | null;
4
6
  onChange: (color: string) => void;
5
7
  palette: ColorPaletteCustom;
6
8
  showHotKey?: boolean;
7
9
  }
8
- export declare const ShadeList: ({ color, onChange, palette, showHotKey, }: ShadeListProps) => import("react/jsx-runtime").JSX.Element;
10
+ export declare const ShadeList: ({ theme, color, onChange, palette, showHotKey, }: ShadeListProps) => import("react/jsx-runtime").JSX.Element;
9
11
  export {};
@@ -1,9 +1,16 @@
1
+ import type { Theme } from "@excalidraw/element/types";
1
2
  import type { ColorPickerType } from "./colorPickerUtils";
2
3
  interface TopPicksProps {
4
+ theme: Theme;
3
5
  onChange: (color: string) => void;
4
6
  type: ColorPickerType;
5
7
  activeColor: string | null;
6
8
  topPicks?: readonly string[];
9
+ /** present when the strip is user-customizable — enables the right-click
10
+ * context menu resetting the strip to its default picks */
11
+ onReset?: () => void;
12
+ /** whether custom picks are currently applied (enables the reset item) */
13
+ isCustomized?: boolean;
7
14
  }
8
- export declare const TopPicks: ({ onChange, type, activeColor, topPicks, }: TopPicksProps) => import("react/jsx-runtime").JSX.Element | null;
15
+ export declare const TopPicks: ({ theme, onChange, type, activeColor, topPicks, onReset, isCustomized, }: TopPicksProps) => import("react/jsx-runtime").JSX.Element | null;
9
16
  export {};
@@ -14,7 +14,7 @@ export declare const isCustomColor: ({ color, palette, }: {
14
14
  }) => boolean;
15
15
  export declare const getMostUsedCustomColors: (elements: readonly ExcalidrawElement[], type: "elementBackground" | "elementStroke", palette: ColorPaletteCustom) => string[];
16
16
  export type ActiveColorPickerSectionAtomType = "custom" | "baseColors" | "shades" | "hex" | null;
17
- export declare const activeColorPickerSectionAtom: import("jotai/vanilla/atom").PrimitiveAtom<ActiveColorPickerSectionAtomType> & {
17
+ export declare const activeColorPickerSectionAtom: import("jotai").PrimitiveAtom<ActiveColorPickerSectionAtomType> & {
18
18
  init: ActiveColorPickerSectionAtomType;
19
19
  };
20
20
  export type ColorPickerType = "canvasBackground" | "elementBackground" | "elementStroke";
@@ -0,0 +1,11 @@
1
+ import type { TopPicksDnD } from "../TopPicksDnD/topPicksDnD";
2
+ export type ColorPickerDnD = TopPicksDnD<string>;
3
+ export declare const ColorPickerDnDContext: import("react").Context<ColorPickerDnD | null>;
4
+ export declare const useColorPickerDnD: () => ColorPickerDnD | null;
5
+ /** pinning colors from the picker popup (palette/shades/custom) or the
6
+ * active-color trigger to the top-picks strip, and reordering the strip */
7
+ export declare const useColorTopPicksDnD: ({ enabled, picks, onPicksChange, }: {
8
+ enabled: boolean;
9
+ picks: readonly string[];
10
+ onPicksChange: (picks: string[]) => void;
11
+ }) => ColorPickerDnD;
@@ -12,9 +12,10 @@ interface ColorPickerKeyNavHandlerProps {
12
12
  activeShade: number;
13
13
  onEyeDropperToggle: (force?: boolean) => void;
14
14
  onEscape: (event: React.KeyboardEvent | KeyboardEvent) => void;
15
+ excludedColors?: readonly string[];
15
16
  }
16
17
  /**
17
18
  * @returns true if the event was handled
18
19
  */
19
- export declare const colorPickerKeyNavHandler: ({ event, activeColorPickerSection, palette, color, onChange, customColors, setActiveColorPickerSection, updateData, activeShade, onEyeDropperToggle, onEscape, }: ColorPickerKeyNavHandlerProps) => boolean;
20
+ export declare const colorPickerKeyNavHandler: ({ event, activeColorPickerSection, palette, color, onChange, customColors, setActiveColorPickerSection, updateData, activeShade, onEyeDropperToggle, onEscape, excludedColors, }: ColorPickerKeyNavHandlerProps) => boolean;
20
21
  export {};
@@ -1,2 +1 @@
1
- import type { CommandPaletteItem } from "./types";
2
- export declare const toggleTheme: CommandPaletteItem;
1
+ export {};
@@ -14,7 +14,7 @@ export type CommandPaletteItem = {
14
14
  category: string;
15
15
  order?: number;
16
16
  predicate?: boolean | Action["predicate"];
17
- shortcut?: string;
17
+ shortcut?: string | null;
18
18
  /** if false, command will not show while in view mode */
19
19
  viewMode?: boolean;
20
20
  perform: (data: {
@@ -2,7 +2,7 @@ import type { ConvertibleTypes, ExcalidrawElement, ExcalidrawTextContainer, Exca
2
2
  import type { Scene } from "@excalidraw/element";
3
3
  import "./ConvertElementTypePopup.scss";
4
4
  import type App from "./App";
5
- export declare const convertElementTypePopupAtom: import("jotai/vanilla/atom").PrimitiveAtom<{
5
+ export declare const convertElementTypePopupAtom: import("jotai").PrimitiveAtom<{
6
6
  type: "panel";
7
7
  } | null> & {
8
8
  init: {
@@ -19,5 +19,5 @@ export declare const convertElementTypes: (app: App, { conversionType, nextType,
19
19
  nextType?: ConvertibleTypes;
20
20
  direction?: "left" | "right";
21
21
  }) => boolean;
22
- export declare const getConversionTypeFromElements: (elements: ExcalidrawElement[]) => ConversionType;
22
+ export declare const getConversionTypeFromElements: (elements: readonly ExcalidrawElement[]) => ConversionType;
23
23
  export default ConvertElementTypePopup;
@@ -0,0 +1,46 @@
1
+ import "./CursorHint.scss";
2
+ import type { AppClassProperties, AppState } from "../types";
3
+ /**
4
+ * While a recently shown hint is still fresh in memory, tool-switch hints
5
+ * are suppressed (repeatedly re-picking a tool you just used doesn't need
6
+ * the reminder). Cycling arrow types and numeric shortcuts bypass this.
7
+ */
8
+ export declare const CURSOR_HINT_COOLDOWN: number;
9
+ export declare const cursorHintAtom: import("jotai").PrimitiveAtom<{
10
+ content: React.ReactNode;
11
+ /** unique per trigger so a re-trigger restarts the hide timer */
12
+ nonce: number;
13
+ } | null> & {
14
+ init: {
15
+ content: React.ReactNode;
16
+ /** unique per trigger so a re-trigger restarts the hide timer */
17
+ nonce: number;
18
+ } | null;
19
+ };
20
+ /**
21
+ * Owns the cursor-hint policy. App reports semantic interaction events
22
+ * (what the user did); all decisions about whether and what to show —
23
+ * cooldown, bypasses, hint content — are made here.
24
+ */
25
+ export declare class CursorHints {
26
+ private app;
27
+ private lastShownAt;
28
+ constructor(app: AppClassProperties);
29
+ /**
30
+ * Shows a transient tooltip next to the cursor, hidden automatically
31
+ * after a short delay. Repeated calls replace the content and restart
32
+ * the timer.
33
+ */
34
+ show: (content: React.ReactNode) => void;
35
+ private isOnCooldown;
36
+ /** arrow type cycled via shortcut (arrow tool already active) */
37
+ onArrowTypeCycled: (arrowType: AppState["currentItemArrowType"]) => void;
38
+ /** arrow/line tool picked via keyboard shortcut */
39
+ onToolShortcut: (tool: "arrow" | "line", source: "letter" | "digit") => void;
40
+ }
41
+ /**
42
+ * Transient tooltip shown next to the cursor for added affordance after
43
+ * actions that have no other visual feedback near the pointer (e.g. cycling
44
+ * arrow types via shortcut). Trigger via `app.cursorHints`.
45
+ */
46
+ export declare const CursorHint: () => import("react/jsx-runtime").JSX.Element | null;
@@ -13,7 +13,7 @@ export type EyeDropperProperties = {
13
13
  **/
14
14
  colorPickerType: ColorPickerType;
15
15
  };
16
- export declare const activeEyeDropperAtom: import("jotai/vanilla/atom").PrimitiveAtom<EyeDropperProperties | null> & {
16
+ export declare const activeEyeDropperAtom: import("jotai").PrimitiveAtom<EyeDropperProperties | null> & {
17
17
  init: EyeDropperProperties | null;
18
18
  };
19
19
  export declare const EyeDropper: React.FC<{
@@ -0,0 +1,2 @@
1
+ import "./FileDropOverlay.scss";
2
+ export declare const FileDropOverlay: () => import("react/jsx-runtime").JSX.Element | null;
@@ -12,11 +12,14 @@ interface FontPickerProps {
12
12
  isOpened: boolean;
13
13
  selectedFontFamily: FontFamilyValues | null;
14
14
  hoveredFontFamily: FontFamilyValues | null;
15
+ /** user-customized top picks (`appState.fontTopPicks`) */
16
+ topPicks: readonly FontFamilyValues[] | null;
15
17
  onSelect: (fontFamily: FontFamilyValues) => void;
18
+ onTopPicksChange: (fontTopPicks: FontFamilyValues[] | null) => void;
16
19
  onHover: (fontFamily: FontFamilyValues) => void;
17
20
  onLeave: () => void;
18
21
  onPopupChange: (open: boolean) => void;
19
22
  compactMode?: boolean;
20
23
  }
21
- export declare const FontPicker: React.MemoExoticComponent<({ isOpened, selectedFontFamily, hoveredFontFamily, onSelect, onHover, onLeave, onPopupChange, compactMode, }: FontPickerProps) => import("react/jsx-runtime").JSX.Element>;
24
+ export declare const FontPicker: React.MemoExoticComponent<({ isOpened, selectedFontFamily, hoveredFontFamily, topPicks, onSelect, onTopPicksChange, onHover, onLeave, onPopupChange, compactMode, }: FontPickerProps) => import("react/jsx-runtime").JSX.Element>;
22
25
  export {};
@@ -3,6 +3,7 @@ import { type FontFamilyValues } from "@excalidraw/element/types";
3
3
  import type { ValueOf } from "@excalidraw/common/utility-types";
4
4
  import { DropDownMenuItemBadgeType } from "../dropdownMenu/DropdownMenuItem";
5
5
  import type { JSX } from "react";
6
+ import type { ExcalidrawFontFace } from "../../fonts/ExcalidrawFontFace";
6
7
  export interface FontDescriptor {
7
8
  value: number;
8
9
  icon: JSX.Element;
@@ -21,6 +22,10 @@ interface FontPickerListProps {
21
22
  onLeave: () => void;
22
23
  onOpen: () => void;
23
24
  onClose: () => void;
25
+ /** present only while the top picks are customized */
26
+ onResetTopPicks?: () => void;
24
27
  }
25
- export declare const FontPickerList: React.MemoExoticComponent<({ selectedFontFamily, hoveredFontFamily, onSelect, onHover, onLeave, onOpen, onClose, }: FontPickerListProps) => import("react/jsx-runtime").JSX.Element>;
28
+ export declare const getFontFamilyIcon: (fontFamily: FontFamilyValues) => JSX.Element;
29
+ export declare const getFontFamilyLabel: (fontFamily: FontFamilyValues, fontFaces: ExcalidrawFontFace[]) => string;
30
+ export declare const FontPickerList: React.MemoExoticComponent<({ selectedFontFamily, hoveredFontFamily, onSelect, onHover, onLeave, onOpen, onClose, onResetTopPicks, }: FontPickerListProps) => import("react/jsx-runtime").JSX.Element>;
26
31
  export {};
@@ -0,0 +1,12 @@
1
+ import type { FontFamilyValues } from "@excalidraw/element/types";
2
+ import type { TopPicksDnD } from "../TopPicksDnD/topPicksDnD";
3
+ export type FontPickerDnD = TopPicksDnD<FontFamilyValues>;
4
+ export declare const FontPickerDnDContext: import("react").Context<FontPickerDnD | null>;
5
+ export declare const useFontPickerDnD: () => FontPickerDnD | null;
6
+ /** pinning fonts from the font picker list to the top-picks strip, and
7
+ * reordering the strip */
8
+ export declare const useFontTopPicksDnD: ({ enabled, picks, onPicksChange, }: {
9
+ enabled: boolean;
10
+ picks: readonly FontFamilyValues[];
11
+ onPicksChange: (picks: FontFamilyValues[]) => void;
12
+ }) => FontPickerDnD;
@@ -0,0 +1,48 @@
1
+ import React from "react";
2
+ import type { PointerType } from "@excalidraw/element/types";
3
+ import "./ToolIcon.scss";
4
+ import type { CSSProperties } from "react";
5
+ export type IconButtonSize = "small" | "medium";
6
+ type IconButtonBaseProps = {
7
+ icon?: React.ReactNode;
8
+ "aria-label": string;
9
+ "aria-keyshortcuts"?: string;
10
+ "data-testid"?: string;
11
+ label?: string;
12
+ title?: string;
13
+ size?: IconButtonSize;
14
+ keyBindingLabel?: string | null;
15
+ showAriaLabel?: boolean;
16
+ hidden?: boolean;
17
+ visible?: boolean;
18
+ disabled?: boolean;
19
+ className?: string;
20
+ style?: CSSProperties;
21
+ isLoading?: boolean;
22
+ };
23
+ type IconButtonProps = (IconButtonBaseProps & {
24
+ type: "button";
25
+ children?: React.ReactNode;
26
+ onClick?(event: React.MouseEvent): void;
27
+ }) | (IconButtonBaseProps & {
28
+ type: "icon";
29
+ children?: React.ReactNode;
30
+ onClick?(): void;
31
+ }) | (IconButtonBaseProps & {
32
+ type: "toggle";
33
+ checked: boolean;
34
+ /**
35
+ * Fired on activation — a completed pointer gesture (via `click`, so a
36
+ * press canceled by sliding off the button doesn't select) or
37
+ * keyboard/AT activation, in which case pointerType is null.
38
+ * pointerType is captured on pointer-down, where it's reliable
39
+ * (unlike the click event's own pointerType on iOS).
40
+ */
41
+ onSelect?(data: {
42
+ pointerType: PointerType | null;
43
+ }): void;
44
+ /** the press that may become a click — e.g. to arm a drag out of the toolbar */
45
+ onPointerDown?(event: React.PointerEvent<HTMLButtonElement>): void;
46
+ });
47
+ export declare const IconButton: React.ForwardRefExoticComponent<IconButtonProps & React.RefAttributes<unknown>>;
48
+ export {};
@@ -1,15 +1,20 @@
1
1
  import "./IconPicker.scss";
2
2
  import type { JSX } from "react";
3
- export declare function IconPicker<T>({ value, label, options, onChange, group, numberOfOptionsToAlwaysShow, }: {
3
+ type Option<T> = {
4
+ value: T;
5
+ text: string;
6
+ icon: JSX.Element;
7
+ keyBinding: string | null;
8
+ };
9
+ type PickerSection<T> = {
10
+ name: string;
11
+ options: readonly Option<T>[];
12
+ };
13
+ export declare function IconPicker<T>({ value, label, visibleSections, hiddenSections, onChange, }: {
4
14
  label: string;
5
15
  value: T;
6
- options: readonly {
7
- value: T;
8
- text: string;
9
- icon: JSX.Element;
10
- keyBinding: string | null;
11
- }[];
16
+ visibleSections: readonly PickerSection<T>[];
17
+ hiddenSections?: readonly PickerSection<T>[];
12
18
  onChange: (value: T) => void;
13
- numberOfOptionsToAlwaysShow?: number;
14
- group?: string;
15
19
  }): import("react/jsx-runtime").JSX.Element;
20
+ export {};
@@ -1,10 +1,17 @@
1
1
  import React from "react";
2
2
  import "./Island.scss";
3
+ import type { ViewportUIDock, ViewportUIName } from "../types";
3
4
  type IslandProps = {
4
5
  children: React.ReactNode;
5
6
  padding?: number;
6
7
  className?: string | boolean;
7
8
  style?: object;
9
+ /** marks the island as a canvas-occluding UI surface measured by
10
+ * `getViewportOffsets` (see {@link ViewportUIDock}) */
11
+ "data-viewport-ui"?: ViewportUIDock;
12
+ /** identifies the surface so `getViewportOffsets` can reserve space for
13
+ * it while hidden (see {@link ViewportUIName}) */
14
+ "data-viewport-ui-name"?: ViewportUIName;
8
15
  };
9
16
  export declare const Island: React.ForwardRefExoticComponent<IslandProps & React.RefAttributes<HTMLDivElement>>;
10
17
  export {};
@@ -1,10 +1,8 @@
1
- import "./ToolIcon.scss";
2
- type LaserPointerIconProps = {
1
+ type LaserPointerButtonProps = {
3
2
  title?: string;
4
- name?: string;
5
3
  checked: boolean;
6
4
  onChange?(): void;
7
5
  isMobile?: boolean;
8
6
  };
9
- export declare const LaserPointerButton: (props: LaserPointerIconProps) => import("react/jsx-runtime").JSX.Element;
7
+ export declare const LaserPointerButton: (props: LaserPointerButtonProps) => import("react/jsx-runtime").JSX.Element;
10
8
  export {};
@@ -13,7 +13,6 @@ interface LayerUIProps {
13
13
  setAppState: React.Component<any, AppState>["setState"];
14
14
  elements: readonly NonDeletedExcalidrawElement[];
15
15
  onLockToggle: () => void;
16
- onHandToolToggle: () => void;
17
16
  onPenModeToggle: AppClassProperties["togglePenMode"];
18
17
  showExitZenModeBtn: boolean;
19
18
  langCode: Language["code"];
@@ -25,8 +24,12 @@ interface LayerUIProps {
25
24
  renderWelcomeScreen: boolean;
26
25
  children?: React.ReactNode;
27
26
  app: AppClassProperties;
27
+ defaultUIEnabled: boolean;
28
+ zoomUIEnabled: boolean;
29
+ scrollBackToContentUIEnabled: boolean;
28
30
  isCollaborating: boolean;
29
31
  generateLinkForSelection?: AppProps["generateLinkForSelection"];
32
+ currentUserControls?: ExcalidrawProps["currentUserControls"];
30
33
  }
31
- declare const _default: React.MemoExoticComponent<({ actionManager, appState, files, setAppState, elements, canvas, onLockToggle, onHandToolToggle, onPenModeToggle, showExitZenModeBtn, renderTopLeftUI, renderTopRightUI, renderCustomStats, UIOptions, onExportImage, renderWelcomeScreen, children, app, isCollaborating, generateLinkForSelection, }: LayerUIProps) => import("react/jsx-runtime").JSX.Element>;
34
+ declare const _default: React.MemoExoticComponent<({ actionManager, appState, files, setAppState, elements, canvas, onLockToggle, onPenModeToggle, showExitZenModeBtn, renderTopLeftUI, renderTopRightUI, renderCustomStats, UIOptions, onExportImage, renderWelcomeScreen, children, app, defaultUIEnabled, zoomUIEnabled, scrollBackToContentUIEnabled, isCollaborating, generateLinkForSelection, currentUserControls, }: LayerUIProps) => import("react/jsx-runtime").JSX.Element>;
32
35
  export default _default;
@@ -1,6 +1,6 @@
1
1
  import React from "react";
2
2
  import "./LibraryMenu.scss";
3
- export declare const isLibraryMenuOpenAtom: import("jotai/vanilla/atom").PrimitiveAtom<boolean> & {
3
+ export declare const isLibraryMenuOpenAtom: import("jotai").PrimitiveAtom<boolean> & {
4
4
  init: boolean;
5
5
  };
6
6
  /**
@@ -15,9 +15,13 @@ interface Props {
15
15
  isItemSelected: (id: LibraryItem["id"] | null) => boolean;
16
16
  svgCache: SvgCache;
17
17
  itemsRenderedPerBatch: number;
18
+ /** larger items with their name below */
19
+ showNames?: boolean;
18
20
  }
19
- export declare const LibraryMenuSectionGrid: ({ children, }: {
21
+ export declare const LibraryMenuSectionGrid: ({ children, showNames, }: {
20
22
  children: ReactNode;
23
+ /** fewer columns, for items rendered with `showNames` */
24
+ showNames?: boolean;
21
25
  }) => import("react/jsx-runtime").JSX.Element;
22
- export declare const LibraryMenuSection: React.MemoExoticComponent<({ items, onItemSelectToggle, onItemDrag, isItemSelected, onClick, svgCache, itemsRenderedPerBatch, }: Props) => import("react/jsx-runtime").JSX.Element>;
26
+ export declare const LibraryMenuSection: React.MemoExoticComponent<({ items, onItemSelectToggle, onItemDrag, isItemSelected, onClick, svgCache, itemsRenderedPerBatch, showNames, }: Props) => import("react/jsx-runtime").JSX.Element>;
23
27
  export {};
@@ -1,8 +1,11 @@
1
1
  import "./LibraryUnit.scss";
2
2
  import type { LibraryItem } from "../types";
3
3
  import type { SvgCache } from "../hooks/useLibraryItemSvg";
4
- export declare const LibraryUnit: import("react").MemoExoticComponent<({ id, elements, isPending, onClick, selected, onToggle, onDrag, svgCache, }: {
4
+ export declare const LibraryUnit: import("react").MemoExoticComponent<({ id, name, showName, elements, isPending, onClick, selected, onToggle, onDrag, svgCache, }: {
5
5
  id: LibraryItem["id"] | /** for pending item */ null;
6
+ name?: LibraryItem["name"];
7
+ /** render larger, with the name below the item */
8
+ showName?: boolean;
6
9
  elements?: LibraryItem["elements"];
7
10
  isPending?: boolean;
8
11
  onClick: (id: LibraryItem["id"] | null) => void;
@@ -11,4 +14,6 @@ export declare const LibraryUnit: import("react").MemoExoticComponent<({ id, ele
11
14
  onDrag: (id: string, event: React.DragEvent) => void;
12
15
  svgCache: SvgCache;
13
16
  }) => import("react/jsx-runtime").JSX.Element>;
14
- export declare const EmptyLibraryUnit: () => import("react/jsx-runtime").JSX.Element;
17
+ export declare const EmptyLibraryUnit: ({ showName }: {
18
+ showName?: boolean;
19
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -1,10 +1,9 @@
1
- import "./ToolIcon.scss";
2
- type LockIconProps = {
1
+ type LockButtonProps = {
3
2
  title?: string;
4
- name?: string;
5
3
  checked: boolean;
6
4
  onChange?(): void;
7
5
  isMobile?: boolean;
6
+ disabled?: boolean;
8
7
  };
9
- export declare const LockButton: (props: LockIconProps) => import("react/jsx-runtime").JSX.Element;
8
+ export declare const LockButton: (props: LockButtonProps) => import("react/jsx-runtime").JSX.Element;
10
9
  export {};
@@ -1,9 +1,7 @@
1
- import "./ToolIcon.scss";
2
1
  import type { JSX } from "react";
3
2
  export declare const ElementCanvasButton: (props: {
4
3
  title?: string;
5
4
  icon: JSX.Element;
6
- name?: string;
7
5
  checked: boolean;
8
6
  onChange?(): void;
9
7
  isMobile?: boolean;
@@ -1,7 +1,7 @@
1
1
  import React from "react";
2
2
  import type { NonDeletedExcalidrawElement } from "@excalidraw/element/types";
3
3
  import type { ActionManager } from "../actions/manager";
4
- import type { AppClassProperties, AppProps, AppState, UIAppState } from "../types";
4
+ import type { AppClassProperties, AppState, UIAppState } from "../types";
5
5
  import type { JSX } from "react";
6
6
  type MobileMenuProps = {
7
7
  appState: UIAppState;
@@ -10,14 +10,14 @@ type MobileMenuProps = {
10
10
  renderImageExportDialog: () => React.ReactNode;
11
11
  setAppState: React.Component<any, AppState>["setState"];
12
12
  elements: readonly NonDeletedExcalidrawElement[];
13
- onHandToolToggle: () => void;
14
13
  onPenModeToggle: AppClassProperties["togglePenMode"];
15
14
  renderTopRightUI?: (isMobile: boolean, appState: UIAppState) => JSX.Element | null;
16
15
  renderTopLeftUI?: (isMobile: boolean, appState: UIAppState) => JSX.Element | null;
17
16
  renderSidebars: () => JSX.Element | null;
18
17
  renderWelcomeScreen: boolean;
19
- UIOptions: AppProps["UIOptions"];
18
+ defaultUIEnabled: boolean;
19
+ scrollBackToContentUIEnabled: boolean;
20
20
  app: AppClassProperties;
21
21
  };
22
- export declare const MobileMenu: ({ appState, elements, actionManager, setAppState, onHandToolToggle, renderTopLeftUI, renderTopRightUI, renderSidebars, renderWelcomeScreen, UIOptions, app, onPenModeToggle, }: MobileMenuProps) => import("react/jsx-runtime").JSX.Element;
22
+ export declare const MobileMenu: ({ appState, elements, actionManager, setAppState, renderTopLeftUI, renderTopRightUI, renderSidebars, renderWelcomeScreen, defaultUIEnabled, scrollBackToContentUIEnabled, app, onPenModeToggle, }: MobileMenuProps) => import("react/jsx-runtime").JSX.Element;
23
23
  export {};
@@ -0,0 +1,9 @@
1
+ import "./ToolIcon.scss";
2
+ import "./MobileToolbar.scss";
3
+ import type { AppClassProperties, UIAppState } from "../types";
4
+ type MobileToolbarProps = {
5
+ app: AppClassProperties;
6
+ setAppState: React.Component<any, UIAppState>["setState"];
7
+ };
8
+ export declare const MobileToolbar: ({ app, setAppState }: MobileToolbarProps) => import("react/jsx-runtime").JSX.Element;
9
+ export {};
@@ -11,7 +11,7 @@ export type OverwriteConfirmState = {
11
11
  } | {
12
12
  active: false;
13
13
  };
14
- export declare const overwriteConfirmStateAtom: import("jotai/vanilla/atom").PrimitiveAtom<OverwriteConfirmState> & {
14
+ export declare const overwriteConfirmStateAtom: import("jotai").PrimitiveAtom<OverwriteConfirmState> & {
15
15
  init: OverwriteConfirmState;
16
16
  };
17
17
  export declare function openConfirmModal({ title, description, actionLabel, color, }: {
@@ -1,8 +1,7 @@
1
- import React from "react";
2
1
  import "./PasteChartDialog.scss";
3
- import type { UIAppState } from "../types";
4
- export declare const PasteChartDialog: ({ setAppState, appState, onClose, }: {
5
- appState: UIAppState;
2
+ import type { Spreadsheet } from "../charts";
3
+ export declare const PasteChartDialog: ({ data, rawText, onClose, }: {
4
+ data: Spreadsheet;
5
+ rawText: string;
6
6
  onClose: () => void;
7
- setAppState: React.Component<any, UIAppState>["setState"];
8
7
  }) => import("react/jsx-runtime").JSX.Element;
@@ -1,12 +1,9 @@
1
- import "./ToolIcon.scss";
2
- type PenModeIconProps = {
1
+ type PenModeButtonProps = {
3
2
  title?: string;
4
- name?: string;
5
3
  checked: boolean;
6
4
  onChange?(): void;
7
- zenModeEnabled?: boolean;
8
5
  isMobile?: boolean;
9
6
  penDetected: boolean;
10
7
  };
11
- export declare const PenModeButton: (props: PenModeIconProps) => import("react/jsx-runtime").JSX.Element | null;
8
+ export declare const PenModeButton: (props: PenModeButtonProps) => import("react/jsx-runtime").JSX.Element | null;
12
9
  export {};
@@ -6,11 +6,9 @@ type Props = {
6
6
  children?: React.ReactNode;
7
7
  onCloseRequest?(event: PointerEvent): void;
8
8
  fitInViewport?: boolean;
9
- offsetLeft?: number;
10
- offsetTop?: number;
11
9
  viewportWidth?: number;
12
10
  viewportHeight?: number;
13
11
  className?: string;
14
12
  };
15
- export declare const Popover: ({ children, left, top, onCloseRequest, fitInViewport, offsetLeft, offsetTop, viewportWidth, viewportHeight, className, }: Props) => import("react/jsx-runtime").JSX.Element;
13
+ export declare const Popover: ({ children, left, top, onCloseRequest, fitInViewport, viewportWidth, viewportHeight, className, }: Props) => import("react/jsx-runtime").JSX.Element;
16
14
  export {};
@@ -1,4 +1,4 @@
1
- import * as Popover from "@radix-ui/react-popover";
1
+ import { Popover } from "radix-ui";
2
2
  import React, { type ReactNode } from "react";
3
3
  interface PropertiesPopoverProps {
4
4
  className?: string;
@@ -1,16 +1,13 @@
1
- import "./ButtonIcon.scss";
2
1
  import type { JSX } from "react";
3
- interface ButtonIconProps {
2
+ interface RadioButtonProps {
4
3
  icon: JSX.Element;
5
4
  title: string;
6
5
  className?: string;
7
6
  testId?: string;
8
7
  /** if not supplied, defaults to value identity check */
9
8
  active?: boolean;
10
- /** include standalone style (could interfere with parent styles) */
11
- standalone?: boolean;
12
9
  onClick: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
13
10
  style?: React.CSSProperties;
14
11
  }
15
- export declare const ButtonIcon: import("react").ForwardRefExoticComponent<ButtonIconProps & import("react").RefAttributes<HTMLButtonElement>>;
12
+ export declare const RadioButton: import("react").ForwardRefExoticComponent<RadioButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
16
13
  export {};
@@ -1,8 +1,14 @@
1
+ import React from "react";
1
2
  import "./Range.scss";
2
- import type { AppClassProperties } from "../types";
3
3
  export type RangeProps = {
4
- updateData: (value: number) => void;
5
- app: AppClassProperties;
4
+ label: React.ReactNode;
5
+ value: number;
6
+ onChange: (value: number) => void;
7
+ min?: number;
8
+ max?: number;
9
+ step?: number;
10
+ minLabel?: React.ReactNode;
11
+ hasCommonValue?: boolean;
6
12
  testId?: string;
7
13
  };
8
- export declare const Range: ({ updateData, app, testId }: RangeProps) => import("react/jsx-runtime").JSX.Element;
14
+ export declare const Range: ({ label, value, onChange, min, max, step, minLabel, hasCommonValue, testId, }: RangeProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,5 +1,5 @@
1
1
  import "./SVGLayer.scss";
2
- import type { Trail } from "../animated-trail";
2
+ import type { Trail } from "../animatedTrail";
3
3
  type SVGLayerProps = {
4
4
  trails: Trail[];
5
5
  };
@@ -1,5 +1,5 @@
1
1
  import "./SearchMenu.scss";
2
- export declare const searchItemInFocusAtom: import("jotai/vanilla/atom").PrimitiveAtom<number | null> & {
2
+ export declare const searchItemInFocusAtom: import("jotai").PrimitiveAtom<number | null> & {
3
3
  init: number | null;
4
4
  };
5
5
  export declare const SearchMenu: () => import("react/jsx-runtime").JSX.Element;
@@ -8,7 +8,7 @@ import "./Sidebar.scss";
8
8
  *
9
9
  * Since we can only render one Sidebar at a time, we can use a simple flag.
10
10
  */
11
- export declare const isSidebarDockedAtom: import("jotai/vanilla/atom").PrimitiveAtom<boolean> & {
11
+ export declare const isSidebarDockedAtom: import("jotai").PrimitiveAtom<boolean> & {
12
12
  init: boolean;
13
13
  };
14
14
  export declare const SidebarInner: React.ForwardRefExoticComponent<Omit<{
@@ -1,8 +1,8 @@
1
- import type { ExcalidrawElement } from "@excalidraw/element/types";
1
+ import type { NonDeletedExcalidrawElement } from "@excalidraw/element/types";
2
2
  import type { Scene } from "@excalidraw/element";
3
3
  import type { AppState } from "../../types";
4
4
  interface AngleProps {
5
- element: ExcalidrawElement;
5
+ element: NonDeletedExcalidrawElement;
6
6
  scene: Scene;
7
7
  appState: AppState;
8
8
  property: "angle";
@@ -1,9 +1,9 @@
1
- import type { ExcalidrawElement } from "@excalidraw/element/types";
1
+ import type { NonDeletedExcalidrawElement } from "@excalidraw/element/types";
2
2
  import type { Scene } from "@excalidraw/element";
3
3
  import type { AppState } from "../../types";
4
4
  interface DimensionDragInputProps {
5
5
  property: "width" | "height";
6
- element: ExcalidrawElement;
6
+ element: NonDeletedExcalidrawElement;
7
7
  scene: Scene;
8
8
  appState: AppState;
9
9
  }
@@ -1,10 +1,10 @@
1
- import type { ElementsMap, ExcalidrawElement } from "@excalidraw/element/types";
1
+ import type { ElementsMap, ExcalidrawElement, NonDeletedExcalidrawElement } from "@excalidraw/element/types";
2
2
  import type { Scene } from "@excalidraw/element";
3
3
  import { useApp, useExcalidrawSetAppState } from "../App";
4
4
  import "./DragInput.scss";
5
5
  import type { StatsInputProperty } from "./utils";
6
6
  import type { AppState } from "../../types";
7
- export type DragInputCallbackType<P extends StatsInputProperty, E = ExcalidrawElement> = (props: {
7
+ export type DragInputCallbackType<P extends StatsInputProperty, E = NonDeletedExcalidrawElement> = (props: {
8
8
  accumulatedChange: number;
9
9
  instantChange: number;
10
10
  originalElements: readonly E[];