@zsviczian/excalidraw 0.13.0-obsidian-1 → 0.14.0-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 (88) hide show
  1. package/README.md +418 -20
  2. package/dist/excalidraw.development.js +571 -1154
  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 +21 -9
  7. package/types/actions/actionAlign.d.ts +6 -18
  8. package/types/actions/actionBoundText.d.ts +9 -5
  9. package/types/actions/actionCanvas.d.ts +83 -55
  10. package/types/actions/actionClipboard.d.ts +63 -16
  11. package/types/actions/actionDeleteSelected.d.ts +31 -12
  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 +79 -58
  15. package/types/actions/actionFinalize.d.ts +15 -9
  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 +8 -4
  19. package/types/actions/actionMenu.d.ts +24 -17
  20. package/types/actions/actionNavigate.d.ts +2 -3
  21. package/types/actions/actionProperties.d.ts +106 -80
  22. package/types/actions/actionStyles.d.ts +7 -3
  23. package/types/actions/actionToggleGridMode.d.ts +9 -3
  24. package/types/actions/actionToggleLock.d.ts +7 -3
  25. package/types/actions/actionToggleStats.d.ts +8 -3
  26. package/types/actions/actionToggleViewMode.d.ts +9 -3
  27. package/types/actions/actionToggleZenMode.d.ts +9 -3
  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 +6 -5
  31. package/types/appState.d.ts +8 -9
  32. package/types/clipboard.d.ts +6 -1
  33. package/types/components/App.d.ts +8 -51
  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 -21
  37. package/types/components/JSONExportDialog.d.ts +3 -1
  38. package/types/components/LayerUI.d.ts +2 -3
  39. package/types/components/LibraryMenuHeaderContent.d.ts +23 -0
  40. package/types/components/MobileMenu.d.ts +4 -6
  41. package/types/components/UserList.d.ts +0 -2
  42. package/types/components/dropdownMenu/DropdownMenu.d.ts +64 -0
  43. package/types/components/dropdownMenu/DropdownMenuContent.d.ts +11 -0
  44. package/types/components/dropdownMenu/DropdownMenuGroup.d.ts +11 -0
  45. package/types/components/dropdownMenu/DropdownMenuItem.d.ts +13 -0
  46. package/types/components/dropdownMenu/DropdownMenuItemContent.d.ts +6 -0
  47. package/types/components/dropdownMenu/DropdownMenuItemCustom.d.ts +6 -0
  48. package/types/components/dropdownMenu/DropdownMenuItemLink.d.ts +12 -0
  49. package/types/components/dropdownMenu/DropdownMenuSeparator.d.ts +5 -0
  50. package/types/components/dropdownMenu/DropdownMenuTrigger.d.ts +9 -0
  51. package/types/components/dropdownMenu/dropdownMenuUtils.d.ts +3 -0
  52. package/types/components/footer/Footer.d.ts +13 -0
  53. package/types/components/footer/FooterCenter.d.ts +8 -0
  54. package/types/components/icons.d.ts +1 -1
  55. package/types/components/live-collaboration/LiveCollaborationTrigger.d.ts +10 -0
  56. package/types/components/main-menu/DefaultItems.d.ts +44 -0
  57. package/types/components/main-menu/MainMenu.d.ts +55 -0
  58. package/types/components/mainMenu/DefaultItems.d.ts +44 -0
  59. package/types/components/mainMenu/MainMenu.d.ts +63 -0
  60. package/types/components/welcome-screen/WelcomeScreen.Center.d.ts +58 -0
  61. package/types/components/welcome-screen/WelcomeScreen.Hints.d.ts +19 -0
  62. package/types/components/welcome-screen/WelcomeScreen.d.ts +85 -0
  63. package/types/constants.d.ts +6 -7
  64. package/types/element/Hyperlink.d.ts +9 -7
  65. package/types/element/bounds.d.ts +3 -2
  66. package/types/element/linearElementEditor.d.ts +38 -6
  67. package/types/element/newElement.d.ts +2 -2
  68. package/types/element/resizeElements.d.ts +0 -1
  69. package/types/element/textElement.d.ts +24 -2
  70. package/types/element/textWysiwyg.d.ts +6 -1
  71. package/types/element/transformHandles.d.ts +2 -3
  72. package/types/element/typeChecks.d.ts +10 -1
  73. package/types/element/types.d.ts +11 -4
  74. package/types/excalidraw-app/data/index.d.ts +13 -9
  75. package/types/excalidraw-app/data/localStorage.d.ts +13 -9
  76. package/types/keys.d.ts +2 -0
  77. package/types/math.d.ts +2 -1
  78. package/types/packages/excalidraw/example/CustomFooter.d.ts +5 -0
  79. package/types/packages/excalidraw/example/MobileFooter.d.ts +5 -0
  80. package/types/packages/excalidraw/index.d.ts +10 -0
  81. package/types/renderer/easingFunctions.d.ts +6 -0
  82. package/types/renderer/renderElement.d.ts +4 -3
  83. package/types/scene/Fonts.d.ts +21 -0
  84. package/types/scene/Scene.d.ts +15 -0
  85. package/types/scene/comparisons.d.ts +2 -3
  86. package/types/scene/index.d.ts +1 -1
  87. package/types/types.d.ts +43 -22
  88. package/types/utils.d.ts +17 -0
