@zsviczian/excalidraw 0.17.1-obsidian-55 → 0.17.1-obsidian-56

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 (367) hide show
  1. package/dist/excalidraw.development.js +86 -86
  2. package/dist/excalidraw.production.min.js +1 -1
  3. package/package.json +1 -1
  4. package/types/excalidraw/actions/actionAddToLibrary.d.ts +605 -605
  5. package/types/excalidraw/actions/actionAlign.d.ts +108 -108
  6. package/types/excalidraw/actions/actionBoundText.d.ts +440 -440
  7. package/types/excalidraw/actions/actionCanvas.d.ts +2958 -2958
  8. package/types/excalidraw/actions/actionClipboard.d.ts +1507 -1507
  9. package/types/excalidraw/actions/actionDeleteSelected.d.ts +640 -640
  10. package/types/excalidraw/actions/actionDistribute.d.ts +34 -34
  11. package/types/excalidraw/actions/actionDuplicateSelection.d.ts +21 -21
  12. package/types/excalidraw/actions/actionElementLock.d.ts +428 -428
  13. package/types/excalidraw/actions/actionExport.d.ts +1884 -1884
  14. package/types/excalidraw/actions/actionFinalize.d.ts +409 -409
  15. package/types/excalidraw/actions/actionFlip.d.ts +34 -34
  16. package/types/excalidraw/actions/actionFrame.d.ts +855 -855
  17. package/types/excalidraw/actions/actionGroup.d.ts +438 -438
  18. package/types/excalidraw/actions/actionHistory.d.ts +7 -7
  19. package/types/excalidraw/actions/actionLinearEditor.d.ts +215 -215
  20. package/types/excalidraw/actions/actionLink.d.ts +215 -215
  21. package/types/excalidraw/actions/actionMenu.d.ts +628 -628
  22. package/types/excalidraw/actions/actionNavigate.d.ts +414 -414
  23. package/types/excalidraw/actions/actionProperties.d.ts +3156 -3156
  24. package/types/excalidraw/actions/actionSelectAll.d.ts +214 -214
  25. package/types/excalidraw/actions/actionStyles.d.ts +228 -228
  26. package/types/excalidraw/actions/actionTextAutoResize.d.ts +17 -17
  27. package/types/excalidraw/actions/actionToggleGridMode.d.ts +217 -217
  28. package/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +215 -215
  29. package/types/excalidraw/actions/actionToggleSearchMenu.d.ts +407 -407
  30. package/types/excalidraw/actions/actionToggleStats.d.ts +215 -215
  31. package/types/excalidraw/actions/actionToggleViewMode.d.ts +216 -216
  32. package/types/excalidraw/actions/actionToggleZenMode.d.ts +216 -216
  33. package/types/excalidraw/actions/actionZindex.d.ts +74 -74
  34. package/types/excalidraw/actions/index.d.ts +26 -26
  35. package/types/excalidraw/actions/manager.d.ts +21 -21
  36. package/types/excalidraw/actions/register.d.ts +5 -5
  37. package/types/excalidraw/actions/shortcuts.d.ts +4 -4
  38. package/types/excalidraw/actions/types.d.ts +47 -47
  39. package/types/excalidraw/align.d.ts +6 -6
  40. package/types/excalidraw/analytics.d.ts +1 -1
  41. package/types/excalidraw/animated-trail.d.ts +33 -33
  42. package/types/excalidraw/animation-frame-handler.d.ts +16 -16
  43. package/types/excalidraw/appState.d.ts +89 -89
  44. package/types/excalidraw/binaryheap.d.ts +12 -12
  45. package/types/excalidraw/change.d.ts +191 -191
  46. package/types/excalidraw/charts.d.ts +27 -27
  47. package/types/excalidraw/clients.d.ts +14 -14
  48. package/types/excalidraw/clipboard.d.ts +44 -44
  49. package/types/excalidraw/colors.d.ts +61 -61
  50. package/types/excalidraw/components/Actions.d.ts +34 -34
  51. package/types/excalidraw/components/ActiveConfirmDialog.d.ts +4 -4
  52. package/types/excalidraw/components/App.d.ts +535 -535
  53. package/types/excalidraw/components/Avatar.d.ts +11 -11
  54. package/types/excalidraw/components/BraveMeasureTextError.d.ts +2 -2
  55. package/types/excalidraw/components/Button.d.ts +17 -17
  56. package/types/excalidraw/components/ButtonIcon.d.ts +14 -14
  57. package/types/excalidraw/components/ButtonIconCycle.d.ts +10 -10
  58. package/types/excalidraw/components/ButtonIconSelect.d.ts +19 -19
  59. package/types/excalidraw/components/ButtonSelect.d.ts +9 -9
  60. package/types/excalidraw/components/ButtonSeparator.d.ts +1 -1
  61. package/types/excalidraw/components/Card.d.ts +6 -6
  62. package/types/excalidraw/components/CheckboxItem.d.ts +8 -8
  63. package/types/excalidraw/components/ColorPicker/ColorInput.d.ts +9 -9
  64. package/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +19 -19
  65. package/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +8 -8
  66. package/types/excalidraw/components/ColorPicker/HotkeyLabel.d.ts +8 -8
  67. package/types/excalidraw/components/ColorPicker/Picker.d.ts +18 -18
  68. package/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +10 -10
  69. package/types/excalidraw/components/ColorPicker/PickerHeading.d.ts +5 -5
  70. package/types/excalidraw/components/ColorPicker/ShadeList.d.ts +8 -8
  71. package/types/excalidraw/components/ColorPicker/TopPicks.d.ts +9 -9
  72. package/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +21 -21
  73. package/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +20 -20
  74. package/types/excalidraw/components/CommandPalette/CommandPalette.d.ts +18 -18
  75. package/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +2 -2
  76. package/types/excalidraw/components/CommandPalette/types.d.ts +25 -25
  77. package/types/excalidraw/components/ConfirmDialog.d.ts +10 -10
  78. package/types/excalidraw/components/ContextMenu.d.ts +16 -16
  79. package/types/excalidraw/components/DarkModeToggle.d.ts +7 -7
  80. package/types/excalidraw/components/DefaultSidebar.d.ts +30 -30
  81. package/types/excalidraw/components/DiagramToCodePlugin/DiagramToCodePlugin.d.ts +4 -4
  82. package/types/excalidraw/components/Dialog.d.ts +13 -13
  83. package/types/excalidraw/components/DialogActionButton.d.ts +10 -10
  84. package/types/excalidraw/components/ErrorDialog.d.ts +5 -5
  85. package/types/excalidraw/components/ExcalidrawLogo.d.ts +15 -15
  86. package/types/excalidraw/components/EyeDropper.d.ts +27 -27
  87. package/types/excalidraw/components/FilledButton.d.ts +18 -18
  88. package/types/excalidraw/components/FixedSideContainer.d.ts +9 -9
  89. package/types/excalidraw/components/FollowMode/FollowMode.d.ts +10 -10
  90. package/types/excalidraw/components/FontPicker/FontPicker.d.ts +21 -21
  91. package/types/excalidraw/components/FontPicker/FontPickerList.d.ts +25 -25
  92. package/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +6 -6
  93. package/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +13 -13
  94. package/types/excalidraw/components/HandButton.d.ts +10 -10
  95. package/types/excalidraw/components/HelpButton.d.ts +7 -7
  96. package/types/excalidraw/components/HelpDialog.d.ts +4 -4
  97. package/types/excalidraw/components/HintViewer.d.ts +10 -10
  98. package/types/excalidraw/components/IconPicker.d.ts +14 -14
  99. package/types/excalidraw/components/ImageExportDialog.d.ts +14 -14
  100. package/types/excalidraw/components/InitializeApp.d.ts +10 -10
  101. package/types/excalidraw/components/InlineIcon.d.ts +3 -3
  102. package/types/excalidraw/components/Island.d.ts +10 -10
  103. package/types/excalidraw/components/JSONExportDialog.d.ts +15 -15
  104. package/types/excalidraw/components/LaserPointerButton.d.ts +10 -10
  105. package/types/excalidraw/components/LayerUI.d.ts +30 -30
  106. package/types/excalidraw/components/LibraryMenu.d.ts +24 -24
  107. package/types/excalidraw/components/LibraryMenuBrowseButton.d.ts +7 -7
  108. package/types/excalidraw/components/LibraryMenuControlButtons.d.ts +9 -9
  109. package/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +17 -17
  110. package/types/excalidraw/components/LibraryMenuItems.d.ts +14 -14
  111. package/types/excalidraw/components/LibraryMenuSection.d.ts +23 -23
  112. package/types/excalidraw/components/LibraryUnit.d.ts +14 -14
  113. package/types/excalidraw/components/LoadingMessage.d.ts +5 -5
  114. package/types/excalidraw/components/LockButton.d.ts +10 -10
  115. package/types/excalidraw/components/MagicButton.d.ts +9 -9
  116. package/types/excalidraw/components/MagicSettings.d.ts +8 -0
  117. package/types/excalidraw/components/MobileMenu.d.ts +24 -24
  118. package/types/excalidraw/components/Modal.d.ts +14 -14
  119. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirm.d.ts +17 -17
  120. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmActions.d.ts +17 -17
  121. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +22 -22
  122. package/types/excalidraw/components/Paragraph.d.ts +4 -4
  123. package/types/excalidraw/components/PasteChartDialog.d.ts +8 -8
  124. package/types/excalidraw/components/PenModeButton.d.ts +12 -12
  125. package/types/excalidraw/components/Popover.d.ts +15 -15
  126. package/types/excalidraw/components/ProjectName.d.ts +10 -10
  127. package/types/excalidraw/components/PropertiesPopover.d.ts +15 -15
  128. package/types/excalidraw/components/PublishLibrary.d.ts +16 -16
  129. package/types/excalidraw/components/QuickSearch.d.ts +9 -9
  130. package/types/excalidraw/components/RadioGroup.d.ts +13 -13
  131. package/types/excalidraw/components/SVGLayer.d.ts +7 -7
  132. package/types/excalidraw/components/ScrollableList.d.ts +8 -8
  133. package/types/excalidraw/components/SearchMenu.d.ts +5 -5
  134. package/types/excalidraw/components/Section.d.ts +6 -6
  135. package/types/excalidraw/components/ShareableLinkDialog.d.ts +7 -7
  136. package/types/excalidraw/components/Sidebar/Sidebar.d.ts +76 -76
  137. package/types/excalidraw/components/Sidebar/SidebarHeader.d.ts +7 -7
  138. package/types/excalidraw/components/Sidebar/SidebarTab.d.ts +8 -8
  139. package/types/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +9 -9
  140. package/types/excalidraw/components/Sidebar/SidebarTabTriggers.d.ts +6 -6
  141. package/types/excalidraw/components/Sidebar/SidebarTabs.d.ts +6 -6
  142. package/types/excalidraw/components/Sidebar/SidebarTrigger.d.ts +6 -6
  143. package/types/excalidraw/components/Sidebar/common.d.ts +33 -33
  144. package/types/excalidraw/components/Spinner.d.ts +8 -8
  145. package/types/excalidraw/components/Stack.d.ts +16 -16
  146. package/types/excalidraw/components/Stats/Angle.d.ts +11 -11
  147. package/types/excalidraw/components/Stats/CanvasGrid.d.ts +10 -10
  148. package/types/excalidraw/components/Stats/CanvasGridSize.d.ts +10 -10
  149. package/types/excalidraw/components/Stats/Collapsible.d.ts +8 -8
  150. package/types/excalidraw/components/Stats/Dimension.d.ts +11 -11
  151. package/types/excalidraw/components/Stats/DragInput.d.ts +34 -34
  152. package/types/excalidraw/components/Stats/FontSize.d.ts +11 -11
  153. package/types/excalidraw/components/Stats/MultiAngle.d.ts +11 -11
  154. package/types/excalidraw/components/Stats/MultiDimension.d.ts +14 -14
  155. package/types/excalidraw/components/Stats/MultiFontSize.d.ts +12 -12
  156. package/types/excalidraw/components/Stats/MultiPosition.d.ts +14 -14
  157. package/types/excalidraw/components/Stats/Position.d.ts +12 -12
  158. package/types/excalidraw/components/Stats/index.d.ts +35 -35
  159. package/types/excalidraw/components/Stats/utils.d.ts +26 -26
  160. package/types/excalidraw/components/Stats.d.ts +11 -0
  161. package/types/excalidraw/components/Switch.d.ts +9 -9
  162. package/types/excalidraw/components/TTDDialog/MermaidToExcalidraw.d.ts +14 -14
  163. package/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +29 -29
  164. package/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +9 -9
  165. package/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +7 -7
  166. package/types/excalidraw/components/TTDDialog/TTDDialogPanel.d.ts +17 -17
  167. package/types/excalidraw/components/TTDDialog/TTDDialogPanels.d.ts +4 -4
  168. package/types/excalidraw/components/TTDDialog/TTDDialogSubmitShortcut.d.ts +1 -1
  169. package/types/excalidraw/components/TTDDialog/TTDDialogTab.d.ts +7 -7
  170. package/types/excalidraw/components/TTDDialog/TTDDialogTabTrigger.d.ts +8 -8
  171. package/types/excalidraw/components/TTDDialog/TTDDialogTabTriggers.d.ts +6 -6
  172. package/types/excalidraw/components/TTDDialog/TTDDialogTabs.d.ts +11 -11
  173. package/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +8 -8
  174. package/types/excalidraw/components/TTDDialog/common.d.ts +32 -32
  175. package/types/excalidraw/components/TextField.d.ts +21 -21
  176. package/types/excalidraw/components/Toast.d.ts +9 -9
  177. package/types/excalidraw/components/ToolButton.d.ts +49 -49
  178. package/types/excalidraw/components/Tooltip.d.ts +18 -18
  179. package/types/excalidraw/components/Trans.d.ts +9 -9
  180. package/types/excalidraw/components/UserList.d.ts +18 -18
  181. package/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +29 -29
  182. package/types/excalidraw/components/canvases/NewElementCanvas.d.ts +14 -14
  183. package/types/excalidraw/components/canvases/StaticCanvas.d.ts +19 -19
  184. package/types/excalidraw/components/canvases/index.d.ts +3 -3
  185. package/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +86 -86
  186. package/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +15 -15
  187. package/types/excalidraw/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -11
  188. package/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +45 -45
  189. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +7 -7
  190. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +17 -17
  191. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemCustom.d.ts +7 -7
  192. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +15 -15
  193. package/types/excalidraw/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -5
  194. package/types/excalidraw/components/dropdownMenu/DropdownMenuTrigger.d.ts +10 -10
  195. package/types/excalidraw/components/dropdownMenu/common.d.ts +6 -6
  196. package/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +3 -3
  197. package/types/excalidraw/components/footer/Footer.d.ts +12 -12
  198. package/types/excalidraw/components/footer/FooterCenter.d.ts +8 -8
  199. package/types/excalidraw/components/hoc/withInternalFallback.d.ts +4 -4
  200. package/types/excalidraw/components/hyperlink/Hyperlink.d.ts +18 -18
  201. package/types/excalidraw/components/hyperlink/helpers.d.ts +8 -8
  202. package/types/excalidraw/components/icons.d.ts +212 -212
  203. package/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +9 -9
  204. package/types/excalidraw/components/main-menu/DefaultItems.d.ts +64 -64
  205. package/types/excalidraw/components/main-menu/MainMenu.d.ts +80 -80
  206. package/types/excalidraw/components/welcome-screen/WelcomeScreen.Center.d.ts +59 -59
  207. package/types/excalidraw/components/welcome-screen/WelcomeScreen.Hints.d.ts +19 -19
  208. package/types/excalidraw/components/welcome-screen/WelcomeScreen.d.ts +86 -86
  209. package/types/excalidraw/constants.d.ts +316 -316
  210. package/types/excalidraw/context/tunnels.d.ts +20 -20
  211. package/types/excalidraw/context/ui-appState.d.ts +4 -4
  212. package/types/excalidraw/cursor.d.ts +6 -6
  213. package/types/excalidraw/data/EditorLocalStorage.d.ts +8 -8
  214. package/types/excalidraw/data/ai/types.d.ts +242 -242
  215. package/types/excalidraw/data/blob.d.ts +49 -49
  216. package/types/excalidraw/data/encode.d.ts +54 -54
  217. package/types/excalidraw/data/encryption.d.ts +9 -9
  218. package/types/excalidraw/data/filesystem.d.ts +20 -20
  219. package/types/excalidraw/data/image.d.ts +15 -15
  220. package/types/excalidraw/data/index.d.ts +22 -22
  221. package/types/excalidraw/data/json.d.ts +16 -16
  222. package/types/excalidraw/data/library.d.ts +106 -106
  223. package/types/excalidraw/data/magic.d.ts +23 -0
  224. package/types/excalidraw/data/reconcile.d.ts +6 -6
  225. package/types/excalidraw/data/resave.d.ts +5 -5
  226. package/types/excalidraw/data/restore.d.ts +21 -21
  227. package/types/excalidraw/data/transform.d.ts +81 -81
  228. package/types/excalidraw/data/types.d.ts +45 -45
  229. package/types/excalidraw/data/url.d.ts +8 -8
  230. package/types/excalidraw/deburr.d.ts +1 -1
  231. package/types/excalidraw/dist/excalidraw.development.d.ts +2 -2
  232. package/types/excalidraw/dist/excalidraw.production.min.d.ts +1 -1
  233. package/types/excalidraw/distribute.d.ts +6 -6
  234. package/types/excalidraw/element/ElementCanvasButtons.d.ts +7 -7
  235. package/types/excalidraw/element/binding.d.ts +99 -99
  236. package/types/excalidraw/element/bounds.d.ts +76 -76
  237. package/types/excalidraw/element/collision.d.ts +17 -17
  238. package/types/excalidraw/element/containerCache.d.ts +11 -11
  239. package/types/excalidraw/element/dragElements.d.ts +32 -32
  240. package/types/excalidraw/element/embeddable.d.ts +221 -221
  241. package/types/excalidraw/element/flowchart.d.ts +25 -25
  242. package/types/excalidraw/element/heading.d.ts +12 -12
  243. package/types/excalidraw/element/image.d.ts +32 -32
  244. package/types/excalidraw/element/index.d.ts +26 -26
  245. package/types/excalidraw/element/linearElementEditor.d.ts +128 -128
  246. package/types/excalidraw/element/mutateElement.d.ts +11 -11
  247. package/types/excalidraw/element/newElement.d.ts +105 -105
  248. package/types/excalidraw/element/resizeElements.d.ts +16 -16
  249. package/types/excalidraw/element/resizeTest.d.ts +15 -15
  250. package/types/excalidraw/element/routing.d.ts +12 -12
  251. package/types/excalidraw/element/showSelectedShapeActions.d.ts +3 -3
  252. package/types/excalidraw/element/sizeHelpers.d.ts +35 -35
  253. package/types/excalidraw/element/sortElements.d.ts +2 -2
  254. package/types/excalidraw/element/textElement.d.ts +70 -70
  255. package/types/excalidraw/element/textWysiwyg.d.ts +22 -22
  256. package/types/excalidraw/element/transformHandles.d.ts +55 -55
  257. package/types/excalidraw/element/typeChecks.d.ts +39 -39
  258. package/types/excalidraw/element/types.d.ts +253 -253
  259. package/types/excalidraw/emitter.d.ts +16 -16
  260. package/types/excalidraw/entry.d.ts +1 -1
  261. package/types/excalidraw/env.d.cts +1 -1
  262. package/types/excalidraw/env.d.ts +1 -1
  263. package/types/excalidraw/errors.d.ts +16 -16
  264. package/types/excalidraw/fonts/ExcalidrawFont.d.ts +37 -37
  265. package/types/excalidraw/fonts/index.d.ts +83 -83
  266. package/types/excalidraw/fonts/metadata.d.ts +35 -35
  267. package/types/excalidraw/fonts/wasm/hb-subset.bindings.d.ts +45 -45
  268. package/types/excalidraw/fonts/wasm/hb-subset.loader.d.ts +5 -5
  269. package/types/excalidraw/fonts/wasm/hb-subset.wasm.d.ts +2 -2
  270. package/types/excalidraw/fonts/wasm/woff2.bindings.d.ts +31 -31
  271. package/types/excalidraw/fonts/wasm/woff2.loader.d.ts +6 -6
  272. package/types/excalidraw/fonts/wasm/woff2.wasm.d.ts +2 -2
  273. package/types/excalidraw/fractionalIndex.d.ts +48 -48
  274. package/types/excalidraw/frame.d.ts +63 -63
  275. package/types/excalidraw/ga.d.ts +63 -63
  276. package/types/excalidraw/gadirections.d.ts +8 -8
  277. package/types/excalidraw/galines.d.ts +22 -22
  278. package/types/excalidraw/gapoints.d.ts +7 -7
  279. package/types/excalidraw/gatransforms.d.ts +10 -10
  280. package/types/excalidraw/gesture.d.ts +6 -6
  281. package/types/excalidraw/groups.d.ts +33 -33
  282. package/types/excalidraw/history.d.ts +40 -40
  283. package/types/excalidraw/hooks/useCallbackRefState.d.ts +1 -1
  284. package/types/excalidraw/hooks/useCopiedIndicator.d.ts +5 -5
  285. package/types/excalidraw/hooks/useCreatePortalContainer.d.ts +7 -7
  286. package/types/excalidraw/hooks/useEmitter.d.ts +2 -2
  287. package/types/excalidraw/hooks/useLibraryItemSvg.d.ts +11 -11
  288. package/types/excalidraw/hooks/useOutsideClick.d.ts +19 -19
  289. package/types/excalidraw/hooks/useScrollPosition.d.ts +1 -1
  290. package/types/excalidraw/hooks/useStable.d.ts +1 -1
  291. package/types/excalidraw/hooks/useStableCallback.d.ts +4 -4
  292. package/types/excalidraw/hooks/useTransition.d.ts +2 -2
  293. package/types/excalidraw/i18n.d.ts +24 -24
  294. package/types/excalidraw/index-node.d.ts +1 -1
  295. package/types/excalidraw/index.d.ts +61 -61
  296. package/types/excalidraw/jotai.d.ts +34 -34
  297. package/types/excalidraw/keys.d.ts +82 -82
  298. package/types/excalidraw/laser-trails.d.ts +20 -20
  299. package/types/excalidraw/main.d.ts +2 -2
  300. package/types/excalidraw/math.d.ts +79 -79
  301. package/types/excalidraw/mermaid.d.ts +2 -2
  302. package/types/excalidraw/obsidianUtils.d.ts +18 -17
  303. package/types/excalidraw/points.d.ts +7 -7
  304. package/types/excalidraw/polyfill.d.ts +2 -2
  305. package/types/excalidraw/publicPath.d.ts +1 -1
  306. package/types/excalidraw/queue.d.ts +9 -9
  307. package/types/excalidraw/random.d.ts +4 -4
  308. package/types/excalidraw/reactUtils.d.ts +14 -14
  309. package/types/excalidraw/renderer/easingFunctions.d.ts +6 -6
  310. package/types/excalidraw/renderer/helpers.d.ts +13 -13
  311. package/types/excalidraw/renderer/interactiveScene.d.ts +20 -20
  312. package/types/excalidraw/renderer/renderElement.d.ts +27 -27
  313. package/types/excalidraw/renderer/renderNewElementScene.d.ts +7 -7
  314. package/types/excalidraw/renderer/renderSnaps.d.ts +2 -2
  315. package/types/excalidraw/renderer/roundRect.d.ts +11 -11
  316. package/types/excalidraw/renderer/staticScene.d.ts +11 -11
  317. package/types/excalidraw/renderer/staticSvgScene.d.ts +5 -5
  318. package/types/excalidraw/scene/Fonts.d.ts +19 -0
  319. package/types/excalidraw/scene/Renderer.d.ts +28 -28
  320. package/types/excalidraw/scene/Scene.d.ts +78 -78
  321. package/types/excalidraw/scene/Shape.d.ts +17 -17
  322. package/types/excalidraw/scene/ShapeCache.d.ts +25 -25
  323. package/types/excalidraw/scene/comparisons.d.ts +487 -487
  324. package/types/excalidraw/scene/export.d.ts +29 -29
  325. package/types/excalidraw/scene/index.d.ts +4 -4
  326. package/types/excalidraw/scene/normalize.d.ts +4 -4
  327. package/types/excalidraw/scene/scroll.d.ts +23 -23
  328. package/types/excalidraw/scene/scrollbars.d.ts +12 -12
  329. package/types/excalidraw/scene/selection.d.ts +32 -32
  330. package/types/excalidraw/scene/types.d.ts +112 -112
  331. package/types/excalidraw/scene/zoom.d.ts +12 -12
  332. package/types/excalidraw/shapes.d.ts +85 -85
  333. package/types/excalidraw/snapping.d.ts +112 -112
  334. package/types/excalidraw/store.d.ts +129 -129
  335. package/types/excalidraw/types.d.ts +719 -719
  336. package/types/excalidraw/utility-types.d.ts +31 -31
  337. package/types/excalidraw/utils.d.ts +242 -242
  338. package/types/excalidraw/visualdebug.d.ts +35 -35
  339. package/types/excalidraw/webpack.dev.config.d.ts +81 -81
  340. package/types/excalidraw/webpack.prod.config.d.ts +97 -97
  341. package/types/excalidraw/zindex.d.ts +6 -6
  342. package/types/math/angle.d.ts +17 -17
  343. package/types/math/arc.d.ts +6 -6
  344. package/types/math/curve.d.ts +32 -32
  345. package/types/math/ga/ga.d.ts +63 -63
  346. package/types/math/ga/gadirections.d.ts +8 -8
  347. package/types/math/ga/galines.d.ts +22 -22
  348. package/types/math/ga/gapoints.d.ts +7 -7
  349. package/types/math/ga/gatransforms.d.ts +10 -10
  350. package/types/math/index.d.ts +12 -12
  351. package/types/math/line.d.ts +26 -26
  352. package/types/math/point.d.ts +140 -140
  353. package/types/math/polygon.d.ts +5 -5
  354. package/types/math/range.d.ts +44 -44
  355. package/types/math/segment.d.ts +32 -32
  356. package/types/math/triangle.d.ts +11 -11
  357. package/types/math/types.d.ts +96 -96
  358. package/types/math/utils.d.ts +6 -6
  359. package/types/math/vector.d.ts +88 -88
  360. package/types/utils/bbox.d.ts +9 -9
  361. package/types/utils/collision.d.ts +9 -9
  362. package/types/utils/export.d.ts +44 -44
  363. package/types/utils/geometry/geometry.d.ts +89 -89
  364. package/types/utils/geometry/shape.d.ts +71 -71
  365. package/types/utils/index.d.ts +4 -4
  366. package/types/utils/withinBounds.d.ts +19 -19
  367. package/types/excalidraw/components/SearchSidebar.d.ts +0 -1
