@zsviczian/excalidraw 0.17.6-2 → 0.17.6-20

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 (425) hide show
  1. package/dist/excalidraw.development.js +13047 -1542
  2. package/dist/excalidraw.production.min.js +1 -1
  3. package/dist/excalidraw.production.min.js.LICENSE.txt +21 -1
  4. package/dist/styles.development.css +425 -347
  5. package/dist/styles.production.css +3 -2
  6. package/package.json +2 -3
  7. package/types/excalidraw/actions/actionAddToLibrary.d.ts +629 -605
  8. package/types/excalidraw/actions/actionAlign.d.ts +108 -108
  9. package/types/excalidraw/actions/actionBoundText.d.ts +456 -440
  10. package/types/excalidraw/actions/actionCanvas.d.ts +3070 -2958
  11. package/types/excalidraw/actions/actionClipboard.d.ts +1370 -1322
  12. package/types/excalidraw/actions/actionCropEditor.d.ts +222 -0
  13. package/types/excalidraw/actions/actionDeleteSelected.d.ts +664 -640
  14. package/types/excalidraw/actions/actionDistribute.d.ts +34 -34
  15. package/types/excalidraw/actions/actionDuplicateSelection.d.ts +21 -21
  16. package/types/excalidraw/actions/actionElementLink.d.ts +244 -0
  17. package/types/excalidraw/actions/actionElementLock.d.ts +444 -428
  18. package/types/excalidraw/actions/actionExport.d.ts +1953 -1884
  19. package/types/excalidraw/actions/actionFinalize.d.ts +425 -409
  20. package/types/excalidraw/actions/actionFlip.d.ts +34 -34
  21. package/types/excalidraw/actions/actionFrame.d.ts +887 -855
  22. package/types/excalidraw/actions/actionGroup.d.ts +454 -438
  23. package/types/excalidraw/actions/actionHistory.d.ts +7 -7
  24. package/types/excalidraw/actions/actionLinearEditor.d.ts +223 -215
  25. package/types/excalidraw/actions/actionLink.d.ts +223 -215
  26. package/types/excalidraw/actions/actionMenu.d.ts +649 -628
  27. package/types/excalidraw/actions/actionNavigate.d.ts +430 -414
  28. package/types/excalidraw/actions/actionProperties.d.ts +3276 -3156
  29. package/types/excalidraw/actions/actionSelectAll.d.ts +222 -214
  30. package/types/excalidraw/actions/actionStyles.d.ts +236 -228
  31. package/types/excalidraw/actions/actionTextAutoResize.d.ts +17 -17
  32. package/types/excalidraw/actions/actionToggleGridMode.d.ts +225 -217
  33. package/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +223 -215
  34. package/types/excalidraw/actions/actionToggleSearchMenu.d.ts +420 -407
  35. package/types/excalidraw/actions/actionToggleStats.d.ts +223 -215
  36. package/types/excalidraw/actions/actionToggleViewMode.d.ts +224 -216
  37. package/types/excalidraw/actions/actionToggleZenMode.d.ts +224 -216
  38. package/types/excalidraw/actions/actionZindex.d.ts +74 -74
  39. package/types/excalidraw/actions/index.d.ts +27 -26
  40. package/types/excalidraw/actions/manager.d.ts +21 -21
  41. package/types/excalidraw/actions/register.d.ts +5 -5
  42. package/types/excalidraw/actions/shortcuts.d.ts +4 -4
  43. package/types/excalidraw/actions/types.d.ts +46 -46
  44. package/types/excalidraw/align.d.ts +6 -6
  45. package/types/excalidraw/analytics.d.ts +1 -1
  46. package/types/excalidraw/animated-trail.d.ts +33 -33
  47. package/types/excalidraw/animation-frame-handler.d.ts +16 -16
  48. package/types/excalidraw/appState.d.ts +89 -89
  49. package/types/excalidraw/binaryheap.d.ts +12 -12
  50. package/types/excalidraw/change.d.ts +191 -191
  51. package/types/excalidraw/charts.d.ts +27 -27
  52. package/types/excalidraw/clients.d.ts +14 -14
  53. package/types/excalidraw/clipboard.d.ts +44 -44
  54. package/types/excalidraw/colors.d.ts +61 -61
  55. package/types/excalidraw/components/Actions.d.ts +34 -34
  56. package/types/excalidraw/components/ActiveConfirmDialog.d.ts +4 -4
  57. package/types/excalidraw/components/App.d.ts +550 -535
  58. package/types/excalidraw/components/Avatar.d.ts +11 -11
  59. package/types/excalidraw/components/BraveMeasureTextError.d.ts +2 -2
  60. package/types/excalidraw/components/Button.d.ts +17 -17
  61. package/types/excalidraw/components/ButtonIcon.d.ts +14 -14
  62. package/types/excalidraw/components/ButtonIconCycle.d.ts +10 -10
  63. package/types/excalidraw/components/ButtonIconSelect.d.ts +19 -19
  64. package/types/excalidraw/components/ButtonSelect.d.ts +9 -9
  65. package/types/excalidraw/components/ButtonSeparator.d.ts +1 -1
  66. package/types/excalidraw/components/Card.d.ts +6 -6
  67. package/types/excalidraw/components/CheckboxItem.d.ts +8 -8
  68. package/types/excalidraw/components/ColorPicker/ColorInput.d.ts +9 -9
  69. package/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +19 -19
  70. package/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +8 -8
  71. package/types/excalidraw/components/ColorPicker/HotkeyLabel.d.ts +8 -8
  72. package/types/excalidraw/components/ColorPicker/Picker.d.ts +18 -18
  73. package/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +10 -10
  74. package/types/excalidraw/components/ColorPicker/PickerHeading.d.ts +5 -5
  75. package/types/excalidraw/components/ColorPicker/ShadeList.d.ts +8 -8
  76. package/types/excalidraw/components/ColorPicker/TopPicks.d.ts +9 -9
  77. package/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +21 -21
  78. package/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +20 -20
  79. package/types/excalidraw/components/CommandPalette/CommandPalette.d.ts +18 -18
  80. package/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +2 -2
  81. package/types/excalidraw/components/CommandPalette/types.d.ts +25 -25
  82. package/types/excalidraw/components/ConfirmDialog.d.ts +10 -10
  83. package/types/excalidraw/components/ContextMenu.d.ts +16 -16
  84. package/types/excalidraw/components/DarkModeToggle.d.ts +7 -7
  85. package/types/excalidraw/components/DefaultSidebar.d.ts +30 -30
  86. package/types/excalidraw/components/DiagramToCodePlugin/DiagramToCodePlugin.d.ts +4 -4
  87. package/types/excalidraw/components/Dialog.d.ts +13 -13
  88. package/types/excalidraw/components/DialogActionButton.d.ts +10 -10
  89. package/types/excalidraw/components/ElementLinkDialog.d.ts +11 -0
  90. package/types/excalidraw/components/ErrorDialog.d.ts +5 -5
  91. package/types/excalidraw/components/ExcalidrawLogo.d.ts +15 -15
  92. package/types/excalidraw/components/EyeDropper.d.ts +27 -27
  93. package/types/excalidraw/components/FilledButton.d.ts +18 -18
  94. package/types/excalidraw/components/FixedSideContainer.d.ts +9 -9
  95. package/types/excalidraw/components/FollowMode/FollowMode.d.ts +10 -10
  96. package/types/excalidraw/components/FontPicker/FontPicker.d.ts +21 -21
  97. package/types/excalidraw/components/FontPicker/FontPickerList.d.ts +25 -25
  98. package/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +6 -6
  99. package/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +13 -13
  100. package/types/excalidraw/components/HandButton.d.ts +10 -10
  101. package/types/excalidraw/components/HelpButton.d.ts +7 -7
  102. package/types/excalidraw/components/HelpDialog.d.ts +4 -4
  103. package/types/excalidraw/components/HintViewer.d.ts +10 -10
  104. package/types/excalidraw/components/IconPicker.d.ts +14 -14
  105. package/types/excalidraw/components/ImageExportDialog.d.ts +14 -14
  106. package/types/excalidraw/components/InitializeApp.d.ts +10 -10
  107. package/types/excalidraw/components/InlineIcon.d.ts +3 -3
  108. package/types/excalidraw/components/Island.d.ts +10 -10
  109. package/types/excalidraw/components/JSONExportDialog.d.ts +15 -15
  110. package/types/excalidraw/components/LaserPointerButton.d.ts +10 -10
  111. package/types/excalidraw/components/LayerUI.d.ts +31 -30
  112. package/types/excalidraw/components/LibraryMenu.d.ts +24 -24
  113. package/types/excalidraw/components/LibraryMenuBrowseButton.d.ts +7 -7
  114. package/types/excalidraw/components/LibraryMenuControlButtons.d.ts +9 -9
  115. package/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +17 -17
  116. package/types/excalidraw/components/LibraryMenuItems.d.ts +14 -14
  117. package/types/excalidraw/components/LibraryMenuSection.d.ts +23 -23
  118. package/types/excalidraw/components/LibraryUnit.d.ts +14 -14
  119. package/types/excalidraw/components/LoadingMessage.d.ts +5 -5
  120. package/types/excalidraw/components/LockButton.d.ts +10 -10
  121. package/types/excalidraw/components/MagicButton.d.ts +9 -9
  122. package/types/excalidraw/components/MobileMenu.d.ts +24 -24
  123. package/types/excalidraw/components/Modal.d.ts +14 -14
  124. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirm.d.ts +17 -17
  125. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmActions.d.ts +17 -17
  126. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +22 -22
  127. package/types/excalidraw/components/Paragraph.d.ts +4 -4
  128. package/types/excalidraw/components/PasteChartDialog.d.ts +8 -8
  129. package/types/excalidraw/components/PenModeButton.d.ts +12 -12
  130. package/types/excalidraw/components/Popover.d.ts +15 -15
  131. package/types/excalidraw/components/ProjectName.d.ts +10 -10
  132. package/types/excalidraw/components/PropertiesPopover.d.ts +15 -15
  133. package/types/excalidraw/components/PublishLibrary.d.ts +16 -16
  134. package/types/excalidraw/components/QuickSearch.d.ts +9 -9
  135. package/types/excalidraw/components/RadioGroup.d.ts +13 -13
  136. package/types/excalidraw/components/SVGLayer.d.ts +7 -7
  137. package/types/excalidraw/components/ScrollableList.d.ts +8 -8
  138. package/types/excalidraw/components/SearchMenu.d.ts +5 -5
  139. package/types/excalidraw/components/SearchSidebar.d.ts +1 -0
  140. package/types/excalidraw/components/Section.d.ts +6 -6
  141. package/types/excalidraw/components/ShareableLinkDialog.d.ts +7 -7
  142. package/types/excalidraw/components/Sidebar/Sidebar.d.ts +76 -76
  143. package/types/excalidraw/components/Sidebar/SidebarHeader.d.ts +7 -7
  144. package/types/excalidraw/components/Sidebar/SidebarTab.d.ts +8 -8
  145. package/types/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +9 -9
  146. package/types/excalidraw/components/Sidebar/SidebarTabTriggers.d.ts +6 -6
  147. package/types/excalidraw/components/Sidebar/SidebarTabs.d.ts +6 -6
  148. package/types/excalidraw/components/Sidebar/SidebarTrigger.d.ts +6 -6
  149. package/types/excalidraw/components/Sidebar/common.d.ts +33 -33
  150. package/types/excalidraw/components/Spinner.d.ts +8 -8
  151. package/types/excalidraw/components/Stack.d.ts +16 -16
  152. package/types/excalidraw/components/Stats/Angle.d.ts +11 -11
  153. package/types/excalidraw/components/Stats/CanvasGrid.d.ts +10 -10
  154. package/types/excalidraw/components/Stats/CanvasGridSize.d.ts +10 -10
  155. package/types/excalidraw/components/Stats/Collapsible.d.ts +8 -8
  156. package/types/excalidraw/components/Stats/Dimension.d.ts +11 -11
  157. package/types/excalidraw/components/Stats/DragInput.d.ts +34 -34
  158. package/types/excalidraw/components/Stats/FontSize.d.ts +11 -11
  159. package/types/excalidraw/components/Stats/MultiAngle.d.ts +11 -11
  160. package/types/excalidraw/components/Stats/MultiDimension.d.ts +14 -14
  161. package/types/excalidraw/components/Stats/MultiFontSize.d.ts +12 -12
  162. package/types/excalidraw/components/Stats/MultiPosition.d.ts +14 -14
  163. package/types/excalidraw/components/Stats/Position.d.ts +12 -12
  164. package/types/excalidraw/components/Stats/index.d.ts +35 -35
  165. package/types/excalidraw/components/Stats/utils.d.ts +26 -26
  166. package/types/excalidraw/components/Switch.d.ts +9 -9
  167. package/types/excalidraw/components/TTDDialog/MermaidToExcalidraw.d.ts +8 -14
  168. package/types/excalidraw/components/TTDDialog/MermaidToExcalidrawLib.d.ts +9 -0
  169. package/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +29 -29
  170. package/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +9 -9
  171. package/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +7 -7
  172. package/types/excalidraw/components/TTDDialog/TTDDialogPanel.d.ts +17 -17
  173. package/types/excalidraw/components/TTDDialog/TTDDialogPanels.d.ts +4 -4
  174. package/types/excalidraw/components/TTDDialog/TTDDialogSubmitShortcut.d.ts +1 -1
  175. package/types/excalidraw/components/TTDDialog/TTDDialogTab.d.ts +7 -7
  176. package/types/excalidraw/components/TTDDialog/TTDDialogTabTrigger.d.ts +8 -8
  177. package/types/excalidraw/components/TTDDialog/TTDDialogTabTriggers.d.ts +6 -6
  178. package/types/excalidraw/components/TTDDialog/TTDDialogTabs.d.ts +11 -11
  179. package/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +8 -8
  180. package/types/excalidraw/components/TTDDialog/common.d.ts +32 -32
  181. package/types/excalidraw/components/TextField.d.ts +21 -21
  182. package/types/excalidraw/components/Toast.d.ts +9 -9
  183. package/types/excalidraw/components/ToolButton.d.ts +49 -49
  184. package/types/excalidraw/components/Tooltip.d.ts +18 -18
  185. package/types/excalidraw/components/Trans.d.ts +9 -9
  186. package/types/excalidraw/components/UserList.d.ts +18 -18
  187. package/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +29 -29
  188. package/types/excalidraw/components/canvases/NewElementCanvas.d.ts +14 -14
  189. package/types/excalidraw/components/canvases/StaticCanvas.d.ts +19 -19
  190. package/types/excalidraw/components/canvases/index.d.ts +3 -3
  191. package/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +86 -86
  192. package/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +15 -15
  193. package/types/excalidraw/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -11
  194. package/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +45 -45
  195. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +7 -7
  196. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +17 -17
  197. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemCustom.d.ts +7 -7
  198. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +15 -15
  199. package/types/excalidraw/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -5
  200. package/types/excalidraw/components/dropdownMenu/DropdownMenuTrigger.d.ts +10 -10
  201. package/types/excalidraw/components/dropdownMenu/common.d.ts +6 -6
  202. package/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +3 -3
  203. package/types/excalidraw/components/footer/Footer.d.ts +12 -12
  204. package/types/excalidraw/components/footer/FooterCenter.d.ts +8 -8
  205. package/types/excalidraw/components/hoc/withInternalFallback.d.ts +4 -4
  206. package/types/excalidraw/components/hyperlink/Hyperlink.d.ts +18 -18
  207. package/types/excalidraw/components/hyperlink/helpers.d.ts +9 -8
  208. package/types/excalidraw/components/icons.d.ts +214 -212
  209. package/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +9 -9
  210. package/types/excalidraw/components/main-menu/DefaultItems.d.ts +64 -64
  211. package/types/excalidraw/components/main-menu/MainMenu.d.ts +80 -80
  212. package/types/excalidraw/components/welcome-screen/WelcomeScreen.Center.d.ts +59 -59
  213. package/types/excalidraw/components/welcome-screen/WelcomeScreen.Hints.d.ts +19 -19
  214. package/types/excalidraw/components/welcome-screen/WelcomeScreen.d.ts +86 -86
  215. package/types/excalidraw/constants.d.ts +324 -322
  216. package/types/excalidraw/context/tunnels.d.ts +20 -20
  217. package/types/excalidraw/context/ui-appState.d.ts +4 -4
  218. package/types/excalidraw/cursor.d.ts +6 -6
  219. package/types/excalidraw/data/EditorLocalStorage.d.ts +8 -8
  220. package/types/excalidraw/data/ai/types.d.ts +242 -242
  221. package/types/excalidraw/data/blob.d.ts +52 -49
  222. package/types/excalidraw/data/encode.d.ts +55 -54
  223. package/types/excalidraw/data/encryption.d.ts +9 -9
  224. package/types/excalidraw/data/filesystem.d.ts +20 -20
  225. package/types/excalidraw/data/image.d.ts +15 -15
  226. package/types/excalidraw/data/index.d.ts +22 -22
  227. package/types/excalidraw/data/json.d.ts +16 -16
  228. package/types/excalidraw/data/library.d.ts +106 -106
  229. package/types/excalidraw/data/reconcile.d.ts +6 -6
  230. package/types/excalidraw/data/resave.d.ts +5 -5
  231. package/types/excalidraw/data/restore.d.ts +21 -21
  232. package/types/excalidraw/data/transform.d.ts +81 -81
  233. package/types/excalidraw/data/types.d.ts +45 -45
  234. package/types/excalidraw/data/url.d.ts +8 -8
  235. package/types/excalidraw/deburr.d.ts +1 -1
  236. package/types/excalidraw/dist/excalidraw.development.d.ts +2 -2
  237. package/types/excalidraw/dist/excalidraw.production.min.d.ts +3 -1
  238. package/types/excalidraw/distribute.d.ts +6 -6
  239. package/types/excalidraw/element/ElementCanvasButtons.d.ts +7 -7
  240. package/types/excalidraw/element/binding.d.ts +99 -99
  241. package/types/excalidraw/element/bounds.d.ts +76 -76
  242. package/types/excalidraw/element/collision.d.ts +17 -17
  243. package/types/excalidraw/element/containerCache.d.ts +11 -11
  244. package/types/excalidraw/element/cropElement.d.ts +14 -0
  245. package/types/excalidraw/element/dragElements.d.ts +32 -32
  246. package/types/excalidraw/element/elementLink.d.ts +13 -0
  247. package/types/excalidraw/element/embeddable.d.ts +229 -221
  248. package/types/excalidraw/element/flowchart.d.ts +25 -25
  249. package/types/excalidraw/element/heading.d.ts +12 -12
  250. package/types/excalidraw/element/image.d.ts +32 -32
  251. package/types/excalidraw/element/index.d.ts +26 -26
  252. package/types/excalidraw/element/linearElementEditor.d.ts +128 -128
  253. package/types/excalidraw/element/mutateElement.d.ts +11 -11
  254. package/types/excalidraw/element/newElement.d.ts +106 -105
  255. package/types/excalidraw/element/resizeElements.d.ts +16 -16
  256. package/types/excalidraw/element/resizeTest.d.ts +15 -15
  257. package/types/excalidraw/element/routing.d.ts +12 -12
  258. package/types/excalidraw/element/showSelectedShapeActions.d.ts +3 -3
  259. package/types/excalidraw/element/sizeHelpers.d.ts +35 -35
  260. package/types/excalidraw/element/sortElements.d.ts +2 -2
  261. package/types/excalidraw/element/textElement.d.ts +83 -73
  262. package/types/excalidraw/element/textWrapping.d.ts +13 -0
  263. package/types/excalidraw/element/textWysiwyg.d.ts +22 -22
  264. package/types/excalidraw/element/transformHandles.d.ts +55 -55
  265. package/types/excalidraw/element/typeChecks.d.ts +39 -39
  266. package/types/excalidraw/element/types.d.ts +263 -253
  267. package/types/excalidraw/emitter.d.ts +16 -16
  268. package/types/excalidraw/entry.d.ts +1 -1
  269. package/types/excalidraw/env.d.cts +1 -1
  270. package/types/excalidraw/env.d.ts +1 -1
  271. package/types/excalidraw/errors.d.ts +32 -25
  272. package/types/excalidraw/fonts/{woff2/Cascadia → Cascadia}/index.d.ts +2 -2
  273. package/types/excalidraw/fonts/ComicShanns/index.d.ts +2 -0
  274. package/types/excalidraw/fonts/{woff2/Emoji → Emoji}/index.d.ts +2 -2
  275. package/types/excalidraw/fonts/ExcalidrawFont.d.ts +37 -37
  276. package/types/excalidraw/fonts/ExcalidrawFontFace.d.ts +29 -35
  277. package/types/excalidraw/fonts/{woff2/Excalifont → Excalifont}/index.d.ts +2 -2
  278. package/types/excalidraw/fonts/FontMetadata.d.ts +37 -0
  279. package/types/excalidraw/fonts/Fonts.d.ts +117 -0
  280. package/types/excalidraw/fonts/{woff2/Helvetica → Helvetica}/index.d.ts +2 -2
  281. package/types/excalidraw/fonts/{woff2/Liberation → Liberation}/index.d.ts +2 -2
  282. package/types/excalidraw/fonts/{woff2/Lilita → Lilita}/index.d.ts +2 -2
  283. package/types/excalidraw/fonts/{woff2/Nunito → Nunito}/index.d.ts +2 -2
  284. package/types/excalidraw/fonts/{woff2/Virgil → Virgil}/index.d.ts +2 -2
  285. package/types/excalidraw/fonts/{woff2/Xiaolai → Xiaolai}/index.d.ts +8 -8
  286. package/types/excalidraw/fonts/index.d.ts +1 -87
  287. package/types/excalidraw/fonts/metadata.d.ts +35 -37
  288. package/types/excalidraw/fonts/wasm/hb-subset.bindings.d.ts +45 -45
  289. package/types/excalidraw/fonts/wasm/hb-subset.loader.d.ts +5 -5
  290. package/types/excalidraw/fonts/wasm/hb-subset.wasm.d.ts +2 -2
  291. package/types/excalidraw/fonts/wasm/woff2.bindings.d.ts +31 -31
  292. package/types/excalidraw/fonts/wasm/woff2.loader.d.ts +6 -6
  293. package/types/excalidraw/fonts/wasm/woff2.wasm.d.ts +2 -2
  294. package/types/excalidraw/fractionalIndex.d.ts +48 -48
  295. package/types/excalidraw/frame.d.ts +63 -63
  296. package/types/excalidraw/ga.d.ts +63 -63
  297. package/types/excalidraw/gadirections.d.ts +8 -8
  298. package/types/excalidraw/galines.d.ts +22 -22
  299. package/types/excalidraw/gapoints.d.ts +7 -7
  300. package/types/excalidraw/gatransforms.d.ts +10 -10
  301. package/types/excalidraw/gesture.d.ts +6 -6
  302. package/types/excalidraw/groups.d.ts +33 -33
  303. package/types/excalidraw/history.d.ts +40 -40
  304. package/types/excalidraw/hooks/useCallbackRefState.d.ts +1 -1
  305. package/types/excalidraw/hooks/useCopiedIndicator.d.ts +5 -5
  306. package/types/excalidraw/hooks/useCreatePortalContainer.d.ts +7 -7
  307. package/types/excalidraw/hooks/useEmitter.d.ts +2 -2
  308. package/types/excalidraw/hooks/useLibraryItemSvg.d.ts +11 -11
  309. package/types/excalidraw/hooks/useOutsideClick.d.ts +19 -19
  310. package/types/excalidraw/hooks/useScrollPosition.d.ts +1 -1
  311. package/types/excalidraw/hooks/useStable.d.ts +1 -1
  312. package/types/excalidraw/hooks/useStableCallback.d.ts +4 -4
  313. package/types/excalidraw/hooks/useTransition.d.ts +2 -2
  314. package/types/excalidraw/i18n.d.ts +24 -24
  315. package/types/excalidraw/index-node.d.ts +1 -1
  316. package/types/excalidraw/index.d.ts +63 -62
  317. package/types/excalidraw/jotai.d.ts +34 -34
  318. package/types/excalidraw/keys.d.ts +189 -82
  319. package/types/excalidraw/laser-trails.d.ts +20 -20
  320. package/types/excalidraw/main.d.ts +2 -2
  321. package/types/excalidraw/math.d.ts +79 -79
  322. package/types/excalidraw/mermaid.d.ts +2 -2
  323. package/types/excalidraw/obsidianUtils.d.ts +23 -21
  324. package/types/excalidraw/points.d.ts +7 -7
  325. package/types/excalidraw/polyfill.d.ts +2 -2
  326. package/types/excalidraw/publicPath.d.ts +1 -1
  327. package/types/excalidraw/queue.d.ts +9 -9
  328. package/types/excalidraw/random.d.ts +4 -4
  329. package/types/excalidraw/reactUtils.d.ts +14 -14
  330. package/types/excalidraw/renderer/easingFunctions.d.ts +6 -6
  331. package/types/excalidraw/renderer/helpers.d.ts +13 -13
  332. package/types/excalidraw/renderer/interactiveScene.d.ts +20 -20
  333. package/types/excalidraw/renderer/renderElement.d.ts +28 -27
  334. package/types/excalidraw/renderer/renderNewElementScene.d.ts +7 -7
  335. package/types/excalidraw/renderer/renderSnaps.d.ts +2 -2
  336. package/types/excalidraw/renderer/roundRect.d.ts +11 -11
  337. package/types/excalidraw/renderer/staticScene.d.ts +11 -11
  338. package/types/excalidraw/renderer/staticSvgScene.d.ts +5 -5
  339. package/types/excalidraw/scene/Renderer.d.ts +28 -28
  340. package/types/excalidraw/scene/Scene.d.ts +79 -78
  341. package/types/excalidraw/scene/Shape.d.ts +17 -17
  342. package/types/excalidraw/scene/ShapeCache.d.ts +25 -25
  343. package/types/excalidraw/scene/comparisons.d.ts +488 -487
  344. package/types/excalidraw/scene/export.d.ts +30 -29
  345. package/types/excalidraw/scene/index.d.ts +4 -4
  346. package/types/excalidraw/scene/normalize.d.ts +4 -4
  347. package/types/excalidraw/scene/scroll.d.ts +23 -23
  348. package/types/excalidraw/scene/scrollbars.d.ts +12 -12
  349. package/types/excalidraw/scene/selection.d.ts +32 -32
  350. package/types/excalidraw/scene/types.d.ts +119 -112
  351. package/types/excalidraw/scene/zoom.d.ts +12 -12
  352. package/types/excalidraw/shapes.d.ts +85 -85
  353. package/types/excalidraw/snapping.d.ts +112 -112
  354. package/types/excalidraw/store.d.ts +129 -129
  355. package/types/excalidraw/{fonts/wasm/hb-subset-bindings.d.ts → subset/harfbuzz/harfbuzz-bindings.d.ts} +45 -45
  356. package/types/excalidraw/{fonts/wasm/hb-subset-loader.d.ts → subset/harfbuzz/harfbuzz-loader.d.ts} +13 -13
  357. package/types/excalidraw/{fonts/wasm/hb-subset-wasm.d.ts → subset/harfbuzz/harfbuzz-wasm.d.ts} +2 -2
  358. package/types/excalidraw/{fonts/subset → subset}/subset-main.d.ts +12 -12
  359. package/types/excalidraw/{fonts/subset → subset}/subset-shared.chunk.d.ts +32 -32
  360. package/types/excalidraw/{fonts/subset → subset}/subset-worker.chunk.d.ts +15 -15
  361. package/types/excalidraw/{fonts/wasm → subset/woff2}/woff2-bindings.d.ts +31 -31
  362. package/types/excalidraw/{fonts/wasm → subset/woff2}/woff2-loader.d.ts +14 -14
  363. package/types/excalidraw/{fonts/wasm → subset/woff2}/woff2-wasm.d.ts +2 -2
  364. package/types/excalidraw/types.d.ts +741 -719
  365. package/types/excalidraw/utility-types.d.ts +31 -31
  366. package/types/excalidraw/utils.d.ts +249 -249
  367. package/types/excalidraw/visualdebug.d.ts +35 -35
  368. package/types/excalidraw/webpack.dev.config.d.ts +81 -81
  369. package/types/excalidraw/webpack.prod.config.d.ts +97 -97
  370. package/types/excalidraw/workers.d.ts +36 -36
  371. package/types/excalidraw/zindex.d.ts +6 -6
  372. package/types/math/angle.d.ts +17 -17
  373. package/types/math/arc.d.ts +6 -6
  374. package/types/math/curve.d.ts +32 -32
  375. package/types/math/ga/ga.d.ts +63 -63
  376. package/types/math/ga/gadirections.d.ts +8 -8
  377. package/types/math/ga/galines.d.ts +22 -22
  378. package/types/math/ga/gapoints.d.ts +7 -7
  379. package/types/math/ga/gatransforms.d.ts +10 -10
  380. package/types/math/index.d.ts +12 -12
  381. package/types/math/line.d.ts +26 -26
  382. package/types/math/point.d.ts +140 -140
  383. package/types/math/polygon.d.ts +5 -5
  384. package/types/math/range.d.ts +44 -44
  385. package/types/math/segment.d.ts +32 -32
  386. package/types/math/triangle.d.ts +11 -11
  387. package/types/math/types.d.ts +96 -96
  388. package/types/math/utils.d.ts +7 -6
  389. package/types/math/vector.d.ts +92 -88
  390. package/types/utils/bbox.d.ts +9 -9
  391. package/types/utils/collision.d.ts +9 -9
  392. package/types/utils/export.d.ts +46 -44
  393. package/types/utils/geometry/geometry.d.ts +89 -89
  394. package/types/utils/geometry/shape.d.ts +71 -71
  395. package/types/utils/index.d.ts +4 -4
  396. package/types/utils/withinBounds.d.ts +19 -19
  397. package/dist/excalidraw-assets/CascadiaCode-Regular.woff2 +0 -0
  398. package/dist/excalidraw-assets/ComicShanns-Regular.woff2 +0 -0
  399. package/dist/excalidraw-assets/Excalifont-Regular.woff2 +0 -0
  400. package/dist/excalidraw-assets/LiberationSans-Regular.woff2 +0 -0
  401. package/dist/excalidraw-assets/Lilita-Regular-i7dPIFZ9Zz-WBtRtedDbYE98RXi4EwSsbg.woff2 +0 -0
  402. package/dist/excalidraw-assets/Lilita-Regular-i7dPIFZ9Zz-WBtRtedDbYEF8RXi4EwQ.woff2 +0 -0
  403. package/dist/excalidraw-assets/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTA3j6zbXWjgevT5.woff2 +0 -0
  404. package/dist/excalidraw-assets/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTQ3j6zbXWjgeg.woff2 +0 -0
  405. package/dist/excalidraw-assets/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTk3j6zbXWjgevT5.woff2 +0 -0
  406. package/dist/excalidraw-assets/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTo3j6zbXWjgevT5.woff2 +0 -0
  407. package/dist/excalidraw-assets/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTs3j6zbXWjgevT5.woff2 +0 -0
  408. package/dist/excalidraw-assets/Virgil-Regular.woff2 +0 -0
  409. package/dist/excalidraw-assets-dev/CascadiaCode-Regular.woff2 +0 -0
  410. package/dist/excalidraw-assets-dev/ComicShanns-Regular.woff2 +0 -0
  411. package/dist/excalidraw-assets-dev/Excalifont-Regular.woff2 +0 -0
  412. package/dist/excalidraw-assets-dev/LiberationSans-Regular.woff2 +0 -0
  413. package/dist/excalidraw-assets-dev/Lilita-Regular-i7dPIFZ9Zz-WBtRtedDbYE98RXi4EwSsbg.woff2 +0 -0
  414. package/dist/excalidraw-assets-dev/Lilita-Regular-i7dPIFZ9Zz-WBtRtedDbYEF8RXi4EwQ.woff2 +0 -0
  415. package/dist/excalidraw-assets-dev/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTA3j6zbXWjgevT5.woff2 +0 -0
  416. package/dist/excalidraw-assets-dev/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTQ3j6zbXWjgeg.woff2 +0 -0
  417. package/dist/excalidraw-assets-dev/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTk3j6zbXWjgevT5.woff2 +0 -0
  418. package/dist/excalidraw-assets-dev/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTo3j6zbXWjgevT5.woff2 +0 -0
  419. package/dist/excalidraw-assets-dev/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTs3j6zbXWjgevT5.woff2 +0 -0
  420. package/dist/excalidraw-assets-dev/Virgil-Regular.woff2 +0 -0
  421. package/types/excalidraw/components/MagicSettings.d.ts +0 -8
  422. package/types/excalidraw/components/Stats.d.ts +0 -11
  423. package/types/excalidraw/data/magic.d.ts +0 -23
  424. package/types/excalidraw/fonts/woff2/Comic/index.d.ts +0 -2
  425. package/types/excalidraw/scene/Fonts.d.ts +0 -19
