@dwelle/excalidraw 0.4.0-d411eb2 → 0.4.0-d4bae3f

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 (228) hide show
  1. package/CHANGELOG.md +349 -522
  2. package/README.md +18 -1354
  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 +3157 -1359
  14. package/dist/excalidraw.production.min.js +1 -1
  15. package/dist/excalidraw.production.min.js.LICENSE.txt +34 -6
  16. package/main.js +1 -8
  17. package/package.json +9 -4
  18. package/types/actions/actionAddToLibrary.d.ts +118 -55
  19. package/types/actions/actionAlign.d.ts +25 -20
  20. package/types/actions/actionBoundText.d.ts +181 -23
  21. package/types/actions/actionCanvas.d.ts +728 -172
  22. package/types/actions/actionClipboard.d.ts +222 -94
  23. package/types/actions/actionDeleteSelected.d.ts +126 -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 +271 -0
  27. package/types/actions/actionExport.d.ts +379 -189
  28. package/types/actions/actionFinalize.d.ts +77 -39
  29. package/types/actions/actionFlip.d.ts +4 -7
  30. package/types/actions/actionFrame.d.ts +423 -0
  31. package/types/actions/actionGroup.d.ts +6 -7
  32. package/types/actions/actionHistory.d.ts +1 -1
  33. package/types/actions/{actionToggleLock.d.ts → actionLinearEditor.d.ts} +52 -32
  34. package/types/actions/actionMenu.d.ts +123 -61
  35. package/types/actions/actionNavigate.d.ts +2 -1
  36. package/types/actions/actionProperties.d.ts +525 -253
  37. package/types/actions/actionSelectAll.d.ts +0 -1
  38. package/types/actions/actionStyles.d.ts +40 -20
  39. package/types/actions/actionToggleGridMode.d.ts +42 -20
  40. package/types/actions/actionToggleStats.d.ts +41 -20
  41. package/types/actions/actionToggleViewMode.d.ts +42 -20
  42. package/types/actions/actionToggleZenMode.d.ts +42 -20
  43. package/types/actions/actionZindex.d.ts +4 -4
  44. package/types/actions/index.d.ts +2 -1
  45. package/types/actions/manager.d.ts +2 -1
  46. package/types/actions/shortcuts.d.ts +2 -1
  47. package/types/actions/types.d.ts +15 -10
  48. package/types/appState.d.ts +30 -25
  49. package/types/charts.d.ts +2 -2
  50. package/types/clients.d.ts +5 -6
  51. package/types/clipboard.d.ts +8 -3
  52. package/types/colors.d.ts +60 -5
  53. package/types/components/Actions.d.ts +19 -7
  54. package/types/components/ActiveConfirmDialog.d.ts +4 -0
  55. package/types/components/App.d.ts +87 -25
  56. package/types/components/Avatar.d.ts +2 -3
  57. package/types/components/BraveMeasureTextError.d.ts +2 -0
  58. package/types/components/Button.d.ts +16 -0
  59. package/types/components/ButtonIconSelect.d.ts +11 -3
  60. package/types/components/Card.d.ts +0 -1
  61. package/types/components/ColorPicker/ColorInput.d.ts +7 -0
  62. package/types/components/ColorPicker/ColorPicker.d.ts +19 -0
  63. package/types/components/ColorPicker/CustomColorList.d.ts +8 -0
  64. package/types/components/ColorPicker/HotkeyLabel.d.ts +8 -0
  65. package/types/components/ColorPicker/Picker.d.ts +18 -0
  66. package/types/components/ColorPicker/PickerColorList.d.ts +10 -0
  67. package/types/components/ColorPicker/PickerHeading.d.ts +5 -0
  68. package/types/components/ColorPicker/ShadeList.d.ts +8 -0
  69. package/types/components/ColorPicker/TopPicks.d.ts +9 -0
  70. package/types/components/ColorPicker/colorPickerUtils.d.ts +21 -0
  71. package/types/components/ColorPicker/keyboardNavHandlers.d.ts +20 -0
  72. package/types/components/ContextMenu.d.ts +9 -22
  73. package/types/components/DefaultSidebar.d.ts +29 -0
  74. package/types/components/Dialog.d.ts +3 -4
  75. package/types/components/DialogActionButton.d.ts +10 -0
  76. package/types/components/ErrorDialog.d.ts +3 -2
  77. package/types/components/EyeDropper.d.ts +17 -0
  78. package/types/components/FilledButton.d.ts +17 -0
  79. package/types/components/FixedSideContainer.d.ts +1 -1
  80. package/types/components/HandButton.d.ts +10 -0
  81. package/types/components/HelpButton.d.ts +7 -0
  82. package/types/components/HintViewer.d.ts +5 -5
  83. package/types/components/HomeButton.d.ts +5 -0
  84. package/types/components/ImageExportDialog.d.ts +8 -11
  85. package/types/components/InitializeApp.d.ts +2 -0
  86. package/types/components/Island.d.ts +1 -1
  87. package/types/components/JSONExportDialog.d.ts +7 -5
  88. package/types/components/LayerUI.d.ts +9 -14
  89. package/types/components/LibraryMenu.d.ts +15 -8
  90. package/types/components/LibraryMenuBrowseButton.d.ts +7 -0
  91. package/types/components/LibraryMenuControlButtons.d.ts +9 -0
  92. package/types/components/LibraryMenuHeaderContent.d.ts +17 -0
  93. package/types/components/LibraryMenuItems.d.ts +4 -14
  94. package/types/components/LibraryMenuSection.d.ts +22 -0
  95. package/types/components/LibraryUnit.d.ts +7 -5
  96. package/types/components/LoadingMessage.d.ts +2 -1
  97. package/types/components/LockButton.d.ts +1 -2
  98. package/types/components/MobileMenu.d.ts +12 -13
  99. package/types/components/OverwriteConfirm/OverwriteConfirm.d.ts +17 -0
  100. package/types/components/OverwriteConfirm/OverwriteConfirmActions.d.ts +17 -0
  101. package/types/components/OverwriteConfirm/OverwriteConfirmState.d.ts +22 -0
  102. package/types/components/PasteChartDialog.d.ts +4 -5
  103. package/types/components/PenModeButton.d.ts +1 -1
  104. package/types/components/Popover.d.ts +1 -1
  105. package/types/components/ProjectName.d.ts +2 -1
  106. package/types/components/PublishLibrary.d.ts +2 -2
  107. package/types/components/RadioGroup.d.ts +12 -0
  108. package/types/components/Section.d.ts +1 -1
  109. package/types/components/Sidebar/Sidebar.d.ts +76 -0
  110. package/types/components/Sidebar/SidebarHeader.d.ts +7 -0
  111. package/types/components/Sidebar/SidebarTab.d.ts +8 -0
  112. package/types/components/Sidebar/SidebarTabTrigger.d.ts +9 -0
  113. package/types/components/Sidebar/SidebarTabTriggers.d.ts +6 -0
  114. package/types/components/Sidebar/SidebarTabs.d.ts +6 -0
  115. package/types/components/Sidebar/SidebarTrigger.d.ts +6 -0
  116. package/types/components/Sidebar/common.d.ts +33 -0
  117. package/types/components/Spinner.d.ts +2 -1
  118. package/types/components/Stack.d.ts +4 -3
  119. package/types/components/Stats.d.ts +4 -4
  120. package/types/components/Switch.d.ts +9 -0
  121. package/types/components/ToolButton.d.ts +6 -5
  122. package/types/components/Tooltip.d.ts +1 -1
  123. package/types/components/Trans.d.ts +9 -0
  124. package/types/components/UserList.d.ts +0 -3
  125. package/types/components/dropdownMenu/DropdownMenu.d.ts +67 -0
  126. package/types/components/dropdownMenu/DropdownMenuContent.d.ts +15 -0
  127. package/types/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -0
  128. package/types/components/dropdownMenu/DropdownMenuItem.d.ts +12 -0
  129. package/types/components/dropdownMenu/DropdownMenuItemContent.d.ts +6 -0
  130. package/types/components/dropdownMenu/DropdownMenuItemCustom.d.ts +6 -0
  131. package/types/components/dropdownMenu/DropdownMenuItemLink.d.ts +13 -0
  132. package/types/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -0
  133. package/types/components/dropdownMenu/DropdownMenuTrigger.d.ts +10 -0
  134. package/types/components/dropdownMenu/common.d.ts +6 -0
  135. package/types/components/dropdownMenu/dropdownMenuUtils.d.ts +3 -0
  136. package/types/components/footer/Footer.d.ts +12 -0
  137. package/types/components/footer/FooterCenter.d.ts +8 -0
  138. package/types/components/hoc/withInternalFallback.d.ts +4 -0
  139. package/types/components/icons.d.ts +95 -123
  140. package/types/components/live-collaboration/LiveCollaborationTrigger.d.ts +9 -0
  141. package/types/components/main-menu/DefaultItems.d.ts +47 -0
  142. package/types/components/main-menu/MainMenu.d.ts +61 -0
  143. package/types/components/welcome-screen/WelcomeScreen.Center.d.ts +57 -0
  144. package/types/components/welcome-screen/WelcomeScreen.Hints.d.ts +19 -0
  145. package/types/components/welcome-screen/WelcomeScreen.d.ts +84 -0
  146. package/types/constants.d.ts +98 -23
  147. package/types/context/tunnels.d.ts +19 -0
  148. package/types/context/ui-appState.d.ts +4 -0
  149. package/types/data/blob.d.ts +4 -3
  150. package/types/data/encode.d.ts +1 -1
  151. package/types/data/filesystem.d.ts +2 -1
  152. package/types/data/index.d.ts +1 -1
  153. package/types/data/library.d.ts +3 -45
  154. package/types/data/restore.d.ts +10 -4
  155. package/types/data/types.d.ts +14 -1
  156. package/types/data/url.d.ts +7 -0
  157. package/types/element/Hyperlink.d.ts +52 -29
  158. package/types/element/binding.d.ts +3 -3
  159. package/types/element/bounds.d.ts +34 -8
  160. package/types/element/collision.d.ts +7 -7
  161. package/types/element/dragElements.d.ts +2 -1
  162. package/types/element/embeddable.d.ts +153 -0
  163. package/types/element/image.d.ts +11 -1
  164. package/types/element/index.d.ts +4 -3
  165. package/types/element/linearElementEditor.d.ts +90 -31
  166. package/types/element/mutateElement.d.ts +2 -1
  167. package/types/element/newElement.d.ts +52 -10
  168. package/types/element/resizeElements.d.ts +1 -1
  169. package/types/element/showSelectedShapeActions.d.ts +2 -2
  170. package/types/element/sortElements.d.ts +2 -0
  171. package/types/element/textElement.d.ts +62 -8
  172. package/types/element/textWysiwyg.d.ts +6 -1
  173. package/types/element/transformHandles.d.ts +16 -10
  174. package/types/element/typeChecks.d.ts +14 -2
  175. package/types/element/types.d.ts +67 -35
  176. package/types/emitter.d.ts +1 -1
  177. package/types/errors.d.ts +1 -1
  178. package/types/frame.d.ts +40 -0
  179. package/types/ga.d.ts +5 -5
  180. package/types/groups.d.ts +7 -3
  181. package/types/history.d.ts +3 -3
  182. package/types/hooks/useCreatePortalContainer.d.ts +4 -0
  183. package/types/hooks/useLibraryItemSvg.d.ts +11 -0
  184. package/types/hooks/useOutsideClick.d.ts +19 -0
  185. package/types/hooks/useScrollPosition.d.ts +1 -0
  186. package/types/hooks/useTransition.d.ts +2 -0
  187. package/types/i18n.d.ts +11 -2
  188. package/types/jotai.d.ts +20 -108
  189. package/types/keys.d.ts +19 -7
  190. package/types/math.d.ts +11 -1
  191. package/types/packages/excalidraw/example/App.d.ts +9 -2
  192. package/types/packages/excalidraw/example/CustomFooter.d.ts +5 -0
  193. package/types/packages/excalidraw/example/MobileFooter.d.ts +5 -0
  194. package/types/packages/excalidraw/example/initialData.d.ts +6 -0
  195. package/types/packages/excalidraw/example/sidebar/{Sidebar.d.ts → ExampleSidebar.d.ts} +1 -1
  196. package/types/packages/excalidraw/index.d.ts +19 -3
  197. package/types/packages/excalidraw/main.d.ts +3 -1
  198. package/types/packages/excalidraw/webpack.dev.config.d.ts +5 -2
  199. package/types/packages/excalidraw/webpack.prod.config.d.ts +3 -0
  200. package/types/packages/utils.d.ts +28 -22
  201. package/types/renderer/renderElement.d.ts +9 -6
  202. package/types/renderer/renderScene.d.ts +15 -7
  203. package/types/renderer/roundRect.d.ts +1 -1
  204. package/types/scene/Fonts.d.ts +21 -0
  205. package/types/scene/Scene.d.ts +40 -5
  206. package/types/scene/comparisons.d.ts +2 -3
  207. package/types/scene/export.d.ts +158 -10
  208. package/types/scene/index.d.ts +1 -1
  209. package/types/scene/selection.d.ts +25 -5
  210. package/types/scene/types.d.ts +14 -5
  211. package/types/shapes.d.ts +27 -3
  212. package/types/types.d.ts +156 -79
  213. package/types/utility-types.d.ts +24 -0
  214. package/types/utils.d.ts +67 -9
  215. package/types/zindex.d.ts +4 -4
  216. package/dist/excalidraw-assets/vendor-52b1f3361986b6c6a4fe.js +0 -2
  217. package/types/components/ActiveFile.d.ts +0 -7
  218. package/types/components/BackgroundPickerAndDarkModeToggle.d.ts +0 -9
  219. package/types/components/ClearCanvas.d.ts +0 -4
  220. package/types/components/CollabButton.d.ts +0 -7
  221. package/types/components/ColorPicker.d.ts +0 -14
  222. package/types/components/HelpIcon.d.ts +0 -8
  223. package/types/components/LibraryButton.d.ts +0 -7
  224. package/types/components/SidebarLockButton.d.ts +0 -8
  225. package/types/components/SingleLibraryItem.d.ts +0 -10
  226. /package/dist/excalidraw-assets/{vendor-52b1f3361986b6c6a4fe.js.LICENSE.txt → vendor-d415b28e9024dee4bb1b.js.LICENSE.txt} +0 -0
  227. /package/types/packages/excalidraw/dist/excalidraw-assets/{vendor-52b1f3361986b6c6a4fe.d.ts → vendor-d415b28e9024dee4bb1b.d.ts} +0 -0
  228. /package/types/packages/excalidraw/dist/excalidraw-assets-dev/{vendor-c0592035c3911af79359.d.ts → vendor-a14cd58fa2db417e42b2.d.ts} +0 -0
