@excalidraw/excalidraw 0.18.0-6fc8502 → 0.18.0-864353b

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 (164) hide show
  1. package/dist/dev/{chunk-X3RYHLJU.js → chunk-7YMZV3TY.js} +14 -4
  2. package/dist/dev/chunk-7YMZV3TY.js.map +7 -0
  3. package/dist/dev/chunk-BBNNHA7I.js +7 -0
  4. package/dist/dev/chunk-BBNNHA7I.js.map +7 -0
  5. package/dist/dev/{chunk-KYBDXI6F.js → chunk-LL55DS44.js} +15037 -10099
  6. package/dist/dev/chunk-LL55DS44.js.map +7 -0
  7. package/dist/dev/data/{image-NKFINVKH.js → image-OFYK7EOY.js} +3 -3
  8. package/dist/dev/index.css +100 -22
  9. package/dist/dev/index.css.map +3 -3
  10. package/dist/dev/index.js +3531 -6486
  11. package/dist/dev/index.js.map +4 -4
  12. package/dist/dev/locales/{en-CKWC2GMK.js → en-KIY5SGI3.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-F44EGBV2.js +33 -0
  16. package/dist/prod/{chunk-IUH5AXLB.js → chunk-OUULIERA.js} +4 -4
  17. package/dist/prod/chunk-UH6Q3EIV.js +7 -0
  18. package/dist/prod/data/image-CUOH64HE.js +1 -0
  19. package/dist/prod/index.css +1 -1
  20. package/dist/prod/index.js +18 -17
  21. package/dist/prod/locales/{en-SBO6ZHT2.js → en-GCLCIHXH.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 +11 -1
  25. package/dist/types/{excalidraw → common/src}/emitter.d.ts +1 -1
  26. package/dist/types/common/src/font-metadata.d.ts +4 -2
  27. package/dist/types/common/src/index.d.ts +1 -0
  28. package/dist/types/common/src/utility-types.d.ts +5 -0
  29. package/dist/types/common/src/utils.d.ts +22 -4
  30. package/dist/types/{excalidraw/scene → element/src}/Scene.d.ts +11 -14
  31. package/dist/types/element/src/ShapeCache.d.ts +1 -1
  32. package/dist/types/element/src/align.d.ts +3 -3
  33. package/dist/types/element/src/binding.d.ts +19 -12
  34. package/dist/types/element/src/bounds.d.ts +2 -2
  35. package/dist/types/element/src/collision.d.ts +1 -1
  36. package/dist/types/{excalidraw/change.d.ts → element/src/delta.d.ts} +40 -35
  37. package/dist/types/element/src/dragElements.d.ts +3 -2
  38. package/dist/types/element/src/duplicate.d.ts +10 -13
  39. package/dist/types/element/src/elbowArrow.d.ts +1 -1
  40. package/dist/types/element/src/flowchart.d.ts +3 -2
  41. package/dist/types/element/src/fractionalIndex.d.ts +2 -2
  42. package/dist/types/element/src/frame.d.ts +5 -4
  43. package/dist/types/element/src/index.d.ts +45 -2
  44. package/dist/types/element/src/linearElementEditor.d.ts +20 -31
  45. package/dist/types/element/src/mutateElement.d.ts +10 -2
  46. package/dist/types/element/src/newElement.d.ts +4 -3
  47. package/dist/types/element/src/resizeElements.d.ts +4 -4
  48. package/dist/types/element/src/selection.d.ts +11 -5
  49. package/dist/types/element/src/shapes.d.ts +5 -1
  50. package/dist/types/element/src/sizeHelpers.d.ts +2 -2
  51. package/dist/types/element/src/store.d.ts +227 -0
  52. package/dist/types/element/src/textElement.d.ts +5 -3
  53. package/dist/types/element/src/transformHandles.d.ts +4 -4
  54. package/dist/types/element/src/typeChecks.d.ts +15 -1
  55. package/dist/types/element/src/types.d.ts +14 -1
  56. package/dist/types/element/src/zindex.d.ts +1 -1
  57. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +39 -45
  58. package/dist/types/excalidraw/actions/actionAlign.d.ts +8 -8
  59. package/dist/types/excalidraw/actions/actionBoundText.d.ts +26 -30
  60. package/dist/types/excalidraw/actions/actionCanvas.d.ts +262 -288
  61. package/dist/types/excalidraw/actions/actionClipboard.d.ts +81 -92
  62. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +13 -15
  63. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +38 -43
  64. package/dist/types/excalidraw/actions/actionDistribute.d.ts +4 -4
  65. package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +2 -2
  66. package/dist/types/excalidraw/actions/actionElementLink.d.ts +13 -15
  67. package/dist/types/excalidraw/actions/actionElementLock.d.ts +41 -46
  68. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +13 -15
  69. package/dist/types/excalidraw/actions/actionExport.d.ts +210 -228
  70. package/dist/types/excalidraw/actions/actionFinalize.d.ts +72 -36
  71. package/dist/types/excalidraw/actions/actionFlip.d.ts +4 -4
  72. package/dist/types/excalidraw/actions/actionFrame.d.ts +96 -104
  73. package/dist/types/excalidraw/actions/actionGroup.d.ts +32 -36
  74. package/dist/types/excalidraw/actions/actionHistory.d.ts +1 -2
  75. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +505 -14
  76. package/dist/types/excalidraw/actions/actionLink.d.ts +13 -15
  77. package/dist/types/excalidraw/actions/actionMenu.d.ts +39 -45
  78. package/dist/types/excalidraw/actions/actionNavigate.d.ts +25 -29
  79. package/dist/types/excalidraw/actions/actionProperties.d.ts +192 -214
  80. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +15 -17
  81. package/dist/types/excalidraw/actions/actionStyles.d.ts +17 -19
  82. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +15 -17
  83. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +15 -17
  84. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +15 -190
  85. package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +19 -0
  86. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +15 -17
  87. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +15 -17
  88. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +15 -17
  89. package/dist/types/excalidraw/actions/actionZindex.d.ts +8 -8
  90. package/dist/types/excalidraw/actions/types.d.ts +4 -3
  91. package/dist/types/excalidraw/appState.d.ts +38 -29
  92. package/dist/types/excalidraw/components/App.d.ts +24 -11
  93. package/dist/types/excalidraw/components/ButtonIcon.d.ts +1 -0
  94. package/dist/types/excalidraw/components/ColorPicker/ColorInput.d.ts +2 -1
  95. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +5 -1
  96. package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +1 -1
  97. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +2 -3
  98. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +2 -3
  99. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +2 -2
  100. package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +1 -1
  101. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -1
  102. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +1 -1
  103. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +23 -0
  104. package/dist/types/excalidraw/components/ElementLinkDialog.d.ts +4 -3
  105. package/dist/types/excalidraw/components/{ButtonIconSelect.d.ts → RadioSelection.d.ts} +1 -1
  106. package/dist/types/excalidraw/components/Range.d.ts +3 -3
  107. package/dist/types/excalidraw/components/Stats/Angle.d.ts +1 -1
  108. package/dist/types/excalidraw/components/Stats/CanvasGrid.d.ts +1 -1
  109. package/dist/types/excalidraw/components/Stats/Collapsible.d.ts +2 -1
  110. package/dist/types/excalidraw/components/Stats/Dimension.d.ts +1 -1
  111. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +1 -1
  112. package/dist/types/excalidraw/components/Stats/FontSize.d.ts +1 -1
  113. package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +1 -1
  114. package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +1 -1
  115. package/dist/types/excalidraw/components/Stats/MultiFontSize.d.ts +1 -1
  116. package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +1 -1
  117. package/dist/types/excalidraw/components/Stats/Position.d.ts +1 -1
  118. package/dist/types/excalidraw/components/Stats/utils.d.ts +4 -11
  119. package/dist/types/excalidraw/components/UnlockPopup.d.ts +8 -0
  120. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +1 -0
  121. package/dist/types/excalidraw/components/hyperlink/Hyperlink.d.ts +3 -2
  122. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +2 -1
  123. package/dist/types/excalidraw/components/icons.d.ts +3 -0
  124. package/dist/types/excalidraw/components/shapes.d.ts +1 -1
  125. package/dist/types/excalidraw/data/blob.d.ts +1 -1
  126. package/dist/types/excalidraw/data/transform.d.ts +1 -1
  127. package/dist/types/excalidraw/editor-jotai.d.ts +6 -6
  128. package/dist/types/excalidraw/eraser/index.d.ts +14 -0
  129. package/dist/types/excalidraw/fonts/Fonts.d.ts +1 -1
  130. package/dist/types/excalidraw/history.d.ts +14 -22
  131. package/dist/types/excalidraw/hooks/useEmitter.d.ts +1 -1
  132. package/dist/types/excalidraw/index.d.ts +9 -9
  133. package/dist/types/excalidraw/lasso/index.d.ts +1 -0
  134. package/dist/types/excalidraw/lasso/utils.d.ts +1 -2
  135. package/dist/types/excalidraw/renderer/helpers.d.ts +7 -2
  136. package/dist/types/excalidraw/scene/Renderer.d.ts +1 -1
  137. package/dist/types/excalidraw/scene/index.d.ts +2 -2
  138. package/dist/types/excalidraw/scene/scrollbars.d.ts +2 -3
  139. package/dist/types/excalidraw/scene/types.d.ts +2 -0
  140. package/dist/types/excalidraw/snapping.d.ts +2 -2
  141. package/dist/types/excalidraw/types.d.ts +28 -6
  142. package/dist/types/excalidraw/visualdebug.d.ts +1 -1
  143. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +3 -1
  144. package/dist/types/math/src/angle.d.ts +2 -0
  145. package/dist/types/math/src/curve.d.ts +2 -0
  146. package/dist/types/math/src/point.d.ts +1 -1
  147. package/dist/types/math/src/types.d.ts +1 -0
  148. package/dist/types/math/src/vector.d.ts +4 -0
  149. package/dist/types/utils/src/bbox.d.ts +1 -1
  150. package/dist/types/utils/src/index.d.ts +1 -1
  151. package/dist/types/utils/src/withinBounds.d.ts +1 -1
  152. package/history.ts +68 -94
  153. package/package.json +3 -3
  154. package/dist/dev/chunk-H7XJ5UVD.js +0 -7
  155. package/dist/dev/chunk-H7XJ5UVD.js.map +0 -7
  156. package/dist/dev/chunk-KYBDXI6F.js.map +0 -7
  157. package/dist/dev/chunk-X3RYHLJU.js.map +0 -7
  158. package/dist/prod/chunk-CAN5RS4P.js +0 -31
  159. package/dist/prod/chunk-KJYFYP64.js +0 -7
  160. package/dist/prod/data/image-5XD47O4X.js +0 -1
  161. package/dist/types/excalidraw/components/ButtonSelect.d.ts +0 -9
  162. package/dist/types/excalidraw/store.d.ts +0 -129
  163. /package/dist/dev/data/{image-NKFINVKH.js.map → image-OFYK7EOY.js.map} +0 -0
  164. /package/dist/dev/locales/{en-CKWC2GMK.js.map → en-KIY5SGI3.js.map} +0 -0
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { LinearElementEditor } from "@excalidraw/element/linearElementEditor";
2
+ import { LinearElementEditor } from "@excalidraw/element";
3
3
  import type { ExcalidrawElement } from "@excalidraw/element/types";
4
4
  export declare const actionSelectAll: {
5
5
  name: "selectAll";
@@ -12,13 +12,13 @@ export declare const actionSelectAll: {
12
12
  perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<import("../types").AppState>, value: any, app: import("../types").AppClassProperties) => false | {
13
13
  appState: {
14
14
  selectedLinearElement: LinearElementEditor | null;
15
- editingGroupId: string | null;
16
15
  selectedElementIds: Readonly<{
17
16
  [id: string]: true;
18
17
  }>;
19
18
  selectedGroupIds: {
20
19
  [groupId: string]: boolean;
21
20
  };
21
+ editingGroupId: string | null;
22
22
  contextMenu: {
23
23
  items: import("../components/ContextMenu").ContextMenuItems;
24
24
  top: number;
@@ -37,7 +37,7 @@ export declare const actionSelectAll: {
37
37
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
38
38
  isBindingEnabled: boolean;
39
39
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
40
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
40
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
41
41
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
42
42
  frameRendering: {
43
43
  enabled: boolean;
@@ -86,7 +86,7 @@ export declare const actionSelectAll: {
86
86
  zoom: Readonly<{
87
87
  value: import("../types").NormalizedZoomValue;
88
88
  }>;
89
- openMenu: "shape" | "canvas" | null;
89
+ openMenu: "canvas" | "shape" | null;
90
90
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
91
91
  openSidebar: {
92
92
  name: string;
@@ -162,7 +162,7 @@ export declare const actionSelectAll: {
162
162
  data: import("../charts").Spreadsheet;
163
163
  };
164
164
  pendingImageElementId: string | null;
165
- showHyperlinkPopup: false | "editor" | "info";
165
+ showHyperlinkPopup: false | "info" | "editor";
166
166
  snapLines: readonly import("../snapping").SnapLine[];
167
167
  originSnapOffset: {
168
168
  x: number;
@@ -173,20 +173,18 @@ export declare const actionSelectAll: {
173
173
  followedBy: Set<import("../types").SocketId>;
174
174
  isCropping: boolean;
175
175
  croppingElementId: string | null;
176
- searchMatches: readonly {
177
- id: string;
178
- focus: boolean;
179
- matchedLines: {
180
- offsetX: number;
181
- offsetY: number;
182
- width: number;
183
- height: number;
184
- }[];
185
- }[];
176
+ searchMatches: Readonly<{
177
+ focusedId: string | null;
178
+ matches: readonly import("../types").SearchMatch[];
179
+ }> | null;
180
+ activeLockedId: string | null;
181
+ lockedMultiSelections: {
182
+ [groupId: string]: true;
183
+ };
186
184
  };
187
185
  captureUpdate: "IMMEDIATELY";
188
186
  };
189
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
187
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
190
188
  } & {
191
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
189
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
192
190
  };
@@ -30,7 +30,7 @@ export declare const actionCopyStyles: {
30
30
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
31
31
  isBindingEnabled: boolean;
32
32
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
33
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
33
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
34
34
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
35
35
  frameRendering: {
36
36
  enabled: boolean;
@@ -41,7 +41,7 @@ export declare const actionCopyStyles: {
41
41
  editingFrame: string | null;
42
42
  elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
43
43
  editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
44
- editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
44
+ editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
45
45
  activeTool: {
46
46
  lastActiveTool: import("../types").ActiveTool | null;
47
47
  locked: boolean;
@@ -79,7 +79,7 @@ export declare const actionCopyStyles: {
79
79
  zoom: Readonly<{
80
80
  value: import("../types").NormalizedZoomValue;
81
81
  }>;
82
- openMenu: "shape" | "canvas" | null;
82
+ openMenu: "canvas" | "shape" | null;
83
83
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
84
84
  openSidebar: {
85
85
  name: string;
@@ -157,8 +157,8 @@ export declare const actionCopyStyles: {
157
157
  data: import("../charts").Spreadsheet;
158
158
  };
159
159
  pendingImageElementId: string | null;
160
- showHyperlinkPopup: false | "editor" | "info";
161
- selectedLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
160
+ showHyperlinkPopup: false | "info" | "editor";
161
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
162
162
  snapLines: readonly import("../snapping").SnapLine[];
163
163
  originSnapOffset: {
164
164
  x: number;
@@ -169,22 +169,20 @@ export declare const actionCopyStyles: {
169
169
  followedBy: Set<import("../types").SocketId>;
170
170
  isCropping: boolean;
171
171
  croppingElementId: string | null;
172
- searchMatches: readonly {
173
- id: string;
174
- focus: boolean;
175
- matchedLines: {
176
- offsetX: number;
177
- offsetY: number;
178
- width: number;
179
- height: number;
180
- }[];
181
- }[];
172
+ searchMatches: Readonly<{
173
+ focusedId: string | null;
174
+ matches: readonly import("../types").SearchMatch[];
175
+ }> | null;
176
+ activeLockedId: string | null;
177
+ lockedMultiSelections: {
178
+ [groupId: string]: true;
179
+ };
182
180
  };
183
181
  captureUpdate: "EVENTUALLY";
184
182
  };
185
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
183
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
186
184
  } & {
187
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
185
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
188
186
  };
189
187
  export declare const actionPasteStyles: {
190
188
  name: "pasteStyles";
@@ -200,7 +198,7 @@ export declare const actionPasteStyles: {
200
198
  elements: import("@excalidraw/element/types").OrderedExcalidrawElement[];
201
199
  captureUpdate: "IMMEDIATELY";
202
200
  };
203
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
201
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
204
202
  } & {
205
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
203
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
206
204
  };
@@ -32,7 +32,7 @@ export declare const actionToggleGridMode: {
32
32
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
33
33
  isBindingEnabled: boolean;
34
34
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
35
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
35
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
36
36
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
37
37
  frameRendering: {
38
38
  enabled: boolean;
@@ -43,7 +43,7 @@ export declare const actionToggleGridMode: {
43
43
  editingFrame: string | null;
44
44
  elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
45
45
  editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
46
- editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
46
+ editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
47
47
  activeTool: {
48
48
  lastActiveTool: import("../types").ActiveTool | null;
49
49
  locked: boolean;
@@ -81,7 +81,7 @@ export declare const actionToggleGridMode: {
81
81
  zoom: Readonly<{
82
82
  value: import("../types").NormalizedZoomValue;
83
83
  }>;
84
- openMenu: "shape" | "canvas" | null;
84
+ openMenu: "canvas" | "shape" | null;
85
85
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
86
86
  openSidebar: {
87
87
  name: string;
@@ -163,8 +163,8 @@ export declare const actionToggleGridMode: {
163
163
  data: import("../charts").Spreadsheet;
164
164
  };
165
165
  pendingImageElementId: string | null;
166
- showHyperlinkPopup: false | "editor" | "info";
167
- selectedLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
166
+ showHyperlinkPopup: false | "info" | "editor";
167
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
168
168
  snapLines: readonly import("../snapping").SnapLine[];
169
169
  originSnapOffset: {
170
170
  x: number;
@@ -174,22 +174,20 @@ export declare const actionToggleGridMode: {
174
174
  followedBy: Set<import("../types").SocketId>;
175
175
  isCropping: boolean;
176
176
  croppingElementId: string | null;
177
- searchMatches: readonly {
178
- id: string;
179
- focus: boolean;
180
- matchedLines: {
181
- offsetX: number;
182
- offsetY: number;
183
- width: number;
184
- height: number;
185
- }[];
186
- }[];
177
+ searchMatches: Readonly<{
178
+ focusedId: string | null;
179
+ matches: readonly import("../types").SearchMatch[];
180
+ }> | null;
181
+ activeLockedId: string | null;
182
+ lockedMultiSelections: {
183
+ [groupId: string]: true;
184
+ };
187
185
  };
188
186
  captureUpdate: "EVENTUALLY";
189
187
  };
190
188
  checked: (appState: AppState) => boolean;
191
189
  predicate: (element: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: AppState, props: import("../types").ExcalidrawProps) => boolean;
192
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
190
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
193
191
  } & {
194
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
192
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
195
193
  };
@@ -30,7 +30,7 @@ export declare const actionToggleObjectsSnapMode: {
30
30
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
31
31
  isBindingEnabled: boolean;
32
32
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
33
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
33
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
34
34
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
35
35
  frameRendering: {
36
36
  enabled: boolean;
@@ -41,7 +41,7 @@ export declare const actionToggleObjectsSnapMode: {
41
41
  editingFrame: string | null;
42
42
  elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
43
43
  editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
44
- editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
44
+ editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
45
45
  activeTool: {
46
46
  lastActiveTool: import("../types").ActiveTool | null;
47
47
  locked: boolean;
@@ -79,7 +79,7 @@ export declare const actionToggleObjectsSnapMode: {
79
79
  zoom: Readonly<{
80
80
  value: import("../types").NormalizedZoomValue;
81
81
  }>;
82
- openMenu: "shape" | "canvas" | null;
82
+ openMenu: "canvas" | "shape" | null;
83
83
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
84
84
  openSidebar: {
85
85
  name: string;
@@ -161,8 +161,8 @@ export declare const actionToggleObjectsSnapMode: {
161
161
  data: import("../charts").Spreadsheet;
162
162
  };
163
163
  pendingImageElementId: string | null;
164
- showHyperlinkPopup: false | "editor" | "info";
165
- selectedLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
164
+ showHyperlinkPopup: false | "info" | "editor";
165
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
166
166
  snapLines: readonly import("../snapping").SnapLine[];
167
167
  originSnapOffset: {
168
168
  x: number;
@@ -172,22 +172,20 @@ export declare const actionToggleObjectsSnapMode: {
172
172
  followedBy: Set<import("../types").SocketId>;
173
173
  isCropping: boolean;
174
174
  croppingElementId: string | null;
175
- searchMatches: readonly {
176
- id: string;
177
- focus: boolean;
178
- matchedLines: {
179
- offsetX: number;
180
- offsetY: number;
181
- width: number;
182
- height: number;
183
- }[];
184
- }[];
175
+ searchMatches: Readonly<{
176
+ focusedId: string | null;
177
+ matches: readonly import("../types").SearchMatch[];
178
+ }> | null;
179
+ activeLockedId: string | null;
180
+ lockedMultiSelections: {
181
+ [groupId: string]: true;
182
+ };
185
183
  };
186
184
  captureUpdate: "EVENTUALLY";
187
185
  };
188
186
  checked: (appState: Readonly<import("../types").AppState>) => boolean;
189
187
  predicate: (elements: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: import("../types").AppState, appProps: import("../types").ExcalidrawProps) => boolean;
190
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
188
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
191
189
  } & {
192
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
190
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
193
191
  };
@@ -12,179 +12,6 @@ export declare const actionToggleSearchMenu: {
12
12
  predicate: (appState: Readonly<AppState>) => boolean;
13
13
  };
14
14
  perform(elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties): false | {
15
- appState: {
16
- openSidebar: null;
17
- contextMenu: {
18
- items: import("../components/ContextMenu").ContextMenuItems;
19
- top: number;
20
- left: number;
21
- } | null;
22
- showWelcomeScreen: boolean;
23
- isLoading: boolean;
24
- errorMessage: import("react").ReactNode;
25
- activeEmbeddable: {
26
- element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
27
- state: "hover" | "active";
28
- } | null;
29
- newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
30
- resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
31
- multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
32
- selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
33
- isBindingEnabled: boolean;
34
- startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
35
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
36
- frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
37
- frameRendering: {
38
- enabled: boolean;
39
- name: boolean;
40
- outline: boolean;
41
- clip: boolean;
42
- };
43
- editingFrame: string | null;
44
- elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
45
- editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
46
- editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
47
- activeTool: {
48
- lastActiveTool: import("../types").ActiveTool | null;
49
- locked: boolean;
50
- fromSelection: boolean;
51
- } & import("../types").ActiveTool;
52
- penMode: boolean;
53
- penDetected: boolean;
54
- exportBackground: boolean;
55
- exportEmbedScene: boolean;
56
- exportWithDarkMode: boolean;
57
- exportScale: number;
58
- currentItemStrokeColor: string;
59
- currentItemBackgroundColor: string;
60
- currentItemFillStyle: import("@excalidraw/element/types").FillStyle;
61
- currentItemStrokeWidth: number;
62
- currentItemStrokeStyle: import("@excalidraw/element/types").StrokeStyle;
63
- currentItemRoughness: number;
64
- currentItemOpacity: number;
65
- currentItemFontFamily: number;
66
- currentItemFontSize: number;
67
- currentItemTextAlign: string;
68
- currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
69
- currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
70
- currentHoveredFontFamily: number | null;
71
- currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
72
- currentItemArrowType: "round" | "sharp" | "elbow";
73
- viewBackgroundColor: string;
74
- scrollX: number;
75
- scrollY: number;
76
- cursorButton: "up" | "down";
77
- scrolledOutside: boolean;
78
- name: string | null;
79
- isResizing: boolean;
80
- isRotating: boolean;
81
- zoom: Readonly<{
82
- value: import("../types").NormalizedZoomValue;
83
- }>;
84
- openMenu: "shape" | "canvas" | null;
85
- openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
86
- openDialog: {
87
- name: "imageExport" | "help" | "jsonExport";
88
- } | {
89
- name: "ttd";
90
- tab: "text-to-diagram" | "mermaid";
91
- } | {
92
- name: "commandPalette";
93
- } | {
94
- name: "elementLinkSelector";
95
- sourceElementId: string;
96
- } | null;
97
- defaultSidebarDockedPreference: boolean;
98
- lastPointerDownWith: import("@excalidraw/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("@excalidraw/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("@excalidraw/common").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("@excalidraw/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 | "editor" | "info";
164
- selectedLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
165
- snapLines: readonly import("../snapping").SnapLine[];
166
- originSnapOffset: {
167
- x: number;
168
- y: number;
169
- } | null;
170
- objectsSnapModeEnabled: boolean;
171
- userToFollow: import("../types").UserToFollow | null;
172
- followedBy: Set<import("../types").SocketId>;
173
- isCropping: boolean;
174
- croppingElementId: string | null;
175
- searchMatches: readonly {
176
- id: string;
177
- focus: boolean;
178
- matchedLines: {
179
- offsetX: number;
180
- offsetY: number;
181
- width: number;
182
- height: number;
183
- }[];
184
- }[];
185
- };
186
- captureUpdate: "EVENTUALLY";
187
- } | {
188
15
  appState: {
189
16
  openSidebar: {
190
17
  name: "default";
@@ -209,7 +36,7 @@ export declare const actionToggleSearchMenu: {
209
36
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
210
37
  isBindingEnabled: boolean;
211
38
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
212
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
39
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
213
40
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
214
41
  frameRendering: {
215
42
  enabled: boolean;
@@ -220,7 +47,7 @@ export declare const actionToggleSearchMenu: {
220
47
  editingFrame: string | null;
221
48
  elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
222
49
  editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
223
- editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
50
+ editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
224
51
  activeTool: {
225
52
  lastActiveTool: import("../types").ActiveTool | null;
226
53
  locked: boolean;
@@ -258,7 +85,7 @@ export declare const actionToggleSearchMenu: {
258
85
  zoom: Readonly<{
259
86
  value: import("../types").NormalizedZoomValue;
260
87
  }>;
261
- openMenu: "shape" | "canvas" | null;
88
+ openMenu: "canvas" | "shape" | null;
262
89
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
263
90
  defaultSidebarDockedPreference: boolean;
264
91
  lastPointerDownWith: import("@excalidraw/element/types").PointerType;
@@ -326,8 +153,8 @@ export declare const actionToggleSearchMenu: {
326
153
  data: import("../charts").Spreadsheet;
327
154
  };
328
155
  pendingImageElementId: string | null;
329
- showHyperlinkPopup: false | "editor" | "info";
330
- selectedLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
156
+ showHyperlinkPopup: false | "info" | "editor";
157
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
331
158
  snapLines: readonly import("../snapping").SnapLine[];
332
159
  originSnapOffset: {
333
160
  x: number;
@@ -338,22 +165,20 @@ export declare const actionToggleSearchMenu: {
338
165
  followedBy: Set<import("../types").SocketId>;
339
166
  isCropping: boolean;
340
167
  croppingElementId: string | null;
341
- searchMatches: readonly {
342
- id: string;
343
- focus: boolean;
344
- matchedLines: {
345
- offsetX: number;
346
- offsetY: number;
347
- width: number;
348
- height: number;
349
- }[];
350
- }[];
168
+ searchMatches: Readonly<{
169
+ focusedId: string | null;
170
+ matches: readonly import("../types").SearchMatch[];
171
+ }> | null;
172
+ activeLockedId: string | null;
173
+ lockedMultiSelections: {
174
+ [groupId: string]: true;
175
+ };
351
176
  };
352
177
  captureUpdate: "EVENTUALLY";
353
178
  };
354
179
  checked: (appState: AppState) => boolean;
355
180
  predicate: (element: readonly import("@excalidraw/element/types").ExcalidrawElement[], appState: AppState, props: import("../types").ExcalidrawProps) => boolean;
356
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
181
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
357
182
  } & {
358
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
183
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
359
184
  };
@@ -0,0 +1,19 @@
1
+ import type { ExcalidrawElement } from "@excalidraw/element/types";
2
+ export declare const actionToggleShapeSwitch: {
3
+ name: "toggleShapeSwitch";
4
+ label: string;
5
+ icon: () => null;
6
+ viewMode: true;
7
+ trackEvent: {
8
+ category: "shape_switch";
9
+ action: string;
10
+ };
11
+ keywords: string[];
12
+ perform(elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<import("../types").AppState>, _: any, app: import("../types").AppClassProperties): {
13
+ captureUpdate: "NEVER";
14
+ };
15
+ checked: (appState: Readonly<import("../types").AppState>) => boolean;
16
+ predicate: (elements: readonly ExcalidrawElement[], appState: import("../types").AppState, props: import("../types").ExcalidrawProps) => boolean;
17
+ } & {
18
+ keyTest?: undefined;
19
+ };
@@ -32,7 +32,7 @@ export declare const actionToggleStats: {
32
32
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
33
33
  isBindingEnabled: boolean;
34
34
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
35
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
35
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
36
36
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
37
37
  frameRendering: {
38
38
  enabled: boolean;
@@ -43,7 +43,7 @@ export declare const actionToggleStats: {
43
43
  editingFrame: string | null;
44
44
  elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
45
45
  editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
46
- editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
46
+ editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
47
47
  activeTool: {
48
48
  lastActiveTool: import("../types").ActiveTool | null;
49
49
  locked: boolean;
@@ -81,7 +81,7 @@ export declare const actionToggleStats: {
81
81
  zoom: Readonly<{
82
82
  value: import("../types").NormalizedZoomValue;
83
83
  }>;
84
- openMenu: "shape" | "canvas" | null;
84
+ openMenu: "canvas" | "shape" | null;
85
85
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
86
86
  openSidebar: {
87
87
  name: string;
@@ -160,8 +160,8 @@ export declare const actionToggleStats: {
160
160
  data: import("../charts").Spreadsheet;
161
161
  };
162
162
  pendingImageElementId: string | null;
163
- showHyperlinkPopup: false | "editor" | "info";
164
- selectedLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
163
+ showHyperlinkPopup: false | "info" | "editor";
164
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
165
165
  snapLines: readonly import("../snapping").SnapLine[];
166
166
  originSnapOffset: {
167
167
  x: number;
@@ -172,21 +172,19 @@ export declare const actionToggleStats: {
172
172
  followedBy: Set<import("../types").SocketId>;
173
173
  isCropping: boolean;
174
174
  croppingElementId: string | null;
175
- searchMatches: readonly {
176
- id: string;
177
- focus: boolean;
178
- matchedLines: {
179
- offsetX: number;
180
- offsetY: number;
181
- width: number;
182
- height: number;
183
- }[];
184
- }[];
175
+ searchMatches: Readonly<{
176
+ focusedId: string | null;
177
+ matches: readonly import("../types").SearchMatch[];
178
+ }> | null;
179
+ activeLockedId: string | null;
180
+ lockedMultiSelections: {
181
+ [groupId: string]: true;
182
+ };
185
183
  };
186
184
  captureUpdate: "EVENTUALLY";
187
185
  };
188
186
  checked: (appState: Readonly<import("../types").AppState>) => boolean;
189
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
187
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
190
188
  } & {
191
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
189
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
192
190
  };