@zsviczian/excalidraw 0.18.0-1 → 0.18.0-3

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 (381) hide show
  1. package/README.md +1 -1
  2. package/dist/excalidraw.development.js +387 -387
  3. package/dist/excalidraw.production.min.js +1 -1
  4. package/dist/excalidraw.production.min.js.LICENSE.txt +0 -32
  5. package/dist/styles.development.css +2976 -2982
  6. package/dist/styles.production.css +23 -23
  7. package/package.json +1 -1
  8. package/types/excalidraw/actions/actionAddToLibrary.d.ts +629 -629
  9. package/types/excalidraw/actions/actionAlign.d.ts +109 -109
  10. package/types/excalidraw/actions/actionBoundText.d.ts +456 -456
  11. package/types/excalidraw/actions/actionCanvas.d.ts +3070 -3070
  12. package/types/excalidraw/actions/actionClipboard.d.ts +1374 -1374
  13. package/types/excalidraw/actions/actionCropEditor.d.ts +222 -222
  14. package/types/excalidraw/actions/actionDeleteSelected.d.ts +668 -668
  15. package/types/excalidraw/actions/actionDistribute.d.ts +34 -34
  16. package/types/excalidraw/actions/actionDuplicateSelection.d.ts +21 -21
  17. package/types/excalidraw/actions/actionElementLink.d.ts +244 -244
  18. package/types/excalidraw/actions/actionElementLock.d.ts +444 -444
  19. package/types/excalidraw/actions/actionExport.d.ts +1953 -1953
  20. package/types/excalidraw/actions/actionFinalize.d.ts +425 -425
  21. package/types/excalidraw/actions/actionFlip.d.ts +34 -34
  22. package/types/excalidraw/actions/actionFrame.d.ts +1384 -1384
  23. package/types/excalidraw/actions/actionGroup.d.ts +454 -454
  24. package/types/excalidraw/actions/actionHistory.d.ts +7 -7
  25. package/types/excalidraw/actions/actionLinearEditor.d.ts +223 -223
  26. package/types/excalidraw/actions/actionLink.d.ts +223 -223
  27. package/types/excalidraw/actions/actionMenu.d.ts +649 -649
  28. package/types/excalidraw/actions/actionNavigate.d.ts +430 -430
  29. package/types/excalidraw/actions/actionProperties.d.ts +3276 -3276
  30. package/types/excalidraw/actions/actionSelectAll.d.ts +222 -222
  31. package/types/excalidraw/actions/actionStyles.d.ts +236 -236
  32. package/types/excalidraw/actions/actionTextAutoResize.d.ts +17 -17
  33. package/types/excalidraw/actions/actionToggleGridMode.d.ts +225 -225
  34. package/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +223 -223
  35. package/types/excalidraw/actions/actionToggleSearchMenu.d.ts +420 -420
  36. package/types/excalidraw/actions/actionToggleStats.d.ts +223 -223
  37. package/types/excalidraw/actions/actionToggleViewMode.d.ts +224 -224
  38. package/types/excalidraw/actions/actionToggleZenMode.d.ts +224 -224
  39. package/types/excalidraw/actions/actionZindex.d.ts +74 -74
  40. package/types/excalidraw/actions/index.d.ts +27 -27
  41. package/types/excalidraw/actions/manager.d.ts +21 -21
  42. package/types/excalidraw/actions/register.d.ts +5 -5
  43. package/types/excalidraw/actions/shortcuts.d.ts +4 -4
  44. package/types/excalidraw/actions/types.d.ts +46 -46
  45. package/types/excalidraw/align.d.ts +7 -7
  46. package/types/excalidraw/analytics.d.ts +1 -1
  47. package/types/excalidraw/animated-trail.d.ts +33 -33
  48. package/types/excalidraw/animation-frame-handler.d.ts +16 -16
  49. package/types/excalidraw/appState.d.ts +89 -89
  50. package/types/excalidraw/binaryheap.d.ts +12 -12
  51. package/types/excalidraw/change.d.ts +191 -191
  52. package/types/excalidraw/charts.d.ts +27 -27
  53. package/types/excalidraw/clients.d.ts +14 -14
  54. package/types/excalidraw/clipboard.d.ts +66 -66
  55. package/types/excalidraw/colors.d.ts +61 -61
  56. package/types/excalidraw/components/Actions.d.ts +35 -35
  57. package/types/excalidraw/components/ActiveConfirmDialog.d.ts +4 -4
  58. package/types/excalidraw/components/App.d.ts +561 -561
  59. package/types/excalidraw/components/Avatar.d.ts +11 -11
  60. package/types/excalidraw/components/BraveMeasureTextError.d.ts +2 -2
  61. package/types/excalidraw/components/Button.d.ts +17 -17
  62. package/types/excalidraw/components/ButtonIcon.d.ts +15 -15
  63. package/types/excalidraw/components/ButtonIconCycle.d.ts +11 -11
  64. package/types/excalidraw/components/ButtonIconSelect.d.ts +20 -20
  65. package/types/excalidraw/components/ButtonSelect.d.ts +9 -9
  66. package/types/excalidraw/components/ButtonSeparator.d.ts +1 -1
  67. package/types/excalidraw/components/Card.d.ts +6 -6
  68. package/types/excalidraw/components/CheckboxItem.d.ts +8 -8
  69. package/types/excalidraw/components/ColorPicker/ColorInput.d.ts +9 -9
  70. package/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +19 -19
  71. package/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +8 -8
  72. package/types/excalidraw/components/ColorPicker/HotkeyLabel.d.ts +8 -8
  73. package/types/excalidraw/components/ColorPicker/Picker.d.ts +18 -18
  74. package/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +10 -10
  75. package/types/excalidraw/components/ColorPicker/PickerHeading.d.ts +5 -5
  76. package/types/excalidraw/components/ColorPicker/ShadeList.d.ts +8 -8
  77. package/types/excalidraw/components/ColorPicker/TopPicks.d.ts +9 -9
  78. package/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +21 -21
  79. package/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +20 -20
  80. package/types/excalidraw/components/CommandPalette/CommandPalette.d.ts +18 -18
  81. package/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +2 -2
  82. package/types/excalidraw/components/CommandPalette/types.d.ts +25 -25
  83. package/types/excalidraw/components/ConfirmDialog.d.ts +10 -10
  84. package/types/excalidraw/components/ContextMenu.d.ts +16 -16
  85. package/types/excalidraw/components/DarkModeToggle.d.ts +7 -7
  86. package/types/excalidraw/components/DefaultSidebar.d.ts +30 -30
  87. package/types/excalidraw/components/DiagramToCodePlugin/DiagramToCodePlugin.d.ts +4 -4
  88. package/types/excalidraw/components/Dialog.d.ts +13 -13
  89. package/types/excalidraw/components/DialogActionButton.d.ts +10 -10
  90. package/types/excalidraw/components/ElementLinkDialog.d.ts +11 -11
  91. package/types/excalidraw/components/ErrorDialog.d.ts +5 -5
  92. package/types/excalidraw/components/ExcalidrawLogo.d.ts +15 -15
  93. package/types/excalidraw/components/EyeDropper.d.ts +27 -27
  94. package/types/excalidraw/components/FilledButton.d.ts +18 -18
  95. package/types/excalidraw/components/FixedSideContainer.d.ts +9 -9
  96. package/types/excalidraw/components/FollowMode/FollowMode.d.ts +10 -10
  97. package/types/excalidraw/components/FontPicker/FontPicker.d.ts +21 -21
  98. package/types/excalidraw/components/FontPicker/FontPickerList.d.ts +26 -26
  99. package/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +6 -6
  100. package/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +13 -13
  101. package/types/excalidraw/components/HandButton.d.ts +10 -10
  102. package/types/excalidraw/components/HelpButton.d.ts +7 -7
  103. package/types/excalidraw/components/HelpDialog.d.ts +4 -4
  104. package/types/excalidraw/components/HintViewer.d.ts +10 -10
  105. package/types/excalidraw/components/IconPicker.d.ts +15 -15
  106. package/types/excalidraw/components/ImageExportDialog.d.ts +14 -14
  107. package/types/excalidraw/components/InitializeApp.d.ts +10 -10
  108. package/types/excalidraw/components/InlineIcon.d.ts +3 -3
  109. package/types/excalidraw/components/Island.d.ts +10 -10
  110. package/types/excalidraw/components/JSONExportDialog.d.ts +15 -15
  111. package/types/excalidraw/components/LaserPointerButton.d.ts +10 -10
  112. package/types/excalidraw/components/LayerUI.d.ts +31 -31
  113. package/types/excalidraw/components/LibraryMenu.d.ts +10 -10
  114. package/types/excalidraw/components/LibraryMenuBrowseButton.d.ts +7 -7
  115. package/types/excalidraw/components/LibraryMenuControlButtons.d.ts +9 -9
  116. package/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +17 -17
  117. package/types/excalidraw/components/LibraryMenuItems.d.ts +14 -14
  118. package/types/excalidraw/components/LibraryMenuSection.d.ts +23 -23
  119. package/types/excalidraw/components/LibraryUnit.d.ts +14 -14
  120. package/types/excalidraw/components/LoadingMessage.d.ts +5 -5
  121. package/types/excalidraw/components/LockButton.d.ts +10 -10
  122. package/types/excalidraw/components/MagicButton.d.ts +10 -10
  123. package/types/excalidraw/components/MobileMenu.d.ts +25 -25
  124. package/types/excalidraw/components/Modal.d.ts +14 -14
  125. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirm.d.ts +17 -17
  126. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmActions.d.ts +17 -17
  127. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +22 -22
  128. package/types/excalidraw/components/Paragraph.d.ts +4 -4
  129. package/types/excalidraw/components/PasteChartDialog.d.ts +8 -8
  130. package/types/excalidraw/components/PenModeButton.d.ts +12 -12
  131. package/types/excalidraw/components/Popover.d.ts +15 -15
  132. package/types/excalidraw/components/ProjectName.d.ts +10 -10
  133. package/types/excalidraw/components/PropertiesPopover.d.ts +15 -15
  134. package/types/excalidraw/components/PublishLibrary.d.ts +16 -16
  135. package/types/excalidraw/components/QuickSearch.d.ts +9 -9
  136. package/types/excalidraw/components/RadioGroup.d.ts +13 -13
  137. package/types/excalidraw/components/Range.d.ts +8 -8
  138. package/types/excalidraw/components/SVGLayer.d.ts +7 -7
  139. package/types/excalidraw/components/ScrollableList.d.ts +8 -8
  140. package/types/excalidraw/components/SearchMenu.d.ts +5 -5
  141. package/types/excalidraw/components/Section.d.ts +6 -6
  142. package/types/excalidraw/components/ShareableLinkDialog.d.ts +7 -7
  143. package/types/excalidraw/components/Sidebar/Sidebar.d.ts +76 -76
  144. package/types/excalidraw/components/Sidebar/SidebarHeader.d.ts +7 -7
  145. package/types/excalidraw/components/Sidebar/SidebarTab.d.ts +8 -8
  146. package/types/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +9 -9
  147. package/types/excalidraw/components/Sidebar/SidebarTabTriggers.d.ts +6 -6
  148. package/types/excalidraw/components/Sidebar/SidebarTabs.d.ts +6 -6
  149. package/types/excalidraw/components/Sidebar/SidebarTrigger.d.ts +6 -6
  150. package/types/excalidraw/components/Sidebar/common.d.ts +34 -34
  151. package/types/excalidraw/components/Spinner.d.ts +8 -8
  152. package/types/excalidraw/components/Stack.d.ts +15 -15
  153. package/types/excalidraw/components/Stats/Angle.d.ts +11 -11
  154. package/types/excalidraw/components/Stats/CanvasGrid.d.ts +10 -10
  155. package/types/excalidraw/components/Stats/CanvasGridSize.d.ts +10 -10
  156. package/types/excalidraw/components/Stats/Collapsible.d.ts +9 -9
  157. package/types/excalidraw/components/Stats/Dimension.d.ts +11 -11
  158. package/types/excalidraw/components/Stats/DragInput.d.ts +34 -34
  159. package/types/excalidraw/components/Stats/FontSize.d.ts +11 -11
  160. package/types/excalidraw/components/Stats/MultiAngle.d.ts +11 -11
  161. package/types/excalidraw/components/Stats/MultiDimension.d.ts +14 -14
  162. package/types/excalidraw/components/Stats/MultiFontSize.d.ts +12 -12
  163. package/types/excalidraw/components/Stats/MultiPosition.d.ts +14 -14
  164. package/types/excalidraw/components/Stats/Position.d.ts +12 -12
  165. package/types/excalidraw/components/Stats/index.d.ts +35 -35
  166. package/types/excalidraw/components/Stats/utils.d.ts +26 -26
  167. package/types/excalidraw/components/Switch.d.ts +9 -9
  168. package/types/excalidraw/components/TTDDialog/MermaidToExcalidraw.d.ts +8 -8
  169. package/types/excalidraw/components/TTDDialog/MermaidToExcalidrawLib.d.ts +10 -10
  170. package/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +29 -29
  171. package/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +9 -9
  172. package/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +7 -7
  173. package/types/excalidraw/components/TTDDialog/TTDDialogPanel.d.ts +17 -17
  174. package/types/excalidraw/components/TTDDialog/TTDDialogPanels.d.ts +4 -4
  175. package/types/excalidraw/components/TTDDialog/TTDDialogSubmitShortcut.d.ts +1 -1
  176. package/types/excalidraw/components/TTDDialog/TTDDialogTab.d.ts +7 -7
  177. package/types/excalidraw/components/TTDDialog/TTDDialogTabTrigger.d.ts +8 -8
  178. package/types/excalidraw/components/TTDDialog/TTDDialogTabTriggers.d.ts +6 -6
  179. package/types/excalidraw/components/TTDDialog/TTDDialogTabs.d.ts +11 -11
  180. package/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +9 -9
  181. package/types/excalidraw/components/TTDDialog/common.d.ts +32 -32
  182. package/types/excalidraw/components/TextField.d.ts +21 -21
  183. package/types/excalidraw/components/Toast.d.ts +9 -9
  184. package/types/excalidraw/components/ToolButton.d.ts +49 -49
  185. package/types/excalidraw/components/Tooltip.d.ts +18 -18
  186. package/types/excalidraw/components/Trans.d.ts +9 -9
  187. package/types/excalidraw/components/UserList.d.ts +18 -18
  188. package/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +29 -29
  189. package/types/excalidraw/components/canvases/NewElementCanvas.d.ts +14 -14
  190. package/types/excalidraw/components/canvases/StaticCanvas.d.ts +19 -19
  191. package/types/excalidraw/components/canvases/index.d.ts +3 -3
  192. package/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +86 -86
  193. package/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +15 -15
  194. package/types/excalidraw/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -11
  195. package/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +46 -46
  196. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +8 -8
  197. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +17 -17
  198. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemCustom.d.ts +7 -7
  199. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +16 -16
  200. package/types/excalidraw/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -5
  201. package/types/excalidraw/components/dropdownMenu/DropdownMenuTrigger.d.ts +10 -10
  202. package/types/excalidraw/components/dropdownMenu/common.d.ts +6 -6
  203. package/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +3 -3
  204. package/types/excalidraw/components/footer/Footer.d.ts +12 -12
  205. package/types/excalidraw/components/footer/FooterCenter.d.ts +8 -8
  206. package/types/excalidraw/components/hoc/withInternalFallback.d.ts +4 -4
  207. package/types/excalidraw/components/hyperlink/Hyperlink.d.ts +18 -18
  208. package/types/excalidraw/components/hyperlink/helpers.d.ts +9 -9
  209. package/types/excalidraw/components/icons.d.ts +223 -223
  210. package/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +9 -9
  211. package/types/excalidraw/components/main-menu/DefaultItems.d.ts +64 -64
  212. package/types/excalidraw/components/main-menu/MainMenu.d.ts +80 -80
  213. package/types/excalidraw/components/welcome-screen/WelcomeScreen.Center.d.ts +60 -60
  214. package/types/excalidraw/components/welcome-screen/WelcomeScreen.Hints.d.ts +19 -19
  215. package/types/excalidraw/components/welcome-screen/WelcomeScreen.d.ts +86 -86
  216. package/types/excalidraw/constants.d.ts +333 -333
  217. package/types/excalidraw/context/tunnels.d.ts +21 -21
  218. package/types/excalidraw/context/ui-appState.d.ts +4 -4
  219. package/types/excalidraw/cursor.d.ts +6 -6
  220. package/types/excalidraw/data/EditorLocalStorage.d.ts +8 -8
  221. package/types/excalidraw/data/ai/types.d.ts +242 -242
  222. package/types/excalidraw/data/blob.d.ts +53 -53
  223. package/types/excalidraw/data/encode.d.ts +55 -55
  224. package/types/excalidraw/data/encryption.d.ts +9 -9
  225. package/types/excalidraw/data/filesystem.d.ts +21 -21
  226. package/types/excalidraw/data/image.d.ts +9 -9
  227. package/types/excalidraw/data/index.d.ts +22 -22
  228. package/types/excalidraw/data/json.d.ts +16 -16
  229. package/types/excalidraw/data/library.d.ts +112 -112
  230. package/types/excalidraw/data/reconcile.d.ts +6 -6
  231. package/types/excalidraw/data/resave.d.ts +5 -5
  232. package/types/excalidraw/data/restore.d.ts +21 -21
  233. package/types/excalidraw/data/transform.d.ts +81 -81
  234. package/types/excalidraw/data/types.d.ts +45 -45
  235. package/types/excalidraw/data/url.d.ts +7 -7
  236. package/types/excalidraw/deburr.d.ts +1 -1
  237. package/types/excalidraw/dist/excalidraw.development.d.ts +2 -2
  238. package/types/excalidraw/dist/excalidraw.production.min.d.ts +3 -3
  239. package/types/excalidraw/distribute.d.ts +6 -6
  240. package/types/excalidraw/editor-jotai.d.ts +56 -56
  241. package/types/excalidraw/element/ElementCanvasButtons.d.ts +7 -7
  242. package/types/excalidraw/element/binding.d.ts +100 -100
  243. package/types/excalidraw/element/bounds.d.ts +76 -76
  244. package/types/excalidraw/element/collision.d.ts +26 -26
  245. package/types/excalidraw/element/containerCache.d.ts +11 -11
  246. package/types/excalidraw/element/cropElement.d.ts +19 -19
  247. package/types/excalidraw/element/distance.d.ts +3 -3
  248. package/types/excalidraw/element/dragElements.d.ts +32 -32
  249. package/types/excalidraw/element/elbowArrow.d.ts +17 -17
  250. package/types/excalidraw/element/elementLink.d.ts +13 -13
  251. package/types/excalidraw/element/embeddable.d.ts +229 -229
  252. package/types/excalidraw/element/flowchart.d.ts +25 -25
  253. package/types/excalidraw/element/heading.d.ts +16 -16
  254. package/types/excalidraw/element/image.d.ts +32 -32
  255. package/types/excalidraw/element/index.d.ts +26 -26
  256. package/types/excalidraw/element/linearElementEditor.d.ts +129 -129
  257. package/types/excalidraw/element/mutateElement.d.ts +13 -13
  258. package/types/excalidraw/element/newElement.d.ts +102 -102
  259. package/types/excalidraw/element/resizeElements.d.ts +38 -38
  260. package/types/excalidraw/element/resizeTest.d.ts +15 -15
  261. package/types/excalidraw/element/showSelectedShapeActions.d.ts +3 -3
  262. package/types/excalidraw/element/sizeHelpers.d.ts +35 -35
  263. package/types/excalidraw/element/sortElements.d.ts +2 -2
  264. package/types/excalidraw/element/textElement.d.ts +39 -39
  265. package/types/excalidraw/element/textMeasurements.d.ts +41 -41
  266. package/types/excalidraw/element/textWrapping.d.ts +13 -13
  267. package/types/excalidraw/element/textWysiwyg.d.ts +22 -22
  268. package/types/excalidraw/element/transformHandles.d.ts +55 -55
  269. package/types/excalidraw/element/typeChecks.d.ts +39 -39
  270. package/types/excalidraw/element/types.d.ts +285 -285
  271. package/types/excalidraw/element/utils.d.ts +21 -21
  272. package/types/excalidraw/emitter.d.ts +16 -16
  273. package/types/excalidraw/entry.d.ts +1 -1
  274. package/types/excalidraw/env.d.cts +1 -1
  275. package/types/excalidraw/env.d.ts +1 -1
  276. package/types/excalidraw/errors.d.ts +32 -32
  277. package/types/excalidraw/fonts/Cascadia/index.d.ts +2 -2
  278. package/types/excalidraw/fonts/ComicShanns/index.d.ts +2 -2
  279. package/types/excalidraw/fonts/Emoji/index.d.ts +2 -2
  280. package/types/excalidraw/fonts/ExcalidrawFontFace.d.ts +29 -29
  281. package/types/excalidraw/fonts/Excalifont/index.d.ts +2 -2
  282. package/types/excalidraw/fonts/FontMetadata.d.ts +38 -38
  283. package/types/excalidraw/fonts/Fonts.d.ts +100 -100
  284. package/types/excalidraw/fonts/Helvetica/index.d.ts +2 -2
  285. package/types/excalidraw/fonts/Liberation/index.d.ts +2 -2
  286. package/types/excalidraw/fonts/Lilita/index.d.ts +2 -2
  287. package/types/excalidraw/fonts/Nunito/index.d.ts +2 -2
  288. package/types/excalidraw/fonts/Virgil/index.d.ts +2 -2
  289. package/types/excalidraw/fonts/Xiaolai/index.d.ts +8 -8
  290. package/types/excalidraw/fonts/index.d.ts +1 -1
  291. package/types/excalidraw/fractionalIndex.d.ts +48 -48
  292. package/types/excalidraw/frame.d.ts +69 -69
  293. package/types/excalidraw/gesture.d.ts +6 -6
  294. package/types/excalidraw/groups.d.ts +33 -33
  295. package/types/excalidraw/history.d.ts +40 -40
  296. package/types/excalidraw/hooks/useCallbackRefState.d.ts +1 -1
  297. package/types/excalidraw/hooks/useCopiedIndicator.d.ts +5 -5
  298. package/types/excalidraw/hooks/useCreatePortalContainer.d.ts +7 -7
  299. package/types/excalidraw/hooks/useEmitter.d.ts +2 -2
  300. package/types/excalidraw/hooks/useLibraryItemSvg.d.ts +11 -11
  301. package/types/excalidraw/hooks/useOutsideClick.d.ts +19 -19
  302. package/types/excalidraw/hooks/useScrollPosition.d.ts +1 -1
  303. package/types/excalidraw/hooks/useStable.d.ts +1 -1
  304. package/types/excalidraw/hooks/useStableCallback.d.ts +4 -4
  305. package/types/excalidraw/hooks/useTransition.d.ts +2 -2
  306. package/types/excalidraw/i18n.d.ts +24 -24
  307. package/types/excalidraw/index-node.d.ts +1 -1
  308. package/types/excalidraw/index.d.ts +65 -65
  309. package/types/excalidraw/keys.d.ts +189 -189
  310. package/types/excalidraw/laser-trails.d.ts +20 -20
  311. package/types/excalidraw/main.d.ts +2 -2
  312. package/types/excalidraw/mermaid.d.ts +2 -2
  313. package/types/excalidraw/obsidianUtils.d.ts +28 -28
  314. package/types/excalidraw/points.d.ts +7 -7
  315. package/types/excalidraw/polyfill.d.ts +2 -2
  316. package/types/excalidraw/publicPath.d.ts +1 -1
  317. package/types/excalidraw/queue.d.ts +9 -9
  318. package/types/excalidraw/random.d.ts +4 -4
  319. package/types/excalidraw/reactUtils.d.ts +14 -14
  320. package/types/excalidraw/renderer/easingFunctions.d.ts +6 -6
  321. package/types/excalidraw/renderer/helpers.d.ts +13 -13
  322. package/types/excalidraw/renderer/interactiveScene.d.ts +20 -20
  323. package/types/excalidraw/renderer/renderElement.d.ts +28 -28
  324. package/types/excalidraw/renderer/renderNewElementScene.d.ts +7 -7
  325. package/types/excalidraw/renderer/renderSnaps.d.ts +2 -2
  326. package/types/excalidraw/renderer/roundRect.d.ts +11 -11
  327. package/types/excalidraw/renderer/staticScene.d.ts +11 -11
  328. package/types/excalidraw/renderer/staticSvgScene.d.ts +5 -5
  329. package/types/excalidraw/scene/Renderer.d.ts +28 -28
  330. package/types/excalidraw/scene/Scene.d.ts +79 -79
  331. package/types/excalidraw/scene/Shape.d.ts +17 -17
  332. package/types/excalidraw/scene/ShapeCache.d.ts +25 -25
  333. package/types/excalidraw/scene/comparisons.d.ts +8 -8
  334. package/types/excalidraw/scene/export.d.ts +37 -37
  335. package/types/excalidraw/scene/index.d.ts +4 -4
  336. package/types/excalidraw/scene/normalize.d.ts +4 -4
  337. package/types/excalidraw/scene/scroll.d.ts +23 -23
  338. package/types/excalidraw/scene/scrollbars.d.ts +12 -12
  339. package/types/excalidraw/scene/selection.d.ts +32 -32
  340. package/types/excalidraw/scene/types.d.ts +120 -120
  341. package/types/excalidraw/scene/zoom.d.ts +12 -12
  342. package/types/excalidraw/shapes.d.ts +85 -85
  343. package/types/excalidraw/snapping.d.ts +112 -112
  344. package/types/excalidraw/store.d.ts +129 -129
  345. package/types/excalidraw/subset/harfbuzz/harfbuzz-bindings.d.ts +45 -45
  346. package/types/excalidraw/subset/harfbuzz/harfbuzz-loader.d.ts +13 -13
  347. package/types/excalidraw/subset/harfbuzz/harfbuzz-wasm.d.ts +2 -2
  348. package/types/excalidraw/subset/subset-main.d.ts +12 -12
  349. package/types/excalidraw/subset/subset-shared.chunk.d.ts +32 -32
  350. package/types/excalidraw/subset/subset-worker.chunk.d.ts +15 -15
  351. package/types/excalidraw/subset/woff2/woff2-bindings.d.ts +31 -31
  352. package/types/excalidraw/subset/woff2/woff2-loader.d.ts +14 -14
  353. package/types/excalidraw/subset/woff2/woff2-wasm.d.ts +2 -2
  354. package/types/excalidraw/types.d.ts +753 -753
  355. package/types/excalidraw/utility-types.d.ts +32 -32
  356. package/types/excalidraw/utils.d.ts +256 -256
  357. package/types/excalidraw/visualdebug.d.ts +41 -41
  358. package/types/excalidraw/webpack.dev.config.d.ts +112 -112
  359. package/types/excalidraw/webpack.prod.config.d.ts +126 -126
  360. package/types/excalidraw/workers.d.ts +36 -36
  361. package/types/excalidraw/zindex.d.ts +6 -6
  362. package/types/math/angle.d.ts +17 -17
  363. package/types/math/curve.d.ts +40 -40
  364. package/types/math/ellipse.d.ts +44 -44
  365. package/types/math/index.d.ts +12 -12
  366. package/types/math/line.d.ts +17 -17
  367. package/types/math/point.d.ts +122 -122
  368. package/types/math/polygon.d.ts +5 -5
  369. package/types/math/range.d.ts +44 -44
  370. package/types/math/rectangle.d.ts +3 -3
  371. package/types/math/segment.d.ts +39 -39
  372. package/types/math/triangle.d.ts +11 -11
  373. package/types/math/types.d.ts +105 -105
  374. package/types/math/utils.d.ts +7 -7
  375. package/types/math/vector.d.ts +88 -88
  376. package/types/utils/bbox.d.ts +9 -9
  377. package/types/utils/collision.d.ts +9 -9
  378. package/types/utils/export.d.ts +45 -45
  379. package/types/utils/geometry/shape.d.ts +71 -71
  380. package/types/utils/index.d.ts +4 -4
  381. package/types/utils/withinBounds.d.ts +19 -19
