@myoc/excalidraw 0.18.16 → 0.18.18

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 (179) hide show
  1. package/dist/dev/{chunk-3HLOFB5F.js → chunk-MAGRVBVM.js} +13453 -10629
  2. package/dist/dev/chunk-MAGRVBVM.js.map +7 -0
  3. package/dist/dev/{chunk-PEI7EPYO.js → chunk-QO4EFL6B.js} +15 -5
  4. package/dist/dev/chunk-QO4EFL6B.js.map +7 -0
  5. package/dist/dev/chunk-WUH7JFG4.js +7 -0
  6. package/dist/dev/chunk-WUH7JFG4.js.map +7 -0
  7. package/dist/dev/data/{image-XPEIZ6XQ.js → image-BBHDGXQ3.js} +3 -3
  8. package/dist/dev/index.css +101 -24
  9. package/dist/dev/index.css.map +3 -3
  10. package/dist/dev/index.js +6587 -7610
  11. package/dist/dev/index.js.map +4 -4
  12. package/dist/dev/locales/{en-R455UJTM.js → en-2WXBKZE2.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-4Z2WWUCC.js +7 -0
  16. package/dist/prod/chunk-KZXLT4YB.js +12 -0
  17. package/dist/prod/chunk-YBT3HBS6.js +33 -0
  18. package/dist/prod/data/image-JFILZTP3.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-YWERZJD6.js → en-XFR6MADM.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 +19 -2
  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/points.d.ts +1 -1
  29. package/dist/types/common/src/utility-types.d.ts +5 -0
  30. package/dist/types/common/src/utils.d.ts +17 -7
  31. package/dist/types/{excalidraw/scene → element/src}/Scene.d.ts +11 -14
  32. package/dist/types/element/src/align.d.ts +3 -3
  33. package/dist/types/element/src/arrange.d.ts +2 -1
  34. package/dist/types/element/src/binding.d.ts +21 -14
  35. package/dist/types/element/src/bounds.d.ts +11 -5
  36. package/dist/types/element/src/collision.d.ts +18 -12
  37. package/dist/types/element/src/cropElement.d.ts +1 -1
  38. package/dist/types/{excalidraw/change.d.ts → element/src/delta.d.ts} +63 -38
  39. package/dist/types/element/src/distance.d.ts +2 -2
  40. package/dist/types/element/src/dragElements.d.ts +3 -2
  41. package/dist/types/element/src/elbowArrow.d.ts +2 -2
  42. package/dist/types/element/src/flowchart.d.ts +3 -2
  43. package/dist/types/element/src/fractionalIndex.d.ts +9 -3
  44. package/dist/types/element/src/frame.d.ts +4 -3
  45. package/dist/types/element/src/heading.d.ts +2 -2
  46. package/dist/types/element/src/index.d.ts +43 -2
  47. package/dist/types/element/src/linearElementEditor.d.ts +21 -32
  48. package/dist/types/element/src/mutateElement.d.ts +11 -3
  49. package/dist/types/element/src/newElement.d.ts +4 -3
  50. package/dist/types/element/src/resizeElements.d.ts +5 -4
  51. package/dist/types/element/src/resizeTest.d.ts +2 -2
  52. package/dist/types/element/src/selection.d.ts +1 -6
  53. package/dist/types/element/src/shape.d.ts +42 -0
  54. package/dist/types/element/src/shapes.d.ts +10 -10
  55. package/dist/types/element/src/sizeHelpers.d.ts +2 -2
  56. package/dist/types/element/src/store.d.ts +231 -0
  57. package/dist/types/element/src/textElement.d.ts +4 -3
  58. package/dist/types/element/src/typeChecks.d.ts +19 -1
  59. package/dist/types/element/src/types.d.ts +15 -2
  60. package/dist/types/element/src/utils.d.ts +5 -1
  61. package/dist/types/element/src/zindex.d.ts +1 -1
  62. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +42 -51
  63. package/dist/types/excalidraw/actions/actionAlign.d.ts +8 -8
  64. package/dist/types/excalidraw/actions/actionArrange.d.ts +2 -2
  65. package/dist/types/excalidraw/actions/actionBoundText.d.ts +28 -34
  66. package/dist/types/excalidraw/actions/actionCanvas.d.ts +187 -223
  67. package/dist/types/excalidraw/actions/actionClipboard.d.ts +87 -104
  68. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +14 -17
  69. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +41 -49
  70. package/dist/types/excalidraw/actions/actionDistribute.d.ts +4 -4
  71. package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +2 -2
  72. package/dist/types/excalidraw/actions/actionElementLink.d.ts +14 -17
  73. package/dist/types/excalidraw/actions/actionElementLock.d.ts +43 -50
  74. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +14 -17
  75. package/dist/types/excalidraw/actions/actionExport.d.ts +219 -246
  76. package/dist/types/excalidraw/actions/actionFinalize.d.ts +74 -40
  77. package/dist/types/excalidraw/actions/actionFlip.d.ts +4 -4
  78. package/dist/types/excalidraw/actions/actionFrame.d.ts +100 -112
  79. package/dist/types/excalidraw/actions/actionGroup.d.ts +34 -40
  80. package/dist/types/excalidraw/actions/actionHistory.d.ts +1 -2
  81. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +506 -16
  82. package/dist/types/excalidraw/actions/actionLink.d.ts +14 -17
  83. package/dist/types/excalidraw/actions/actionMenu.d.ts +42 -51
  84. package/dist/types/excalidraw/actions/actionNavigate.d.ts +27 -33
  85. package/dist/types/excalidraw/actions/actionProperties.d.ts +206 -243
  86. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +16 -19
  87. package/dist/types/excalidraw/actions/actionSmartZoom.d.ts +2 -2
  88. package/dist/types/excalidraw/actions/actionStyles.d.ts +18 -21
  89. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +16 -19
  90. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +16 -19
  91. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +16 -200
  92. package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +19 -0
  93. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +16 -19
  94. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +16 -19
  95. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +16 -19
  96. package/dist/types/excalidraw/actions/actionZindex.d.ts +8 -8
  97. package/dist/types/excalidraw/actions/types.d.ts +4 -3
  98. package/dist/types/excalidraw/appState.d.ts +40 -31
  99. package/dist/types/excalidraw/components/App.d.ts +15 -17
  100. package/dist/types/excalidraw/components/ButtonIcon.d.ts +1 -0
  101. package/dist/types/excalidraw/components/ColorPicker/ColorInput.d.ts +2 -1
  102. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +5 -1
  103. package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +1 -1
  104. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +2 -3
  105. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +2 -3
  106. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +2 -2
  107. package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +1 -1
  108. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -1
  109. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +1 -1
  110. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +23 -0
  111. package/dist/types/excalidraw/components/ElementLinkDialog.d.ts +4 -3
  112. package/dist/types/excalidraw/components/{ButtonIconSelect.d.ts → RadioSelection.d.ts} +1 -1
  113. package/dist/types/excalidraw/components/Range.d.ts +3 -3
  114. package/dist/types/excalidraw/components/Stats/Angle.d.ts +1 -1
  115. package/dist/types/excalidraw/components/Stats/CanvasGrid.d.ts +1 -1
  116. package/dist/types/excalidraw/components/Stats/Collapsible.d.ts +2 -1
  117. package/dist/types/excalidraw/components/Stats/Dimension.d.ts +1 -1
  118. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +1 -1
  119. package/dist/types/excalidraw/components/Stats/FontSize.d.ts +1 -1
  120. package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +1 -1
  121. package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +1 -1
  122. package/dist/types/excalidraw/components/Stats/MultiFontSize.d.ts +1 -1
  123. package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +1 -1
  124. package/dist/types/excalidraw/components/Stats/Position.d.ts +1 -1
  125. package/dist/types/excalidraw/components/Stats/utils.d.ts +4 -11
  126. package/dist/types/excalidraw/components/UnlockPopup.d.ts +8 -0
  127. package/dist/types/excalidraw/components/dropdownMenu/common.d.ts +1 -1
  128. package/dist/types/excalidraw/components/hyperlink/Hyperlink.d.ts +3 -2
  129. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +2 -1
  130. package/dist/types/excalidraw/components/icons.d.ts +3 -0
  131. package/dist/types/excalidraw/components/shapes.d.ts +1 -1
  132. package/dist/types/excalidraw/data/blob.d.ts +1 -1
  133. package/dist/types/excalidraw/data/transform.d.ts +1 -1
  134. package/dist/types/excalidraw/editor-jotai.d.ts +6 -6
  135. package/dist/types/excalidraw/eraser/index.d.ts +0 -2
  136. package/dist/types/excalidraw/fonts/Fonts.d.ts +1 -1
  137. package/dist/types/excalidraw/history.d.ts +30 -22
  138. package/dist/types/excalidraw/hooks/useEmitter.d.ts +1 -1
  139. package/dist/types/excalidraw/index.d.ts +9 -9
  140. package/dist/types/excalidraw/lasso/index.d.ts +1 -0
  141. package/dist/types/excalidraw/lasso/utils.d.ts +2 -1
  142. package/dist/types/excalidraw/renderer/helpers.d.ts +7 -2
  143. package/dist/types/excalidraw/scene/Renderer.d.ts +1 -2
  144. package/dist/types/excalidraw/scene/index.d.ts +2 -2
  145. package/dist/types/excalidraw/snapping.d.ts +2 -2
  146. package/dist/types/excalidraw/types.d.ts +25 -10
  147. package/dist/types/excalidraw/visualdebug.d.ts +1 -1
  148. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +3 -1
  149. package/dist/types/math/src/angle.d.ts +3 -1
  150. package/dist/types/math/src/constants.d.ts +3 -0
  151. package/dist/types/math/src/curve.d.ts +34 -0
  152. package/dist/types/math/src/ellipse.d.ts +3 -3
  153. package/dist/types/math/src/index.d.ts +1 -0
  154. package/dist/types/math/src/point.d.ts +3 -3
  155. package/dist/types/math/src/polygon.d.ts +2 -2
  156. package/dist/types/math/src/segment.d.ts +5 -5
  157. package/dist/types/math/src/utils.d.ts +2 -0
  158. package/dist/types/math/src/vector.d.ts +8 -2
  159. package/dist/types/utils/src/bbox.d.ts +1 -1
  160. package/dist/types/utils/src/index.d.ts +1 -1
  161. package/dist/types/utils/src/shape.d.ts +12 -12
  162. package/dist/types/utils/src/withinBounds.d.ts +1 -1
  163. package/history.ts +147 -110
  164. package/package.json +4 -4
  165. package/dist/dev/chunk-3HLOFB5F.js.map +0 -7
  166. package/dist/dev/chunk-PEI7EPYO.js.map +0 -7
  167. package/dist/dev/chunk-QQGTICP4.js +0 -7
  168. package/dist/dev/chunk-QQGTICP4.js.map +0 -7
  169. package/dist/prod/chunk-7HNFGNL7.js +0 -7
  170. package/dist/prod/chunk-KKQVTSHB.js +0 -33
  171. package/dist/prod/chunk-KZWZ7WHC.js +0 -12
  172. package/dist/prod/data/image-QD7FUQED.js +0 -1
  173. package/dist/types/element/src/Shape.d.ts +0 -17
  174. package/dist/types/element/src/ShapeCache.d.ts +0 -25
  175. package/dist/types/excalidraw/components/ButtonSelect.d.ts +0 -9
  176. package/dist/types/excalidraw/store.d.ts +0 -129
  177. package/dist/types/utils/src/collision.d.ts +0 -8
  178. /package/dist/dev/data/{image-XPEIZ6XQ.js.map → image-BBHDGXQ3.js.map} +0 -0
  179. /package/dist/dev/locales/{en-R455UJTM.js.map → en-2WXBKZE2.js.map} +0 -0
@@ -1,15 +1,15 @@
1
1
  /// <reference types="react" />
2
- import { LinearElementEditor } from "@excalidraw/element/linearElementEditor";
2
+ import { LinearElementEditor } from "@excalidraw/element";
3
3
  import type { Arrowhead, ExcalidrawBindableElement, ExcalidrawElement, ExcalidrawLinearElement } from "@excalidraw/element/types";
4
4
  import type { AppClassProperties, AppState, Primitive } from "../types";
5
5
  export declare const changeProperty: (elements: readonly ExcalidrawElement[], appState: AppState, callback: (element: ExcalidrawElement) => ExcalidrawElement, includeBoundText?: boolean) => ExcalidrawElement[];
6
- export declare const getFormValue: <T extends Primitive>(elements: readonly ExcalidrawElement[], appState: AppState, getAttribute: (element: ExcalidrawElement) => T, isRelevantElement: true | ((element: ExcalidrawElement) => boolean), defaultValue: T | ((isSomeElementSelected: boolean) => T)) => T;
6
+ export declare const getFormValue: <T extends Primitive>(elements: readonly ExcalidrawElement[], app: AppClassProperties, getAttribute: (element: ExcalidrawElement) => T, isRelevantElement: true | ((element: ExcalidrawElement) => boolean), defaultValue: T | ((isSomeElementSelected: boolean) => T)) => T;
7
7
  export declare const actionChangeStrokeColor: {
8
8
  name: "changeStrokeColor";
9
9
  label: string;
10
10
  trackEvent: false;
11
11
  perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any) => any;
12
- PanelComponent: ({ elements, appState, updateData, appProps }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
12
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
13
13
  } & {
14
14
  keyTest?: undefined;
15
15
  };
@@ -17,8 +17,16 @@ export declare const actionChangeBackgroundColor: {
17
17
  name: "changeBackgroundColor";
18
18
  label: string;
19
19
  trackEvent: false;
20
- perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any) => any;
21
- PanelComponent: ({ elements, appState, updateData, appProps }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
20
+ perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any, app: AppClassProperties) => {
21
+ appState: any;
22
+ captureUpdate: "EVENTUALLY";
23
+ elements?: undefined;
24
+ } | {
25
+ elements: ExcalidrawElement[];
26
+ appState: any;
27
+ captureUpdate: "IMMEDIATELY";
28
+ };
29
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
22
30
  } & {
23
31
  keyTest?: undefined;
24
32
  };
