@zsviczian/excalidraw 0.17.6-24 → 0.17.6-26

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 (395) hide show
  1. package/dist/excalidraw.development.js +112 -112
  2. package/dist/excalidraw.production.min.js +1 -1
  3. package/dist/styles.development.css +18 -48
  4. package/dist/styles.production.css +3 -3
  5. package/package.json +1 -1
  6. package/types/excalidraw/actions/actionAddToLibrary.d.ts +629 -629
  7. package/types/excalidraw/actions/actionAlign.d.ts +108 -108
  8. package/types/excalidraw/actions/actionBoundText.d.ts +456 -456
  9. package/types/excalidraw/actions/actionCanvas.d.ts +3070 -3070
  10. package/types/excalidraw/actions/actionClipboard.d.ts +1374 -1370
  11. package/types/excalidraw/actions/actionCropEditor.d.ts +222 -222
  12. package/types/excalidraw/actions/actionDeleteSelected.d.ts +668 -664
  13. package/types/excalidraw/actions/actionDistribute.d.ts +34 -34
  14. package/types/excalidraw/actions/actionDuplicateSelection.d.ts +21 -21
  15. package/types/excalidraw/actions/actionElementLink.d.ts +244 -244
  16. package/types/excalidraw/actions/actionElementLock.d.ts +444 -444
  17. package/types/excalidraw/actions/actionExport.d.ts +1953 -1953
  18. package/types/excalidraw/actions/actionFinalize.d.ts +425 -425
  19. package/types/excalidraw/actions/actionFlip.d.ts +34 -34
  20. package/types/excalidraw/actions/actionFrame.d.ts +1383 -887
  21. package/types/excalidraw/actions/actionGroup.d.ts +454 -454
  22. package/types/excalidraw/actions/actionHistory.d.ts +7 -7
  23. package/types/excalidraw/actions/actionLinearEditor.d.ts +223 -223
  24. package/types/excalidraw/actions/actionLink.d.ts +223 -223
  25. package/types/excalidraw/actions/actionMenu.d.ts +649 -649
  26. package/types/excalidraw/actions/actionNavigate.d.ts +430 -430
  27. package/types/excalidraw/actions/actionProperties.d.ts +3276 -3276
  28. package/types/excalidraw/actions/actionSelectAll.d.ts +222 -222
  29. package/types/excalidraw/actions/actionStyles.d.ts +236 -236
  30. package/types/excalidraw/actions/actionTextAutoResize.d.ts +17 -17
  31. package/types/excalidraw/actions/actionToggleGridMode.d.ts +225 -225
  32. package/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +223 -223
  33. package/types/excalidraw/actions/actionToggleSearchMenu.d.ts +420 -420
  34. package/types/excalidraw/actions/actionToggleStats.d.ts +223 -223
  35. package/types/excalidraw/actions/actionToggleViewMode.d.ts +224 -224
  36. package/types/excalidraw/actions/actionToggleZenMode.d.ts +224 -224
  37. package/types/excalidraw/actions/actionZindex.d.ts +74 -74
  38. package/types/excalidraw/actions/index.d.ts +27 -27
  39. package/types/excalidraw/actions/manager.d.ts +21 -21
  40. package/types/excalidraw/actions/register.d.ts +5 -5
  41. package/types/excalidraw/actions/shortcuts.d.ts +4 -4
  42. package/types/excalidraw/actions/types.d.ts +46 -46
  43. package/types/excalidraw/align.d.ts +6 -6
  44. package/types/excalidraw/analytics.d.ts +1 -1
  45. package/types/excalidraw/animated-trail.d.ts +33 -33
  46. package/types/excalidraw/animation-frame-handler.d.ts +16 -16
  47. package/types/excalidraw/appState.d.ts +89 -89
  48. package/types/excalidraw/binaryheap.d.ts +12 -12
  49. package/types/excalidraw/change.d.ts +191 -191
  50. package/types/excalidraw/charts.d.ts +27 -27
  51. package/types/excalidraw/clients.d.ts +14 -14
  52. package/types/excalidraw/clipboard.d.ts +66 -66
  53. package/types/excalidraw/colors.d.ts +61 -61
  54. package/types/excalidraw/components/Actions.d.ts +34 -34
  55. package/types/excalidraw/components/ActiveConfirmDialog.d.ts +4 -4
  56. package/types/excalidraw/components/App.d.ts +551 -551
  57. package/types/excalidraw/components/Avatar.d.ts +11 -11
  58. package/types/excalidraw/components/BraveMeasureTextError.d.ts +2 -2
  59. package/types/excalidraw/components/Button.d.ts +17 -17
  60. package/types/excalidraw/components/ButtonIcon.d.ts +14 -14
  61. package/types/excalidraw/components/ButtonIconCycle.d.ts +10 -10
  62. package/types/excalidraw/components/ButtonIconSelect.d.ts +19 -19
  63. package/types/excalidraw/components/ButtonSelect.d.ts +9 -9
  64. package/types/excalidraw/components/ButtonSeparator.d.ts +1 -1
  65. package/types/excalidraw/components/Card.d.ts +6 -6
  66. package/types/excalidraw/components/CheckboxItem.d.ts +8 -8
  67. package/types/excalidraw/components/ColorPicker/ColorInput.d.ts +9 -9
  68. package/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +19 -19
  69. package/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +8 -8
  70. package/types/excalidraw/components/ColorPicker/HotkeyLabel.d.ts +8 -8
  71. package/types/excalidraw/components/ColorPicker/Picker.d.ts +18 -18
  72. package/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +10 -10
  73. package/types/excalidraw/components/ColorPicker/PickerHeading.d.ts +5 -5
  74. package/types/excalidraw/components/ColorPicker/ShadeList.d.ts +8 -8
  75. package/types/excalidraw/components/ColorPicker/TopPicks.d.ts +9 -9
  76. package/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +21 -21
  77. package/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +20 -20
  78. package/types/excalidraw/components/CommandPalette/CommandPalette.d.ts +18 -18
  79. package/types/excalidraw/components/CommandPalette/defaultCommandPaletteItems.d.ts +2 -2
  80. package/types/excalidraw/components/CommandPalette/types.d.ts +25 -25
  81. package/types/excalidraw/components/ConfirmDialog.d.ts +10 -10
  82. package/types/excalidraw/components/ContextMenu.d.ts +16 -16
  83. package/types/excalidraw/components/DarkModeToggle.d.ts +7 -7
  84. package/types/excalidraw/components/DefaultSidebar.d.ts +30 -30
  85. package/types/excalidraw/components/DiagramToCodePlugin/DiagramToCodePlugin.d.ts +4 -4
  86. package/types/excalidraw/components/Dialog.d.ts +13 -13
  87. package/types/excalidraw/components/DialogActionButton.d.ts +10 -10
  88. package/types/excalidraw/components/ElementLinkDialog.d.ts +11 -11
  89. package/types/excalidraw/components/ErrorDialog.d.ts +5 -5
  90. package/types/excalidraw/components/ExcalidrawLogo.d.ts +15 -15
  91. package/types/excalidraw/components/EyeDropper.d.ts +27 -27
  92. package/types/excalidraw/components/FilledButton.d.ts +18 -18
  93. package/types/excalidraw/components/FixedSideContainer.d.ts +9 -9
  94. package/types/excalidraw/components/FollowMode/FollowMode.d.ts +10 -10
  95. package/types/excalidraw/components/FontPicker/FontPicker.d.ts +21 -21
  96. package/types/excalidraw/components/FontPicker/FontPickerList.d.ts +25 -25
  97. package/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +6 -6
  98. package/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +13 -13
  99. package/types/excalidraw/components/HandButton.d.ts +10 -10
  100. package/types/excalidraw/components/HelpButton.d.ts +7 -7
  101. package/types/excalidraw/components/HelpDialog.d.ts +4 -4
  102. package/types/excalidraw/components/HintViewer.d.ts +10 -10
  103. package/types/excalidraw/components/IconPicker.d.ts +14 -14
  104. package/types/excalidraw/components/ImageExportDialog.d.ts +14 -14
  105. package/types/excalidraw/components/InitializeApp.d.ts +10 -10
  106. package/types/excalidraw/components/InlineIcon.d.ts +3 -3
  107. package/types/excalidraw/components/Island.d.ts +10 -10
  108. package/types/excalidraw/components/JSONExportDialog.d.ts +15 -15
  109. package/types/excalidraw/components/LaserPointerButton.d.ts +10 -10
  110. package/types/excalidraw/components/LayerUI.d.ts +31 -31
  111. package/types/excalidraw/components/LibraryMenu.d.ts +24 -24
  112. package/types/excalidraw/components/LibraryMenuBrowseButton.d.ts +7 -7
  113. package/types/excalidraw/components/LibraryMenuControlButtons.d.ts +9 -9
  114. package/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +17 -17
  115. package/types/excalidraw/components/LibraryMenuItems.d.ts +14 -14
  116. package/types/excalidraw/components/LibraryMenuSection.d.ts +23 -23
  117. package/types/excalidraw/components/LibraryUnit.d.ts +14 -14
  118. package/types/excalidraw/components/LoadingMessage.d.ts +5 -5
  119. package/types/excalidraw/components/LockButton.d.ts +10 -10
  120. package/types/excalidraw/components/MagicButton.d.ts +9 -9
  121. package/types/excalidraw/components/MobileMenu.d.ts +24 -24
  122. package/types/excalidraw/components/Modal.d.ts +14 -14
  123. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirm.d.ts +17 -17
  124. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmActions.d.ts +17 -17
  125. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +22 -22
  126. package/types/excalidraw/components/Paragraph.d.ts +4 -4
  127. package/types/excalidraw/components/PasteChartDialog.d.ts +8 -8
  128. package/types/excalidraw/components/PenModeButton.d.ts +12 -12
  129. package/types/excalidraw/components/Popover.d.ts +15 -15
  130. package/types/excalidraw/components/ProjectName.d.ts +10 -10
  131. package/types/excalidraw/components/PropertiesPopover.d.ts +15 -15
  132. package/types/excalidraw/components/PublishLibrary.d.ts +16 -16
  133. package/types/excalidraw/components/QuickSearch.d.ts +9 -9
  134. package/types/excalidraw/components/RadioGroup.d.ts +13 -13
  135. package/types/excalidraw/components/SVGLayer.d.ts +7 -7
  136. package/types/excalidraw/components/ScrollableList.d.ts +8 -8
  137. package/types/excalidraw/components/SearchMenu.d.ts +5 -5
  138. package/types/excalidraw/components/SearchSidebar.d.ts +1 -0
  139. package/types/excalidraw/components/Section.d.ts +6 -6
  140. package/types/excalidraw/components/ShareableLinkDialog.d.ts +7 -7
  141. package/types/excalidraw/components/Sidebar/Sidebar.d.ts +76 -76
  142. package/types/excalidraw/components/Sidebar/SidebarHeader.d.ts +7 -7
  143. package/types/excalidraw/components/Sidebar/SidebarTab.d.ts +8 -8
  144. package/types/excalidraw/components/Sidebar/SidebarTabTrigger.d.ts +9 -9
  145. package/types/excalidraw/components/Sidebar/SidebarTabTriggers.d.ts +6 -6
  146. package/types/excalidraw/components/Sidebar/SidebarTabs.d.ts +6 -6
  147. package/types/excalidraw/components/Sidebar/SidebarTrigger.d.ts +6 -6
  148. package/types/excalidraw/components/Sidebar/common.d.ts +33 -33
  149. package/types/excalidraw/components/Spinner.d.ts +8 -8
  150. package/types/excalidraw/components/Stack.d.ts +16 -16
  151. package/types/excalidraw/components/Stats/Angle.d.ts +11 -11
  152. package/types/excalidraw/components/Stats/CanvasGrid.d.ts +10 -10
  153. package/types/excalidraw/components/Stats/CanvasGridSize.d.ts +10 -10
  154. package/types/excalidraw/components/Stats/Collapsible.d.ts +9 -8
  155. package/types/excalidraw/components/Stats/Dimension.d.ts +11 -11
  156. package/types/excalidraw/components/Stats/DragInput.d.ts +34 -34
  157. package/types/excalidraw/components/Stats/FontSize.d.ts +11 -11
  158. package/types/excalidraw/components/Stats/MultiAngle.d.ts +11 -11
  159. package/types/excalidraw/components/Stats/MultiDimension.d.ts +14 -14
  160. package/types/excalidraw/components/Stats/MultiFontSize.d.ts +12 -12
  161. package/types/excalidraw/components/Stats/MultiPosition.d.ts +14 -14
  162. package/types/excalidraw/components/Stats/Position.d.ts +12 -12
  163. package/types/excalidraw/components/Stats/index.d.ts +35 -35
  164. package/types/excalidraw/components/Stats/utils.d.ts +26 -26
  165. package/types/excalidraw/components/Switch.d.ts +9 -9
  166. package/types/excalidraw/components/TTDDialog/MermaidToExcalidraw.d.ts +8 -8
  167. package/types/excalidraw/components/TTDDialog/MermaidToExcalidrawLib.d.ts +10 -10
  168. package/types/excalidraw/components/TTDDialog/TTDDialog.d.ts +29 -29
  169. package/types/excalidraw/components/TTDDialog/TTDDialogInput.d.ts +9 -9
  170. package/types/excalidraw/components/TTDDialog/TTDDialogOutput.d.ts +7 -7
  171. package/types/excalidraw/components/TTDDialog/TTDDialogPanel.d.ts +17 -17
  172. package/types/excalidraw/components/TTDDialog/TTDDialogPanels.d.ts +4 -4
  173. package/types/excalidraw/components/TTDDialog/TTDDialogSubmitShortcut.d.ts +1 -1
  174. package/types/excalidraw/components/TTDDialog/TTDDialogTab.d.ts +7 -7
  175. package/types/excalidraw/components/TTDDialog/TTDDialogTabTrigger.d.ts +8 -8
  176. package/types/excalidraw/components/TTDDialog/TTDDialogTabTriggers.d.ts +6 -6
  177. package/types/excalidraw/components/TTDDialog/TTDDialogTabs.d.ts +11 -11
  178. package/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +8 -8
  179. package/types/excalidraw/components/TTDDialog/common.d.ts +32 -32
  180. package/types/excalidraw/components/TextField.d.ts +21 -21
  181. package/types/excalidraw/components/Toast.d.ts +9 -9
  182. package/types/excalidraw/components/ToolButton.d.ts +49 -49
  183. package/types/excalidraw/components/Tooltip.d.ts +18 -18
  184. package/types/excalidraw/components/Trans.d.ts +9 -9
  185. package/types/excalidraw/components/UserList.d.ts +18 -18
  186. package/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +29 -29
  187. package/types/excalidraw/components/canvases/NewElementCanvas.d.ts +14 -14
  188. package/types/excalidraw/components/canvases/StaticCanvas.d.ts +19 -19
  189. package/types/excalidraw/components/canvases/index.d.ts +3 -3
  190. package/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +86 -86
  191. package/types/excalidraw/components/dropdownMenu/DropdownMenuContent.d.ts +15 -15
  192. package/types/excalidraw/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -11
  193. package/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +45 -45
  194. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemContent.d.ts +7 -7
  195. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemContentRadio.d.ts +17 -17
  196. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemCustom.d.ts +7 -7
  197. package/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +15 -15
  198. package/types/excalidraw/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -5
  199. package/types/excalidraw/components/dropdownMenu/DropdownMenuTrigger.d.ts +10 -10
  200. package/types/excalidraw/components/dropdownMenu/common.d.ts +6 -6
  201. package/types/excalidraw/components/dropdownMenu/dropdownMenuUtils.d.ts +3 -3
  202. package/types/excalidraw/components/footer/Footer.d.ts +12 -12
  203. package/types/excalidraw/components/footer/FooterCenter.d.ts +8 -8
  204. package/types/excalidraw/components/hoc/withInternalFallback.d.ts +4 -4
  205. package/types/excalidraw/components/hyperlink/Hyperlink.d.ts +18 -18
  206. package/types/excalidraw/components/hyperlink/helpers.d.ts +9 -9
  207. package/types/excalidraw/components/icons.d.ts +223 -214
  208. package/types/excalidraw/components/live-collaboration/LiveCollaborationTrigger.d.ts +9 -9
  209. package/types/excalidraw/components/main-menu/DefaultItems.d.ts +64 -64
  210. package/types/excalidraw/components/main-menu/MainMenu.d.ts +80 -80
  211. package/types/excalidraw/components/welcome-screen/WelcomeScreen.Center.d.ts +59 -59
  212. package/types/excalidraw/components/welcome-screen/WelcomeScreen.Hints.d.ts +19 -19
  213. package/types/excalidraw/components/welcome-screen/WelcomeScreen.d.ts +86 -86
  214. package/types/excalidraw/constants.d.ts +326 -326
  215. package/types/excalidraw/context/tunnels.d.ts +20 -20
  216. package/types/excalidraw/context/ui-appState.d.ts +4 -4
  217. package/types/excalidraw/cursor.d.ts +6 -6
  218. package/types/excalidraw/data/EditorLocalStorage.d.ts +8 -8
  219. package/types/excalidraw/data/ai/types.d.ts +242 -242
  220. package/types/excalidraw/data/blob.d.ts +53 -53
  221. package/types/excalidraw/data/encode.d.ts +55 -55
  222. package/types/excalidraw/data/encryption.d.ts +9 -9
  223. package/types/excalidraw/data/filesystem.d.ts +21 -20
  224. package/types/excalidraw/data/image.d.ts +9 -15
  225. package/types/excalidraw/data/index.d.ts +22 -22
  226. package/types/excalidraw/data/json.d.ts +16 -16
  227. package/types/excalidraw/data/library.d.ts +112 -106
  228. package/types/excalidraw/data/reconcile.d.ts +6 -6
  229. package/types/excalidraw/data/resave.d.ts +5 -5
  230. package/types/excalidraw/data/restore.d.ts +21 -21
  231. package/types/excalidraw/data/transform.d.ts +81 -81
  232. package/types/excalidraw/data/types.d.ts +45 -45
  233. package/types/excalidraw/data/url.d.ts +7 -8
  234. package/types/excalidraw/deburr.d.ts +1 -1
  235. package/types/excalidraw/dist/excalidraw.development.d.ts +2 -2
  236. package/types/excalidraw/dist/excalidraw.production.min.d.ts +3 -3
  237. package/types/excalidraw/distribute.d.ts +6 -6
  238. package/types/excalidraw/element/ElementCanvasButtons.d.ts +7 -7
  239. package/types/excalidraw/element/binding.d.ts +102 -102
  240. package/types/excalidraw/element/bounds.d.ts +76 -76
  241. package/types/excalidraw/element/collision.d.ts +17 -17
  242. package/types/excalidraw/element/containerCache.d.ts +11 -11
  243. package/types/excalidraw/element/cropElement.d.ts +19 -19
  244. package/types/excalidraw/element/dragElements.d.ts +32 -32
  245. package/types/excalidraw/element/elementLink.d.ts +13 -13
  246. package/types/excalidraw/element/embeddable.d.ts +229 -229
  247. package/types/excalidraw/element/flowchart.d.ts +25 -25
  248. package/types/excalidraw/element/heading.d.ts +12 -12
  249. package/types/excalidraw/element/image.d.ts +32 -32
  250. package/types/excalidraw/element/index.d.ts +26 -26
  251. package/types/excalidraw/element/linearElementEditor.d.ts +129 -129
  252. package/types/excalidraw/element/mutateElement.d.ts +11 -11
  253. package/types/excalidraw/element/newElement.d.ts +106 -106
  254. package/types/excalidraw/element/resizeElements.d.ts +39 -39
  255. package/types/excalidraw/element/resizeTest.d.ts +15 -15
  256. package/types/excalidraw/element/routing.d.ts +15 -15
  257. package/types/excalidraw/element/showSelectedShapeActions.d.ts +3 -3
  258. package/types/excalidraw/element/sizeHelpers.d.ts +35 -35
  259. package/types/excalidraw/element/sortElements.d.ts +2 -2
  260. package/types/excalidraw/element/textElement.d.ts +83 -83
  261. package/types/excalidraw/element/textWrapping.d.ts +13 -13
  262. package/types/excalidraw/element/textWysiwyg.d.ts +22 -22
  263. package/types/excalidraw/element/transformHandles.d.ts +55 -55
  264. package/types/excalidraw/element/typeChecks.d.ts +39 -39
  265. package/types/excalidraw/element/types.d.ts +263 -263
  266. package/types/excalidraw/emitter.d.ts +16 -16
  267. package/types/excalidraw/entry.d.ts +1 -1
  268. package/types/excalidraw/env.d.cts +1 -1
  269. package/types/excalidraw/env.d.ts +1 -1
  270. package/types/excalidraw/errors.d.ts +32 -32
  271. package/types/excalidraw/fonts/Cascadia/index.d.ts +2 -2
  272. package/types/excalidraw/fonts/ComicShanns/index.d.ts +2 -2
  273. package/types/excalidraw/fonts/Emoji/index.d.ts +2 -2
  274. package/types/excalidraw/fonts/ExcalidrawFont.d.ts +37 -0
  275. package/types/excalidraw/fonts/ExcalidrawFontFace.d.ts +29 -29
  276. package/types/excalidraw/fonts/Excalifont/index.d.ts +2 -2
  277. package/types/excalidraw/fonts/FontMetadata.d.ts +37 -37
  278. package/types/excalidraw/fonts/Fonts.d.ts +116 -116
  279. package/types/excalidraw/fonts/Helvetica/index.d.ts +2 -2
  280. package/types/excalidraw/fonts/Liberation/index.d.ts +2 -2
  281. package/types/excalidraw/fonts/Lilita/index.d.ts +2 -2
  282. package/types/excalidraw/fonts/Nunito/index.d.ts +2 -2
  283. package/types/excalidraw/fonts/Virgil/index.d.ts +2 -2
  284. package/types/excalidraw/fonts/Xiaolai/index.d.ts +8 -8
  285. package/types/excalidraw/fonts/index.d.ts +1 -1
  286. package/types/excalidraw/fonts/metadata.d.ts +35 -0
  287. package/types/excalidraw/fonts/wasm/hb-subset.bindings.d.ts +45 -0
  288. package/types/excalidraw/fonts/wasm/hb-subset.loader.d.ts +5 -0
  289. package/types/excalidraw/fonts/wasm/hb-subset.wasm.d.ts +2 -0
  290. package/types/excalidraw/fonts/wasm/woff2.bindings.d.ts +31 -0
  291. package/types/excalidraw/fonts/wasm/woff2.loader.d.ts +6 -0
  292. package/types/excalidraw/fonts/wasm/woff2.wasm.d.ts +2 -0
  293. package/types/excalidraw/fractionalIndex.d.ts +48 -48
  294. package/types/excalidraw/frame.d.ts +63 -63
  295. package/types/excalidraw/ga.d.ts +63 -0
  296. package/types/excalidraw/gadirections.d.ts +8 -0
  297. package/types/excalidraw/galines.d.ts +22 -0
  298. package/types/excalidraw/gapoints.d.ts +7 -0
  299. package/types/excalidraw/gatransforms.d.ts +10 -0
  300. package/types/excalidraw/gesture.d.ts +6 -6
  301. package/types/excalidraw/groups.d.ts +33 -33
  302. package/types/excalidraw/history.d.ts +40 -40
  303. package/types/excalidraw/hooks/useCallbackRefState.d.ts +1 -1
  304. package/types/excalidraw/hooks/useCopiedIndicator.d.ts +5 -5
  305. package/types/excalidraw/hooks/useCreatePortalContainer.d.ts +7 -7
  306. package/types/excalidraw/hooks/useEmitter.d.ts +2 -2
  307. package/types/excalidraw/hooks/useLibraryItemSvg.d.ts +11 -11
  308. package/types/excalidraw/hooks/useOutsideClick.d.ts +19 -19
  309. package/types/excalidraw/hooks/useScrollPosition.d.ts +1 -1
  310. package/types/excalidraw/hooks/useStable.d.ts +1 -1
  311. package/types/excalidraw/hooks/useStableCallback.d.ts +4 -4
  312. package/types/excalidraw/hooks/useTransition.d.ts +2 -2
  313. package/types/excalidraw/i18n.d.ts +24 -24
  314. package/types/excalidraw/index-node.d.ts +1 -1
  315. package/types/excalidraw/index.d.ts +64 -64
  316. package/types/excalidraw/jotai.d.ts +34 -34
  317. package/types/excalidraw/keys.d.ts +189 -189
  318. package/types/excalidraw/laser-trails.d.ts +20 -20
  319. package/types/excalidraw/main.d.ts +2 -2
  320. package/types/excalidraw/math.d.ts +79 -0
  321. package/types/excalidraw/mermaid.d.ts +2 -2
  322. package/types/excalidraw/obsidianUtils.d.ts +26 -26
  323. package/types/excalidraw/points.d.ts +7 -7
  324. package/types/excalidraw/polyfill.d.ts +2 -2
  325. package/types/excalidraw/publicPath.d.ts +1 -1
  326. package/types/excalidraw/queue.d.ts +9 -9
  327. package/types/excalidraw/random.d.ts +4 -4
  328. package/types/excalidraw/reactUtils.d.ts +14 -14
  329. package/types/excalidraw/renderer/easingFunctions.d.ts +6 -6
  330. package/types/excalidraw/renderer/helpers.d.ts +13 -13
  331. package/types/excalidraw/renderer/interactiveScene.d.ts +20 -20
  332. package/types/excalidraw/renderer/renderElement.d.ts +28 -28
  333. package/types/excalidraw/renderer/renderNewElementScene.d.ts +7 -7
  334. package/types/excalidraw/renderer/renderSnaps.d.ts +2 -2
  335. package/types/excalidraw/renderer/roundRect.d.ts +11 -11
  336. package/types/excalidraw/renderer/staticScene.d.ts +11 -11
  337. package/types/excalidraw/renderer/staticSvgScene.d.ts +5 -5
  338. package/types/excalidraw/scene/Renderer.d.ts +28 -28
  339. package/types/excalidraw/scene/Scene.d.ts +79 -79
  340. package/types/excalidraw/scene/Shape.d.ts +17 -17
  341. package/types/excalidraw/scene/ShapeCache.d.ts +25 -25
  342. package/types/excalidraw/scene/comparisons.d.ts +488 -488
  343. package/types/excalidraw/scene/export.d.ts +37 -30
  344. package/types/excalidraw/scene/index.d.ts +4 -4
  345. package/types/excalidraw/scene/normalize.d.ts +4 -4
  346. package/types/excalidraw/scene/scroll.d.ts +23 -23
  347. package/types/excalidraw/scene/scrollbars.d.ts +12 -12
  348. package/types/excalidraw/scene/selection.d.ts +32 -32
  349. package/types/excalidraw/scene/types.d.ts +119 -119
  350. package/types/excalidraw/scene/zoom.d.ts +12 -12
  351. package/types/excalidraw/shapes.d.ts +85 -85
  352. package/types/excalidraw/snapping.d.ts +112 -112
  353. package/types/excalidraw/store.d.ts +129 -129
  354. package/types/excalidraw/subset/harfbuzz/harfbuzz-bindings.d.ts +45 -45
  355. package/types/excalidraw/subset/harfbuzz/harfbuzz-loader.d.ts +13 -13
  356. package/types/excalidraw/subset/harfbuzz/harfbuzz-wasm.d.ts +2 -2
  357. package/types/excalidraw/subset/subset-main.d.ts +12 -12
  358. package/types/excalidraw/subset/subset-shared.chunk.d.ts +32 -32
  359. package/types/excalidraw/subset/subset-worker.chunk.d.ts +15 -15
  360. package/types/excalidraw/subset/woff2/woff2-bindings.d.ts +31 -31
  361. package/types/excalidraw/subset/woff2/woff2-loader.d.ts +14 -14
  362. package/types/excalidraw/subset/woff2/woff2-wasm.d.ts +2 -2
  363. package/types/excalidraw/types.d.ts +741 -741
  364. package/types/excalidraw/utility-types.d.ts +31 -31
  365. package/types/excalidraw/utils.d.ts +250 -249
  366. package/types/excalidraw/visualdebug.d.ts +35 -35
  367. package/types/excalidraw/webpack.dev.config.d.ts +81 -81
  368. package/types/excalidraw/webpack.prod.config.d.ts +97 -97
  369. package/types/excalidraw/workers.d.ts +36 -36
  370. package/types/excalidraw/zindex.d.ts +6 -6
  371. package/types/math/angle.d.ts +17 -17
  372. package/types/math/arc.d.ts +6 -6
  373. package/types/math/curve.d.ts +32 -32
  374. package/types/math/ga/ga.d.ts +63 -63
  375. package/types/math/ga/gadirections.d.ts +8 -8
  376. package/types/math/ga/galines.d.ts +22 -22
  377. package/types/math/ga/gapoints.d.ts +7 -7
  378. package/types/math/ga/gatransforms.d.ts +10 -10
  379. package/types/math/index.d.ts +12 -12
  380. package/types/math/line.d.ts +26 -26
  381. package/types/math/point.d.ts +140 -140
  382. package/types/math/polygon.d.ts +5 -5
  383. package/types/math/range.d.ts +44 -44
  384. package/types/math/segment.d.ts +32 -32
  385. package/types/math/triangle.d.ts +11 -11
  386. package/types/math/types.d.ts +96 -96
  387. package/types/math/utils.d.ts +7 -7
  388. package/types/math/vector.d.ts +92 -92
  389. package/types/utils/bbox.d.ts +9 -9
  390. package/types/utils/collision.d.ts +9 -9
  391. package/types/utils/export.d.ts +46 -46
  392. package/types/utils/geometry/geometry.d.ts +89 -0
  393. package/types/utils/geometry/shape.d.ts +71 -71
  394. package/types/utils/index.d.ts +4 -4
  395. package/types/utils/withinBounds.d.ts +19 -19