@@ -1 +1 @@
1
- export {};
1
+ export {};
@@ -1,9 +1,9 @@
1
- import type { MaybePromise } from "./utility-types";
2
- type Job<T, TArgs extends unknown[]> = (...args: TArgs) => MaybePromise<T>;
3
- export declare class Queue {
4
- private jobs;
5
- private running;
6
- private tick;
7
- push<TValue, TArgs extends unknown[]>(jobFactory: Job<TValue, TArgs>, ...args: TArgs): Promise<TValue>;
8
- }
9
- export {};
1
+ import type { MaybePromise } from "./utility-types";
2
+ type Job<T, TArgs extends unknown[]> = (...args: TArgs) => MaybePromise<T>;
3
+ export declare class Queue {
4
+ private jobs;
5
+ private running;
6
+ private tick;
7
+ push<TValue, TArgs extends unknown[]>(jobFactory: Job<TValue, TArgs>, ...args: TArgs): Promise<TValue>;
8
+ }
9
+ export {};
@@ -1,4 +1,4 @@
1
- export declare const randomInteger: () => number;
2
- export declare const reseed: (seed: number) => void;
3
- export declare const randomId: () => string;
4
- export declare const obsidianId: (size?: number | undefined) => string;
1
+ export declare const randomInteger: () => number;
2
+ export declare const reseed: (seed: number) => void;
3
+ export declare const randomId: () => string;
4
+ export declare const obsidianId: (size?: number | undefined) => string;
@@ -1,14 +1,14 @@
1
- /**
2
- * @param func handler taking at most single parameter (event).
3
- */
4
- export declare const withBatchedUpdates: <TFunction extends ((event: any) => void) | (() => void)>(func: Parameters<TFunction>["length"] extends 0 | 1 ? TFunction : never) => TFunction;
5
- /**
6
- * barches React state updates and throttles the calls to a single call per
7
- * animation frame
8
- */
9
- export declare const withBatchedUpdatesThrottled: <TFunction extends ((event: any) => void) | (() => void)>(func: Parameters<TFunction>["length"] extends 0 | 1 ? TFunction : never) => {
10
- (...args: Parameters<TFunction>): void;
11
- flush(): void;
12
- cancel(): void;
13
- };
14
- export declare const isRenderThrottlingEnabled: () => boolean;
1
+ /**
2
+ * @param func handler taking at most single parameter (event).
3
+ */
4
+ export declare const withBatchedUpdates: <TFunction extends ((event: any) => void) | (() => void)>(func: Parameters<TFunction>["length"] extends 0 | 1 ? TFunction : never) => TFunction;
5
+ /**
6
+ * barches React state updates and throttles the calls to a single call per
7
+ * animation frame
8
+ */
9
+ export declare const withBatchedUpdatesThrottled: <TFunction extends ((event: any) => void) | (() => void)>(func: Parameters<TFunction>["length"] extends 0 | 1 ? TFunction : never) => {
10
+ (...args: Parameters<TFunction>): void;
11
+ flush(): void;
12
+ cancel(): void;
13
+ };
14
+ export declare const isRenderThrottlingEnabled: () => boolean;
@@ -1,6 +1,6 @@
1
- type EasingFunction = (progress: number) => number;
2
- interface EasingDictionary {
3
- [easing: string]: EasingFunction;
4
- }
5
- declare const easingsFunctions: EasingDictionary;
6
- export default easingsFunctions;
1
+ type EasingFunction = (progress: number) => number;
2
+ interface EasingDictionary {
3
+ [easing: string]: EasingFunction;
4
+ }
5
+ declare const easingsFunctions: EasingDictionary;
6
+ export default easingsFunctions;
@@ -1,13 +1,13 @@
1
- import type { StaticCanvasAppState, AppState } from "../types";
2
- import type { StaticCanvasRenderConfig } from "../scene/types";
3
- export declare const fillCircle: (context: CanvasRenderingContext2D, cx: number, cy: number, radius: number, stroke?: boolean) => void;
4
- export declare const getNormalizedCanvasDimensions: (canvas: HTMLCanvasElement, scale: number) => [number, number];
5
- export declare const bootstrapCanvas: ({ canvas, scale, normalizedWidth, normalizedHeight, theme, isExporting, viewBackgroundColor, }: {
6
- canvas: HTMLCanvasElement;
7
- scale: number;
8
- normalizedWidth: number;
9
- normalizedHeight: number;
10
- theme?: import("../element/types").Theme | undefined;
11
- isExporting?: boolean | undefined;
12
- viewBackgroundColor?: string | null | undefined;
13
- }) => CanvasRenderingContext2D;
1
+ import type { StaticCanvasRenderConfig } from "../scene/types";
2
+ import type { StaticCanvasAppState, AppState } from "../types";
3
+ export declare const fillCircle: (context: CanvasRenderingContext2D, cx: number, cy: number, radius: number, stroke?: boolean) => void;
4
+ export declare const getNormalizedCanvasDimensions: (canvas: HTMLCanvasElement, scale: number) => [number, number];
5
+ export declare const bootstrapCanvas: ({ canvas, scale, normalizedWidth, normalizedHeight, theme, isExporting, viewBackgroundColor, }: {
6
+ canvas: HTMLCanvasElement;
7
+ scale: number;
8
+ normalizedWidth: number;
9
+ normalizedHeight: number;
10
+ theme?: import("../element/types").Theme | undefined;
11
+ isExporting?: boolean | undefined;
12
+ viewBackgroundColor?: string | null | undefined;
13
+ }) => CanvasRenderingContext2D;
@@ -1,20 +1,20 @@
1
- import type { InteractiveSceneRenderConfig, RenderableElementsMap } from "../scene/types";
2
- /** throttled to animation framerate */
3
- export declare const renderInteractiveSceneThrottled: {
4
- (config: InteractiveSceneRenderConfig): void;
5
- flush(): void;
6
- cancel(): void;
7
- };
8
- /**
9
- * Interactive scene is the ui-canvas where we render bounding boxes, selections
10
- * and other ui stuff.
11
- */
12
- export declare const renderInteractiveScene: <U extends ({ canvas, elementsMap, visibleElements, selectedElements, allElementsMap, scale, appState, renderConfig, device, }: InteractiveSceneRenderConfig) => {
13
- atLeastOneVisibleElement: boolean;
14
- elementsMap: RenderableElementsMap;
15
- scrollBars?: undefined;
16
- } | {
17
- scrollBars: import("../scene/types").ScrollBars | undefined;
18
- atLeastOneVisibleElement: boolean;
19
- elementsMap: RenderableElementsMap;
20
- }, T extends boolean = false>(renderConfig: InteractiveSceneRenderConfig, throttle?: T | undefined) => T extends true ? void : ReturnType<U>;
1
+ import type { InteractiveSceneRenderConfig, RenderableElementsMap } from "../scene/types";
2
+ /** throttled to animation framerate */
3
+ export declare const renderInteractiveSceneThrottled: {
4
+ (config: InteractiveSceneRenderConfig): void;
5
+ flush(): void;
6
+ cancel(): void;
7
+ };
8
+ /**
9
+ * Interactive scene is the ui-canvas where we render bounding boxes, selections
10
+ * and other ui stuff.
11
+ */
12
+ export declare const renderInteractiveScene: <U extends ({ canvas, elementsMap, visibleElements, selectedElements, allElementsMap, scale, appState, renderConfig, device, }: InteractiveSceneRenderConfig) => {
13
+ atLeastOneVisibleElement: boolean;
14
+ elementsMap: RenderableElementsMap;
15
+ scrollBars?: undefined;
16
+ } | {
17
+ scrollBars: import("../scene/types").ScrollBars | undefined;
18
+ atLeastOneVisibleElement: boolean;
19
+ elementsMap: RenderableElementsMap;
20
+ }, T extends boolean = false>(renderConfig: InteractiveSceneRenderConfig, throttle?: T | undefined) => T extends true ? void : ReturnType<U>;
@@ -1,28 +1,28 @@
1
- import type { ExcalidrawElement, ExcalidrawTextElement, NonDeletedExcalidrawElement, ExcalidrawFreeDrawElement, ExcalidrawImageElement, ExcalidrawFrameLikeElement, NonDeletedSceneElementsMap } from "../element/types";
2
- import type { RoughCanvas } from "roughjs/bin/canvas";
3
- import type { StaticCanvasRenderConfig, RenderableElementsMap, InteractiveCanvasRenderConfig } from "../scene/types";
4
- import type { AppState, StaticCanvasAppState, InteractiveCanvasAppState, ElementsPendingErasure, PendingExcalidrawElements } from "../types";
5
- export declare const IMAGE_INVERT_FILTER = "invert(100%) hue-rotate(180deg) saturate(1.25)";
6
- export declare const getRenderOpacity: (element: ExcalidrawElement, containingFrame: ExcalidrawFrameLikeElement | null, elementsPendingErasure: ElementsPendingErasure, pendingNodes: Readonly<PendingExcalidrawElements> | null, globalAlpha?: number) => number;
7
- export interface ExcalidrawElementWithCanvas {
8
- element: ExcalidrawElement | ExcalidrawTextElement;
9
- canvas: HTMLCanvasElement;
10
- theme: AppState["theme"];
11
- scale: number;
12
- angle: number;
13
- zoomValue: AppState["zoom"]["value"];
14
- canvasOffsetX: number;
15
- canvasOffsetY: number;
16
- boundTextElementVersion: number | null;
17
- imageCrop: ExcalidrawImageElement["crop"] | null;
18
- containingFrameOpacity: number;
19
- boundTextCanvas: HTMLCanvasElement;
20
- }
21
- export declare const DEFAULT_LINK_SIZE = 14;
22
- export declare const elementWithCanvasCache: WeakMap<ExcalidrawElement, ExcalidrawElementWithCanvas>;
23
- export declare const renderSelectionElement: (element: NonDeletedExcalidrawElement, context: CanvasRenderingContext2D, appState: InteractiveCanvasAppState, selectionColor: InteractiveCanvasRenderConfig["selectionColor"]) => void;
24
- export declare const renderElement: (element: NonDeletedExcalidrawElement, elementsMap: RenderableElementsMap, allElementsMap: NonDeletedSceneElementsMap, rc: RoughCanvas, context: CanvasRenderingContext2D, renderConfig: StaticCanvasRenderConfig, appState: StaticCanvasAppState) => void;
25
- export declare const pathsCache: WeakMap<ExcalidrawFreeDrawElement, Path2D>;
26
- export declare function generateFreeDrawShape(element: ExcalidrawFreeDrawElement): Path2D;
27
- export declare function getFreeDrawPath2D(element: ExcalidrawFreeDrawElement): Path2D | undefined;
28
- export declare function getFreeDrawSvgPath(element: ExcalidrawFreeDrawElement): string;
1
+ import type { ExcalidrawElement, ExcalidrawTextElement, NonDeletedExcalidrawElement, ExcalidrawFreeDrawElement, ExcalidrawImageElement, ExcalidrawFrameLikeElement, NonDeletedSceneElementsMap } from "../element/types";
2
+ import type { StaticCanvasRenderConfig, RenderableElementsMap, InteractiveCanvasRenderConfig } from "../scene/types";
3
+ import type { AppState, StaticCanvasAppState, InteractiveCanvasAppState, ElementsPendingErasure, PendingExcalidrawElements } from "../types";
4
+ import type { RoughCanvas } from "roughjs/bin/canvas";
5
+ export declare const IMAGE_INVERT_FILTER = "invert(100%) hue-rotate(180deg) saturate(1.25)";
6
+ export declare const getRenderOpacity: (element: ExcalidrawElement, containingFrame: ExcalidrawFrameLikeElement | null, elementsPendingErasure: ElementsPendingErasure, pendingNodes: Readonly<PendingExcalidrawElements> | null, globalAlpha?: number) => number;
7
+ export interface ExcalidrawElementWithCanvas {
8
+ element: ExcalidrawElement | ExcalidrawTextElement;
9
+ canvas: HTMLCanvasElement;
10
+ theme: AppState["theme"];
11
+ scale: number;
12
+ angle: number;
13
+ zoomValue: AppState["zoom"]["value"];
14
+ canvasOffsetX: number;
15
+ canvasOffsetY: number;
16
+ boundTextElementVersion: number | null;
17
+ imageCrop: ExcalidrawImageElement["crop"] | null;
18
+ containingFrameOpacity: number;
19
+ boundTextCanvas: HTMLCanvasElement;
20
+ }
21
+ export declare const DEFAULT_LINK_SIZE = 14;
22
+ export declare const elementWithCanvasCache: WeakMap<ExcalidrawElement, ExcalidrawElementWithCanvas>;
23
+ export declare const renderSelectionElement: (element: NonDeletedExcalidrawElement, context: CanvasRenderingContext2D, appState: InteractiveCanvasAppState, selectionColor: InteractiveCanvasRenderConfig["selectionColor"]) => void;
24
+ export declare const renderElement: (element: NonDeletedExcalidrawElement, elementsMap: RenderableElementsMap, allElementsMap: NonDeletedSceneElementsMap, rc: RoughCanvas, context: CanvasRenderingContext2D, renderConfig: StaticCanvasRenderConfig, appState: StaticCanvasAppState) => void;
25
+ export declare const pathsCache: WeakMap<ExcalidrawFreeDrawElement, Path2D>;
26
+ export declare function generateFreeDrawShape(element: ExcalidrawFreeDrawElement): Path2D;
27
+ export declare function getFreeDrawPath2D(element: ExcalidrawFreeDrawElement): Path2D | undefined;
28
+ export declare function getFreeDrawSvgPath(element: ExcalidrawFreeDrawElement): string;
@@ -1,7 +1,7 @@
1
- import type { NewElementSceneRenderConfig } from "../scene/types";
2
- export declare const renderNewElementSceneThrottled: {
3
- (config: NewElementSceneRenderConfig): void;
4
- flush(): void;
5
- cancel(): void;
6
- };
7
- export declare const renderNewElementScene: (renderConfig: NewElementSceneRenderConfig, throttle?: boolean) => void;
1
+ import type { NewElementSceneRenderConfig } from "../scene/types";
2
+ export declare const renderNewElementSceneThrottled: {
3
+ (config: NewElementSceneRenderConfig): void;
4
+ flush(): void;
5
+ cancel(): void;
6
+ };
7
+ export declare const renderNewElementScene: (renderConfig: NewElementSceneRenderConfig, throttle?: boolean) => void;
@@ -1,2 +1,2 @@
1
- import type { InteractiveCanvasAppState } from "../types";
2
- export declare const renderSnaps: (context: CanvasRenderingContext2D, appState: InteractiveCanvasAppState) => void;
1
+ import type { InteractiveCanvasAppState } from "../types";
2
+ export declare const renderSnaps: (context: CanvasRenderingContext2D, appState: InteractiveCanvasAppState) => void;
@@ -1,11 +1,11 @@
1
- /**
2
- * https://stackoverflow.com/a/3368118
3
- * Draws a rounded rectangle using the current state of the canvas.
4
- * @param {CanvasRenderingContext2D} context
5
- * @param {Number} x The top left x coordinate
6
- * @param {Number} y The top left y coordinate
7
- * @param {Number} width The width of the rectangle
8
- * @param {Number} height The height of the rectangle
9
- * @param {Number} radius The corner radius
10
- */
11
- export declare const roundRect: (context: CanvasRenderingContext2D, x: number, y: number, width: number, height: number, radius: number, strokeColor?: string) => void;
1
+ /**
2
+ * https://stackoverflow.com/a/3368118
3
+ * Draws a rounded rectangle using the current state of the canvas.
4
+ * @param {CanvasRenderingContext2D} context
5
+ * @param {Number} x The top left x coordinate
6
+ * @param {Number} y The top left y coordinate
7
+ * @param {Number} width The width of the rectangle
8
+ * @param {Number} height The height of the rectangle
9
+ * @param {Number} radius The corner radius
10
+ */
11
+ export declare const roundRect: (context: CanvasRenderingContext2D, x: number, y: number, width: number, height: number, radius: number, strokeColor?: string) => void;
@@ -1,11 +1,11 @@
1
- import type { StaticSceneRenderConfig } from "../scene/types";
2
- /** throttled to animation framerate */
3
- export declare const renderStaticSceneThrottled: {
4
- (config: StaticSceneRenderConfig): void;
5
- flush(): void;
6
- cancel(): void;
7
- };
8
- /**
9
- * Static scene is the non-ui canvas where we render elements.
10
- */
11
- export declare const renderStaticScene: (renderConfig: StaticSceneRenderConfig, throttle?: boolean) => void;
1
+ import type { StaticSceneRenderConfig } from "../scene/types";
2
+ /** throttled to animation framerate */
3
+ export declare const renderStaticSceneThrottled: {
4
+ (config: StaticSceneRenderConfig): void;
5
+ flush(): void;
6
+ cancel(): void;
7
+ };
8
+ /**
9
+ * Static scene is the non-ui canvas where we render elements.
10
+ */
11
+ export declare const renderStaticScene: (renderConfig: StaticSceneRenderConfig, throttle?: boolean) => void;
@@ -1,5 +1,5 @@
1
- import type { RoughSVG } from "roughjs/bin/svg";
2
- import type { NonDeletedExcalidrawElement } from "../element/types";
3
- import type { RenderableElementsMap, SVGRenderConfig } from "../scene/types";
4
- import type { BinaryFiles } from "../types";
5
- export declare const renderSceneToSvg: (elements: readonly NonDeletedExcalidrawElement[], elementsMap: RenderableElementsMap, rsvg: RoughSVG, svgRoot: SVGElement, files: BinaryFiles, renderConfig: SVGRenderConfig) => void;
1
+ import type { NonDeletedExcalidrawElement } from "../element/types";
2
+ import type { RenderableElementsMap, SVGRenderConfig } from "../scene/types";
3
+ import type { BinaryFiles } from "../types";
4
+ import type { RoughSVG } from "roughjs/bin/svg";
5
+ export declare const renderSceneToSvg: (elements: readonly NonDeletedExcalidrawElement[], elementsMap: RenderableElementsMap, rsvg: RoughSVG, svgRoot: SVGElement, files: BinaryFiles, renderConfig: SVGRenderConfig) => void;
@@ -1,28 +1,28 @@
1
- import type { ExcalidrawElement, NonDeletedExcalidrawElement } from "../element/types";
2
- import type { AppState } from "../types";
3
- import type Scene from "./Scene";
4
- export declare class Renderer {
5
- private scene;
6
- constructor(scene: Scene);
7
- getRenderableElements: ((opts: {
8
- zoom: AppState["zoom"];
9
- offsetLeft: AppState["offsetLeft"];
10
- offsetTop: AppState["offsetTop"];
11
- scrollX: AppState["scrollX"];
12
- scrollY: AppState["scrollY"];
13
- height: AppState["height"];
14
- width: AppState["width"];
15
- editingTextElement: AppState["editingTextElement"];
16
- /** note: first render of newElement will always bust the cache
17
- * (we'd have to prefilter elements outside of this function) */
18
- newElementId: ExcalidrawElement["id"] | undefined;
19
- pendingImageElementId: AppState["pendingImageElementId"];
20
- sceneNonce: ReturnType<InstanceType<typeof Scene>["getSceneNonce"]>;
21
- }) => {
22
- elementsMap: Map<string, NonDeletedExcalidrawElement> & import("../utility-types").MakeBrand<"NonDeletedElementsMap"> & import("../utility-types").MakeBrand<"RenderableElementsMap">;
23
- visibleElements: readonly NonDeletedExcalidrawElement[];
24
- }) & {
25
- clear: () => void;
26
- };
27
- destroy(): void;
28
- }
1
+ import type Scene from "./Scene";
2
+ import type { ExcalidrawElement, NonDeletedExcalidrawElement } from "../element/types";
3
+ import type { AppState } from "../types";
4
+ export declare class Renderer {
5
+ private scene;
6
+ constructor(scene: Scene);
7
+ getRenderableElements: ((opts: {
8
+ zoom: AppState["zoom"];
9
+ offsetLeft: AppState["offsetLeft"];
10
+ offsetTop: AppState["offsetTop"];
11
+ scrollX: AppState["scrollX"];
12
+ scrollY: AppState["scrollY"];
13
+ height: AppState["height"];
14
+ width: AppState["width"];
15
+ editingTextElement: AppState["editingTextElement"];
16
+ /** note: first render of newElement will always bust the cache
17
+ * (we'd have to prefilter elements outside of this function) */
18
+ newElementId: ExcalidrawElement["id"] | undefined;
19
+ pendingImageElementId: AppState["pendingImageElementId"];
20
+ sceneNonce: ReturnType<InstanceType<typeof Scene>["getSceneNonce"]>;
21
+ }) => {
22
+ elementsMap: Map<string, NonDeletedExcalidrawElement> & import("../utility-types").MakeBrand<"NonDeletedElementsMap"> & import("../utility-types").MakeBrand<"RenderableElementsMap">;
23
+ visibleElements: readonly NonDeletedExcalidrawElement[];
24
+ }) & {
25
+ clear: () => void;
26
+ };
27
+ destroy(): void;
28
+ }
@@ -1,79 +1,79 @@
1
- import type { ExcalidrawElement, NonDeletedExcalidrawElement, NonDeleted, ExcalidrawFrameLikeElement, ElementsMapOrArray, OrderedExcalidrawElement, Ordered } from "../element/types";
2
- import type { LinearElementEditor } from "../element/linearElementEditor";
3
- import type { AppState } from "../types";
4
- type ElementIdKey = InstanceType<typeof LinearElementEditor>["elementId"];
5
- type ElementKey = ExcalidrawElement | ElementIdKey;
6
- type SceneStateCallback = () => void;
7
- type SceneStateCallbackRemover = () => void;
8
- export type ExcalidrawElementsIncludingDeleted = readonly ExcalidrawElement[];
9
- declare class Scene {
10
- private static sceneMapByElement;
11
- private static sceneMapById;
12
- static mapElementToScene(elementKey: ElementKey, scene: Scene): void;
13
- /**
14
- * @deprecated pass down `app.scene` and use it directly
15
- */
16
- static getScene(elementKey: ElementKey): Scene | null;
17
- private callbacks;
18
- private nonDeletedElements;
19
- private nonDeletedElementsMap;
20
- private elements;
21
- private nonDeletedFramesLikes;
22
- private frames;
23
- private elementsMap;
24
- private selectedElementsCache;
25
- /**
26
- * Random integer regenerated each scene update.
27
- *
28
- * Does not relate to elements versions, it's only a renderer
29
- * cache-invalidation nonce at the moment.
30
- */
31
- private sceneNonce;
32
- getSceneNonce(): number | undefined;
33
- getNonDeletedElementsMap(): Map<string, Ordered<NonDeletedExcalidrawElement>> & import("../utility-types").MakeBrand<"NonDeletedSceneElementsMap">;
34
- getElementsIncludingDeleted(): readonly OrderedExcalidrawElement[];
35
- getElementsMapIncludingDeleted(): Map<string, Ordered<ExcalidrawElement>> & import("../utility-types").MakeBrand<"SceneElementsMap">;
36
- getNonDeletedElements(): readonly Ordered<NonDeletedExcalidrawElement>[];
37
- getFramesIncludingDeleted(): readonly ExcalidrawFrameLikeElement[];
38
- getSelectedElements(opts: {
39
- selectedElementIds: AppState["selectedElementIds"];
40
- /**
41
- * for specific cases where you need to use elements not from current
42
- * scene state. This in effect will likely result in cache-miss, and
43
- * the cache won't be updated in this case.
44
- */
45
- elements?: ElementsMapOrArray;
46
- includeBoundTextElement?: boolean;
47
- includeElementsInFrames?: boolean;
48
- }): NonDeleted<ExcalidrawElement>[];
49
- getNonDeletedFramesLikes(): readonly NonDeleted<ExcalidrawFrameLikeElement>[];
50
- getElement<T extends ExcalidrawElement>(id: T["id"]): T | null;
51
- getNonDeletedElement(id: ExcalidrawElement["id"]): NonDeleted<ExcalidrawElement> | null;
52
- /**
53
- * A utility method to help with updating all scene elements, with the added
54
- * performance optimization of not renewing the array if no change is made.
55
- *
56
- * Maps all current excalidraw elements, invoking the callback for each
57
- * element. The callback should either return a new mapped element, or the
58
- * original element if no changes are made. If no changes are made to any
59
- * element, this results in a no-op. Otherwise, the newly mapped elements
60
- * are set as the next scene's elements.
61
- *
62
- * @returns whether a change was made
63
- */
64
- mapElements(iteratee: (element: ExcalidrawElement) => ExcalidrawElement): boolean;
65
- replaceAllElements(nextElements: ElementsMapOrArray): void;
66
- triggerUpdate(): void;
67
- onUpdate(cb: SceneStateCallback): SceneStateCallbackRemover;
68
- destroy(): void;
69
- insertElementAtIndex(element: ExcalidrawElement, index: number): void;
70
- insertElementsAtIndex(elements: ExcalidrawElement[], index: number): void;
71
- insertElement: (element: ExcalidrawElement, idx?: number) => void;
72
- insertElements: (elements: ExcalidrawElement[]) => void;
73
- getElementIndex(elementId: string): number;
74
- getContainerElement: (element: (ExcalidrawElement & {
75
- containerId: ExcalidrawElement["id"] | null;
76
- }) | null) => import("../element/types").ExcalidrawSelectionElement | import("../element/types").ExcalidrawRectangleElement | import("../element/types").ExcalidrawDiamondElement | import("../element/types").ExcalidrawEllipseElement | import("../element/types").ExcalidrawTextElement | import("../element/types").ExcalidrawLinearElement | import("../element/types").ExcalidrawFreeDrawElement | import("../element/types").ExcalidrawImageElement | import("../element/types").ExcalidrawFrameElement | import("../element/types").ExcalidrawMagicFrameElement | import("../element/types").ExcalidrawIframeElement | import("../element/types").ExcalidrawEmbeddableElement | null;
77
- getElementsFromId: (id: string) => ExcalidrawElement[];
78
- }
79
- export default Scene;
1
+ import type { LinearElementEditor } from "../element/linearElementEditor";
2
+ import type { ExcalidrawElement, NonDeletedExcalidrawElement, NonDeleted, ExcalidrawFrameLikeElement, ElementsMapOrArray, OrderedExcalidrawElement, Ordered } from "../element/types";
3
+ import type { AppState } from "../types";
4
+ type ElementIdKey = InstanceType<typeof LinearElementEditor>["elementId"];
5
+ type ElementKey = ExcalidrawElement | ElementIdKey;
6
+ type SceneStateCallback = () => void;
7
+ type SceneStateCallbackRemover = () => void;
8
+ export type ExcalidrawElementsIncludingDeleted = readonly ExcalidrawElement[];
9
+ declare class Scene {
10
+ private static sceneMapByElement;
11
+ private static sceneMapById;
12
+ static mapElementToScene(elementKey: ElementKey, scene: Scene): void;
13
+ /**
14
+ * @deprecated pass down `app.scene` and use it directly
15
+ */
16
+ static getScene(elementKey: ElementKey): Scene | null;
17
+ private callbacks;
18
+ private nonDeletedElements;
19
+ private nonDeletedElementsMap;
20
+ private elements;
21
+ private nonDeletedFramesLikes;
22
+ private frames;
23
+ private elementsMap;
24
+ private selectedElementsCache;
25
+ /**
26
+ * Random integer regenerated each scene update.
27
+ *
28
+ * Does not relate to elements versions, it's only a renderer
29
+ * cache-invalidation nonce at the moment.
30
+ */
31
+ private sceneNonce;
32
+ getSceneNonce(): number | undefined;
33
+ getNonDeletedElementsMap(): Map<string, Ordered<NonDeletedExcalidrawElement>> & import("../utility-types").MakeBrand<"NonDeletedSceneElementsMap">;
34
+ getElementsIncludingDeleted(): readonly OrderedExcalidrawElement[];
35
+ getElementsMapIncludingDeleted(): Map<string, Ordered<ExcalidrawElement>> & import("../utility-types").MakeBrand<"SceneElementsMap">;
36
+ getNonDeletedElements(): readonly Ordered<NonDeletedExcalidrawElement>[];
37
+ getFramesIncludingDeleted(): readonly ExcalidrawFrameLikeElement[];
38
+ getSelectedElements(opts: {
39
+ selectedElementIds: AppState["selectedElementIds"];
40
+ /**
41
+ * for specific cases where you need to use elements not from current
42
+ * scene state. This in effect will likely result in cache-miss, and
43
+ * the cache won't be updated in this case.
44
+ */
45
+ elements?: ElementsMapOrArray;
46
+ includeBoundTextElement?: boolean;
47
+ includeElementsInFrames?: boolean;
48
+ }): NonDeleted<ExcalidrawElement>[];
49
+ getNonDeletedFramesLikes(): readonly NonDeleted<ExcalidrawFrameLikeElement>[];
50
+ getElement<T extends ExcalidrawElement>(id: T["id"]): T | null;
51
+ getNonDeletedElement(id: ExcalidrawElement["id"]): NonDeleted<ExcalidrawElement> | null;
52
+ /**
53
+ * A utility method to help with updating all scene elements, with the added
54
+ * performance optimization of not renewing the array if no change is made.
55
+ *
56
+ * Maps all current excalidraw elements, invoking the callback for each
57
+ * element. The callback should either return a new mapped element, or the
58
+ * original element if no changes are made. If no changes are made to any
59
+ * element, this results in a no-op. Otherwise, the newly mapped elements
60
+ * are set as the next scene's elements.
61
+ *
62
+ * @returns whether a change was made
63
+ */
64
+ mapElements(iteratee: (element: ExcalidrawElement) => ExcalidrawElement): boolean;
65
+ replaceAllElements(nextElements: ElementsMapOrArray): void;
66
+ triggerUpdate(): void;
67
+ onUpdate(cb: SceneStateCallback): SceneStateCallbackRemover;
68
+ destroy(): void;
69
+ insertElementAtIndex(element: ExcalidrawElement, index: number): void;
70
+ insertElementsAtIndex(elements: ExcalidrawElement[], index: number): void;
71
+ insertElement: (element: ExcalidrawElement, idx?: number) => void;
72
+ insertElements: (elements: ExcalidrawElement[]) => void;
73
+ getElementIndex(elementId: string): number;
74
+ getContainerElement: (element: (ExcalidrawElement & {
75
+ containerId: ExcalidrawElement["id"] | null;
76
+ }) | null) => import("../element/types").ExcalidrawLinearElement | import("../element/types").ExcalidrawSelectionElement | import("../element/types").ExcalidrawRectangleElement | import("../element/types").ExcalidrawDiamondElement | import("../element/types").ExcalidrawEllipseElement | import("../element/types").ExcalidrawEmbeddableElement | import("../element/types").ExcalidrawIframeElement | import("../element/types").ExcalidrawImageElement | import("../element/types").ExcalidrawFrameElement | import("../element/types").ExcalidrawMagicFrameElement | import("../element/types").ExcalidrawTextElement | import("../element/types").ExcalidrawFreeDrawElement | null;
77
+ getElementsFromId: (id: string) => ExcalidrawElement[];
78
+ }
79
+ export default Scene;
@@ -1,17 +1,17 @@
1
- import type { Drawable, Options } from "roughjs/bin/core";
2
- import type { RoughGenerator } from "roughjs/bin/generator";
3
- import type { ExcalidrawElement, NonDeletedExcalidrawElement, ExcalidrawSelectionElement } from "../element/types";
4
- import type { EmbedsValidationStatus } from "../types";
5
- export declare const generateRoughOptions: (element: ExcalidrawElement, continuousPath?: boolean) => Options;
6
- /**
7
- * Generates the roughjs shape for given element.
8
- *
9
- * Low-level. Use `ShapeCache.generateElementShape` instead.
10
- *
11
- * @private
12
- */
13
- export declare const _generateElementShape: (element: Exclude<NonDeletedExcalidrawElement, ExcalidrawSelectionElement>, generator: RoughGenerator, { isExporting, canvasBackgroundColor, embedsValidationStatus, }: {
14
- isExporting: boolean;
15
- canvasBackgroundColor: string;
16
- embedsValidationStatus: EmbedsValidationStatus | null;
17
- }) => Drawable | Drawable[] | null;
1
+ import type { ExcalidrawElement, NonDeletedExcalidrawElement, ExcalidrawSelectionElement } from "../element/types";
2
+ import type { EmbedsValidationStatus } from "../types";
3
+ import type { Drawable, Options } from "roughjs/bin/core";
4
+ import type { RoughGenerator } from "roughjs/bin/generator";
5
+ export declare const generateRoughOptions: (element: ExcalidrawElement, continuousPath?: boolean) => Options;
6
+ /**
7
+ * Generates the roughjs shape for given element.
8
+ *
9
+ * Low-level. Use `ShapeCache.generateElementShape` instead.
10
+ *
11
+ * @private
12
+ */
13
+ export declare const _generateElementShape: (element: Exclude<NonDeletedExcalidrawElement, ExcalidrawSelectionElement>, generator: RoughGenerator, { isExporting, canvasBackgroundColor, embedsValidationStatus, }: {
14
+ isExporting: boolean;
15
+ canvasBackgroundColor: string;
16
+ embedsValidationStatus: EmbedsValidationStatus | null;
17
+ }) => Drawable | Drawable[] | null;
@@ -1,25 +1,25 @@
1
- import type { Drawable } from "roughjs/bin/core";
2
- import type { ExcalidrawElement } from "../element/types";
3
- import type { ElementShape, ElementShapes } from "./types";
4
- import type { AppState, EmbedsValidationStatus } from "../types";
5
- export declare class ShapeCache {
6
- private static rg;
7
- private static cache;
8
- /**
9
- * Retrieves shape from cache if available. Use this only if shape
10
- * is optional and you have a fallback in case it's not cached.
11
- */
12
- static get: <T extends ExcalidrawElement>(element: T) => T["type"] extends keyof ElementShapes ? ElementShapes[T["type"]] | undefined : ElementShape | undefined;
13
- static set: <T extends ExcalidrawElement>(element: T, shape: T["type"] extends keyof ElementShapes ? ElementShapes[T["type"]] : Drawable) => WeakMap<ExcalidrawElement, ElementShape>;
14
- static delete: (element: ExcalidrawElement) => boolean;
15
- static destroy: () => void;
16
- /**
17
- * Generates & caches shape for element if not already cached, otherwise
18
- * returns cached shape.
19
- */
20
- static generateElementShape: <T extends import("../element/types").ExcalidrawRectangleElement | import("../element/types").ExcalidrawDiamondElement | import("../element/types").ExcalidrawEllipseElement | import("../element/types").ExcalidrawTextElement | import("../element/types").ExcalidrawLinearElement | import("../element/types").ExcalidrawArrowElement | import("../element/types").ExcalidrawFreeDrawElement | import("../element/types").ExcalidrawImageElement | import("../element/types").ExcalidrawFrameElement | import("../element/types").ExcalidrawMagicFrameElement | import("../element/types").ExcalidrawIframeElement | import("../element/types").ExcalidrawEmbeddableElement>(element: T, renderConfig: {
21
- isExporting: boolean;
22
- canvasBackgroundColor: AppState["viewBackgroundColor"];
23
- embedsValidationStatus: EmbedsValidationStatus;
24
- } | null) => ((T["type"] extends keyof ElementShapes ? ElementShapes[T["type"]] | undefined : ElementShape | undefined) & ({} | null)) | (T["type"] extends keyof ElementShapes ? ElementShapes[T["type"]] : Drawable | null);
25
- }
1
+ import type { ExcalidrawElement } from "../element/types";
2
+ import type { AppState, EmbedsValidationStatus } from "../types";
3
+ import type { ElementShape, ElementShapes } from "./types";
4
+ import type { Drawable } from "roughjs/bin/core";
5
+ export declare class ShapeCache {
6
+ private static rg;
7
+ private static cache;
8
+ /**
9
+ * Retrieves shape from cache if available. Use this only if shape
10
+ * is optional and you have a fallback in case it's not cached.
11
+ */
12
+ static get: <T extends ExcalidrawElement>(element: T) => T["type"] extends keyof ElementShapes ? ElementShapes[T["type"]] | undefined : ElementShape | undefined;
13
+ static set: <T extends ExcalidrawElement>(element: T, shape: T["type"] extends keyof ElementShapes ? ElementShapes[T["type"]] : Drawable) => WeakMap<ExcalidrawElement, ElementShape>;
14
+ static delete: (element: ExcalidrawElement) => boolean;
15
+ static destroy: () => void;
16
+ /**
17
+ * Generates & caches shape for element if not already cached, otherwise
18
+ * returns cached shape.
19
+ */
20
+ static generateElementShape: <T extends import("../element/types").ExcalidrawLinearElement | import("../element/types").ExcalidrawRectangleElement | import("../element/types").ExcalidrawDiamondElement | import("../element/types").ExcalidrawEllipseElement | import("../element/types").ExcalidrawEmbeddableElement | import("../element/types").ExcalidrawIframeElement | import("../element/types").ExcalidrawImageElement | import("../element/types").ExcalidrawFrameElement | import("../element/types").ExcalidrawMagicFrameElement | import("../element/types").ExcalidrawTextElement | import("../element/types").ExcalidrawFreeDrawElement | import("../element/types").ExcalidrawArrowElement>(element: T, renderConfig: {
21
+ isExporting: boolean;
22
+ canvasBackgroundColor: AppState["viewBackgroundColor"];
23
+ embedsValidationStatus: EmbedsValidationStatus;
24
+ } | null) => ((T["type"] extends keyof ElementShapes ? ElementShapes[T["type"]] | undefined : ElementShape | undefined) & ({} | null)) | (T["type"] extends keyof ElementShapes ? ElementShapes[T["type"]] : Drawable | null);
25
+ }
@@ -1,8 +1,8 @@
1
- import type { ElementOrToolType } from "../types";
2
- export declare const hasBackground: (type: ElementOrToolType) => boolean;
3
- export declare const hasStrokeColor: (type: ElementOrToolType) => boolean;
4
- export declare const hasStrokeWidth: (type: ElementOrToolType) => boolean;
5
- export declare const hasStrokeStyle: (type: ElementOrToolType) => boolean;
6
- export declare const canChangeRoundness: (type: ElementOrToolType) => boolean;
7
- export declare const toolIsArrow: (type: ElementOrToolType) => boolean;
8
- export declare const canHaveArrowheads: (type: ElementOrToolType) => boolean;
1
+ import type { ElementOrToolType } from "../types";
2
+ export declare const hasBackground: (type: ElementOrToolType) => boolean;
3
+ export declare const hasStrokeColor: (type: ElementOrToolType) => boolean;
4
+ export declare const hasStrokeWidth: (type: ElementOrToolType) => boolean;
5
+ export declare const hasStrokeStyle: (type: ElementOrToolType) => boolean;
6
+ export declare const canChangeRoundness: (type: ElementOrToolType) => boolean;
7
+ export declare const toolIsArrow: (type: ElementOrToolType) => boolean;
8
+ export declare const canHaveArrowheads: (type: ElementOrToolType) => boolean;