@zsviczian/excalidraw 0.18.0-13 → 0.18.0-14

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 (388) hide show
  1. package/dist/excalidraw.development.js +169 -169
  2. package/dist/excalidraw.production.min.js +1 -1
  3. package/package.json +1 -1
  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/constants.d.ts +337 -337
  7. package/types/{excalidraw → common/src}/emitter.d.ts +16 -16
  8. package/types/common/src/font-metadata.d.ts +46 -46
  9. package/types/common/src/index.d.ts +12 -11
  10. package/types/common/src/keys.d.ts +189 -189
  11. package/types/common/src/points.d.ts +9 -9
  12. package/types/common/src/promise-pool.d.ts +6 -6
  13. package/types/common/src/queue.d.ts +9 -9
  14. package/types/common/src/random.d.ts +4 -4
  15. package/types/common/src/url.d.ts +7 -7
  16. package/types/common/src/utility-types.d.ts +37 -32
  17. package/types/common/src/utils.d.ts +266 -257
  18. package/types/element/src/Scene.d.ts +76 -76
  19. package/types/element/src/Shape.d.ts +17 -17
  20. package/types/element/src/ShapeCache.d.ts +25 -25
  21. package/types/element/src/align.d.ts +7 -7
  22. package/types/element/src/binding.d.ts +108 -108
  23. package/types/element/src/bounds.d.ts +81 -81
  24. package/types/element/src/collision.d.ts +26 -26
  25. package/types/element/src/comparisons.d.ts +8 -8
  26. package/types/element/src/containerCache.d.ts +11 -11
  27. package/types/element/src/cropElement.d.ts +19 -19
  28. package/types/{excalidraw/change.d.ts → element/src/delta.d.ts} +196 -191
  29. package/types/element/src/distance.d.ts +3 -3
  30. package/types/element/src/distribute.d.ts +6 -6
  31. package/types/element/src/dragElements.d.ts +33 -33
  32. package/types/element/src/duplicate.d.ts +63 -63
  33. package/types/element/src/easingFunctions.d.ts +6 -6
  34. package/types/element/src/elbowArrow.d.ts +17 -17
  35. package/types/element/src/elementLink.d.ts +13 -13
  36. package/types/element/src/embeddable.d.ts +10 -10
  37. package/types/element/src/flowchart.d.ts +26 -26
  38. package/types/element/src/fractionalIndex.d.ts +51 -51
  39. package/types/element/src/frame.d.ts +69 -69
  40. package/types/element/src/groups.d.ts +33 -33
  41. package/types/element/src/heading.d.ts +15 -15
  42. package/types/element/src/image.d.ts +32 -32
  43. package/types/element/src/index.d.ts +16 -16
  44. package/types/element/src/linearElementEditor.d.ts +125 -129
  45. package/types/element/src/mutateElement.d.ts +21 -21
  46. package/types/element/src/newElement.d.ts +62 -62
  47. package/types/element/src/renderElement.d.ts +28 -28
  48. package/types/element/src/resizeElements.d.ts +38 -38
  49. package/types/element/src/resizeTest.d.ts +15 -15
  50. package/types/element/src/selection.d.ts +43 -43
  51. package/types/element/src/shapes.d.ts +23 -23
  52. package/types/element/src/showSelectedShapeActions.d.ts +3 -3
  53. package/types/element/src/sizeHelpers.d.ts +34 -34
  54. package/types/element/src/sortElements.d.ts +2 -2
  55. package/types/element/src/store.d.ts +227 -0
  56. package/types/element/src/textElement.d.ts +40 -40
  57. package/types/element/src/textMeasurements.d.ts +41 -41
  58. package/types/element/src/textWrapping.d.ts +13 -13
  59. package/types/element/src/transformHandles.d.ts +55 -55
  60. package/types/element/src/typeChecks.d.ts +42 -42
  61. package/types/element/src/types.d.ts +292 -288
  62. package/types/element/src/utils.d.ts +21 -21
  63. package/types/element/src/zindex.d.ts +7 -7
  64. package/types/excalidraw/actions/actionAddToLibrary.d.ts +644 -644
  65. package/types/excalidraw/actions/actionAlign.d.ts +109 -109
  66. package/types/excalidraw/actions/actionBoundText.d.ts +466 -466
  67. package/types/excalidraw/actions/actionCanvas.d.ts +3353 -3353
  68. package/types/excalidraw/actions/actionClipboard.d.ts +1404 -1404
  69. package/types/excalidraw/actions/actionCropEditor.d.ts +227 -227
  70. package/types/excalidraw/actions/actionDeleteSelected.d.ts +683 -683
  71. package/types/excalidraw/actions/actionDistribute.d.ts +34 -34
  72. package/types/excalidraw/actions/actionDuplicateSelection.d.ts +17 -17
  73. package/types/excalidraw/actions/actionElementLink.d.ts +249 -249
  74. package/types/excalidraw/actions/actionElementLock.d.ts +453 -453
  75. package/types/excalidraw/actions/actionEmbeddable.d.ts +224 -224
  76. package/types/excalidraw/actions/actionExport.d.ts +1998 -1998
  77. package/types/excalidraw/actions/actionFinalize.d.ts +435 -435
  78. package/types/excalidraw/actions/actionFlip.d.ts +34 -34
  79. package/types/excalidraw/actions/actionFrame.d.ts +1404 -1404
  80. package/types/excalidraw/actions/actionGroup.d.ts +464 -464
  81. package/types/excalidraw/actions/actionHistory.d.ts +6 -7
  82. package/types/excalidraw/actions/actionLinearEditor.d.ts +228 -228
  83. package/types/excalidraw/actions/actionLink.d.ts +228 -228
  84. package/types/excalidraw/actions/actionMenu.d.ts +664 -664
  85. package/types/excalidraw/actions/actionNavigate.d.ts +440 -440
  86. package/types/excalidraw/actions/actionProperties.d.ts +3351 -3351
  87. package/types/excalidraw/actions/actionSelectAll.d.ts +227 -227
  88. package/types/excalidraw/actions/actionStyles.d.ts +241 -241
  89. package/types/excalidraw/actions/actionTextAutoResize.d.ts +17 -17
  90. package/types/excalidraw/actions/actionToggleGridMode.d.ts +230 -230
  91. package/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +228 -228
  92. package/types/excalidraw/actions/actionToggleSearchMenu.d.ts +430 -430
  93. package/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +19 -19
  94. package/types/excalidraw/actions/actionToggleStats.d.ts +227 -227
  95. package/types/excalidraw/actions/actionToggleViewMode.d.ts +228 -228
  96. package/types/excalidraw/actions/actionToggleZenMode.d.ts +228 -228
  97. package/types/excalidraw/actions/actionZindex.d.ts +74 -74
  98. package/types/excalidraw/actions/index.d.ts +28 -28
  99. package/types/excalidraw/actions/manager.d.ts +21 -21
  100. package/types/excalidraw/actions/register.d.ts +5 -5
  101. package/types/excalidraw/actions/shortcuts.d.ts +4 -4
  102. package/types/excalidraw/actions/types.d.ts +46 -46
  103. package/types/excalidraw/analytics.d.ts +1 -1
  104. package/types/excalidraw/animated-trail.d.ts +39 -39
  105. package/types/excalidraw/animation-frame-handler.d.ts +16 -16
  106. package/types/excalidraw/appState.d.ts +90 -90
  107. package/types/excalidraw/charts.d.ts +27 -27
  108. package/types/excalidraw/clients.d.ts +14 -14
  109. package/types/excalidraw/clipboard.d.ts +66 -66
  110. package/types/excalidraw/components/Actions.d.ts +35 -35
  111. package/types/excalidraw/components/ActiveConfirmDialog.d.ts +4 -4
  112. package/types/excalidraw/components/App.d.ts +566 -566
  113. package/types/excalidraw/components/Avatar.d.ts +11 -11
  114. package/types/excalidraw/components/BraveMeasureTextError.d.ts +2 -2
  115. package/types/excalidraw/components/Button.d.ts +17 -17
  116. package/types/excalidraw/components/ButtonIcon.d.ts +15 -15
  117. package/types/excalidraw/components/ButtonIconCycle.d.ts +11 -11
  118. package/types/excalidraw/components/ButtonIconSelect.d.ts +20 -20
  119. package/types/excalidraw/components/ButtonSelect.d.ts +9 -9
  120. package/types/excalidraw/components/ButtonSeparator.d.ts +1 -1
  121. package/types/excalidraw/components/Card.d.ts +6 -6
  122. package/types/excalidraw/components/CheckboxItem.d.ts +8 -8
  123. package/types/excalidraw/components/ColorPicker/ColorInput.d.ts +9 -9
  124. package/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +19 -19
  125. package/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +8 -8
  126. package/types/excalidraw/components/ColorPicker/HotkeyLabel.d.ts +7 -7
  127. package/types/excalidraw/components/ColorPicker/Picker.d.ts +18 -18
  128. package/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +10 -10
  129. package/types/excalidraw/components/ColorPicker/PickerHeading.d.ts +5 -5
  130. package/types/excalidraw/components/ColorPicker/ShadeList.d.ts +8 -8
  131. package/types/excalidraw/components/ColorPicker/TopPicks.d.ts +9 -9
  132. package/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +21 -21
  133. package/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +20 -20
  134. package/types/excalidraw/components/CommandPalette/CommandPalette.d.ts +18 -18
  135. package/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +2 -2
  136. package/types/excalidraw/components/CommandPalette/types.d.ts +25 -25
  137. package/types/excalidraw/components/ConfirmDialog.d.ts +10 -10
  138. package/types/excalidraw/components/ContextMenu.d.ts +16 -16
  139. package/types/excalidraw/components/ConvertElementTypePopup.d.ts +49 -49
  140. package/types/excalidraw/components/DarkModeToggle.d.ts +7 -7
  141. package/types/excalidraw/components/DefaultSidebar.d.ts +30 -30
  142. package/types/excalidraw/components/DiagramToCodePlugin/DiagramToCodePlugin.d.ts +4 -4
  143. package/types/excalidraw/components/Dialog.d.ts +13 -13
  144. package/types/excalidraw/components/DialogActionButton.d.ts +10 -10
  145. package/types/excalidraw/components/ElementCanvasButtons.d.ts +7 -7
  146. package/types/excalidraw/components/ElementLinkDialog.d.ts +12 -12
  147. package/types/excalidraw/components/ErrorDialog.d.ts +5 -5
  148. package/types/excalidraw/components/ExcalidrawLogo.d.ts +15 -15
  149. package/types/excalidraw/components/EyeDropper.d.ts +27 -27
  150. package/types/excalidraw/components/FilledButton.d.ts +18 -18
  151. package/types/excalidraw/components/FixedSideContainer.d.ts +9 -9
  152. package/types/excalidraw/components/FollowMode/FollowMode.d.ts +10 -10
  153. package/types/excalidraw/components/FontPicker/FontPicker.d.ts +21 -21
  154. package/types/excalidraw/components/FontPicker/FontPickerList.d.ts +26 -26
  155. package/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +6 -6
  156. package/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +13 -13
  157. package/types/excalidraw/components/HandButton.d.ts +10 -10
  158. package/types/excalidraw/components/HelpButton.d.ts +7 -7
  159. package/types/excalidraw/components/HelpDialog.d.ts +4 -4
  160. package/types/excalidraw/components/HintViewer.d.ts +10 -10
  161. package/types/excalidraw/components/IconPicker.d.ts +15 -15
  162. package/types/excalidraw/components/ImageExportDialog.d.ts +14 -14
  163. package/types/excalidraw/components/InitializeApp.d.ts +10 -10
  164. package/types/excalidraw/components/InlineIcon.d.ts +3 -3
  165. package/types/excalidraw/components/Island.d.ts +10 -10
  166. package/types/excalidraw/components/JSONExportDialog.d.ts +15 -15
  167. package/types/excalidraw/components/LaserPointerButton.d.ts +10 -10
  168. package/types/excalidraw/components/LayerUI.d.ts +31 -31
  169. package/types/excalidraw/components/LibraryMenu.d.ts +10 -10
  170. package/types/excalidraw/components/LibraryMenuBrowseButton.d.ts +7 -7
  171. package/types/excalidraw/components/LibraryMenuControlButtons.d.ts +9 -9
  172. package/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +17 -17
  173. package/types/excalidraw/components/LibraryMenuItems.d.ts +14 -14
  174. package/types/excalidraw/components/LibraryMenuSection.d.ts +23 -23
  175. package/types/excalidraw/components/LibraryUnit.d.ts +14 -14
  176. package/types/excalidraw/components/LoadingMessage.d.ts +5 -5
  177. package/types/excalidraw/components/LockButton.d.ts +10 -10
  178. package/types/excalidraw/components/MagicButton.d.ts +10 -10
  179. package/types/excalidraw/components/MobileMenu.d.ts +25 -25
  180. package/types/excalidraw/components/Modal.d.ts +14 -14
  181. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirm.d.ts +17 -17
  182. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmActions.d.ts +17 -17
  183. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +22 -22
  184. package/types/excalidraw/components/Paragraph.d.ts +4 -4
  185. package/types/excalidraw/components/PasteChartDialog.d.ts +8 -8
  186. package/types/excalidraw/components/PenModeButton.d.ts +12 -12
  187. package/types/excalidraw/components/Popover.d.ts +15 -15
  188. package/types/excalidraw/components/ProjectName.d.ts +10 -10
  189. package/types/excalidraw/components/PropertiesPopover.d.ts +15 -15
  190. package/types/excalidraw/components/PublishLibrary.d.ts +16 -16
  191. package/types/excalidraw/components/QuickSearch.d.ts +9 -9
  192. package/types/excalidraw/components/RadioGroup.d.ts +13 -13
  193. package/types/excalidraw/components/Range.d.ts +8 -8
  194. package/types/excalidraw/components/SVGLayer.d.ts +7 -7
  195. package/types/excalidraw/components/ScrollableList.d.ts +8 -8
  196. package/types/excalidraw/components/SearchMenu.d.ts +5 -5
  197. package/types/excalidraw/components/Section.d.ts +6 -6
  198. package/types/excalidraw/components/ShareableLinkDialog.d.ts +7 -7
  199. package/types/excalidraw/components/Sidebar/Sidebar.d.ts +76 -76
  200. package/types/excalidraw/components/Sidebar/SidebarHeader.d.ts +7 -7
  201. package/types/excalidraw/components/Sidebar/SidebarTab.d.ts +8 -8
  202. package/types/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +9 -9
  203. package/types/excalidraw/components/Sidebar/SidebarTabTriggers.d.ts +6 -6
  204. package/types/excalidraw/components/Sidebar/SidebarTabs.d.ts +6 -6
  205. package/types/excalidraw/components/Sidebar/SidebarTrigger.d.ts +6 -6
  206. package/types/excalidraw/components/Sidebar/common.d.ts +34 -34
  207. package/types/excalidraw/components/Spinner.d.ts +8 -8
  208. package/types/excalidraw/components/Stack.d.ts +15 -15
  209. package/types/excalidraw/components/Stats/Angle.d.ts +11 -11
  210. package/types/excalidraw/components/Stats/CanvasGrid.d.ts +10 -10
  211. package/types/excalidraw/components/Stats/CanvasGridSize.d.ts +10 -10
  212. package/types/excalidraw/components/Stats/Collapsible.d.ts +9 -9
  213. package/types/excalidraw/components/Stats/Dimension.d.ts +11 -11
  214. package/types/excalidraw/components/Stats/DragInput.d.ts +34 -34
  215. package/types/excalidraw/components/Stats/FontSize.d.ts +11 -11
  216. package/types/excalidraw/components/Stats/MultiAngle.d.ts +11 -11
  217. package/types/excalidraw/components/Stats/MultiDimension.d.ts +14 -14
  218. package/types/excalidraw/components/Stats/MultiFontSize.d.ts +12 -12
  219. package/types/excalidraw/components/Stats/MultiPosition.d.ts +14 -14
  220. package/types/excalidraw/components/Stats/Position.d.ts +12 -12
  221. package/types/excalidraw/components/Stats/index.d.ts +35 -35
  222. package/types/excalidraw/components/Stats/utils.d.ts +19 -19
  223. package/types/excalidraw/components/Switch.d.ts +9 -9
  224. package/types/excalidraw/components/TTDDialog/MermaidToExcalidraw.d.ts +8 -8
  225. package/types/excalidraw/components/TTDDialog/MermaidToExcalidrawLib.d.ts +10 -10
  226. package/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +29 -29
  227. package/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +9 -9
  228. package/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +7 -7
  229. package/types/excalidraw/components/TTDDialog/TTDDialogPanel.d.ts +17 -17
  230. package/types/excalidraw/components/TTDDialog/TTDDialogPanels.d.ts +4 -4
  231. package/types/excalidraw/components/TTDDialog/TTDDialogSubmitShortcut.d.ts +1 -1
  232. package/types/excalidraw/components/TTDDialog/TTDDialogTab.d.ts +7 -7
  233. package/types/excalidraw/components/TTDDialog/TTDDialogTabTrigger.d.ts +8 -8
  234. package/types/excalidraw/components/TTDDialog/TTDDialogTabTriggers.d.ts +6 -6
  235. package/types/excalidraw/components/TTDDialog/TTDDialogTabs.d.ts +11 -11
  236. package/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +9 -9
  237. package/types/excalidraw/components/TTDDialog/common.d.ts +32 -32
  238. package/types/excalidraw/components/TextField.d.ts +21 -21
  239. package/types/excalidraw/components/Toast.d.ts +9 -9
  240. package/types/excalidraw/components/ToolButton.d.ts +49 -49
  241. package/types/excalidraw/components/Tooltip.d.ts +18 -18
  242. package/types/excalidraw/components/Trans.d.ts +9 -9
  243. package/types/excalidraw/components/UserList.d.ts +18 -18
  244. package/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +30 -30
  245. package/types/excalidraw/components/canvases/NewElementCanvas.d.ts +14 -14
  246. package/types/excalidraw/components/canvases/StaticCanvas.d.ts +19 -19
  247. package/types/excalidraw/components/canvases/index.d.ts +3 -3
  248. package/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +86 -86
  249. package/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +15 -15
  250. package/types/excalidraw/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -11
  251. package/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +46 -46
  252. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +8 -8
  253. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +17 -17
  254. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemCustom.d.ts +7 -7
  255. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +16 -16
  256. package/types/excalidraw/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -5
  257. package/types/excalidraw/components/dropdownMenu/DropdownMenuTrigger.d.ts +10 -10
  258. package/types/excalidraw/components/dropdownMenu/common.d.ts +6 -6
  259. package/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +3 -3
  260. package/types/excalidraw/components/footer/Footer.d.ts +12 -12
  261. package/types/excalidraw/components/footer/FooterCenter.d.ts +8 -8
  262. package/types/excalidraw/components/hoc/withInternalFallback.d.ts +4 -4
  263. package/types/excalidraw/components/hyperlink/Hyperlink.d.ts +19 -19
  264. package/types/excalidraw/components/hyperlink/helpers.d.ts +9 -9
  265. package/types/excalidraw/components/icons.d.ts +224 -224
  266. package/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +9 -9
  267. package/types/excalidraw/components/main-menu/DefaultItems.d.ts +64 -64
  268. package/types/excalidraw/components/main-menu/MainMenu.d.ts +83 -83
  269. package/types/excalidraw/components/shapes.d.ts +62 -62
  270. package/types/excalidraw/components/welcome-screen/WelcomeScreen.Center.d.ts +60 -60
  271. package/types/excalidraw/components/welcome-screen/WelcomeScreen.Hints.d.ts +19 -19
  272. package/types/excalidraw/components/welcome-screen/WelcomeScreen.d.ts +86 -86
  273. package/types/excalidraw/context/tunnels.d.ts +21 -21
  274. package/types/excalidraw/context/ui-appState.d.ts +4 -4
  275. package/types/excalidraw/cursor.d.ts +6 -6
  276. package/types/excalidraw/data/EditorLocalStorage.d.ts +8 -8
  277. package/types/excalidraw/data/ai/types.d.ts +242 -242
  278. package/types/excalidraw/data/blob.d.ts +53 -53
  279. package/types/excalidraw/data/encode.d.ts +55 -55
  280. package/types/excalidraw/data/encryption.d.ts +9 -9
  281. package/types/excalidraw/data/filesystem.d.ts +21 -21
  282. package/types/excalidraw/data/image.d.ts +9 -9
  283. package/types/excalidraw/data/index.d.ts +22 -22
  284. package/types/excalidraw/data/json.d.ts +16 -16
  285. package/types/excalidraw/data/library.d.ts +112 -112
  286. package/types/excalidraw/data/reconcile.d.ts +6 -6
  287. package/types/excalidraw/data/resave.d.ts +5 -5
  288. package/types/excalidraw/data/restore.d.ts +21 -21
  289. package/types/excalidraw/data/transform.d.ts +81 -81
  290. package/types/excalidraw/data/types.d.ts +45 -45
  291. package/types/excalidraw/deburr.d.ts +1 -1
  292. package/types/excalidraw/dist/excalidraw.development.d.ts +2 -2
  293. package/types/excalidraw/dist/excalidraw.production.min.d.ts +3 -3
  294. package/types/excalidraw/editor-jotai.d.ts +56 -56
  295. package/types/excalidraw/entry.d.ts +1 -1
  296. package/types/excalidraw/env.d.cts +1 -1
  297. package/types/excalidraw/env.d.ts +1 -1
  298. package/types/excalidraw/eraser/index.d.ts +14 -14
  299. package/types/excalidraw/errors.d.ts +29 -29
  300. package/types/excalidraw/fonts/Cascadia/index.d.ts +2 -2
  301. package/types/excalidraw/fonts/ComicShanns/index.d.ts +2 -2
  302. package/types/excalidraw/fonts/Emoji/index.d.ts +2 -2
  303. package/types/excalidraw/fonts/ExcalidrawFontFace.d.ts +29 -29
  304. package/types/excalidraw/fonts/Excalifont/index.d.ts +2 -2
  305. package/types/excalidraw/fonts/Fonts.d.ts +90 -90
  306. package/types/excalidraw/fonts/Helvetica/index.d.ts +2 -2
  307. package/types/excalidraw/fonts/Liberation/index.d.ts +2 -2
  308. package/types/excalidraw/fonts/Lilita/index.d.ts +2 -2
  309. package/types/excalidraw/fonts/Nunito/index.d.ts +2 -2
  310. package/types/excalidraw/fonts/Virgil/index.d.ts +2 -2
  311. package/types/excalidraw/fonts/Xiaolai/index.d.ts +8 -8
  312. package/types/excalidraw/fonts/index.d.ts +1 -1
  313. package/types/excalidraw/gesture.d.ts +6 -6
  314. package/types/excalidraw/history.d.ts +32 -40
  315. package/types/excalidraw/hooks/useCallbackRefState.d.ts +1 -1
  316. package/types/excalidraw/hooks/useCopiedIndicator.d.ts +5 -5
  317. package/types/excalidraw/hooks/useCreatePortalContainer.d.ts +7 -7
  318. package/types/excalidraw/hooks/useEmitter.d.ts +2 -2
  319. package/types/excalidraw/hooks/useLibraryItemSvg.d.ts +11 -11
  320. package/types/excalidraw/hooks/useOutsideClick.d.ts +19 -19
  321. package/types/excalidraw/hooks/useScrollPosition.d.ts +1 -1
  322. package/types/excalidraw/hooks/useStable.d.ts +1 -1
  323. package/types/excalidraw/hooks/useStableCallback.d.ts +4 -4
  324. package/types/excalidraw/hooks/useTransition.d.ts +2 -2
  325. package/types/excalidraw/i18n.d.ts +24 -24
  326. package/types/excalidraw/index-node.d.ts +1 -1
  327. package/types/excalidraw/index.d.ts +59 -59
  328. package/types/excalidraw/laser-trails.d.ts +20 -20
  329. package/types/excalidraw/lasso/index.d.ts +15 -15
  330. package/types/excalidraw/lasso/utils.d.ts +12 -12
  331. package/types/excalidraw/main.d.ts +2 -2
  332. package/types/excalidraw/mermaid.d.ts +2 -2
  333. package/types/excalidraw/obsidianUtils.d.ts +29 -29
  334. package/types/excalidraw/polyfill.d.ts +2 -2
  335. package/types/excalidraw/publicPath.d.ts +1 -1
  336. package/types/excalidraw/reactUtils.d.ts +14 -14
  337. package/types/excalidraw/renderer/helpers.d.ts +18 -13
  338. package/types/excalidraw/renderer/interactiveScene.d.ts +20 -20
  339. package/types/excalidraw/renderer/renderNewElementScene.d.ts +7 -7
  340. package/types/excalidraw/renderer/renderSnaps.d.ts +2 -2
  341. package/types/excalidraw/renderer/roundRect.d.ts +11 -11
  342. package/types/excalidraw/renderer/staticScene.d.ts +11 -11
  343. package/types/excalidraw/renderer/staticSvgScene.d.ts +5 -5
  344. package/types/excalidraw/scene/Renderer.d.ts +28 -28
  345. package/types/excalidraw/scene/export.d.ts +37 -37
  346. package/types/excalidraw/scene/index.d.ts +4 -4
  347. package/types/excalidraw/scene/normalize.d.ts +4 -4
  348. package/types/excalidraw/scene/scroll.d.ts +23 -23
  349. package/types/excalidraw/scene/scrollbars.d.ts +11 -11
  350. package/types/excalidraw/scene/types.d.ts +122 -122
  351. package/types/excalidraw/scene/zoom.d.ts +12 -12
  352. package/types/excalidraw/snapping.d.ts +111 -111
  353. package/types/excalidraw/subset/harfbuzz/harfbuzz-bindings.d.ts +45 -45
  354. package/types/excalidraw/subset/harfbuzz/harfbuzz-loader.d.ts +13 -13
  355. package/types/excalidraw/subset/harfbuzz/harfbuzz-wasm.d.ts +2 -2
  356. package/types/excalidraw/subset/subset-main.d.ts +12 -12
  357. package/types/excalidraw/subset/subset-shared.chunk.d.ts +32 -32
  358. package/types/excalidraw/subset/subset-worker.chunk.d.ts +15 -15
  359. package/types/excalidraw/subset/woff2/woff2-bindings.d.ts +31 -31
  360. package/types/excalidraw/subset/woff2/woff2-loader.d.ts +14 -14
  361. package/types/excalidraw/subset/woff2/woff2-wasm.d.ts +2 -2
  362. package/types/excalidraw/types.d.ts +767 -765
  363. package/types/excalidraw/visualdebug.d.ts +41 -41
  364. package/types/excalidraw/webpack.dev.config.d.ts +114 -114
  365. package/types/excalidraw/webpack.prod.config.d.ts +128 -128
  366. package/types/excalidraw/workers.d.ts +36 -36
  367. package/types/excalidraw/wysiwyg/textWysiwyg.d.ts +24 -24
  368. package/types/math/src/angle.d.ts +17 -17
  369. package/types/math/src/curve.d.ts +42 -40
  370. package/types/math/src/ellipse.d.ts +44 -44
  371. package/types/math/src/index.d.ts +12 -12
  372. package/types/math/src/line.d.ts +17 -17
  373. package/types/math/src/point.d.ts +122 -122
  374. package/types/math/src/polygon.d.ts +6 -6
  375. package/types/math/src/range.d.ts +44 -44
  376. package/types/math/src/rectangle.d.ts +3 -3
  377. package/types/math/src/segment.d.ts +39 -39
  378. package/types/math/src/triangle.d.ts +11 -11
  379. package/types/math/src/types.d.ts +106 -106
  380. package/types/math/src/utils.d.ts +7 -7
  381. package/types/math/src/vector.d.ts +92 -88
  382. package/types/utils/src/bbox.d.ts +9 -9
  383. package/types/utils/src/collision.d.ts +8 -8
  384. package/types/utils/src/export.d.ts +35 -35
  385. package/types/utils/src/index.d.ts +4 -4
  386. package/types/utils/src/shape.d.ts +58 -58
  387. package/types/utils/src/withinBounds.d.ts +19 -19
  388. package/types/excalidraw/store.d.ts +0 -129