@@ -56,7 +64,7 @@ export declare const actionChangeFillStyle: {
56
64
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
57
65
  isBindingEnabled: boolean;
58
66
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
59
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
67
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
60
68
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
61
69
  frameRendering: {
62
70
  enabled: boolean;
@@ -92,7 +100,7 @@ export declare const actionChangeFillStyle: {
92
100
  currentItemEndArrowhead: Arrowhead | null;
93
101
  currentHoveredFontFamily: number | null;
94
102
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
95
- currentItemArrowType: "round" | "sharp" | "elbow";
103
+ currentItemArrowType: "sharp" | "round" | "elbow";
96
104
  viewBackgroundColor: string;
97
105
  scrollX: number;
98
106
  scrollY: number;
@@ -104,7 +112,7 @@ export declare const actionChangeFillStyle: {
104
112
  zoom: Readonly<{
105
113
  value: import("../types").NormalizedZoomValue;
106
114
  }>;
107
- openMenu: "shape" | "canvas" | null;
115
+ openMenu: "canvas" | "shape" | null;
108
116
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
109
117
  openSidebar: {
110
118
  name: string;
@@ -186,8 +194,7 @@ export declare const actionChangeFillStyle: {
186
194
  shown: true;
187
195
  data: import("../charts").Spreadsheet;
188
196
  };
189
- pendingImageElementId: string | null;
190
- showHyperlinkPopup: false | "editor" | "info";
197
+ showHyperlinkPopup: false | "info" | "editor";
191
198
  selectedLinearElement: LinearElementEditor | null;
192
199
  snapLines: readonly import("../snapping").SnapLine[];
193
200
  originSnapOffset: {
@@ -199,20 +206,18 @@ export declare const actionChangeFillStyle: {
199
206
  followedBy: Set<import("../types").SocketId>;
200
207
  isCropping: boolean;
201
208
  croppingElementId: string | null;
202
- searchMatches: readonly {
203
- id: string;
204
- focus: boolean;
205
- matchedLines: {
206
- offsetX: number;
207
- offsetY: number;
208
- width: number;
209
- height: number;
210
- }[];
211
- }[];
209
+ searchMatches: Readonly<{
210
+ focusedId: string | null;
211
+ matches: readonly import("../types").SearchMatch[];
212
+ }> | null;
213
+ activeLockedId: string | null;
214
+ lockedMultiSelections: {
215
+ [groupId: string]: true;
216
+ };
212
217
  };
213
218
  captureUpdate: "IMMEDIATELY";
214
219
  };
215
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
220
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
216
221
  } & {
217
222
  keyTest?: undefined;
218
223
  };
@@ -250,7 +255,7 @@ export declare const actionChangeStrokeWidth: {
250
255
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
251
256
  isBindingEnabled: boolean;
252
257
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
253
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
258
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
254
259
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
255
260
  frameRendering: {
256
261
  enabled: boolean;
@@ -286,7 +291,7 @@ export declare const actionChangeStrokeWidth: {
286
291
  currentItemEndArrowhead: Arrowhead | null;
287
292
  currentHoveredFontFamily: number | null;
288
293
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
289
- currentItemArrowType: "round" | "sharp" | "elbow";
294
+ currentItemArrowType: "sharp" | "round" | "elbow";
290
295
  viewBackgroundColor: string;
291
296
  scrollX: number;
292
297
  scrollY: number;
@@ -298,7 +303,7 @@ export declare const actionChangeStrokeWidth: {
298
303
  zoom: Readonly<{
299
304
  value: import("../types").NormalizedZoomValue;
300
305
  }>;
301
- openMenu: "shape" | "canvas" | null;
306
+ openMenu: "canvas" | "shape" | null;
302
307
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
303
308
  openSidebar: {
304
309
  name: string;
@@ -380,8 +385,7 @@ export declare const actionChangeStrokeWidth: {
380
385
  shown: true;
381
386
  data: import("../charts").Spreadsheet;
382
387
  };
383
- pendingImageElementId: string | null;
384
- showHyperlinkPopup: false | "editor" | "info";
388
+ showHyperlinkPopup: false | "info" | "editor";
385
389
  selectedLinearElement: LinearElementEditor | null;
386
390
  snapLines: readonly import("../snapping").SnapLine[];
387
391
  originSnapOffset: {
@@ -393,20 +397,18 @@ export declare const actionChangeStrokeWidth: {
393
397
  followedBy: Set<import("../types").SocketId>;
394
398
  isCropping: boolean;
395
399
  croppingElementId: string | null;
396
- searchMatches: readonly {
397
- id: string;
398
- focus: boolean;
399
- matchedLines: {
400
- offsetX: number;
401
- offsetY: number;
402
- width: number;
403
- height: number;
404
- }[];
405
- }[];
400
+ searchMatches: Readonly<{
401
+ focusedId: string | null;
402
+ matches: readonly import("../types").SearchMatch[];
403
+ }> | null;
404
+ activeLockedId: string | null;
405
+ lockedMultiSelections: {
406
+ [groupId: string]: true;
407
+ };
406
408
  };
407
409
  captureUpdate: "IMMEDIATELY";
408
410
  };
409
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
411
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
410
412
  } & {
411
413
  keyTest?: undefined;
412
414
  };
@@ -444,7 +446,7 @@ export declare const actionChangeSloppiness: {
444
446
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
445
447
  isBindingEnabled: boolean;
446
448
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
447
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
449
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
448
450
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
449
451
  frameRendering: {
450
452
  enabled: boolean;
@@ -480,7 +482,7 @@ export declare const actionChangeSloppiness: {
480
482
  currentItemEndArrowhead: Arrowhead | null;
481
483
  currentHoveredFontFamily: number | null;
482
484
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
483
- currentItemArrowType: "round" | "sharp" | "elbow";
485
+ currentItemArrowType: "sharp" | "round" | "elbow";
484
486
  viewBackgroundColor: string;
485
487
  scrollX: number;
486
488
  scrollY: number;
@@ -492,7 +494,7 @@ export declare const actionChangeSloppiness: {
492
494
  zoom: Readonly<{
493
495
  value: import("../types").NormalizedZoomValue;
494
496
  }>;
495
- openMenu: "shape" | "canvas" | null;
497
+ openMenu: "canvas" | "shape" | null;
496
498
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
497
499
  openSidebar: {
498
500
  name: string;
@@ -574,8 +576,7 @@ export declare const actionChangeSloppiness: {
574
576
  shown: true;
575
577
  data: import("../charts").Spreadsheet;
576
578
  };
577
- pendingImageElementId: string | null;
578
- showHyperlinkPopup: false | "editor" | "info";
579
+ showHyperlinkPopup: false | "info" | "editor";
579
580
  selectedLinearElement: LinearElementEditor | null;
580
581
  snapLines: readonly import("../snapping").SnapLine[];
581
582
  originSnapOffset: {
@@ -587,20 +588,18 @@ export declare const actionChangeSloppiness: {
587
588
  followedBy: Set<import("../types").SocketId>;
588
589
  isCropping: boolean;
589
590
  croppingElementId: string | null;
590
- searchMatches: readonly {
591
- id: string;
592
- focus: boolean;
593
- matchedLines: {
594
- offsetX: number;
595
- offsetY: number;
596
- width: number;
597
- height: number;
598
- }[];
599
- }[];
591
+ searchMatches: Readonly<{
592
+ focusedId: string | null;
593
+ matches: readonly import("../types").SearchMatch[];
594
+ }> | null;
595
+ activeLockedId: string | null;
596
+ lockedMultiSelections: {
597
+ [groupId: string]: true;
598
+ };
600
599
  };
601
600
  captureUpdate: "IMMEDIATELY";
602
601
  };
603
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
602
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
604
603
  } & {
605
604
  keyTest?: undefined;
606
605
  };
@@ -638,7 +637,7 @@ export declare const actionChangeStrokeStyle: {
638
637
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
639
638
  isBindingEnabled: boolean;
640
639
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
641
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
640
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
642
641
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
643
642
  frameRendering: {
644
643
  enabled: boolean;
@@ -674,7 +673,7 @@ export declare const actionChangeStrokeStyle: {
674
673
  currentItemEndArrowhead: Arrowhead | null;
675
674
  currentHoveredFontFamily: number | null;
676
675
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
677
- currentItemArrowType: "round" | "sharp" | "elbow";
676
+ currentItemArrowType: "sharp" | "round" | "elbow";
678
677
  viewBackgroundColor: string;
679
678
  scrollX: number;
680
679
  scrollY: number;
@@ -686,7 +685,7 @@ export declare const actionChangeStrokeStyle: {
686
685
  zoom: Readonly<{
687
686
  value: import("../types").NormalizedZoomValue;
688
687
  }>;
689
- openMenu: "shape" | "canvas" | null;
688
+ openMenu: "canvas" | "shape" | null;
690
689
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
691
690
  openSidebar: {
692
691
  name: string;
@@ -768,8 +767,7 @@ export declare const actionChangeStrokeStyle: {
768
767
  shown: true;
769
768
  data: import("../charts").Spreadsheet;
770
769
  };
771
- pendingImageElementId: string | null;
772
- showHyperlinkPopup: false | "editor" | "info";
770
+ showHyperlinkPopup: false | "info" | "editor";
773
771
  selectedLinearElement: LinearElementEditor | null;
774
772
  snapLines: readonly import("../snapping").SnapLine[];
775
773
  originSnapOffset: {
@@ -781,20 +779,18 @@ export declare const actionChangeStrokeStyle: {
781
779
  followedBy: Set<import("../types").SocketId>;
782
780
  isCropping: boolean;
783
781
  croppingElementId: string | null;
784
- searchMatches: readonly {
785
- id: string;
786
- focus: boolean;
787
- matchedLines: {
788
- offsetX: number;
789
- offsetY: number;
790
- width: number;
791
- height: number;
792
- }[];
793
- }[];
782
+ searchMatches: Readonly<{
783
+ focusedId: string | null;
784
+ matches: readonly import("../types").SearchMatch[];
785
+ }> | null;
786
+ activeLockedId: string | null;
787
+ lockedMultiSelections: {
788
+ [groupId: string]: true;
789
+ };
794
790
  };
795
791
  captureUpdate: "IMMEDIATELY";
796
792
  };
797
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
793
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
798
794
  } & {
799
795
  keyTest?: undefined;
800
796
  };
@@ -832,7 +828,7 @@ export declare const actionChangeOpacity: {
832
828
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
833
829
  isBindingEnabled: boolean;
834
830
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
835
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
831
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
836
832
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
837
833
  frameRendering: {
838
834
  enabled: boolean;
@@ -868,7 +864,7 @@ export declare const actionChangeOpacity: {
868
864
  currentItemEndArrowhead: Arrowhead | null;
869
865
  currentHoveredFontFamily: number | null;
870
866
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
871
- currentItemArrowType: "round" | "sharp" | "elbow";
867
+ currentItemArrowType: "sharp" | "round" | "elbow";
872
868
  viewBackgroundColor: string;
873
869
  scrollX: number;
874
870
  scrollY: number;
@@ -880,7 +876,7 @@ export declare const actionChangeOpacity: {
880
876
  zoom: Readonly<{
881
877
  value: import("../types").NormalizedZoomValue;
882
878
  }>;
883
- openMenu: "shape" | "canvas" | null;
879
+ openMenu: "canvas" | "shape" | null;
884
880
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
885
881
  openSidebar: {
886
882
  name: string;
@@ -962,8 +958,7 @@ export declare const actionChangeOpacity: {
962
958
  shown: true;
963
959
  data: import("../charts").Spreadsheet;
964
960
  };
965
- pendingImageElementId: string | null;
966
- showHyperlinkPopup: false | "editor" | "info";
961
+ showHyperlinkPopup: false | "info" | "editor";
967
962
  selectedLinearElement: LinearElementEditor | null;
968
963
  snapLines: readonly import("../snapping").SnapLine[];
969
964
  originSnapOffset: {
@@ -975,20 +970,18 @@ export declare const actionChangeOpacity: {
975
970
  followedBy: Set<import("../types").SocketId>;
976
971
  isCropping: boolean;
977
972
  croppingElementId: string | null;
978
- searchMatches: readonly {
979
- id: string;
980
- focus: boolean;
981
- matchedLines: {
982
- offsetX: number;
983
- offsetY: number;
984
- width: number;
985
- height: number;
986
- }[];
987
- }[];
973
+ searchMatches: Readonly<{
974
+ focusedId: string | null;
975
+ matches: readonly import("../types").SearchMatch[];
976
+ }> | null;
977
+ activeLockedId: string | null;
978
+ lockedMultiSelections: {
979
+ [groupId: string]: true;
980
+ };
988
981
  };
989
982
  captureUpdate: "IMMEDIATELY";
990
983
  };
991
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
984
+ PanelComponent: ({ app, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
992
985
  } & {
993
986
  keyTest?: undefined;
994
987
  };
@@ -1026,7 +1019,7 @@ export declare const actionChangeFontSize: {
1026
1019
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1027
1020
  isBindingEnabled: boolean;
1028
1021
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
1029
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
1022
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1030
1023
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1031
1024
  frameRendering: {
1032
1025
  enabled: boolean;
@@ -1062,7 +1055,7 @@ export declare const actionChangeFontSize: {
1062
1055
  currentItemEndArrowhead: Arrowhead | null;
1063
1056
  currentHoveredFontFamily: number | null;
1064
1057
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1065
- currentItemArrowType: "round" | "sharp" | "elbow";
1058
+ currentItemArrowType: "sharp" | "round" | "elbow";
1066
1059
  viewBackgroundColor: string;
1067
1060
  scrollX: number;
1068
1061
  scrollY: number;
@@ -1074,7 +1067,7 @@ export declare const actionChangeFontSize: {
1074
1067
  zoom: Readonly<{
1075
1068
  value: import("../types").NormalizedZoomValue;
1076
1069
  }>;
1077
- openMenu: "shape" | "canvas" | null;
1070
+ openMenu: "canvas" | "shape" | null;
1078
1071
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1079
1072
  openSidebar: {
1080
1073
  name: string;
@@ -1156,8 +1149,7 @@ export declare const actionChangeFontSize: {
1156
1149
  shown: true;
1157
1150
  data: import("../charts").Spreadsheet;
1158
1151
  };
1159
- pendingImageElementId: string | null;
1160
- showHyperlinkPopup: false | "editor" | "info";
1152
+ showHyperlinkPopup: false | "info" | "editor";
1161
1153
  selectedLinearElement: LinearElementEditor | null;
1162
1154
  snapLines: readonly import("../snapping").SnapLine[];
1163
1155
  originSnapOffset: {
@@ -1169,16 +1161,14 @@ export declare const actionChangeFontSize: {
1169
1161
  followedBy: Set<import("../types").SocketId>;
1170
1162
  isCropping: boolean;
1171
1163
  croppingElementId: string | null;
1172
- searchMatches: readonly {
1173
- id: string;
1174
- focus: boolean;
1175
- matchedLines: {
1176
- offsetX: number;
1177
- offsetY: number;
1178
- width: number;
1179
- height: number;
1180
- }[];
1181
- }[];
1164
+ searchMatches: Readonly<{
1165
+ focusedId: string | null;
1166
+ matches: readonly import("../types").SearchMatch[];
1167
+ }> | null;
1168
+ activeLockedId: string | null;
1169
+ lockedMultiSelections: {
1170
+ [groupId: string]: true;
1171
+ };
1182
1172
  };
1183
1173
  captureUpdate: "IMMEDIATELY";
1184
1174
  };
@@ -1221,7 +1211,7 @@ export declare const actionDecreaseFontSize: {
1221
1211
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1222
1212
  isBindingEnabled: boolean;
1223
1213
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
1224
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
1214
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1225
1215
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1226
1216
  frameRendering: {
1227
1217
  enabled: boolean;
@@ -1257,7 +1247,7 @@ export declare const actionDecreaseFontSize: {
1257
1247
  currentItemEndArrowhead: Arrowhead | null;
1258
1248
  currentHoveredFontFamily: number | null;
1259
1249
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1260
- currentItemArrowType: "round" | "sharp" | "elbow";
1250
+ currentItemArrowType: "sharp" | "round" | "elbow";
1261
1251
  viewBackgroundColor: string;
1262
1252
  scrollX: number;
1263
1253
  scrollY: number;
@@ -1269,7 +1259,7 @@ export declare const actionDecreaseFontSize: {
1269
1259
  zoom: Readonly<{
1270
1260
  value: import("../types").NormalizedZoomValue;
1271
1261
  }>;
1272
- openMenu: "shape" | "canvas" | null;
1262
+ openMenu: "canvas" | "shape" | null;
1273
1263
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1274
1264
  openSidebar: {
1275
1265
  name: string;
@@ -1351,8 +1341,7 @@ export declare const actionDecreaseFontSize: {
1351
1341
  shown: true;
1352
1342
  data: import("../charts").Spreadsheet;
1353
1343
  };
1354
- pendingImageElementId: string | null;
1355
- showHyperlinkPopup: false | "editor" | "info";
1344
+ showHyperlinkPopup: false | "info" | "editor";
1356
1345
  selectedLinearElement: LinearElementEditor | null;
1357
1346
  snapLines: readonly import("../snapping").SnapLine[];
1358
1347
  originSnapOffset: {
@@ -1364,22 +1353,20 @@ export declare const actionDecreaseFontSize: {
1364
1353
  followedBy: Set<import("../types").SocketId>;
1365
1354
  isCropping: boolean;
1366
1355
  croppingElementId: string | null;
1367
- searchMatches: readonly {
1368
- id: string;
1369
- focus: boolean;
1370
- matchedLines: {
1371
- offsetX: number;
1372
- offsetY: number;
1373
- width: number;
1374
- height: number;
1375
- }[];
1376
- }[];
1356
+ searchMatches: Readonly<{
1357
+ focusedId: string | null;
1358
+ matches: readonly import("../types").SearchMatch[];
1359
+ }> | null;
1360
+ activeLockedId: string | null;
1361
+ lockedMultiSelections: {
1362
+ [groupId: string]: true;
1363
+ };
1377
1364
  };
1378
1365
  captureUpdate: "IMMEDIATELY";
1379
1366
  };
1380
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1367
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
1381
1368
  } & {
1382
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1369
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
1383
1370
  };
1384
1371
  export declare const actionIncreaseFontSize: {
1385
1372
  name: "increaseFontSize";
@@ -1416,7 +1403,7 @@ export declare const actionIncreaseFontSize: {
1416
1403
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1417
1404
  isBindingEnabled: boolean;
1418
1405
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
1419
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
1406
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1420
1407
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1421
1408
  frameRendering: {
1422
1409
  enabled: boolean;
@@ -1452,7 +1439,7 @@ export declare const actionIncreaseFontSize: {
1452
1439
  currentItemEndArrowhead: Arrowhead | null;
1453
1440
  currentHoveredFontFamily: number | null;
1454
1441
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1455
- currentItemArrowType: "round" | "sharp" | "elbow";
1442
+ currentItemArrowType: "sharp" | "round" | "elbow";
1456
1443
  viewBackgroundColor: string;
1457
1444
  scrollX: number;
1458
1445
  scrollY: number;
@@ -1464,7 +1451,7 @@ export declare const actionIncreaseFontSize: {
1464
1451
  zoom: Readonly<{
1465
1452
  value: import("../types").NormalizedZoomValue;
1466
1453
  }>;
1467
- openMenu: "shape" | "canvas" | null;
1454
+ openMenu: "canvas" | "shape" | null;
1468
1455
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1469
1456
  openSidebar: {
1470
1457
  name: string;
@@ -1546,8 +1533,7 @@ export declare const actionIncreaseFontSize: {
1546
1533
  shown: true;
1547
1534
  data: import("../charts").Spreadsheet;
1548
1535
  };
1549
- pendingImageElementId: string | null;
1550
- showHyperlinkPopup: false | "editor" | "info";
1536
+ showHyperlinkPopup: false | "info" | "editor";
1551
1537
  selectedLinearElement: LinearElementEditor | null;
1552
1538
  snapLines: readonly import("../snapping").SnapLine[];
1553
1539
  originSnapOffset: {
@@ -1559,22 +1545,20 @@ export declare const actionIncreaseFontSize: {
1559
1545
  followedBy: Set<import("../types").SocketId>;
1560
1546
  isCropping: boolean;
1561
1547
  croppingElementId: string | null;
1562
- searchMatches: readonly {
1563
- id: string;
1564
- focus: boolean;
1565
- matchedLines: {
1566
- offsetX: number;
1567
- offsetY: number;
1568
- width: number;
1569
- height: number;
1570
- }[];
1571
- }[];
1548
+ searchMatches: Readonly<{
1549
+ focusedId: string | null;
1550
+ matches: readonly import("../types").SearchMatch[];
1551
+ }> | null;
1552
+ activeLockedId: string | null;
1553
+ lockedMultiSelections: {
1554
+ [groupId: string]: true;
1555
+ };
1572
1556
  };
1573
1557
  captureUpdate: "IMMEDIATELY";
1574
1558
  };
1575
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
1559
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
1576
1560
  } & {
1577
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
1561
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
1578
1562
  };
1579
1563
  export declare const actionChangeFontFamily: {
1580
1564
  name: "changeFontFamily";
@@ -1582,8 +1566,8 @@ export declare const actionChangeFontFamily: {
1582
1566
  trackEvent: false;
1583
1567
  perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: any, app: AppClassProperties) => {
1584
1568
  appState: {
1585
- currentHoveredFontFamily: number | null;
1586
1569
  currentItemFontFamily: number;
1570
+ currentHoveredFontFamily: number | null;
1587
1571
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1588
1572
  contextMenu: {
1589
1573
  items: import("../components/ContextMenu").ContextMenuItems;
@@ -1611,7 +1595,7 @@ export declare const actionChangeFontFamily: {
1611
1595
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1612
1596
  isBindingEnabled: boolean;
1613
1597
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
1614
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
1598
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1615
1599
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1616
1600
  frameRendering: {
1617
1601
  enabled: boolean;
@@ -1646,7 +1630,7 @@ export declare const actionChangeFontFamily: {
1646
1630
  currentItemStartArrowhead: Arrowhead | null;
1647
1631
  currentItemEndArrowhead: Arrowhead | null;
1648
1632
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1649
- currentItemArrowType: "round" | "sharp" | "elbow";
1633
+ currentItemArrowType: "sharp" | "round" | "elbow";
1650
1634
  viewBackgroundColor: string;
1651
1635
  scrollX: number;
1652
1636
  scrollY: number;
@@ -1658,7 +1642,7 @@ export declare const actionChangeFontFamily: {
1658
1642
  zoom: Readonly<{
1659
1643
  value: import("../types").NormalizedZoomValue;
1660
1644
  }>;
1661
- openMenu: "shape" | "canvas" | null;
1645
+ openMenu: "canvas" | "shape" | null;
1662
1646
  openSidebar: {
1663
1647
  name: string;
1664
1648
  tab?: string | undefined;
@@ -1739,8 +1723,7 @@ export declare const actionChangeFontFamily: {
1739
1723
  shown: true;
1740
1724
  data: import("../charts").Spreadsheet;
1741
1725
  };
1742
- pendingImageElementId: string | null;
1743
- showHyperlinkPopup: false | "editor" | "info";
1726
+ showHyperlinkPopup: false | "info" | "editor";
1744
1727
  selectedLinearElement: LinearElementEditor | null;
1745
1728
  snapLines: readonly import("../snapping").SnapLine[];
1746
1729
  originSnapOffset: {
@@ -1752,23 +1735,21 @@ export declare const actionChangeFontFamily: {
1752
1735
  followedBy: Set<import("../types").SocketId>;
1753
1736
  isCropping: boolean;
1754
1737
  croppingElementId: string | null;
1755
- searchMatches: readonly {
1756
- id: string;
1757
- focus: boolean;
1758
- matchedLines: {
1759
- offsetX: number;
1760
- offsetY: number;
1761
- width: number;
1762
- height: number;
1763
- }[];
1764
- }[];
1738
+ searchMatches: Readonly<{
1739
+ focusedId: string | null;
1740
+ matches: readonly import("../types").SearchMatch[];
1741
+ }> | null;
1742
+ activeLockedId: string | null;
1743
+ lockedMultiSelections: {
1744
+ [groupId: string]: true;
1745
+ };
1765
1746
  };
1766
1747
  captureUpdate: "IMMEDIATELY" | "EVENTUALLY";
1767
1748
  } | {
1768
1749
  elements: ExcalidrawElement[];
1769
1750
  appState: {
1770
- currentHoveredFontFamily: number | null;
1771
1751
  currentItemFontFamily: number;
1752
+ currentHoveredFontFamily: number | null;
1772
1753
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
1773
1754
  contextMenu: {
1774
1755
  items: import("../components/ContextMenu").ContextMenuItems;
@@ -1796,7 +1777,7 @@ export declare const actionChangeFontFamily: {
1796
1777
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1797
1778
  isBindingEnabled: boolean;
1798
1779
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
1799
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
1780
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1800
1781
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1801
1782
  frameRendering: {
1802
1783
  enabled: boolean;
@@ -1831,7 +1812,7 @@ export declare const actionChangeFontFamily: {
1831
1812
  currentItemStartArrowhead: Arrowhead | null;
1832
1813
  currentItemEndArrowhead: Arrowhead | null;
1833
1814
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
1834
- currentItemArrowType: "round" | "sharp" | "elbow";
1815
+ currentItemArrowType: "sharp" | "round" | "elbow";
1835
1816
  viewBackgroundColor: string;
1836
1817
  scrollX: number;
1837
1818
  scrollY: number;
@@ -1843,7 +1824,7 @@ export declare const actionChangeFontFamily: {
1843
1824
  zoom: Readonly<{
1844
1825
  value: import("../types").NormalizedZoomValue;
1845
1826
  }>;
1846
- openMenu: "shape" | "canvas" | null;
1827
+ openMenu: "canvas" | "shape" | null;
1847
1828
  openSidebar: {
1848
1829
  name: string;
1849
1830
  tab?: string | undefined;
@@ -1924,8 +1905,7 @@ export declare const actionChangeFontFamily: {
1924
1905
  shown: true;
1925
1906
  data: import("../charts").Spreadsheet;
1926
1907
  };
1927
- pendingImageElementId: string | null;
1928
- showHyperlinkPopup: false | "editor" | "info";
1908
+ showHyperlinkPopup: false | "info" | "editor";
1929
1909
  selectedLinearElement: LinearElementEditor | null;
1930
1910
  snapLines: readonly import("../snapping").SnapLine[];
1931
1911
  originSnapOffset: {
@@ -1937,16 +1917,14 @@ export declare const actionChangeFontFamily: {
1937
1917
  followedBy: Set<import("../types").SocketId>;
1938
1918
  isCropping: boolean;
1939
1919
  croppingElementId: string | null;
1940
- searchMatches: readonly {
1941
- id: string;
1942
- focus: boolean;
1943
- matchedLines: {
1944
- offsetX: number;
1945
- offsetY: number;
1946
- width: number;
1947
- height: number;
1948
- }[];
1949
- }[];
1920
+ searchMatches: Readonly<{
1921
+ focusedId: string | null;
1922
+ matches: readonly import("../types").SearchMatch[];
1923
+ }> | null;
1924
+ activeLockedId: string | null;
1925
+ lockedMultiSelections: {
1926
+ [groupId: string]: true;
1927
+ };
1950
1928
  };
1951
1929
  captureUpdate: "NEVER";
1952
1930
  };
@@ -1988,7 +1966,7 @@ export declare const actionChangeTextAlign: {
1988
1966
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
1989
1967
  isBindingEnabled: boolean;
1990
1968
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
1991
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
1969
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
1992
1970
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
1993
1971
  frameRendering: {
1994
1972
  enabled: boolean;
@@ -2024,7 +2002,7 @@ export declare const actionChangeTextAlign: {
2024
2002
  currentItemEndArrowhead: Arrowhead | null;
2025
2003
  currentHoveredFontFamily: number | null;
2026
2004
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
2027
- currentItemArrowType: "round" | "sharp" | "elbow";
2005
+ currentItemArrowType: "sharp" | "round" | "elbow";
2028
2006
  viewBackgroundColor: string;
2029
2007
  scrollX: number;
2030
2008
  scrollY: number;
@@ -2036,7 +2014,7 @@ export declare const actionChangeTextAlign: {
2036
2014
  zoom: Readonly<{
2037
2015
  value: import("../types").NormalizedZoomValue;
2038
2016
  }>;
2039
- openMenu: "shape" | "canvas" | null;
2017
+ openMenu: "canvas" | "shape" | null;
2040
2018
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
2041
2019
  openSidebar: {
2042
2020
  name: string;
@@ -2118,8 +2096,7 @@ export declare const actionChangeTextAlign: {
2118
2096
  shown: true;
2119
2097
  data: import("../charts").Spreadsheet;
2120
2098
  };
2121
- pendingImageElementId: string | null;
2122
- showHyperlinkPopup: false | "editor" | "info";
2099
+ showHyperlinkPopup: false | "info" | "editor";
2123
2100
  selectedLinearElement: LinearElementEditor | null;
2124
2101
  snapLines: readonly import("../snapping").SnapLine[];
2125
2102
  originSnapOffset: {
@@ -2131,16 +2108,14 @@ export declare const actionChangeTextAlign: {
2131
2108
  followedBy: Set<import("../types").SocketId>;
2132
2109
  isCropping: boolean;
2133
2110
  croppingElementId: string | null;
2134
- searchMatches: readonly {
2135
- id: string;
2136
- focus: boolean;
2137
- matchedLines: {
2138
- offsetX: number;
2139
- offsetY: number;
2140
- width: number;
2141
- height: number;
2142
- }[];
2143
- }[];
2111
+ searchMatches: Readonly<{
2112
+ focusedId: string | null;
2113
+ matches: readonly import("../types").SearchMatch[];
2114
+ }> | null;
2115
+ activeLockedId: string | null;
2116
+ lockedMultiSelections: {
2117
+ [groupId: string]: true;
2118
+ };
2144
2119
  };
2145
2120
  captureUpdate: "IMMEDIATELY";
2146
2121
  };
@@ -2183,7 +2158,7 @@ export declare const actionChangeVerticalAlign: {
2183
2158
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2184
2159
  isBindingEnabled: boolean;
2185
2160
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
2186
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
2161
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
2187
2162
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
2188
2163
  frameRendering: {
2189
2164
  enabled: boolean;
@@ -2220,7 +2195,7 @@ export declare const actionChangeVerticalAlign: {
2220
2195
  currentItemEndArrowhead: Arrowhead | null;
2221
2196
  currentHoveredFontFamily: number | null;
2222
2197
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
2223
- currentItemArrowType: "round" | "sharp" | "elbow";
2198
+ currentItemArrowType: "sharp" | "round" | "elbow";
2224
2199
  viewBackgroundColor: string;
2225
2200
  scrollX: number;
2226
2201
  scrollY: number;
@@ -2232,7 +2207,7 @@ export declare const actionChangeVerticalAlign: {
2232
2207
  zoom: Readonly<{
2233
2208
  value: import("../types").NormalizedZoomValue;
2234
2209
  }>;
2235
- openMenu: "shape" | "canvas" | null;
2210
+ openMenu: "canvas" | "shape" | null;
2236
2211
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
2237
2212
  openSidebar: {
2238
2213
  name: string;
@@ -2314,8 +2289,7 @@ export declare const actionChangeVerticalAlign: {
2314
2289
  shown: true;
2315
2290
  data: import("../charts").Spreadsheet;
2316
2291
  };
2317
- pendingImageElementId: string | null;
2318
- showHyperlinkPopup: false | "editor" | "info";
2292
+ showHyperlinkPopup: false | "info" | "editor";
2319
2293
  selectedLinearElement: LinearElementEditor | null;
2320
2294
  snapLines: readonly import("../snapping").SnapLine[];
2321
2295
  originSnapOffset: {
@@ -2327,16 +2301,14 @@ export declare const actionChangeVerticalAlign: {
2327
2301
  followedBy: Set<import("../types").SocketId>;
2328
2302
  isCropping: boolean;
2329
2303
  croppingElementId: string | null;
2330
- searchMatches: readonly {
2331
- id: string;
2332
- focus: boolean;
2333
- matchedLines: {
2334
- offsetX: number;
2335
- offsetY: number;
2336
- width: number;
2337
- height: number;
2338
- }[];
2339
- }[];
2304
+ searchMatches: Readonly<{
2305
+ focusedId: string | null;
2306
+ matches: readonly import("../types").SearchMatch[];
2307
+ }> | null;
2308
+ activeLockedId: string | null;
2309
+ lockedMultiSelections: {
2310
+ [groupId: string]: true;
2311
+ };
2340
2312
  };
2341
2313
  captureUpdate: "IMMEDIATELY";
2342
2314
  };
@@ -2378,7 +2350,7 @@ export declare const actionChangeRoundness: {
2378
2350
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2379
2351
  isBindingEnabled: boolean;
2380
2352
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
2381
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
2353
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
2382
2354
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
2383
2355
  frameRendering: {
2384
2356
  enabled: boolean;
@@ -2414,7 +2386,7 @@ export declare const actionChangeRoundness: {
2414
2386
  currentItemStartArrowhead: Arrowhead | null;
2415
2387
  currentItemEndArrowhead: Arrowhead | null;
2416
2388
  currentHoveredFontFamily: number | null;
2417
- currentItemArrowType: "round" | "sharp" | "elbow";
2389
+ currentItemArrowType: "sharp" | "round" | "elbow";
2418
2390
  viewBackgroundColor: string;
2419
2391
  scrollX: number;
2420
2392
  scrollY: number;
@@ -2426,7 +2398,7 @@ export declare const actionChangeRoundness: {
2426
2398
  zoom: Readonly<{
2427
2399
  value: import("../types").NormalizedZoomValue;
2428
2400
  }>;
2429
- openMenu: "shape" | "canvas" | null;
2401
+ openMenu: "canvas" | "shape" | null;
2430
2402
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
2431
2403
  openSidebar: {
2432
2404
  name: string;
@@ -2508,8 +2480,7 @@ export declare const actionChangeRoundness: {
2508
2480
  shown: true;
2509
2481
  data: import("../charts").Spreadsheet;
2510
2482
  };
2511
- pendingImageElementId: string | null;
2512
- showHyperlinkPopup: false | "editor" | "info";
2483
+ showHyperlinkPopup: false | "info" | "editor";
2513
2484
  selectedLinearElement: LinearElementEditor | null;
2514
2485
  snapLines: readonly import("../snapping").SnapLine[];
2515
2486
  originSnapOffset: {
@@ -2521,20 +2492,18 @@ export declare const actionChangeRoundness: {
2521
2492
  followedBy: Set<import("../types").SocketId>;
2522
2493
  isCropping: boolean;
2523
2494
  croppingElementId: string | null;
2524
- searchMatches: readonly {
2525
- id: string;
2526
- focus: boolean;
2527
- matchedLines: {
2528
- offsetX: number;
2529
- offsetY: number;
2530
- width: number;
2531
- height: number;
2532
- }[];
2533
- }[];
2495
+ searchMatches: Readonly<{
2496
+ focusedId: string | null;
2497
+ matches: readonly import("../types").SearchMatch[];
2498
+ }> | null;
2499
+ activeLockedId: string | null;
2500
+ lockedMultiSelections: {
2501
+ [groupId: string]: true;
2502
+ };
2534
2503
  };
2535
2504
  captureUpdate: "IMMEDIATELY";
2536
2505
  };
2537
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
2506
+ PanelComponent: ({ elements, appState, updateData, app, renderAction }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
2538
2507
  } & {
2539
2508
  keyTest?: undefined;
2540
2509
  };
@@ -2574,7 +2543,7 @@ export declare const actionChangeArrowhead: {
2574
2543
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2575
2544
  isBindingEnabled: boolean;
2576
2545
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
2577
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
2546
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
2578
2547
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
2579
2548
  frameRendering: {
2580
2549
  enabled: boolean;
@@ -2611,7 +2580,7 @@ export declare const actionChangeArrowhead: {
2611
2580
  currentItemEndArrowhead: Arrowhead | null;
2612
2581
  currentHoveredFontFamily: number | null;
2613
2582
  currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
2614
- currentItemArrowType: "round" | "sharp" | "elbow";
2583
+ currentItemArrowType: "sharp" | "round" | "elbow";
2615
2584
  viewBackgroundColor: string;
2616
2585
  scrollX: number;
2617
2586
  scrollY: number;
@@ -2623,7 +2592,7 @@ export declare const actionChangeArrowhead: {
2623
2592
  zoom: Readonly<{
2624
2593
  value: import("../types").NormalizedZoomValue;
2625
2594
  }>;
2626
- openMenu: "shape" | "canvas" | null;
2595
+ openMenu: "canvas" | "shape" | null;
2627
2596
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
2628
2597
  openSidebar: {
2629
2598
  name: string;
@@ -2705,8 +2674,7 @@ export declare const actionChangeArrowhead: {
2705
2674
  shown: true;
2706
2675
  data: import("../charts").Spreadsheet;
2707
2676
  };
2708
- pendingImageElementId: string | null;
2709
- showHyperlinkPopup: false | "editor" | "info";
2677
+ showHyperlinkPopup: false | "info" | "editor";
2710
2678
  selectedLinearElement: LinearElementEditor | null;
2711
2679
  snapLines: readonly import("../snapping").SnapLine[];
2712
2680
  originSnapOffset: {
@@ -2718,20 +2686,18 @@ export declare const actionChangeArrowhead: {
2718
2686
  followedBy: Set<import("../types").SocketId>;
2719
2687
  isCropping: boolean;
2720
2688
  croppingElementId: string | null;
2721
- searchMatches: readonly {
2722
- id: string;
2723
- focus: boolean;
2724
- matchedLines: {
2725
- offsetX: number;
2726
- offsetY: number;
2727
- width: number;
2728
- height: number;
2729
- }[];
2730
- }[];
2689
+ searchMatches: Readonly<{
2690
+ focusedId: string | null;
2691
+ matches: readonly import("../types").SearchMatch[];
2692
+ }> | null;
2693
+ activeLockedId: string | null;
2694
+ lockedMultiSelections: {
2695
+ [groupId: string]: true;
2696
+ };
2731
2697
  };
2732
2698
  captureUpdate: "IMMEDIATELY";
2733
2699
  };
2734
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
2700
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
2735
2701
  } & {
2736
2702
  keyTest?: undefined;
2737
2703
  };
@@ -2769,7 +2735,7 @@ export declare const actionChangeArrowType: {
2769
2735
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
2770
2736
  isBindingEnabled: boolean;
2771
2737
  startBoundElement: import("@excalidraw/element/types").NonDeleted<ExcalidrawBindableElement> | null;
2772
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
2738
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
2773
2739
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
2774
2740
  frameRendering: {
2775
2741
  enabled: boolean;
@@ -2817,7 +2783,7 @@ export declare const actionChangeArrowType: {
2817
2783
  zoom: Readonly<{
2818
2784
  value: import("../types").NormalizedZoomValue;
2819
2785
  }>;
2820
- openMenu: "shape" | "canvas" | null;
2786
+ openMenu: "canvas" | "shape" | null;
2821
2787
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
2822
2788
  openSidebar: {
2823
2789
  name: string;
@@ -2899,8 +2865,7 @@ export declare const actionChangeArrowType: {
2899
2865
  shown: true;
2900
2866
  data: import("../charts").Spreadsheet;
2901
2867
  };
2902
- pendingImageElementId: string | null;
2903
- showHyperlinkPopup: false | "editor" | "info";
2868
+ showHyperlinkPopup: false | "info" | "editor";
2904
2869
  selectedLinearElement: LinearElementEditor | null;
2905
2870
  snapLines: readonly import("../snapping").SnapLine[];
2906
2871
  originSnapOffset: {
@@ -2912,20 +2877,18 @@ export declare const actionChangeArrowType: {
2912
2877
  followedBy: Set<import("../types").SocketId>;
2913
2878
  isCropping: boolean;
2914
2879
  croppingElementId: string | null;
2915
- searchMatches: readonly {
2916
- id: string;
2917
- focus: boolean;
2918
- matchedLines: {
2919
- offsetX: number;
2920
- offsetY: number;
2921
- width: number;
2922
- height: number;
2923
- }[];
2924
- }[];
2880
+ searchMatches: Readonly<{
2881
+ focusedId: string | null;
2882
+ matches: readonly import("../types").SearchMatch[];
2883
+ }> | null;
2884
+ activeLockedId: string | null;
2885
+ lockedMultiSelections: {
2886
+ [groupId: string]: true;
2887
+ };
2925
2888
  };
2926
2889
  captureUpdate: "IMMEDIATELY";
2927
2890
  };
2928
- PanelComponent: ({ elements, appState, updateData }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
2891
+ PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
2929
2892
  } & {
2930
2893
  keyTest?: undefined;
2931
2894
  };