@zsviczian/excalidraw 0.17.6-3 → 0.17.6-31

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 (148) hide show
  1. package/dist/excalidraw.development.js +13100 -1540
  2. package/dist/excalidraw.production.min.js +1 -1
  3. package/dist/excalidraw.production.min.js.LICENSE.txt +21 -1
  4. package/dist/styles.development.css +490 -376
  5. package/dist/styles.production.css +10 -8
  6. package/package.json +5 -4
  7. package/types/excalidraw/actions/actionAddToLibrary.d.ts +27 -3
  8. package/types/excalidraw/actions/actionAlign.d.ts +7 -6
  9. package/types/excalidraw/actions/actionBoundText.d.ts +18 -2
  10. package/types/excalidraw/actions/actionCanvas.d.ts +126 -14
  11. package/types/excalidraw/actions/actionClipboard.d.ts +61 -9
  12. package/types/excalidraw/actions/actionCropEditor.d.ts +222 -0
  13. package/types/excalidraw/actions/actionDeleteSelected.d.ts +34 -6
  14. package/types/excalidraw/actions/actionElementLink.d.ts +244 -0
  15. package/types/excalidraw/actions/actionElementLock.d.ts +18 -2
  16. package/types/excalidraw/actions/actionExport.d.ts +77 -8
  17. package/types/excalidraw/actions/actionFinalize.d.ts +18 -2
  18. package/types/excalidraw/actions/actionFrame.d.ts +533 -4
  19. package/types/excalidraw/actions/actionGroup.d.ts +18 -2
  20. package/types/excalidraw/actions/actionLinearEditor.d.ts +9 -1
  21. package/types/excalidraw/actions/actionLink.d.ts +10 -2
  22. package/types/excalidraw/actions/actionMenu.d.ts +23 -2
  23. package/types/excalidraw/actions/actionNavigate.d.ts +18 -2
  24. package/types/excalidraw/actions/actionProperties.d.ts +135 -15
  25. package/types/excalidraw/actions/actionSelectAll.d.ts +9 -1
  26. package/types/excalidraw/actions/actionStyles.d.ts +9 -1
  27. package/types/excalidraw/actions/actionToggleGridMode.d.ts +9 -1
  28. package/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +9 -1
  29. package/types/excalidraw/actions/actionToggleSearchMenu.d.ts +14 -1
  30. package/types/excalidraw/actions/actionToggleStats.d.ts +9 -1
  31. package/types/excalidraw/actions/actionToggleViewMode.d.ts +9 -1
  32. package/types/excalidraw/actions/actionToggleZenMode.d.ts +9 -1
  33. package/types/excalidraw/actions/index.d.ts +1 -0
  34. package/types/excalidraw/actions/shortcuts.d.ts +1 -1
  35. package/types/excalidraw/actions/types.d.ts +1 -1
  36. package/types/excalidraw/align.d.ts +2 -1
  37. package/types/excalidraw/change.d.ts +2 -2
  38. package/types/excalidraw/clipboard.d.ts +27 -5
  39. package/types/excalidraw/components/Actions.d.ts +2 -1
  40. package/types/excalidraw/components/ActiveConfirmDialog.d.ts +1 -1
  41. package/types/excalidraw/components/App.d.ts +21 -5
  42. package/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -1
  43. package/types/excalidraw/components/ElementLinkDialog.d.ts +11 -0
  44. package/types/excalidraw/components/EyeDropper.d.ts +1 -1
  45. package/types/excalidraw/components/IconPicker.d.ts +2 -2
  46. package/types/excalidraw/components/LayerUI.d.ts +2 -1
  47. package/types/excalidraw/components/LibraryMenu.d.ts +1 -1
  48. package/types/excalidraw/components/OverwriteConfirm/OverwriteConfirmState.d.ts +1 -1
  49. package/types/excalidraw/components/Range.d.ts +8 -0
  50. package/types/excalidraw/components/SearchMenu.d.ts +1 -1
  51. package/types/excalidraw/components/Sidebar/Sidebar.d.ts +1 -1
  52. package/types/excalidraw/components/Stats/Collapsible.d.ts +2 -1
  53. package/types/excalidraw/components/Stats/utils.d.ts +1 -1
  54. package/types/excalidraw/components/TTDDialog/MermaidToExcalidraw.d.ts +1 -7
  55. package/types/excalidraw/components/TTDDialog/MermaidToExcalidrawLib.d.ts +10 -0
  56. package/types/excalidraw/components/TTDDialog/common.d.ts +2 -2
  57. package/types/excalidraw/components/hyperlink/Hyperlink.d.ts +1 -1
  58. package/types/excalidraw/components/hyperlink/helpers.d.ts +1 -0
  59. package/types/excalidraw/components/icons.d.ts +11 -0
  60. package/types/excalidraw/constants.d.ts +5 -1
  61. package/types/excalidraw/context/tunnels.d.ts +2 -1
  62. package/types/excalidraw/data/blob.d.ts +4 -0
  63. package/types/excalidraw/data/encode.d.ts +6 -5
  64. package/types/excalidraw/data/filesystem.d.ts +2 -1
  65. package/types/excalidraw/data/image.d.ts +0 -6
  66. package/types/excalidraw/data/library.d.ts +9 -3
  67. package/types/excalidraw/data/url.d.ts +0 -1
  68. package/types/excalidraw/dist/excalidraw.production.min.d.ts +3 -1
  69. package/types/excalidraw/editor-jotai.d.ts +56 -0
  70. package/types/excalidraw/element/binding.d.ts +10 -7
  71. package/types/excalidraw/element/cropElement.d.ts +19 -0
  72. package/types/excalidraw/element/elbowArrow.d.ts +16 -0
  73. package/types/excalidraw/element/elementLink.d.ts +13 -0
  74. package/types/excalidraw/element/embeddable.d.ts +9 -1
  75. package/types/excalidraw/element/flowchart.d.ts +1 -1
  76. package/types/excalidraw/element/heading.d.ts +5 -1
  77. package/types/excalidraw/element/image.d.ts +1 -1
  78. package/types/excalidraw/element/linearElementEditor.d.ts +9 -10
  79. package/types/excalidraw/element/mutateElement.d.ts +3 -1
  80. package/types/excalidraw/element/newElement.d.ts +9 -7
  81. package/types/excalidraw/element/resizeElements.d.ts +27 -5
  82. package/types/excalidraw/element/textElement.d.ts +14 -4
  83. package/types/excalidraw/element/textWrapping.d.ts +13 -0
  84. package/types/excalidraw/element/transformHandles.d.ts +1 -1
  85. package/types/excalidraw/element/types.d.ts +33 -1
  86. package/types/excalidraw/errors.d.ts +7 -0
  87. package/types/excalidraw/fonts/{woff2/Cascadia → Cascadia}/index.d.ts +1 -1
  88. package/types/excalidraw/fonts/ComicShanns/index.d.ts +2 -0
  89. package/types/excalidraw/fonts/{woff2/Emoji → Emoji}/index.d.ts +1 -1
  90. package/types/excalidraw/fonts/ExcalidrawFontFace.d.ts +2 -8
  91. package/types/excalidraw/fonts/{woff2/Excalifont → Excalifont}/index.d.ts +1 -1
  92. package/types/excalidraw/fonts/Fonts.d.ts +100 -0
  93. package/types/excalidraw/fonts/{woff2/Helvetica → Helvetica}/index.d.ts +1 -1
  94. package/types/excalidraw/fonts/{woff2/Liberation → Liberation}/index.d.ts +1 -1
  95. package/types/excalidraw/fonts/{woff2/Lilita → Lilita}/index.d.ts +1 -1
  96. package/types/excalidraw/fonts/{woff2/Nunito → Nunito}/index.d.ts +1 -1
  97. package/types/excalidraw/fonts/{woff2/Virgil → Virgil}/index.d.ts +1 -1
  98. package/types/excalidraw/fonts/{woff2/Xiaolai → Xiaolai}/index.d.ts +1 -1
  99. package/types/excalidraw/fonts/index.d.ts +1 -87
  100. package/types/excalidraw/frame.d.ts +11 -5
  101. package/types/excalidraw/hooks/useLibraryItemSvg.d.ts +1 -1
  102. package/types/excalidraw/index.d.ts +4 -3
  103. package/types/excalidraw/keys.d.ts +107 -0
  104. package/types/excalidraw/obsidianUtils.d.ts +9 -4
  105. package/types/excalidraw/renderer/renderElement.d.ts +3 -2
  106. package/types/excalidraw/scene/Scene.d.ts +1 -0
  107. package/types/excalidraw/scene/comparisons.d.ts +1 -0
  108. package/types/excalidraw/scene/export.d.ts +8 -0
  109. package/types/excalidraw/scene/types.d.ts +7 -0
  110. package/types/excalidraw/types.d.ts +25 -1
  111. package/types/excalidraw/utils.d.ts +7 -1
  112. package/types/excalidraw/visualdebug.d.ts +8 -1
  113. package/types/math/line.d.ts +19 -0
  114. package/types/math/point.d.ts +10 -0
  115. package/types/math/utils.d.ts +1 -0
  116. package/types/math/vector.d.ts +4 -0
  117. package/types/utils/export.d.ts +6 -4
  118. package/types/excalidraw/components/MagicSettings.d.ts +0 -8
  119. package/types/excalidraw/components/Stats.d.ts +0 -11
  120. package/types/excalidraw/data/magic.d.ts +0 -23
  121. package/types/excalidraw/element/routing.d.ts +0 -12
  122. package/types/excalidraw/fonts/ExcalidrawFont.d.ts +0 -37
  123. package/types/excalidraw/fonts/wasm/hb-subset.bindings.d.ts +0 -45
  124. package/types/excalidraw/fonts/wasm/hb-subset.loader.d.ts +0 -5
  125. package/types/excalidraw/fonts/wasm/hb-subset.wasm.d.ts +0 -2
  126. package/types/excalidraw/fonts/wasm/woff2.bindings.d.ts +0 -31
  127. package/types/excalidraw/fonts/wasm/woff2.loader.d.ts +0 -6
  128. package/types/excalidraw/fonts/wasm/woff2.wasm.d.ts +0 -2
  129. package/types/excalidraw/fonts/woff2/Comic/index.d.ts +0 -2
  130. package/types/excalidraw/ga.d.ts +0 -63
  131. package/types/excalidraw/gadirections.d.ts +0 -8
  132. package/types/excalidraw/galines.d.ts +0 -22
  133. package/types/excalidraw/gapoints.d.ts +0 -7
  134. package/types/excalidraw/gatransforms.d.ts +0 -10
  135. package/types/excalidraw/jotai.d.ts +0 -34
  136. package/types/excalidraw/math.d.ts +0 -79
  137. package/types/excalidraw/scene/Fonts.d.ts +0 -19
  138. package/types/utils/geometry/geometry.d.ts +0 -89
  139. /package/types/excalidraw/fonts/{metadata.d.ts → FontMetadata.d.ts} +0 -0
  140. /package/types/excalidraw/{fonts/wasm/hb-subset-bindings.d.ts → subset/harfbuzz/harfbuzz-bindings.d.ts} +0 -0
  141. /package/types/excalidraw/{fonts/wasm/hb-subset-loader.d.ts → subset/harfbuzz/harfbuzz-loader.d.ts} +0 -0
  142. /package/types/excalidraw/{fonts/wasm/hb-subset-wasm.d.ts → subset/harfbuzz/harfbuzz-wasm.d.ts} +0 -0
  143. /package/types/excalidraw/{fonts/subset → subset}/subset-main.d.ts +0 -0
  144. /package/types/excalidraw/{fonts/subset → subset}/subset-shared.chunk.d.ts +0 -0
  145. /package/types/excalidraw/{fonts/subset → subset}/subset-worker.chunk.d.ts +0 -0
  146. /package/types/excalidraw/{fonts/wasm → subset/woff2}/woff2-bindings.d.ts +0 -0
  147. /package/types/excalidraw/{fonts/wasm → subset/woff2}/woff2-loader.d.ts +0 -0
  148. /package/types/excalidraw/{fonts/wasm → subset/woff2}/woff2-wasm.d.ts +0 -0
