@excalidraw/excalidraw 0.18.0-c4c0649 → 0.18.0-d2463f87d

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 (121) hide show
  1. package/dist/dev/chunk-CBGOW5JB.js +5669 -0
  2. package/dist/dev/chunk-CBGOW5JB.js.map +7 -0
  3. package/dist/dev/chunk-CP5DND7P.js +7 -0
  4. package/dist/dev/chunk-CP5DND7P.js.map +7 -0
  5. package/dist/dev/{chunk-JCUIYZXF.js → chunk-QF5FRM6O.js} +6 -2
  6. package/dist/dev/chunk-QF5FRM6O.js.map +7 -0
  7. package/dist/dev/data/{image-SLEZBMLG.js → image-SURZSZNX.js} +3 -3
  8. package/dist/dev/index.css +47 -20
  9. package/dist/dev/index.css.map +3 -3
  10. package/dist/dev/index.js +5873 -3369
  11. package/dist/dev/index.js.map +4 -4
  12. package/dist/dev/locales/{en-ZDTPSZNL.js → en-SMAPCEOQ.js} +2 -2
  13. package/dist/dev/subset-shared.chunk.js +1 -1
  14. package/dist/dev/subset-worker.chunk.js +1 -1
  15. package/dist/prod/chunk-A66AFZZU.js +7 -0
  16. package/dist/prod/{chunk-GCFVWREF.js → chunk-I4UNSFV6.js} +4 -4
  17. package/dist/prod/chunk-IRHK23LL.js +4 -0
  18. package/dist/prod/data/image-HXEZYJPQ.js +1 -0
  19. package/dist/prod/index.css +1 -1
  20. package/dist/prod/index.js +25 -18
  21. package/dist/prod/locales/{en-MHZ26NAR.js → en-TYY6KWIJ.js} +1 -1
  22. package/dist/prod/subset-shared.chunk.js +1 -1
  23. package/dist/prod/subset-worker.chunk.js +1 -1
  24. package/dist/types/common/src/constants.d.ts +18 -3
  25. package/dist/types/common/src/utils.d.ts +3 -5
  26. package/dist/types/element/src/Scene.d.ts +1 -1
  27. package/dist/types/element/src/binding.d.ts +10 -7
  28. package/dist/types/element/src/bounds.d.ts +11 -3
  29. package/dist/types/element/src/collision.d.ts +18 -12
  30. package/dist/types/element/src/cropElement.d.ts +1 -1
  31. package/dist/types/element/src/delta.d.ts +26 -6
  32. package/dist/types/element/src/distance.d.ts +2 -2
  33. package/dist/types/element/src/fractionalIndex.d.ts +8 -2
  34. package/dist/types/element/src/frame.d.ts +2 -2
  35. package/dist/types/element/src/index.d.ts +1 -3
  36. package/dist/types/element/src/linearElementEditor.d.ts +12 -22
  37. package/dist/types/element/src/mutateElement.d.ts +1 -1
  38. package/dist/types/element/src/newElement.d.ts +2 -1
  39. package/dist/types/element/src/resizeElements.d.ts +1 -0
  40. package/dist/types/element/src/selection.d.ts +1 -1
  41. package/dist/types/element/src/shape.d.ts +42 -0
  42. package/dist/types/element/src/sizeHelpers.d.ts +2 -1
  43. package/dist/types/element/src/store.d.ts +12 -8
  44. package/dist/types/element/src/transformHandles.d.ts +4 -4
  45. package/dist/types/element/src/typeChecks.d.ts +15 -1
  46. package/dist/types/element/src/types.d.ts +8 -3
  47. package/dist/types/element/src/utils.d.ts +16 -6
  48. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +21 -12
  49. package/dist/types/excalidraw/actions/actionAlign.d.ts +8 -8
  50. package/dist/types/excalidraw/actions/actionBoundText.d.ts +14 -8
  51. package/dist/types/excalidraw/actions/actionCanvas.d.ts +181 -142
  52. package/dist/types/excalidraw/actions/actionClipboard.d.ts +47 -28
  53. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +7 -4
  54. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +24 -14
  55. package/dist/types/excalidraw/actions/actionDistribute.d.ts +4 -4
  56. package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +2 -2
  57. package/dist/types/excalidraw/actions/actionElementLink.d.ts +6 -3
  58. package/dist/types/excalidraw/actions/actionElementLock.d.ts +29 -24
  59. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +7 -4
  60. package/dist/types/excalidraw/actions/actionExport.d.ts +148 -121
  61. package/dist/types/excalidraw/actions/actionFinalize.d.ts +63 -17
  62. package/dist/types/excalidraw/actions/actionFlip.d.ts +4 -4
  63. package/dist/types/excalidraw/actions/actionFrame.d.ts +78 -66
  64. package/dist/types/excalidraw/actions/actionGroup.d.ts +20 -14
  65. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +500 -4
  66. package/dist/types/excalidraw/actions/actionLink.d.ts +8 -5
  67. package/dist/types/excalidraw/actions/actionMenu.d.ts +22 -13
  68. package/dist/types/excalidraw/actions/actionNavigate.d.ts +14 -8
  69. package/dist/types/excalidraw/actions/actionProperties.d.ts +119 -66
  70. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +10 -7
  71. package/dist/types/excalidraw/actions/actionStyles.d.ts +11 -8
  72. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +9 -6
  73. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +9 -6
  74. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +8 -5
  75. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +9 -6
  76. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +9 -6
  77. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +9 -6
  78. package/dist/types/excalidraw/actions/actionZindex.d.ts +8 -8
  79. package/dist/types/excalidraw/actions/types.d.ts +2 -1
  80. package/dist/types/excalidraw/appState.d.ts +29 -20
  81. package/dist/types/excalidraw/components/App.d.ts +13 -16
  82. package/dist/types/excalidraw/components/ButtonIcon.d.ts +1 -0
  83. package/dist/types/excalidraw/components/{ButtonIconSelect.d.ts → RadioSelection.d.ts} +1 -1
  84. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +11 -1
  85. package/dist/types/excalidraw/components/UnlockPopup.d.ts +8 -0
  86. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +1 -0
  87. package/dist/types/excalidraw/components/icons.d.ts +2 -0
  88. package/dist/types/excalidraw/components/shapes.d.ts +1 -1
  89. package/dist/types/excalidraw/data/blob.d.ts +1 -1
  90. package/dist/types/excalidraw/eraser/index.d.ts +0 -2
  91. package/dist/types/excalidraw/history.d.ts +21 -5
  92. package/dist/types/excalidraw/lasso/index.d.ts +1 -0
  93. package/dist/types/excalidraw/lasso/utils.d.ts +2 -1
  94. package/dist/types/excalidraw/renderer/helpers.d.ts +4 -4
  95. package/dist/types/excalidraw/scene/Renderer.d.ts +0 -1
  96. package/dist/types/excalidraw/types.d.ts +10 -4
  97. package/dist/types/math/src/angle.d.ts +2 -0
  98. package/dist/types/math/src/constants.d.ts +3 -0
  99. package/dist/types/math/src/curve.d.ts +32 -0
  100. package/dist/types/math/src/index.d.ts +1 -0
  101. package/dist/types/math/src/point.d.ts +1 -1
  102. package/dist/types/math/src/rectangle.d.ts +2 -0
  103. package/dist/types/math/src/vector.d.ts +4 -2
  104. package/history.ts +108 -45
  105. package/package.json +12 -9
  106. package/dist/dev/chunk-HNRFOURL.js +0 -23482
  107. package/dist/dev/chunk-HNRFOURL.js.map +0 -7
  108. package/dist/dev/chunk-JCUIYZXF.js.map +0 -7
  109. package/dist/dev/chunk-VKWYDXFZ.js +0 -7
  110. package/dist/dev/chunk-VKWYDXFZ.js.map +0 -7
  111. package/dist/prod/chunk-G6SRO7HP.js +0 -7
  112. package/dist/prod/chunk-M3D5LUUK.js +0 -33
  113. package/dist/prod/data/image-PMKVN4IF.js +0 -1
  114. package/dist/types/element/src/Shape.d.ts +0 -17
  115. package/dist/types/element/src/ShapeCache.d.ts +0 -25
  116. package/dist/types/element/src/shapes.d.ts +0 -23
  117. package/dist/types/excalidraw/components/ButtonSelect.d.ts +0 -9
  118. package/dist/types/excalidraw/visualdebug.d.ts +0 -41
  119. package/dist/types/utils/src/collision.d.ts +0 -8
  120. /package/dist/dev/data/{image-SLEZBMLG.js.map → image-SURZSZNX.js.map} +0 -0
  121. /package/dist/dev/locales/{en-ZDTPSZNL.js.map → en-SMAPCEOQ.js.map} +0 -0