@@ -12,6 +12,11 @@ export declare const actionDeleteSelected: {
12
12
  elements: ExcalidrawElement[];
13
13
  appState: {
14
14
  editingLinearElement: null;
15
+ contextMenu: {
16
+ items: import("../components/ContextMenu").ContextMenuItems;
17
+ top: number;
18
+ left: number;
19
+ } | null;
15
20
  showWelcomeScreen: boolean;
16
21
  isLoading: boolean;
17
22
  errorMessage: string | null;
@@ -50,10 +55,9 @@ export declare const actionDeleteSelected: {
50
55
  currentItemFontFamily: number;
51
56
  currentItemFontSize: number;
52
57
  currentItemTextAlign: string;
53
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
54
58
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
55
59
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
56
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
60
+ currentItemRoundness: import("../element/types").StrokeRoundness;
57
61
  viewBackgroundColor: string;
58
62
  scrollX: number;
59
63
  scrollY: number;
@@ -68,7 +72,7 @@ export declare const actionDeleteSelected: {
68
72
  openMenu: "canvas" | "shape" | null;
69
73
  openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
70
74
  openSidebar: "library" | "customSidebar" | null;
71
- openDialog: "imageExport" | "help" | null;
75
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
72
76
  isSidebarDocked: boolean;
73
77
  lastPointerDownWith: import("../element/types").PointerType;
74
78
  selectedElementIds: {
@@ -131,6 +135,15 @@ export declare const actionDeleteSelected: {
131
135
  pointerDownState: Readonly<{
132
136
  prevSelectedPointsIndices: readonly number[] | null;
133
137
  lastClickedPoint: number;
138
+ origin: Readonly<{
139
+ x: number;
140
+ y: number;
141
+ }> | null;
142
+ segmentMidpoint: {
143
+ value: readonly [number, number] | null;
144
+ index: number | null;
145
+ added: boolean;
146
+ };
134
147
  }>;
135
148
  isDragging: boolean;
136
149
  lastUncommittedPoint: readonly [number, number] | null;
@@ -141,6 +154,11 @@ export declare const actionDeleteSelected: {
141
154
  hoverPointIndex: number;
142
155
  segmentMidPointHoveredCoords: readonly [number, number] | null;
143
156
  };
157
+ contextMenu: {
158
+ items: import("../components/ContextMenu").ContextMenuItems;
159
+ top: number;
160
+ left: number;
161
+ } | null;
144
162
  showWelcomeScreen: boolean;
145
163
  isLoading: boolean;
146
164
  errorMessage: string | null;
@@ -179,10 +197,9 @@ export declare const actionDeleteSelected: {
179
197
  currentItemFontFamily: number;
180
198
  currentItemFontSize: number;
181
199
  currentItemTextAlign: string;
182
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
183
200
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
184
201
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
185
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
202
+ currentItemRoundness: import("../element/types").StrokeRoundness;
186
203
  viewBackgroundColor: string;
187
204
  scrollX: number;
188
205
  scrollY: number;
@@ -197,7 +214,7 @@ export declare const actionDeleteSelected: {
197
214
  openMenu: "canvas" | "shape" | null;
198
215
  openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
199
216
  openSidebar: "library" | "customSidebar" | null;
200
- openDialog: "imageExport" | "help" | null;
217
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
201
218
  isSidebarDocked: boolean;
202
219
  lastPointerDownWith: import("../element/types").PointerType;
203
220
  selectedElementIds: {
@@ -263,6 +280,11 @@ export declare const actionDeleteSelected: {
263
280
  };
264
281
  multiElement: null;
265
282
  selectedElementIds: {};
283
+ contextMenu: {
284
+ items: import("../components/ContextMenu").ContextMenuItems;
285
+ top: number;
286
+ left: number;
287
+ } | null;
266
288
  showWelcomeScreen: boolean;
267
289
  isLoading: boolean;
268
290
  errorMessage: string | null;
@@ -290,10 +312,9 @@ export declare const actionDeleteSelected: {
290
312
  currentItemFontFamily: number;
291
313
  currentItemFontSize: number;
292
314
  currentItemTextAlign: string;
293
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
294
315
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
295
316
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
296
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
317
+ currentItemRoundness: import("../element/types").StrokeRoundness;
297
318
  viewBackgroundColor: string;
298
319
  scrollX: number;
299
320
  scrollY: number;
@@ -308,7 +329,7 @@ export declare const actionDeleteSelected: {
308
329
  openMenu: "canvas" | "shape" | null;
309
330
  openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
310
331
  openSidebar: "library" | "customSidebar" | null;
311
- openDialog: "imageExport" | "help" | null;
332
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
312
333
  isSidebarDocked: boolean;
313
334
  lastPointerDownWith: import("../element/types").PointerType;
314
335
  previousSelectedElementIds: {
@@ -358,9 +379,7 @@ export declare const actionDeleteSelected: {
358
379
  };
359
380
  contextItemLabel: string;
360
381
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
361
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps & {
362
- isInHamburgerMenu: boolean;
363
- }) => JSX.Element;
382
+ PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
364
383
  } & {
365
384
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
366
385
  };
@@ -12,9 +12,7 @@ export declare const distributeHorizontally: {
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 distributeVertically: {
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
  };
@@ -16,9 +16,7 @@ export declare const actionDuplicateSelection: {
16
16
  };
17
17
  contextItemLabel: string;
18
18
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
19
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps & {
20
- isInHamburgerMenu: boolean;
21
- }) => JSX.Element;
19
+ PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
22
20
  } & {
23
21
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
24
22
  };
@@ -6,6 +6,11 @@ export declare const actionChangeProjectName: {
6
6
  perform: (_elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>, value: any) => {
7
7
  appState: {
8
8
  name: any;
9
+ contextMenu: {
10
+ items: import("../components/ContextMenu").ContextMenuItems;
11
+ top: number;
12
+ left: number;
13
+ } | null;
9
14
  showWelcomeScreen: boolean;
10
15
  isLoading: boolean;
11
16
  errorMessage: string | null;
@@ -45,10 +50,9 @@ export declare const actionChangeProjectName: {
45
50
  currentItemFontFamily: number;
46
51
  currentItemFontSize: number;
47
52
  currentItemTextAlign: string;
48
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
49
53
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
50
54
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
51
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
55
+ currentItemRoundness: import("../element/types").StrokeRoundness;
52
56
  viewBackgroundColor: string;
53
57
  scrollX: number;
54
58
  scrollY: number;
@@ -62,7 +66,7 @@ export declare const actionChangeProjectName: {
62
66
  openMenu: "canvas" | "shape" | null;
63
67
  openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
64
68
  openSidebar: "library" | "customSidebar" | null;
65
- openDialog: "imageExport" | "help" | null;
69
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
66
70
  isSidebarDocked: boolean;
67
71
  lastPointerDownWith: import("../element/types").PointerType;
68
72
  selectedElementIds: {
@@ -113,9 +117,7 @@ export declare const actionChangeProjectName: {
113
117
  };
114
118
  commitToHistory: false;
115
119
  };
116
- PanelComponent: ({ appState, updateData, appProps }: import("./types").PanelComponentProps & {
117
- isInHamburgerMenu: boolean;
118
- }) => JSX.Element;
120
+ PanelComponent: ({ appState, updateData, appProps }: import("./types").PanelComponentProps) => JSX.Element;
119
121
  } & {
120
122
  keyTest?: undefined;
121
123
  };
@@ -128,6 +130,11 @@ export declare const actionChangeExportScale: {
128
130
  perform: (_elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>, value: any) => {
129
131
  appState: {
130
132
  exportScale: any;
133
+ contextMenu: {
134
+ items: import("../components/ContextMenu").ContextMenuItems;
135
+ top: number;
136
+ left: number;
137
+ } | null;
131
138
  showWelcomeScreen: boolean;
132
139
  isLoading: boolean;
133
140
  errorMessage: string | null;
@@ -166,10 +173,9 @@ export declare const actionChangeExportScale: {
166
173
  currentItemFontFamily: number;
167
174
  currentItemFontSize: number;
168
175
  currentItemTextAlign: string;
169
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
170
176
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
171
177
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
172
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
178
+ currentItemRoundness: import("../element/types").StrokeRoundness;
173
179
  viewBackgroundColor: string;
174
180
  scrollX: number;
175
181
  scrollY: number;
@@ -184,7 +190,7 @@ export declare const actionChangeExportScale: {
184
190
  openMenu: "canvas" | "shape" | null;
185
191
  openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
186
192
  openSidebar: "library" | "customSidebar" | null;
187
- openDialog: "imageExport" | "help" | null;
193
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
188
194
  isSidebarDocked: boolean;
189
195
  lastPointerDownWith: import("../element/types").PointerType;
190
196
  selectedElementIds: {
@@ -235,9 +241,7 @@ export declare const actionChangeExportScale: {
235
241
  };
236
242
  commitToHistory: false;
237
243
  };
238
- PanelComponent: ({ elements: allElements, appState, updateData }: import("./types").PanelComponentProps & {
239
- isInHamburgerMenu: boolean;
240
- }) => JSX.Element;
244
+ PanelComponent: ({ elements: allElements, appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
241
245
  } & {
242
246
  keyTest?: undefined;
243
247
  };
@@ -250,6 +254,11 @@ export declare const actionChangeExportBackground: {
250
254
  perform: (_elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>, value: any) => {
251
255
  appState: {
252
256
  exportBackground: any;
257
+ contextMenu: {
258
+ items: import("../components/ContextMenu").ContextMenuItems;
259
+ top: number;
260
+ left: number;
261
+ } | null;
253
262
  showWelcomeScreen: boolean;
254
263
  isLoading: boolean;
255
264
  errorMessage: string | null;
@@ -288,10 +297,9 @@ export declare const actionChangeExportBackground: {
288
297
  currentItemFontFamily: number;
289
298
  currentItemFontSize: number;
290
299
  currentItemTextAlign: string;
291
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
292
300
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
293
301
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
294
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
302
+ currentItemRoundness: import("../element/types").StrokeRoundness;
295
303
  viewBackgroundColor: string;
296
304
  scrollX: number;
297
305
  scrollY: number;
@@ -306,7 +314,7 @@ export declare const actionChangeExportBackground: {
306
314
  openMenu: "canvas" | "shape" | null;
307
315
  openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
308
316
  openSidebar: "library" | "customSidebar" | null;
309
- openDialog: "imageExport" | "help" | null;
317
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
310
318
  isSidebarDocked: boolean;
311
319
  lastPointerDownWith: import("../element/types").PointerType;
312
320
  selectedElementIds: {
@@ -357,9 +365,7 @@ export declare const actionChangeExportBackground: {
357
365
  };
358
366
  commitToHistory: false;
359
367
  };
360
- PanelComponent: ({ appState, updateData }: import("./types").PanelComponentProps & {
361
- isInHamburgerMenu: boolean;
362
- }) => JSX.Element;
368
+ PanelComponent: ({ appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
363
369
  } & {
364
370
  keyTest?: undefined;
365
371
  };
@@ -372,6 +378,11 @@ export declare const actionChangeExportEmbedScene: {
372
378
  perform: (_elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>, value: any) => {
373
379
  appState: {
374
380
  exportEmbedScene: any;
381
+ contextMenu: {
382
+ items: import("../components/ContextMenu").ContextMenuItems;
383
+ top: number;
384
+ left: number;
385
+ } | null;
375
386
  showWelcomeScreen: boolean;
376
387
  isLoading: boolean;
377
388
  errorMessage: string | null;
@@ -410,10 +421,9 @@ export declare const actionChangeExportEmbedScene: {
410
421
  currentItemFontFamily: number;
411
422
  currentItemFontSize: number;
412
423
  currentItemTextAlign: string;
413
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
414
424
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
415
425
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
416
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
426
+ currentItemRoundness: import("../element/types").StrokeRoundness;
417
427
  viewBackgroundColor: string;
418
428
  scrollX: number;
419
429
  scrollY: number;
@@ -428,7 +438,7 @@ export declare const actionChangeExportEmbedScene: {
428
438
  openMenu: "canvas" | "shape" | null;
429
439
  openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
430
440
  openSidebar: "library" | "customSidebar" | null;
431
- openDialog: "imageExport" | "help" | null;
441
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
432
442
  isSidebarDocked: boolean;
433
443
  lastPointerDownWith: import("../element/types").PointerType;
434
444
  selectedElementIds: {
@@ -479,9 +489,7 @@ export declare const actionChangeExportEmbedScene: {
479
489
  };
480
490
  commitToHistory: false;
481
491
  };
482
- PanelComponent: ({ appState, updateData }: import("./types").PanelComponentProps & {
483
- isInHamburgerMenu: boolean;
484
- }) => JSX.Element;
492
+ PanelComponent: ({ appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
485
493
  } & {
486
494
  keyTest?: undefined;
487
495
  };
@@ -490,6 +498,7 @@ export declare const actionSaveToActiveFile: {
490
498
  trackEvent: {
491
499
  category: "export";
492
500
  };
501
+ predicate: (elements: readonly import("../element/types").ExcalidrawElement[], appState: import("../types").AppState, props: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
493
502
  perform: (elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>, value: any, app: import("../types").AppClassProperties) => Promise<{
494
503
  commitToHistory: false;
495
504
  appState: {
@@ -497,6 +506,11 @@ export declare const actionSaveToActiveFile: {
497
506
  toast: {
498
507
  message: string;
499
508
  } | null;
509
+ contextMenu: {
510
+ items: import("../components/ContextMenu").ContextMenuItems;
511
+ top: number;
512
+ left: number;
513
+ } | null;
500
514
  showWelcomeScreen: boolean;
501
515
  isLoading: boolean;
502
516
  errorMessage: string | null;
@@ -536,10 +550,9 @@ export declare const actionSaveToActiveFile: {
536
550
  currentItemFontFamily: number;
537
551
  currentItemFontSize: number;
538
552
  currentItemTextAlign: string;
539
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
540
553
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
541
554
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
542
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
555
+ currentItemRoundness: import("../element/types").StrokeRoundness;
543
556
  viewBackgroundColor: string;
544
557
  scrollX: number;
545
558
  scrollY: number;
@@ -554,7 +567,7 @@ export declare const actionSaveToActiveFile: {
554
567
  openMenu: "canvas" | "shape" | null;
555
568
  openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
556
569
  openSidebar: "library" | "customSidebar" | null;
557
- openDialog: "imageExport" | "help" | null;
570
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
558
571
  isSidebarDocked: boolean;
559
572
  lastPointerDownWith: import("../element/types").PointerType;
560
573
  selectedElementIds: {
@@ -602,14 +615,12 @@ export declare const actionSaveToActiveFile: {
602
615
  appState?: undefined;
603
616
  }>;
604
617
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
605
- PanelComponent: ({ updateData, appState }: import("./types").PanelComponentProps & {
606
- isInHamburgerMenu: boolean;
607
- }) => JSX.Element;
608
618
  } & {
609
619
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
610
620
  };
611
621
  export declare const actionSaveFileToDisk: {
612
622
  name: "saveFileToDisk";
623
+ viewMode: true;
613
624
  trackEvent: {
614
625
  category: "export";
615
626
  };
@@ -617,6 +628,11 @@ export declare const actionSaveFileToDisk: {
617
628
  commitToHistory: false;
618
629
  appState: {
619
630
  fileHandle: import("browser-fs-access").FileSystemHandle | null;
631
+ contextMenu: {
632
+ items: import("../components/ContextMenu").ContextMenuItems;
633
+ top: number;
634
+ left: number;
635
+ } | null;
620
636
  showWelcomeScreen: boolean;
621
637
  isLoading: boolean;
622
638
  errorMessage: string | null;
@@ -656,10 +672,9 @@ export declare const actionSaveFileToDisk: {
656
672
  currentItemFontFamily: number;
657
673
  currentItemFontSize: number;
658
674
  currentItemTextAlign: string;
659
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
660
675
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
661
676
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
662
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
677
+ currentItemRoundness: import("../element/types").StrokeRoundness;
663
678
  viewBackgroundColor: string;
664
679
  scrollX: number;
665
680
  scrollY: number;
@@ -674,7 +689,7 @@ export declare const actionSaveFileToDisk: {
674
689
  openMenu: "canvas" | "shape" | null;
675
690
  openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
676
691
  openSidebar: "library" | "customSidebar" | null;
677
- openDialog: "imageExport" | "help" | null;
692
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
678
693
  isSidebarDocked: boolean;
679
694
  lastPointerDownWith: import("../element/types").PointerType;
680
695
  selectedElementIds: {
@@ -727,9 +742,7 @@ export declare const actionSaveFileToDisk: {
727
742
  appState?: undefined;
728
743
  }>;
729
744
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
730
- PanelComponent: ({ updateData }: import("./types").PanelComponentProps & {
731
- isInHamburgerMenu: boolean;
732
- }) => JSX.Element;
745
+ PanelComponent: ({ updateData }: import("./types").PanelComponentProps) => JSX.Element;
733
746
  } & {
734
747
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
735
748
  };
@@ -738,6 +751,7 @@ export declare const actionLoadScene: {
738
751
  trackEvent: {
739
752
  category: "export";
740
753
  };
754
+ predicate: (elements: readonly import("../element/types").ExcalidrawElement[], appState: import("../types").AppState, props: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
741
755
  perform: (elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>, _: any, app: import("../types").AppClassProperties) => Promise<false | {
742
756
  elements: import("../element/types").ExcalidrawElement[];
743
757
  appState: {
@@ -754,13 +768,11 @@ export declare const actionLoadScene: {
754
768
  lastActiveToolBeforeEraser: import("../types").LastActiveToolBeforeEraser;
755
769
  locked: boolean;
756
770
  };
757
- scrollX: number;
758
- scrollY: number;
759
- viewBackgroundColor: string;
760
- zoom: Readonly<{
761
- value: import("../types").NormalizedZoomValue;
762
- }>;
763
- shouldCacheIgnoreZoom: boolean;
771
+ contextMenu: {
772
+ items: import("../components/ContextMenu").ContextMenuItems;
773
+ top: number;
774
+ left: number;
775
+ } | null;
764
776
  showWelcomeScreen: boolean;
765
777
  isLoading: boolean;
766
778
  errorMessage: string | null;
@@ -789,18 +801,23 @@ export declare const actionLoadScene: {
789
801
  currentItemFontFamily: number;
790
802
  currentItemFontSize: number;
791
803
  currentItemTextAlign: string;
792
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
793
804
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
794
805
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
795
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
806
+ currentItemRoundness: import("../element/types").StrokeRoundness;
807
+ viewBackgroundColor: string;
808
+ scrollX: number;
809
+ scrollY: number;
796
810
  cursorButton: "up" | "down";
797
811
  scrolledOutside: boolean;
798
812
  isResizing: boolean;
799
813
  isRotating: boolean;
814
+ zoom: Readonly<{
815
+ value: import("../types").NormalizedZoomValue;
816
+ }>;
800
817
  openMenu: "canvas" | "shape" | null;
801
818
  openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
802
819
  openSidebar: "library" | "customSidebar" | null;
803
- openDialog: "imageExport" | "help" | null;
820
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
804
821
  isSidebarDocked: boolean;
805
822
  lastPointerDownWith: import("../element/types").PointerType;
806
823
  selectedElementIds: {
@@ -809,6 +826,7 @@ export declare const actionLoadScene: {
809
826
  previousSelectedElementIds: {
810
827
  [id: string]: boolean;
811
828
  };
829
+ shouldCacheIgnoreZoom: boolean;
812
830
  toast: {
813
831
  message: string;
814
832
  closable?: boolean | undefined;
@@ -849,6 +867,11 @@ export declare const actionLoadScene: {
849
867
  elements: readonly import("../element/types").ExcalidrawElement[];
850
868
  appState: {
851
869
  errorMessage: any;
870
+ contextMenu: {
871
+ items: import("../components/ContextMenu").ContextMenuItems;
872
+ top: number;
873
+ left: number;
874
+ } | null;
852
875
  showWelcomeScreen: boolean;
853
876
  isLoading: boolean;
854
877
  draggingElement: import("../element/types").NonDeletedExcalidrawElement | null;
@@ -887,10 +910,9 @@ export declare const actionLoadScene: {
887
910
  currentItemFontFamily: number;
888
911
  currentItemFontSize: number;
889
912
  currentItemTextAlign: string;
890
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
891
913
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
892
914
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
893
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
915
+ currentItemRoundness: import("../element/types").StrokeRoundness;
894
916
  viewBackgroundColor: string;
895
917
  scrollX: number;
896
918
  scrollY: number;
@@ -905,7 +927,7 @@ export declare const actionLoadScene: {
905
927
  openMenu: "canvas" | "shape" | null;
906
928
  openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
907
929
  openSidebar: "library" | "customSidebar" | null;
908
- openDialog: "imageExport" | "help" | null;
930
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
909
931
  isSidebarDocked: boolean;
910
932
  lastPointerDownWith: import("../element/types").PointerType;
911
933
  selectedElementIds: {
@@ -958,9 +980,6 @@ export declare const actionLoadScene: {
958
980
  commitToHistory: false;
959
981
  }>;
960
982
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
961
- PanelComponent: ({ updateData }: import("./types").PanelComponentProps & {
962
- isInHamburgerMenu: boolean;
963
- }) => JSX.Element;
964
983
  } & {
965
984
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
966
985
  };
@@ -973,6 +992,11 @@ export declare const actionExportWithDarkMode: {
973
992
  perform: (_elements: readonly import("../element/types").ExcalidrawElement[], appState: Readonly<import("../types").AppState>, value: any) => {
974
993
  appState: {
975
994
  exportWithDarkMode: any;
995
+ contextMenu: {
996
+ items: import("../components/ContextMenu").ContextMenuItems;
997
+ top: number;
998
+ left: number;
999
+ } | null;
976
1000
  showWelcomeScreen: boolean;
977
1001
  isLoading: boolean;
978
1002
  errorMessage: string | null;
@@ -1011,10 +1035,9 @@ export declare const actionExportWithDarkMode: {
1011
1035
  currentItemFontFamily: number;
1012
1036
  currentItemFontSize: number;
1013
1037
  currentItemTextAlign: string;
1014
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
1015
1038
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
1016
1039
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
1017
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
1040
+ currentItemRoundness: import("../element/types").StrokeRoundness;
1018
1041
  viewBackgroundColor: string;
1019
1042
  scrollX: number;
1020
1043
  scrollY: number;
@@ -1029,7 +1052,7 @@ export declare const actionExportWithDarkMode: {
1029
1052
  openMenu: "canvas" | "shape" | null;
1030
1053
  openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
1031
1054
  openSidebar: "library" | "customSidebar" | null;
1032
- openDialog: "imageExport" | "help" | null;
1055
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
1033
1056
  isSidebarDocked: boolean;
1034
1057
  lastPointerDownWith: import("../element/types").PointerType;
1035
1058
  selectedElementIds: {
@@ -1080,9 +1103,7 @@ export declare const actionExportWithDarkMode: {
1080
1103
  };
1081
1104
  commitToHistory: false;
1082
1105
  };
1083
- PanelComponent: ({ appState, updateData }: import("./types").PanelComponentProps & {
1084
- isInHamburgerMenu: boolean;
1085
- }) => JSX.Element;
1106
+ PanelComponent: ({ appState, updateData }: import("./types").PanelComponentProps) => JSX.Element;
1086
1107
  } & {
1087
1108
  keyTest?: undefined;
1088
1109
  };
@@ -9,6 +9,11 @@ export declare const actionFinalize: {
9
9
  appState: {
10
10
  cursorButton: "up";
11
11
  editingLinearElement: null;
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;
@@ -47,10 +52,9 @@ export declare const actionFinalize: {
47
52
  currentItemFontFamily: number;
48
53
  currentItemFontSize: number;
49
54
  currentItemTextAlign: string;
50
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
51
55
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
52
56
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
53
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
57
+ currentItemRoundness: import("../element/types").StrokeRoundness;
54
58
  viewBackgroundColor: string;
55
59
  scrollX: number;
56
60
  scrollY: number;
@@ -64,7 +68,7 @@ export declare const actionFinalize: {
64
68
  openMenu: "canvas" | "shape" | null;
65
69
  openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
66
70
  openSidebar: "library" | "customSidebar" | null;
67
- openDialog: "imageExport" | "help" | null;
71
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
68
72
  isSidebarDocked: boolean;
69
73
  lastPointerDownWith: import("../element/types").PointerType;
70
74
  selectedElementIds: {
@@ -139,6 +143,11 @@ export declare const actionFinalize: {
139
143
  };
140
144
  selectedLinearElement: LinearElementEditor | null;
141
145
  pendingImageElementId: null;
146
+ contextMenu: {
147
+ items: import("../components/ContextMenu").ContextMenuItems;
148
+ top: number;
149
+ left: number;
150
+ } | null;
142
151
  showWelcomeScreen: boolean;
143
152
  isLoading: boolean;
144
153
  errorMessage: string | null;
@@ -162,10 +171,9 @@ export declare const actionFinalize: {
162
171
  currentItemFontFamily: number;
163
172
  currentItemFontSize: number;
164
173
  currentItemTextAlign: string;
165
- currentItemStrokeSharpness: import("../element/types").StrokeSharpness;
166
174
  currentItemStartArrowhead: import("../element/types").Arrowhead | null;
167
175
  currentItemEndArrowhead: import("../element/types").Arrowhead | null;
168
- currentItemLinearStrokeSharpness: import("../element/types").StrokeSharpness;
176
+ currentItemRoundness: import("../element/types").StrokeRoundness;
169
177
  viewBackgroundColor: string;
170
178
  scrollX: number;
171
179
  scrollY: number;
@@ -179,7 +187,7 @@ export declare const actionFinalize: {
179
187
  openMenu: "canvas" | "shape" | null;
180
188
  openPopup: "canvasColorPicker" | "backgroundColorPicker" | "strokeColorPicker" | null;
181
189
  openSidebar: "library" | "customSidebar" | null;
182
- openDialog: "imageExport" | "help" | null;
190
+ openDialog: "imageExport" | "help" | "jsonExport" | null;
183
191
  isSidebarDocked: boolean;
184
192
  lastPointerDownWith: import("../element/types").PointerType;
185
193
  previousSelectedElementIds: {
@@ -226,9 +234,7 @@ export declare const actionFinalize: {
226
234
  commitToHistory: boolean;
227
235
  };
228
236
  keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: AppState) => boolean;
229
- PanelComponent: ({ appState, updateData, data }: import("./types").PanelComponentProps & {
230
- isInHamburgerMenu: boolean;
231
- }) => JSX.Element;
237
+ PanelComponent: ({ appState, updateData, data }: import("./types").PanelComponentProps) => JSX.Element;
232
238
  } & {
233
239
  keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: AppState) => boolean) | undefined;
234
240
  };