@@ -1,22 +1,22 @@
1
- /**
2
- * A line is stored as an array `[0, c, a, b, 0, 0, 0, 0]` representing:
3
- * c * e0 + a * e1 + b*e2
4
- *
5
- * This maps to a standard formula `a * x + b * y + c`.
6
- *
7
- * `(-b, a)` corresponds to a 2D vector parallel to the line. The lines
8
- * have a natural orientation, corresponding to that vector.
9
- *
10
- * The magnitude ("norm") of the line is `sqrt(a ^ 2 + b ^ 2)`.
11
- * `c / norm(line)` is the oriented distance from line to origin.
12
- */
13
- export declare const vector: (x: number, y: number) => readonly [number, number, number, number, number, number, number, number];
14
- export declare const equation: (a: number, b: number, c: number) => readonly [number, number, number, number, number, number, number, number];
15
- export declare const through: (from: readonly [number, number, number, number, number, number, number, number], to: readonly [number, number, number, number, number, number, number, number]) => readonly [number, number, number, number, number, number, number, number];
16
- export declare const orthogonal: (line: readonly [number, number, number, number, number, number, number, number], point: readonly [number, number, number, number, number, number, number, number]) => readonly [number, number, number, number, number, number, number, number];
17
- export declare const orthogonalThrough: (against: readonly [number, number, number, number, number, number, number, number], intersection: readonly [number, number, number, number, number, number, number, number]) => readonly [number, number, number, number, number, number, number, number];
18
- export declare const parallel: (line: readonly [number, number, number, number, number, number, number, number], distance: number) => readonly [number, number, number, number, number, number, number, number];
19
- export declare const parallelThrough: (line: readonly [number, number, number, number, number, number, number, number], point: readonly [number, number, number, number, number, number, number, number]) => readonly [number, number, number, number, number, number, number, number];
20
- export declare const distance: (line1: readonly [number, number, number, number, number, number, number, number], line2: readonly [number, number, number, number, number, number, number, number]) => number;
21
- export declare const angle: (line1: readonly [number, number, number, number, number, number, number, number], line2: readonly [number, number, number, number, number, number, number, number]) => number;
22
- export declare const sign: (line: readonly [number, number, number, number, number, number, number, number]) => number;
1
+ /**
2
+ * A line is stored as an array `[0, c, a, b, 0, 0, 0, 0]` representing:
3
+ * c * e0 + a * e1 + b*e2
4
+ *
5
+ * This maps to a standard formula `a * x + b * y + c`.
6
+ *
7
+ * `(-b, a)` corresponds to a 2D vector parallel to the line. The lines
8
+ * have a natural orientation, corresponding to that vector.
9
+ *
10
+ * The magnitude ("norm") of the line is `sqrt(a ^ 2 + b ^ 2)`.
11
+ * `c / norm(line)` is the oriented distance from line to origin.
12
+ */
13
+ export declare const vector: (x: number, y: number) => readonly [number, number, number, number, number, number, number, number];
14
+ export declare const equation: (a: number, b: number, c: number) => readonly [number, number, number, number, number, number, number, number];
15
+ export declare const through: (from: readonly [number, number, number, number, number, number, number, number], to: readonly [number, number, number, number, number, number, number, number]) => readonly [number, number, number, number, number, number, number, number];
16
+ export declare const orthogonal: (line: readonly [number, number, number, number, number, number, number, number], point: readonly [number, number, number, number, number, number, number, number]) => readonly [number, number, number, number, number, number, number, number];
17
+ export declare const orthogonalThrough: (against: readonly [number, number, number, number, number, number, number, number], intersection: readonly [number, number, number, number, number, number, number, number]) => readonly [number, number, number, number, number, number, number, number];
18
+ export declare const parallel: (line: readonly [number, number, number, number, number, number, number, number], distance: number) => readonly [number, number, number, number, number, number, number, number];
19
+ export declare const parallelThrough: (line: readonly [number, number, number, number, number, number, number, number], point: readonly [number, number, number, number, number, number, number, number]) => readonly [number, number, number, number, number, number, number, number];
20
+ export declare const distance: (line1: readonly [number, number, number, number, number, number, number, number], line2: readonly [number, number, number, number, number, number, number, number]) => number;
21
+ export declare const angle: (line1: readonly [number, number, number, number, number, number, number, number], line2: readonly [number, number, number, number, number, number, number, number]) => number;
22
+ export declare const sign: (line: readonly [number, number, number, number, number, number, number, number]) => number;
@@ -1,7 +1,7 @@
1
- export declare const from: ([x, y]: readonly [number, number]) => readonly [number, number, number, number, number, number, number, number];
2
- export declare const toTuple: (point: readonly [number, number, number, number, number, number, number, number]) => [number, number];
3
- export declare const abs: (point: readonly [number, number, number, number, number, number, number, number]) => readonly [number, number, number, number, number, number, number, number];
4
- export declare const intersect: (line1: readonly [number, number, number, number, number, number, number, number], line2: readonly [number, number, number, number, number, number, number, number]) => readonly [number, number, number, number, number, number, number, number];
5
- export declare const project: (point: readonly [number, number, number, number, number, number, number, number], line: readonly [number, number, number, number, number, number, number, number]) => readonly [number, number, number, number, number, number, number, number];
6
- export declare const distance: (point1: readonly [number, number, number, number, number, number, number, number], point2: readonly [number, number, number, number, number, number, number, number]) => number;
7
- export declare const distanceToLine: (point: readonly [number, number, number, number, number, number, number, number], line: readonly [number, number, number, number, number, number, number, number]) => number;
1
+ export declare const from: ([x, y]: readonly [number, number]) => readonly [number, number, number, number, number, number, number, number];
2
+ export declare const toTuple: (point: readonly [number, number, number, number, number, number, number, number]) => [number, number];
3
+ export declare const abs: (point: readonly [number, number, number, number, number, number, number, number]) => readonly [number, number, number, number, number, number, number, number];
4
+ export declare const intersect: (line1: readonly [number, number, number, number, number, number, number, number], line2: readonly [number, number, number, number, number, number, number, number]) => readonly [number, number, number, number, number, number, number, number];
5
+ export declare const project: (point: readonly [number, number, number, number, number, number, number, number], line: readonly [number, number, number, number, number, number, number, number]) => readonly [number, number, number, number, number, number, number, number];
6
+ export declare const distance: (point1: readonly [number, number, number, number, number, number, number, number], point2: readonly [number, number, number, number, number, number, number, number]) => number;
7
+ export declare const distanceToLine: (point: readonly [number, number, number, number, number, number, number, number], line: readonly [number, number, number, number, number, number, number, number]) => number;
@@ -1,10 +1,10 @@
1
- import type { Line, Direction, Point } from "./ga";
2
- /**
3
- * TODO: docs
4
- */
5
- export declare const rotation: (pivot: readonly [number, number, number, number, number, number, number, number], angle: number) => readonly [number, number, number, number, number, number, number, number];
6
- export declare const translation: (direction: readonly [number, number, number, number, number, number, number, number]) => readonly [number, number, number, number, number, number, number, number];
7
- export declare const translationOrthogonal: (direction: readonly [number, number, number, number, number, number, number, number], distance: number) => readonly [number, number, number, number, number, number, number, number];
8
- export declare const translationAlong: (line: readonly [number, number, number, number, number, number, number, number], distance: number) => readonly [number, number, number, number, number, number, number, number];
9
- export declare const compose: (motor1: readonly [number, number, number, number, number, number, number, number], motor2: readonly [number, number, number, number, number, number, number, number]) => readonly [number, number, number, number, number, number, number, number];
10
- export declare const apply: (motor: readonly [number, number, number, number, number, number, number, number], nvector: Point | Direction | Line) => Point | Direction | Line;
1
+ import type { Line, Direction, Point } from "./ga";
2
+ /**
3
+ * TODO: docs
4
+ */
5
+ export declare const rotation: (pivot: readonly [number, number, number, number, number, number, number, number], angle: number) => readonly [number, number, number, number, number, number, number, number];
6
+ export declare const translation: (direction: readonly [number, number, number, number, number, number, number, number]) => readonly [number, number, number, number, number, number, number, number];
7
+ export declare const translationOrthogonal: (direction: readonly [number, number, number, number, number, number, number, number], distance: number) => readonly [number, number, number, number, number, number, number, number];
8
+ export declare const translationAlong: (line: readonly [number, number, number, number, number, number, number, number], distance: number) => readonly [number, number, number, number, number, number, number, number];
9
+ export declare const compose: (motor1: readonly [number, number, number, number, number, number, number, number], motor2: readonly [number, number, number, number, number, number, number, number]) => readonly [number, number, number, number, number, number, number, number];
10
+ export declare const apply: (motor: readonly [number, number, number, number, number, number, number, number], nvector: Point | Direction | Line) => Point | Direction | Line;
@@ -1,12 +1,12 @@
1
- export * from "./arc";
2
- export * from "./angle";
3
- export * from "./curve";
4
- export * from "./line";
5
- export * from "./point";
6
- export * from "./polygon";
7
- export * from "./range";
8
- export * from "./segment";
9
- export * from "./triangle";
10
- export * from "./types";
11
- export * from "./vector";
12
- export * from "./utils";
1
+ export * from "./arc";
2
+ export * from "./angle";
3
+ export * from "./curve";
4
+ export * from "./line";
5
+ export * from "./point";
6
+ export * from "./polygon";
7
+ export * from "./range";
8
+ export * from "./segment";
9
+ export * from "./triangle";
10
+ export * from "./types";
11
+ export * from "./vector";
12
+ export * from "./utils";
@@ -1,26 +1,26 @@
1
- import type { GlobalPoint, Line, LocalPoint, Radians } from "./types";
2
- /**
3
- * Create a line from two points.
4
- *
5
- * @param points The two points lying on the line
6
- * @returns The line on which the points lie
7
- */
8
- export declare function line<P extends GlobalPoint | LocalPoint>(a: P, b: P): Line<P>;
9
- /**
10
- * Convenient point creation from an array of two points.
11
- *
12
- * @param param0 The array with the two points to convert to a line
13
- * @returns The created line
14
- */
15
- export declare function lineFromPointPair<P extends GlobalPoint | LocalPoint>([a, b]: [
16
- P,
17
- P
18
- ]): Line<P>;
19
- /**
20
- * TODO
21
- *
22
- * @param pointArray
23
- * @returns
24
- */
25
- export declare function lineFromPointArray<P extends GlobalPoint | LocalPoint>(pointArray: P[]): Line<P> | undefined;
26
- export declare const lineRotate: <Point extends GlobalPoint | LocalPoint>(l: Line<Point>, angle: Radians, origin?: Point | undefined) => Line<Point>;
1
+ import type { GlobalPoint, Line, LocalPoint, Radians } from "./types";
2
+ /**
3
+ * Create a line from two points.
4
+ *
5
+ * @param points The two points lying on the line
6
+ * @returns The line on which the points lie
7
+ */
8
+ export declare function line<P extends GlobalPoint | LocalPoint>(a: P, b: P): Line<P>;
9
+ /**
10
+ * Convenient point creation from an array of two points.
11
+ *
12
+ * @param param0 The array with the two points to convert to a line
13
+ * @returns The created line
14
+ */
15
+ export declare function lineFromPointPair<P extends GlobalPoint | LocalPoint>([a, b]: [
16
+ P,
17
+ P
18
+ ]): Line<P>;
19
+ /**
20
+ * TODO
21
+ *
22
+ * @param pointArray
23
+ * @returns
24
+ */
25
+ export declare function lineFromPointArray<P extends GlobalPoint | LocalPoint>(pointArray: P[]): Line<P> | undefined;
26
+ export declare const lineRotate: <Point extends GlobalPoint | LocalPoint>(l: Line<Point>, angle: Radians, origin?: Point | undefined) => Line<Point>;
@@ -1,140 +1,140 @@
1
- import type { LocalPoint, GlobalPoint, Radians, Degrees, Vector } from "./types";
2
- /**
3
- * Create a properly typed Point instance from the X and Y coordinates.
4
- *
5
- * @param x The X coordinate
6
- * @param y The Y coordinate
7
- * @returns The branded and created point
8
- */
9
- export declare function point<Point extends GlobalPoint | LocalPoint>(x: number, y: number): Point;
10
- /**
11
- * Converts and remaps an array containing a pair of numbers to Point.
12
- *
13
- * @param numberArray The number array to check and to convert to Point
14
- * @returns The point instance
15
- */
16
- export declare function pointFromArray<Point extends GlobalPoint | LocalPoint>(numberArray: number[]): Point | undefined;
17
- /**
18
- * Converts and remaps a pair of numbers to Point.
19
- *
20
- * @param pair A number pair to convert to Point
21
- * @returns The point instance
22
- */
23
- export declare function pointFromPair<Point extends GlobalPoint | LocalPoint>(pair: [number, number]): Point;
24
- /**
25
- * Convert a vector to a point.
26
- *
27
- * @param v The vector to convert
28
- * @returns The point the vector points at with origin 0,0
29
- */
30
- export declare function pointFromVector<P extends GlobalPoint | LocalPoint>(v: Vector): P;
31
- /**
32
- * Checks if the provided value has the shape of a Point.
33
- *
34
- * @param p The value to attempt verification on
35
- * @returns TRUE if the provided value has the shape of a local or global point
36
- */
37
- export declare function isPoint(p: unknown): p is LocalPoint | GlobalPoint;
38
- /**
39
- * Compare two points coordinate-by-coordinate and if
40
- * they are closer than INVERSE_PRECISION it returns TRUE.
41
- *
42
- * @param a Point The first point to compare
43
- * @param b Point The second point to compare
44
- * @returns TRUE if the points are sufficiently close to each other
45
- */
46
- export declare function pointsEqual<Point extends GlobalPoint | LocalPoint>(a: Point, b: Point): boolean;
47
- /**
48
- * Roate a point by [angle] radians.
49
- *
50
- * @param point The point to rotate
51
- * @param center The point to rotate around, the center point
52
- * @param angle The radians to rotate the point by
53
- * @returns The rotated point
54
- */
55
- export declare function pointRotateRads<Point extends GlobalPoint | LocalPoint>([x, y]: Point, [cx, cy]: Point, angle: Radians): Point;
56
- /**
57
- * Roate a point by [angle] degree.
58
- *
59
- * @param point The point to rotate
60
- * @param center The point to rotate around, the center point
61
- * @param angle The degree to rotate the point by
62
- * @returns The rotated point
63
- */
64
- export declare function pointRotateDegs<Point extends GlobalPoint | LocalPoint>(point: Point, center: Point, angle: Degrees): Point;
65
- /**
66
- * Translate a point by a vector.
67
- *
68
- * WARNING: This is not for translating Excalidraw element points!
69
- * You need to account for rotation on base coordinates
70
- * on your own.
71
- * CONSIDER USING AN APPROPRIATE ELEMENT-AWARE TRANSLATE!
72
- *
73
- * @param p The point to apply the translation on
74
- * @param v The vector to translate by
75
- * @returns
76
- */
77
- export declare function pointTranslate<From extends GlobalPoint | LocalPoint, To extends GlobalPoint | LocalPoint>(p: From, v?: Vector): To;
78
- /**
79
- * Find the center point at equal distance from both points.
80
- *
81
- * @param a One of the points to create the middle point for
82
- * @param b The other point to create the middle point for
83
- * @returns The middle point
84
- */
85
- export declare function pointCenter<P extends LocalPoint | GlobalPoint>(a: P, b: P): P;
86
- /**
87
- * Add together two points by their coordinates like you'd apply a translation
88
- * to a point by a vector.
89
- *
90
- * @param a One point to act as a basis
91
- * @param b The other point to act like the vector to translate by
92
- * @returns
93
- */
94
- export declare function pointAdd<Point extends LocalPoint | GlobalPoint>(a: Point, b: Point): Point;
95
- /**
96
- * Subtract a point from another point like you'd translate a point by an
97
- * invese vector.
98
- *
99
- * @param a The point to translate
100
- * @param b The point which will act like a vector
101
- * @returns The resulting point
102
- */
103
- export declare function pointSubtract<Point extends LocalPoint | GlobalPoint>(a: Point, b: Point): Point;
104
- /**
105
- * Calculate the distance between two points.
106
- *
107
- * @param a First point
108
- * @param b Second point
109
- * @returns The euclidean distance between the two points.
110
- */
111
- export declare function pointDistance<P extends LocalPoint | GlobalPoint>(a: P, b: P): number;
112
- /**
113
- * Calculate the squared distance between two points.
114
- *
115
- * Note: Use this if you only compare distances, it saves a square root.
116
- *
117
- * @param a First point
118
- * @param b Second point
119
- * @returns The euclidean distance between the two points.
120
- */
121
- export declare function pointDistanceSq<P extends LocalPoint | GlobalPoint>(a: P, b: P): number;
122
- /**
123
- * Scale a point from a given origin by the multiplier.
124
- *
125
- * @param p The point to scale
126
- * @param mid The origin to scale from
127
- * @param multiplier The scaling factor
128
- * @returns
129
- */
130
- export declare const pointScaleFromOrigin: <P extends GlobalPoint | LocalPoint>(p: P, mid: P, multiplier: number) => GlobalPoint | LocalPoint;
131
- /**
132
- * Returns whether `q` lies inside the segment/rectangle defined by `p` and `r`.
133
- * This is an approximation to "does `q` lie on a segment `pr`" check.
134
- *
135
- * @param p The first point to compare against
136
- * @param q The actual point this function checks whether is in between
137
- * @param r The other point to compare against
138
- * @returns TRUE if q is indeed between p and r
139
- */
140
- export declare const isPointWithinBounds: <P extends GlobalPoint | LocalPoint>(p: P, q: P, r: P) => boolean;
1
+ import type { LocalPoint, GlobalPoint, Radians, Degrees, Vector } from "./types";
2
+ /**
3
+ * Create a properly typed Point instance from the X and Y coordinates.
4
+ *
5
+ * @param x The X coordinate
6
+ * @param y The Y coordinate
7
+ * @returns The branded and created point
8
+ */
9
+ export declare function point<Point extends GlobalPoint | LocalPoint>(x: number, y: number): Point;
10
+ /**
11
+ * Converts and remaps an array containing a pair of numbers to Point.
12
+ *
13
+ * @param numberArray The number array to check and to convert to Point
14
+ * @returns The point instance
15
+ */
16
+ export declare function pointFromArray<Point extends GlobalPoint | LocalPoint>(numberArray: number[]): Point | undefined;
17
+ /**
18
+ * Converts and remaps a pair of numbers to Point.
19
+ *
20
+ * @param pair A number pair to convert to Point
21
+ * @returns The point instance
22
+ */
23
+ export declare function pointFromPair<Point extends GlobalPoint | LocalPoint>(pair: [number, number]): Point;
24
+ /**
25
+ * Convert a vector to a point.
26
+ *
27
+ * @param v The vector to convert
28
+ * @returns The point the vector points at with origin 0,0
29
+ */
30
+ export declare function pointFromVector<P extends GlobalPoint | LocalPoint>(v: Vector): P;
31
+ /**
32
+ * Checks if the provided value has the shape of a Point.
33
+ *
34
+ * @param p The value to attempt verification on
35
+ * @returns TRUE if the provided value has the shape of a local or global point
36
+ */
37
+ export declare function isPoint(p: unknown): p is LocalPoint | GlobalPoint;
38
+ /**
39
+ * Compare two points coordinate-by-coordinate and if
40
+ * they are closer than INVERSE_PRECISION it returns TRUE.
41
+ *
42
+ * @param a Point The first point to compare
43
+ * @param b Point The second point to compare
44
+ * @returns TRUE if the points are sufficiently close to each other
45
+ */
46
+ export declare function pointsEqual<Point extends GlobalPoint | LocalPoint>(a: Point, b: Point): boolean;
47
+ /**
48
+ * Roate a point by [angle] radians.
49
+ *
50
+ * @param point The point to rotate
51
+ * @param center The point to rotate around, the center point
52
+ * @param angle The radians to rotate the point by
53
+ * @returns The rotated point
54
+ */
55
+ export declare function pointRotateRads<Point extends GlobalPoint | LocalPoint>([x, y]: Point, [cx, cy]: Point, angle: Radians): Point;
56
+ /**
57
+ * Roate a point by [angle] degree.
58
+ *
59
+ * @param point The point to rotate
60
+ * @param center The point to rotate around, the center point
61
+ * @param angle The degree to rotate the point by
62
+ * @returns The rotated point
63
+ */
64
+ export declare function pointRotateDegs<Point extends GlobalPoint | LocalPoint>(point: Point, center: Point, angle: Degrees): Point;
65
+ /**
66
+ * Translate a point by a vector.
67
+ *
68
+ * WARNING: This is not for translating Excalidraw element points!
69
+ * You need to account for rotation on base coordinates
70
+ * on your own.
71
+ * CONSIDER USING AN APPROPRIATE ELEMENT-AWARE TRANSLATE!
72
+ *
73
+ * @param p The point to apply the translation on
74
+ * @param v The vector to translate by
75
+ * @returns
76
+ */
77
+ export declare function pointTranslate<From extends GlobalPoint | LocalPoint, To extends GlobalPoint | LocalPoint>(p: From, v?: Vector): To;
78
+ /**
79
+ * Find the center point at equal distance from both points.
80
+ *
81
+ * @param a One of the points to create the middle point for
82
+ * @param b The other point to create the middle point for
83
+ * @returns The middle point
84
+ */
85
+ export declare function pointCenter<P extends LocalPoint | GlobalPoint>(a: P, b: P): P;
86
+ /**
87
+ * Add together two points by their coordinates like you'd apply a translation
88
+ * to a point by a vector.
89
+ *
90
+ * @param a One point to act as a basis
91
+ * @param b The other point to act like the vector to translate by
92
+ * @returns
93
+ */
94
+ export declare function pointAdd<Point extends LocalPoint | GlobalPoint>(a: Point, b: Point): Point;
95
+ /**
96
+ * Subtract a point from another point like you'd translate a point by an
97
+ * invese vector.
98
+ *
99
+ * @param a The point to translate
100
+ * @param b The point which will act like a vector
101
+ * @returns The resulting point
102
+ */
103
+ export declare function pointSubtract<Point extends LocalPoint | GlobalPoint>(a: Point, b: Point): Point;
104
+ /**
105
+ * Calculate the distance between two points.
106
+ *
107
+ * @param a First point
108
+ * @param b Second point
109
+ * @returns The euclidean distance between the two points.
110
+ */
111
+ export declare function pointDistance<P extends LocalPoint | GlobalPoint>(a: P, b: P): number;
112
+ /**
113
+ * Calculate the squared distance between two points.
114
+ *
115
+ * Note: Use this if you only compare distances, it saves a square root.
116
+ *
117
+ * @param a First point
118
+ * @param b Second point
119
+ * @returns The euclidean distance between the two points.
120
+ */
121
+ export declare function pointDistanceSq<P extends LocalPoint | GlobalPoint>(a: P, b: P): number;
122
+ /**
123
+ * Scale a point from a given origin by the multiplier.
124
+ *
125
+ * @param p The point to scale
126
+ * @param mid The origin to scale from
127
+ * @param multiplier The scaling factor
128
+ * @returns
129
+ */
130
+ export declare const pointScaleFromOrigin: <P extends GlobalPoint | LocalPoint>(p: P, mid: P, multiplier: number) => GlobalPoint | LocalPoint;
131
+ /**
132
+ * Returns whether `q` lies inside the segment/rectangle defined by `p` and `r`.
133
+ * This is an approximation to "does `q` lie on a segment `pr`" check.
134
+ *
135
+ * @param p The first point to compare against
136
+ * @param q The actual point this function checks whether is in between
137
+ * @param r The other point to compare against
138
+ * @returns TRUE if q is indeed between p and r
139
+ */
140
+ export declare const isPointWithinBounds: <P extends GlobalPoint | LocalPoint>(p: P, q: P, r: P) => boolean;
@@ -1,5 +1,5 @@
1
- import type { GlobalPoint, LocalPoint, Polygon } from "./types";
2
- export declare function polygon<Point extends GlobalPoint | LocalPoint>(...points: Point[]): Polygon<Point>;
3
- export declare function polygonFromPoints<Point extends GlobalPoint | LocalPoint>(points: Point[]): Polygon<Point>;
4
- export declare const polygonIncludesPoint: <Point extends GlobalPoint | LocalPoint>(point: Point, polygon: Polygon<Point>) => boolean;
5
- export declare const pointOnPolygon: <Point extends GlobalPoint | LocalPoint>(p: Point, poly: Polygon<Point>, threshold?: number) => boolean;
1
+ import type { GlobalPoint, LocalPoint, Polygon } from "./types";
2
+ export declare function polygon<Point extends GlobalPoint | LocalPoint>(...points: Point[]): Polygon<Point>;
3
+ export declare function polygonFromPoints<Point extends GlobalPoint | LocalPoint>(points: Point[]): Polygon<Point>;
4
+ export declare const polygonIncludesPoint: <Point extends GlobalPoint | LocalPoint>(point: Point, polygon: Polygon<Point>) => boolean;
5
+ export declare const pointOnPolygon: <Point extends GlobalPoint | LocalPoint>(p: Point, poly: Polygon<Point>, threshold?: number) => boolean;
@@ -1,44 +1,44 @@
1
- import type { InclusiveRange } from "./types";
2
- /**
3
- * Create an inclusive range from the two numbers provided.
4
- *
5
- * @param start Start of the range
6
- * @param end End of the range
7
- * @returns
8
- */
9
- export declare function rangeInclusive(start: number, end: number): InclusiveRange;
10
- /**
11
- * Turn a number pair into an inclusive range.
12
- *
13
- * @param pair The number pair to convert to an inclusive range
14
- * @returns The new inclusive range
15
- */
16
- export declare function rangeInclusiveFromPair(pair: [start: number, end: number]): [number, number] & {
17
- _brand: "excalimath_degree";
18
- };
19
- /**
20
- * Given two ranges, return if the two ranges overlap with each other e.g.
21
- * [1, 3] overlaps with [2, 4] while [1, 3] does not overlap with [4, 5].
22
- *
23
- * @param param0 One of the ranges to compare
24
- * @param param1 The other range to compare against
25
- * @returns TRUE if the ranges overlap
26
- */
27
- export declare const rangesOverlap: ([a0, a1]: InclusiveRange, [b0, b1]: InclusiveRange) => boolean;
28
- /**
29
- * Given two ranges,return ther intersection of the two ranges if any e.g. the
30
- * intersection of [1, 3] and [2, 4] is [2, 3].
31
- *
32
- * @param param0 The first range to compare
33
- * @param param1 The second range to compare
34
- * @returns The inclusive range intersection or NULL if no intersection
35
- */
36
- export declare const rangeIntersection: ([a0, a1]: InclusiveRange, [b0, b1]: InclusiveRange) => InclusiveRange | null;
37
- /**
38
- * Determine if a value is inside a range.
39
- *
40
- * @param value The value to check
41
- * @param range The range
42
- * @returns
43
- */
44
- export declare const rangeIncludesValue: (value: number, [min, max]: InclusiveRange) => boolean;
1
+ import type { InclusiveRange } from "./types";
2
+ /**
3
+ * Create an inclusive range from the two numbers provided.
4
+ *
5
+ * @param start Start of the range
6
+ * @param end End of the range
7
+ * @returns
8
+ */
9
+ export declare function rangeInclusive(start: number, end: number): InclusiveRange;
10
+ /**
11
+ * Turn a number pair into an inclusive range.
12
+ *
13
+ * @param pair The number pair to convert to an inclusive range
14
+ * @returns The new inclusive range
15
+ */
16
+ export declare function rangeInclusiveFromPair(pair: [start: number, end: number]): [number, number] & {
17
+ _brand: "excalimath_degree";
18
+ };
19
+ /**
20
+ * Given two ranges, return if the two ranges overlap with each other e.g.
21
+ * [1, 3] overlaps with [2, 4] while [1, 3] does not overlap with [4, 5].
22
+ *
23
+ * @param param0 One of the ranges to compare
24
+ * @param param1 The other range to compare against
25
+ * @returns TRUE if the ranges overlap
26
+ */
27
+ export declare const rangesOverlap: ([a0, a1]: InclusiveRange, [b0, b1]: InclusiveRange) => boolean;
28
+ /**
29
+ * Given two ranges,return ther intersection of the two ranges if any e.g. the
30
+ * intersection of [1, 3] and [2, 4] is [2, 3].
31
+ *
32
+ * @param param0 The first range to compare
33
+ * @param param1 The second range to compare
34
+ * @returns The inclusive range intersection or NULL if no intersection
35
+ */
36
+ export declare const rangeIntersection: ([a0, a1]: InclusiveRange, [b0, b1]: InclusiveRange) => InclusiveRange | null;
37
+ /**
38
+ * Determine if a value is inside a range.
39
+ *
40
+ * @param value The value to check
41
+ * @param range The range
42
+ * @returns
43
+ */
44
+ export declare const rangeIncludesValue: (value: number, [min, max]: InclusiveRange) => boolean;
@@ -1,32 +1,32 @@
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
- export declare function lineSegmentFromPointArray<P extends GlobalPoint | LocalPoint>(pointArray: P[]): LineSegment<P> | undefined;
10
- /**
11
- *
12
- * @param segment
13
- * @returns
14
- */
15
- export declare const isLineSegment: <Point extends GlobalPoint | LocalPoint>(segment: unknown) => segment is LineSegment<Point>;
16
- /**
17
- * Return the coordinates resulting from rotating the given line about an origin by an angle in radians
18
- * note that when the origin is not given, the midpoint of the given line is used as the origin.
19
- *
20
- * @param l
21
- * @param angle
22
- * @param origin
23
- * @returns
24
- */
25
- export declare const lineSegmentRotate: <Point extends GlobalPoint | LocalPoint>(l: LineSegment<Point>, angle: Radians, origin?: Point | undefined) => LineSegment<Point>;
26
- /**
27
- * Calculates the point two line segments with a definite start and end point
28
- * intersect at.
29
- */
30
- export declare const segmentsIntersectAt: <Point extends GlobalPoint | LocalPoint>(a: Readonly<LineSegment<Point>>, b: Readonly<LineSegment<Point>>) => Point | null;
31
- export declare const pointOnLineSegment: <Point extends GlobalPoint | LocalPoint>(point: Point, line: LineSegment<Point>, threshold?: number) => boolean;
32
- export declare const distanceToLineSegment: <Point extends GlobalPoint | LocalPoint>(point: Point, line: 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
+ export declare function lineSegmentFromPointArray<P extends GlobalPoint | LocalPoint>(pointArray: P[]): LineSegment<P> | undefined;
10
+ /**
11
+ *
12
+ * @param segment
13
+ * @returns
14
+ */
15
+ export declare const isLineSegment: <Point extends GlobalPoint | LocalPoint>(segment: unknown) => segment is LineSegment<Point>;
16
+ /**
17
+ * Return the coordinates resulting from rotating the given line about an origin by an angle in radians
18
+ * note that when the origin is not given, the midpoint of the given line is used as the origin.
19
+ *
20
+ * @param l
21
+ * @param angle
22
+ * @param origin
23
+ * @returns
24
+ */
25
+ export declare const lineSegmentRotate: <Point extends GlobalPoint | LocalPoint>(l: LineSegment<Point>, angle: Radians, origin?: Point | undefined) => LineSegment<Point>;
26
+ /**
27
+ * Calculates the point two line segments with a definite start and end point
28
+ * intersect at.
29
+ */
30
+ export declare const segmentsIntersectAt: <Point extends GlobalPoint | LocalPoint>(a: Readonly<LineSegment<Point>>, b: Readonly<LineSegment<Point>>) => Point | null;
31
+ export declare const pointOnLineSegment: <Point extends GlobalPoint | LocalPoint>(point: Point, line: LineSegment<Point>, threshold?: number) => boolean;
32
+ export declare const distanceToLineSegment: <Point extends GlobalPoint | LocalPoint>(point: Point, line: 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;