@@ -1,85 +1,85 @@
1
- import { type GlobalPoint, type LocalPoint } from "../math";
2
- import { type GeometricShape } from "../utils/geometry/shape";
3
- import type { Bounds } from "./element/bounds";
4
- import type { ElementsMap, ExcalidrawElement, ExcalidrawLinearElement, NonDeleted } from "./element/types";
5
- import type { Zoom } from "./types";
6
- export declare const SHAPES: readonly [{
7
- readonly icon: JSX.Element;
8
- readonly value: "selection";
9
- readonly key: "v";
10
- readonly numericKey: "1";
11
- readonly fillable: true;
12
- }, {
13
- readonly icon: JSX.Element;
14
- readonly value: "rectangle";
15
- readonly key: "r";
16
- readonly numericKey: "2";
17
- readonly fillable: true;
18
- }, {
19
- readonly icon: JSX.Element;
20
- readonly value: "diamond";
21
- readonly key: "d";
22
- readonly numericKey: "3";
23
- readonly fillable: true;
24
- }, {
25
- readonly icon: JSX.Element;
26
- readonly value: "ellipse";
27
- readonly key: "o";
28
- readonly numericKey: "4";
29
- readonly fillable: true;
30
- }, {
31
- readonly icon: JSX.Element;
32
- readonly value: "arrow";
33
- readonly key: "a";
34
- readonly numericKey: "5";
35
- readonly fillable: true;
36
- }, {
37
- readonly icon: JSX.Element;
38
- readonly value: "line";
39
- readonly key: "l";
40
- readonly numericKey: "6";
41
- readonly fillable: true;
42
- }, {
43
- readonly icon: JSX.Element;
44
- readonly value: "freedraw";
45
- readonly key: readonly ["p", "x"];
46
- readonly numericKey: "7";
47
- readonly fillable: false;
48
- }, {
49
- readonly icon: JSX.Element;
50
- readonly value: "text";
51
- readonly key: "t";
52
- readonly numericKey: "8";
53
- readonly fillable: false;
54
- }, {
55
- readonly icon: JSX.Element;
56
- readonly value: "image";
57
- readonly key: null;
58
- readonly numericKey: "9";
59
- readonly fillable: false;
60
- }, {
61
- readonly icon: JSX.Element;
62
- readonly value: "eraser";
63
- readonly key: "e";
64
- readonly numericKey: "0";
65
- readonly fillable: false;
66
- }];
67
- export declare const findShapeByKey: (key: string) => "line" | "text" | "arrow" | "diamond" | "selection" | "rectangle" | "ellipse" | "freedraw" | "image" | "eraser" | null;
68
- /**
69
- * get the pure geometric shape of an excalidraw element
70
- * which is then used for hit detection
71
- */
72
- export declare const getElementShape: <Point extends GlobalPoint | LocalPoint>(element: ExcalidrawElement, elementsMap: ElementsMap) => GeometricShape<Point>;
73
- export declare const getBoundTextShape: <Point extends GlobalPoint | LocalPoint>(element: ExcalidrawElement, elementsMap: ElementsMap) => GeometricShape<Point> | null;
74
- export declare const getControlPointsForBezierCurve: <P extends GlobalPoint | LocalPoint>(element: NonDeleted<ExcalidrawLinearElement>, endPoint: P) => P[] | null;
75
- export declare const getBezierXY: <P extends GlobalPoint | LocalPoint>(p0: P, p1: P, p2: P, p3: P, t: number) => P;
76
- export declare const getBezierCurveLength: <P extends GlobalPoint | LocalPoint>(element: NonDeleted<ExcalidrawLinearElement>, endPoint: P) => number;
77
- export declare const mapIntervalToBezierT: <P extends GlobalPoint | LocalPoint>(element: NonDeleted<ExcalidrawLinearElement>, endPoint: P, interval: number) => number;
78
- /**
79
- * Get the axis-aligned bounding box for a given element
80
- */
81
- export declare const aabbForElement: (element: Readonly<ExcalidrawElement>, offset?: [number, number, number, number]) => Bounds;
82
- export declare const pointInsideBounds: <P extends GlobalPoint | LocalPoint>(p: P, bounds: Bounds) => boolean;
83
- export declare const aabbsOverlapping: (a: Bounds, b: Bounds) => boolean;
84
- export declare const getCornerRadius: (x: number, element: ExcalidrawElement) => number;
85
- export declare const isPathALoop: (points: ExcalidrawLinearElement["points"], zoomValue?: Zoom["value"]) => boolean;
1
+ import { type GlobalPoint, type LocalPoint } from "../math";
2
+ import { type GeometricShape } from "../utils/geometry/shape";
3
+ import type { Bounds } from "./element/bounds";
4
+ import type { ElementsMap, ExcalidrawElement, ExcalidrawLinearElement, NonDeleted } from "./element/types";
5
+ import type { Zoom } from "./types";
6
+ export declare const SHAPES: readonly [{
7
+ readonly icon: JSX.Element;
8
+ readonly value: "selection";
9
+ readonly key: "v";
10
+ readonly numericKey: "1";
11
+ readonly fillable: true;
12
+ }, {
13
+ readonly icon: JSX.Element;
14
+ readonly value: "rectangle";
15
+ readonly key: "r";
16
+ readonly numericKey: "2";
17
+ readonly fillable: true;
18
+ }, {
19
+ readonly icon: JSX.Element;
20
+ readonly value: "diamond";
21
+ readonly key: "d";
22
+ readonly numericKey: "3";
23
+ readonly fillable: true;
24
+ }, {
25
+ readonly icon: JSX.Element;
26
+ readonly value: "ellipse";
27
+ readonly key: "o";
28
+ readonly numericKey: "4";
29
+ readonly fillable: true;
30
+ }, {
31
+ readonly icon: JSX.Element;
32
+ readonly value: "arrow";
33
+ readonly key: "a";
34
+ readonly numericKey: "5";
35
+ readonly fillable: true;
36
+ }, {
37
+ readonly icon: JSX.Element;
38
+ readonly value: "line";
39
+ readonly key: "l";
40
+ readonly numericKey: "6";
41
+ readonly fillable: true;
42
+ }, {
43
+ readonly icon: JSX.Element;
44
+ readonly value: "freedraw";
45
+ readonly key: readonly ["p", "x"];
46
+ readonly numericKey: "7";
47
+ readonly fillable: false;
48
+ }, {
49
+ readonly icon: JSX.Element;
50
+ readonly value: "text";
51
+ readonly key: "t";
52
+ readonly numericKey: "8";
53
+ readonly fillable: false;
54
+ }, {
55
+ readonly icon: JSX.Element;
56
+ readonly value: "image";
57
+ readonly key: null;
58
+ readonly numericKey: "9";
59
+ readonly fillable: false;
60
+ }, {
61
+ readonly icon: JSX.Element;
62
+ readonly value: "eraser";
63
+ readonly key: "e";
64
+ readonly numericKey: "0";
65
+ readonly fillable: false;
66
+ }];
67
+ export declare const findShapeByKey: (key: string) => "line" | "text" | "arrow" | "diamond" | "selection" | "rectangle" | "ellipse" | "freedraw" | "image" | "eraser" | null;
68
+ /**
69
+ * get the pure geometric shape of an excalidraw element
70
+ * which is then used for hit detection
71
+ */
72
+ export declare const getElementShape: <Point extends GlobalPoint | LocalPoint>(element: ExcalidrawElement, elementsMap: ElementsMap) => GeometricShape<Point>;
73
+ export declare const getBoundTextShape: <Point extends GlobalPoint | LocalPoint>(element: ExcalidrawElement, elementsMap: ElementsMap) => GeometricShape<Point> | null;
74
+ export declare const getControlPointsForBezierCurve: <P extends GlobalPoint | LocalPoint>(element: NonDeleted<ExcalidrawLinearElement>, endPoint: P) => P[] | null;
75
+ export declare const getBezierXY: <P extends GlobalPoint | LocalPoint>(p0: P, p1: P, p2: P, p3: P, t: number) => P;
76
+ export declare const getBezierCurveLength: <P extends GlobalPoint | LocalPoint>(element: NonDeleted<ExcalidrawLinearElement>, endPoint: P) => number;
77
+ export declare const mapIntervalToBezierT: <P extends GlobalPoint | LocalPoint>(element: NonDeleted<ExcalidrawLinearElement>, endPoint: P, interval: number) => number;
78
+ /**
79
+ * Get the axis-aligned bounding box for a given element
80
+ */
81
+ export declare const aabbForElement: (element: Readonly<ExcalidrawElement>, offset?: [number, number, number, number]) => Bounds;
82
+ export declare const pointInsideBounds: <P extends GlobalPoint | LocalPoint>(p: P, bounds: Bounds) => boolean;
83
+ export declare const aabbsOverlapping: (a: Bounds, b: Bounds) => boolean;
84
+ export declare const getCornerRadius: (x: number, element: ExcalidrawElement) => number;
85
+ export declare const isPathALoop: (points: ExcalidrawLinearElement["points"], zoomValue?: Zoom["value"]) => boolean;
@@ -1,112 +1,112 @@
1
- import type { InclusiveRange } from "../math";
2
- import { type GlobalPoint } from "../math";
3
- import type { Bounds } from "./element/bounds";
4
- import type { MaybeTransformHandleType } from "./element/transformHandles";
5
- import type { ElementsMap, ExcalidrawElement, NonDeletedExcalidrawElement } from "./element/types";
6
- import type { AppClassProperties, AppState, KeyboardModifiersObject, NullableGridSize } from "./types";
7
- export declare const getSnapDistance: (zoomValue: number) => number;
8
- type Vector2D = {
9
- x: number;
10
- y: number;
11
- };
12
- type PointPair = [GlobalPoint, GlobalPoint];
13
- export type PointSnap = {
14
- type: "point";
15
- points: PointPair;
16
- offset: number;
17
- };
18
- export type Gap = {
19
- startBounds: Bounds;
20
- endBounds: Bounds;
21
- startSide: [GlobalPoint, GlobalPoint];
22
- endSide: [GlobalPoint, GlobalPoint];
23
- overlap: InclusiveRange;
24
- length: number;
25
- };
26
- export type GapSnap = {
27
- type: "gap";
28
- direction: "center_horizontal" | "center_vertical" | "side_left" | "side_right" | "side_top" | "side_bottom";
29
- gap: Gap;
30
- offset: number;
31
- };
32
- export type GapSnaps = GapSnap[];
33
- export type Snap = GapSnap | PointSnap;
34
- export type Snaps = Snap[];
35
- export type PointSnapLine = {
36
- type: "points";
37
- points: GlobalPoint[];
38
- };
39
- export type PointerSnapLine = {
40
- type: "pointer";
41
- points: PointPair;
42
- direction: "horizontal" | "vertical";
43
- };
44
- export type GapSnapLine = {
45
- type: "gap";
46
- direction: "horizontal" | "vertical";
47
- points: PointPair;
48
- };
49
- export type SnapLine = PointSnapLine | GapSnapLine | PointerSnapLine;
50
- export declare class SnapCache {
51
- private static referenceSnapPoints;
52
- private static visibleGaps;
53
- static setReferenceSnapPoints: (snapPoints: GlobalPoint[] | null) => void;
54
- static getReferenceSnapPoints: () => GlobalPoint[] | null;
55
- static setVisibleGaps: (gaps: {
56
- verticalGaps: Gap[];
57
- horizontalGaps: Gap[];
58
- } | null) => void;
59
- static getVisibleGaps: () => {
60
- verticalGaps: Gap[];
61
- horizontalGaps: Gap[];
62
- } | null;
63
- static destroy: () => void;
64
- }
65
- export declare const isGridModeEnabled: (app: AppClassProperties) => boolean;
66
- export declare const isSnappingEnabled: ({ event, app, selectedElements, }: {
67
- app: AppClassProperties;
68
- event: KeyboardModifiersObject;
69
- selectedElements: NonDeletedExcalidrawElement[];
70
- }) => boolean;
71
- export declare const areRoughlyEqual: (a: number, b: number, precision?: number) => boolean;
72
- export declare const getElementsCorners: (elements: ExcalidrawElement[], elementsMap: ElementsMap, { omitCenter, boundingBoxCorners, dragOffset, }?: {
73
- omitCenter?: boolean | undefined;
74
- boundingBoxCorners?: boolean | undefined;
75
- dragOffset?: Vector2D | undefined;
76
- }) => GlobalPoint[];
77
- export declare const getVisibleGaps: (elements: readonly NonDeletedExcalidrawElement[], selectedElements: ExcalidrawElement[], appState: AppState, elementsMap: ElementsMap) => {
78
- horizontalGaps: Gap[];
79
- verticalGaps: Gap[];
80
- };
81
- export declare const getReferenceSnapPoints: (elements: readonly NonDeletedExcalidrawElement[], selectedElements: ExcalidrawElement[], appState: AppState, elementsMap: ElementsMap) => GlobalPoint[];
82
- export declare const snapDraggedElements: (elements: ExcalidrawElement[], dragOffset: Vector2D, app: AppClassProperties, event: KeyboardModifiersObject, elementsMap: ElementsMap) => {
83
- snapOffset: {
84
- x: number;
85
- y: number;
86
- };
87
- snapLines: (PointSnapLine | GapSnapLine)[];
88
- };
89
- export declare const snapResizingElements: (selectedElements: ExcalidrawElement[], selectedOriginalElements: ExcalidrawElement[], app: AppClassProperties, event: KeyboardModifiersObject, dragOffset: Vector2D, transformHandle: MaybeTransformHandleType) => {
90
- snapOffset: {
91
- x: number;
92
- y: number;
93
- };
94
- snapLines: PointSnapLine[];
95
- };
96
- export declare const snapNewElement: (newElement: ExcalidrawElement, app: AppClassProperties, event: KeyboardModifiersObject, origin: Vector2D, dragOffset: Vector2D, elementsMap: ElementsMap) => {
97
- snapOffset: {
98
- x: number;
99
- y: number;
100
- };
101
- snapLines: PointSnapLine[];
102
- };
103
- export declare const getSnapLinesAtPointer: (elements: readonly ExcalidrawElement[], app: AppClassProperties, pointer: Vector2D, event: KeyboardModifiersObject, elementsMap: ElementsMap) => {
104
- originOffset: {
105
- x: number;
106
- y: number;
107
- };
108
- snapLines: PointerSnapLine[];
109
- };
110
- export declare const isActiveToolNonLinearSnappable: (activeToolType: AppState["activeTool"]["type"]) => boolean;
111
- export declare const getGridPoint: (x: number, y: number, gridSize: NullableGridSize) => [number, number];
112
- export {};
1
+ import type { InclusiveRange } from "../math";
2
+ import { type GlobalPoint } from "../math";
3
+ import type { Bounds } from "./element/bounds";
4
+ import type { MaybeTransformHandleType } from "./element/transformHandles";
5
+ import type { ElementsMap, ExcalidrawElement, NonDeletedExcalidrawElement } from "./element/types";
6
+ import type { AppClassProperties, AppState, KeyboardModifiersObject, NullableGridSize } from "./types";
7
+ export declare const getSnapDistance: (zoomValue: number) => number;
8
+ type Vector2D = {
9
+ x: number;
10
+ y: number;
11
+ };
12
+ type PointPair = [GlobalPoint, GlobalPoint];
13
+ export type PointSnap = {
14
+ type: "point";
15
+ points: PointPair;
16
+ offset: number;
17
+ };
18
+ export type Gap = {
19
+ startBounds: Bounds;
20
+ endBounds: Bounds;
21
+ startSide: [GlobalPoint, GlobalPoint];
22
+ endSide: [GlobalPoint, GlobalPoint];
23
+ overlap: InclusiveRange;
24
+ length: number;
25
+ };
26
+ export type GapSnap = {
27
+ type: "gap";
28
+ direction: "center_horizontal" | "center_vertical" | "side_left" | "side_right" | "side_top" | "side_bottom";
29
+ gap: Gap;
30
+ offset: number;
31
+ };
32
+ export type GapSnaps = GapSnap[];
33
+ export type Snap = GapSnap | PointSnap;
34
+ export type Snaps = Snap[];
35
+ export type PointSnapLine = {
36
+ type: "points";
37
+ points: GlobalPoint[];
38
+ };
39
+ export type PointerSnapLine = {
40
+ type: "pointer";
41
+ points: PointPair;
42
+ direction: "horizontal" | "vertical";
43
+ };
44
+ export type GapSnapLine = {
45
+ type: "gap";
46
+ direction: "horizontal" | "vertical";
47
+ points: PointPair;
48
+ };
49
+ export type SnapLine = PointSnapLine | GapSnapLine | PointerSnapLine;
50
+ export declare class SnapCache {
51
+ private static referenceSnapPoints;
52
+ private static visibleGaps;
53
+ static setReferenceSnapPoints: (snapPoints: GlobalPoint[] | null) => void;
54
+ static getReferenceSnapPoints: () => GlobalPoint[] | null;
55
+ static setVisibleGaps: (gaps: {
56
+ verticalGaps: Gap[];
57
+ horizontalGaps: Gap[];
58
+ } | null) => void;
59
+ static getVisibleGaps: () => {
60
+ verticalGaps: Gap[];
61
+ horizontalGaps: Gap[];
62
+ } | null;
63
+ static destroy: () => void;
64
+ }
65
+ export declare const isGridModeEnabled: (app: AppClassProperties) => boolean;
66
+ export declare const isSnappingEnabled: ({ event, app, selectedElements, }: {
67
+ app: AppClassProperties;
68
+ event: KeyboardModifiersObject;
69
+ selectedElements: NonDeletedExcalidrawElement[];
70
+ }) => boolean;
71
+ export declare const areRoughlyEqual: (a: number, b: number, precision?: number) => boolean;
72
+ export declare const getElementsCorners: (elements: ExcalidrawElement[], elementsMap: ElementsMap, { omitCenter, boundingBoxCorners, dragOffset, }?: {
73
+ omitCenter?: boolean | undefined;
74
+ boundingBoxCorners?: boolean | undefined;
75
+ dragOffset?: Vector2D | undefined;
76
+ }) => GlobalPoint[];
77
+ export declare const getVisibleGaps: (elements: readonly NonDeletedExcalidrawElement[], selectedElements: ExcalidrawElement[], appState: AppState, elementsMap: ElementsMap) => {
78
+ horizontalGaps: Gap[];
79
+ verticalGaps: Gap[];
80
+ };
81
+ export declare const getReferenceSnapPoints: (elements: readonly NonDeletedExcalidrawElement[], selectedElements: ExcalidrawElement[], appState: AppState, elementsMap: ElementsMap) => GlobalPoint[];
82
+ export declare const snapDraggedElements: (elements: ExcalidrawElement[], dragOffset: Vector2D, app: AppClassProperties, event: KeyboardModifiersObject, elementsMap: ElementsMap) => {
83
+ snapOffset: {
84
+ x: number;
85
+ y: number;
86
+ };
87
+ snapLines: (PointSnapLine | GapSnapLine)[];
88
+ };
89
+ export declare const snapResizingElements: (selectedElements: ExcalidrawElement[], selectedOriginalElements: ExcalidrawElement[], app: AppClassProperties, event: KeyboardModifiersObject, dragOffset: Vector2D, transformHandle: MaybeTransformHandleType) => {
90
+ snapOffset: {
91
+ x: number;
92
+ y: number;
93
+ };
94
+ snapLines: PointSnapLine[];
95
+ };
96
+ export declare const snapNewElement: (newElement: ExcalidrawElement, app: AppClassProperties, event: KeyboardModifiersObject, origin: Vector2D, dragOffset: Vector2D, elementsMap: ElementsMap) => {
97
+ snapOffset: {
98
+ x: number;
99
+ y: number;
100
+ };
101
+ snapLines: PointSnapLine[];
102
+ };
103
+ export declare const getSnapLinesAtPointer: (elements: readonly ExcalidrawElement[], app: AppClassProperties, pointer: Vector2D, event: KeyboardModifiersObject, elementsMap: ElementsMap) => {
104
+ originOffset: {
105
+ x: number;
106
+ y: number;
107
+ };
108
+ snapLines: PointerSnapLine[];
109
+ };
110
+ export declare const isActiveToolNonLinearSnappable: (activeToolType: AppState["activeTool"]["type"]) => boolean;
111
+ export declare const getGridPoint: (x: number, y: number, gridSize: NullableGridSize) => [number, number];
112
+ export {};
@@ -1,129 +1,129 @@
1
- import { AppStateChange, ElementsChange } from "./change";
2
- import type { OrderedExcalidrawElement } from "./element/types";
3
- import { Emitter } from "./emitter";
4
- import type { AppState, ObservedAppState } from "./types";
5
- import type { ValueOf } from "./utility-types";
6
- export declare const getObservedAppState: (appState: AppState) => ObservedAppState;
7
- export declare const StoreAction: {
8
- /**
9
- * Immediately undoable.
10
- *
11
- * Use for updates which should be captured.
12
- * Should be used for most of the local updates.
13
- *
14
- * These updates will _immediately_ make it to the local undo / redo stacks.
15
- */
16
- readonly CAPTURE: "capture";
17
- /**
18
- * Never undoable.
19
- *
20
- * Use for updates which should never be recorded, such as remote updates
21
- * or scene initialization.
22
- *
23
- * These updates will _never_ make it to the local undo / redo stacks.
24
- */
25
- readonly UPDATE: "update";
26
- /**
27
- * Eventually undoable.
28
- *
29
- * Use for updates which should not be captured immediately - likely
30
- * exceptions which are part of some async multi-step process. Otherwise, all
31
- * such updates would end up being captured with the next
32
- * `StoreAction.CAPTURE` - triggered either by the next `updateScene`
33
- * or internally by the editor.
34
- *
35
- * These updates will _eventually_ make it to the local undo / redo stacks.
36
- */
37
- readonly NONE: "none";
38
- };
39
- export type StoreActionType = ValueOf<typeof StoreAction>;
40
- /**
41
- * Represent an increment to the Store.
42
- */
43
- declare class StoreIncrementEvent {
44
- readonly elementsChange: ElementsChange;
45
- readonly appStateChange: AppStateChange;
46
- constructor(elementsChange: ElementsChange, appStateChange: AppStateChange);
47
- }
48
- /**
49
- * Store which captures the observed changes and emits them as `StoreIncrementEvent` events.
50
- *
51
- * @experimental this interface is experimental and subject to change.
52
- */
53
- export interface IStore {
54
- onStoreIncrementEmitter: Emitter<[StoreIncrementEvent]>;
55
- get snapshot(): Snapshot;
56
- set snapshot(snapshot: Snapshot);
57
- /**
58
- * Use to schedule update of the snapshot, useful on updates for which we don't need to calculate increments (i.e. remote updates).
59
- */
60
- shouldUpdateSnapshot(): void;
61
- /**
62
- * Use to schedule calculation of a store increment.
63
- */
64
- shouldCaptureIncrement(): void;
65
- /**
66
- * Based on the scheduled operation, either only updates store snapshot or also calculates increment and emits the result as a `StoreIncrementEvent`.
67
- *
68
- * @emits StoreIncrementEvent when increment is calculated.
69
- */
70
- commit(elements: Map<string, OrderedExcalidrawElement> | undefined, appState: AppState | ObservedAppState | undefined): void;
71
- /**
72
- * Clears the store instance.
73
- */
74
- clear(): void;
75
- /**
76
- * Filters out yet uncomitted elements from `nextElements`, which are part of in-progress local async actions (ephemerals) and thus were not yet commited to the snapshot.
77
- *
78
- * This is necessary in updates in which we receive reconciled elements, already containing elements which were not yet captured by the local store (i.e. collab).
79
- */
80
- filterUncomittedElements(prevElements: Map<string, OrderedExcalidrawElement>, nextElements: Map<string, OrderedExcalidrawElement>): Map<string, OrderedExcalidrawElement>;
81
- }
82
- export declare class Store implements IStore {
83
- readonly onStoreIncrementEmitter: Emitter<[StoreIncrementEvent]>;
84
- private scheduledActions;
85
- private _snapshot;
86
- get snapshot(): Snapshot;
87
- set snapshot(snapshot: Snapshot);
88
- shouldCaptureIncrement: () => void;
89
- shouldUpdateSnapshot: () => void;
90
- private scheduleAction;
91
- commit: (elements: Map<string, OrderedExcalidrawElement> | undefined, appState: AppState | ObservedAppState | undefined) => void;
92
- captureIncrement: (elements: Map<string, OrderedExcalidrawElement> | undefined, appState: AppState | ObservedAppState | undefined) => void;
93
- updateSnapshot: (elements: Map<string, OrderedExcalidrawElement> | undefined, appState: AppState | ObservedAppState | undefined) => void;
94
- filterUncomittedElements: (prevElements: Map<string, OrderedExcalidrawElement>, nextElements: Map<string, OrderedExcalidrawElement>) => Map<string, OrderedExcalidrawElement>;
95
- clear: () => void;
96
- private satisfiesScheduledActionsInvariant;
97
- }
98
- export declare class Snapshot {
99
- readonly elements: Map<string, OrderedExcalidrawElement>;
100
- readonly appState: ObservedAppState;
101
- readonly meta: {
102
- didElementsChange: boolean;
103
- didAppStateChange: boolean;
104
- isEmpty?: boolean;
105
- };
106
- private constructor();
107
- static empty(): Snapshot;
108
- isEmpty(): boolean | undefined;
109
- /**
110
- * Efficiently clone the existing snapshot, only if we detected changes.
111
- *
112
- * @returns same instance if there are no changes detected, new instance otherwise.
113
- */
114
- maybeClone(elements: Map<string, OrderedExcalidrawElement> | undefined, appState: AppState | ObservedAppState | undefined): Snapshot;
115
- private maybeCreateAppStateSnapshot;
116
- private detectChangedAppState;
117
- private maybeCreateElementsSnapshot;
118
- /**
119
- * Detect if there any changed elements.
120
- *
121
- * NOTE: we shouldn't just use `sceneVersionNonce` instead, as we need to call this before the scene updates.
122
- */
123
- private detectChangedElements;
124
- /**
125
- * Perform structural clone, cloning only elements that changed.
126
- */
127
- private createElementsSnapshot;
128
- }
129
- export {};
1
+ import { AppStateChange, ElementsChange } from "./change";
2
+ import type { OrderedExcalidrawElement } from "./element/types";
3
+ import { Emitter } from "./emitter";
4
+ import type { AppState, ObservedAppState } from "./types";
5
+ import type { ValueOf } from "./utility-types";
6
+ export declare const getObservedAppState: (appState: AppState) => ObservedAppState;
7
+ export declare const StoreAction: {
8
+ /**
9
+ * Immediately undoable.
10
+ *
11
+ * Use for updates which should be captured.
12
+ * Should be used for most of the local updates.
13
+ *
14
+ * These updates will _immediately_ make it to the local undo / redo stacks.
15
+ */
16
+ readonly CAPTURE: "capture";
17
+ /**
18
+ * Never undoable.
19
+ *
20
+ * Use for updates which should never be recorded, such as remote updates
21
+ * or scene initialization.
22
+ *
23
+ * These updates will _never_ make it to the local undo / redo stacks.
24
+ */
25
+ readonly UPDATE: "update";
26
+ /**
27
+ * Eventually undoable.
28
+ *
29
+ * Use for updates which should not be captured immediately - likely
30
+ * exceptions which are part of some async multi-step process. Otherwise, all
31
+ * such updates would end up being captured with the next
32
+ * `StoreAction.CAPTURE` - triggered either by the next `updateScene`
33
+ * or internally by the editor.
34
+ *
35
+ * These updates will _eventually_ make it to the local undo / redo stacks.
36
+ */
37
+ readonly NONE: "none";
38
+ };
39
+ export type StoreActionType = ValueOf<typeof StoreAction>;
40
+ /**
41
+ * Represent an increment to the Store.
42
+ */
43
+ declare class StoreIncrementEvent {
44
+ readonly elementsChange: ElementsChange;
45
+ readonly appStateChange: AppStateChange;
46
+ constructor(elementsChange: ElementsChange, appStateChange: AppStateChange);
47
+ }
48
+ /**
49
+ * Store which captures the observed changes and emits them as `StoreIncrementEvent` events.
50
+ *
51
+ * @experimental this interface is experimental and subject to change.
52
+ */
53
+ export interface IStore {
54
+ onStoreIncrementEmitter: Emitter<[StoreIncrementEvent]>;
55
+ get snapshot(): Snapshot;
56
+ set snapshot(snapshot: Snapshot);
57
+ /**
58
+ * Use to schedule update of the snapshot, useful on updates for which we don't need to calculate increments (i.e. remote updates).
59
+ */
60
+ shouldUpdateSnapshot(): void;
61
+ /**
62
+ * Use to schedule calculation of a store increment.
63
+ */
64
+ shouldCaptureIncrement(): void;
65
+ /**
66
+ * Based on the scheduled operation, either only updates store snapshot or also calculates increment and emits the result as a `StoreIncrementEvent`.
67
+ *
68
+ * @emits StoreIncrementEvent when increment is calculated.
69
+ */
70
+ commit(elements: Map<string, OrderedExcalidrawElement> | undefined, appState: AppState | ObservedAppState | undefined): void;
71
+ /**
72
+ * Clears the store instance.
73
+ */
74
+ clear(): void;
75
+ /**
76
+ * Filters out yet uncomitted elements from `nextElements`, which are part of in-progress local async actions (ephemerals) and thus were not yet commited to the snapshot.
77
+ *
78
+ * This is necessary in updates in which we receive reconciled elements, already containing elements which were not yet captured by the local store (i.e. collab).
79
+ */
80
+ filterUncomittedElements(prevElements: Map<string, OrderedExcalidrawElement>, nextElements: Map<string, OrderedExcalidrawElement>): Map<string, OrderedExcalidrawElement>;
81
+ }
82
+ export declare class Store implements IStore {
83
+ readonly onStoreIncrementEmitter: Emitter<[StoreIncrementEvent]>;
84
+ private scheduledActions;
85
+ private _snapshot;
86
+ get snapshot(): Snapshot;
87
+ set snapshot(snapshot: Snapshot);
88
+ shouldCaptureIncrement: () => void;
89
+ shouldUpdateSnapshot: () => void;
90
+ private scheduleAction;
91
+ commit: (elements: Map<string, OrderedExcalidrawElement> | undefined, appState: AppState | ObservedAppState | undefined) => void;
92
+ captureIncrement: (elements: Map<string, OrderedExcalidrawElement> | undefined, appState: AppState | ObservedAppState | undefined) => void;
93
+ updateSnapshot: (elements: Map<string, OrderedExcalidrawElement> | undefined, appState: AppState | ObservedAppState | undefined) => void;
94
+ filterUncomittedElements: (prevElements: Map<string, OrderedExcalidrawElement>, nextElements: Map<string, OrderedExcalidrawElement>) => Map<string, OrderedExcalidrawElement>;
95
+ clear: () => void;
96
+ private satisfiesScheduledActionsInvariant;
97
+ }
98
+ export declare class Snapshot {
99
+ readonly elements: Map<string, OrderedExcalidrawElement>;
100
+ readonly appState: ObservedAppState;
101
+ readonly meta: {
102
+ didElementsChange: boolean;
103
+ didAppStateChange: boolean;
104
+ isEmpty?: boolean;
105
+ };
106
+ private constructor();
107
+ static empty(): Snapshot;
108
+ isEmpty(): boolean | undefined;
109
+ /**
110
+ * Efficiently clone the existing snapshot, only if we detected changes.
111
+ *
112
+ * @returns same instance if there are no changes detected, new instance otherwise.
113
+ */
114
+ maybeClone(elements: Map<string, OrderedExcalidrawElement> | undefined, appState: AppState | ObservedAppState | undefined): Snapshot;
115
+ private maybeCreateAppStateSnapshot;
116
+ private detectChangedAppState;
117
+ private maybeCreateElementsSnapshot;
118
+ /**
119
+ * Detect if there any changed elements.
120
+ *
121
+ * NOTE: we shouldn't just use `sceneVersionNonce` instead, as we need to call this before the scene updates.
122
+ */
123
+ private detectChangedElements;
124
+ /**
125
+ * Perform structural clone, cloning only elements that changed.
126
+ */
127
+ private createElementsSnapshot;
128
+ }
129
+ export {};