@zsviczian/excalidraw 0.18.0-60 → 0.18.0-62

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 (397) hide show
  1. package/dist/excalidraw.development.js +113 -113
  2. package/dist/excalidraw.production.min.js +1 -1
  3. package/package.json +2 -2
  4. package/types/common/src/binary-heap.d.ts +12 -12
  5. package/types/common/src/colors.d.ts +62 -62
  6. package/types/common/src/commonObsidianUtils.d.ts +20 -20
  7. package/types/common/src/constants.d.ts +357 -360
  8. package/types/common/src/editorInterface.d.ts +35 -35
  9. package/types/common/src/emitter.d.ts +16 -16
  10. package/types/common/src/font-metadata.d.ts +46 -48
  11. package/types/common/src/index.d.ts +15 -15
  12. package/types/common/src/keys.d.ts +189 -189
  13. package/types/common/src/points.d.ts +9 -9
  14. package/types/common/src/promise-pool.d.ts +6 -6
  15. package/types/common/src/queue.d.ts +9 -9
  16. package/types/common/src/random.d.ts +4 -4
  17. package/types/common/src/url.d.ts +7 -7
  18. package/types/common/src/utility-types.d.ts +37 -37
  19. package/types/common/src/utils.d.ts +279 -273
  20. package/types/common/src/visualdebug.d.ts +41 -41
  21. package/types/element/src/Scene.d.ts +80 -80
  22. package/types/element/src/align.d.ts +8 -8
  23. package/types/element/src/binding.d.ts +123 -122
  24. package/types/element/src/bounds.d.ts +89 -89
  25. package/types/element/src/collision.d.ts +36 -36
  26. package/types/element/src/comparisons.d.ts +8 -8
  27. package/types/element/src/containerCache.d.ts +11 -11
  28. package/types/element/src/cropElement.d.ts +19 -19
  29. package/types/element/src/delta.d.ts +228 -228
  30. package/types/element/src/distance.d.ts +3 -3
  31. package/types/element/src/distribute.d.ts +7 -7
  32. package/types/element/src/dragElements.d.ts +33 -33
  33. package/types/element/src/duplicate.d.ts +63 -63
  34. package/types/element/src/easingFunctions.d.ts +6 -6
  35. package/types/element/src/elbowArrow.d.ts +17 -17
  36. package/types/element/src/elementLink.d.ts +13 -13
  37. package/types/element/src/embeddable.d.ts +10 -10
  38. package/types/element/src/flowchart.d.ts +26 -26
  39. package/types/element/src/fractionalIndex.d.ts +57 -57
  40. package/types/element/src/frame.d.ts +74 -70
  41. package/types/element/src/groups.d.ts +34 -34
  42. package/types/element/src/heading.d.ts +16 -15
  43. package/types/element/src/image.d.ts +22 -32
  44. package/types/element/src/index.d.ts +55 -55
  45. package/types/element/src/linearElementEditor.d.ts +113 -113
  46. package/types/element/src/mutateElement.d.ts +23 -21
  47. package/types/element/src/newElement.d.ts +64 -64
  48. package/types/element/src/positionElementsOnGrid.d.ts +2 -2
  49. package/types/element/src/renderElement.d.ts +31 -31
  50. package/types/element/src/resizeElements.d.ts +39 -39
  51. package/types/element/src/resizeTest.d.ts +16 -16
  52. package/types/element/src/selection.d.ts +34 -38
  53. package/types/element/src/shape.d.ts +42 -42
  54. package/types/element/src/showSelectedShapeActions.d.ts +3 -3
  55. package/types/element/src/sizeHelpers.d.ts +35 -35
  56. package/types/element/src/sortElements.d.ts +2 -2
  57. package/types/element/src/store.d.ts +237 -237
  58. package/types/element/src/textElement.d.ts +40 -40
  59. package/types/element/src/textMeasurements.d.ts +39 -41
  60. package/types/element/src/textWrapping.d.ts +13 -13
  61. package/types/element/src/transformHandles.d.ts +36 -56
  62. package/types/element/src/typeChecks.d.ts +56 -56
  63. package/types/element/src/types.d.ts +304 -304
  64. package/types/element/src/utils.d.ts +34 -32
  65. package/types/element/src/zindex.d.ts +13 -13
  66. package/types/excalidraw/actions/actionAddToLibrary.d.ts +599 -662
  67. package/types/excalidraw/actions/actionAlign.d.ts +109 -109
  68. package/types/excalidraw/actions/actionBoundText.d.ts +436 -478
  69. package/types/excalidraw/actions/actionCanvas.d.ts +2920 -3204
  70. package/types/excalidraw/actions/actionClipboard.d.ts +475 -517
  71. package/types/excalidraw/actions/actionCropEditor.d.ts +212 -233
  72. package/types/excalidraw/actions/actionDeleteSelected.d.ts +633 -700
  73. package/types/excalidraw/actions/actionDistribute.d.ts +34 -34
  74. package/types/excalidraw/actions/actionDuplicateSelection.d.ts +17 -17
  75. package/types/excalidraw/actions/actionElementLink.d.ts +232 -253
  76. package/types/excalidraw/actions/actionElementLock.d.ts +422 -464
  77. package/types/excalidraw/actions/actionEmbeddable.d.ts +209 -230
  78. package/types/excalidraw/actions/actionExport.d.ts +835 -919
  79. package/types/excalidraw/actions/actionFinalize.d.ts +13 -13
  80. package/types/excalidraw/actions/actionFlip.d.ts +34 -34
  81. package/types/excalidraw/actions/actionFrame.d.ts +1315 -1435
  82. package/types/excalidraw/actions/actionGroup.d.ts +426 -476
  83. package/types/excalidraw/actions/actionHistory.d.ts +6 -6
  84. package/types/excalidraw/actions/actionLinearEditor.d.ts +709 -766
  85. package/types/excalidraw/actions/actionLink.d.ts +213 -234
  86. package/types/excalidraw/actions/actionMenu.d.ts +201 -222
  87. package/types/excalidraw/actions/actionNavigate.d.ts +20 -22
  88. package/types/excalidraw/actions/actionProperties.d.ts +695 -758
  89. package/types/excalidraw/actions/actionSelectAll.d.ts +208 -233
  90. package/types/excalidraw/actions/actionStyles.d.ts +226 -247
  91. package/types/excalidraw/actions/actionTextAutoResize.d.ts +17 -17
  92. package/types/excalidraw/actions/actionToggleGridMode.d.ts +215 -236
  93. package/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +213 -234
  94. package/types/excalidraw/actions/actionToggleSearchMenu.d.ts +204 -225
  95. package/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +19 -19
  96. package/types/excalidraw/actions/actionToggleStats.d.ts +212 -233
  97. package/types/excalidraw/actions/actionToggleViewMode.d.ts +213 -234
  98. package/types/excalidraw/actions/actionToggleZenMode.d.ts +213 -234
  99. package/types/excalidraw/actions/actionTrayMenu.d.ts +208 -229
  100. package/types/excalidraw/actions/actionZindex.d.ts +74 -74
  101. package/types/excalidraw/actions/index.d.ts +30 -30
  102. package/types/excalidraw/actions/manager.d.ts +21 -21
  103. package/types/excalidraw/actions/register.d.ts +5 -5
  104. package/types/excalidraw/actions/shortcuts.d.ts +4 -4
  105. package/types/excalidraw/actions/types.d.ts +47 -47
  106. package/types/excalidraw/analytics.d.ts +1 -1
  107. package/types/excalidraw/animated-trail.d.ts +39 -39
  108. package/types/excalidraw/animation-frame-handler.d.ts +16 -16
  109. package/types/excalidraw/appState.d.ts +105 -105
  110. package/types/excalidraw/charts.d.ts +27 -27
  111. package/types/excalidraw/clients.d.ts +14 -14
  112. package/types/excalidraw/clipboard.d.ts +105 -129
  113. package/types/excalidraw/components/Actions.d.ts +48 -48
  114. package/types/excalidraw/components/ActiveConfirmDialog.d.ts +4 -4
  115. package/types/excalidraw/components/App.d.ts +572 -581
  116. package/types/excalidraw/components/Avatar.d.ts +11 -11
  117. package/types/excalidraw/components/BraveMeasureTextError.d.ts +2 -2
  118. package/types/excalidraw/components/Button.d.ts +17 -17
  119. package/types/excalidraw/components/ButtonIcon.d.ts +16 -16
  120. package/types/excalidraw/components/ButtonIconCycle.d.ts +11 -11
  121. package/types/excalidraw/components/ButtonSeparator.d.ts +1 -1
  122. package/types/excalidraw/components/Card.d.ts +6 -6
  123. package/types/excalidraw/components/CheckboxItem.d.ts +8 -8
  124. package/types/excalidraw/components/ColorPicker/ColorInput.d.ts +10 -10
  125. package/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +23 -23
  126. package/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +8 -8
  127. package/types/excalidraw/components/ColorPicker/HotkeyLabel.d.ts +7 -7
  128. package/types/excalidraw/components/ColorPicker/Picker.d.ts +19 -19
  129. package/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +10 -10
  130. package/types/excalidraw/components/ColorPicker/PickerHeading.d.ts +5 -5
  131. package/types/excalidraw/components/ColorPicker/ShadeList.d.ts +9 -9
  132. package/types/excalidraw/components/ColorPicker/TopPicks.d.ts +9 -9
  133. package/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +21 -21
  134. package/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +20 -20
  135. package/types/excalidraw/components/CommandPalette/CommandPalette.d.ts +19 -19
  136. package/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +2 -2
  137. package/types/excalidraw/components/CommandPalette/types.d.ts +24 -24
  138. package/types/excalidraw/components/ConfirmDialog.d.ts +10 -10
  139. package/types/excalidraw/components/ContextMenu.d.ts +16 -16
  140. package/types/excalidraw/components/ConvertElementTypePopup.d.ts +23 -23
  141. package/types/excalidraw/components/DarkModeToggle.d.ts +7 -7
  142. package/types/excalidraw/components/DefaultSidebar.d.ts +27 -30
  143. package/types/excalidraw/components/DiagramToCodePlugin/DiagramToCodePlugin.d.ts +4 -4
  144. package/types/excalidraw/components/Dialog.d.ts +13 -13
  145. package/types/excalidraw/components/DialogActionButton.d.ts +10 -10
  146. package/types/excalidraw/components/ElementCanvasButtons.d.ts +7 -7
  147. package/types/excalidraw/components/ElementLinkDialog.d.ts +12 -12
  148. package/types/excalidraw/components/Ellipsify.d.ts +3 -3
  149. package/types/excalidraw/components/ErrorDialog.d.ts +5 -5
  150. package/types/excalidraw/components/ExcalidrawLogo.d.ts +15 -15
  151. package/types/excalidraw/components/EyeDropper.d.ts +27 -27
  152. package/types/excalidraw/components/FilledButton.d.ts +18 -18
  153. package/types/excalidraw/components/FixedSideContainer.d.ts +10 -10
  154. package/types/excalidraw/components/FollowMode/FollowMode.d.ts +10 -10
  155. package/types/excalidraw/components/FontPicker/FontPicker.d.ts +22 -22
  156. package/types/excalidraw/components/FontPicker/FontPickerList.d.ts +26 -26
  157. package/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +8 -8
  158. package/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +13 -13
  159. package/types/excalidraw/components/HandButton.d.ts +10 -10
  160. package/types/excalidraw/components/HelpButton.d.ts +7 -7
  161. package/types/excalidraw/components/HelpDialog.d.ts +4 -4
  162. package/types/excalidraw/components/HintViewer.d.ts +11 -11
  163. package/types/excalidraw/components/IconPicker.d.ts +15 -15
  164. package/types/excalidraw/components/ImageExportDialog.d.ts +14 -14
  165. package/types/excalidraw/components/InitializeApp.d.ts +10 -10
  166. package/types/excalidraw/components/InlineIcon.d.ts +5 -5
  167. package/types/excalidraw/components/Island.d.ts +10 -10
  168. package/types/excalidraw/components/JSONExportDialog.d.ts +15 -15
  169. package/types/excalidraw/components/LaserPointerButton.d.ts +10 -10
  170. package/types/excalidraw/components/LayerUI.d.ts +32 -32
  171. package/types/excalidraw/components/LibraryMenu.d.ts +10 -10
  172. package/types/excalidraw/components/LibraryMenuBrowseButton.d.ts +7 -7
  173. package/types/excalidraw/components/LibraryMenuControlButtons.d.ts +9 -9
  174. package/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +17 -17
  175. package/types/excalidraw/components/LibraryMenuItems.d.ts +14 -14
  176. package/types/excalidraw/components/LibraryMenuSection.d.ts +23 -23
  177. package/types/excalidraw/components/LibraryUnit.d.ts +14 -14
  178. package/types/excalidraw/components/LinkButton.d.ts +4 -4
  179. package/types/excalidraw/components/LoadingMessage.d.ts +5 -5
  180. package/types/excalidraw/components/LockButton.d.ts +10 -10
  181. package/types/excalidraw/components/MagicButton.d.ts +10 -10
  182. package/types/excalidraw/components/MobileMenu.d.ts +24 -24
  183. package/types/excalidraw/components/MobileToolBar.d.ts +10 -10
  184. package/types/excalidraw/components/Modal.d.ts +14 -14
  185. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirm.d.ts +17 -17
  186. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmActions.d.ts +17 -17
  187. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +22 -22
  188. package/types/excalidraw/components/Paragraph.d.ts +4 -4
  189. package/types/excalidraw/components/PasteChartDialog.d.ts +8 -8
  190. package/types/excalidraw/components/PenModeButton.d.ts +12 -12
  191. package/types/excalidraw/components/Popover.d.ts +16 -16
  192. package/types/excalidraw/components/ProjectName.d.ts +10 -10
  193. package/types/excalidraw/components/PropertiesPopover.d.ts +16 -16
  194. package/types/excalidraw/components/PublishLibrary.d.ts +16 -16
  195. package/types/excalidraw/components/QuickSearch.d.ts +9 -9
  196. package/types/excalidraw/components/RadioGroup.d.ts +13 -13
  197. package/types/excalidraw/components/RadioSelection.d.ts +20 -20
  198. package/types/excalidraw/components/Range.d.ts +8 -8
  199. package/types/excalidraw/components/SVGLayer.d.ts +7 -7
  200. package/types/excalidraw/components/ScrollableList.d.ts +8 -8
  201. package/types/excalidraw/components/SearchMenu.d.ts +5 -5
  202. package/types/excalidraw/components/Section.d.ts +7 -7
  203. package/types/excalidraw/components/ShareableLinkDialog.d.ts +7 -7
  204. package/types/excalidraw/components/Sidebar/Sidebar.d.ts +70 -76
  205. package/types/excalidraw/components/Sidebar/SidebarHeader.d.ts +7 -7
  206. package/types/excalidraw/components/Sidebar/SidebarTab.d.ts +8 -8
  207. package/types/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +9 -9
  208. package/types/excalidraw/components/Sidebar/SidebarTabTriggers.d.ts +6 -6
  209. package/types/excalidraw/components/Sidebar/SidebarTabs.d.ts +6 -6
  210. package/types/excalidraw/components/Sidebar/SidebarTrigger.d.ts +6 -6
  211. package/types/excalidraw/components/Sidebar/common.d.ts +34 -34
  212. package/types/excalidraw/components/Spinner.d.ts +8 -8
  213. package/types/excalidraw/components/Stack.d.ts +15 -15
  214. package/types/excalidraw/components/Stats/Angle.d.ts +11 -11
  215. package/types/excalidraw/components/Stats/CanvasGrid.d.ts +10 -10
  216. package/types/excalidraw/components/Stats/CanvasGridSize.d.ts +10 -10
  217. package/types/excalidraw/components/Stats/Collapsible.d.ts +10 -10
  218. package/types/excalidraw/components/Stats/Dimension.d.ts +11 -11
  219. package/types/excalidraw/components/Stats/DragInput.d.ts +44 -44
  220. package/types/excalidraw/components/Stats/FontSize.d.ts +11 -11
  221. package/types/excalidraw/components/Stats/MultiAngle.d.ts +11 -11
  222. package/types/excalidraw/components/Stats/MultiDimension.d.ts +14 -14
  223. package/types/excalidraw/components/Stats/MultiFontSize.d.ts +12 -12
  224. package/types/excalidraw/components/Stats/MultiPosition.d.ts +14 -14
  225. package/types/excalidraw/components/Stats/Position.d.ts +12 -12
  226. package/types/excalidraw/components/Stats/index.d.ts +35 -35
  227. package/types/excalidraw/components/Stats/utils.d.ts +19 -19
  228. package/types/excalidraw/components/Switch.d.ts +9 -9
  229. package/types/excalidraw/components/TTDDialog/MermaidToExcalidraw.d.ts +8 -8
  230. package/types/excalidraw/components/TTDDialog/MermaidToExcalidrawLib.d.ts +10 -10
  231. package/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +29 -29
  232. package/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +9 -9
  233. package/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +7 -7
  234. package/types/excalidraw/components/TTDDialog/TTDDialogPanel.d.ts +17 -17
  235. package/types/excalidraw/components/TTDDialog/TTDDialogPanels.d.ts +4 -4
  236. package/types/excalidraw/components/TTDDialog/TTDDialogSubmitShortcut.d.ts +1 -1
  237. package/types/excalidraw/components/TTDDialog/TTDDialogTab.d.ts +7 -7
  238. package/types/excalidraw/components/TTDDialog/TTDDialogTabTrigger.d.ts +8 -8
  239. package/types/excalidraw/components/TTDDialog/TTDDialogTabTriggers.d.ts +6 -6
  240. package/types/excalidraw/components/TTDDialog/TTDDialogTabs.d.ts +11 -11
  241. package/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +8 -8
  242. package/types/excalidraw/components/TTDDialog/common.d.ts +32 -32
  243. package/types/excalidraw/components/TextField.d.ts +22 -22
  244. package/types/excalidraw/components/Toast.d.ts +9 -9
  245. package/types/excalidraw/components/ToolButton.d.ts +49 -49
  246. package/types/excalidraw/components/ToolPopover.d.ts +25 -25
  247. package/types/excalidraw/components/Tooltip.d.ts +18 -18
  248. package/types/excalidraw/components/Trans.d.ts +9 -9
  249. package/types/excalidraw/components/TrayMenu.d.ts +26 -26
  250. package/types/excalidraw/components/UnlockPopup.d.ts +8 -8
  251. package/types/excalidraw/components/UserList.d.ts +18 -18
  252. package/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +33 -33
  253. package/types/excalidraw/components/canvases/NewElementCanvas.d.ts +14 -14
  254. package/types/excalidraw/components/canvases/StaticCanvas.d.ts +19 -19
  255. package/types/excalidraw/components/canvases/index.d.ts +3 -3
  256. package/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +84 -88
  257. package/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +16 -16
  258. package/types/excalidraw/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -11
  259. package/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +38 -46
  260. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +8 -8
  261. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +17 -17
  262. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemCustom.d.ts +7 -7
  263. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +16 -16
  264. package/types/excalidraw/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -5
  265. package/types/excalidraw/components/dropdownMenu/DropdownMenuTrigger.d.ts +10 -10
  266. package/types/excalidraw/components/dropdownMenu/common.d.ts +6 -6
  267. package/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +3 -3
  268. package/types/excalidraw/components/footer/Footer.d.ts +12 -12
  269. package/types/excalidraw/components/footer/FooterCenter.d.ts +8 -8
  270. package/types/excalidraw/components/hoc/withInternalFallback.d.ts +4 -4
  271. package/types/excalidraw/components/hyperlink/Hyperlink.d.ts +19 -19
  272. package/types/excalidraw/components/hyperlink/helpers.d.ts +10 -10
  273. package/types/excalidraw/components/icons.d.ts +241 -241
  274. package/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +11 -22
  275. package/types/excalidraw/components/main-menu/DefaultItems.d.ts +64 -64
  276. package/types/excalidraw/components/main-menu/MainMenu.d.ts +78 -80
  277. package/types/excalidraw/components/shapes.d.ts +172 -172
  278. package/types/excalidraw/components/welcome-screen/WelcomeScreen.Center.d.ts +60 -60
  279. package/types/excalidraw/components/welcome-screen/WelcomeScreen.Hints.d.ts +19 -19
  280. package/types/excalidraw/components/welcome-screen/WelcomeScreen.d.ts +86 -86
  281. package/types/excalidraw/context/tunnels.d.ts +21 -21
  282. package/types/excalidraw/context/ui-appState.d.ts +4 -4
  283. package/types/excalidraw/cursor.d.ts +6 -6
  284. package/types/excalidraw/data/EditorLocalStorage.d.ts +8 -8
  285. package/types/excalidraw/data/ai/types.d.ts +242 -242
  286. package/types/excalidraw/data/blob.d.ts +57 -49
  287. package/types/excalidraw/data/encode.d.ts +55 -55
  288. package/types/excalidraw/data/encryption.d.ts +9 -9
  289. package/types/excalidraw/data/filesystem.d.ts +21 -21
  290. package/types/excalidraw/data/image.d.ts +9 -9
  291. package/types/excalidraw/data/index.d.ts +22 -22
  292. package/types/excalidraw/data/json.d.ts +18 -16
  293. package/types/excalidraw/data/library.d.ts +127 -112
  294. package/types/excalidraw/data/reconcile.d.ts +7 -7
  295. package/types/excalidraw/data/resave.d.ts +5 -5
  296. package/types/excalidraw/data/restore.d.ts +35 -26
  297. package/types/excalidraw/data/transform.d.ts +81 -81
  298. package/types/excalidraw/data/types.d.ts +48 -48
  299. package/types/excalidraw/deburr.d.ts +1 -1
  300. package/types/excalidraw/dist/excalidraw.development.d.ts +2 -2
  301. package/types/excalidraw/dist/excalidraw.production.min.d.ts +2 -3
  302. package/types/excalidraw/editor-jotai.d.ts +56 -56
  303. package/types/excalidraw/entry.d.ts +1 -1
  304. package/types/excalidraw/env.d.cts +1 -1
  305. package/types/excalidraw/env.d.ts +1 -1
  306. package/types/excalidraw/eraser/index.d.ts +12 -12
  307. package/types/excalidraw/errors.d.ts +29 -29
  308. package/types/excalidraw/fonts/Cascadia/index.d.ts +2 -2
  309. package/types/excalidraw/fonts/ComicShanns/index.d.ts +2 -2
  310. package/types/excalidraw/fonts/Emoji/index.d.ts +2 -2
  311. package/types/excalidraw/fonts/ExcalidrawFontFace.d.ts +29 -29
  312. package/types/excalidraw/fonts/Excalifont/index.d.ts +2 -2
  313. package/types/excalidraw/fonts/Fonts.d.ts +90 -90
  314. package/types/excalidraw/fonts/Helvetica/index.d.ts +2 -2
  315. package/types/excalidraw/fonts/Liberation/index.d.ts +2 -2
  316. package/types/excalidraw/fonts/Lilita/index.d.ts +2 -2
  317. package/types/excalidraw/fonts/Nunito/index.d.ts +2 -2
  318. package/types/excalidraw/fonts/Virgil/index.d.ts +2 -2
  319. package/types/excalidraw/fonts/Xiaolai/index.d.ts +8 -8
  320. package/types/excalidraw/fonts/index.d.ts +1 -1
  321. package/types/excalidraw/gesture.d.ts +6 -6
  322. package/types/excalidraw/history.d.ts +48 -48
  323. package/types/excalidraw/hooks/useCallbackRefState.d.ts +1 -1
  324. package/types/excalidraw/hooks/useCopiedIndicator.d.ts +5 -5
  325. package/types/excalidraw/hooks/useCreatePortalContainer.d.ts +7 -7
  326. package/types/excalidraw/hooks/useEmitter.d.ts +2 -2
  327. package/types/excalidraw/hooks/useLibraryItemSvg.d.ts +11 -11
  328. package/types/excalidraw/hooks/useOutsideClick.d.ts +21 -21
  329. package/types/excalidraw/hooks/useScrollPosition.d.ts +1 -1
  330. package/types/excalidraw/hooks/useStable.d.ts +1 -1
  331. package/types/excalidraw/hooks/useStableCallback.d.ts +4 -4
  332. package/types/excalidraw/hooks/useTextEditorFocus.d.ts +14 -14
  333. package/types/excalidraw/hooks/useTransition.d.ts +2 -2
  334. package/types/excalidraw/i18n.d.ts +24 -24
  335. package/types/excalidraw/index-node.d.ts +1 -1
  336. package/types/excalidraw/index.d.ts +60 -60
  337. package/types/excalidraw/laser-trails.d.ts +20 -20
  338. package/types/excalidraw/lasso/index.d.ts +16 -16
  339. package/types/excalidraw/lasso/utils.d.ts +13 -13
  340. package/types/excalidraw/main.d.ts +2 -2
  341. package/types/excalidraw/mermaid.d.ts +2 -2
  342. package/types/excalidraw/obsidianUtils.d.ts +41 -41
  343. package/types/excalidraw/polyfill.d.ts +2 -2
  344. package/types/excalidraw/publicPath.d.ts +1 -1
  345. package/types/excalidraw/reactUtils.d.ts +14 -14
  346. package/types/excalidraw/renderer/animation.d.ts +12 -12
  347. package/types/excalidraw/renderer/helpers.d.ts +16 -14
  348. package/types/excalidraw/renderer/interactiveScene.d.ts +14 -12
  349. package/types/excalidraw/renderer/renderNewElementScene.d.ts +7 -7
  350. package/types/excalidraw/renderer/renderSnaps.d.ts +2 -2
  351. package/types/excalidraw/renderer/roundRect.d.ts +11 -11
  352. package/types/excalidraw/renderer/staticScene.d.ts +14 -14
  353. package/types/excalidraw/renderer/staticSvgScene.d.ts +5 -5
  354. package/types/excalidraw/scene/Renderer.d.ts +29 -27
  355. package/types/excalidraw/scene/export.d.ts +37 -37
  356. package/types/excalidraw/scene/index.d.ts +4 -4
  357. package/types/excalidraw/scene/normalize.d.ts +4 -4
  358. package/types/excalidraw/scene/scroll.d.ts +18 -23
  359. package/types/excalidraw/scene/scrollbars.d.ts +11 -11
  360. package/types/excalidraw/scene/types.d.ts +134 -134
  361. package/types/excalidraw/scene/zoom.d.ts +12 -12
  362. package/types/excalidraw/shortcut.d.ts +1 -1
  363. package/types/excalidraw/snapping.d.ts +111 -111
  364. package/types/excalidraw/subset/harfbuzz/harfbuzz-bindings.d.ts +45 -45
  365. package/types/excalidraw/subset/harfbuzz/harfbuzz-loader.d.ts +13 -13
  366. package/types/excalidraw/subset/harfbuzz/harfbuzz-wasm.d.ts +2 -2
  367. package/types/excalidraw/subset/subset-main.d.ts +12 -12
  368. package/types/excalidraw/subset/subset-shared.chunk.d.ts +32 -32
  369. package/types/excalidraw/subset/subset-worker.chunk.d.ts +15 -15
  370. package/types/excalidraw/subset/woff2/woff2-bindings.d.ts +31 -31
  371. package/types/excalidraw/subset/woff2/woff2-loader.d.ts +14 -14
  372. package/types/excalidraw/subset/woff2/woff2-wasm.d.ts +2 -2
  373. package/types/excalidraw/types.d.ts +801 -801
  374. package/types/excalidraw/webpack.dev.config.d.ts +116 -116
  375. package/types/excalidraw/webpack.prod.config.d.ts +130 -130
  376. package/types/excalidraw/workers.d.ts +36 -36
  377. package/types/excalidraw/wysiwyg/textWysiwyg.d.ts +24 -24
  378. package/types/math/src/angle.d.ts +19 -19
  379. package/types/math/src/constants.d.ts +3 -3
  380. package/types/math/src/curve.d.ts +74 -74
  381. package/types/math/src/ellipse.d.ts +44 -44
  382. package/types/math/src/index.d.ts +13 -13
  383. package/types/math/src/line.d.ts +17 -17
  384. package/types/math/src/point.d.ts +122 -122
  385. package/types/math/src/polygon.d.ts +6 -6
  386. package/types/math/src/range.d.ts +44 -44
  387. package/types/math/src/rectangle.d.ts +5 -5
  388. package/types/math/src/segment.d.ts +40 -40
  389. package/types/math/src/triangle.d.ts +11 -11
  390. package/types/math/src/types.d.ts +106 -106
  391. package/types/math/src/utils.d.ts +7 -7
  392. package/types/math/src/vector.d.ts +94 -94
  393. package/types/utils/src/bbox.d.ts +9 -9
  394. package/types/utils/src/export.d.ts +35 -35
  395. package/types/utils/src/index.d.ts +4 -4
  396. package/types/utils/src/shape.d.ts +58 -58
  397. package/types/utils/src/withinBounds.d.ts +19 -19
