@zsviczian/excalidraw 0.13.0-obsidian-2 → 0.14.1-obsidian

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 (80) hide show
  1. package/README.md +417 -19
  2. package/dist/excalidraw.development.js +581 -1153
  3. package/dist/excalidraw.production.min.js +1 -1
  4. package/dist/excalidraw.production.min.js.LICENSE.txt +0 -102
  5. package/package.json +1 -1
  6. package/types/actions/actionAddToLibrary.d.ts +39 -18
  7. package/types/actions/actionAlign.d.ts +6 -18
  8. package/types/actions/actionBoundText.d.ts +15 -8
  9. package/types/actions/actionCanvas.d.ts +246 -76
  10. package/types/actions/actionClipboard.d.ts +84 -31
  11. package/types/actions/actionDeleteSelected.d.ts +40 -21
  12. package/types/actions/actionDistribute.d.ts +2 -6
  13. package/types/actions/actionDuplicateSelection.d.ts +1 -3
  14. package/types/actions/actionExport.d.ts +125 -78
  15. package/types/actions/actionFinalize.d.ts +27 -15
  16. package/types/actions/actionFlip.d.ts +2 -2
  17. package/types/actions/actionGroup.d.ts +4 -8
  18. package/types/actions/actionLinearEditor.d.ts +14 -7
  19. package/types/actions/actionMenu.d.ts +40 -26
  20. package/types/actions/actionNavigate.d.ts +1 -3
  21. package/types/actions/actionProperties.d.ts +182 -117
  22. package/types/actions/actionStyles.d.ts +13 -6
  23. package/types/actions/actionToggleGridMode.d.ts +14 -6
  24. package/types/actions/actionToggleLock.d.ts +13 -6
  25. package/types/actions/actionToggleStats.d.ts +13 -6
  26. package/types/actions/actionToggleViewMode.d.ts +14 -6
  27. package/types/actions/actionToggleZenMode.d.ts +14 -6
  28. package/types/actions/actionZindex.d.ts +4 -12
  29. package/types/actions/manager.d.ts +2 -1
  30. package/types/actions/types.d.ts +3 -5
  31. package/types/appState.d.ts +8 -6
  32. package/types/components/ActiveConfirmDialog.d.ts +24 -0
  33. package/types/components/App.d.ts +8 -50
  34. package/types/components/Button.d.ts +15 -0
  35. package/types/components/CollabButton.d.ts +1 -2
  36. package/types/components/ContextMenu.d.ts +8 -20
  37. package/types/components/HandButton.d.ts +10 -0
  38. package/types/components/JSONExportDialog.d.ts +3 -1
  39. package/types/components/LayerUI.d.ts +3 -3
  40. package/types/components/LibraryMenuHeaderContent.d.ts +23 -0
  41. package/types/components/LockButton.d.ts +0 -1
  42. package/types/components/MobileMenu.d.ts +5 -6
  43. package/types/components/ToolButton.d.ts +1 -1
  44. package/types/components/UserList.d.ts +0 -2
  45. package/types/components/dropdownMenu/DropdownMenu.d.ts +66 -0
  46. package/types/components/dropdownMenu/DropdownMenuContent.d.ts +15 -0
  47. package/types/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -0
  48. package/types/components/dropdownMenu/DropdownMenuItem.d.ts +12 -0
  49. package/types/components/dropdownMenu/DropdownMenuItemContent.d.ts +6 -0
  50. package/types/components/dropdownMenu/DropdownMenuItemCustom.d.ts +6 -0
  51. package/types/components/dropdownMenu/DropdownMenuItemLink.d.ts +13 -0
  52. package/types/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -0
  53. package/types/components/dropdownMenu/DropdownMenuTrigger.d.ts +9 -0
  54. package/types/components/dropdownMenu/common.d.ts +6 -0
  55. package/types/components/dropdownMenu/dropdownMenuUtils.d.ts +3 -0
  56. package/types/components/footer/Footer.d.ts +13 -0
  57. package/types/components/footer/FooterCenter.d.ts +8 -0
  58. package/types/components/icons.d.ts +2 -1
  59. package/types/components/live-collaboration/LiveCollaborationTrigger.d.ts +10 -0
  60. package/types/components/main-menu/DefaultItems.d.ts +44 -0
  61. package/types/components/main-menu/MainMenu.d.ts +60 -0
  62. package/types/components/mainMenu/DefaultItems.d.ts +44 -0
  63. package/types/components/mainMenu/MainMenu.d.ts +63 -0
  64. package/types/components/welcome-screen/WelcomeScreen.Center.d.ts +58 -0
  65. package/types/components/welcome-screen/WelcomeScreen.Hints.d.ts +19 -0
  66. package/types/components/welcome-screen/WelcomeScreen.d.ts +85 -0
  67. package/types/constants.d.ts +6 -4
  68. package/types/element/Hyperlink.d.ts +15 -10
  69. package/types/element/linearElementEditor.d.ts +14 -6
  70. package/types/element/textElement.d.ts +7 -0
  71. package/types/element/textWysiwyg.d.ts +6 -1
  72. package/types/excalidraw-app/data/index.d.ts +5 -0
  73. package/types/excalidraw-app/data/localStorage.d.ts +5 -0
  74. package/types/keys.d.ts +2 -3
  75. package/types/packages/excalidraw/example/CustomFooter.d.ts +5 -0
  76. package/types/packages/excalidraw/example/MobileFooter.d.ts +5 -0
  77. package/types/packages/excalidraw/index.d.ts +10 -0
  78. package/types/renderer/easingFunctions.d.ts +6 -0
  79. package/types/types.d.ts +54 -26
  80. package/types/utils.d.ts +23 -3
