@dwelle/excalidraw 0.4.0-cfd6fb7 → 0.4.0-d27af2e

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 (243) hide show
  1. package/CHANGELOG.md +497 -447
  2. package/README.md +18 -1362
  3. package/dist/excalidraw-assets/Assistant-Bold.woff2 +0 -0
  4. package/dist/excalidraw-assets/Assistant-Medium.woff2 +0 -0
  5. package/dist/excalidraw-assets/Assistant-Regular.woff2 +0 -0
  6. package/dist/excalidraw-assets/Assistant-SemiBold.woff2 +0 -0
  7. package/dist/excalidraw-assets/vendor-d415b28e9024dee4bb1b.js +2 -0
  8. package/dist/excalidraw-assets-dev/Assistant-Bold.woff2 +0 -0
  9. package/dist/excalidraw-assets-dev/Assistant-Medium.woff2 +0 -0
  10. package/dist/excalidraw-assets-dev/Assistant-Regular.woff2 +0 -0
  11. package/dist/excalidraw-assets-dev/Assistant-SemiBold.woff2 +0 -0
  12. package/dist/excalidraw-assets-dev/{vendor-c0592035c3911af79359.js → vendor-a14cd58fa2db417e42b2.js} +7 -7
  13. package/dist/excalidraw.development.js +3269 -1350
  14. package/dist/excalidraw.production.min.js +1 -1
  15. package/dist/excalidraw.production.min.js.LICENSE.txt +20 -7
  16. package/main.js +1 -8
  17. package/package.json +9 -4
  18. package/types/actions/actionAddToLibrary.d.ts +136 -55
  19. package/types/actions/actionAlign.d.ts +25 -20
  20. package/types/actions/actionBoundText.d.ts +193 -23
  21. package/types/actions/actionCanvas.d.ts +794 -172
  22. package/types/actions/actionClipboard.d.ts +252 -94
  23. package/types/actions/actionDeleteSelected.d.ts +144 -58
  24. package/types/actions/actionDistribute.d.ts +7 -8
  25. package/types/actions/actionDuplicateSelection.d.ts +1 -2
  26. package/types/actions/actionElementLock.d.ts +283 -0
  27. package/types/actions/actionExport.d.ts +469 -225
  28. package/types/actions/actionFinalize.d.ts +90 -40
  29. package/types/actions/actionFlip.d.ts +4 -7
  30. package/types/actions/actionFrame.d.ts +441 -0
  31. package/types/actions/actionGroup.d.ts +259 -10
  32. package/types/actions/actionHistory.d.ts +1 -1
  33. package/types/actions/actionLinearEditor.d.ts +141 -0
  34. package/types/actions/actionMenu.d.ts +141 -61
  35. package/types/actions/actionNavigate.d.ts +2 -1
  36. package/types/actions/actionProperties.d.ts +605 -253
  37. package/types/actions/actionSelectAll.d.ts +127 -2
  38. package/types/actions/actionStyles.d.ts +46 -20
  39. package/types/actions/actionToggleGridMode.d.ts +48 -20
  40. package/types/actions/{actionToggleLock.d.ts → actionToggleObjectsSnapMode.d.ts} +60 -32
  41. package/types/actions/actionToggleStats.d.ts +47 -20
  42. package/types/actions/actionToggleViewMode.d.ts +48 -20
  43. package/types/actions/actionToggleZenMode.d.ts +48 -20
  44. package/types/actions/actionZindex.d.ts +4 -4
  45. package/types/actions/index.d.ts +3 -1
  46. package/types/actions/manager.d.ts +2 -1
  47. package/types/actions/shortcuts.d.ts +2 -1
  48. package/types/actions/types.d.ts +15 -10
  49. package/types/appState.d.ts +31 -25
  50. package/types/charts.d.ts +2 -2
  51. package/types/clients.d.ts +5 -6
  52. package/types/clipboard.d.ts +9 -3
  53. package/types/colors.d.ts +60 -5
  54. package/types/components/Actions.d.ts +20 -7
  55. package/types/components/ActiveConfirmDialog.d.ts +4 -0
  56. package/types/components/App.d.ts +95 -29
  57. package/types/components/Avatar.d.ts +2 -3
  58. package/types/components/BraveMeasureTextError.d.ts +2 -0
  59. package/types/components/Button.d.ts +16 -0
  60. package/types/components/ButtonIconSelect.d.ts +11 -3
  61. package/types/components/Card.d.ts +0 -1
  62. package/types/components/ColorPicker/ColorInput.d.ts +9 -0
  63. package/types/components/ColorPicker/ColorPicker.d.ts +19 -0
  64. package/types/components/ColorPicker/CustomColorList.d.ts +8 -0
  65. package/types/components/ColorPicker/HotkeyLabel.d.ts +8 -0
  66. package/types/components/ColorPicker/Picker.d.ts +18 -0
  67. package/types/components/ColorPicker/PickerColorList.d.ts +10 -0
  68. package/types/components/ColorPicker/PickerHeading.d.ts +5 -0
  69. package/types/components/ColorPicker/ShadeList.d.ts +8 -0
  70. package/types/components/ColorPicker/TopPicks.d.ts +9 -0
  71. package/types/components/ColorPicker/colorPickerUtils.d.ts +21 -0
  72. package/types/components/ColorPicker/keyboardNavHandlers.d.ts +20 -0
  73. package/types/components/ContextMenu.d.ts +9 -22
  74. package/types/components/DefaultSidebar.d.ts +29 -0
  75. package/types/components/Dialog.d.ts +3 -4
  76. package/types/components/DialogActionButton.d.ts +10 -0
  77. package/types/components/ErrorDialog.d.ts +3 -2
  78. package/types/components/ExcalidrawLogo.d.ts +15 -0
  79. package/types/components/EyeDropper.d.ts +28 -0
  80. package/types/components/FilledButton.d.ts +17 -0
  81. package/types/components/FixedSideContainer.d.ts +1 -1
  82. package/types/components/HandButton.d.ts +10 -0
  83. package/types/components/HelpButton.d.ts +7 -0
  84. package/types/components/HintViewer.d.ts +5 -5
  85. package/types/components/HomeButton.d.ts +5 -0
  86. package/types/components/ImageExportDialog.d.ts +8 -11
  87. package/types/components/InitializeApp.d.ts +2 -0
  88. package/types/components/Island.d.ts +1 -1
  89. package/types/components/JSONExportDialog.d.ts +8 -6
  90. package/types/components/LayerUI.d.ts +11 -15
  91. package/types/components/LibraryMenu.d.ts +15 -7
  92. package/types/components/LibraryMenuBrowseButton.d.ts +7 -0
  93. package/types/components/LibraryMenuControlButtons.d.ts +9 -0
  94. package/types/components/LibraryMenuHeaderContent.d.ts +17 -0
  95. package/types/components/LibraryMenuItems.d.ts +4 -14
  96. package/types/components/LibraryMenuSection.d.ts +22 -0
  97. package/types/components/LibraryUnit.d.ts +7 -5
  98. package/types/components/LoadingMessage.d.ts +2 -1
  99. package/types/components/LockButton.d.ts +1 -2
  100. package/types/components/MobileMenu.d.ts +13 -14
  101. package/types/components/OverwriteConfirm/OverwriteConfirm.d.ts +17 -0
  102. package/types/components/OverwriteConfirm/OverwriteConfirmActions.d.ts +17 -0
  103. package/types/components/OverwriteConfirm/OverwriteConfirmState.d.ts +22 -0
  104. package/types/components/PasteChartDialog.d.ts +4 -5
  105. package/types/components/PenModeButton.d.ts +1 -1
  106. package/types/components/Popover.d.ts +1 -1
  107. package/types/components/ProjectName.d.ts +2 -1
  108. package/types/components/PublishLibrary.d.ts +2 -2
  109. package/types/components/RadioGroup.d.ts +12 -0
  110. package/types/components/Section.d.ts +1 -1
  111. package/types/components/Sidebar/Sidebar.d.ts +76 -0
  112. package/types/components/Sidebar/SidebarHeader.d.ts +7 -0
  113. package/types/components/Sidebar/SidebarTab.d.ts +8 -0
  114. package/types/components/Sidebar/SidebarTabTrigger.d.ts +9 -0
  115. package/types/components/Sidebar/SidebarTabTriggers.d.ts +6 -0
  116. package/types/components/Sidebar/SidebarTabs.d.ts +6 -0
  117. package/types/components/Sidebar/SidebarTrigger.d.ts +6 -0
  118. package/types/components/Sidebar/common.d.ts +33 -0
  119. package/types/components/Spinner.d.ts +2 -1
  120. package/types/components/Stack.d.ts +4 -3
  121. package/types/components/Stats.d.ts +4 -4
  122. package/types/components/Switch.d.ts +9 -0
  123. package/types/components/ToolButton.d.ts +6 -5
  124. package/types/components/Tooltip.d.ts +1 -1
  125. package/types/components/Trans.d.ts +9 -0
  126. package/types/components/UserList.d.ts +0 -3
  127. package/types/components/canvases/InteractiveCanvas.d.ts +27 -0
  128. package/types/components/canvases/StaticCanvas.d.ts +18 -0
  129. package/types/components/canvases/index.d.ts +3 -0
  130. package/types/components/dropdownMenu/DropdownMenu.d.ts +67 -0
  131. package/types/components/dropdownMenu/DropdownMenuContent.d.ts +15 -0
  132. package/types/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -0
  133. package/types/components/dropdownMenu/DropdownMenuItem.d.ts +12 -0
  134. package/types/components/dropdownMenu/DropdownMenuItemContent.d.ts +6 -0
  135. package/types/components/dropdownMenu/DropdownMenuItemCustom.d.ts +6 -0
  136. package/types/components/dropdownMenu/DropdownMenuItemLink.d.ts +13 -0
  137. package/types/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -0
  138. package/types/components/dropdownMenu/DropdownMenuTrigger.d.ts +10 -0
  139. package/types/components/dropdownMenu/common.d.ts +6 -0
  140. package/types/components/dropdownMenu/dropdownMenuUtils.d.ts +3 -0
  141. package/types/components/footer/Footer.d.ts +12 -0
  142. package/types/components/footer/FooterCenter.d.ts +8 -0
  143. package/types/components/hoc/withInternalFallback.d.ts +4 -0
  144. package/types/components/icons.d.ts +95 -123
  145. package/types/components/live-collaboration/LiveCollaborationTrigger.d.ts +9 -0
  146. package/types/components/main-menu/DefaultItems.d.ts +47 -0
  147. package/types/components/main-menu/MainMenu.d.ts +61 -0
  148. package/types/components/welcome-screen/WelcomeScreen.Center.d.ts +57 -0
  149. package/types/components/welcome-screen/WelcomeScreen.Hints.d.ts +19 -0
  150. package/types/components/welcome-screen/WelcomeScreen.d.ts +84 -0
  151. package/types/constants.d.ts +107 -23
  152. package/types/context/tunnels.d.ts +19 -0
  153. package/types/context/ui-appState.d.ts +4 -0
  154. package/types/data/blob.d.ts +4 -3
  155. package/types/data/encode.d.ts +1 -1
  156. package/types/data/filesystem.d.ts +2 -1
  157. package/types/data/index.d.ts +1 -1
  158. package/types/data/library.d.ts +3 -45
  159. package/types/data/restore.d.ts +10 -4
  160. package/types/data/transform.d.ts +71 -0
  161. package/types/data/types.d.ts +14 -1
  162. package/types/data/url.d.ts +7 -0
  163. package/types/element/Hyperlink.d.ts +58 -28
  164. package/types/element/binding.d.ts +4 -3
  165. package/types/element/bounds.d.ts +33 -8
  166. package/types/element/collision.d.ts +7 -7
  167. package/types/element/dragElements.d.ts +12 -2
  168. package/types/element/embeddable.d.ts +159 -0
  169. package/types/element/image.d.ts +11 -1
  170. package/types/element/index.d.ts +4 -3
  171. package/types/element/linearElementEditor.d.ts +96 -31
  172. package/types/element/mutateElement.d.ts +2 -1
  173. package/types/element/newElement.d.ts +59 -13
  174. package/types/element/resizeElements.d.ts +3 -3
  175. package/types/element/showSelectedShapeActions.d.ts +2 -2
  176. package/types/element/sizeHelpers.d.ts +8 -1
  177. package/types/element/sortElements.d.ts +2 -0
  178. package/types/element/textElement.d.ts +60 -8
  179. package/types/element/textWysiwyg.d.ts +7 -2
  180. package/types/element/transformHandles.d.ts +16 -10
  181. package/types/element/typeChecks.d.ts +14 -2
  182. package/types/element/types.d.ts +66 -35
  183. package/types/emitter.d.ts +1 -1
  184. package/types/errors.d.ts +1 -1
  185. package/types/frame.d.ts +40 -0
  186. package/types/ga.d.ts +5 -5
  187. package/types/groups.d.ts +15 -11
  188. package/types/history.d.ts +3 -3
  189. package/types/hooks/useCreatePortalContainer.d.ts +4 -0
  190. package/types/hooks/useLibraryItemSvg.d.ts +11 -0
  191. package/types/hooks/useOutsideClick.d.ts +19 -0
  192. package/types/hooks/useScrollPosition.d.ts +1 -0
  193. package/types/hooks/useStable.d.ts +1 -0
  194. package/types/hooks/useTransition.d.ts +2 -0
  195. package/types/i18n.d.ts +11 -2
  196. package/types/jotai.d.ts +20 -108
  197. package/types/keys.d.ts +20 -7
  198. package/types/math.d.ts +13 -1
  199. package/types/packages/excalidraw/example/App.d.ts +9 -2
  200. package/types/packages/excalidraw/example/CustomFooter.d.ts +5 -0
  201. package/types/packages/excalidraw/example/MobileFooter.d.ts +5 -0
  202. package/types/packages/excalidraw/example/initialData.d.ts +182 -64
  203. package/types/packages/excalidraw/example/sidebar/{Sidebar.d.ts → ExampleSidebar.d.ts} +1 -1
  204. package/types/packages/excalidraw/index.d.ts +20 -3
  205. package/types/packages/excalidraw/main.d.ts +3 -1
  206. package/types/packages/excalidraw/webpack.dev.config.d.ts +5 -2
  207. package/types/packages/excalidraw/webpack.prod.config.d.ts +3 -0
  208. package/types/packages/utils.d.ts +29 -22
  209. package/types/renderer/renderElement.d.ts +13 -22
  210. package/types/renderer/renderScene.d.ts +20 -30
  211. package/types/renderer/renderSnaps.d.ts +2 -0
  212. package/types/renderer/roundRect.d.ts +1 -1
  213. package/types/scene/Fonts.d.ts +21 -0
  214. package/types/scene/Renderer.d.ts +25 -0
  215. package/types/scene/Scene.d.ts +42 -5
  216. package/types/scene/Shape.d.ts +12 -0
  217. package/types/scene/ShapeCache.d.ts +20 -0
  218. package/types/scene/comparisons.d.ts +2 -3
  219. package/types/scene/export.d.ts +182 -10
  220. package/types/scene/index.d.ts +1 -1
  221. package/types/scene/scroll.d.ts +1 -1
  222. package/types/scene/scrollbars.d.ts +2 -6
  223. package/types/scene/selection.d.ts +27 -6
  224. package/types/scene/types.d.ts +69 -25
  225. package/types/shapes.d.ts +27 -3
  226. package/types/snapping.d.ts +108 -0
  227. package/types/types.d.ts +212 -79
  228. package/types/utility-types.d.ts +24 -0
  229. package/types/utils.d.ts +78 -12
  230. package/types/zindex.d.ts +4 -4
  231. package/dist/excalidraw-assets/vendor-52b1f3361986b6c6a4fe.js +0 -2
  232. package/types/components/ActiveFile.d.ts +0 -7
  233. package/types/components/BackgroundPickerAndDarkModeToggle.d.ts +0 -9
  234. package/types/components/ClearCanvas.d.ts +0 -4
  235. package/types/components/CollabButton.d.ts +0 -7
  236. package/types/components/ColorPicker.d.ts +0 -14
  237. package/types/components/HelpIcon.d.ts +0 -8
  238. package/types/components/LibraryButton.d.ts +0 -7
  239. package/types/components/SidebarLockButton.d.ts +0 -8
  240. package/types/components/SingleLibraryItem.d.ts +0 -10
  241. /package/dist/excalidraw-assets/{vendor-52b1f3361986b6c6a4fe.js.LICENSE.txt → vendor-d415b28e9024dee4bb1b.js.LICENSE.txt} +0 -0
  242. /package/types/packages/excalidraw/dist/excalidraw-assets/{vendor-52b1f3361986b6c6a4fe.d.ts → vendor-d415b28e9024dee4bb1b.d.ts} +0 -0
  243. /package/types/packages/excalidraw/dist/excalidraw-assets-dev/{vendor-c0592035c3911af79359.d.ts → vendor-a14cd58fa2db417e42b2.d.ts} +0 -0