@@ -24,7 +24,7 @@ export declare const actionSetEmbeddableAsActiveTool: {
24
24
  errorMessage: import("react").ReactNode;
25
25
  activeEmbeddable: {
26
26
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
27
- state: "hover" | "active";
27
+ state: "active" | "hover";
28
28
  } | null;
29
29
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
30
30
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -86,7 +86,7 @@ export declare const actionSetEmbeddableAsActiveTool: {
86
86
  name: "imageExport" | "help" | "jsonExport";
87
87
  } | {
88
88
  name: "ttd";
89
- tab: "text-to-diagram" | "mermaid";
89
+ tab: "mermaid" | "text-to-diagram";
90
90
  } | {
91
91
  name: "commandPalette";
92
92
  } | {
@@ -158,8 +158,7 @@ export declare const actionSetEmbeddableAsActiveTool: {
158
158
  shown: true;
159
159
  data: import("../charts").Spreadsheet;
160
160
  };
161
- pendingImageElementId: string | null;
162
- showHyperlinkPopup: false | "info" | "editor";
161
+ showHyperlinkPopup: false | "editor" | "info";
163
162
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
164
163
  snapLines: readonly import("../snapping").SnapLine[];
165
164
  originSnapOffset: {
@@ -175,6 +174,10 @@ export declare const actionSetEmbeddableAsActiveTool: {
175
174
  focusedId: string | null;
176
175
  matches: readonly import("../types").SearchMatch[];
177
176
  }> | null;
177
+ activeLockedId: string | null;
178
+ lockedMultiSelections: {
179
+ [groupId: string]: true;
180
+ };
178
181
  };
179
182
  captureUpdate: "EVENTUALLY";
180
183
  };
@@ -18,7 +18,7 @@ export declare const actionChangeProjectName: {
18
18
  errorMessage: import("react").ReactNode;
19
19
  activeEmbeddable: {
20
20
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
21
- state: "hover" | "active";
21
+ state: "active" | "hover";
22
22
  } | null;
23
23
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
24
24
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -84,7 +84,7 @@ export declare const actionChangeProjectName: {
84
84
  name: "imageExport" | "help" | "jsonExport";
85
85
  } | {
86
86
  name: "ttd";
87
- tab: "text-to-diagram" | "mermaid";
87
+ tab: "mermaid" | "text-to-diagram";
88
88
  } | {
89
89
  name: "commandPalette";
90
90
  } | {
@@ -156,8 +156,7 @@ export declare const actionChangeProjectName: {
156
156
  shown: true;
157
157
  data: import("../charts").Spreadsheet;
158
158
  };
159
- pendingImageElementId: string | null;
160
- showHyperlinkPopup: false | "info" | "editor";
159
+ showHyperlinkPopup: false | "editor" | "info";
161
160
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
162
161
  snapLines: readonly import("../snapping").SnapLine[];
163
162
  originSnapOffset: {
@@ -173,6 +172,10 @@ export declare const actionChangeProjectName: {
173
172
  focusedId: string | null;
174
173
  matches: readonly import("../types").SearchMatch[];
175
174
  }> | null;
175
+ activeLockedId: string | null;
176
+ lockedMultiSelections: {
177
+ [groupId: string]: true;
178
+ };
176
179
  };
177
180
  captureUpdate: "EVENTUALLY";
178
181
  };
@@ -200,7 +203,7 @@ export declare const actionChangeExportScale: {
200
203
  errorMessage: import("react").ReactNode;
201
204
  activeEmbeddable: {
202
205
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
203
- state: "hover" | "active";
206
+ state: "active" | "hover";
204
207
  } | null;
205
208
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
206
209
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -266,7 +269,7 @@ export declare const actionChangeExportScale: {
266
269
  name: "imageExport" | "help" | "jsonExport";
267
270
  } | {
268
271
  name: "ttd";
269
- tab: "text-to-diagram" | "mermaid";
272
+ tab: "mermaid" | "text-to-diagram";
270
273
  } | {
271
274
  name: "commandPalette";
272
275
  } | {
@@ -338,8 +341,7 @@ export declare const actionChangeExportScale: {
338
341
  shown: true;
339
342
  data: import("../charts").Spreadsheet;
340
343
  };
341
- pendingImageElementId: string | null;
342
- showHyperlinkPopup: false | "info" | "editor";
344
+ showHyperlinkPopup: false | "editor" | "info";
343
345
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
344
346
  snapLines: readonly import("../snapping").SnapLine[];
345
347
  originSnapOffset: {
@@ -355,6 +357,10 @@ export declare const actionChangeExportScale: {
355
357
  focusedId: string | null;
356
358
  matches: readonly import("../types").SearchMatch[];
357
359
  }> | null;
360
+ activeLockedId: string | null;
361
+ lockedMultiSelections: {
362
+ [groupId: string]: true;
363
+ };
358
364
  };
359
365
  captureUpdate: "EVENTUALLY";
360
366
  };
@@ -382,7 +388,7 @@ export declare const actionChangeExportBackground: {
382
388
  errorMessage: import("react").ReactNode;
383
389
  activeEmbeddable: {
384
390
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
385
- state: "hover" | "active";
391
+ state: "active" | "hover";
386
392
  } | null;
387
393
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
388
394
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -448,7 +454,7 @@ export declare const actionChangeExportBackground: {
448
454
  name: "imageExport" | "help" | "jsonExport";
449
455
  } | {
450
456
  name: "ttd";
451
- tab: "text-to-diagram" | "mermaid";
457
+ tab: "mermaid" | "text-to-diagram";
452
458
  } | {
453
459
  name: "commandPalette";
454
460
  } | {
@@ -520,8 +526,7 @@ export declare const actionChangeExportBackground: {
520
526
  shown: true;
521
527
  data: import("../charts").Spreadsheet;
522
528
  };
523
- pendingImageElementId: string | null;
524
- showHyperlinkPopup: false | "info" | "editor";
529
+ showHyperlinkPopup: false | "editor" | "info";
525
530
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
526
531
  snapLines: readonly import("../snapping").SnapLine[];
527
532
  originSnapOffset: {
@@ -537,6 +542,10 @@ export declare const actionChangeExportBackground: {
537
542
  focusedId: string | null;
538
543
  matches: readonly import("../types").SearchMatch[];
539
544
  }> | null;
545
+ activeLockedId: string | null;
546
+ lockedMultiSelections: {
547
+ [groupId: string]: true;
548
+ };
540
549
  };
541
550
  captureUpdate: "EVENTUALLY";
542
551
  };
@@ -564,7 +573,7 @@ export declare const actionChangeExportEmbedScene: {
564
573
  errorMessage: import("react").ReactNode;
565
574
  activeEmbeddable: {
566
575
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
567
- state: "hover" | "active";
576
+ state: "active" | "hover";
568
577
  } | null;
569
578
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
570
579
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -630,7 +639,7 @@ export declare const actionChangeExportEmbedScene: {
630
639
  name: "imageExport" | "help" | "jsonExport";
631
640
  } | {
632
641
  name: "ttd";
633
- tab: "text-to-diagram" | "mermaid";
642
+ tab: "mermaid" | "text-to-diagram";
634
643
  } | {
635
644
  name: "commandPalette";
636
645
  } | {
@@ -702,8 +711,7 @@ export declare const actionChangeExportEmbedScene: {
702
711
  shown: true;
703
712
  data: import("../charts").Spreadsheet;
704
713
  };
705
- pendingImageElementId: string | null;
706
- showHyperlinkPopup: false | "info" | "editor";
714
+ showHyperlinkPopup: false | "editor" | "info";
707
715
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
708
716
  snapLines: readonly import("../snapping").SnapLine[];
709
717
  originSnapOffset: {
@@ -719,6 +727,10 @@ export declare const actionChangeExportEmbedScene: {
719
727
  focusedId: string | null;
720
728
  matches: readonly import("../types").SearchMatch[];
721
729
  }> | null;
730
+ activeLockedId: string | null;
731
+ lockedMultiSelections: {
732
+ [groupId: string]: true;
733
+ };
722
734
  };
723
735
  captureUpdate: "EVENTUALLY";
724
736
  };
@@ -751,7 +763,7 @@ export declare const actionSaveToActiveFile: {
751
763
  errorMessage: import("react").ReactNode;
752
764
  activeEmbeddable: {
753
765
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
754
- state: "hover" | "active";
766
+ state: "active" | "hover";
755
767
  } | null;
756
768
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
757
769
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -818,7 +830,7 @@ export declare const actionSaveToActiveFile: {
818
830
  name: "imageExport" | "help" | "jsonExport";
819
831
  } | {
820
832
  name: "ttd";
821
- tab: "text-to-diagram" | "mermaid";
833
+ tab: "mermaid" | "text-to-diagram";
822
834
  } | {
823
835
  name: "commandPalette";
824
836
  } | {
@@ -884,8 +896,7 @@ export declare const actionSaveToActiveFile: {
884
896
  shown: true;
885
897
  data: import("../charts").Spreadsheet;
886
898
  };
887
- pendingImageElementId: string | null;
888
- showHyperlinkPopup: false | "info" | "editor";
899
+ showHyperlinkPopup: false | "editor" | "info";
889
900
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
890
901
  snapLines: readonly import("../snapping").SnapLine[];
891
902
  originSnapOffset: {
@@ -901,14 +912,18 @@ export declare const actionSaveToActiveFile: {
901
912
  focusedId: string | null;
902
913
  matches: readonly import("../types").SearchMatch[];
903
914
  }> | null;
915
+ activeLockedId: string | null;
916
+ lockedMultiSelections: {
917
+ [groupId: string]: true;
918
+ };
904
919
  };
905
920
  } | {
906
921
  captureUpdate: "EVENTUALLY";
907
922
  appState?: undefined;
908
923
  }>;
909
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
924
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
910
925
  } & {
911
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
926
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
912
927
  };
913
928
  export declare const actionSaveFileToDisk: {
914
929
  name: "saveFileToDisk";
@@ -936,7 +951,7 @@ export declare const actionSaveFileToDisk: {
936
951
  errorMessage: import("react").ReactNode;
937
952
  activeEmbeddable: {
938
953
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
939
- state: "hover" | "active";
954
+ state: "active" | "hover";
940
955
  } | null;
941
956
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
942
957
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -1058,8 +1073,7 @@ export declare const actionSaveFileToDisk: {
1058
1073
  shown: true;
1059
1074
  data: import("../charts").Spreadsheet;
1060
1075
  };
1061
- pendingImageElementId: string | null;
1062
- showHyperlinkPopup: false | "info" | "editor";
1076
+ showHyperlinkPopup: false | "editor" | "info";
1063
1077
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1064
1078
  snapLines: readonly import("../snapping").SnapLine[];
1065
1079
  originSnapOffset: {
@@ -1075,15 +1089,19 @@ export declare const actionSaveFileToDisk: {
1075
1089
  focusedId: string | null;
1076
1090
  matches: readonly import("../types").SearchMatch[];
1077
1091
  }> | null;
1092
+ activeLockedId: string | null;
1093
+ lockedMultiSelections: {
1094
+ [groupId: string]: true;
1095
+ };
1078
1096
  };
1079
1097
  } | {
1080
1098
  captureUpdate: "EVENTUALLY";
1081
1099
  appState?: undefined;
1082
1100
  }>;
1083
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
1101
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1084
1102
  PanelComponent: ({ updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
1085
1103
  } & {
1086
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
1104
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1087
1105
  };
1088
1106
  export declare const actionLoadScene: {
1089
1107
  name: "loadScene";
@@ -1095,44 +1113,94 @@ export declare const actionLoadScene: {
1095
1113
  perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<import("../types").AppState>, _: any, app: import("../types").AppClassProperties) => Promise<false | {
1096
1114
  elements: import("@excalidraw/element/types").OrderedExcalidrawElement[];
1097
1115
  appState: {
1116
+ viewBackgroundColor: string;
1117
+ frameRendering: {
1118
+ enabled: boolean;
1119
+ name: boolean;
1120
+ outline: boolean;
1121
+ clip: boolean;
1122
+ };
1123
+ name: string | null;
1124
+ zoom: Readonly<{
1125
+ value: import("../types").NormalizedZoomValue;
1126
+ }>;
1127
+ scrollX: number;
1128
+ scrollY: number;
1129
+ viewModeEnabled: boolean;
1130
+ openDialog: {
1131
+ name: "imageExport" | "help" | "jsonExport";
1132
+ } | {
1133
+ name: "ttd";
1134
+ tab: "mermaid" | "text-to-diagram";
1135
+ } | {
1136
+ name: "commandPalette";
1137
+ } | {
1138
+ name: "elementLinkSelector";
1139
+ sourceElementId: string;
1140
+ } | null;
1141
+ editingGroupId: string | null;
1142
+ selectedElementIds: Readonly<{
1143
+ [id: string]: true;
1144
+ }>;
1145
+ frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1146
+ theme: Theme;
1147
+ activeEmbeddable: {
1148
+ element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
1149
+ state: "active" | "hover";
1150
+ } | null;
1151
+ editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1152
+ selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1153
+ selectedGroupIds: {
1154
+ [groupId: string]: boolean;
1155
+ };
1156
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1157
+ multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1158
+ isBindingEnabled: boolean;
1159
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1160
+ isRotating: boolean;
1161
+ elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
1162
+ collaborators: Map<import("../types").SocketId, Readonly<{
1163
+ pointer?: import("../types").CollaboratorPointer | undefined;
1164
+ button?: "up" | "down" | undefined;
1165
+ selectedElementIds?: Readonly<{
1166
+ [id: string]: true;
1167
+ }> | undefined;
1168
+ username?: string | null | undefined;
1169
+ userState?: import("@excalidraw/common").UserIdleState | undefined;
1170
+ color?: {
1171
+ background: string;
1172
+ stroke: string;
1173
+ } | undefined;
1174
+ avatarUrl?: string | undefined;
1175
+ id?: string | undefined;
1176
+ socketId?: import("../types").SocketId | undefined;
1177
+ isCurrentUser?: boolean | undefined;
1178
+ isInCall?: boolean | undefined;
1179
+ isSpeaking?: boolean | undefined;
1180
+ isMuted?: boolean | undefined;
1181
+ }>>;
1182
+ snapLines: readonly import("../snapping").SnapLine[];
1183
+ zenModeEnabled: boolean;
1184
+ editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1185
+ isCropping: boolean;
1186
+ croppingElementId: string | null;
1187
+ searchMatches: Readonly<{
1188
+ focusedId: string | null;
1189
+ matches: readonly import("../types").SearchMatch[];
1190
+ }> | null;
1191
+ activeLockedId: string | null;
1098
1192
  contextMenu: {
1099
1193
  items: import("../components/ContextMenu").ContextMenuItems;
1100
1194
  top: number;
1101
1195
  left: number;
1102
1196
  } | null;
1103
- stats: {
1104
- open: boolean;
1105
- panels: number;
1106
- };
1107
- exportWithDarkMode: boolean;
1108
- suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1109
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1110
- cursorButton: "up" | "down";
1111
- scrollX: number;
1112
- scrollY: number;
1113
1197
  showWelcomeScreen: boolean;
1114
1198
  isLoading: boolean;
1115
1199
  errorMessage: import("react").ReactNode;
1116
- activeEmbeddable: {
1117
- element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
1118
- state: "hover" | "active";
1119
- } | null;
1120
1200
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1121
1201
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1122
- multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
1123
- selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1124
- isBindingEnabled: boolean;
1125
- frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1126
- frameRendering: {
1127
- enabled: boolean;
1128
- name: boolean;
1129
- outline: boolean;
1130
- clip: boolean;
1131
- };
1202
+ startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
1132
1203
  editingFrame: string | null;
1133
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
1134
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1135
- editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1136
1204
  activeTool: {
1137
1205
  lastActiveTool: import("../types").ActiveTool | null;
1138
1206
  locked: boolean;
@@ -1142,6 +1210,7 @@ export declare const actionLoadScene: {
1142
1210
  penDetected: boolean;
1143
1211
  exportBackground: boolean;
1144
1212
  exportEmbedScene: boolean;
1213
+ exportWithDarkMode: boolean;
1145
1214
  exportScale: number;
1146
1215
  currentItemStrokeColor: string;
1147
1216
  currentItemBackgroundColor: string;
@@ -1158,36 +1227,17 @@ export declare const actionLoadScene: {
1158
1227
  currentHoveredFontFamily: number | null;
1159
1228
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1160
1229
  currentItemArrowType: "round" | "sharp" | "elbow";
1161
- viewBackgroundColor: string;
1230
+ cursorButton: "up" | "down";
1162
1231
  scrolledOutside: boolean;
1163
- name: string | null;
1164
1232
  isResizing: boolean;
1165
- isRotating: boolean;
1166
- zoom: Readonly<{
1167
- value: import("../types").NormalizedZoomValue;
1168
- }>;
1169
1233
  openMenu: "canvas" | "shape" | null;
1170
1234
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1171
1235
  openSidebar: {
1172
1236
  name: string;
1173
1237
  tab?: string | undefined;
1174
1238
  } | null;
1175
- openDialog: {
1176
- name: "imageExport" | "help" | "jsonExport";
1177
- } | {
1178
- name: "ttd";
1179
- tab: "text-to-diagram" | "mermaid";
1180
- } | {
1181
- name: "commandPalette";
1182
- } | {
1183
- name: "elementLinkSelector";
1184
- sourceElementId: string;
1185
- } | null;
1186
1239
  defaultSidebarDockedPreference: boolean;
1187
1240
  lastPointerDownWith: import("@excalidraw/element/types").PointerType;
1188
- selectedElementIds: Readonly<{
1189
- [id: string]: true;
1190
- }>;
1191
1241
  hoveredElementIds: Readonly<{
1192
1242
  [id: string]: true;
1193
1243
  }>;
@@ -1201,37 +1251,14 @@ export declare const actionLoadScene: {
1201
1251
  closable?: boolean | undefined;
1202
1252
  duration?: number | undefined;
1203
1253
  } | null;
1204
- zenModeEnabled: boolean;
1205
- theme: Theme;
1206
1254
  gridSize: number;
1207
1255
  gridStep: number;
1208
1256
  gridModeEnabled: boolean;
1209
- viewModeEnabled: boolean;
1210
- selectedGroupIds: {
1211
- [groupId: string]: boolean;
1212
- };
1213
- editingGroupId: string | null;
1214
1257
  fileHandle: import("browser-fs-access").FileSystemHandle | null;
1215
- collaborators: Map<import("../types").SocketId, Readonly<{
1216
- pointer?: import("../types").CollaboratorPointer | undefined;
1217
- button?: "up" | "down" | undefined;
1218
- selectedElementIds?: Readonly<{
1219
- [id: string]: true;
1220
- }> | undefined;
1221
- username?: string | null | undefined;
1222
- userState?: import("@excalidraw/common").UserIdleState | undefined;
1223
- color?: {
1224
- background: string;
1225
- stroke: string;
1226
- } | undefined;
1227
- avatarUrl?: string | undefined;
1228
- id?: string | undefined;
1229
- socketId?: import("../types").SocketId | undefined;
1230
- isCurrentUser?: boolean | undefined;
1231
- isInCall?: boolean | undefined;
1232
- isSpeaking?: boolean | undefined;
1233
- isMuted?: boolean | undefined;
1234
- }>>;
1258
+ stats: {
1259
+ open: boolean;
1260
+ panels: number;
1261
+ };
1235
1262
  currentChartType: import("@excalidraw/element/types").ChartType;
1236
1263
  pasteDialog: {
1237
1264
  shown: false;
@@ -1240,10 +1267,7 @@ export declare const actionLoadScene: {
1240
1267
  shown: true;
1241
1268
  data: import("../charts").Spreadsheet;
1242
1269
  };
1243
- pendingImageElementId: string | null;
1244
- showHyperlinkPopup: false | "info" | "editor";
1245
- selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1246
- snapLines: readonly import("../snapping").SnapLine[];
1270
+ showHyperlinkPopup: false | "editor" | "info";
1247
1271
  originSnapOffset: {
1248
1272
  x: number;
1249
1273
  y: number;
@@ -1251,12 +1275,9 @@ export declare const actionLoadScene: {
1251
1275
  objectsSnapModeEnabled: boolean;
1252
1276
  userToFollow: import("../types").UserToFollow | null;
1253
1277
  followedBy: Set<import("../types").SocketId>;
1254
- isCropping: boolean;
1255
- croppingElementId: string | null;
1256
- searchMatches: Readonly<{
1257
- focusedId: string | null;
1258
- matches: readonly import("../types").SearchMatch[];
1259
- }> | null;
1278
+ lockedMultiSelections: {
1279
+ [groupId: string]: true;
1280
+ };
1260
1281
  };
1261
1282
  files: import("../types").BinaryFiles;
1262
1283
  captureUpdate: "IMMEDIATELY";
@@ -1273,7 +1294,7 @@ export declare const actionLoadScene: {
1273
1294
  isLoading: boolean;
1274
1295
  activeEmbeddable: {
1275
1296
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
1276
- state: "hover" | "active";
1297
+ state: "active" | "hover";
1277
1298
  } | null;
1278
1299
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1279
1300
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -1340,7 +1361,7 @@ export declare const actionLoadScene: {
1340
1361
  name: "imageExport" | "help" | "jsonExport";
1341
1362
  } | {
1342
1363
  name: "ttd";
1343
- tab: "text-to-diagram" | "mermaid";
1364
+ tab: "mermaid" | "text-to-diagram";
1344
1365
  } | {
1345
1366
  name: "commandPalette";
1346
1367
  } | {
@@ -1412,8 +1433,7 @@ export declare const actionLoadScene: {
1412
1433
  shown: true;
1413
1434
  data: import("../charts").Spreadsheet;
1414
1435
  };
1415
- pendingImageElementId: string | null;
1416
- showHyperlinkPopup: false | "info" | "editor";
1436
+ showHyperlinkPopup: false | "editor" | "info";
1417
1437
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1418
1438
  snapLines: readonly import("../snapping").SnapLine[];
1419
1439
  originSnapOffset: {
@@ -1429,13 +1449,17 @@ export declare const actionLoadScene: {
1429
1449
  focusedId: string | null;
1430
1450
  matches: readonly import("../types").SearchMatch[];
1431
1451
  }> | null;
1452
+ activeLockedId: string | null;
1453
+ lockedMultiSelections: {
1454
+ [groupId: string]: true;
1455
+ };
1432
1456
  };
1433
1457
  files: import("../types").BinaryFiles;
1434
1458
  captureUpdate: "EVENTUALLY";
1435
1459
  }>;
1436
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
1460
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1437
1461
  } & {
1438
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
1462
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1439
1463
  };
1440
1464
  export declare const actionExportWithDarkMode: {
1441
1465
  name: "exportWithDarkMode";
@@ -1457,7 +1481,7 @@ export declare const actionExportWithDarkMode: {
1457
1481
  errorMessage: import("react").ReactNode;
1458
1482
  activeEmbeddable: {
1459
1483
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
1460
- state: "hover" | "active";
1484
+ state: "active" | "hover";
1461
1485
  } | null;
1462
1486
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
1463
1487
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -1523,7 +1547,7 @@ export declare const actionExportWithDarkMode: {
1523
1547
  name: "imageExport" | "help" | "jsonExport";
1524
1548
  } | {
1525
1549
  name: "ttd";
1526
- tab: "text-to-diagram" | "mermaid";
1550
+ tab: "mermaid" | "text-to-diagram";
1527
1551
  } | {
1528
1552
  name: "commandPalette";
1529
1553
  } | {
@@ -1595,8 +1619,7 @@ export declare const actionExportWithDarkMode: {
1595
1619
  shown: true;
1596
1620
  data: import("../charts").Spreadsheet;
1597
1621
  };
1598
- pendingImageElementId: string | null;
1599
- showHyperlinkPopup: false | "info" | "editor";
1622
+ showHyperlinkPopup: false | "editor" | "info";
1600
1623
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
1601
1624
  snapLines: readonly import("../snapping").SnapLine[];
1602
1625
  originSnapOffset: {
@@ -1612,6 +1635,10 @@ export declare const actionExportWithDarkMode: {
1612
1635
  focusedId: string | null;
1613
1636
  matches: readonly import("../types").SearchMatch[];
1614
1637
  }> | null;
1638
+ activeLockedId: string | null;
1639
+ lockedMultiSelections: {
1640
+ [groupId: string]: true;
1641
+ };
1615
1642
  };
1616
1643
  captureUpdate: "EVENTUALLY";
1617
1644
  };