@@ -1,129 +1,125 @@
1
- import { type GlobalPoint, type LocalPoint } from "@excalidraw/math";
2
- import type { Store } from "@excalidraw/excalidraw/store";
3
- import type { AppState, PointerCoords, InteractiveCanvasAppState, AppClassProperties, NullableGridSize, Zoom } from "@excalidraw/excalidraw/types";
4
- import type Scene from "./Scene";
5
- import type { Bounds } from "./bounds";
6
- import type { NonDeleted, ExcalidrawLinearElement, ExcalidrawElement, PointBinding, ExcalidrawBindableElement, ExcalidrawTextElementWithContainer, ElementsMap, NonDeletedSceneElementsMap, ExcalidrawElbowArrowElement } from "./types";
7
- declare const editorMidPointsCache: {
8
- version: number | null;
9
- points: (GlobalPoint | null)[];
10
- zoom: number | null;
11
- };
12
- export declare class LinearElementEditor {
13
- readonly elementId: ExcalidrawElement["id"] & {
14
- _brand: "excalidrawLinearElementId";
15
- };
16
- /** indices */
17
- readonly selectedPointsIndices: readonly number[] | null;
18
- readonly pointerDownState: Readonly<{
19
- prevSelectedPointsIndices: readonly number[] | null;
20
- /** index */
21
- lastClickedPoint: number;
22
- lastClickedIsEndPoint: boolean;
23
- origin: Readonly<{
24
- x: number;
25
- y: number;
26
- }> | null;
27
- segmentMidpoint: {
28
- value: GlobalPoint | null;
29
- index: number | null;
30
- added: boolean;
31
- };
32
- }>;
33
- /** whether you're dragging a point */
34
- readonly isDragging: boolean;
35
- readonly lastUncommittedPoint: LocalPoint | null;
36
- readonly pointerOffset: Readonly<{
37
- x: number;
38
- y: number;
39
- }>;
40
- readonly startBindingElement: ExcalidrawBindableElement | null | "keep";
41
- readonly endBindingElement: ExcalidrawBindableElement | null | "keep";
42
- readonly hoverPointIndex: number;
43
- readonly segmentMidPointHoveredCoords: GlobalPoint | null;
44
- readonly elbowed: boolean;
45
- constructor(element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap);
46
- static POINT_HANDLE_SIZE: number;
47
- /**
48
- * @param id the `elementId` from the instance of this class (so that we can
49
- * statically guarantee this method returns an ExcalidrawLinearElement)
50
- */
51
- static getElement<T extends ExcalidrawLinearElement>(id: InstanceType<typeof LinearElementEditor>["elementId"], elementsMap: ElementsMap): T | null;
52
- static handleBoxSelection(event: PointerEvent, appState: AppState, setState: React.Component<any, AppState>["setState"], elementsMap: NonDeletedSceneElementsMap): false | undefined;
53
- /**
54
- * @returns whether point was dragged
55
- */
56
- static handlePointDragging(event: PointerEvent, app: AppClassProperties, scenePointerX: number, scenePointerY: number, maybeSuggestBinding: (element: NonDeleted<ExcalidrawLinearElement>, pointSceneCoords: {
57
- x: number;
58
- y: number;
59
- }[]) => void, linearElementEditor: LinearElementEditor, scene: Scene): LinearElementEditor | null;
60
- static handlePointerUp(event: PointerEvent, editingLinearElement: LinearElementEditor, appState: AppState, scene: Scene): LinearElementEditor;
61
- static getEditorMidPoints: (element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap, appState: InteractiveCanvasAppState) => (typeof editorMidPointsCache)["points"];
62
- static updateEditorMidPointsCache: (element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap, appState: InteractiveCanvasAppState) => void;
63
- static getSegmentMidpointHitCoords: (linearElementEditor: LinearElementEditor, scenePointer: {
64
- x: number;
65
- y: number;
66
- }, appState: AppState, elementsMap: ElementsMap) => GlobalPoint | null;
67
- static isSegmentTooShort<P extends GlobalPoint | LocalPoint>(element: NonDeleted<ExcalidrawLinearElement>, startPoint: P, endPoint: P, index: number, zoom: Zoom): boolean;
68
- static getSegmentMidPoint(element: NonDeleted<ExcalidrawLinearElement>, startPoint: GlobalPoint, endPoint: GlobalPoint, endPointIndex: number, elementsMap: ElementsMap): GlobalPoint;
69
- static getSegmentMidPointIndex(linearElementEditor: LinearElementEditor, appState: AppState, midPoint: GlobalPoint, elementsMap: ElementsMap): number;
70
- static handlePointerDown(event: React.PointerEvent<HTMLElement>, app: AppClassProperties, store: Store, scenePointer: {
71
- x: number;
72
- y: number;
73
- }, linearElementEditor: LinearElementEditor, scene: Scene): {
74
- didAddPoint: boolean;
75
- hitElement: NonDeleted<ExcalidrawElement> | null;
76
- linearElementEditor: LinearElementEditor | null;
77
- };
78
- static arePointsEqual<Point extends LocalPoint | GlobalPoint>(point1: Point | null, point2: Point | null): boolean;
79
- static handlePointerMove(event: React.PointerEvent<HTMLCanvasElement>, scenePointerX: number, scenePointerY: number, app: AppClassProperties): LinearElementEditor | null;
80
- /** scene coords */
81
- static getPointGlobalCoordinates(element: NonDeleted<ExcalidrawLinearElement>, p: LocalPoint, elementsMap: ElementsMap): GlobalPoint;
82
- /** scene coords */
83
- static getPointsGlobalCoordinates(element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap): GlobalPoint[];
84
- static getPointAtIndexGlobalCoordinates(element: NonDeleted<ExcalidrawLinearElement>, indexMaybeFromEnd: number, // -1 for last element
85
- elementsMap: ElementsMap): GlobalPoint;
86
- static pointFromAbsoluteCoords(element: NonDeleted<ExcalidrawLinearElement>, absoluteCoords: GlobalPoint, elementsMap: ElementsMap): LocalPoint;
87
- static getPointIndexUnderCursor(element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap, zoom: AppState["zoom"], x: number, y: number): number;
88
- static createPointAt(element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap, scenePointerX: number, scenePointerY: number, gridSize: NullableGridSize): LocalPoint;
89
- /**
90
- * Normalizes line points so that the start point is at [0,0]. This is
91
- * expected in various parts of the codebase. Also returns new x/y to account
92
- * for the potential normalization.
93
- */
94
- static getNormalizedPoints(element: ExcalidrawLinearElement): {
95
- points: LocalPoint[];
96
- x: number;
97
- y: number;
98
- };
99
- static normalizePoints(element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap): void;
100
- static duplicateSelectedPoints(appState: AppState, scene: Scene): AppState;
101
- static deletePoints(element: NonDeleted<ExcalidrawLinearElement>, scene: Scene, pointIndices: readonly number[]): void;
102
- static addPoints(element: NonDeleted<ExcalidrawLinearElement>, scene: Scene, targetPoints: {
103
- point: LocalPoint;
104
- }[]): void;
105
- static movePoints(element: NonDeleted<ExcalidrawLinearElement>, scene: Scene, targetPoints: {
106
- index: number;
107
- point: LocalPoint;
108
- isDragging?: boolean;
109
- }[], otherUpdates?: {
110
- startBinding?: PointBinding | null;
111
- endBinding?: PointBinding | null;
112
- }): void;
113
- static shouldAddMidpoint(linearElementEditor: LinearElementEditor, pointerCoords: PointerCoords, appState: AppState, elementsMap: ElementsMap): boolean;
114
- static addMidpoint(linearElementEditor: LinearElementEditor, pointerCoords: PointerCoords, app: AppClassProperties, snapToGrid: boolean, scene: Scene): {
115
- pointerDownState: LinearElementEditor["pointerDownState"];
116
- selectedPointsIndices: LinearElementEditor["selectedPointsIndices"];
117
- } | undefined;
118
- private static _updatePoints;
119
- private static _getShiftLockedDelta;
120
- static getBoundTextElementPosition: (element: ExcalidrawLinearElement, boundTextElement: ExcalidrawTextElementWithContainer, elementsMap: ElementsMap) => {
121
- x: number;
122
- y: number;
123
- };
124
- static getMinMaxXYWithBoundText: (element: ExcalidrawLinearElement, elementsMap: ElementsMap, elementBounds: Bounds, boundTextElement: ExcalidrawTextElementWithContainer) => [number, number, number, number, number, number];
125
- static getElementAbsoluteCoords: (element: ExcalidrawLinearElement, elementsMap: ElementsMap, includeBoundText?: boolean) => [number, number, number, number, number, number];
126
- static moveFixedSegment(linearElement: LinearElementEditor, index: number, x: number, y: number, scene: Scene): LinearElementEditor;
127
- static deleteFixedSegment(element: ExcalidrawElbowArrowElement, scene: Scene, index: number): void;
128
- }
129
- export {};
1
+ import { type GlobalPoint, type LocalPoint } from "@excalidraw/math";
2
+ import type { Store } from "@excalidraw/element/store";
3
+ import type { AppState, PointerCoords, InteractiveCanvasAppState, AppClassProperties, NullableGridSize, Zoom } from "@excalidraw/excalidraw/types";
4
+ import type Scene from "./Scene";
5
+ import type { Bounds } from "./bounds";
6
+ import type { NonDeleted, ExcalidrawLinearElement, ExcalidrawElement, PointBinding, ExcalidrawBindableElement, ExcalidrawTextElementWithContainer, ElementsMap, NonDeletedSceneElementsMap, ExcalidrawElbowArrowElement, PointsPositionUpdates } from "./types";
7
+ declare const editorMidPointsCache: {
8
+ version: number | null;
9
+ points: (GlobalPoint | null)[];
10
+ zoom: number | null;
11
+ };
12
+ export declare class LinearElementEditor {
13
+ readonly elementId: ExcalidrawElement["id"] & {
14
+ _brand: "excalidrawLinearElementId";
15
+ };
16
+ /** indices */
17
+ readonly selectedPointsIndices: readonly number[] | null;
18
+ readonly pointerDownState: Readonly<{
19
+ prevSelectedPointsIndices: readonly number[] | null;
20
+ /** index */
21
+ lastClickedPoint: number;
22
+ lastClickedIsEndPoint: boolean;
23
+ origin: Readonly<{
24
+ x: number;
25
+ y: number;
26
+ }> | null;
27
+ segmentMidpoint: {
28
+ value: GlobalPoint | null;
29
+ index: number | null;
30
+ added: boolean;
31
+ };
32
+ }>;
33
+ /** whether you're dragging a point */
34
+ readonly isDragging: boolean;
35
+ readonly lastUncommittedPoint: LocalPoint | null;
36
+ readonly pointerOffset: Readonly<{
37
+ x: number;
38
+ y: number;
39
+ }>;
40
+ readonly startBindingElement: ExcalidrawBindableElement | null | "keep";
41
+ readonly endBindingElement: ExcalidrawBindableElement | null | "keep";
42
+ readonly hoverPointIndex: number;
43
+ readonly segmentMidPointHoveredCoords: GlobalPoint | null;
44
+ readonly elbowed: boolean;
45
+ constructor(element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap);
46
+ static POINT_HANDLE_SIZE: number;
47
+ /**
48
+ * @param id the `elementId` from the instance of this class (so that we can
49
+ * statically guarantee this method returns an ExcalidrawLinearElement)
50
+ */
51
+ static getElement<T extends ExcalidrawLinearElement>(id: InstanceType<typeof LinearElementEditor>["elementId"], elementsMap: ElementsMap): T | null;
52
+ static handleBoxSelection(event: PointerEvent, appState: AppState, setState: React.Component<any, AppState>["setState"], elementsMap: NonDeletedSceneElementsMap): false | undefined;
53
+ /**
54
+ * @returns whether point was dragged
55
+ */
56
+ static handlePointDragging(event: PointerEvent, app: AppClassProperties, scenePointerX: number, scenePointerY: number, maybeSuggestBinding: (element: NonDeleted<ExcalidrawLinearElement>, pointSceneCoords: {
57
+ x: number;
58
+ y: number;
59
+ }[]) => void, linearElementEditor: LinearElementEditor, scene: Scene): LinearElementEditor | null;
60
+ static handlePointerUp(event: PointerEvent, editingLinearElement: LinearElementEditor, appState: AppState, scene: Scene): LinearElementEditor;
61
+ static getEditorMidPoints: (element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap, appState: InteractiveCanvasAppState) => (typeof editorMidPointsCache)["points"];
62
+ static updateEditorMidPointsCache: (element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap, appState: InteractiveCanvasAppState) => void;
63
+ static getSegmentMidpointHitCoords: (linearElementEditor: LinearElementEditor, scenePointer: {
64
+ x: number;
65
+ y: number;
66
+ }, appState: AppState, elementsMap: ElementsMap) => GlobalPoint | null;
67
+ static isSegmentTooShort<P extends GlobalPoint | LocalPoint>(element: NonDeleted<ExcalidrawLinearElement>, startPoint: P, endPoint: P, index: number, zoom: Zoom): boolean;
68
+ static getSegmentMidPoint(element: NonDeleted<ExcalidrawLinearElement>, startPoint: GlobalPoint, endPoint: GlobalPoint, endPointIndex: number, elementsMap: ElementsMap): GlobalPoint;
69
+ static getSegmentMidPointIndex(linearElementEditor: LinearElementEditor, appState: AppState, midPoint: GlobalPoint, elementsMap: ElementsMap): number;
70
+ static handlePointerDown(event: React.PointerEvent<HTMLElement>, app: AppClassProperties, store: Store, scenePointer: {
71
+ x: number;
72
+ y: number;
73
+ }, linearElementEditor: LinearElementEditor, scene: Scene): {
74
+ didAddPoint: boolean;
75
+ hitElement: NonDeleted<ExcalidrawElement> | null;
76
+ linearElementEditor: LinearElementEditor | null;
77
+ };
78
+ static arePointsEqual<Point extends LocalPoint | GlobalPoint>(point1: Point | null, point2: Point | null): boolean;
79
+ static handlePointerMove(event: React.PointerEvent<HTMLCanvasElement>, scenePointerX: number, scenePointerY: number, app: AppClassProperties): LinearElementEditor | null;
80
+ /** scene coords */
81
+ static getPointGlobalCoordinates(element: NonDeleted<ExcalidrawLinearElement>, p: LocalPoint, elementsMap: ElementsMap): GlobalPoint;
82
+ /** scene coords */
83
+ static getPointsGlobalCoordinates(element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap): GlobalPoint[];
84
+ static getPointAtIndexGlobalCoordinates(element: NonDeleted<ExcalidrawLinearElement>, indexMaybeFromEnd: number, // -1 for last element
85
+ elementsMap: ElementsMap): GlobalPoint;
86
+ static pointFromAbsoluteCoords(element: NonDeleted<ExcalidrawLinearElement>, absoluteCoords: GlobalPoint, elementsMap: ElementsMap): LocalPoint;
87
+ static getPointIndexUnderCursor(element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap, zoom: AppState["zoom"], x: number, y: number): number;
88
+ static createPointAt(element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap, scenePointerX: number, scenePointerY: number, gridSize: NullableGridSize): LocalPoint;
89
+ /**
90
+ * Normalizes line points so that the start point is at [0,0]. This is
91
+ * expected in various parts of the codebase. Also returns new x/y to account
92
+ * for the potential normalization.
93
+ */
94
+ static getNormalizedPoints(element: ExcalidrawLinearElement): {
95
+ points: LocalPoint[];
96
+ x: number;
97
+ y: number;
98
+ };
99
+ static normalizePoints(element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap): void;
100
+ static duplicateSelectedPoints(appState: AppState, scene: Scene): AppState;
101
+ static deletePoints(element: NonDeleted<ExcalidrawLinearElement>, scene: Scene, pointIndices: readonly number[]): void;
102
+ static addPoints(element: NonDeleted<ExcalidrawLinearElement>, scene: Scene, targetPoints: {
103
+ point: LocalPoint;
104
+ }[]): void;
105
+ static movePoints(element: NonDeleted<ExcalidrawLinearElement>, scene: Scene, pointUpdates: PointsPositionUpdates, otherUpdates?: {
106
+ startBinding?: PointBinding | null;
107
+ endBinding?: PointBinding | null;
108
+ }): void;
109
+ static shouldAddMidpoint(linearElementEditor: LinearElementEditor, pointerCoords: PointerCoords, appState: AppState, elementsMap: ElementsMap): boolean;
110
+ static addMidpoint(linearElementEditor: LinearElementEditor, pointerCoords: PointerCoords, app: AppClassProperties, snapToGrid: boolean, scene: Scene): {
111
+ pointerDownState: LinearElementEditor["pointerDownState"];
112
+ selectedPointsIndices: LinearElementEditor["selectedPointsIndices"];
113
+ } | undefined;
114
+ private static _updatePoints;
115
+ private static _getShiftLockedDelta;
116
+ static getBoundTextElementPosition: (element: ExcalidrawLinearElement, boundTextElement: ExcalidrawTextElementWithContainer, elementsMap: ElementsMap) => {
117
+ x: number;
118
+ y: number;
119
+ };
120
+ static getMinMaxXYWithBoundText: (element: ExcalidrawLinearElement, elementsMap: ElementsMap, elementBounds: Bounds, boundTextElement: ExcalidrawTextElementWithContainer) => [number, number, number, number, number, number];
121
+ static getElementAbsoluteCoords: (element: ExcalidrawLinearElement, elementsMap: ElementsMap, includeBoundText?: boolean) => [number, number, number, number, number, number];
122
+ static moveFixedSegment(linearElement: LinearElementEditor, index: number, x: number, y: number, scene: Scene): LinearElementEditor;
123
+ static deleteFixedSegment(element: ExcalidrawElbowArrowElement, scene: Scene, index: number): void;
124
+ }
125
+ export {};
@@ -1,21 +1,21 @@
1
- import type { Mutable } from "@excalidraw/common/utility-types";
2
- import type { ElementsMap, ExcalidrawElement } from "./types";
3
- export type ElementUpdate<TElement extends ExcalidrawElement> = Omit<Partial<TElement>, "id" | "version" | "versionNonce" | "updated">;
4
- /**
5
- * This function tracks updates of text elements for the purposes for collaboration.
6
- * The version is used to compare updates when more than one user is working in
7
- * the same drawing.
8
- *
9
- * WARNING: this won't trigger the component to update, so if you need to trigger component update,
10
- * use `scene.mutateElement` or `ExcalidrawImperativeAPI.mutateElement` instead.
11
- */
12
- export declare const mutateElement: <TElement extends Mutable<ExcalidrawElement>>(element: TElement, elementsMap: ElementsMap, updates: ElementUpdate<TElement>, options?: {
13
- isDragging?: boolean;
14
- }) => TElement;
15
- export declare const newElementWith: <TElement extends ExcalidrawElement>(element: TElement, updates: ElementUpdate<TElement>, force?: boolean) => TElement;
16
- /**
17
- * Mutates element, bumping `version`, `versionNonce`, and `updated`.
18
- *
19
- * NOTE: does not trigger re-render.
20
- */
21
- export declare const bumpVersion: <T extends Mutable<ExcalidrawElement>>(element: T, version?: ExcalidrawElement["version"]) => T;
1
+ import type { Mutable } from "@excalidraw/common/utility-types";
2
+ import type { ElementsMap, ExcalidrawElement } from "./types";
3
+ export type ElementUpdate<TElement extends ExcalidrawElement> = Omit<Partial<TElement>, "id" | "version" | "versionNonce" | "updated">;
4
+ /**
5
+ * This function tracks updates of text elements for the purposes for collaboration.
6
+ * The version is used to compare updates when more than one user is working in
7
+ * the same drawing.
8
+ *
9
+ * WARNING: this won't trigger the component to update, so if you need to trigger component update,
10
+ * use `scene.mutateElement` or `ExcalidrawImperativeAPI.mutateElement` instead.
11
+ */
12
+ export declare const mutateElement: <TElement extends Mutable<ExcalidrawElement>>(element: TElement, elementsMap: ElementsMap, updates: ElementUpdate<TElement>, options?: {
13
+ isDragging?: boolean;
14
+ }) => TElement;
15
+ export declare const newElementWith: <TElement extends ExcalidrawElement>(element: TElement, updates: ElementUpdate<TElement>, force?: boolean) => TElement;
16
+ /**
17
+ * Mutates element, bumping `version`, `versionNonce`, and `updated`.
18
+ *
19
+ * NOTE: does not trigger re-render.
20
+ */
21
+ export declare const bumpVersion: <T extends Mutable<ExcalidrawElement>>(element: T, version?: ExcalidrawElement["version"]) => T;
@@ -1,62 +1,62 @@
1
- import type { MarkOptional } from "@excalidraw/common/utility-types";
2
- import type { ExcalidrawImageElement, ExcalidrawTextElement, ExcalidrawLinearElement, ExcalidrawGenericElement, NonDeleted, TextAlign, VerticalAlign, Arrowhead, ExcalidrawFreeDrawElement, FontFamilyValues, ExcalidrawTextContainer, ExcalidrawFrameElement, ExcalidrawEmbeddableElement, ExcalidrawMagicFrameElement, ExcalidrawIframeElement, ElementsMap, ExcalidrawArrowElement, ExcalidrawElbowArrowElement } from "./types";
3
- export type ElementConstructorOpts = MarkOptional<Omit<ExcalidrawGenericElement, "id" | "type" | "isDeleted" | "updated">, "width" | "height" | "angle" | "groupIds" | "frameId" | "index" | "boundElements" | "seed" | "version" | "versionNonce" | "link" | "strokeStyle" | "fillStyle" | "strokeColor" | "backgroundColor" | "roughness" | "strokeWidth" | "roundness" | "locked" | "opacity" | "customData">;
4
- export declare const newElement: (opts: {
5
- type: ExcalidrawGenericElement["type"];
6
- } & ElementConstructorOpts) => NonDeleted<ExcalidrawGenericElement>;
7
- export declare const newEmbeddableElement: (opts: {
8
- type: "embeddable";
9
- } & ElementConstructorOpts) => NonDeleted<ExcalidrawEmbeddableElement>;
10
- export declare const newIframeElement: (opts: {
11
- type: "iframe";
12
- } & ElementConstructorOpts) => NonDeleted<ExcalidrawIframeElement>;
13
- export declare const newFrameElement: (opts: {
14
- name?: string;
15
- } & ElementConstructorOpts) => NonDeleted<ExcalidrawFrameElement>;
16
- export declare const newMagicFrameElement: (opts: {
17
- name?: string;
18
- } & ElementConstructorOpts) => NonDeleted<ExcalidrawMagicFrameElement>;
19
- export declare const newTextElement: (opts: {
20
- text: string;
21
- rawText: string;
22
- originalText?: string;
23
- fontSize?: number;
24
- fontFamily?: FontFamilyValues;
25
- textAlign?: TextAlign;
26
- verticalAlign?: VerticalAlign;
27
- containerId?: ExcalidrawTextContainer["id"] | null;
28
- lineHeight?: ExcalidrawTextElement["lineHeight"];
29
- autoResize?: ExcalidrawTextElement["autoResize"];
30
- } & ElementConstructorOpts) => NonDeleted<ExcalidrawTextElement>;
31
- export declare const refreshTextDimensions: (textElement: ExcalidrawTextElement, container: ExcalidrawTextContainer | null, elementsMap: ElementsMap, text?: string) => {
32
- x: number;
33
- y: number;
34
- width: number;
35
- height: number;
36
- text: string;
37
- } | undefined;
38
- export declare const newFreeDrawElement: (opts: {
39
- type: "freedraw";
40
- points?: ExcalidrawFreeDrawElement["points"];
41
- simulatePressure: boolean;
42
- pressures?: ExcalidrawFreeDrawElement["pressures"];
43
- } & ElementConstructorOpts) => NonDeleted<ExcalidrawFreeDrawElement>;
44
- export declare const newLinearElement: (opts: {
45
- type: ExcalidrawLinearElement["type"];
46
- points?: ExcalidrawLinearElement["points"];
47
- } & ElementConstructorOpts) => NonDeleted<ExcalidrawLinearElement>;
48
- export declare const newArrowElement: <T extends boolean>(opts: {
49
- type: ExcalidrawArrowElement["type"];
50
- startArrowhead?: Arrowhead | null | undefined;
51
- endArrowhead?: Arrowhead | null | undefined;
52
- points?: readonly import("@excalidraw/math").LocalPoint[] | undefined;
53
- elbowed?: T | undefined;
54
- fixedSegments?: readonly import("./types").FixedSegment[] | null | undefined;
55
- } & Omit<Omit<ExcalidrawGenericElement, "id" | "isDeleted" | "updated" | "type">, "link" | "angle" | "strokeColor" | "backgroundColor" | "fillStyle" | "strokeWidth" | "strokeStyle" | "roundness" | "roughness" | "opacity" | "width" | "height" | "seed" | "version" | "versionNonce" | "index" | "groupIds" | "frameId" | "boundElements" | "locked" | "customData"> & Partial<Pick<Omit<ExcalidrawGenericElement, "id" | "isDeleted" | "updated" | "type">, "link" | "angle" | "strokeColor" | "backgroundColor" | "fillStyle" | "strokeWidth" | "strokeStyle" | "roundness" | "roughness" | "opacity" | "width" | "height" | "seed" | "version" | "versionNonce" | "index" | "groupIds" | "frameId" | "boundElements" | "locked" | "customData">>) => T extends true ? NonDeleted<ExcalidrawElbowArrowElement> : NonDeleted<ExcalidrawArrowElement>;
56
- export declare const newImageElement: (opts: {
57
- type: ExcalidrawImageElement["type"];
58
- status?: ExcalidrawImageElement["status"];
59
- fileId?: ExcalidrawImageElement["fileId"];
60
- scale?: ExcalidrawImageElement["scale"];
61
- crop?: ExcalidrawImageElement["crop"];
62
- } & ElementConstructorOpts) => NonDeleted<ExcalidrawImageElement>;
1
+ import type { MarkOptional } from "@excalidraw/common/utility-types";
2
+ import type { ExcalidrawImageElement, ExcalidrawTextElement, ExcalidrawLinearElement, ExcalidrawGenericElement, NonDeleted, TextAlign, VerticalAlign, Arrowhead, ExcalidrawFreeDrawElement, FontFamilyValues, ExcalidrawTextContainer, ExcalidrawFrameElement, ExcalidrawEmbeddableElement, ExcalidrawMagicFrameElement, ExcalidrawIframeElement, ElementsMap, ExcalidrawArrowElement, ExcalidrawElbowArrowElement } from "./types";
3
+ export type ElementConstructorOpts = MarkOptional<Omit<ExcalidrawGenericElement, "id" | "type" | "isDeleted" | "updated">, "width" | "height" | "angle" | "groupIds" | "frameId" | "index" | "boundElements" | "seed" | "version" | "versionNonce" | "link" | "strokeStyle" | "fillStyle" | "strokeColor" | "backgroundColor" | "roughness" | "strokeWidth" | "roundness" | "locked" | "opacity" | "customData">;
4
+ export declare const newElement: (opts: {
5
+ type: ExcalidrawGenericElement["type"];
6
+ } & ElementConstructorOpts) => NonDeleted<ExcalidrawGenericElement>;
7
+ export declare const newEmbeddableElement: (opts: {
8
+ type: "embeddable";
9
+ } & ElementConstructorOpts) => NonDeleted<ExcalidrawEmbeddableElement>;
10
+ export declare const newIframeElement: (opts: {
11
+ type: "iframe";
12
+ } & ElementConstructorOpts) => NonDeleted<ExcalidrawIframeElement>;
13
+ export declare const newFrameElement: (opts: {
14
+ name?: string;
15
+ } & ElementConstructorOpts) => NonDeleted<ExcalidrawFrameElement>;
16
+ export declare const newMagicFrameElement: (opts: {
17
+ name?: string;
18
+ } & ElementConstructorOpts) => NonDeleted<ExcalidrawMagicFrameElement>;
19
+ export declare const newTextElement: (opts: {
20
+ text: string;
21
+ rawText: string;
22
+ originalText?: string;
23
+ fontSize?: number;
24
+ fontFamily?: FontFamilyValues;
25
+ textAlign?: TextAlign;
26
+ verticalAlign?: VerticalAlign;
27
+ containerId?: ExcalidrawTextContainer["id"] | null;
28
+ lineHeight?: ExcalidrawTextElement["lineHeight"];
29
+ autoResize?: ExcalidrawTextElement["autoResize"];
30
+ } & ElementConstructorOpts) => NonDeleted<ExcalidrawTextElement>;
31
+ export declare const refreshTextDimensions: (textElement: ExcalidrawTextElement, container: ExcalidrawTextContainer | null, elementsMap: ElementsMap, text?: string) => {
32
+ x: number;
33
+ y: number;
34
+ width: number;
35
+ height: number;
36
+ text: string;
37
+ } | undefined;
38
+ export declare const newFreeDrawElement: (opts: {
39
+ type: "freedraw";
40
+ points?: ExcalidrawFreeDrawElement["points"];
41
+ simulatePressure: boolean;
42
+ pressures?: ExcalidrawFreeDrawElement["pressures"];
43
+ } & ElementConstructorOpts) => NonDeleted<ExcalidrawFreeDrawElement>;
44
+ export declare const newLinearElement: (opts: {
45
+ type: ExcalidrawLinearElement["type"];
46
+ points?: ExcalidrawLinearElement["points"];
47
+ } & ElementConstructorOpts) => NonDeleted<ExcalidrawLinearElement>;
48
+ export declare const newArrowElement: <T extends boolean>(opts: {
49
+ type: ExcalidrawArrowElement["type"];
50
+ startArrowhead?: Arrowhead | null | undefined;
51
+ endArrowhead?: Arrowhead | null | undefined;
52
+ points?: readonly import("@excalidraw/math").LocalPoint[] | undefined;
53
+ elbowed?: T | undefined;
54
+ fixedSegments?: readonly import("./types").FixedSegment[] | null | undefined;
55
+ } & Omit<Omit<ExcalidrawGenericElement, "id" | "isDeleted" | "updated" | "type">, "link" | "angle" | "strokeColor" | "backgroundColor" | "fillStyle" | "strokeWidth" | "strokeStyle" | "roundness" | "roughness" | "opacity" | "width" | "height" | "seed" | "version" | "versionNonce" | "index" | "groupIds" | "frameId" | "boundElements" | "locked" | "customData"> & Partial<Pick<Omit<ExcalidrawGenericElement, "id" | "isDeleted" | "updated" | "type">, "link" | "angle" | "strokeColor" | "backgroundColor" | "fillStyle" | "strokeWidth" | "strokeStyle" | "roundness" | "roughness" | "opacity" | "width" | "height" | "seed" | "version" | "versionNonce" | "index" | "groupIds" | "frameId" | "boundElements" | "locked" | "customData">>) => T extends true ? NonDeleted<ExcalidrawElbowArrowElement> : NonDeleted<ExcalidrawArrowElement>;
56
+ export declare const newImageElement: (opts: {
57
+ type: ExcalidrawImageElement["type"];
58
+ status?: ExcalidrawImageElement["status"];
59
+ fileId?: ExcalidrawImageElement["fileId"];
60
+ scale?: ExcalidrawImageElement["scale"];
61
+ crop?: ExcalidrawImageElement["crop"];
62
+ } & ElementConstructorOpts) => NonDeleted<ExcalidrawImageElement>;
@@ -1,28 +1,28 @@
1
- import type { AppState, StaticCanvasAppState, InteractiveCanvasAppState, ElementsPendingErasure, PendingExcalidrawElements } from "@excalidraw/excalidraw/types";
2
- import type { StaticCanvasRenderConfig, RenderableElementsMap, InteractiveCanvasRenderConfig } from "@excalidraw/excalidraw/scene/types";
3
- import type { ExcalidrawElement, ExcalidrawTextElement, NonDeletedExcalidrawElement, ExcalidrawFreeDrawElement, ExcalidrawImageElement, ExcalidrawFrameLikeElement, NonDeletedSceneElementsMap } from "./types";
4
- import type { RoughCanvas } from "roughjs/bin/canvas";
5
- export declare const IMAGE_INVERT_FILTER = "invert(100%) hue-rotate(180deg) saturate(1.25)";
6
- export declare const getRenderOpacity: (element: ExcalidrawElement, containingFrame: ExcalidrawFrameLikeElement | null, elementsPendingErasure: ElementsPendingErasure, pendingNodes: Readonly<PendingExcalidrawElements> | null, globalAlpha?: number) => number;
7
- export interface ExcalidrawElementWithCanvas {
8
- element: ExcalidrawElement | ExcalidrawTextElement;
9
- canvas: HTMLCanvasElement;
10
- theme: AppState["theme"];
11
- scale: number;
12
- angle: number;
13
- zoomValue: AppState["zoom"]["value"];
14
- canvasOffsetX: number;
15
- canvasOffsetY: number;
16
- boundTextElementVersion: number | null;
17
- imageCrop: ExcalidrawImageElement["crop"] | null;
18
- containingFrameOpacity: number;
19
- boundTextCanvas: HTMLCanvasElement;
20
- }
21
- export declare const DEFAULT_LINK_SIZE = 14;
22
- export declare const elementWithCanvasCache: WeakMap<ExcalidrawElement, ExcalidrawElementWithCanvas>;
23
- export declare const renderSelectionElement: (element: NonDeletedExcalidrawElement, context: CanvasRenderingContext2D, appState: InteractiveCanvasAppState, selectionColor: InteractiveCanvasRenderConfig["selectionColor"]) => void;
24
- export declare const renderElement: (element: NonDeletedExcalidrawElement, elementsMap: RenderableElementsMap, allElementsMap: NonDeletedSceneElementsMap, rc: RoughCanvas, context: CanvasRenderingContext2D, renderConfig: StaticCanvasRenderConfig, appState: StaticCanvasAppState) => void;
25
- export declare const pathsCache: WeakMap<ExcalidrawFreeDrawElement, Path2D>;
26
- export declare function generateFreeDrawShape(element: ExcalidrawFreeDrawElement): Path2D;
27
- export declare function getFreeDrawPath2D(element: ExcalidrawFreeDrawElement): Path2D | undefined;
28
- export declare function getFreeDrawSvgPath(element: ExcalidrawFreeDrawElement): string;
1
+ import type { AppState, StaticCanvasAppState, InteractiveCanvasAppState, ElementsPendingErasure, PendingExcalidrawElements } from "@excalidraw/excalidraw/types";
2
+ import type { StaticCanvasRenderConfig, RenderableElementsMap, InteractiveCanvasRenderConfig } from "@excalidraw/excalidraw/scene/types";
3
+ import type { ExcalidrawElement, ExcalidrawTextElement, NonDeletedExcalidrawElement, ExcalidrawFreeDrawElement, ExcalidrawImageElement, ExcalidrawFrameLikeElement, NonDeletedSceneElementsMap } from "./types";
4
+ import type { RoughCanvas } from "roughjs/bin/canvas";
5
+ export declare const IMAGE_INVERT_FILTER = "invert(100%) hue-rotate(180deg) saturate(1.25)";
6
+ export declare const getRenderOpacity: (element: ExcalidrawElement, containingFrame: ExcalidrawFrameLikeElement | null, elementsPendingErasure: ElementsPendingErasure, pendingNodes: Readonly<PendingExcalidrawElements> | null, globalAlpha?: number) => number;
7
+ export interface ExcalidrawElementWithCanvas {
8
+ element: ExcalidrawElement | ExcalidrawTextElement;
9
+ canvas: HTMLCanvasElement;
10
+ theme: AppState["theme"];
11
+ scale: number;
12
+ angle: number;
13
+ zoomValue: AppState["zoom"]["value"];
14
+ canvasOffsetX: number;
15
+ canvasOffsetY: number;
16
+ boundTextElementVersion: number | null;
17
+ imageCrop: ExcalidrawImageElement["crop"] | null;
18
+ containingFrameOpacity: number;
19
+ boundTextCanvas: HTMLCanvasElement;
20
+ }
21
+ export declare const DEFAULT_LINK_SIZE = 14;
22
+ export declare const elementWithCanvasCache: WeakMap<ExcalidrawElement, ExcalidrawElementWithCanvas>;
23
+ export declare const renderSelectionElement: (element: NonDeletedExcalidrawElement, context: CanvasRenderingContext2D, appState: InteractiveCanvasAppState, selectionColor: InteractiveCanvasRenderConfig["selectionColor"]) => void;
24
+ export declare const renderElement: (element: NonDeletedExcalidrawElement, elementsMap: RenderableElementsMap, allElementsMap: NonDeletedSceneElementsMap, rc: RoughCanvas, context: CanvasRenderingContext2D, renderConfig: StaticCanvasRenderConfig, appState: StaticCanvasAppState) => void;
25
+ export declare const pathsCache: WeakMap<ExcalidrawFreeDrawElement, Path2D>;
26
+ export declare function generateFreeDrawShape(element: ExcalidrawFreeDrawElement): Path2D;
27
+ export declare function getFreeDrawPath2D(element: ExcalidrawFreeDrawElement): Path2D | undefined;
28
+ export declare function getFreeDrawSvgPath(element: ExcalidrawFreeDrawElement): string;
@@ -1,38 +1,38 @@
1
- import { type LocalPoint } from "@excalidraw/math";
2
- import type { PointerDownState } from "@excalidraw/excalidraw/types";
3
- import type Scene from "./Scene";
4
- import type { BoundingBox } from "./bounds";
5
- import type { MaybeTransformHandleType, TransformHandleDirection } from "./transformHandles";
6
- import type { ExcalidrawLinearElement, ExcalidrawTextElement, NonDeletedExcalidrawElement, NonDeleted, ExcalidrawElement, ElementsMap } from "./types";
7
- export declare const transformElements: (originalElements: PointerDownState["originalElements"], transformHandleType: MaybeTransformHandleType, selectedElements: readonly NonDeletedExcalidrawElement[], scene: Scene, shouldRotateWithDiscreteAngle: boolean, shouldResizeFromCenter: boolean, shouldMaintainAspectRatio: boolean, pointerX: number, pointerY: number, centerX: number, centerY: number) => boolean;
8
- export declare const rescalePointsInElement: (element: NonDeletedExcalidrawElement, width: number, height: number, normalizePoints: boolean) => {
9
- points: LocalPoint[];
10
- } | {
11
- points?: undefined;
12
- };
13
- export declare const measureFontSizeFromWidth: (element: NonDeleted<ExcalidrawTextElement>, elementsMap: ElementsMap, nextWidth: number) => {
14
- size: number;
15
- } | null;
16
- export declare const getResizeOffsetXY: (transformHandleType: MaybeTransformHandleType, selectedElements: NonDeletedExcalidrawElement[], elementsMap: ElementsMap, x: number, y: number) => [number, number];
17
- export declare const getResizeArrowDirection: (transformHandleType: MaybeTransformHandleType, element: NonDeleted<ExcalidrawLinearElement>) => "origin" | "end";
18
- export declare const resizeSingleElement: (nextWidth: number, nextHeight: number, latestElement: ExcalidrawElement, origElement: ExcalidrawElement, originalElementsMap: ElementsMap, scene: Scene, handleDirection: TransformHandleDirection, { shouldInformMutation, shouldMaintainAspectRatio, shouldResizeFromCenter, }?: {
19
- shouldMaintainAspectRatio?: boolean | undefined;
20
- shouldResizeFromCenter?: boolean | undefined;
21
- shouldInformMutation?: boolean | undefined;
22
- }) => void;
23
- export declare const getNextSingleWidthAndHeightFromPointer: (latestElement: ExcalidrawElement, origElement: ExcalidrawElement, handleDirection: TransformHandleDirection, pointerX: number, pointerY: number, { shouldMaintainAspectRatio, shouldResizeFromCenter, }?: {
24
- shouldMaintainAspectRatio?: boolean | undefined;
25
- shouldResizeFromCenter?: boolean | undefined;
26
- }) => {
27
- nextWidth: number;
28
- nextHeight: number;
29
- };
30
- export declare const resizeMultipleElements: (selectedElements: readonly NonDeletedExcalidrawElement[], elementsMap: ElementsMap, handleDirection: TransformHandleDirection, scene: Scene, originalElementsMap: ElementsMap, { shouldMaintainAspectRatio, shouldResizeFromCenter, flipByX, flipByY, nextHeight, nextWidth, originalBoundingBox, }?: {
31
- nextWidth?: number | undefined;
32
- nextHeight?: number | undefined;
33
- shouldMaintainAspectRatio?: boolean | undefined;
34
- shouldResizeFromCenter?: boolean | undefined;
35
- flipByX?: boolean | undefined;
36
- flipByY?: boolean | undefined;
37
- originalBoundingBox?: BoundingBox | undefined;
38
- }) => void;
1
+ import { type LocalPoint } from "@excalidraw/math";
2
+ import type { PointerDownState } from "@excalidraw/excalidraw/types";
3
+ import type Scene from "./Scene";
4
+ import type { BoundingBox } from "./bounds";
5
+ import type { MaybeTransformHandleType, TransformHandleDirection } from "./transformHandles";
6
+ import type { ExcalidrawLinearElement, ExcalidrawTextElement, NonDeletedExcalidrawElement, NonDeleted, ExcalidrawElement, ElementsMap } from "./types";
7
+ export declare const transformElements: (originalElements: PointerDownState["originalElements"], transformHandleType: MaybeTransformHandleType, selectedElements: readonly NonDeletedExcalidrawElement[], scene: Scene, shouldRotateWithDiscreteAngle: boolean, shouldResizeFromCenter: boolean, shouldMaintainAspectRatio: boolean, pointerX: number, pointerY: number, centerX: number, centerY: number) => boolean;
8
+ export declare const rescalePointsInElement: (element: NonDeletedExcalidrawElement, width: number, height: number, normalizePoints: boolean) => {
9
+ points: LocalPoint[];
10
+ } | {
11
+ points?: undefined;
12
+ };
13
+ export declare const measureFontSizeFromWidth: (element: NonDeleted<ExcalidrawTextElement>, elementsMap: ElementsMap, nextWidth: number) => {
14
+ size: number;
15
+ } | null;
16
+ export declare const getResizeOffsetXY: (transformHandleType: MaybeTransformHandleType, selectedElements: NonDeletedExcalidrawElement[], elementsMap: ElementsMap, x: number, y: number) => [number, number];
17
+ export declare const getResizeArrowDirection: (transformHandleType: MaybeTransformHandleType, element: NonDeleted<ExcalidrawLinearElement>) => "origin" | "end";
18
+ export declare const resizeSingleElement: (nextWidth: number, nextHeight: number, latestElement: ExcalidrawElement, origElement: ExcalidrawElement, originalElementsMap: ElementsMap, scene: Scene, handleDirection: TransformHandleDirection, { shouldInformMutation, shouldMaintainAspectRatio, shouldResizeFromCenter, }?: {
19
+ shouldMaintainAspectRatio?: boolean | undefined;
20
+ shouldResizeFromCenter?: boolean | undefined;
21
+ shouldInformMutation?: boolean | undefined;
22
+ }) => void;
23
+ export declare const getNextSingleWidthAndHeightFromPointer: (latestElement: ExcalidrawElement, origElement: ExcalidrawElement, handleDirection: TransformHandleDirection, pointerX: number, pointerY: number, { shouldMaintainAspectRatio, shouldResizeFromCenter, }?: {
24
+ shouldMaintainAspectRatio?: boolean | undefined;
25
+ shouldResizeFromCenter?: boolean | undefined;
26
+ }) => {
27
+ nextWidth: number;
28
+ nextHeight: number;
29
+ };
30
+ export declare const resizeMultipleElements: (selectedElements: readonly NonDeletedExcalidrawElement[], elementsMap: ElementsMap, handleDirection: TransformHandleDirection, scene: Scene, originalElementsMap: ElementsMap, { shouldMaintainAspectRatio, shouldResizeFromCenter, flipByX, flipByY, nextHeight, nextWidth, originalBoundingBox, }?: {
31
+ nextWidth?: number | undefined;
32
+ nextHeight?: number | undefined;
33
+ shouldMaintainAspectRatio?: boolean | undefined;
34
+ shouldResizeFromCenter?: boolean | undefined;
35
+ flipByX?: boolean | undefined;
36
+ flipByY?: boolean | undefined;
37
+ originalBoundingBox?: BoundingBox | undefined;
38
+ }) => void;
@@ -1,15 +1,15 @@
1
- import type { GlobalPoint, LocalPoint } from "@excalidraw/math";
2
- import type { AppState, Device, Zoom } from "@excalidraw/excalidraw/types";
3
- import type { Bounds } from "./bounds";
4
- import type { MaybeTransformHandleType } from "./transformHandles";
5
- import type { ExcalidrawElement, PointerType, NonDeletedExcalidrawElement, ElementsMap } from "./types";
6
- export declare const resizeTest: <Point extends GlobalPoint | LocalPoint>(element: NonDeletedExcalidrawElement, elementsMap: ElementsMap, appState: AppState, x: number, y: number, zoom: Zoom, pointerType: PointerType, device: Device) => MaybeTransformHandleType;
7
- export declare const getElementWithTransformHandleType: (elements: readonly NonDeletedExcalidrawElement[], appState: AppState, scenePointerX: number, scenePointerY: number, zoom: Zoom, pointerType: PointerType, elementsMap: ElementsMap, device: Device) => {
8
- element: NonDeletedExcalidrawElement;
9
- transformHandleType: MaybeTransformHandleType;
10
- } | null;
11
- export declare const getTransformHandleTypeFromCoords: <Point extends GlobalPoint | LocalPoint>([x1, y1, x2, y2]: Bounds, scenePointerX: number, scenePointerY: number, zoom: Zoom, pointerType: PointerType, device: Device) => MaybeTransformHandleType;
12
- export declare const getCursorForResizingElement: (resizingElement: {
13
- element?: ExcalidrawElement;
14
- transformHandleType: MaybeTransformHandleType;
15
- }) => string;
1
+ import type { GlobalPoint, LocalPoint } from "@excalidraw/math";
2
+ import type { AppState, Device, Zoom } from "@excalidraw/excalidraw/types";
3
+ import type { Bounds } from "./bounds";
4
+ import type { MaybeTransformHandleType } from "./transformHandles";
5
+ import type { ExcalidrawElement, PointerType, NonDeletedExcalidrawElement, ElementsMap } from "./types";
6
+ export declare const resizeTest: <Point extends GlobalPoint | LocalPoint>(element: NonDeletedExcalidrawElement, elementsMap: ElementsMap, appState: AppState, x: number, y: number, zoom: Zoom, pointerType: PointerType, device: Device) => MaybeTransformHandleType;
7
+ export declare const getElementWithTransformHandleType: (elements: readonly NonDeletedExcalidrawElement[], appState: AppState, scenePointerX: number, scenePointerY: number, zoom: Zoom, pointerType: PointerType, elementsMap: ElementsMap, device: Device) => {
8
+ element: NonDeletedExcalidrawElement;
9
+ transformHandleType: MaybeTransformHandleType;
10
+ } | null;
11
+ export declare const getTransformHandleTypeFromCoords: <Point extends GlobalPoint | LocalPoint>([x1, y1, x2, y2]: Bounds, scenePointerX: number, scenePointerY: number, zoom: Zoom, pointerType: PointerType, device: Device) => MaybeTransformHandleType;
12
+ export declare const getCursorForResizingElement: (resizingElement: {
13
+ element?: ExcalidrawElement;
14
+ transformHandleType: MaybeTransformHandleType;
15
+ }) => string;