@@ -1,15 +1,28 @@
1
+ /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
2
+
1
3
  /**
2
- * @license
3
- * Lodash <https://lodash.com/>
4
- * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
5
- * Released under MIT license <https://lodash.com/license>
6
- * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
7
- * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
4
+ * @license React
5
+ * react-jsx-runtime.production.min.js
6
+ *
7
+ * Copyright (c) Facebook, Inc. and its affiliates.
8
+ *
9
+ * This source code is licensed under the MIT license found in the
10
+ * LICENSE file in the root directory of this source tree.
8
11
  */
9
12
 
10
13
  /**
11
14
  * @license React
12
- * react-jsx-runtime.production.min.js
15
+ * use-sync-external-store-shim.production.min.js
16
+ *
17
+ * Copyright (c) Facebook, Inc. and its affiliates.
18
+ *
19
+ * This source code is licensed under the MIT license found in the
20
+ * LICENSE file in the root directory of this source tree.
21
+ */
22
+
23
+ /**
24
+ * @license React
25
+ * use-sync-external-store-shim/with-selector.production.min.js
13
26
  *
14
27
  * Copyright (c) Facebook, Inc. and its affiliates.
15
28
  *
package/main.js CHANGED
@@ -1,8 +1 @@
1
- if (
2
- process.env.NODE_ENV === "production" ||
3
- window.__excalidraw_env__ === "production"
4
- ) {
5
- module.exports = require("./dist/excalidraw.production.min.js");
6
- } else {
7
- module.exports = require("./dist/excalidraw.development.js");
8
- }
1
+ module.exports = require("./dist/excalidraw.production.min.js");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dwelle/excalidraw",
3
- "version": "0.4.0-cfd6fb7",
3
+ "version": "0.4.0-d27af2e",
4
4
  "main": "main.js",
5
5
  "types": "types/packages/excalidraw/index.d.ts",
6
6
  "files": [
@@ -45,19 +45,23 @@
45
45
  "@babel/preset-env": "7.18.6",
46
46
  "@babel/preset-react": "7.18.6",
47
47
  "@babel/preset-typescript": "7.18.6",
48
+ "@size-limit/preset-big-lib": "9.0.0",
48
49
  "autoprefixer": "10.4.7",
49
50
  "babel-loader": "8.2.5",
50
51
  "babel-plugin-transform-class-properties": "6.24.1",
51
52
  "cross-env": "7.0.3",
52
53
  "css-loader": "6.7.1",
53
54
  "dotenv": "16.0.1",
55
+ "import-meta-loader": "1.1.0",
54
56
  "mini-css-extract-plugin": "2.6.1",
55
57
  "postcss-loader": "7.0.1",
56
58
  "sass-loader": "13.0.2",
59
+ "size-limit": "9.0.0",
60
+ "style-loader": "3.3.3",
57
61
  "terser-webpack-plugin": "5.3.3",
58
62
  "ts-loader": "9.3.1",
59
- "typescript": "4.7.4",
60
- "webpack": "5.73.0",
63
+ "typescript": "4.9.4",
64
+ "webpack": "5.76.0",
61
65
  "webpack-bundle-analyzer": "4.5.0",
62
66
  "webpack-cli": "4.10.0",
63
67
  "webpack-dev-server": "4.9.3",
@@ -72,6 +76,7 @@
72
76
  "pack": "yarn build:umd && yarn pack",
73
77
  "start": "webpack serve --config webpack.dev-server.config.js",
74
78
  "install:deps": "yarn install --frozen-lockfile && yarn --cwd ../../../",
75
- "build:example": "EXAMPLE=true webpack --config webpack.dev-server.config.js && yarn gen:types"
79
+ "build:example": "EXAMPLE=true webpack --config webpack.dev-server.config.js && yarn gen:types",
80
+ "size": "yarn build:umd && size-limit"
76
81
  }
77
82
  }
@@ -9,8 +9,18 @@ export declare const actionAddToLibrary: {
9
9
  toast: {
10
10
  message: string;
11
11
  };
12
+ contextMenu: {
13
+ items: import("../components/ContextMenu").ContextMenuItems;
14
+ top: number;
15
+ left: number;
16
+ } | null;
17
+ showWelcomeScreen: boolean;
12
18
  isLoading: boolean;
13
- errorMessage: string | null;
19
+ errorMessage: import("react").ReactNode;
20
+ activeEmbeddable: {
21
+ element: import("../element/types").NonDeletedExcalidrawElement;
22
+ state: "active" | "hover";
23
+ } | null;
14
24
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
15
25
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
16
26
  multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null;
@@ -18,19 +28,27 @@ export declare const actionAddToLibrary: {
18
28
  isBindingEnabled: boolean;
19
29
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
20
30
  suggestedBindings: import("../element/binding").SuggestedBinding[];
31
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
32
+ frameRendering: {
33
+ enabled: boolean;
34
+ name: boolean;
35
+ outline: boolean;
36
+ clip: boolean;
37
+ };
38
+ editingFrame: string | null;
39
+ elementsToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawElement>[] | null;
21
40
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
22
41
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
23
42
  activeTool: {
24
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
25
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
43
+ lastActiveTool: import("../types").LastActiveTool;
26
44
  locked: boolean;
45
+ } & ({
46
+ type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "embeddable" | "image" | "frame" | "freedraw" | "eraser" | "hand";
27
47
  customType: null;
28
48
  } | {
29
49
  type: "custom";
30
50
  customType: string;
31
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
32
- locked: boolean;
33
- };
51
+ });
34
52
  penMode: boolean;
35
53
  penDetected: boolean;
36
54
  exportBackground: boolean;
@@ -46,11 +64,10 @@ export declare const actionAddToLibrary: {
46
64
  currentItemOpacity: number;
47
65
  currentItemFontFamily: number;
48
66
  currentItemFontSize: number;
49
- currentItemTextAlign: import("../element/types").TextAlign;
50
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
67
+ currentItemTextAlign: string;
51
68
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
52
69
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
53
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
70
+ currentItemRoundness: import("../element/types").StrokeRoundness;
54
71
  viewBackgroundColor: string;
55
72
  scrollX: number;
56
73
  scrollY: number;
@@ -63,18 +80,24 @@ export declare const actionAddToLibrary: {
63
80
  value: import("../types").NormalizedZoomValue;
64
81
  }>;
65
82
  openMenu: "canvas" | "shape" | null;
66
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
83
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
84
+ openSidebar: {
85
+ name: string;
86
+ tab?: string | undefined;
87
+ } | null;
88
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
89
+ defaultSidebarDockedPreference: boolean;
67
90
  lastPointerDownWith: import("../element/types").PointerType;
68
- selectedElementIds: {
69
- [id: string]: boolean;
70
- };
91
+ selectedElementIds: Readonly<{
92
+ [id: string]: true;
93
+ }>;
71
94
  previousSelectedElementIds: {
72
- [id: string]: boolean;
95
+ [id: string]: true;
73
96
  };
97
+ selectedElementsAreBeingDragged: boolean;
74
98
  shouldCacheIgnoreZoom: boolean;
75
- showHelpDialog: boolean;
76
99
  zenModeEnabled: boolean;
77
- theme: string;
100
+ theme: import("../element/types").Theme;
78
101
  gridSize: number | null;
79
102
  viewModeEnabled: boolean;
80
103
  selectedGroupIds: {
@@ -85,8 +108,6 @@ export declare const actionAddToLibrary: {
85
108
  height: number;
86
109
  offsetTop: number;
87
110
  offsetLeft: number;
88
- isLibraryOpen: boolean;
89
- isLibraryMenuDocked: boolean;
90
111
  fileHandle: import("browser-fs-access").FileSystemHandle | null;
91
112
  collaborators: Map<string, import("../types").Collaborator>;
92
113
  showStats: boolean;
@@ -99,14 +120,30 @@ export declare const actionAddToLibrary: {
99
120
  data: import("../charts").Spreadsheet;
100
121
  };
101
122
  pendingImageElementId: string | null;
102
- showHyperlinkPopup: false | "info" | "editor";
123
+ showHyperlinkPopup: false | "editor" | "info";
103
124
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
125
+ snapLines: import("../snapping").SnapLine[];
126
+ originSnapOffset: {
127
+ x: number;
128
+ y: number;
129
+ } | null;
130
+ objectsSnapModeEnabled: boolean;
104
131
  };
105
132
  } | {
106
133
  commitToHistory: false;
107
134
  appState: {
108
135
  errorMessage: any;
136
+ contextMenu: {
137
+ items: import("../components/ContextMenu").ContextMenuItems;
138
+ top: number;
139
+ left: number;
140
+ } | null;
141
+ showWelcomeScreen: boolean;
109
142
  isLoading: boolean;
143
+ activeEmbeddable: {
144
+ element: import("../element/types").NonDeletedExcalidrawElement;
145
+ state: "active" | "hover";
146
+ } | null;
110
147
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
111
148
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
112
149
  multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null;
@@ -114,19 +151,27 @@ export declare const actionAddToLibrary: {
114
151
  isBindingEnabled: boolean;
115
152
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
116
153
  suggestedBindings: import("../element/binding").SuggestedBinding[];
154
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
155
+ frameRendering: {
156
+ enabled: boolean;
157
+ name: boolean;
158
+ outline: boolean;
159
+ clip: boolean;
160
+ };
161
+ editingFrame: string | null;
162
+ elementsToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawElement>[] | null;
117
163
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
118
164
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
119
165
  activeTool: {
120
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
121
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
166
+ lastActiveTool: import("../types").LastActiveTool;
122
167
  locked: boolean;
168
+ } & ({
169
+ type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "embeddable" | "image" | "frame" | "freedraw" | "eraser" | "hand";
123
170
  customType: null;
124
171
  } | {
125
172
  type: "custom";
126
173
  customType: string;
127
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
128
- locked: boolean;
129
- };
174
+ });
130
175
  penMode: boolean;
131
176
  penDetected: boolean;
132
177
  exportBackground: boolean;
@@ -142,11 +187,10 @@ export declare const actionAddToLibrary: {
142
187
  currentItemOpacity: number;
143
188
  currentItemFontFamily: number;
144
189
  currentItemFontSize: number;
145
- currentItemTextAlign: import("../element/types").TextAlign;
146
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
190
+ currentItemTextAlign: string;
147
191
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
148
192
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
149
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
193
+ currentItemRoundness: import("../element/types").StrokeRoundness;
150
194
  viewBackgroundColor: string;
151
195
  scrollX: number;
152
196
  scrollY: number;
@@ -159,23 +203,29 @@ export declare const actionAddToLibrary: {
159
203
  value: import("../types").NormalizedZoomValue;
160
204
  }>;
161
205
  openMenu: "canvas" | "shape" | null;
162
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
206
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
207
+ openSidebar: {
208
+ name: string;
209
+ tab?: string | undefined;
210
+ } | null;
211
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
212
+ defaultSidebarDockedPreference: boolean;
163
213
  lastPointerDownWith: import("../element/types").PointerType;
164
- selectedElementIds: {
165
- [id: string]: boolean;
166
- };
214
+ selectedElementIds: Readonly<{
215
+ [id: string]: true;
216
+ }>;
167
217
  previousSelectedElementIds: {
168
- [id: string]: boolean;
218
+ [id: string]: true;
169
219
  };
220
+ selectedElementsAreBeingDragged: boolean;
170
221
  shouldCacheIgnoreZoom: boolean;
171
- showHelpDialog: boolean;
172
222
  toast: {
173
223
  message: string;
174
224
  closable?: boolean | undefined;
175
225
  duration?: number | undefined;
176
226
  } | null;
177
227
  zenModeEnabled: boolean;
178
- theme: string;
228
+ theme: import("../element/types").Theme;
179
229
  gridSize: number | null;
180
230
  viewModeEnabled: boolean;
181
231
  selectedGroupIds: {
@@ -186,8 +236,6 @@ export declare const actionAddToLibrary: {
186
236
  height: number;
187
237
  offsetTop: number;
188
238
  offsetLeft: number;
189
- isLibraryOpen: boolean;
190
- isLibraryMenuDocked: boolean;
191
239
  fileHandle: import("browser-fs-access").FileSystemHandle | null;
192
240
  collaborators: Map<string, import("../types").Collaborator>;
193
241
  showStats: boolean;
@@ -200,14 +248,30 @@ export declare const actionAddToLibrary: {
200
248
  data: import("../charts").Spreadsheet;
201
249
  };
202
250
  pendingImageElementId: string | null;
203
- showHyperlinkPopup: false | "info" | "editor";
251
+ showHyperlinkPopup: false | "editor" | "info";
204
252
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
253
+ snapLines: import("../snapping").SnapLine[];
254
+ originSnapOffset: {
255
+ x: number;
256
+ y: number;
257
+ } | null;
258
+ objectsSnapModeEnabled: boolean;
205
259
  };
206
260
  }> | {
207
261
  commitToHistory: false;
208
262
  appState: {
209
263
  errorMessage: string;
264
+ contextMenu: {
265
+ items: import("../components/ContextMenu").ContextMenuItems;
266
+ top: number;
267
+ left: number;
268
+ } | null;
269
+ showWelcomeScreen: boolean;
210
270
  isLoading: boolean;
271
+ activeEmbeddable: {
272
+ element: import("../element/types").NonDeletedExcalidrawElement;
273
+ state: "active" | "hover";
274
+ } | null;
211
275
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
212
276
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
213
277
  multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null;
@@ -215,19 +279,27 @@ export declare const actionAddToLibrary: {
215
279
  isBindingEnabled: boolean;
216
280
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
217
281
  suggestedBindings: import("../element/binding").SuggestedBinding[];
282
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
283
+ frameRendering: {
284
+ enabled: boolean;
285
+ name: boolean;
286
+ outline: boolean;
287
+ clip: boolean;
288
+ };
289
+ editingFrame: string | null;
290
+ elementsToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawElement>[] | null;
218
291
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
219
292
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
220
293
  activeTool: {
221
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
222
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
294
+ lastActiveTool: import("../types").LastActiveTool;
223
295
  locked: boolean;
296
+ } & ({
297
+ type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "embeddable" | "image" | "frame" | "freedraw" | "eraser" | "hand";
224
298
  customType: null;
225
299
  } | {
226
300
  type: "custom";
227
301
  customType: string;
228
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
229
- locked: boolean;
230
- };
302
+ });
231
303
  penMode: boolean;
232
304
  penDetected: boolean;
233
305
  exportBackground: boolean;
@@ -243,11 +315,10 @@ export declare const actionAddToLibrary: {
243
315
  currentItemOpacity: number;
244
316
  currentItemFontFamily: number;
245
317
  currentItemFontSize: number;
246
- currentItemTextAlign: import("../element/types").TextAlign;
247
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
318
+ currentItemTextAlign: string;
248
319
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
249
320
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
250
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
321
+ currentItemRoundness: import("../element/types").StrokeRoundness;
251
322
  viewBackgroundColor: string;
252
323
  scrollX: number;
253
324
  scrollY: number;
@@ -260,23 +331,29 @@ export declare const actionAddToLibrary: {
260
331
  value: import("../types").NormalizedZoomValue;
261
332
  }>;
262
333
  openMenu: "canvas" | "shape" | null;
263
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
334
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
335
+ openSidebar: {
336
+ name: string;
337
+ tab?: string | undefined;
338
+ } | null;
339
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
340
+ defaultSidebarDockedPreference: boolean;
264
341
  lastPointerDownWith: import("../element/types").PointerType;
265
- selectedElementIds: {
266
- [id: string]: boolean;
267
- };
342
+ selectedElementIds: Readonly<{
343
+ [id: string]: true;
344
+ }>;
268
345
  previousSelectedElementIds: {
269
- [id: string]: boolean;
346
+ [id: string]: true;
270
347
  };
348
+ selectedElementsAreBeingDragged: boolean;
271
349
  shouldCacheIgnoreZoom: boolean;
272
- showHelpDialog: boolean;
273
350
  toast: {
274
351
  message: string;
275
352
  closable?: boolean | undefined;
276
353
  duration?: number | undefined;
277
354
  } | null;
278
355
  zenModeEnabled: boolean;
279
- theme: string;
356
+ theme: import("../element/types").Theme;
280
357
  gridSize: number | null;
281
358
  viewModeEnabled: boolean;
282
359
  selectedGroupIds: {
@@ -287,8 +364,6 @@ export declare const actionAddToLibrary: {
287
364
  height: number;
288
365
  offsetTop: number;
289
366
  offsetLeft: number;
290
- isLibraryOpen: boolean;
291
- isLibraryMenuDocked: boolean;
292
367
  fileHandle: import("browser-fs-access").FileSystemHandle | null;
293
368
  collaborators: Map<string, import("../types").Collaborator>;
294
369
  showStats: boolean;
@@ -301,8 +376,14 @@ export declare const actionAddToLibrary: {
301
376
  data: import("../charts").Spreadsheet;
302
377
  };
303
378
  pendingImageElementId: string | null;
304
- showHyperlinkPopup: false | "info" | "editor";
379
+ showHyperlinkPopup: false | "editor" | "info";
305
380
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
381
+ snapLines: import("../snapping").SnapLine[];
382
+ originSnapOffset: {
383
+ x: number;
384
+ y: number;
385
+ } | null;
386
+ objectsSnapModeEnabled: boolean;
306
387
  };
307
388
  };
308
389
  contextItemLabel: string;
@@ -1,18 +1,18 @@
1
- /// <reference types="react" />
2
1
  import { ExcalidrawElement } from "../element/types";
3
- import { AppState } from "../types";
2
+ import { AppClassProperties, AppState } from "../types";
4
3
  export declare const actionAlignTop: {
5
4
  name: "alignTop";
6
5
  trackEvent: {
7
6
  category: "element";
8
7
  };
9
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>) => {
8
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: unknown, app: AppClassProperties) => boolean;
9
+ perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: AppClassProperties) => {
10
10
  appState: Readonly<AppState>;
11
- elements: ExcalidrawElement[];
11
+ elements: import("../scene/Scene").ExcalidrawElementsIncludingDeleted;
12
12
  commitToHistory: true;
13
13
  };
14
14
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
15
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
15
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => JSX.Element;
16
16
  } & {
17
17
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
18
18
  };
@@ -21,13 +21,14 @@ export declare const actionAlignBottom: {
21
21
  trackEvent: {
22
22
  category: "element";
23
23
  };
24
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>) => {
24
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: unknown, app: AppClassProperties) => boolean;
25
+ perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: AppClassProperties) => {
25
26
  appState: Readonly<AppState>;
26
- elements: ExcalidrawElement[];
27
+ elements: import("../scene/Scene").ExcalidrawElementsIncludingDeleted;
27
28
  commitToHistory: true;
28
29
  };
29
30
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
30
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
31
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => JSX.Element;
31
32
  } & {
32
33
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
33
34
  };
@@ -36,13 +37,14 @@ export declare const actionAlignLeft: {
36
37
  trackEvent: {
37
38
  category: "element";
38
39
  };
39
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>) => {
40
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: unknown, app: AppClassProperties) => boolean;
41
+ perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: AppClassProperties) => {
40
42
  appState: Readonly<AppState>;
41
- elements: ExcalidrawElement[];
43
+ elements: import("../scene/Scene").ExcalidrawElementsIncludingDeleted;
42
44
  commitToHistory: true;
43
45
  };
44
46
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
45
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
47
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => JSX.Element;
46
48
  } & {
47
49
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
48
50
  };
@@ -51,13 +53,14 @@ export declare const actionAlignRight: {
51
53
  trackEvent: {
52
54
  category: "element";
53
55
  };
54
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>) => {
56
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: unknown, app: AppClassProperties) => boolean;
57
+ perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: AppClassProperties) => {
55
58
  appState: Readonly<AppState>;
56
- elements: ExcalidrawElement[];
59
+ elements: import("../scene/Scene").ExcalidrawElementsIncludingDeleted;
57
60
  commitToHistory: true;
58
61
  };
59
62
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
60
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
63
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => JSX.Element;
61
64
  } & {
62
65
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
63
66
  };
@@ -66,12 +69,13 @@ export declare const actionAlignVerticallyCentered: {
66
69
  trackEvent: {
67
70
  category: "element";
68
71
  };
69
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>) => {
72
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: unknown, app: AppClassProperties) => boolean;
73
+ perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: AppClassProperties) => {
70
74
  appState: Readonly<AppState>;
71
- elements: ExcalidrawElement[];
75
+ elements: import("../scene/Scene").ExcalidrawElementsIncludingDeleted;
72
76
  commitToHistory: true;
73
77
  };
74
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
78
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => JSX.Element;
75
79
  } & {
76
80
  keyTest?: undefined;
77
81
  };
@@ -80,12 +84,13 @@ export declare const actionAlignHorizontallyCentered: {
80
84
  trackEvent: {
81
85
  category: "element";
82
86
  };
83
- perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>) => {
87
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: unknown, app: AppClassProperties) => boolean;
88
+ perform: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, _: any, app: AppClassProperties) => {
84
89
  appState: Readonly<AppState>;
85
- elements: ExcalidrawElement[];
90
+ elements: import("../scene/Scene").ExcalidrawElementsIncludingDeleted;
86
91
  commitToHistory: true;
87
92
  };
88
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
93
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => JSX.Element;
89
94
  } & {
90
95
  keyTest?: undefined;
91
96
  };