@@ -1,5 +1,5 @@
1
- import type { GlobalPoint, LineSegment, LocalPoint, Rectangle } from "./types";
2
- export declare function rectangle<P extends GlobalPoint | LocalPoint>(topLeft: P, bottomRight: P): Rectangle<P>;
3
- export declare function rectangleFromNumberSequence<Point extends LocalPoint | GlobalPoint>(minX: number, minY: number, maxX: number, maxY: number): Rectangle<Point>;
4
- export declare function rectangleIntersectLineSegment<Point extends LocalPoint | GlobalPoint>(r: Rectangle<Point>, l: LineSegment<Point>): Point[];
5
- export declare function rectangleIntersectRectangle<Point extends LocalPoint | GlobalPoint>(rectangle1: Rectangle<Point>, rectangle2: Rectangle<Point>): boolean;
1
+ import type { GlobalPoint, LineSegment, LocalPoint, Rectangle } from "./types";
2
+ export declare function rectangle<P extends GlobalPoint | LocalPoint>(topLeft: P, bottomRight: P): Rectangle<P>;
3
+ export declare function rectangleFromNumberSequence<Point extends LocalPoint | GlobalPoint>(minX: number, minY: number, maxX: number, maxY: number): Rectangle<Point>;
4
+ export declare function rectangleIntersectLineSegment<Point extends LocalPoint | GlobalPoint>(r: Rectangle<Point>, l: LineSegment<Point>): Point[];
5
+ export declare function rectangleIntersectRectangle<Point extends LocalPoint | GlobalPoint>(rectangle1: Rectangle<Point>, rectangle2: Rectangle<Point>): boolean;
@@ -1,40 +1,40 @@
1
- import type { GlobalPoint, LineSegment, LocalPoint, Radians } from "./types";
2
- /**
3
- * Create a line segment from two points.
4
- *
5
- * @param points The two points delimiting the line segment on each end
6
- * @returns The line segment delineated by the points
7
- */
8
- export declare function lineSegment<P extends GlobalPoint | LocalPoint>(a: P, b: P): LineSegment<P>;
9
- /**
10
- *
11
- * @param segment
12
- * @returns
13
- */
14
- export declare const isLineSegment: <Point extends GlobalPoint | LocalPoint>(segment: unknown) => segment is LineSegment<Point>;
15
- /**
16
- * Return the coordinates resulting from rotating the given line about an origin by an angle in radians
17
- * note that when the origin is not given, the midpoint of the given line is used as the origin.
18
- *
19
- * @param l
20
- * @param angle
21
- * @param origin
22
- * @returns
23
- */
24
- export declare const lineSegmentRotate: <Point extends GlobalPoint | LocalPoint>(l: LineSegment<Point>, angle: Radians, origin?: Point | undefined) => LineSegment<Point>;
25
- /**
26
- * Calculates the point two line segments with a definite start and end point
27
- * intersect at.
28
- */
29
- export declare const segmentsIntersectAt: <Point extends GlobalPoint | LocalPoint>(a: Readonly<LineSegment<Point>>, b: Readonly<LineSegment<Point>>) => Point | null;
30
- export declare const pointOnLineSegment: <Point extends GlobalPoint | LocalPoint>(point: Point, line: LineSegment<Point>, threshold?: number) => boolean;
31
- export declare const distanceToLineSegment: <Point extends GlobalPoint | LocalPoint>(point: Point, line: LineSegment<Point>) => number;
32
- /**
33
- * Returns the intersection point of a segment and a line
34
- *
35
- * @param l
36
- * @param s
37
- * @returns
38
- */
39
- export declare function lineSegmentIntersectionPoints<Point extends GlobalPoint | LocalPoint>(l: LineSegment<Point>, s: LineSegment<Point>, threshold?: number): Point | null;
40
- export declare function lineSegmentsDistance<Point extends GlobalPoint | LocalPoint>(s1: LineSegment<Point>, s2: LineSegment<Point>): number;
1
+ import type { GlobalPoint, LineSegment, LocalPoint, Radians } from "./types";
2
+ /**
3
+ * Create a line segment from two points.
4
+ *
5
+ * @param points The two points delimiting the line segment on each end
6
+ * @returns The line segment delineated by the points
7
+ */
8
+ export declare function lineSegment<P extends GlobalPoint | LocalPoint>(a: P, b: P): LineSegment<P>;
9
+ /**
10
+ *
11
+ * @param segment
12
+ * @returns
13
+ */
14
+ export declare const isLineSegment: <Point extends GlobalPoint | LocalPoint>(segment: unknown) => segment is LineSegment<Point>;
15
+ /**
16
+ * Return the coordinates resulting from rotating the given line about an origin by an angle in radians
17
+ * note that when the origin is not given, the midpoint of the given line is used as the origin.
18
+ *
19
+ * @param l
20
+ * @param angle
21
+ * @param origin
22
+ * @returns
23
+ */
24
+ export declare const lineSegmentRotate: <Point extends LocalPoint | GlobalPoint>(l: LineSegment<Point>, angle: Radians, origin?: Point) => LineSegment<Point>;
25
+ /**
26
+ * Calculates the point two line segments with a definite start and end point
27
+ * intersect at.
28
+ */
29
+ export declare const segmentsIntersectAt: <Point extends GlobalPoint | LocalPoint>(a: Readonly<LineSegment<Point>>, b: Readonly<LineSegment<Point>>) => Point | null;
30
+ export declare const pointOnLineSegment: <Point extends LocalPoint | GlobalPoint>(point: Point, line: LineSegment<Point>, threshold?: number) => boolean;
31
+ export declare const distanceToLineSegment: <Point extends LocalPoint | GlobalPoint>(point: Point, line: LineSegment<Point>) => number;
32
+ /**
33
+ * Returns the intersection point of a segment and a line
34
+ *
35
+ * @param l
36
+ * @param s
37
+ * @returns
38
+ */
39
+ export declare function lineSegmentIntersectionPoints<Point extends GlobalPoint | LocalPoint>(l: LineSegment<Point>, s: LineSegment<Point>, threshold?: number): Point | null;
40
+ export declare function lineSegmentsDistance<Point extends GlobalPoint | LocalPoint>(s1: LineSegment<Point>, s2: LineSegment<Point>): number;
@@ -1,11 +1,11 @@
1
- import type { GlobalPoint, LocalPoint, Triangle } from "./types";
2
- /**
3
- * Tests if a point lies inside a triangle. This function
4
- * will return FALSE if the point lies exactly on the sides
5
- * of the triangle.
6
- *
7
- * @param triangle The triangle to test the point for
8
- * @param p The point to test whether is in the triangle
9
- * @returns TRUE if the point is inside of the triangle
10
- */
11
- export declare function triangleIncludesPoint<P extends GlobalPoint | LocalPoint>([a, b, c]: Triangle<P>, p: P): boolean;
1
+ import type { GlobalPoint, LocalPoint, Triangle } from "./types";
2
+ /**
3
+ * Tests if a point lies inside a triangle. This function
4
+ * will return FALSE if the point lies exactly on the sides
5
+ * of the triangle.
6
+ *
7
+ * @param triangle The triangle to test the point for
8
+ * @param p The point to test whether is in the triangle
9
+ * @returns TRUE if the point is inside of the triangle
10
+ */
11
+ export declare function triangleIncludesPoint<P extends GlobalPoint | LocalPoint>([a, b, c]: Triangle<P>, p: P): boolean;
@@ -1,106 +1,106 @@
1
- /**
2
- * By definition one radian is the angle subtended at the centre
3
- * of a circle by an arc that is equal in length to the radius.
4
- */
5
- export type Radians = number & {
6
- _brand: "excalimath__radian";
7
- };
8
- /**
9
- * An angle measurement of a plane angle in which one full
10
- * rotation is 360 degrees.
11
- */
12
- export type Degrees = number & {
13
- _brand: "excalimath_degree";
14
- };
15
- /**
16
- * A number range which includes the start and end numbers in the range.
17
- */
18
- export type InclusiveRange = [number, number] & {
19
- _brand: "excalimath_degree";
20
- };
21
- /**
22
- * Represents a 2D position in world or canvas space. A
23
- * global coordinate.
24
- */
25
- export type GlobalPoint = [x: number, y: number] & {
26
- _brand: "excalimath__globalpoint";
27
- };
28
- /**
29
- * Represents a 2D position in whatever local space it's
30
- * needed. A local coordinate.
31
- */
32
- export type LocalPoint = [x: number, y: number] & {
33
- _brand: "excalimath__localpoint";
34
- };
35
- /**
36
- * A line is an infinitely long object with no width, depth, or curvature.
37
- */
38
- export type Line<P extends GlobalPoint | LocalPoint> = [p: P, q: P] & {
39
- _brand: "excalimath_line";
40
- };
41
- /**
42
- * In geometry, a line segment is a part of a straight
43
- * line that is bounded by two distinct end points, and
44
- * contains every point on the line that is between its endpoints.
45
- */
46
- export type LineSegment<P extends GlobalPoint | LocalPoint> = [a: P, b: P] & {
47
- _brand: "excalimath_linesegment";
48
- };
49
- /**
50
- * Represents a 2D vector
51
- */
52
- export type Vector = [u: number, v: number] & {
53
- _brand: "excalimath__vector";
54
- };
55
- /**
56
- * A triangle represented by 3 points
57
- */
58
- export type Triangle<P extends GlobalPoint | LocalPoint> = [
59
- a: P,
60
- b: P,
61
- c: P
62
- ] & {
63
- _brand: "excalimath__triangle";
64
- };
65
- /**
66
- * A rectangular shape represented by 4 points at its corners
67
- */
68
- export type Rectangle<P extends GlobalPoint | LocalPoint> = [a: P, b: P] & {
69
- _brand: "excalimath__rectangle";
70
- };
71
- /**
72
- * A polygon is a closed shape by connecting the given points
73
- * rectangles and diamonds are modelled by polygons
74
- */
75
- export type Polygon<Point extends GlobalPoint | LocalPoint> = Point[] & {
76
- _brand: "excalimath_polygon";
77
- };
78
- /**
79
- * Cubic bezier curve with four control points
80
- */
81
- export type Curve<Point extends GlobalPoint | LocalPoint> = [
82
- Point,
83
- Point,
84
- Point,
85
- Point
86
- ] & {
87
- _brand: "excalimath_curve";
88
- };
89
- export type PolarCoords = [
90
- radius: number,
91
- /** angle in radians */
92
- angle: number
93
- ];
94
- /**
95
- An ellipse is specified by its center, angle, and its major and minor axes
96
- but for the sake of simplicity, we've used halfWidth and halfHeight instead
97
- in replace of semi major and semi minor axes
98
- */
99
- export type Ellipse<Point extends GlobalPoint | LocalPoint> = {
100
- center: Point;
101
- halfWidth: number;
102
- halfHeight: number;
103
- } & {
104
- _brand: "excalimath_ellipse";
105
- };
106
- export type ElementsSegmentsMap = Map<string, LineSegment<GlobalPoint>[]>;
1
+ /**
2
+ * By definition one radian is the angle subtended at the centre
3
+ * of a circle by an arc that is equal in length to the radius.
4
+ */
5
+ export type Radians = number & {
6
+ _brand: "excalimath__radian";
7
+ };
8
+ /**
9
+ * An angle measurement of a plane angle in which one full
10
+ * rotation is 360 degrees.
11
+ */
12
+ export type Degrees = number & {
13
+ _brand: "excalimath_degree";
14
+ };
15
+ /**
16
+ * A number range which includes the start and end numbers in the range.
17
+ */
18
+ export type InclusiveRange = [number, number] & {
19
+ _brand: "excalimath_degree";
20
+ };
21
+ /**
22
+ * Represents a 2D position in world or canvas space. A
23
+ * global coordinate.
24
+ */
25
+ export type GlobalPoint = [x: number, y: number] & {
26
+ _brand: "excalimath__globalpoint";
27
+ };
28
+ /**
29
+ * Represents a 2D position in whatever local space it's
30
+ * needed. A local coordinate.
31
+ */
32
+ export type LocalPoint = [x: number, y: number] & {
33
+ _brand: "excalimath__localpoint";
34
+ };
35
+ /**
36
+ * A line is an infinitely long object with no width, depth, or curvature.
37
+ */
38
+ export type Line<P extends GlobalPoint | LocalPoint> = [p: P, q: P] & {
39
+ _brand: "excalimath_line";
40
+ };
41
+ /**
42
+ * In geometry, a line segment is a part of a straight
43
+ * line that is bounded by two distinct end points, and
44
+ * contains every point on the line that is between its endpoints.
45
+ */
46
+ export type LineSegment<P extends GlobalPoint | LocalPoint> = [a: P, b: P] & {
47
+ _brand: "excalimath_linesegment";
48
+ };
49
+ /**
50
+ * Represents a 2D vector
51
+ */
52
+ export type Vector = [u: number, v: number] & {
53
+ _brand: "excalimath__vector";
54
+ };
55
+ /**
56
+ * A triangle represented by 3 points
57
+ */
58
+ export type Triangle<P extends GlobalPoint | LocalPoint> = [
59
+ a: P,
60
+ b: P,
61
+ c: P
62
+ ] & {
63
+ _brand: "excalimath__triangle";
64
+ };
65
+ /**
66
+ * A rectangular shape represented by 4 points at its corners
67
+ */
68
+ export type Rectangle<P extends GlobalPoint | LocalPoint> = [a: P, b: P] & {
69
+ _brand: "excalimath__rectangle";
70
+ };
71
+ /**
72
+ * A polygon is a closed shape by connecting the given points
73
+ * rectangles and diamonds are modelled by polygons
74
+ */
75
+ export type Polygon<Point extends GlobalPoint | LocalPoint> = Point[] & {
76
+ _brand: "excalimath_polygon";
77
+ };
78
+ /**
79
+ * Cubic bezier curve with four control points
80
+ */
81
+ export type Curve<Point extends GlobalPoint | LocalPoint> = [
82
+ Point,
83
+ Point,
84
+ Point,
85
+ Point
86
+ ] & {
87
+ _brand: "excalimath_curve";
88
+ };
89
+ export type PolarCoords = [
90
+ radius: number,
91
+ /** angle in radians */
92
+ angle: number
93
+ ];
94
+ /**
95
+ An ellipse is specified by its center, angle, and its major and minor axes
96
+ but for the sake of simplicity, we've used halfWidth and halfHeight instead
97
+ in replace of semi major and semi minor axes
98
+ */
99
+ export type Ellipse<Point extends GlobalPoint | LocalPoint> = {
100
+ center: Point;
101
+ halfWidth: number;
102
+ halfHeight: number;
103
+ } & {
104
+ _brand: "excalimath_ellipse";
105
+ };
106
+ export type ElementsSegmentsMap = Map<string, LineSegment<GlobalPoint>[]>;
@@ -1,7 +1,7 @@
1
- export declare const PRECISION = 0.0001;
2
- export declare const clamp: (value: number, min: number, max: number) => number;
3
- export declare const round: (value: number, precision: number, func?: "round" | "floor" | "ceil") => number;
4
- export declare const roundToStep: (value: number, step: number, func?: "round" | "floor" | "ceil") => number;
5
- export declare const average: (a: number, b: number) => number;
6
- export declare const isFiniteNumber: (value: any) => value is number;
7
- export declare const isCloseTo: (a: number, b: number, precision?: number) => boolean;
1
+ export declare const PRECISION = 0.0001;
2
+ export declare const clamp: (value: number, min: number, max: number) => number;
3
+ export declare const round: (value: number, precision: number, func?: "round" | "floor" | "ceil") => number;
4
+ export declare const roundToStep: (value: number, step: number, func?: "round" | "floor" | "ceil") => number;
5
+ export declare const average: (a: number, b: number) => number;
6
+ export declare const isFiniteNumber: (value: any) => value is number;
7
+ export declare const isCloseTo: (a: number, b: number, precision?: number) => boolean;
@@ -1,94 +1,94 @@
1
- import type { GlobalPoint, LocalPoint, Vector } from "./types";
2
- /**
3
- * Create a vector from the x and y coordiante elements.
4
- *
5
- * @param x The X aspect of the vector
6
- * @param y T Y aspect of the vector
7
- * @returns The constructed vector with X and Y as the coordinates
8
- */
9
- export declare function vector(x: number, y: number, originX?: number, originY?: number): Vector;
10
- /**
11
- * Turn a point into a vector with the origin point.
12
- *
13
- * @param p The point to turn into a vector
14
- * @param origin The origin point in a given coordiante system
15
- * @param threshold The threshold to consider the vector as 'undefined'
16
- * @param defaultValue The default value to return if the vector is 'undefined'
17
- * @returns The created vector from the point and the origin or default
18
- */
19
- export declare function vectorFromPoint<Point extends GlobalPoint | LocalPoint>(p: Point, origin?: Point, threshold?: number, defaultValue?: Vector): Vector;
20
- /**
21
- * Cross product is a binary operation on two vectors in 2D space.
22
- * It results in a vector that is perpendicular to both vectors.
23
- *
24
- * @param a One of the vectors to use for the directed area calculation
25
- * @param b The other vector to use for the directed area calculation
26
- * @returns The directed area value for the two vectos
27
- */
28
- export declare function vectorCross(a: Vector, b: Vector): number;
29
- /**
30
- * Dot product is defined as the sum of the products of the
31
- * two vectors.
32
- *
33
- * @param a One of the vectors for which the sum of products is calculated
34
- * @param b The other vector for which the sum of products is calculated
35
- * @returns The sum of products of the two vectors
36
- */
37
- export declare function vectorDot(a: Vector, b: Vector): number;
38
- /**
39
- * Determines if the value has the shape of a Vector.
40
- *
41
- * @param v The value to test
42
- * @returns TRUE if the value has the shape and components of a Vectors
43
- */
44
- export declare function isVector(v: unknown): v is Vector;
45
- /**
46
- * Add two vectors by adding their coordinates.
47
- *
48
- * @param a One of the vectors to add
49
- * @param b The other vector to add
50
- * @returns The sum vector of the two provided vectors
51
- */
52
- export declare function vectorAdd(a: Readonly<Vector>, b: Readonly<Vector>): Vector;
53
- /**
54
- * Add two vectors by adding their coordinates.
55
- *
56
- * @param start One of the vectors to add
57
- * @param end The other vector to add
58
- * @returns The sum vector of the two provided vectors
59
- */
60
- export declare function vectorSubtract(start: Readonly<Vector>, end: Readonly<Vector>): Vector;
61
- /**
62
- * Scale vector by a scalar.
63
- *
64
- * @param v The vector to scale
65
- * @param scalar The scalar to multiply the vector components with
66
- * @returns The new scaled vector
67
- */
68
- export declare function vectorScale(v: Vector, scalar: number): Vector;
69
- /**
70
- * Calculates the sqare magnitude of a vector. Use this if you compare
71
- * magnitudes as it saves you an SQRT.
72
- *
73
- * @param v The vector to measure
74
- * @returns The scalar squared magnitude of the vector
75
- */
76
- export declare function vectorMagnitudeSq(v: Vector): number;
77
- /**
78
- * Calculates the magnitude of a vector.
79
- *
80
- * @param v The vector to measure
81
- * @returns The scalar magnitude of the vector
82
- */
83
- export declare function vectorMagnitude(v: Vector): number;
84
- /**
85
- * Normalize the vector (i.e. make the vector magnitue equal 1).
86
- *
87
- * @param v The vector to normalize
88
- * @returns The new normalized vector
89
- */
90
- export declare const vectorNormalize: (v: Vector) => Vector;
91
- /**
92
- * Calculate the right-hand normal of the vector.
93
- */
94
- export declare const vectorNormal: (v: Vector) => Vector;
1
+ import type { GlobalPoint, LocalPoint, Vector } from "./types";
2
+ /**
3
+ * Create a vector from the x and y coordiante elements.
4
+ *
5
+ * @param x The X aspect of the vector
6
+ * @param y T Y aspect of the vector
7
+ * @returns The constructed vector with X and Y as the coordinates
8
+ */
9
+ export declare function vector(x: number, y: number, originX?: number, originY?: number): Vector;
10
+ /**
11
+ * Turn a point into a vector with the origin point.
12
+ *
13
+ * @param p The point to turn into a vector
14
+ * @param origin The origin point in a given coordiante system
15
+ * @param threshold The threshold to consider the vector as 'undefined'
16
+ * @param defaultValue The default value to return if the vector is 'undefined'
17
+ * @returns The created vector from the point and the origin or default
18
+ */
19
+ export declare function vectorFromPoint<Point extends GlobalPoint | LocalPoint>(p: Point, origin?: Point, threshold?: number, defaultValue?: Vector): Vector;
20
+ /**
21
+ * Cross product is a binary operation on two vectors in 2D space.
22
+ * It results in a vector that is perpendicular to both vectors.
23
+ *
24
+ * @param a One of the vectors to use for the directed area calculation
25
+ * @param b The other vector to use for the directed area calculation
26
+ * @returns The directed area value for the two vectos
27
+ */
28
+ export declare function vectorCross(a: Vector, b: Vector): number;
29
+ /**
30
+ * Dot product is defined as the sum of the products of the
31
+ * two vectors.
32
+ *
33
+ * @param a One of the vectors for which the sum of products is calculated
34
+ * @param b The other vector for which the sum of products is calculated
35
+ * @returns The sum of products of the two vectors
36
+ */
37
+ export declare function vectorDot(a: Vector, b: Vector): number;
38
+ /**
39
+ * Determines if the value has the shape of a Vector.
40
+ *
41
+ * @param v The value to test
42
+ * @returns TRUE if the value has the shape and components of a Vectors
43
+ */
44
+ export declare function isVector(v: unknown): v is Vector;
45
+ /**
46
+ * Add two vectors by adding their coordinates.
47
+ *
48
+ * @param a One of the vectors to add
49
+ * @param b The other vector to add
50
+ * @returns The sum vector of the two provided vectors
51
+ */
52
+ export declare function vectorAdd(a: Readonly<Vector>, b: Readonly<Vector>): Vector;
53
+ /**
54
+ * Add two vectors by adding their coordinates.
55
+ *
56
+ * @param start One of the vectors to add
57
+ * @param end The other vector to add
58
+ * @returns The sum vector of the two provided vectors
59
+ */
60
+ export declare function vectorSubtract(start: Readonly<Vector>, end: Readonly<Vector>): Vector;
61
+ /**
62
+ * Scale vector by a scalar.
63
+ *
64
+ * @param v The vector to scale
65
+ * @param scalar The scalar to multiply the vector components with
66
+ * @returns The new scaled vector
67
+ */
68
+ export declare function vectorScale(v: Vector, scalar: number): Vector;
69
+ /**
70
+ * Calculates the sqare magnitude of a vector. Use this if you compare
71
+ * magnitudes as it saves you an SQRT.
72
+ *
73
+ * @param v The vector to measure
74
+ * @returns The scalar squared magnitude of the vector
75
+ */
76
+ export declare function vectorMagnitudeSq(v: Vector): number;
77
+ /**
78
+ * Calculates the magnitude of a vector.
79
+ *
80
+ * @param v The vector to measure
81
+ * @returns The scalar magnitude of the vector
82
+ */
83
+ export declare function vectorMagnitude(v: Vector): number;
84
+ /**
85
+ * Normalize the vector (i.e. make the vector magnitue equal 1).
86
+ *
87
+ * @param v The vector to normalize
88
+ * @returns The new normalized vector
89
+ */
90
+ export declare const vectorNormalize: (v: Vector) => Vector;
91
+ /**
92
+ * Calculate the right-hand normal of the vector.
93
+ */
94
+ export declare const vectorNormal: (v: Vector) => Vector;
@@ -1,9 +1,9 @@
1
- import { type GlobalPoint, type LocalPoint } from "@excalidraw/math";
2
- import type { Bounds } from "@excalidraw/element";
3
- export type LineSegment<P extends LocalPoint | GlobalPoint> = [P, P];
4
- export declare function getBBox<P extends LocalPoint | GlobalPoint>(line: LineSegment<P>): Bounds;
5
- export declare function doBBoxesIntersect(a: Bounds, b: Bounds): boolean;
6
- export declare function isPointOnLine<P extends GlobalPoint | LocalPoint>(l: LineSegment<P>, p: P): boolean;
7
- export declare function isPointRightOfLine<P extends GlobalPoint | LocalPoint>(l: LineSegment<P>, p: P): boolean;
8
- export declare function isLineSegmentTouchingOrCrossingLine<P extends GlobalPoint | LocalPoint>(a: LineSegment<P>, b: LineSegment<P>): boolean;
9
- export declare function doLineSegmentsIntersect<P extends GlobalPoint | LocalPoint>(a: LineSegment<P>, b: LineSegment<P>): boolean;
1
+ import { type GlobalPoint, type LocalPoint } from "@excalidraw/math";
2
+ import type { Bounds } from "@excalidraw/element";
3
+ export type LineSegment<P extends LocalPoint | GlobalPoint> = [P, P];
4
+ export declare function getBBox<P extends LocalPoint | GlobalPoint>(line: LineSegment<P>): Bounds;
5
+ export declare function doBBoxesIntersect(a: Bounds, b: Bounds): boolean;
6
+ export declare function isPointOnLine<P extends GlobalPoint | LocalPoint>(l: LineSegment<P>, p: P): boolean;
7
+ export declare function isPointRightOfLine<P extends GlobalPoint | LocalPoint>(l: LineSegment<P>, p: P): boolean;
8
+ export declare function isLineSegmentTouchingOrCrossingLine<P extends GlobalPoint | LocalPoint>(a: LineSegment<P>, b: LineSegment<P>): boolean;
9
+ export declare function doLineSegmentsIntersect<P extends GlobalPoint | LocalPoint>(a: LineSegment<P>, b: LineSegment<P>): boolean;
@@ -1,35 +1,35 @@
1
- import { MIME_TYPES } from "@excalidraw/common";
2
- import type { ExcalidrawElement, ExcalidrawFrameLikeElement, NonDeleted } from "@excalidraw/element/types";
3
- import type { AppState, BinaryFiles } from "@excalidraw/excalidraw/types";
4
- export { MIME_TYPES };
5
- type ExportOpts = {
6
- elements: readonly NonDeleted<ExcalidrawElement>[];
7
- appState?: Partial<Omit<AppState, "offsetTop" | "offsetLeft">>;
8
- files: BinaryFiles | null;
9
- maxWidthOrHeight?: number;
10
- exportingFrame?: ExcalidrawFrameLikeElement | null;
11
- getDimensions?: (width: number, height: number) => {
12
- width: number;
13
- height: number;
14
- scale?: number;
15
- };
16
- };
17
- export declare const exportToCanvas: ({ elements, appState, files, maxWidthOrHeight, getDimensions, exportPadding, exportingFrame, }: ExportOpts & {
18
- exportPadding?: number | undefined;
19
- }) => Promise<HTMLCanvasElement>;
20
- export declare const exportToBlob: (opts: ExportOpts & {
21
- mimeType?: string;
22
- quality?: number;
23
- exportPadding?: number;
24
- }) => Promise<Blob>;
25
- export declare const exportToSvg: ({ elements, appState, files, exportPadding, renderEmbeddables, exportingFrame, skipInliningFonts, reuseImages, }: Omit<ExportOpts, "getDimensions"> & {
26
- exportPadding?: number | undefined;
27
- renderEmbeddables?: boolean | undefined;
28
- skipInliningFonts?: true | undefined;
29
- reuseImages?: boolean | undefined;
30
- }) => Promise<SVGSVGElement>;
31
- export declare const exportToClipboard: (opts: ExportOpts & {
32
- mimeType?: string;
33
- quality?: number;
34
- type: "png" | "svg" | "json";
35
- }) => Promise<void>;
1
+ import { MIME_TYPES } from "@excalidraw/common";
2
+ import type { ExcalidrawElement, ExcalidrawFrameLikeElement, NonDeleted } from "@excalidraw/element/types";
3
+ import type { AppState, BinaryFiles } from "@excalidraw/excalidraw/types";
4
+ export { MIME_TYPES };
5
+ type ExportOpts = {
6
+ elements: readonly NonDeleted<ExcalidrawElement>[];
7
+ appState?: Partial<Omit<AppState, "offsetTop" | "offsetLeft">>;
8
+ files: BinaryFiles | null;
9
+ maxWidthOrHeight?: number;
10
+ exportingFrame?: ExcalidrawFrameLikeElement | null;
11
+ getDimensions?: (width: number, height: number) => {
12
+ width: number;
13
+ height: number;
14
+ scale?: number;
15
+ };
16
+ };
17
+ export declare const exportToCanvas: ({ elements, appState, files, maxWidthOrHeight, getDimensions, exportPadding, exportingFrame, }: ExportOpts & {
18
+ exportPadding?: number;
19
+ }) => Promise<HTMLCanvasElement>;
20
+ export declare const exportToBlob: (opts: ExportOpts & {
21
+ mimeType?: string;
22
+ quality?: number;
23
+ exportPadding?: number;
24
+ }) => Promise<Blob>;
25
+ export declare const exportToSvg: ({ elements, appState, files, exportPadding, renderEmbeddables, exportingFrame, skipInliningFonts, reuseImages, }: Omit<ExportOpts, "getDimensions"> & {
26
+ exportPadding?: number;
27
+ renderEmbeddables?: boolean;
28
+ skipInliningFonts?: true;
29
+ reuseImages?: boolean;
30
+ }) => Promise<SVGSVGElement>;
31
+ export declare const exportToClipboard: (opts: ExportOpts & {
32
+ mimeType?: string;
33
+ quality?: number;
34
+ type: "png" | "svg" | "json";
35
+ }) => Promise<void>;
@@ -1,4 +1,4 @@
1
- export * from "./export";
2
- export * from "./withinBounds";
3
- export * from "./bbox";
4
- export { getCommonBounds } from "@excalidraw/element";
1
+ export * from "./export";
2
+ export * from "./withinBounds";
3
+ export * from "./bbox";
4
+ export { getCommonBounds } from "@excalidraw/element";