@@ -1,14 +1,42 @@
1
+ /*
2
+ object-assign
3
+ (c) Sindre Sorhus
4
+ @license MIT
5
+ */
6
+
7
+ /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
8
+
1
9
  /**
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
10
+ * @license React
11
+ * react-jsx-runtime.production.min.js
12
+ *
13
+ * Copyright (c) Facebook, Inc. and its affiliates.
14
+ *
15
+ * This source code is licensed under the MIT license found in the
16
+ * LICENSE file in the root directory of this source tree.
8
17
  */
9
18
 
10
19
  /**
11
20
  * @license React
21
+ * use-sync-external-store-shim.production.min.js
22
+ *
23
+ * Copyright (c) Facebook, Inc. and its affiliates.
24
+ *
25
+ * This source code is licensed under the MIT license found in the
26
+ * LICENSE file in the root directory of this source tree.
27
+ */
28
+
29
+ /**
30
+ * @license React
31
+ * use-sync-external-store-shim/with-selector.production.min.js
32
+ *
33
+ * Copyright (c) Facebook, Inc. and its affiliates.
34
+ *
35
+ * This source code is licensed under the MIT license found in the
36
+ * LICENSE file in the root directory of this source tree.
37
+ */
38
+
39
+ /** @license React v17.0.2
12
40
  * react-jsx-runtime.production.min.js
13
41
  *
14
42
  * Copyright (c) Facebook, Inc. and its affiliates.
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-d411eb2",
3
+ "version": "0.4.0-d4bae3f",
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": "8.2.6",
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": "8.2.4",
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,24 @@ 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;
104
125
  };
105
126
  } | {
106
127
  commitToHistory: false;
107
128
  appState: {
108
129
  errorMessage: any;
130
+ contextMenu: {
131
+ items: import("../components/ContextMenu").ContextMenuItems;
132
+ top: number;
133
+ left: number;
134
+ } | null;
135
+ showWelcomeScreen: boolean;
109
136
  isLoading: boolean;
137
+ activeEmbeddable: {
138
+ element: import("../element/types").NonDeletedExcalidrawElement;
139
+ state: "active" | "hover";
140
+ } | null;
110
141
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
111
142
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
112
143
  multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null;
@@ -114,19 +145,27 @@ export declare const actionAddToLibrary: {
114
145
  isBindingEnabled: boolean;
115
146
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
116
147
  suggestedBindings: import("../element/binding").SuggestedBinding[];
148
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
149
+ frameRendering: {
150
+ enabled: boolean;
151
+ name: boolean;
152
+ outline: boolean;
153
+ clip: boolean;
154
+ };
155
+ editingFrame: string | null;
156
+ elementsToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawElement>[] | null;
117
157
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
118
158
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
119
159
  activeTool: {
120
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
121
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
160
+ lastActiveTool: import("../types").LastActiveTool;
122
161
  locked: boolean;
162
+ } & ({
163
+ type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "embeddable" | "image" | "frame" | "freedraw" | "eraser" | "hand";
123
164
  customType: null;
124
165
  } | {
125
166
  type: "custom";
126
167
  customType: string;
127
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
128
- locked: boolean;
129
- };
168
+ });
130
169
  penMode: boolean;
131
170
  penDetected: boolean;
132
171
  exportBackground: boolean;
@@ -142,11 +181,10 @@ export declare const actionAddToLibrary: {
142
181
  currentItemOpacity: number;
143
182
  currentItemFontFamily: number;
144
183
  currentItemFontSize: number;
145
- currentItemTextAlign: import("../element/types").TextAlign;
146
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
184
+ currentItemTextAlign: string;
147
185
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
148
186
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
149
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
187
+ currentItemRoundness: import("../element/types").StrokeRoundness;
150
188
  viewBackgroundColor: string;
151
189
  scrollX: number;
152
190
  scrollY: number;
@@ -159,23 +197,29 @@ export declare const actionAddToLibrary: {
159
197
  value: import("../types").NormalizedZoomValue;
160
198
  }>;
161
199
  openMenu: "canvas" | "shape" | null;
162
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
200
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
201
+ openSidebar: {
202
+ name: string;
203
+ tab?: string | undefined;
204
+ } | null;
205
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
206
+ defaultSidebarDockedPreference: boolean;
163
207
  lastPointerDownWith: import("../element/types").PointerType;
164
- selectedElementIds: {
165
- [id: string]: boolean;
166
- };
208
+ selectedElementIds: Readonly<{
209
+ [id: string]: true;
210
+ }>;
167
211
  previousSelectedElementIds: {
168
- [id: string]: boolean;
212
+ [id: string]: true;
169
213
  };
214
+ selectedElementsAreBeingDragged: boolean;
170
215
  shouldCacheIgnoreZoom: boolean;
171
- showHelpDialog: boolean;
172
216
  toast: {
173
217
  message: string;
174
218
  closable?: boolean | undefined;
175
219
  duration?: number | undefined;
176
220
  } | null;
177
221
  zenModeEnabled: boolean;
178
- theme: string;
222
+ theme: import("../element/types").Theme;
179
223
  gridSize: number | null;
180
224
  viewModeEnabled: boolean;
181
225
  selectedGroupIds: {
@@ -186,8 +230,6 @@ export declare const actionAddToLibrary: {
186
230
  height: number;
187
231
  offsetTop: number;
188
232
  offsetLeft: number;
189
- isLibraryOpen: boolean;
190
- isLibraryMenuDocked: boolean;
191
233
  fileHandle: import("browser-fs-access").FileSystemHandle | null;
192
234
  collaborators: Map<string, import("../types").Collaborator>;
193
235
  showStats: boolean;
@@ -200,14 +242,24 @@ export declare const actionAddToLibrary: {
200
242
  data: import("../charts").Spreadsheet;
201
243
  };
202
244
  pendingImageElementId: string | null;
203
- showHyperlinkPopup: false | "info" | "editor";
245
+ showHyperlinkPopup: false | "editor" | "info";
204
246
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
205
247
  };
206
248
  }> | {
207
249
  commitToHistory: false;
208
250
  appState: {
209
251
  errorMessage: string;
252
+ contextMenu: {
253
+ items: import("../components/ContextMenu").ContextMenuItems;
254
+ top: number;
255
+ left: number;
256
+ } | null;
257
+ showWelcomeScreen: boolean;
210
258
  isLoading: boolean;
259
+ activeEmbeddable: {
260
+ element: import("../element/types").NonDeletedExcalidrawElement;
261
+ state: "active" | "hover";
262
+ } | null;
211
263
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
212
264
  resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
213
265
  multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null;
@@ -215,19 +267,27 @@ export declare const actionAddToLibrary: {
215
267
  isBindingEnabled: boolean;
216
268
  startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
217
269
  suggestedBindings: import("../element/binding").SuggestedBinding[];
270
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameElement> | null;
271
+ frameRendering: {
272
+ enabled: boolean;
273
+ name: boolean;
274
+ outline: boolean;
275
+ clip: boolean;
276
+ };
277
+ editingFrame: string | null;
278
+ elementsToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawElement>[] | null;
218
279
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
219
280
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
220
281
  activeTool: {
221
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
222
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
282
+ lastActiveTool: import("../types").LastActiveTool;
223
283
  locked: boolean;
284
+ } & ({
285
+ type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "embeddable" | "image" | "frame" | "freedraw" | "eraser" | "hand";
224
286
  customType: null;
225
287
  } | {
226
288
  type: "custom";
227
289
  customType: string;
228
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
229
- locked: boolean;
230
- };
290
+ });
231
291
  penMode: boolean;
232
292
  penDetected: boolean;
233
293
  exportBackground: boolean;
@@ -243,11 +303,10 @@ export declare const actionAddToLibrary: {
243
303
  currentItemOpacity: number;
244
304
  currentItemFontFamily: number;
245
305
  currentItemFontSize: number;
246
- currentItemTextAlign: import("../element/types").TextAlign;
247
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
306
+ currentItemTextAlign: string;
248
307
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
249
308
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
250
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
309
+ currentItemRoundness: import("../element/types").StrokeRoundness;
251
310
  viewBackgroundColor: string;
252
311
  scrollX: number;
253
312
  scrollY: number;
@@ -260,23 +319,29 @@ export declare const actionAddToLibrary: {
260
319
  value: import("../types").NormalizedZoomValue;
261
320
  }>;
262
321
  openMenu: "canvas" | "shape" | null;
263
- openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
322
+ openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | null;
323
+ openSidebar: {
324
+ name: string;
325
+ tab?: string | undefined;
326
+ } | null;
327
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
328
+ defaultSidebarDockedPreference: boolean;
264
329
  lastPointerDownWith: import("../element/types").PointerType;
265
- selectedElementIds: {
266
- [id: string]: boolean;
267
- };
330
+ selectedElementIds: Readonly<{
331
+ [id: string]: true;
332
+ }>;
268
333
  previousSelectedElementIds: {
269
- [id: string]: boolean;
334
+ [id: string]: true;
270
335
  };
336
+ selectedElementsAreBeingDragged: boolean;
271
337
  shouldCacheIgnoreZoom: boolean;
272
- showHelpDialog: boolean;
273
338
  toast: {
274
339
  message: string;
275
340
  closable?: boolean | undefined;
276
341
  duration?: number | undefined;
277
342
  } | null;
278
343
  zenModeEnabled: boolean;
279
- theme: string;
344
+ theme: import("../element/types").Theme;
280
345
  gridSize: number | null;
281
346
  viewModeEnabled: boolean;
282
347
  selectedGroupIds: {
@@ -287,8 +352,6 @@ export declare const actionAddToLibrary: {
287
352
  height: number;
288
353
  offsetTop: number;
289
354
  offsetLeft: number;
290
- isLibraryOpen: boolean;
291
- isLibraryMenuDocked: boolean;
292
355
  fileHandle: import("browser-fs-access").FileSystemHandle | null;
293
356
  collaborators: Map<string, import("../types").Collaborator>;
294
357
  showStats: boolean;
@@ -301,7 +364,7 @@ export declare const actionAddToLibrary: {
301
364
  data: import("../charts").Spreadsheet;
302
365
  };
303
366
  pendingImageElementId: string | null;
304
- showHyperlinkPopup: false | "info" | "editor";
367
+ showHyperlinkPopup: false | "editor" | "info";
305
368
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
306
369
  };
307
370
  };
@@ -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
  };