@@ -81,18 +81,24 @@ export declare const actionCopy: {
81
81
  tab?: string | undefined;
82
82
  } | null;
83
83
  openDialog: {
84
- name: "imageExport" | "help" | "jsonExport";
84
+ name: "help" | "imageExport" | "jsonExport";
85
85
  } | {
86
86
  name: "ttd";
87
87
  tab: "mermaid" | "text-to-diagram";
88
88
  } | {
89
89
  name: "commandPalette";
90
+ } | {
91
+ name: "elementLinkSelector";
92
+ sourceElementId: string;
90
93
  } | null;
91
94
  defaultSidebarDockedPreference: boolean;
92
95
  lastPointerDownWith: import("../element/types").PointerType;
93
96
  selectedElementIds: Readonly<{
94
97
  [id: string]: true;
95
98
  }>;
99
+ hoveredElementIds: Readonly<{
100
+ [id: string]: true;
101
+ }>;
96
102
  previousSelectedElementIds: {
97
103
  [id: string]: true;
98
104
  };
@@ -193,6 +199,8 @@ export declare const actionCopy: {
193
199
  objectsSnapModeEnabled: boolean;
194
200
  userToFollow: import("../types").UserToFollow | null;
195
201
  followedBy: Set<import("../types").SocketId>;
202
+ isCropping: boolean;
203
+ croppingElementId: string | null;
196
204
  searchMatches: readonly {
197
205
  id: string;
198
206
  focus: boolean;
@@ -294,18 +302,24 @@ export declare const actionPaste: {
294
302
  tab?: string | undefined;
295
303
  } | null;
296
304
  openDialog: {
297
- name: "imageExport" | "help" | "jsonExport";
305
+ name: "help" | "imageExport" | "jsonExport";
298
306
  } | {
299
307
  name: "ttd";
300
308
  tab: "mermaid" | "text-to-diagram";
301
309
  } | {
302
310
  name: "commandPalette";
311
+ } | {
312
+ name: "elementLinkSelector";
313
+ sourceElementId: string;
303
314
  } | null;
304
315
  defaultSidebarDockedPreference: boolean;
305
316
  lastPointerDownWith: import("../element/types").PointerType;
306
317
  selectedElementIds: Readonly<{
307
318
  [id: string]: true;
308
319
  }>;
320
+ hoveredElementIds: Readonly<{
321
+ [id: string]: true;
322
+ }>;
309
323
  previousSelectedElementIds: {
310
324
  [id: string]: true;
311
325
  };
@@ -406,6 +420,8 @@ export declare const actionPaste: {
406
420
  objectsSnapModeEnabled: boolean;
407
421
  userToFollow: import("../types").UserToFollow | null;
408
422
  followedBy: Set<import("../types").SocketId>;
423
+ isCropping: boolean;
424
+ croppingElementId: string | null;
409
425
  searchMatches: readonly {
410
426
  id: string;
411
427
  focus: boolean;
@@ -508,18 +524,24 @@ export declare const actionCut: {
508
524
  tab?: string | undefined;
509
525
  } | null;
510
526
  openDialog: {
511
- name: "imageExport" | "help" | "jsonExport";
527
+ name: "help" | "imageExport" | "jsonExport";
512
528
  } | {
513
529
  name: "ttd";
514
530
  tab: "mermaid" | "text-to-diagram";
515
531
  } | {
516
532
  name: "commandPalette";
533
+ } | {
534
+ name: "elementLinkSelector";
535
+ sourceElementId: string;
517
536
  } | null;
518
537
  defaultSidebarDockedPreference: boolean;
519
538
  lastPointerDownWith: import("../element/types").PointerType;
520
539
  selectedElementIds: Readonly<{
521
540
  [id: string]: true;
522
541
  }>;
542
+ hoveredElementIds: Readonly<{
543
+ [id: string]: true;
544
+ }>;
523
545
  previousSelectedElementIds: {
524
546
  [id: string]: true;
525
547
  };
@@ -620,6 +642,8 @@ export declare const actionCut: {
620
642
  objectsSnapModeEnabled: boolean;
621
643
  userToFollow: import("../types").UserToFollow | null;
622
644
  followedBy: Set<import("../types").SocketId>;
645
+ isCropping: boolean;
646
+ croppingElementId: string | null;
623
647
  searchMatches: readonly {
624
648
  id: string;
625
649
  focus: boolean;
@@ -738,18 +762,24 @@ export declare const actionCut: {
738
762
  tab?: string | undefined;
739
763
  } | null;
740
764
  openDialog: {
741
- name: "imageExport" | "help" | "jsonExport";
765
+ name: "help" | "imageExport" | "jsonExport";
742
766
  } | {
743
767
  name: "ttd";
744
768
  tab: "mermaid" | "text-to-diagram";
745
769
  } | {
746
770
  name: "commandPalette";
771
+ } | {
772
+ name: "elementLinkSelector";
773
+ sourceElementId: string;
747
774
  } | null;
748
775
  defaultSidebarDockedPreference: boolean;
749
776
  lastPointerDownWith: import("../element/types").PointerType;
750
777
  selectedElementIds: Readonly<{
751
778
  [id: string]: true;
752
779
  }>;
780
+ hoveredElementIds: Readonly<{
781
+ [id: string]: true;
782
+ }>;
753
783
  previousSelectedElementIds: {
754
784
  [id: string]: true;
755
785
  };
@@ -850,6 +880,8 @@ export declare const actionCut: {
850
880
  objectsSnapModeEnabled: boolean;
851
881
  userToFollow: import("../types").UserToFollow | null;
852
882
  followedBy: Set<import("../types").SocketId>;
883
+ isCropping: boolean;
884
+ croppingElementId: string | null;
853
885
  searchMatches: readonly {
854
886
  id: string;
855
887
  focus: boolean;
@@ -871,8 +903,13 @@ export declare const actionCut: {
871
903
  } & import("../types").ActiveTool;
872
904
  multiElement: null;
873
905
  activeEmbeddable: null;
874
- selectedElementIds: {};
875
- selectedGroupIds: {};
906
+ selectedElementIds: Readonly<{
907
+ [id: string]: true;
908
+ }>;
909
+ selectedGroupIds: {
910
+ [groupId: string]: boolean;
911
+ };
912
+ editingGroupId: string | null;
876
913
  contextMenu: {
877
914
  items: import("../components/ContextMenu").ContextMenuItems;
878
915
  top: number;
@@ -937,15 +974,21 @@ export declare const actionCut: {
937
974
  tab?: string | undefined;
938
975
  } | null;
939
976
  openDialog: {
940
- name: "imageExport" | "help" | "jsonExport";
977
+ name: "help" | "imageExport" | "jsonExport";
941
978
  } | {
942
979
  name: "ttd";
943
980
  tab: "mermaid" | "text-to-diagram";
944
981
  } | {
945
982
  name: "commandPalette";
983
+ } | {
984
+ name: "elementLinkSelector";
985
+ sourceElementId: string;
946
986
  } | null;
947
987
  defaultSidebarDockedPreference: boolean;
948
988
  lastPointerDownWith: import("../element/types").PointerType;
989
+ hoveredElementIds: Readonly<{
990
+ [id: string]: true;
991
+ }>;
949
992
  previousSelectedElementIds: {
950
993
  [id: string]: true;
951
994
  };
@@ -962,7 +1005,6 @@ export declare const actionCut: {
962
1005
  gridStep: number;
963
1006
  gridModeEnabled: boolean;
964
1007
  viewModeEnabled: boolean;
965
- editingGroupId: string | null;
966
1008
  width: number;
967
1009
  height: number;
968
1010
  offsetTop: number;
@@ -1043,6 +1085,8 @@ export declare const actionCut: {
1043
1085
  objectsSnapModeEnabled: boolean;
1044
1086
  userToFollow: import("../types").UserToFollow | null;
1045
1087
  followedBy: Set<import("../types").SocketId>;
1088
+ isCropping: boolean;
1089
+ croppingElementId: string | null;
1046
1090
  searchMatches: readonly {
1047
1091
  id: string;
1048
1092
  focus: boolean;
@@ -1175,18 +1219,24 @@ export declare const actionCopyAsPng: {
1175
1219
  tab?: string | undefined;
1176
1220
  } | null;
1177
1221
  openDialog: {
1178
- name: "imageExport" | "help" | "jsonExport";
1222
+ name: "help" | "imageExport" | "jsonExport";
1179
1223
  } | {
1180
1224
  name: "ttd";
1181
1225
  tab: "mermaid" | "text-to-diagram";
1182
1226
  } | {
1183
1227
  name: "commandPalette";
1228
+ } | {
1229
+ name: "elementLinkSelector";
1230
+ sourceElementId: string;
1184
1231
  } | null;
1185
1232
  defaultSidebarDockedPreference: boolean;
1186
1233
  lastPointerDownWith: import("../element/types").PointerType;
1187
1234
  selectedElementIds: Readonly<{
1188
1235
  [id: string]: true;
1189
1236
  }>;
1237
+ hoveredElementIds: Readonly<{
1238
+ [id: string]: true;
1239
+ }>;
1190
1240
  previousSelectedElementIds: {
1191
1241
  [id: string]: true;
1192
1242
  };
@@ -1287,6 +1337,8 @@ export declare const actionCopyAsPng: {
1287
1337
  objectsSnapModeEnabled: boolean;
1288
1338
  userToFollow: import("../types").UserToFollow | null;
1289
1339
  followedBy: Set<import("../types").SocketId>;
1340
+ isCropping: boolean;
1341
+ croppingElementId: string | null;
1290
1342
  searchMatches: readonly {
1291
1343
  id: string;
1292
1344
  focus: boolean;
@@ -0,0 +1,222 @@
1
+ export declare const actionToggleCropEditor: {
2
+ name: "cropEditor";
3
+ label: string;
4
+ icon: JSX.Element;
5
+ viewMode: true;
6
+ trackEvent: {
7
+ category: "menu";
8
+ };
9
+ keywords: string[];
10
+ perform(elements: readonly import("../element/types").OrderedExcalidrawElement[], appState: Readonly<import("../types").AppState>, _: any, app: import("../types").AppClassProperties): {
11
+ appState: {
12
+ isCropping: false;
13
+ croppingElementId: string;
14
+ contextMenu: {
15
+ items: import("../components/ContextMenu").ContextMenuItems;
16
+ top: number;
17
+ left: number;
18
+ } | null;
19
+ showWelcomeScreen: boolean;
20
+ isLoading: boolean;
21
+ errorMessage: import("react").ReactNode;
22
+ activeEmbeddable: {
23
+ element: import("../element/types").NonDeletedExcalidrawElement;
24
+ state: "active" | "hover";
25
+ } | null;
26
+ newElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawNonSelectionElement> | null;
27
+ resizingElement: import("../element/types").NonDeletedExcalidrawElement | null;
28
+ multiElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawLinearElement> | null;
29
+ selectionElement: import("../element/types").NonDeletedExcalidrawElement | null;
30
+ isBindingEnabled: boolean;
31
+ startBoundElement: import("../element/types").NonDeleted<import("../element/types").ExcalidrawBindableElement> | null;
32
+ suggestedBindings: import("../element/binding").SuggestedBinding[];
33
+ frameToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawFrameLikeElement> | null;
34
+ frameRendering: {
35
+ enabled: boolean;
36
+ name: boolean;
37
+ outline: boolean;
38
+ clip: boolean;
39
+ };
40
+ editingFrame: string | null;
41
+ elementsToHighlight: import("../element/types").NonDeleted<import("../element/types").ExcalidrawElement>[] | null;
42
+ editingTextElement: import("../element/types").NonDeletedExcalidrawElement | null;
43
+ editingLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
44
+ activeTool: {
45
+ lastActiveTool: import("../types").ActiveTool | null;
46
+ locked: boolean;
47
+ } & import("../types").ActiveTool;
48
+ penMode: boolean;
49
+ penDetected: boolean;
50
+ exportBackground: boolean;
51
+ exportEmbedScene: boolean;
52
+ exportWithDarkMode: boolean;
53
+ exportScale: number;
54
+ currentItemStrokeColor: string;
55
+ currentItemBackgroundColor: string;
56
+ currentItemFillStyle: import("../element/types").FillStyle;
57
+ currentItemStrokeWidth: number;
58
+ currentItemStrokeStyle: import("../element/types").StrokeStyle;
59
+ currentItemRoughness: number;
60
+ currentItemOpacity: number;
61
+ currentItemFontFamily: number;
62
+ currentItemFontSize: number;
63
+ currentItemTextAlign: string;
64
+ currentItemStartArrowhead: import("../element/types").Arrowhead | null;
65
+ currentItemEndArrowhead: import("../element/types").Arrowhead | null;
66
+ currentHoveredFontFamily: number | null;
67
+ currentItemRoundness: import("../element/types").StrokeRoundness;
68
+ currentItemArrowType: "round" | "sharp" | "elbow";
69
+ viewBackgroundColor: string;
70
+ scrollX: number;
71
+ scrollY: number;
72
+ cursorButton: "up" | "down";
73
+ scrolledOutside: boolean;
74
+ name: string | null;
75
+ isResizing: boolean;
76
+ isRotating: boolean;
77
+ zoom: Readonly<{
78
+ value: import("../types").NormalizedZoomValue;
79
+ }>;
80
+ openMenu: "canvas" | "shape" | null;
81
+ openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
82
+ openSidebar: {
83
+ name: string;
84
+ tab?: string | undefined;
85
+ } | null;
86
+ openDialog: {
87
+ name: "help" | "imageExport" | "jsonExport";
88
+ } | {
89
+ name: "ttd";
90
+ tab: "mermaid" | "text-to-diagram";
91
+ } | {
92
+ name: "commandPalette";
93
+ } | {
94
+ name: "elementLinkSelector";
95
+ sourceElementId: string;
96
+ } | null;
97
+ defaultSidebarDockedPreference: boolean;
98
+ lastPointerDownWith: import("../element/types").PointerType;
99
+ selectedElementIds: Readonly<{
100
+ [id: string]: true;
101
+ }>;
102
+ hoveredElementIds: Readonly<{
103
+ [id: string]: true;
104
+ }>;
105
+ previousSelectedElementIds: {
106
+ [id: string]: true;
107
+ };
108
+ selectedElementsAreBeingDragged: boolean;
109
+ shouldCacheIgnoreZoom: boolean;
110
+ toast: {
111
+ message: string;
112
+ closable?: boolean | undefined;
113
+ duration?: number | undefined;
114
+ } | null;
115
+ zenModeEnabled: boolean;
116
+ theme: import("../element/types").Theme;
117
+ gridSize: number;
118
+ gridStep: number;
119
+ gridModeEnabled: boolean;
120
+ viewModeEnabled: boolean;
121
+ selectedGroupIds: {
122
+ [groupId: string]: boolean;
123
+ };
124
+ editingGroupId: string | null;
125
+ width: number;
126
+ height: number;
127
+ offsetTop: number;
128
+ offsetLeft: number;
129
+ fileHandle: import("browser-fs-access").FileSystemHandle | null;
130
+ collaborators: Map<import("../types").SocketId, Readonly<{
131
+ pointer?: import("../types").CollaboratorPointer | undefined;
132
+ button?: "up" | "down" | undefined;
133
+ selectedElementIds?: Readonly<{
134
+ [id: string]: true;
135
+ }> | undefined;
136
+ username?: string | null | undefined;
137
+ userState?: import("../types").UserIdleState | undefined;
138
+ color?: {
139
+ background: string;
140
+ stroke: string;
141
+ } | undefined;
142
+ avatarUrl?: string | undefined;
143
+ id?: string | undefined;
144
+ socketId?: import("../types").SocketId | undefined;
145
+ isCurrentUser?: boolean | undefined;
146
+ isInCall?: boolean | undefined;
147
+ isSpeaking?: boolean | undefined;
148
+ isMuted?: boolean | undefined;
149
+ }>>;
150
+ stats: {
151
+ open: boolean;
152
+ panels: number;
153
+ };
154
+ currentChartType: import("../element/types").ChartType;
155
+ pasteDialog: {
156
+ shown: false;
157
+ data: null;
158
+ } | {
159
+ shown: true;
160
+ data: import("../charts").Spreadsheet;
161
+ };
162
+ pendingImageElementId: string | null;
163
+ showHyperlinkPopup: false | "info" | "editor";
164
+ linkOpacity: number;
165
+ trayModeEnabled: boolean;
166
+ colorPalette?: {
167
+ canvasBackground: import("../colors").ColorPaletteCustom;
168
+ elementBackground: import("../colors").ColorPaletteCustom;
169
+ elementStroke: import("../colors").ColorPaletteCustom;
170
+ topPicks: {
171
+ canvasBackground: [string, string, string, string, string];
172
+ elementStroke: [string, string, string, string, string];
173
+ elementBackground: [string, string, string, string, string];
174
+ };
175
+ } | undefined;
176
+ allowWheelZoom?: boolean | undefined;
177
+ allowPinchZoom?: boolean | undefined;
178
+ pinnedScripts?: string[] | undefined;
179
+ customPens?: any[] | undefined;
180
+ currentStrokeOptions?: any;
181
+ resetCustomPen?: any;
182
+ gridColor: {
183
+ Bold: string;
184
+ Regular: string;
185
+ };
186
+ highlightSearchResult: boolean;
187
+ dynamicStyle: {
188
+ [x: string]: string;
189
+ };
190
+ frameColor: {
191
+ stroke: string;
192
+ fill: string;
193
+ nameColor: string;
194
+ };
195
+ invertBindingBehaviour: boolean;
196
+ selectedLinearElement: import("../element/linearElementEditor").LinearElementEditor | null;
197
+ snapLines: readonly import("../snapping").SnapLine[];
198
+ originSnapOffset: {
199
+ x: number;
200
+ y: number;
201
+ } | null;
202
+ objectsSnapModeEnabled: boolean;
203
+ userToFollow: import("../types").UserToFollow | null;
204
+ followedBy: Set<import("../types").SocketId>;
205
+ searchMatches: readonly {
206
+ id: string;
207
+ focus: boolean;
208
+ matchedLines: {
209
+ offsetX: number;
210
+ offsetY: number;
211
+ width: number;
212
+ height: number;
213
+ }[];
214
+ }[];
215
+ };
216
+ storeAction: "capture";
217
+ };
218
+ predicate: (elements: readonly import("../element/types").ExcalidrawElement[], appState: import("../types").AppState, _: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
219
+ PanelComponent: ({ appState, updateData, app }: import("./types").PanelComponentProps) => JSX.Element;
220
+ } & {
221
+ keyTest?: undefined;
222
+ };
@@ -85,18 +85,24 @@ export declare const actionDeleteSelected: {
85
85
  tab?: string | undefined;
86
86
  } | null;
87
87
  openDialog: {
88
- name: "imageExport" | "help" | "jsonExport";
88
+ name: "help" | "imageExport" | "jsonExport";
89
89
  } | {
90
90
  name: "ttd";
91
91
  tab: "mermaid" | "text-to-diagram";
92
92
  } | {
93
93
  name: "commandPalette";
94
+ } | {
95
+ name: "elementLinkSelector";
96
+ sourceElementId: string;
94
97
  } | null;
95
98
  defaultSidebarDockedPreference: boolean;
96
99
  lastPointerDownWith: import("../element/types").PointerType;
97
100
  selectedElementIds: Readonly<{
98
101
  [id: string]: true;
99
102
  }>;
103
+ hoveredElementIds: Readonly<{
104
+ [id: string]: true;
105
+ }>;
100
106
  previousSelectedElementIds: {
101
107
  [id: string]: true;
102
108
  };
@@ -197,6 +203,8 @@ export declare const actionDeleteSelected: {
197
203
  objectsSnapModeEnabled: boolean;
198
204
  userToFollow: import("../types").UserToFollow | null;
199
205
  followedBy: Set<import("../types").SocketId>;
206
+ isCropping: boolean;
207
+ croppingElementId: string | null;
200
208
  searchMatches: readonly {
201
209
  id: string;
202
210
  focus: boolean;
@@ -315,18 +323,24 @@ export declare const actionDeleteSelected: {
315
323
  tab?: string | undefined;
316
324
  } | null;
317
325
  openDialog: {
318
- name: "imageExport" | "help" | "jsonExport";
326
+ name: "help" | "imageExport" | "jsonExport";
319
327
  } | {
320
328
  name: "ttd";
321
329
  tab: "mermaid" | "text-to-diagram";
322
330
  } | {
323
331
  name: "commandPalette";
332
+ } | {
333
+ name: "elementLinkSelector";
334
+ sourceElementId: string;
324
335
  } | null;
325
336
  defaultSidebarDockedPreference: boolean;
326
337
  lastPointerDownWith: import("../element/types").PointerType;
327
338
  selectedElementIds: Readonly<{
328
339
  [id: string]: true;
329
340
  }>;
341
+ hoveredElementIds: Readonly<{
342
+ [id: string]: true;
343
+ }>;
330
344
  previousSelectedElementIds: {
331
345
  [id: string]: true;
332
346
  };
@@ -427,6 +441,8 @@ export declare const actionDeleteSelected: {
427
441
  objectsSnapModeEnabled: boolean;
428
442
  userToFollow: import("../types").UserToFollow | null;
429
443
  followedBy: Set<import("../types").SocketId>;
444
+ isCropping: boolean;
445
+ croppingElementId: string | null;
430
446
  searchMatches: readonly {
431
447
  id: string;
432
448
  focus: boolean;
@@ -448,8 +464,13 @@ export declare const actionDeleteSelected: {
448
464
  } & import("../types").ActiveTool;
449
465
  multiElement: null;
450
466
  activeEmbeddable: null;
451
- selectedElementIds: {};
452
- selectedGroupIds: {};
467
+ selectedElementIds: Readonly<{
468
+ [id: string]: true;
469
+ }>;
470
+ selectedGroupIds: {
471
+ [groupId: string]: boolean;
472
+ };
473
+ editingGroupId: string | null;
453
474
  contextMenu: {
454
475
  items: import("../components/ContextMenu").ContextMenuItems;
455
476
  top: number;
@@ -514,15 +535,21 @@ export declare const actionDeleteSelected: {
514
535
  tab?: string | undefined;
515
536
  } | null;
516
537
  openDialog: {
517
- name: "imageExport" | "help" | "jsonExport";
538
+ name: "help" | "imageExport" | "jsonExport";
518
539
  } | {
519
540
  name: "ttd";
520
541
  tab: "mermaid" | "text-to-diagram";
521
542
  } | {
522
543
  name: "commandPalette";
544
+ } | {
545
+ name: "elementLinkSelector";
546
+ sourceElementId: string;
523
547
  } | null;
524
548
  defaultSidebarDockedPreference: boolean;
525
549
  lastPointerDownWith: import("../element/types").PointerType;
550
+ hoveredElementIds: Readonly<{
551
+ [id: string]: true;
552
+ }>;
526
553
  previousSelectedElementIds: {
527
554
  [id: string]: true;
528
555
  };
@@ -539,7 +566,6 @@ export declare const actionDeleteSelected: {
539
566
  gridStep: number;
540
567
  gridModeEnabled: boolean;
541
568
  viewModeEnabled: boolean;
542
- editingGroupId: string | null;
543
569
  width: number;
544
570
  height: number;
545
571
  offsetTop: number;
@@ -620,6 +646,8 @@ export declare const actionDeleteSelected: {
620
646
  objectsSnapModeEnabled: boolean;
621
647
  userToFollow: import("../types").UserToFollow | null;
622
648
  followedBy: Set<import("../types").SocketId>;
649
+ isCropping: boolean;
650
+ croppingElementId: string | null;
623
651
  searchMatches: readonly {
624
652
  id: string;
625
653
  focus: boolean;