@@ -1,39 +1,39 @@
1
- import type { ExcalidrawLinearElement, ExcalidrawTextElement, NonDeletedExcalidrawElement, NonDeleted, ExcalidrawElement, ElementsMap, SceneElementsMap } from "./types";
2
- import type { BoundingBox } from "./bounds";
3
- import type { MaybeTransformHandleType, TransformHandleDirection } from "./transformHandles";
4
- import type { PointerDownState } from "../types";
5
- import type Scene from "../scene/Scene";
6
- import { type LocalPoint } from "../../math";
7
- export declare const transformElements: (originalElements: PointerDownState["originalElements"], transformHandleType: MaybeTransformHandleType, selectedElements: readonly NonDeletedExcalidrawElement[], elementsMap: SceneElementsMap, 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, elementsMap: ElementsMap, originalElementsMap: ElementsMap, 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, elementsMap: ElementsMap, originalElementsMap: ElementsMap, 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, { shouldMaintainAspectRatio, shouldResizeFromCenter, flipByX, flipByY, nextHeight, nextWidth, originalElementsMap, 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
- originalElementsMap?: ElementsMap | undefined;
38
- originalBoundingBox?: BoundingBox | undefined;
39
- }) => void;
1
+ import type { ExcalidrawLinearElement, ExcalidrawTextElement, NonDeletedExcalidrawElement, NonDeleted, ExcalidrawElement, ElementsMap, SceneElementsMap } from "./types";
2
+ import type { BoundingBox } from "./bounds";
3
+ import type { MaybeTransformHandleType, TransformHandleDirection } from "./transformHandles";
4
+ import type { PointerDownState } from "../types";
5
+ import type Scene from "../scene/Scene";
6
+ import { type LocalPoint } from "../../math";
7
+ export declare const transformElements: (originalElements: PointerDownState["originalElements"], transformHandleType: MaybeTransformHandleType, selectedElements: readonly NonDeletedExcalidrawElement[], elementsMap: SceneElementsMap, 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, elementsMap: ElementsMap, originalElementsMap: ElementsMap, 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, elementsMap: ElementsMap, originalElementsMap: ElementsMap, 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, { shouldMaintainAspectRatio, shouldResizeFromCenter, flipByX, flipByY, nextHeight, nextWidth, originalElementsMap, 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
+ originalElementsMap?: ElementsMap | undefined;
38
+ originalBoundingBox?: BoundingBox | undefined;
39
+ }) => void;
@@ -1,15 +1,15 @@
1
- import type { ExcalidrawElement, PointerType, NonDeletedExcalidrawElement, ElementsMap } from "./types";
2
- import type { MaybeTransformHandleType } from "./transformHandles";
3
- import type { AppState, Device, Zoom } from "../types";
4
- import type { Bounds } from "./bounds";
5
- import type { GlobalPoint, LocalPoint } from "../../math";
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 { ExcalidrawElement, PointerType, NonDeletedExcalidrawElement, ElementsMap } from "./types";
2
+ import type { MaybeTransformHandleType } from "./transformHandles";
3
+ import type { AppState, Device, Zoom } from "../types";
4
+ import type { Bounds } from "./bounds";
5
+ import type { GlobalPoint, LocalPoint } from "../../math";
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,15 +1,15 @@
1
- import { type LocalPoint, type Vector } from "../../math";
2
- import type { AppState } from "../types";
3
- import type { ElementUpdate } from "./mutateElement";
4
- import type { ExcalidrawElbowArrowElement, NonDeletedSceneElementsMap, SceneElementsMap } from "./types";
5
- export declare const mutateElbowArrow: (arrow: ExcalidrawElbowArrowElement, elementsMap: NonDeletedSceneElementsMap | SceneElementsMap, nextPoints: readonly LocalPoint[], offset?: Vector, otherUpdates?: Omit<ElementUpdate<ExcalidrawElbowArrowElement>, "angle" | "x" | "y" | "width" | "height" | "elbowed" | "points">, options?: {
6
- isDragging?: boolean;
7
- informMutation?: boolean;
8
- zoom?: AppState["zoom"];
9
- }) => void;
10
- export declare const updateElbowArrow: (arrow: ExcalidrawElbowArrowElement, elementsMap: NonDeletedSceneElementsMap | SceneElementsMap, nextPoints: readonly LocalPoint[], offset?: Vector, options?: {
11
- isDragging?: boolean;
12
- disableBinding?: boolean;
13
- informMutation?: boolean;
14
- zoom?: AppState["zoom"];
15
- }) => ElementUpdate<ExcalidrawElbowArrowElement> | null;
1
+ import { type LocalPoint, type Vector } from "../../math";
2
+ import type { AppState } from "../types";
3
+ import type { ElementUpdate } from "./mutateElement";
4
+ import type { ExcalidrawElbowArrowElement, NonDeletedSceneElementsMap, SceneElementsMap } from "./types";
5
+ export declare const mutateElbowArrow: (arrow: ExcalidrawElbowArrowElement, elementsMap: NonDeletedSceneElementsMap | SceneElementsMap, nextPoints: readonly LocalPoint[], offset?: Vector, otherUpdates?: Omit<ElementUpdate<ExcalidrawElbowArrowElement>, "angle" | "x" | "y" | "width" | "height" | "elbowed" | "points">, options?: {
6
+ isDragging?: boolean;
7
+ informMutation?: boolean;
8
+ zoom?: AppState["zoom"];
9
+ }) => void;
10
+ export declare const updateElbowArrow: (arrow: ExcalidrawElbowArrowElement, elementsMap: NonDeletedSceneElementsMap | SceneElementsMap, nextPoints: readonly LocalPoint[], offset?: Vector, options?: {
11
+ isDragging?: boolean;
12
+ disableBinding?: boolean;
13
+ informMutation?: boolean;
14
+ zoom?: AppState["zoom"];
15
+ }) => ElementUpdate<ExcalidrawElbowArrowElement> | null;
@@ -1,3 +1,3 @@
1
- import type { NonDeletedExcalidrawElement } from "./types";
2
- import type { UIAppState } from "../types";
3
- export declare const showSelectedShapeActions: (appState: UIAppState, elements: readonly NonDeletedExcalidrawElement[]) => boolean;
1
+ import type { NonDeletedExcalidrawElement } from "./types";
2
+ import type { UIAppState } from "../types";
3
+ export declare const showSelectedShapeActions: (appState: UIAppState, elements: readonly NonDeletedExcalidrawElement[]) => boolean;
@@ -1,35 +1,35 @@
1
- import type { ElementsMap, ExcalidrawElement } from "./types";
2
- import type { AppState, Offsets, Zoom } from "../types";
3
- export declare const isInvisiblySmallElement: (element: ExcalidrawElement) => boolean;
4
- export declare const isElementInViewport: (element: ExcalidrawElement, width: number, height: number, viewTransformations: {
5
- zoom: Zoom;
6
- offsetLeft: number;
7
- offsetTop: number;
8
- scrollX: number;
9
- scrollY: number;
10
- }, elementsMap: ElementsMap) => boolean;
11
- export declare const isElementCompletelyInViewport: (elements: ExcalidrawElement[], width: number, height: number, viewTransformations: {
12
- zoom: Zoom;
13
- offsetLeft: number;
14
- offsetTop: number;
15
- scrollX: number;
16
- scrollY: number;
17
- }, elementsMap: ElementsMap, padding?: Offsets) => boolean;
18
- /**
19
- * Makes a perfect shape or diagonal/horizontal/vertical line
20
- */
21
- export declare const getPerfectElementSize: (elementType: AppState["activeTool"]["type"], width: number, height: number) => {
22
- width: number;
23
- height: number;
24
- };
25
- export declare const getLockedLinearCursorAlignSize: (originX: number, originY: number, x: number, y: number) => {
26
- width: number;
27
- height: number;
28
- };
29
- export declare const resizePerfectLineForNWHandler: (element: ExcalidrawElement, x: number, y: number) => void;
30
- export declare const getNormalizedDimensions: (element: Pick<ExcalidrawElement, "width" | "height" | "x" | "y">) => {
31
- width: ExcalidrawElement["width"];
32
- height: ExcalidrawElement["height"];
33
- x: ExcalidrawElement["x"];
34
- y: ExcalidrawElement["y"];
35
- };
1
+ import type { ElementsMap, ExcalidrawElement } from "./types";
2
+ import type { AppState, Offsets, Zoom } from "../types";
3
+ export declare const isInvisiblySmallElement: (element: ExcalidrawElement) => boolean;
4
+ export declare const isElementInViewport: (element: ExcalidrawElement, width: number, height: number, viewTransformations: {
5
+ zoom: Zoom;
6
+ offsetLeft: number;
7
+ offsetTop: number;
8
+ scrollX: number;
9
+ scrollY: number;
10
+ }, elementsMap: ElementsMap) => boolean;
11
+ export declare const isElementCompletelyInViewport: (elements: ExcalidrawElement[], width: number, height: number, viewTransformations: {
12
+ zoom: Zoom;
13
+ offsetLeft: number;
14
+ offsetTop: number;
15
+ scrollX: number;
16
+ scrollY: number;
17
+ }, elementsMap: ElementsMap, padding?: Offsets) => boolean;
18
+ /**
19
+ * Makes a perfect shape or diagonal/horizontal/vertical line
20
+ */
21
+ export declare const getPerfectElementSize: (elementType: AppState["activeTool"]["type"], width: number, height: number) => {
22
+ width: number;
23
+ height: number;
24
+ };
25
+ export declare const getLockedLinearCursorAlignSize: (originX: number, originY: number, x: number, y: number) => {
26
+ width: number;
27
+ height: number;
28
+ };
29
+ export declare const resizePerfectLineForNWHandler: (element: ExcalidrawElement, x: number, y: number) => void;
30
+ export declare const getNormalizedDimensions: (element: Pick<ExcalidrawElement, "width" | "height" | "x" | "y">) => {
31
+ width: ExcalidrawElement["width"];
32
+ height: ExcalidrawElement["height"];
33
+ x: ExcalidrawElement["x"];
34
+ y: ExcalidrawElement["y"];
35
+ };
@@ -1,2 +1,2 @@
1
- import type { ExcalidrawElement } from "./types";
2
- export declare const normalizeElementOrder: (elements: readonly ExcalidrawElement[]) => readonly ExcalidrawElement[];
1
+ import type { ExcalidrawElement } from "./types";
2
+ export declare const normalizeElementOrder: (elements: readonly ExcalidrawElement[]) => readonly ExcalidrawElement[];
@@ -1,83 +1,83 @@
1
- import type { ElementsMap, ExcalidrawElement, ExcalidrawElementType, ExcalidrawTextContainer, ExcalidrawTextElement, ExcalidrawTextElementWithContainer, FontString, NonDeletedExcalidrawElement } from "./types";
2
- import type { MaybeTransformHandleType } from "./transformHandles";
3
- import type { AppState } from "../types";
4
- import type { ExtractSetType } from "../utility-types";
5
- export declare const normalizeText: (text: string) => string;
6
- export declare const redrawTextBoundingBox: (textElement: ExcalidrawTextElement, container: ExcalidrawElement | null, elementsMap: ElementsMap, informMutation?: boolean) => void;
7
- export declare const bindTextToShapeAfterDuplication: (newElements: ExcalidrawElement[], oldElements: ExcalidrawElement[], oldIdToDuplicatedId: Map<ExcalidrawElement["id"], ExcalidrawElement["id"]>) => void;
8
- export declare const handleBindTextResize: (container: NonDeletedExcalidrawElement, elementsMap: ElementsMap, transformHandleType: MaybeTransformHandleType, shouldMaintainAspectRatio?: boolean) => void;
9
- export declare const computeBoundTextPosition: (container: ExcalidrawElement, boundTextElement: ExcalidrawTextElementWithContainer, elementsMap: ElementsMap) => {
10
- x: number;
11
- y: number;
12
- };
13
- export declare const measureText: (text: string, font: FontString, lineHeight: ExcalidrawTextElement["lineHeight"], forceAdvanceWidth?: true) => {
14
- width: number;
15
- height: number;
16
- };
17
- /**
18
- * To get unitless line-height (if unknown) we can calculate it by dividing
19
- * height-per-line by fontSize.
20
- */
21
- export declare const detectLineHeight: (textElement: ExcalidrawTextElement) => number & {
22
- _brand: "unitlessLineHeight";
23
- };
24
- /**
25
- * We calculate the line height from the font size and the unitless line height,
26
- * aligning with the W3C spec.
27
- */
28
- export declare const getLineHeightInPx: (fontSize: ExcalidrawTextElement["fontSize"], lineHeight: ExcalidrawTextElement["lineHeight"]) => number;
29
- export declare const getApproxMinLineHeight: (fontSize: ExcalidrawTextElement["fontSize"], lineHeight: ExcalidrawTextElement["lineHeight"]) => number;
30
- /**
31
- * @param forceAdvanceWidth use to force retrieve the "advance width" ~ `metrics.width`, instead of the actual boundind box width.
32
- *
33
- * > The advance width is the distance between the glyph's initial pen position and the next glyph's initial pen position.
34
- *
35
- * We need to use the advance width as that's the closest thing to the browser wrapping algo, hence using it for:
36
- * - text wrapping
37
- * - wysiwyg editor (+padding)
38
- *
39
- * Everything else should be based on the actual bounding box width.
40
- *
41
- * `Math.ceil` of the final width adds additional buffer which stabilizes slight wrapping incosistencies.
42
- */
43
- export declare const getLineWidth: (text: string, font: FontString, forceAdvanceWidth?: true) => number;
44
- export declare const getTextWidth: (text: string, font: FontString, forceAdvanceWidth?: true) => number;
45
- export declare const getTextHeight: (text: string, fontSize: number, lineHeight: ExcalidrawTextElement["lineHeight"]) => number;
46
- export declare const charWidth: {
47
- calculate: (char: string, font: FontString) => number;
48
- getCache: (font: FontString) => number[];
49
- clearCache: (font: FontString) => void;
50
- };
51
- export declare const getApproxMinLineWidth: (font: FontString, lineHeight: ExcalidrawTextElement["lineHeight"]) => number;
52
- export declare const getMinCharWidth: (font: FontString) => number;
53
- export declare const getMaxCharWidth: (font: FontString) => number;
54
- export declare const getBoundTextElementId: (container: ExcalidrawElement | null) => string | null;
55
- export declare const getBoundTextElement: (element: ExcalidrawElement | null, elementsMap: ElementsMap) => ExcalidrawTextElementWithContainer | null;
56
- export declare const getContainerElement: (element: ExcalidrawTextElement | null, elementsMap: ElementsMap) => ExcalidrawTextContainer | null;
57
- export declare const getContainerCenter: (container: ExcalidrawElement, appState: AppState, elementsMap: ElementsMap) => {
58
- x: number;
59
- y: number;
60
- };
61
- export declare const getContainerCoords: (container: NonDeletedExcalidrawElement) => {
62
- x: number;
63
- y: number;
64
- };
65
- export declare const getTextElementAngle: (textElement: ExcalidrawTextElement, container: ExcalidrawTextContainer | null) => import("../../math").Radians;
66
- export declare const getBoundTextElementPosition: (container: ExcalidrawElement, boundTextElement: ExcalidrawTextElementWithContainer, elementsMap: ElementsMap) => {
67
- x: number;
68
- y: number;
69
- } | undefined;
70
- export declare const shouldAllowVerticalAlign: (selectedElements: NonDeletedExcalidrawElement[], elementsMap: ElementsMap) => boolean;
71
- export declare const suppportsHorizontalAlign: (selectedElements: NonDeletedExcalidrawElement[], elementsMap: ElementsMap) => boolean;
72
- declare const VALID_CONTAINER_TYPES: Set<string>;
73
- export declare const isValidTextContainer: (element: {
74
- type: ExcalidrawElementType;
75
- }) => boolean;
76
- export declare const computeContainerDimensionForBoundText: (dimension: number, containerType: ExtractSetType<typeof VALID_CONTAINER_TYPES>, legacy?: boolean) => number;
77
- export declare const getBoundTextMaxWidth: (container: ExcalidrawElement, boundTextElement: ExcalidrawTextElement | null) => number;
78
- export declare const getBoundTextMaxHeight: (container: ExcalidrawElement, boundTextElement: ExcalidrawTextElementWithContainer) => number;
79
- export declare const isMeasureTextSupported: () => boolean;
80
- export declare const getMinTextElementWidth: (font: FontString, lineHeight: ExcalidrawTextElement["lineHeight"]) => number;
81
- /** retrieves text from text elements and concatenates to a single string */
82
- export declare const getTextFromElements: (elements: readonly ExcalidrawElement[], separator?: string) => string;
83
- export {};
1
+ import type { ElementsMap, ExcalidrawElement, ExcalidrawElementType, ExcalidrawTextContainer, ExcalidrawTextElement, ExcalidrawTextElementWithContainer, FontString, NonDeletedExcalidrawElement } from "./types";
2
+ import type { MaybeTransformHandleType } from "./transformHandles";
3
+ import type { AppState } from "../types";
4
+ import type { ExtractSetType } from "../utility-types";
5
+ export declare const normalizeText: (text: string) => string;
6
+ export declare const redrawTextBoundingBox: (textElement: ExcalidrawTextElement, container: ExcalidrawElement | null, elementsMap: ElementsMap, informMutation?: boolean) => void;
7
+ export declare const bindTextToShapeAfterDuplication: (newElements: ExcalidrawElement[], oldElements: ExcalidrawElement[], oldIdToDuplicatedId: Map<ExcalidrawElement["id"], ExcalidrawElement["id"]>) => void;
8
+ export declare const handleBindTextResize: (container: NonDeletedExcalidrawElement, elementsMap: ElementsMap, transformHandleType: MaybeTransformHandleType, shouldMaintainAspectRatio?: boolean) => void;
9
+ export declare const computeBoundTextPosition: (container: ExcalidrawElement, boundTextElement: ExcalidrawTextElementWithContainer, elementsMap: ElementsMap) => {
10
+ x: number;
11
+ y: number;
12
+ };
13
+ export declare const measureText: (text: string, font: FontString, lineHeight: ExcalidrawTextElement["lineHeight"], forceAdvanceWidth?: true) => {
14
+ width: number;
15
+ height: number;
16
+ };
17
+ /**
18
+ * To get unitless line-height (if unknown) we can calculate it by dividing
19
+ * height-per-line by fontSize.
20
+ */
21
+ export declare const detectLineHeight: (textElement: ExcalidrawTextElement) => number & {
22
+ _brand: "unitlessLineHeight";
23
+ };
24
+ /**
25
+ * We calculate the line height from the font size and the unitless line height,
26
+ * aligning with the W3C spec.
27
+ */
28
+ export declare const getLineHeightInPx: (fontSize: ExcalidrawTextElement["fontSize"], lineHeight: ExcalidrawTextElement["lineHeight"]) => number;
29
+ export declare const getApproxMinLineHeight: (fontSize: ExcalidrawTextElement["fontSize"], lineHeight: ExcalidrawTextElement["lineHeight"]) => number;
30
+ /**
31
+ * @param forceAdvanceWidth use to force retrieve the "advance width" ~ `metrics.width`, instead of the actual boundind box width.
32
+ *
33
+ * > The advance width is the distance between the glyph's initial pen position and the next glyph's initial pen position.
34
+ *
35
+ * We need to use the advance width as that's the closest thing to the browser wrapping algo, hence using it for:
36
+ * - text wrapping
37
+ * - wysiwyg editor (+padding)
38
+ *
39
+ * Everything else should be based on the actual bounding box width.
40
+ *
41
+ * `Math.ceil` of the final width adds additional buffer which stabilizes slight wrapping incosistencies.
42
+ */
43
+ export declare const getLineWidth: (text: string, font: FontString, forceAdvanceWidth?: true) => number;
44
+ export declare const getTextWidth: (text: string, font: FontString, forceAdvanceWidth?: true) => number;
45
+ export declare const getTextHeight: (text: string, fontSize: number, lineHeight: ExcalidrawTextElement["lineHeight"]) => number;
46
+ export declare const charWidth: {
47
+ calculate: (char: string, font: FontString) => number;
48
+ getCache: (font: FontString) => number[];
49
+ clearCache: (font: FontString) => void;
50
+ };
51
+ export declare const getApproxMinLineWidth: (font: FontString, lineHeight: ExcalidrawTextElement["lineHeight"]) => number;
52
+ export declare const getMinCharWidth: (font: FontString) => number;
53
+ export declare const getMaxCharWidth: (font: FontString) => number;
54
+ export declare const getBoundTextElementId: (container: ExcalidrawElement | null) => string | null;
55
+ export declare const getBoundTextElement: (element: ExcalidrawElement | null, elementsMap: ElementsMap) => ExcalidrawTextElementWithContainer | null;
56
+ export declare const getContainerElement: (element: ExcalidrawTextElement | null, elementsMap: ElementsMap) => ExcalidrawTextContainer | null;
57
+ export declare const getContainerCenter: (container: ExcalidrawElement, appState: AppState, elementsMap: ElementsMap) => {
58
+ x: number;
59
+ y: number;
60
+ };
61
+ export declare const getContainerCoords: (container: NonDeletedExcalidrawElement) => {
62
+ x: number;
63
+ y: number;
64
+ };
65
+ export declare const getTextElementAngle: (textElement: ExcalidrawTextElement, container: ExcalidrawTextContainer | null) => import("../../math").Radians;
66
+ export declare const getBoundTextElementPosition: (container: ExcalidrawElement, boundTextElement: ExcalidrawTextElementWithContainer, elementsMap: ElementsMap) => {
67
+ x: number;
68
+ y: number;
69
+ } | undefined;
70
+ export declare const shouldAllowVerticalAlign: (selectedElements: NonDeletedExcalidrawElement[], elementsMap: ElementsMap) => boolean;
71
+ export declare const suppportsHorizontalAlign: (selectedElements: NonDeletedExcalidrawElement[], elementsMap: ElementsMap) => boolean;
72
+ declare const VALID_CONTAINER_TYPES: Set<string>;
73
+ export declare const isValidTextContainer: (element: {
74
+ type: ExcalidrawElementType;
75
+ }) => boolean;
76
+ export declare const computeContainerDimensionForBoundText: (dimension: number, containerType: ExtractSetType<typeof VALID_CONTAINER_TYPES>, legacy?: boolean) => number;
77
+ export declare const getBoundTextMaxWidth: (container: ExcalidrawElement, boundTextElement: ExcalidrawTextElement | null) => number;
78
+ export declare const getBoundTextMaxHeight: (container: ExcalidrawElement, boundTextElement: ExcalidrawTextElementWithContainer) => number;
79
+ export declare const isMeasureTextSupported: () => boolean;
80
+ export declare const getMinTextElementWidth: (font: FontString, lineHeight: ExcalidrawTextElement["lineHeight"]) => number;
81
+ /** retrieves text from text elements and concatenates to a single string */
82
+ export declare const getTextFromElements: (elements: readonly ExcalidrawElement[], separator?: string) => string;
83
+ export {};
@@ -1,13 +1,13 @@
1
- import type { FontString } from "./types";
2
- /**
3
- * Test if a given text contains any CJK characters (including symbols, punctuation, etc,).
4
- */
5
- export declare const containsCJK: (text: string) => boolean;
6
- /**
7
- * Breaks the line into the tokens based on the found line break opporutnities.
8
- */
9
- export declare const parseTokens: (line: string) => string[];
10
- /**
11
- * Wraps the original text into the lines based on the given width.
12
- */
13
- export declare const wrapText: (text: string, font: FontString, maxWidth: number) => string;
1
+ import type { FontString } from "./types";
2
+ /**
3
+ * Test if a given text contains any CJK characters (including symbols, punctuation, etc,).
4
+ */
5
+ export declare const containsCJK: (text: string) => boolean;
6
+ /**
7
+ * Breaks the line into the tokens based on the found line break opporutnities.
8
+ */
9
+ export declare const parseTokens: (line: string) => string[];
10
+ /**
11
+ * Wraps the original text into the lines based on the given width.
12
+ */
13
+ export declare const wrapText: (text: string, font: FontString, maxWidth: number) => string;
@@ -1,22 +1,22 @@
1
- import type { ExcalidrawElement, ExcalidrawTextElement } from "./types";
2
- import type App from "../components/App";
3
- export declare const textWysiwyg: ({ id, onChange, onSubmit, getViewportCoords, element, canvas, excalidrawContainer, app, autoSelect, }: {
4
- id: ExcalidrawElement["id"];
5
- /**
6
- * textWysiwyg only deals with `originalText`
7
- *
8
- * Note: `text`, which can be wrapped and therefore different from `originalText`,
9
- * is derived from `originalText`
10
- */
11
- onChange?: ((nextOriginalText: string) => void) | undefined;
12
- onSubmit: (data: {
13
- viaKeyboard: boolean;
14
- nextOriginalText: string;
15
- }) => void;
16
- getViewportCoords: (x: number, y: number) => [number, number];
17
- element: ExcalidrawTextElement;
18
- canvas: HTMLCanvasElement;
19
- excalidrawContainer: HTMLDivElement | null;
20
- app: App;
21
- autoSelect?: boolean | undefined;
22
- }) => void;
1
+ import type { ExcalidrawElement, ExcalidrawTextElement } from "./types";
2
+ import type App from "../components/App";
3
+ export declare const textWysiwyg: ({ id, onChange, onSubmit, getViewportCoords, element, canvas, excalidrawContainer, app, autoSelect, }: {
4
+ id: ExcalidrawElement["id"];
5
+ /**
6
+ * textWysiwyg only deals with `originalText`
7
+ *
8
+ * Note: `text`, which can be wrapped and therefore different from `originalText`,
9
+ * is derived from `originalText`
10
+ */
11
+ onChange?: ((nextOriginalText: string) => void) | undefined;
12
+ onSubmit: (data: {
13
+ viaKeyboard: boolean;
14
+ nextOriginalText: string;
15
+ }) => void;
16
+ getViewportCoords: (x: number, y: number) => [number, number];
17
+ element: ExcalidrawTextElement;
18
+ canvas: HTMLCanvasElement;
19
+ excalidrawContainer: HTMLDivElement | null;
20
+ app: App;
21
+ autoSelect?: boolean | undefined;
22
+ }) => void;
@@ -1,55 +1,55 @@
1
- import type { ElementsMap, ExcalidrawElement, NonDeletedExcalidrawElement, PointerType } from "./types";
2
- import type { Bounds } from "./bounds";
3
- import type { Device, InteractiveCanvasAppState, Zoom } from "../types";
4
- import type { Radians } from "../../math";
5
- export type TransformHandleDirection = "n" | "s" | "w" | "e" | "nw" | "ne" | "sw" | "se";
6
- export type TransformHandleType = TransformHandleDirection | "rotation";
7
- export type TransformHandle = Bounds;
8
- export type TransformHandles = Partial<{
9
- [T in TransformHandleType]: TransformHandle;
10
- }>;
11
- export type MaybeTransformHandleType = TransformHandleType | false;
12
- export declare const DEFAULT_OMIT_SIDES: {
13
- e: boolean;
14
- s: boolean;
15
- n: boolean;
16
- w: boolean;
17
- };
18
- export declare const OMIT_SIDES_FOR_MULTIPLE_ELEMENTS: {
19
- e: boolean;
20
- s: boolean;
21
- n: boolean;
22
- w: boolean;
23
- };
24
- export declare const OMIT_SIDES_FOR_FRAME: {
25
- e: boolean;
26
- s: boolean;
27
- n: boolean;
28
- w: boolean;
29
- rotation: boolean;
30
- };
31
- export declare const canResizeFromSides: (device: Device) => boolean;
32
- export declare const getOmitSidesForDevice: (device: Device) => {};
33
- export declare const getTransformHandlesFromCoords: ([x1, y1, x2, y2, cx, cy]: [number, number, number, number, number, number], angle: Radians, zoom: Zoom, pointerType: PointerType, omitSides?: {
34
- e?: boolean | undefined;
35
- s?: boolean | undefined;
36
- w?: boolean | undefined;
37
- n?: boolean | undefined;
38
- nw?: boolean | undefined;
39
- ne?: boolean | undefined;
40
- sw?: boolean | undefined;
41
- se?: boolean | undefined;
42
- rotation?: boolean | undefined;
43
- }, margin?: number, spacing?: number) => TransformHandles;
44
- export declare const getTransformHandles: (element: ExcalidrawElement, zoom: Zoom, elementsMap: ElementsMap, pointerType?: PointerType, omitSides?: {
45
- e?: boolean | undefined;
46
- s?: boolean | undefined;
47
- w?: boolean | undefined;
48
- n?: boolean | undefined;
49
- nw?: boolean | undefined;
50
- ne?: boolean | undefined;
51
- sw?: boolean | undefined;
52
- se?: boolean | undefined;
53
- rotation?: boolean | undefined;
54
- }) => TransformHandles;
55
- export declare const shouldShowBoundingBox: (elements: readonly NonDeletedExcalidrawElement[], appState: InteractiveCanvasAppState) => boolean;
1
+ import type { ElementsMap, ExcalidrawElement, NonDeletedExcalidrawElement, PointerType } from "./types";
2
+ import type { Bounds } from "./bounds";
3
+ import type { Device, InteractiveCanvasAppState, Zoom } from "../types";
4
+ import type { Radians } from "../../math";
5
+ export type TransformHandleDirection = "n" | "s" | "w" | "e" | "nw" | "ne" | "sw" | "se";
6
+ export type TransformHandleType = TransformHandleDirection | "rotation";
7
+ export type TransformHandle = Bounds;
8
+ export type TransformHandles = Partial<{
9
+ [T in TransformHandleType]: TransformHandle;
10
+ }>;
11
+ export type MaybeTransformHandleType = TransformHandleType | false;
12
+ export declare const DEFAULT_OMIT_SIDES: {
13
+ e: boolean;
14
+ s: boolean;
15
+ n: boolean;
16
+ w: boolean;
17
+ };
18
+ export declare const OMIT_SIDES_FOR_MULTIPLE_ELEMENTS: {
19
+ e: boolean;
20
+ s: boolean;
21
+ n: boolean;
22
+ w: boolean;
23
+ };
24
+ export declare const OMIT_SIDES_FOR_FRAME: {
25
+ e: boolean;
26
+ s: boolean;
27
+ n: boolean;
28
+ w: boolean;
29
+ rotation: boolean;
30
+ };
31
+ export declare const canResizeFromSides: (device: Device) => boolean;
32
+ export declare const getOmitSidesForDevice: (device: Device) => {};
33
+ export declare const getTransformHandlesFromCoords: ([x1, y1, x2, y2, cx, cy]: [number, number, number, number, number, number], angle: Radians, zoom: Zoom, pointerType: PointerType, omitSides?: {
34
+ e?: boolean | undefined;
35
+ s?: boolean | undefined;
36
+ w?: boolean | undefined;
37
+ n?: boolean | undefined;
38
+ nw?: boolean | undefined;
39
+ ne?: boolean | undefined;
40
+ sw?: boolean | undefined;
41
+ se?: boolean | undefined;
42
+ rotation?: boolean | undefined;
43
+ }, margin?: number, spacing?: number) => TransformHandles;
44
+ export declare const getTransformHandles: (element: ExcalidrawElement, zoom: Zoom, elementsMap: ElementsMap, pointerType?: PointerType, omitSides?: {
45
+ e?: boolean | undefined;
46
+ s?: boolean | undefined;
47
+ w?: boolean | undefined;
48
+ n?: boolean | undefined;
49
+ nw?: boolean | undefined;
50
+ ne?: boolean | undefined;
51
+ sw?: boolean | undefined;
52
+ se?: boolean | undefined;
53
+ rotation?: boolean | undefined;
54
+ }) => TransformHandles;
55
+ export declare const shouldShowBoundingBox: (elements: readonly NonDeletedExcalidrawElement[], appState: InteractiveCanvasAppState) => boolean;