@excalidraw/excalidraw 0.18.0-817d8c5 → 0.18.0-a5d6939

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 (268) hide show
  1. package/CHANGELOG.md +11 -11
  2. package/dist/dev/chunk-FB2NA5UG.js +4132 -0
  3. package/dist/dev/chunk-FB2NA5UG.js.map +7 -0
  4. package/dist/dev/{chunk-3SN6HYVK.js → chunk-GBJ7S76A.js} +15490 -22586
  5. package/dist/dev/chunk-GBJ7S76A.js.map +7 -0
  6. package/dist/dev/{chunk-53KHN5WM.js → chunk-GIMGG4AT.js} +2 -2
  7. package/dist/dev/{chunk-53KHN5WM.js.map → chunk-GIMGG4AT.js.map} +1 -1
  8. package/dist/dev/{chunk-LMHBUWQS.js → chunk-X3RYHLJU.js} +2 -1
  9. package/dist/dev/chunk-X3RYHLJU.js.map +7 -0
  10. package/dist/dev/data/{image-V26YBSDB.js → image-JN3Y4CVN.js} +3 -3
  11. package/dist/dev/index.css +3031 -3034
  12. package/dist/dev/index.css.map +3 -3
  13. package/dist/dev/index.js +30389 -22974
  14. package/dist/dev/index.js.map +4 -4
  15. package/dist/dev/locales/{en-OZCJJ2HN.js → en-CKWC2GMK.js} +2 -2
  16. package/dist/dev/subset-shared.chunk.js +2 -2
  17. package/dist/dev/subset-worker.chunk.js +2 -2
  18. package/dist/prod/{chunk-G5N3DNGT.js → chunk-GKI4RZ6C.js} +1 -1
  19. package/dist/prod/{chunk-6U3AYISY.js → chunk-IUH5AXLB.js} +1 -1
  20. package/dist/prod/chunk-LS7FJGPW.js +86 -0
  21. package/dist/prod/chunk-TVF64BAY.js +33 -0
  22. package/dist/prod/data/image-CZ2OEVDB.js +1 -0
  23. package/dist/prod/index.css +1 -1
  24. package/dist/prod/index.js +18 -15
  25. package/dist/prod/locales/{en-B4ZKOASM.js → en-SBO6ZHT2.js} +1 -1
  26. package/dist/prod/subset-shared.chunk.js +1 -1
  27. package/dist/prod/subset-worker.chunk.js +1 -1
  28. package/dist/types/{excalidraw/binaryheap.d.ts → common/src/binary-heap.d.ts} +1 -1
  29. package/dist/types/{excalidraw → common/src}/colors.d.ts +1 -0
  30. package/dist/types/{excalidraw → common/src}/constants.d.ts +9 -6
  31. package/dist/types/{excalidraw/fonts/FontMetadata.d.ts → common/src/font-metadata.d.ts} +11 -3
  32. package/dist/types/common/src/index.d.ts +11 -0
  33. package/dist/types/{excalidraw → common/src}/points.d.ts +2 -0
  34. package/dist/types/common/src/promise-pool.d.ts +6 -0
  35. package/dist/types/{excalidraw → common/src}/utils.d.ts +10 -12
  36. package/dist/types/{excalidraw/scene → element/src}/Shape.d.ts +2 -2
  37. package/dist/types/{excalidraw/scene → element/src}/ShapeCache.d.ts +4 -4
  38. package/dist/types/{excalidraw → element/src}/align.d.ts +2 -2
  39. package/dist/types/{excalidraw/element → element/src}/binding.d.ts +8 -8
  40. package/dist/types/{excalidraw/element → element/src}/bounds.d.ts +7 -2
  41. package/dist/types/{excalidraw/element → element/src}/collision.d.ts +3 -3
  42. package/dist/types/{excalidraw/scene → element/src}/comparisons.d.ts +1 -1
  43. package/dist/types/{excalidraw → element/src}/distribute.d.ts +1 -1
  44. package/dist/types/{excalidraw/element → element/src}/dragElements.d.ts +3 -3
  45. package/dist/types/element/src/duplicate.d.ts +63 -0
  46. package/dist/types/{excalidraw/element → element/src}/elementLink.d.ts +1 -1
  47. package/dist/types/element/src/embeddable.d.ts +10 -0
  48. package/dist/types/{excalidraw/element → element/src}/flowchart.d.ts +1 -1
  49. package/dist/types/{excalidraw → element/src}/fractionalIndex.d.ts +4 -1
  50. package/dist/types/{excalidraw → element/src}/frame.d.ts +7 -7
  51. package/dist/types/{excalidraw → element/src}/groups.d.ts +5 -5
  52. package/dist/types/{excalidraw/element → element/src}/heading.d.ts +1 -2
  53. package/dist/types/{excalidraw/element → element/src}/image.d.ts +2 -2
  54. package/dist/types/{excalidraw/element → element/src}/index.d.ts +0 -10
  55. package/dist/types/{excalidraw/element → element/src}/linearElementEditor.d.ts +7 -7
  56. package/dist/types/{excalidraw/element → element/src}/mutateElement.d.ts +1 -1
  57. package/dist/types/{excalidraw/element → element/src}/newElement.d.ts +3 -43
  58. package/dist/types/{excalidraw/renderer → element/src}/renderElement.d.ts +3 -3
  59. package/dist/types/{excalidraw/element → element/src}/resizeElements.d.ts +4 -4
  60. package/dist/types/{excalidraw/element → element/src}/resizeTest.d.ts +4 -4
  61. package/dist/types/{excalidraw/scene → element/src}/selection.d.ts +13 -2
  62. package/dist/types/element/src/shapes.d.ts +23 -0
  63. package/dist/types/{excalidraw/element → element/src}/showSelectedShapeActions.d.ts +1 -1
  64. package/dist/types/{excalidraw/element → element/src}/sizeHelpers.d.ts +1 -1
  65. package/dist/types/{excalidraw/element → element/src}/textElement.d.ts +5 -5
  66. package/dist/types/{excalidraw/element → element/src}/transformHandles.d.ts +7 -7
  67. package/dist/types/{excalidraw/element → element/src}/typeChecks.d.ts +2 -2
  68. package/dist/types/{excalidraw/element → element/src}/types.d.ts +2 -2
  69. package/dist/types/{excalidraw → element/src}/zindex.d.ts +5 -4
  70. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +73 -70
  71. package/dist/types/excalidraw/actions/actionAlign.d.ts +7 -7
  72. package/dist/types/excalidraw/actions/actionBoundText.d.ts +54 -52
  73. package/dist/types/excalidraw/actions/actionCanvas.d.ts +542 -353
  74. package/dist/types/excalidraw/actions/actionClipboard.d.ts +155 -149
  75. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +26 -25
  76. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +73 -70
  77. package/dist/types/excalidraw/actions/actionDistribute.d.ts +3 -3
  78. package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +3 -7
  79. package/dist/types/excalidraw/actions/actionElementLink.d.ts +30 -29
  80. package/dist/types/excalidraw/actions/actionElementLock.d.ts +53 -52
  81. package/dist/types/excalidraw/{element/embeddable.d.ts → actions/actionEmbeddable.d.ts} +26 -35
  82. package/dist/types/excalidraw/actions/actionExport.d.ts +300 -291
  83. package/dist/types/excalidraw/actions/actionFinalize.d.ts +41 -39
  84. package/dist/types/excalidraw/actions/actionFlip.d.ts +3 -3
  85. package/dist/types/excalidraw/actions/actionFrame.d.ts +212 -208
  86. package/dist/types/excalidraw/actions/actionGroup.d.ts +51 -49
  87. package/dist/types/excalidraw/actions/actionHistory.d.ts +1 -1
  88. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +27 -26
  89. package/dist/types/excalidraw/actions/actionLink.d.ts +26 -25
  90. package/dist/types/excalidraw/actions/actionMenu.d.ts +73 -70
  91. package/dist/types/excalidraw/actions/actionNavigate.d.ts +48 -46
  92. package/dist/types/excalidraw/actions/actionProperties.d.ts +317 -302
  93. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +26 -25
  94. package/dist/types/excalidraw/actions/actionStyles.d.ts +28 -27
  95. package/dist/types/excalidraw/actions/actionTextAutoResize.d.ts +3 -3
  96. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +26 -25
  97. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +26 -25
  98. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +50 -48
  99. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +25 -25
  100. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +26 -26
  101. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +26 -26
  102. package/dist/types/excalidraw/actions/actionZindex.d.ts +8 -8
  103. package/dist/types/excalidraw/actions/index.d.ts +1 -0
  104. package/dist/types/excalidraw/actions/manager.d.ts +2 -2
  105. package/dist/types/excalidraw/actions/shortcuts.d.ts +1 -1
  106. package/dist/types/excalidraw/actions/types.d.ts +4 -4
  107. package/dist/types/excalidraw/animated-trail.d.ts +7 -1
  108. package/dist/types/excalidraw/appState.d.ts +32 -31
  109. package/dist/types/excalidraw/change.d.ts +3 -3
  110. package/dist/types/excalidraw/charts.d.ts +1 -1
  111. package/dist/types/excalidraw/clipboard.d.ts +7 -7
  112. package/dist/types/excalidraw/components/Actions.d.ts +3 -3
  113. package/dist/types/excalidraw/components/App.d.ts +38 -19
  114. package/dist/types/excalidraw/components/Avatar.d.ts +1 -1
  115. package/dist/types/excalidraw/components/ButtonIcon.d.ts +1 -1
  116. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +4 -4
  117. package/dist/types/excalidraw/components/ColorPicker/HotkeyLabel.d.ts +1 -2
  118. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +2 -2
  119. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +1 -1
  120. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +1 -1
  121. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +3 -3
  122. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +1 -1
  123. package/dist/types/excalidraw/components/CommandPalette/CommandPalette.d.ts +1 -1
  124. package/dist/types/excalidraw/components/ConfirmDialog.d.ts +1 -1
  125. package/dist/types/excalidraw/components/ContextMenu.d.ts +2 -2
  126. package/dist/types/excalidraw/components/DarkModeToggle.d.ts +1 -1
  127. package/dist/types/excalidraw/components/DefaultSidebar.d.ts +2 -2
  128. package/dist/types/excalidraw/components/DialogActionButton.d.ts +1 -1
  129. package/dist/types/excalidraw/{element → components}/ElementCanvasButtons.d.ts +1 -1
  130. package/dist/types/excalidraw/components/ElementLinkDialog.d.ts +2 -2
  131. package/dist/types/excalidraw/components/EyeDropper.d.ts +1 -1
  132. package/dist/types/excalidraw/components/FixedSideContainer.d.ts +1 -1
  133. package/dist/types/excalidraw/components/FollowMode/FollowMode.d.ts +1 -1
  134. package/dist/types/excalidraw/components/FontPicker/FontPicker.d.ts +1 -1
  135. package/dist/types/excalidraw/components/FontPicker/FontPickerList.d.ts +3 -3
  136. package/dist/types/excalidraw/components/FontPicker/FontPickerTrigger.d.ts +1 -1
  137. package/dist/types/excalidraw/components/FontPicker/keyboardNavHandlers.d.ts +1 -1
  138. package/dist/types/excalidraw/components/HintViewer.d.ts +1 -1
  139. package/dist/types/excalidraw/components/IconPicker.d.ts +1 -1
  140. package/dist/types/excalidraw/components/ImageExportDialog.d.ts +2 -2
  141. package/dist/types/excalidraw/components/InitializeApp.d.ts +1 -1
  142. package/dist/types/excalidraw/components/Island.d.ts +1 -1
  143. package/dist/types/excalidraw/components/JSONExportDialog.d.ts +2 -2
  144. package/dist/types/excalidraw/components/LayerUI.d.ts +3 -3
  145. package/dist/types/excalidraw/components/LibraryMenuHeaderContent.d.ts +1 -1
  146. package/dist/types/excalidraw/components/LibraryMenuItems.d.ts +1 -1
  147. package/dist/types/excalidraw/components/LibraryMenuSection.d.ts +3 -3
  148. package/dist/types/excalidraw/components/LibraryUnit.d.ts +2 -2
  149. package/dist/types/excalidraw/components/LoadingMessage.d.ts +1 -1
  150. package/dist/types/excalidraw/components/MagicButton.d.ts +1 -1
  151. package/dist/types/excalidraw/components/MobileMenu.d.ts +3 -3
  152. package/dist/types/excalidraw/components/PasteChartDialog.d.ts +1 -1
  153. package/dist/types/excalidraw/components/PropertiesPopover.d.ts +1 -1
  154. package/dist/types/excalidraw/components/PublishLibrary.d.ts +1 -1
  155. package/dist/types/excalidraw/components/SVGLayer.d.ts +1 -1
  156. package/dist/types/excalidraw/components/Sidebar/SidebarTrigger.d.ts +1 -1
  157. package/dist/types/excalidraw/components/Sidebar/common.d.ts +1 -1
  158. package/dist/types/excalidraw/components/Stack.d.ts +1 -1
  159. package/dist/types/excalidraw/components/Stats/Angle.d.ts +1 -1
  160. package/dist/types/excalidraw/components/Stats/Dimension.d.ts +1 -1
  161. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +2 -2
  162. package/dist/types/excalidraw/components/Stats/FontSize.d.ts +1 -1
  163. package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +1 -1
  164. package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +2 -2
  165. package/dist/types/excalidraw/components/Stats/MultiFontSize.d.ts +1 -1
  166. package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +2 -2
  167. package/dist/types/excalidraw/components/Stats/Position.d.ts +1 -1
  168. package/dist/types/excalidraw/components/Stats/index.d.ts +2 -2
  169. package/dist/types/excalidraw/components/Stats/utils.d.ts +1 -1
  170. package/dist/types/excalidraw/components/TTDDialog/TTDDialogTrigger.d.ts +1 -1
  171. package/dist/types/excalidraw/components/TTDDialog/common.d.ts +1 -1
  172. package/dist/types/excalidraw/components/TextField.d.ts +1 -1
  173. package/dist/types/excalidraw/components/Toast.d.ts +1 -1
  174. package/dist/types/excalidraw/components/ToolButton.d.ts +2 -2
  175. package/dist/types/excalidraw/components/Tooltip.d.ts +1 -1
  176. package/dist/types/excalidraw/components/UserList.d.ts +1 -1
  177. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +3 -3
  178. package/dist/types/excalidraw/components/canvases/NewElementCanvas.d.ts +2 -2
  179. package/dist/types/excalidraw/components/canvases/StaticCanvas.d.ts +3 -3
  180. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenu.d.ts +1 -1
  181. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItem.d.ts +2 -2
  182. package/dist/types/excalidraw/components/dropdownMenu/DropdownMenuItemLink.d.ts +1 -1
  183. package/dist/types/excalidraw/components/hyperlink/Hyperlink.d.ts +2 -2
  184. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +2 -2
  185. package/dist/types/excalidraw/components/icons.d.ts +2 -1
  186. package/dist/types/excalidraw/components/main-menu/DefaultItems.d.ts +1 -1
  187. package/dist/types/excalidraw/components/main-menu/MainMenu.d.ts +4 -1
  188. package/dist/types/excalidraw/components/shapes.d.ts +62 -0
  189. package/dist/types/excalidraw/context/tunnels.d.ts +1 -1
  190. package/dist/types/excalidraw/data/EditorLocalStorage.d.ts +1 -1
  191. package/dist/types/excalidraw/data/blob.d.ts +4 -4
  192. package/dist/types/excalidraw/data/filesystem.d.ts +2 -2
  193. package/dist/types/excalidraw/data/index.d.ts +2 -2
  194. package/dist/types/excalidraw/data/json.d.ts +1 -1
  195. package/dist/types/excalidraw/data/library.d.ts +3 -3
  196. package/dist/types/excalidraw/data/reconcile.d.ts +2 -2
  197. package/dist/types/excalidraw/data/resave.d.ts +1 -1
  198. package/dist/types/excalidraw/data/restore.d.ts +1 -1
  199. package/dist/types/excalidraw/data/transform.d.ts +4 -4
  200. package/dist/types/excalidraw/data/types.d.ts +3 -3
  201. package/dist/types/excalidraw/eraser/index.d.ts +14 -0
  202. package/dist/types/excalidraw/errors.d.ts +0 -3
  203. package/dist/types/excalidraw/fonts/Fonts.d.ts +2 -12
  204. package/dist/types/excalidraw/history.d.ts +2 -2
  205. package/dist/types/excalidraw/i18n.d.ts +1 -1
  206. package/dist/types/excalidraw/index.d.ts +15 -14
  207. package/dist/types/excalidraw/laser-trails.d.ts +1 -1
  208. package/dist/types/excalidraw/lasso/index.d.ts +15 -0
  209. package/dist/types/excalidraw/lasso/utils.d.ts +12 -0
  210. package/dist/types/excalidraw/renderer/helpers.d.ts +2 -2
  211. package/dist/types/excalidraw/renderer/staticSvgScene.d.ts +2 -2
  212. package/dist/types/excalidraw/scene/Renderer.d.ts +3 -3
  213. package/dist/types/excalidraw/scene/Scene.d.ts +5 -5
  214. package/dist/types/excalidraw/scene/export.d.ts +1 -1
  215. package/dist/types/excalidraw/scene/index.d.ts +2 -2
  216. package/dist/types/excalidraw/scene/scroll.d.ts +1 -1
  217. package/dist/types/excalidraw/scene/scrollbars.d.ts +1 -1
  218. package/dist/types/excalidraw/scene/types.d.ts +4 -4
  219. package/dist/types/excalidraw/snapping.d.ts +5 -6
  220. package/dist/types/excalidraw/store.d.ts +2 -2
  221. package/dist/types/excalidraw/types.d.ts +18 -15
  222. package/dist/types/excalidraw/visualdebug.d.ts +2 -2
  223. package/dist/types/excalidraw/{element → wysiwyg}/textWysiwyg.d.ts +1 -1
  224. package/dist/types/math/{point.d.ts → src/point.d.ts} +2 -2
  225. package/dist/types/math/{polygon.d.ts → src/polygon.d.ts} +1 -0
  226. package/dist/types/math/{segment.d.ts → src/segment.d.ts} +1 -1
  227. package/dist/types/math/{types.d.ts → src/types.d.ts} +1 -0
  228. package/dist/types/utils/{bbox.d.ts → src/bbox.d.ts} +1 -1
  229. package/dist/types/utils/{collision.d.ts → src/collision.d.ts} +2 -3
  230. package/dist/types/utils/{export.d.ts → src/export.d.ts} +2 -2
  231. package/dist/types/utils/{index.d.ts → src/index.d.ts} +1 -1
  232. package/dist/types/utils/{geometry → src}/shape.d.ts +2 -15
  233. package/dist/types/utils/{withinBounds.d.ts → src/withinBounds.d.ts} +2 -2
  234. package/history.ts +4 -2
  235. package/package.json +14 -2
  236. package/dist/dev/chunk-3SN6HYVK.js.map +0 -7
  237. package/dist/dev/chunk-LMHBUWQS.js.map +0 -7
  238. package/dist/dev/chunk-OKSO7T74.js +0 -4132
  239. package/dist/dev/chunk-OKSO7T74.js.map +0 -7
  240. package/dist/prod/chunk-36CXSE6H.js +0 -34
  241. package/dist/prod/chunk-EIO257PC.js +0 -86
  242. package/dist/prod/data/image-N4WCURRR.js +0 -1
  243. package/dist/types/excalidraw/shapes.d.ts +0 -85
  244. package/dist/dev/data/{image-V26YBSDB.js.map → image-JN3Y4CVN.js.map} +0 -0
  245. package/dist/dev/locales/{en-OZCJJ2HN.js.map → en-CKWC2GMK.js.map} +0 -0
  246. package/dist/types/{excalidraw → common/src}/keys.d.ts +0 -0
  247. package/dist/types/{excalidraw → common/src}/queue.d.ts +0 -0
  248. package/dist/types/{excalidraw → common/src}/random.d.ts +0 -0
  249. package/dist/types/{excalidraw/data → common/src}/url.d.ts +0 -0
  250. package/dist/types/{excalidraw → common/src}/utility-types.d.ts +0 -0
  251. package/dist/types/{excalidraw/element → element/src}/containerCache.d.ts +0 -0
  252. package/dist/types/{excalidraw/element → element/src}/cropElement.d.ts +0 -0
  253. package/dist/types/{excalidraw/element → element/src}/distance.d.ts +0 -0
  254. package/dist/types/{excalidraw/element → element/src}/elbowArrow.d.ts +0 -0
  255. package/dist/types/{excalidraw/element → element/src}/sortElements.d.ts +0 -0
  256. package/dist/types/{excalidraw/element → element/src}/textMeasurements.d.ts +0 -0
  257. package/dist/types/{excalidraw/element → element/src}/textWrapping.d.ts +0 -0
  258. package/dist/types/{excalidraw/element → element/src}/utils.d.ts +1 -1
  259. /package/dist/types/math/{angle.d.ts → src/angle.d.ts} +0 -0
  260. /package/dist/types/math/{curve.d.ts → src/curve.d.ts} +0 -0
  261. /package/dist/types/math/{ellipse.d.ts → src/ellipse.d.ts} +0 -0
  262. /package/dist/types/math/{index.d.ts → src/index.d.ts} +0 -0
  263. /package/dist/types/math/{line.d.ts → src/line.d.ts} +0 -0
  264. /package/dist/types/math/{range.d.ts → src/range.d.ts} +0 -0
  265. /package/dist/types/math/{rectangle.d.ts → src/rectangle.d.ts} +0 -0
  266. /package/dist/types/math/{triangle.d.ts → src/triangle.d.ts} +0 -0
  267. /package/dist/types/math/{utils.d.ts → src/utils.d.ts} +0 -0
  268. /package/dist/types/math/{vector.d.ts → src/vector.d.ts} +0 -0