@@ -11,110 +11,8 @@ https://github.com/nodeca/pica
11
11
 
12
12
  */
13
13
 
14
- /*! *****************************************************************************
15
- Copyright (c) Microsoft Corporation. All rights reserved.
16
- Licensed under the Apache License, Version 2.0 (the "License"); you may not use
17
- this file except in compliance with the License. You may obtain a copy of the
18
- License at http://www.apache.org/licenses/LICENSE-2.0
19
-
20
- THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21
- KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
22
- WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
23
- MERCHANTABLITY OR NON-INFRINGEMENT.
24
-
25
- See the Apache Version 2.0 License for specific language governing permissions
26
- and limitations under the License.
27
- ***************************************************************************** */
28
-
29
- /*! https://mths.be/utf8js v2.1.2 by @mathias */
30
-
31
14
  /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
32
15
 
33
- /**
34
- * @license
35
- * Copyright 2017 Google LLC
36
- *
37
- * Licensed under the Apache License, Version 2.0 (the "License");
38
- * you may not use this file except in compliance with the License.
39
- * You may obtain a copy of the License at
40
- *
41
- * http://www.apache.org/licenses/LICENSE-2.0
42
- *
43
- * Unless required by applicable law or agreed to in writing, software
44
- * distributed under the License is distributed on an "AS IS" BASIS,
45
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
46
- * See the License for the specific language governing permissions and
47
- * limitations under the License.
48
- */
49
-
50
- /**
51
- * @license
52
- * Copyright 2018 Google LLC
53
- *
54
- * Licensed under the Apache License, Version 2.0 (the "License");
55
- * you may not use this file except in compliance with the License.
56
- * You may obtain a copy of the License at
57
- *
58
- * http://www.apache.org/licenses/LICENSE-2.0
59
- *
60
- * Unless required by applicable law or agreed to in writing, software
61
- * distributed under the License is distributed on an "AS IS" BASIS,
62
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
63
- * See the License for the specific language governing permissions and
64
- * limitations under the License.
65
- */
66
-
67
- /**
68
- * @license
69
- * Copyright 2019 Google LLC
70
- *
71
- * Licensed under the Apache License, Version 2.0 (the "License");
72
- * you may not use this file except in compliance with the License.
73
- * You may obtain a copy of the License at
74
- *
75
- * http://www.apache.org/licenses/LICENSE-2.0
76
- *
77
- * Unless required by applicable law or agreed to in writing, software
78
- * distributed under the License is distributed on an "AS IS" BASIS,
79
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
80
- * See the License for the specific language governing permissions and
81
- * limitations under the License.
82
- */
83
-
84
- /**
85
- * @license
86
- * Copyright 2020 Google LLC
87
- *
88
- * Licensed under the Apache License, Version 2.0 (the "License");
89
- * you may not use this file except in compliance with the License.
90
- * You may obtain a copy of the License at
91
- *
92
- * http://www.apache.org/licenses/LICENSE-2.0
93
- *
94
- * Unless required by applicable law or agreed to in writing, software
95
- * distributed under the License is distributed on an "AS IS" BASIS,
96
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
97
- * See the License for the specific language governing permissions and
98
- * limitations under the License.
99
- */
100
-
101
- /**
102
- * @license
103
- * Copyright 2021 Google LLC
104
- *
105
- * Licensed under the Apache License, Version 2.0 (the "License");
106
- * you may not use this file except in compliance with the License.
107
- * You may obtain a copy of the License at
108
- *
109
- * http://www.apache.org/licenses/LICENSE-2.0
110
- *
111
- * Unless required by applicable law or agreed to in writing, software
112
- * distributed under the License is distributed on an "AS IS" BASIS,
113
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
114
- * See the License for the specific language governing permissions and
115
- * limitations under the License.
116
- */
117
-
118
16
  /**
119
17
  * @license React
120
18
  * react-jsx-runtime.production.min.js
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zsviczian/excalidraw",
3
- "version": "0.13.0-obsidian-2",
3
+ "version": "0.14.1-obsidian",
4
4
  "main": "main.js",
5
5
  "types": "types/packages/excalidraw/index.d.ts",
6
6
  "files": [
@@ -9,6 +9,11 @@ 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;
12
17
  showWelcomeScreen: boolean;
13
18
  isLoading: boolean;
14
19
  errorMessage: string | null;
@@ -22,16 +27,15 @@ export declare const actionAddToLibrary: {
22
27
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
23
28
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
24
29
  activeTool: {
25
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
26
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
30
+ lastActiveTool: import("../types").LastActiveTool;
27
31
  locked: boolean;
32
+ } & ({
33
+ type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser" | "hand";
28
34
  customType: null;
29
35
  } | {
30
36
  type: "custom";
31
37
  customType: string;
32
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
33
- locked: boolean;
34
- };
38
+ });
35
39
  penMode: boolean;
36
40
  penDetected: boolean;
37
41
  exportBackground: boolean;
@@ -65,7 +69,7 @@ export declare const actionAddToLibrary: {
65
69
  openMenu: "canvas" | "shape" | null;
66
70
  openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
67
71
  openSidebar: "library" | "customSidebar" | null;
68
- openDialog: "imageExport" | "help" | null;
72
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
69
73
  isSidebarDocked: boolean;
70
74
  lastPointerDownWith: import("../element/types").PointerType;
71
75
  selectedElementIds: {
@@ -78,6 +82,7 @@ export declare const actionAddToLibrary: {
78
82
  zenModeEnabled: boolean;
79
83
  theme: string;
80
84
  gridSize: number | null;
85
+ previousGridSize: number | null;
81
86
  viewModeEnabled: boolean;
82
87
  selectedGroupIds: {
83
88
  [groupId: string]: boolean;
@@ -107,12 +112,19 @@ export declare const actionAddToLibrary: {
107
112
  elementBackground?: string[] | undefined;
108
113
  elementStroke?: string[] | undefined;
109
114
  };
115
+ allowWheelZoom?: boolean | undefined;
116
+ allowPinchZoom?: boolean | undefined;
110
117
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
111
118
  };
112
119
  } | {
113
120
  commitToHistory: false;
114
121
  appState: {
115
122
  errorMessage: any;
123
+ contextMenu: {
124
+ items: import("../components/ContextMenu").ContextMenuItems;
125
+ top: number;
126
+ left: number;
127
+ } | null;
116
128
  showWelcomeScreen: boolean;
117
129
  isLoading: boolean;
118
130
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -125,16 +137,15 @@ export declare const actionAddToLibrary: {
125
137
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
126
138
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
127
139
  activeTool: {
128
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
129
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
140
+ lastActiveTool: import("../types").LastActiveTool;
130
141
  locked: boolean;
142
+ } & ({
143
+ type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser" | "hand";
131
144
  customType: null;
132
145
  } | {
133
146
  type: "custom";
134
147
  customType: string;
135
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
136
- locked: boolean;
137
- };
148
+ });
138
149
  penMode: boolean;
139
150
  penDetected: boolean;
140
151
  exportBackground: boolean;
@@ -168,7 +179,7 @@ export declare const actionAddToLibrary: {
168
179
  openMenu: "canvas" | "shape" | null;
169
180
  openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
170
181
  openSidebar: "library" | "customSidebar" | null;
171
- openDialog: "imageExport" | "help" | null;
182
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
172
183
  isSidebarDocked: boolean;
173
184
  lastPointerDownWith: import("../element/types").PointerType;
174
185
  selectedElementIds: {
@@ -186,6 +197,7 @@ export declare const actionAddToLibrary: {
186
197
  zenModeEnabled: boolean;
187
198
  theme: string;
188
199
  gridSize: number | null;
200
+ previousGridSize: number | null;
189
201
  viewModeEnabled: boolean;
190
202
  selectedGroupIds: {
191
203
  [groupId: string]: boolean;
@@ -215,12 +227,19 @@ export declare const actionAddToLibrary: {
215
227
  elementBackground?: string[] | undefined;
216
228
  elementStroke?: string[] | undefined;
217
229
  };
230
+ allowWheelZoom?: boolean | undefined;
231
+ allowPinchZoom?: boolean | undefined;
218
232
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
219
233
  };
220
234
  }> | {
221
235
  commitToHistory: false;
222
236
  appState: {
223
237
  errorMessage: string;
238
+ contextMenu: {
239
+ items: import("../components/ContextMenu").ContextMenuItems;
240
+ top: number;
241
+ left: number;
242
+ } | null;
224
243
  showWelcomeScreen: boolean;
225
244
  isLoading: boolean;
226
245
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -233,16 +252,15 @@ export declare const actionAddToLibrary: {
233
252
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
234
253
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
235
254
  activeTool: {
236
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
237
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
255
+ lastActiveTool: import("../types").LastActiveTool;
238
256
  locked: boolean;
257
+ } & ({
258
+ type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser" | "hand";
239
259
  customType: null;
240
260
  } | {
241
261
  type: "custom";
242
262
  customType: string;
243
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
244
- locked: boolean;
245
- };
263
+ });
246
264
  penMode: boolean;
247
265
  penDetected: boolean;
248
266
  exportBackground: boolean;
@@ -276,7 +294,7 @@ export declare const actionAddToLibrary: {
276
294
  openMenu: "canvas" | "shape" | null;
277
295
  openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
278
296
  openSidebar: "library" | "customSidebar" | null;
279
- openDialog: "imageExport" | "help" | null;
297
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
280
298
  isSidebarDocked: boolean;
281
299
  lastPointerDownWith: import("../element/types").PointerType;
282
300
  selectedElementIds: {
@@ -294,6 +312,7 @@ export declare const actionAddToLibrary: {
294
312
  zenModeEnabled: boolean;
295
313
  theme: string;
296
314
  gridSize: number | null;
315
+ previousGridSize: number | null;
297
316
  viewModeEnabled: boolean;
298
317
  selectedGroupIds: {
299
318
  [groupId: string]: boolean;
@@ -323,6 +342,8 @@ export declare const actionAddToLibrary: {
323
342
  elementBackground?: string[] | undefined;
324
343
  elementStroke?: string[] | undefined;
325
344
  };
345
+ allowWheelZoom?: boolean | undefined;
346
+ allowPinchZoom?: boolean | undefined;
326
347
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
327
348
  };
328
349
  };
@@ -12,9 +12,7 @@ export declare const actionAlignTop: {
12
12
  commitToHistory: true;
13
13
  };
14
14
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
15
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps & {
16
- isInHamburgerMenu: boolean;
17
- }) => JSX.Element;
15
+ PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
18
16
  } & {
19
17
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
20
18
  };
@@ -29,9 +27,7 @@ export declare const actionAlignBottom: {
29
27
  commitToHistory: true;
30
28
  };
31
29
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
32
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps & {
33
- isInHamburgerMenu: boolean;
34
- }) => JSX.Element;
30
+ PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
35
31
  } & {
36
32
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
37
33
  };
@@ -46,9 +42,7 @@ export declare const actionAlignLeft: {
46
42
  commitToHistory: true;
47
43
  };
48
44
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
49
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps & {
50
- isInHamburgerMenu: boolean;
51
- }) => JSX.Element;
45
+ PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
52
46
  } & {
53
47
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
54
48
  };
@@ -63,9 +57,7 @@ export declare const actionAlignRight: {
63
57
  commitToHistory: true;
64
58
  };
65
59
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
66
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps & {
67
- isInHamburgerMenu: boolean;
68
- }) => JSX.Element;
60
+ PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
69
61
  } & {
70
62
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
71
63
  };
@@ -79,9 +71,7 @@ export declare const actionAlignVerticallyCentered: {
79
71
  elements: ExcalidrawElement[];
80
72
  commitToHistory: true;
81
73
  };
82
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps & {
83
- isInHamburgerMenu: boolean;
84
- }) => JSX.Element;
74
+ PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
85
75
  } & {
86
76
  keyTest?: undefined;
87
77
  };
@@ -95,9 +85,7 @@ export declare const actionAlignHorizontallyCentered: {
95
85
  elements: ExcalidrawElement[];
96
86
  commitToHistory: true;
97
87
  };
98
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps & {
99
- isInHamburgerMenu: boolean;
100
- }) => JSX.Element;
88
+ PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
101
89
  } & {
102
90
  keyTest?: undefined;
103
91
  };
@@ -4,7 +4,7 @@ export declare const actionUnbindText: {
4
4
  trackEvent: {
5
5
  category: "element";
6
6
  };
7
- contextItemPredicate: (elements: readonly import("../element/types").ExcalidrawElement[], appState: import("../types").AppState) => boolean;
7
+ predicate: (elements: readonly import("../element/types").ExcalidrawElement[], appState: import("../types").AppState) => boolean;
8
8
  perform: (elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>) => {
9
9
  elements: readonly import("../element/types").ExcalidrawElement[];
10
10
  appState: Readonly<import("../types").AppState>;
@@ -19,13 +19,18 @@ export declare const actionBindText: {
19
19
  trackEvent: {
20
20
  category: "element";
21
21
  };
22
- contextItemPredicate: (elements: readonly import("../element/types").ExcalidrawElement[], appState: import("../types").AppState) => boolean;
22
+ predicate: (elements: readonly import("../element/types").ExcalidrawElement[], appState: import("../types").AppState) => boolean;
23
23
  perform: (elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>) => {
24
24
  elements: import("../element/types").ExcalidrawElement[];
25
25
  appState: {
26
26
  selectedElementIds: {
27
27
  [x: string]: true;
28
28
  };
29
+ contextMenu: {
30
+ items: import("../components/ContextMenu").ContextMenuItems;
31
+ top: number;
32
+ left: number;
33
+ } | null;
29
34
  showWelcomeScreen: boolean;
30
35
  isLoading: boolean;
31
36
  errorMessage: string | null;
@@ -39,16 +44,15 @@ export declare const actionBindText: {
39
44
  editingElement: import("../element/types").NonDeletedExcalidrawElement | null;
40
45
  editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
41
46
  activeTool: {
42
- type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser";
43
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
47
+ lastActiveTool: import("../types").LastActiveTool;
44
48
  locked: boolean;
49
+ } & ({
50
+ type: "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "image" | "freedraw" | "eraser" | "hand";
45
51
  customType: null;
46
52
  } | {
47
53
  type: "custom";
48
54
  customType: string;
49
- lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
50
- locked: boolean;
51
- };
55
+ });
52
56
  penMode: boolean;
53
57
  penDetected: boolean;
54
58
  exportBackground: boolean;
@@ -82,7 +86,7 @@ export declare const actionBindText: {
82
86
  openMenu: "canvas" | "shape" | null;
83
87
  openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
84
88
  openSidebar: "library" | "customSidebar" | null;
85
- openDialog: "imageExport" | "help" | null;
89
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
86
90
  isSidebarDocked: boolean;
87
91
  lastPointerDownWith: import("../element/types").PointerType;
88
92
  previousSelectedElementIds: {
@@ -97,6 +101,7 @@ export declare const actionBindText: {
97
101
  zenModeEnabled: boolean;
98
102
  theme: string;
99
103
  gridSize: number | null;
104
+ previousGridSize: number | null;
100
105
  viewModeEnabled: boolean;
101
106
  selectedGroupIds: {
102
107
  [groupId: string]: boolean;
@@ -126,6 +131,8 @@ export declare const actionBindText: {
126
131
  elementBackground?: string[] | undefined;
127
132
  elementStroke?: string[] | undefined;
128
133
  };
134
+ allowWheelZoom?: boolean | undefined;
135
+ allowPinchZoom?: boolean | undefined;
129
136
  selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
130
137
  };
131
138
  commitToHistory: true;