@@ -1,8 +1,8 @@
1
1
  import React from "react";
2
- import type { RoughCanvas } from "roughjs/bin/canvas";
3
- import type { StaticCanvasAppState } from "../../types";
2
+ import type { NonDeletedExcalidrawElement, NonDeletedSceneElementsMap } from "@excalidraw/element/types";
4
3
  import type { RenderableElementsMap, StaticCanvasRenderConfig } from "../../scene/types";
5
- import type { NonDeletedExcalidrawElement, NonDeletedSceneElementsMap } from "../../element/types";
4
+ import type { StaticCanvasAppState } from "../../types";
5
+ import type { RoughCanvas } from "roughjs/bin/canvas";
6
6
  type StaticCanvasProps = {
7
7
  canvas: HTMLCanvasElement;
8
8
  rc: RoughCanvas;
@@ -40,7 +40,7 @@ declare const DropdownMenu: {
40
40
  displayName: string;
41
41
  Badge: {
42
42
  ({ type, children, }: {
43
- type?: import("../../utility-types").ValueOf<{
43
+ type?: import("@excalidraw/common/utility-types").ValueOf<{
44
44
  readonly GREEN: "green";
45
45
  readonly RED: "red";
46
46
  readonly BLUE: "blue";
@@ -1,6 +1,6 @@
1
- import type { JSX } from "react";
2
1
  import React from "react";
3
- import type { ValueOf } from "../../utility-types";
2
+ import type { ValueOf } from "@excalidraw/common/utility-types";
3
+ import type { JSX } from "react";
4
4
  declare const DropdownMenuItem: {
5
5
  ({ icon, value, order, children, shortcut, className, hovered, selected, textStyle, onSelect, onClick, ...rest }: {
6
6
  icon?: JSX.Element | undefined;
@@ -1,5 +1,5 @@
1
- import type { JSX } from "react";
2
1
  import React from "react";
2
+ import type { JSX } from "react";
3
3
  declare const DropdownMenuItemLink: {
4
4
  ({ icon, shortcut, href, children, onSelect, className, selected, rel, ...rest }: {
5
5
  href: string;
@@ -1,6 +1,6 @@
1
- import type { AppState, ExcalidrawProps, UIAppState } from "../../types";
2
- import type { ElementsMap, ExcalidrawEmbeddableElement, NonDeletedExcalidrawElement } from "../../element/types";
1
+ import type { ElementsMap, ExcalidrawEmbeddableElement, NonDeletedExcalidrawElement } from "@excalidraw/element/types";
3
2
  import "./Hyperlink.scss";
3
+ import type { AppState, ExcalidrawProps, UIAppState } from "../../types";
4
4
  export declare const Hyperlink: ({ element, elementsMap, setAppState, onLinkOpen, setToast, updateEmbedValidationStatus, }: {
5
5
  element: NonDeletedExcalidrawElement;
6
6
  elementsMap: ElementsMap;
@@ -1,6 +1,6 @@
1
1
  import type { GlobalPoint, Radians } from "@excalidraw/math";
2
- import type { Bounds } from "../../element/bounds";
3
- import type { ElementsMap, NonDeletedExcalidrawElement } from "../../element/types";
2
+ import type { Bounds } from "@excalidraw/element/bounds";
3
+ import type { ElementsMap, NonDeletedExcalidrawElement } from "@excalidraw/element/types";
4
4
  import type { AppState, UIAppState } from "../../types";
5
5
  export declare const EXTERNAL_LINK_IMG: HTMLImageElement;
6
6
  export declare const ELEMENT_LINK_IMG: HTMLImageElement;
@@ -1,5 +1,5 @@
1
1
  import React from "react";
2
- import type { Theme } from "../element/types";
2
+ import type { Theme } from "@excalidraw/element/types";
3
3
  export declare const iconFillColor: (theme: Theme) => string;
4
4
  type Opts = {
5
5
  width?: number;
@@ -19,6 +19,7 @@ export declare const WelcomeScreenHelpArrow: import("react/jsx-runtime").JSX.Ele
19
19
  export declare const WelcomeScreenTopToolbarArrow: import("react/jsx-runtime").JSX.Element;
20
20
  export declare const ExcalLogo: import("react/jsx-runtime").JSX.Element;
21
21
  export declare const SelectionIcon: import("react/jsx-runtime").JSX.Element;
22
+ export declare const LassoIcon: import("react/jsx-runtime").JSX.Element;
22
23
  export declare const RectangleIcon: import("react/jsx-runtime").JSX.Element;
23
24
  export declare const DiamondIcon: import("react/jsx-runtime").JSX.Element;
24
25
  export declare const EllipseIcon: import("react/jsx-runtime").JSX.Element;
@@ -1,4 +1,4 @@
1
- import type { Theme } from "../../element/types";
1
+ import type { Theme } from "@excalidraw/element/types";
2
2
  import "./DefaultItems.scss";
3
3
  export declare const LoadScene: {
4
4
  (): import("react/jsx-runtime").JSX.Element | null;
@@ -25,6 +25,9 @@ declare const MainMenu: React.FC<{
25
25
  order?: number | undefined;
26
26
  onSelect?: ((event: Event) => void) | undefined;
27
27
  children: React.ReactNode;
28
+ /**
29
+ * Called when any menu item is selected (clicked on).
30
+ */
28
31
  shortcut?: string | undefined;
29
32
  hovered?: boolean | undefined;
30
33
  selected?: boolean | undefined;
@@ -34,7 +37,7 @@ declare const MainMenu: React.FC<{
34
37
  displayName: string;
35
38
  Badge: {
36
39
  ({ type, children, }: {
37
- type?: import("../../utility-types").ValueOf<{
40
+ type?: import("@excalidraw/common/utility-types").ValueOf<{
38
41
  readonly GREEN: "green";
39
42
  readonly RED: "red";
40
43
  readonly BLUE: "blue";
@@ -0,0 +1,62 @@
1
+ export declare const SHAPES: readonly [{
2
+ readonly icon: import("react/jsx-runtime").JSX.Element;
3
+ readonly value: "selection";
4
+ readonly key: "v";
5
+ readonly numericKey: "1";
6
+ readonly fillable: true;
7
+ }, {
8
+ readonly icon: import("react/jsx-runtime").JSX.Element;
9
+ readonly value: "rectangle";
10
+ readonly key: "r";
11
+ readonly numericKey: "2";
12
+ readonly fillable: true;
13
+ }, {
14
+ readonly icon: import("react/jsx-runtime").JSX.Element;
15
+ readonly value: "diamond";
16
+ readonly key: "d";
17
+ readonly numericKey: "3";
18
+ readonly fillable: true;
19
+ }, {
20
+ readonly icon: import("react/jsx-runtime").JSX.Element;
21
+ readonly value: "ellipse";
22
+ readonly key: "o";
23
+ readonly numericKey: "4";
24
+ readonly fillable: true;
25
+ }, {
26
+ readonly icon: import("react/jsx-runtime").JSX.Element;
27
+ readonly value: "arrow";
28
+ readonly key: "a";
29
+ readonly numericKey: "5";
30
+ readonly fillable: true;
31
+ }, {
32
+ readonly icon: import("react/jsx-runtime").JSX.Element;
33
+ readonly value: "line";
34
+ readonly key: "l";
35
+ readonly numericKey: "6";
36
+ readonly fillable: true;
37
+ }, {
38
+ readonly icon: import("react/jsx-runtime").JSX.Element;
39
+ readonly value: "freedraw";
40
+ readonly key: readonly ["p", "x"];
41
+ readonly numericKey: "7";
42
+ readonly fillable: false;
43
+ }, {
44
+ readonly icon: import("react/jsx-runtime").JSX.Element;
45
+ readonly value: "text";
46
+ readonly key: "t";
47
+ readonly numericKey: "8";
48
+ readonly fillable: false;
49
+ }, {
50
+ readonly icon: import("react/jsx-runtime").JSX.Element;
51
+ readonly value: "image";
52
+ readonly key: null;
53
+ readonly numericKey: "9";
54
+ readonly fillable: false;
55
+ }, {
56
+ readonly icon: import("react/jsx-runtime").JSX.Element;
57
+ readonly value: "eraser";
58
+ readonly key: "e";
59
+ readonly numericKey: "0";
60
+ readonly fillable: false;
61
+ }];
62
+ export declare const findShapeByKey: (key: string) => "line" | "ellipse" | "text" | "rectangle" | "diamond" | "image" | "selection" | "arrow" | "freedraw" | "eraser" | null;
@@ -1,6 +1,6 @@
1
+ import { createIsolation } from "jotai-scope";
1
2
  import React from "react";
2
3
  import tunnel from "tunnel-rat";
3
- import { createIsolation } from "jotai-scope";
4
4
  export type Tunnel = ReturnType<typeof tunnel>;
5
5
  type TunnelsContextValue = {
6
6
  MainMenuTunnel: Tunnel;
@@ -1,4 +1,4 @@
1
- import type { EDITOR_LS_KEYS } from "../constants";
1
+ import type { EDITOR_LS_KEYS } from "@excalidraw/common";
2
2
  import type { JSONValue } from "../types";
3
3
  export declare class EditorLocalStorage {
4
4
  static has(key: typeof EDITOR_LS_KEYS[keyof typeof EDITOR_LS_KEYS]): boolean;
@@ -1,12 +1,12 @@
1
- import { IMAGE_MIME_TYPES, MIME_TYPES } from "../constants";
2
- import type { ExcalidrawElement, FileId } from "../element/types";
1
+ import { IMAGE_MIME_TYPES, MIME_TYPES } from "@excalidraw/common";
2
+ import type { ValueOf } from "@excalidraw/common/utility-types";
3
+ import type { ExcalidrawElement, FileId } from "@excalidraw/element/types";
3
4
  import type { AppState, DataURL, LibraryItem } from "../types";
4
- import type { ValueOf } from "../utility-types";
5
5
  import type { FileSystemHandle } from "./filesystem";
6
6
  import type { ImportedLibraryData } from "./types";
7
7
  export declare const getMimeType: (blob: Blob | string) => string;
8
8
  export declare const getFileHandleType: (handle: FileSystemHandle | null) => string | null;
9
- export declare const isImageFileHandleType: (type: string | null) => type is "svg" | "png";
9
+ export declare const isImageFileHandleType: (type: string | null) => type is "png" | "svg";
10
10
  export declare const isImageFileHandle: (handle: FileSystemHandle | null) => boolean;
11
11
  export declare const isSupportedImageFileType: (type: string | null | undefined) => boolean;
12
12
  export declare const isSupportedImageFile: (blob: Blob | null | undefined) => blob is Blob & {
@@ -1,6 +1,6 @@
1
- import type { FileSystemHandle } from "browser-fs-access";
2
1
  import { supported as nativeFileSystemSupported } from "browser-fs-access";
3
- import { MIME_TYPES } from "../constants";
2
+ import { MIME_TYPES } from "@excalidraw/common";
3
+ import type { FileSystemHandle } from "browser-fs-access";
4
4
  type FILE_EXTENSION = Exclude<keyof typeof MIME_TYPES, "binary">;
5
5
  export declare const fileOpen: <M extends boolean | undefined = false>(opts: {
6
6
  extensions?: FILE_EXTENSION[] | undefined;
@@ -1,7 +1,7 @@
1
- import type { ExcalidrawElement, ExcalidrawFrameLikeElement, NonDeletedExcalidrawElement } from "../element/types";
1
+ import type { ExcalidrawElement, ExcalidrawFrameLikeElement, NonDeletedExcalidrawElement } from "@excalidraw/element/types";
2
+ import type { FileSystemHandle } from "./filesystem";
2
3
  import type { ExportType } from "../scene/types";
3
4
  import type { AppState, BinaryFiles } from "../types";
4
- import type { FileSystemHandle } from "./filesystem";
5
5
  export { loadFromBlob } from "./blob";
6
6
  export { loadFromJSON, saveAsJSON } from "./json";
7
7
  export type ExportedElements = readonly NonDeletedExcalidrawElement[] & {
@@ -1,4 +1,4 @@
1
- import type { ExcalidrawElement } from "../element/types";
1
+ import type { ExcalidrawElement } from "@excalidraw/element/types";
2
2
  import type { AppState, BinaryFiles, LibraryItems } from "../types";
3
3
  import type { ImportedDataState, ImportedLibraryData } from "./types";
4
4
  export declare const serializeAsJSON: (elements: readonly ExcalidrawElement[], appState: Partial<AppState>, files: BinaryFiles, type: "local" | "database") => string;
@@ -1,7 +1,7 @@
1
- import type { LibraryItems, ExcalidrawImperativeAPI, LibraryItemsSource, LibraryItems_anyVersion } from "../types";
1
+ import type { ExcalidrawElement } from "@excalidraw/element/types";
2
+ import type { MaybePromise } from "@excalidraw/common/utility-types";
2
3
  import type App from "../components/App";
3
- import type { ExcalidrawElement } from "../element/types";
4
- import type { MaybePromise } from "../utility-types";
4
+ import type { LibraryItems, ExcalidrawImperativeAPI, LibraryItemsSource, LibraryItems_anyVersion } from "../types";
5
5
  export type LibraryPersistedData = {
6
6
  libraryItems: LibraryItems;
7
7
  };
@@ -1,6 +1,6 @@
1
- import type { OrderedExcalidrawElement } from "../element/types";
1
+ import type { OrderedExcalidrawElement } from "@excalidraw/element/types";
2
+ import type { MakeBrand } from "@excalidraw/common/utility-types";
2
3
  import type { AppState } from "../types";
3
- import type { MakeBrand } from "../utility-types";
4
4
  export type ReconciledExcalidrawElement = OrderedExcalidrawElement & MakeBrand<"ReconciledElement">;
5
5
  export type RemoteExcalidrawElement = OrderedExcalidrawElement & MakeBrand<"RemoteExcalidrawElement">;
6
6
  export declare const reconcileElements: (localElements: readonly OrderedExcalidrawElement[], remoteElements: readonly RemoteExcalidrawElement[], localAppState: AppState) => ReconciledExcalidrawElement[];
@@ -1,4 +1,4 @@
1
- import type { ExcalidrawElement } from "../element/types";
1
+ import type { ExcalidrawElement } from "@excalidraw/element/types";
2
2
  import type { AppState, BinaryFiles } from "../types";
3
3
  export declare const resaveAsImageWithScene: (elements: readonly ExcalidrawElement[], appState: AppState, files: BinaryFiles, name: string) => Promise<{
4
4
  fileHandle: import("browser-fs-access").FileSystemHandle;
@@ -1,4 +1,4 @@
1
- import type { ExcalidrawElement, OrderedExcalidrawElement } from "../element/types";
1
+ import type { ExcalidrawElement, OrderedExcalidrawElement } from "@excalidraw/element/types";
2
2
  import type { AppState, BinaryFiles, LibraryItem } from "../types";
3
3
  import type { ImportedDataState } from "./types";
4
4
  type RestoredAppState = Omit<AppState, "offsetTop" | "offsetLeft" | "width" | "height">;
@@ -1,6 +1,6 @@
1
- import type { ElementConstructorOpts } from "../element/newElement";
2
- import type { ExcalidrawBindableElement, ExcalidrawElement, ExcalidrawFrameElement, ExcalidrawFreeDrawElement, ExcalidrawGenericElement, ExcalidrawIframeLikeElement, ExcalidrawImageElement, ExcalidrawLinearElement, ExcalidrawMagicFrameElement, ExcalidrawSelectionElement, ExcalidrawTextElement, FileId, FontFamilyValues, TextAlign, VerticalAlign } from "../element/types";
3
- import type { MarkOptional } from "../utility-types";
1
+ import type { ElementConstructorOpts } from "@excalidraw/element/newElement";
2
+ import type { ExcalidrawBindableElement, ExcalidrawElement, ExcalidrawFrameElement, ExcalidrawFreeDrawElement, ExcalidrawGenericElement, ExcalidrawIframeLikeElement, ExcalidrawImageElement, ExcalidrawLinearElement, ExcalidrawMagicFrameElement, ExcalidrawSelectionElement, ExcalidrawTextElement, FileId, FontFamilyValues, TextAlign, VerticalAlign } from "@excalidraw/element/types";
3
+ import type { MarkOptional } from "@excalidraw/common/utility-types";
4
4
  export type ValidLinearElement = {
5
5
  type: "arrow" | "line";
6
6
  x: number;
@@ -78,4 +78,4 @@ export type ExcalidrawElementSkeleton = Extract<Exclude<ExcalidrawElement, Excal
78
78
  } & Partial<ExcalidrawMagicFrameElement>);
79
79
  export declare const convertToExcalidrawElements: (elementsSkeleton: ExcalidrawElementSkeleton[] | null, opts?: {
80
80
  regenerateIds: boolean;
81
- }) => import("../element/types").OrderedExcalidrawElement[];
81
+ }) => import("@excalidraw/element/types").OrderedExcalidrawElement[];
@@ -1,7 +1,7 @@
1
- import type { ExcalidrawElement } from "../element/types";
2
- import type { AppState, BinaryFiles, LibraryItems, LibraryItems_anyVersion } from "../types";
1
+ import type { VERSIONS } from "@excalidraw/common";
2
+ import type { ExcalidrawElement } from "@excalidraw/element/types";
3
3
  import type { cleanAppStateForExport } from "../appState";
4
- import type { VERSIONS } from "../constants";
4
+ import type { AppState, BinaryFiles, LibraryItems, LibraryItems_anyVersion } from "../types";
5
5
  export interface ExportedDataState {
6
6
  type: string;
7
7
  version: number;
@@ -0,0 +1,14 @@
1
+ import { AnimatedTrail } from "../animated-trail";
2
+ import type { AnimationFrameHandler } from "../animation-frame-handler";
3
+ import type App from "../components/App";
4
+ export declare class EraserTrail extends AnimatedTrail {
5
+ private elementsToErase;
6
+ private groupsToErase;
7
+ private segmentsCache;
8
+ private geometricShapesCache;
9
+ constructor(animationFrameHandler: AnimationFrameHandler, app: App);
10
+ startPath(x: number, y: number): void;
11
+ addPointToPath(x: number, y: number, restore?: boolean): string[];
12
+ private updateElementsToBeErased;
13
+ endPath(): void;
14
+ }
@@ -10,9 +10,6 @@ export declare class ImageSceneDataError extends Error {
10
10
  code: ImageSceneDataErrorCode;
11
11
  constructor(message?: string, code?: ImageSceneDataErrorCode);
12
12
  }
13
- export declare class InvalidFractionalIndexError extends Error {
14
- code: "ELEMENT_HAS_INVALID_INDEX";
15
- }
16
13
  type WorkerErrorCodes = "WORKER_URL_NOT_DEFINED" | "WORKER_IN_THE_MAIN_CHUNK";
17
14
  export declare class WorkerUrlNotDefinedError extends Error {
18
15
  code: WorkerErrorCodes;
@@ -1,6 +1,6 @@
1
+ import { type FontMetadata } from "@excalidraw/common";
2
+ import type { ExcalidrawElement } from "@excalidraw/element/types";
1
3
  import { ExcalidrawFontFace } from "./ExcalidrawFontFace";
2
- import { type FontMetadata } from "./FontMetadata";
3
- import type { ExcalidrawElement, ExcalidrawTextElement, FontFamilyValues } from "../element/types";
4
4
  import type Scene from "../scene/Scene";
5
5
  export declare class Fonts {
6
6
  static readonly loadedFontsCache: Set<string>;
@@ -73,16 +73,6 @@ export declare class Fonts {
73
73
  */
74
74
  private static getAllFamilies;
75
75
  }
76
- /**
77
- * Calculates vertical offset for a text with alphabetic baseline.
78
- */
79
- export declare const getVerticalOffset: (fontFamily: ExcalidrawTextElement["fontFamily"], fontSize: ExcalidrawTextElement["fontSize"], lineHeightPx: number) => number;
80
- /**
81
- * Gets line height forr a selected family.
82
- */
83
- export declare const getLineHeight: (fontFamily: FontFamilyValues) => number & {
84
- _brand: "unitlessLineHeight";
85
- };
86
76
  export interface ExcalidrawFontFaceDescriptor {
87
77
  uri: string;
88
78
  descriptors?: FontFaceDescriptors;
@@ -1,6 +1,6 @@
1
- import type { AppStateChange, ElementsChange } from "./change";
2
- import type { SceneElementsMap } from "./element/types";
1
+ import type { SceneElementsMap } from "@excalidraw/element/types";
3
2
  import { Emitter } from "./emitter";
3
+ import type { AppStateChange, ElementsChange } from "./change";
4
4
  import type { Snapshot } from "./store";
5
5
  import type { AppState } from "./types";
6
6
  export declare class HistoryChangedEvent {
@@ -1,5 +1,5 @@
1
+ import type { NestedKeyOf } from "@excalidraw/common/utility-types";
1
2
  import fallbackLangData from "./locales/en.json";
2
- import type { NestedKeyOf } from "./utility-types";
3
3
  export interface Language {
4
4
  code: string;
5
5
  label: string;
@@ -1,28 +1,30 @@
1
1
  import React from "react";
2
+ import Footer from "./components/footer/FooterCenter";
3
+ import LiveCollaborationTrigger from "./components/live-collaboration/LiveCollaborationTrigger";
4
+ import MainMenu from "./components/main-menu/MainMenu";
5
+ import WelcomeScreen from "./components/welcome-screen/WelcomeScreen";
2
6
  import "./css/app.scss";
3
7
  import "./css/styles.scss";
4
8
  import "./fonts/fonts.css";
5
9
  import type { ExcalidrawProps } from "./types";
6
- import Footer from "./components/footer/FooterCenter";
7
- import MainMenu from "./components/main-menu/MainMenu";
8
- import WelcomeScreen from "./components/welcome-screen/WelcomeScreen";
9
- import LiveCollaborationTrigger from "./components/live-collaboration/LiveCollaborationTrigger";
10
10
  export declare const Excalidraw: React.MemoExoticComponent<(props: ExcalidrawProps) => import("react/jsx-runtime").JSX.Element>;
11
- export { getSceneVersion, hashElementsVersion, hashString, isInvisiblySmallElement, getNonDeletedElements, getTextFromElements, } from "./element";
11
+ export { getSceneVersion, hashElementsVersion, hashString, getNonDeletedElements, } from "@excalidraw/element";
12
+ export { getTextFromElements } from "@excalidraw/element/textElement";
13
+ export { isInvisiblySmallElement } from "@excalidraw/element/sizeHelpers";
12
14
  export { defaultLang, useI18n, languages } from "./i18n";
13
15
  export { restore, restoreAppState, restoreElements, restoreLibraryItems, } from "./data/restore";
14
16
  export { reconcileElements } from "./data/reconcile";
15
17
  export { exportToCanvas, exportToBlob, exportToSvg, exportToClipboard, } from "@excalidraw/utils/export";
16
18
  export { serializeAsJSON, serializeLibraryAsJSON } from "./data/json";
17
19
  export { loadFromBlob, loadSceneOrLibraryFromBlob, loadLibraryFromBlob, } from "./data/blob";
18
- export { getFreeDrawSvgPath } from "./renderer/renderElement";
20
+ export { getFreeDrawSvgPath } from "@excalidraw/element/renderElement";
19
21
  export { mergeLibraryItems, getLibraryItemsHash } from "./data/library";
20
- export { isLinearElement } from "./element/typeChecks";
21
- export { FONT_FAMILY, THEME, MIME_TYPES, ROUNDNESS, DEFAULT_LASER_COLOR, UserIdleState, } from "./constants";
22
- export { mutateElement, newElementWith, bumpVersion, } from "./element/mutateElement";
22
+ export { isLinearElement } from "@excalidraw/element/typeChecks";
23
+ export { FONT_FAMILY, THEME, MIME_TYPES, ROUNDNESS, DEFAULT_LASER_COLOR, UserIdleState, normalizeLink, } from "@excalidraw/common";
24
+ export { mutateElement, newElementWith, bumpVersion, } from "@excalidraw/element/mutateElement";
23
25
  export { CaptureUpdateAction } from "./store";
24
26
  export { parseLibraryTokensFromUrl, useHandleLibrary } from "./data/library";
25
- export { sceneCoordsToViewportCoords, viewportCoordsToSceneCoords, } from "./utils";
27
+ export { sceneCoordsToViewportCoords, viewportCoordsToSceneCoords, } from "@excalidraw/common";
26
28
  export { Sidebar } from "./components/Sidebar/Sidebar";
27
29
  export { Button } from "./components/Button";
28
30
  export { Footer };
@@ -34,12 +36,11 @@ export { Stats } from "./components/Stats";
34
36
  export { DefaultSidebar } from "./components/DefaultSidebar";
35
37
  export { TTDDialog } from "./components/TTDDialog/TTDDialog";
36
38
  export { TTDDialogTrigger } from "./components/TTDDialog/TTDDialogTrigger";
37
- export { normalizeLink } from "./data/url";
38
39
  export { zoomToFitBounds } from "./actions/actionCanvas";
39
40
  export { convertToExcalidrawElements } from "./data/transform";
40
- export { getCommonBounds, getVisibleSceneBounds } from "./element/bounds";
41
+ export { getCommonBounds, getVisibleSceneBounds, } from "@excalidraw/element/bounds";
41
42
  export { elementsOverlappingBBox, isElementInsideBBox, elementPartiallyOverlapsWithOrContainsBBox, } from "@excalidraw/utils/withinBounds";
42
43
  export { DiagramToCodePlugin } from "./components/DiagramToCodePlugin/DiagramToCodePlugin";
43
44
  export { getDataURL } from "./data/blob";
44
- export { isElementLink } from "./element/elementLink";
45
- export { setCustomTextMetricsProvider } from "./element/textMeasurements";
45
+ export { isElementLink } from "@excalidraw/element/elementLink";
46
+ export { setCustomTextMetricsProvider } from "@excalidraw/element/textMeasurements";
@@ -1,5 +1,5 @@
1
- import type { Trail } from "./animated-trail";
2
1
  import { AnimatedTrail } from "./animated-trail";
2
+ import type { Trail } from "./animated-trail";
3
3
  import type { AnimationFrameHandler } from "./animation-frame-handler";
4
4
  import type App from "./components/App";
5
5
  export declare class LaserTrails implements Trail {
@@ -0,0 +1,15 @@
1
+ import { type AnimationFrameHandler } from "../animation-frame-handler";
2
+ import { AnimatedTrail } from "../animated-trail";
3
+ import type App from "../components/App";
4
+ export declare class LassoTrail extends AnimatedTrail {
5
+ private intersectedElements;
6
+ private enclosedElements;
7
+ private elementsSegments;
8
+ private keepPreviousSelection;
9
+ constructor(animationFrameHandler: AnimationFrameHandler, app: App);
10
+ startPath(x: number, y: number, keepPreviousSelection?: boolean): void;
11
+ selectElementsFromIds: (ids: string[]) => void;
12
+ addPointToPath: (x: number, y: number, keepPreviousSelection?: boolean) => void;
13
+ private updateSelection;
14
+ endPath(): void;
15
+ }
@@ -0,0 +1,12 @@
1
+ import type { ElementsSegmentsMap, GlobalPoint } from "@excalidraw/math/types";
2
+ import type { ExcalidrawElement } from "@excalidraw/element/types";
3
+ export declare const getLassoSelectedElementIds: (input: {
4
+ lassoPath: GlobalPoint[];
5
+ elements: readonly ExcalidrawElement[];
6
+ elementsSegments: ElementsSegmentsMap;
7
+ intersectedElements: Set<ExcalidrawElement["id"]>;
8
+ enclosedElements: Set<ExcalidrawElement["id"]>;
9
+ simplifyDistance?: number;
10
+ }) => {
11
+ selectedElementIds: string[];
12
+ };
@@ -1,5 +1,5 @@
1
- import type { StaticCanvasAppState, AppState } from "../types";
2
1
  import type { StaticCanvasRenderConfig } from "../scene/types";
2
+ import type { StaticCanvasAppState, AppState } from "../types";
3
3
  export declare const fillCircle: (context: CanvasRenderingContext2D, cx: number, cy: number, radius: number, stroke?: boolean) => void;
4
4
  export declare const getNormalizedCanvasDimensions: (canvas: HTMLCanvasElement, scale: number) => [number, number];
5
5
  export declare const bootstrapCanvas: ({ canvas, scale, normalizedWidth, normalizedHeight, theme, isExporting, viewBackgroundColor, }: {
@@ -7,7 +7,7 @@ export declare const bootstrapCanvas: ({ canvas, scale, normalizedWidth, normali
7
7
  scale: number;
8
8
  normalizedWidth: number;
9
9
  normalizedHeight: number;
10
- theme?: import("../element/types").Theme | undefined;
10
+ theme?: import("@excalidraw/element/types").Theme | undefined;
11
11
  isExporting?: boolean | undefined;
12
12
  viewBackgroundColor?: string | null | undefined;
13
13
  }) => CanvasRenderingContext2D;
@@ -1,5 +1,5 @@
1
- import type { RoughSVG } from "roughjs/bin/svg";
2
- import type { NonDeletedExcalidrawElement } from "../element/types";
1
+ import type { NonDeletedExcalidrawElement } from "@excalidraw/element/types";
3
2
  import type { RenderableElementsMap, SVGRenderConfig } from "../scene/types";
4
3
  import type { BinaryFiles } from "../types";
4
+ import type { RoughSVG } from "roughjs/bin/svg";
5
5
  export declare const renderSceneToSvg: (elements: readonly NonDeletedExcalidrawElement[], elementsMap: RenderableElementsMap, rsvg: RoughSVG, svgRoot: SVGElement, files: BinaryFiles, renderConfig: SVGRenderConfig) => void;
@@ -1,6 +1,6 @@
1
- import type { ExcalidrawElement, NonDeletedExcalidrawElement } from "../element/types";
2
- import type { AppState } from "../types";
1
+ import type { ExcalidrawElement, NonDeletedExcalidrawElement } from "@excalidraw/element/types";
3
2
  import type Scene from "./Scene";
3
+ import type { AppState } from "../types";
4
4
  export declare class Renderer {
5
5
  private scene;
6
6
  constructor(scene: Scene);
@@ -19,7 +19,7 @@ export declare class Renderer {
19
19
  pendingImageElementId: AppState["pendingImageElementId"];
20
20
  sceneNonce: ReturnType<InstanceType<typeof Scene>["getSceneNonce"]>;
21
21
  }) => {
22
- elementsMap: Map<string, NonDeletedExcalidrawElement> & import("../utility-types").MakeBrand<"NonDeletedElementsMap"> & import("../utility-types").MakeBrand<"RenderableElementsMap">;
22
+ elementsMap: Map<string, NonDeletedExcalidrawElement> & import("@excalidraw/common/utility-types").MakeBrand<"NonDeletedElementsMap"> & import("@excalidraw/common/utility-types").MakeBrand<"RenderableElementsMap">;
23
23
  visibleElements: readonly NonDeletedExcalidrawElement[];
24
24
  }) & {
25
25
  clear: () => void;
@@ -1,5 +1,5 @@
1
- import type { ExcalidrawElement, NonDeletedExcalidrawElement, NonDeleted, ExcalidrawFrameLikeElement, ElementsMapOrArray, OrderedExcalidrawElement, Ordered } from "../element/types";
2
- import type { LinearElementEditor } from "../element/linearElementEditor";
1
+ import type { LinearElementEditor } from "@excalidraw/element/linearElementEditor";
2
+ import type { ExcalidrawElement, NonDeletedExcalidrawElement, NonDeleted, ExcalidrawFrameLikeElement, ElementsMapOrArray, OrderedExcalidrawElement, Ordered } from "@excalidraw/element/types";
3
3
  import type { AppState } from "../types";
4
4
  type ElementIdKey = InstanceType<typeof LinearElementEditor>["elementId"];
5
5
  type ElementKey = ExcalidrawElement | ElementIdKey;
@@ -30,9 +30,9 @@ declare class Scene {
30
30
  */
31
31
  private sceneNonce;
32
32
  getSceneNonce(): number | undefined;
33
- getNonDeletedElementsMap(): Map<string, Ordered<NonDeletedExcalidrawElement>> & import("../utility-types").MakeBrand<"NonDeletedSceneElementsMap">;
33
+ getNonDeletedElementsMap(): Map<string, Ordered<NonDeletedExcalidrawElement>> & import("@excalidraw/common/utility-types").MakeBrand<"NonDeletedSceneElementsMap">;
34
34
  getElementsIncludingDeleted(): readonly OrderedExcalidrawElement[];
35
- getElementsMapIncludingDeleted(): Map<string, Ordered<ExcalidrawElement>> & import("../utility-types").MakeBrand<"SceneElementsMap">;
35
+ getElementsMapIncludingDeleted(): Map<string, Ordered<ExcalidrawElement>> & import("@excalidraw/common/utility-types").MakeBrand<"SceneElementsMap">;
36
36
  getNonDeletedElements(): readonly Ordered<NonDeletedExcalidrawElement>[];
37
37
  getFramesIncludingDeleted(): readonly ExcalidrawFrameLikeElement[];
38
38
  getSelectedElements(opts: {
@@ -73,7 +73,7 @@ declare class Scene {
73
73
  getElementIndex(elementId: string): number;
74
74
  getContainerElement: (element: (ExcalidrawElement & {
75
75
  containerId: ExcalidrawElement["id"] | null;
76
- }) | null) => import("../element/types").ExcalidrawSelectionElement | import("../element/types").ExcalidrawRectangleElement | import("../element/types").ExcalidrawDiamondElement | import("../element/types").ExcalidrawEllipseElement | import("../element/types").ExcalidrawTextElement | import("../element/types").ExcalidrawLinearElement | import("../element/types").ExcalidrawFreeDrawElement | import("../element/types").ExcalidrawImageElement | import("../element/types").ExcalidrawFrameElement | import("../element/types").ExcalidrawMagicFrameElement | import("../element/types").ExcalidrawIframeElement | import("../element/types").ExcalidrawEmbeddableElement | null;
76
+ }) | null) => import("@excalidraw/element/types").ExcalidrawRectangleElement | import("@excalidraw/element/types").ExcalidrawDiamondElement | import("@excalidraw/element/types").ExcalidrawFrameElement | import("@excalidraw/element/types").ExcalidrawMagicFrameElement | import("@excalidraw/element/types").ExcalidrawEmbeddableElement | import("@excalidraw/element/types").ExcalidrawImageElement | import("@excalidraw/element/types").ExcalidrawIframeElement | import("@excalidraw/element/types").ExcalidrawTextElement | import("@excalidraw/element/types").ExcalidrawSelectionElement | import("@excalidraw/element/types").ExcalidrawEllipseElement | import("@excalidraw/element/types").ExcalidrawLinearElement | import("@excalidraw/element/types").ExcalidrawFreeDrawElement | null;
77
77
  getElementsFromId: (id: string) => ExcalidrawElement[];
78
78
  }
79
79
  export default Scene;
@@ -1,4 +1,4 @@
1
- import type { ExcalidrawFrameLikeElement, NonDeletedExcalidrawElement } from "../element/types";
1
+ import type { ExcalidrawFrameLikeElement, NonDeletedExcalidrawElement } from "@excalidraw/element/types";
2
2
  import type { AppState, BinaryFiles } from "../types";
3
3
  export declare const exportToCanvas: (elements: readonly NonDeletedExcalidrawElement[], appState: AppState, files: BinaryFiles, { exportBackground, exportPadding, viewBackgroundColor, exportingFrame, }: {
4
4
  exportBackground: boolean;
@@ -1,4 +1,4 @@
1
- export { isSomeElementSelected, getElementsWithinSelection, getCommonAttributeOfSelectedElements, getSelectedElements, getTargetElements, } from "./selection";
1
+ export { isSomeElementSelected, getElementsWithinSelection, getCommonAttributeOfSelectedElements, getSelectedElements, getTargetElements, } from "@excalidraw/element/selection";
2
2
  export { calculateScrollCenter } from "./scroll";
3
- export { hasBackground, hasStrokeWidth, hasStrokeStyle, canHaveArrowheads, canChangeRoundness, } from "./comparisons";
3
+ export { hasBackground, hasStrokeWidth, hasStrokeStyle, canHaveArrowheads, canChangeRoundness, } from "@excalidraw/element/comparisons";
4
4
  export { getNormalizedZoom, getNormalizedGridSize, getNormalizedGridStep, } from "./normalize";
@@ -1,5 +1,5 @@
1
+ import type { ExcalidrawElement } from "@excalidraw/element/types";
1
2
  import type { AppState, Offsets, PointerCoords, Zoom } from "../types";
2
- import type { ExcalidrawElement } from "../element/types";
3
3
  export declare const centerScrollOn: ({ scenePoint, viewportDimensions, zoom, offsets, }: {
4
4
  scenePoint: PointerCoords;
5
5
  viewportDimensions: {
@@ -1,6 +1,6 @@
1
+ import type { ExcalidrawElement } from "@excalidraw/element/types";
1
2
  import type { InteractiveCanvasAppState } from "../types";
2
3
  import type { ScrollBars } from "./types";
3
- import type { ExcalidrawElement } from "../element/types";
4
4
  export declare const SCROLLBAR_MARGIN = 4;
5
5
  export declare const SCROLLBAR_WIDTH = 6;
6
6
  export declare const SCROLLBAR_COLOR = "rgba(0,0,0,0.3)";
@@ -1,9 +1,9 @@
1
+ import type { UserIdleState } from "@excalidraw/common";
2
+ import type { ExcalidrawElement, NonDeletedElementsMap, NonDeletedExcalidrawElement, NonDeletedSceneElementsMap } from "@excalidraw/element/types";
3
+ import type { MakeBrand } from "@excalidraw/common/utility-types";
4
+ import type { AppClassProperties, AppState, EmbedsValidationStatus, ElementsPendingErasure, InteractiveCanvasAppState, StaticCanvasAppState, SocketId, Device, PendingExcalidrawElements } from "../types";
1
5
  import type { RoughCanvas } from "roughjs/bin/canvas";
2
6
  import type { Drawable } from "roughjs/bin/core";
3
- import type { ExcalidrawElement, NonDeletedElementsMap, NonDeletedExcalidrawElement, NonDeletedSceneElementsMap } from "../element/types";
4
- import type { AppClassProperties, AppState, EmbedsValidationStatus, ElementsPendingErasure, InteractiveCanvasAppState, StaticCanvasAppState, SocketId, Device, PendingExcalidrawElements } from "../types";
5
- import type { MakeBrand } from "../utility-types";
6
- import type { UserIdleState } from "../constants";
7
7
  export type RenderableElementsMap = NonDeletedElementsMap & MakeBrand<"RenderableElementsMap">;
8
8
  export type StaticCanvasRenderConfig = {
9
9
  canvasBackgroundColor: AppState["viewBackgroundColor"];