@excalidraw/excalidraw 0.18.0-58f7d33 → 0.18.0-6d75c4b34

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 (167) hide show
  1. package/dist/dev/chunk-CBGOW5JB.js +5669 -0
  2. package/dist/dev/chunk-CBGOW5JB.js.map +7 -0
  3. package/dist/dev/chunk-CP5DND7P.js +7 -0
  4. package/dist/dev/chunk-CP5DND7P.js.map +7 -0
  5. package/dist/dev/{chunk-X3RYHLJU.js → chunk-QF5FRM6O.js} +15 -5
  6. package/dist/dev/chunk-QF5FRM6O.js.map +7 -0
  7. package/dist/dev/data/{image-U2IPNUKJ.js → image-SURZSZNX.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 +8406 -9312
  11. package/dist/dev/index.js.map +4 -4
  12. package/dist/dev/locales/{en-CKWC2GMK.js → en-SMAPCEOQ.js} +2 -2
  13. package/dist/dev/subset-shared.chunk.js +1 -1
  14. package/dist/dev/subset-worker.chunk.js +1 -1
  15. package/dist/prod/chunk-A66AFZZU.js +7 -0
  16. package/dist/prod/chunk-I4UNSFV6.js +12 -0
  17. package/dist/prod/chunk-IRHK23LL.js +4 -0
  18. package/dist/prod/data/image-HXEZYJPQ.js +1 -0
  19. package/dist/prod/index.css +1 -1
  20. package/dist/prod/index.js +25 -17
  21. package/dist/prod/locales/{en-SBO6ZHT2.js → en-TYY6KWIJ.js} +1 -1
  22. package/dist/prod/subset-shared.chunk.js +1 -1
  23. package/dist/prod/subset-worker.chunk.js +1 -1
  24. package/dist/types/common/src/constants.d.ts +20 -3
  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 +17 -4
  30. package/dist/types/{excalidraw/scene → element/src}/Scene.d.ts +11 -14
  31. package/dist/types/element/src/align.d.ts +3 -3
  32. package/dist/types/element/src/binding.d.ts +26 -16
  33. package/dist/types/element/src/bounds.d.ts +13 -5
  34. package/dist/types/element/src/collision.d.ts +18 -12
  35. package/dist/types/element/src/cropElement.d.ts +1 -1
  36. package/dist/types/{excalidraw/change.d.ts → element/src/delta.d.ts} +63 -38
  37. package/dist/types/element/src/distance.d.ts +2 -2
  38. package/dist/types/element/src/dragElements.d.ts +3 -2
  39. package/dist/types/element/src/duplicate.d.ts +10 -13
  40. package/dist/types/element/src/elbowArrow.d.ts +1 -1
  41. package/dist/types/element/src/flowchart.d.ts +3 -2
  42. package/dist/types/element/src/fractionalIndex.d.ts +9 -3
  43. package/dist/types/element/src/frame.d.ts +5 -4
  44. package/dist/types/element/src/index.d.ts +43 -2
  45. package/dist/types/element/src/linearElementEditor.d.ts +22 -36
  46. package/dist/types/element/src/mutateElement.d.ts +11 -3
  47. package/dist/types/element/src/newElement.d.ts +4 -3
  48. package/dist/types/element/src/resizeElements.d.ts +5 -4
  49. package/dist/types/element/src/selection.d.ts +11 -5
  50. package/dist/types/element/src/shape.d.ts +42 -0
  51. package/dist/types/element/src/sizeHelpers.d.ts +2 -2
  52. package/dist/types/element/src/store.d.ts +232 -0
  53. package/dist/types/element/src/textElement.d.ts +4 -3
  54. package/dist/types/element/src/typeChecks.d.ts +19 -1
  55. package/dist/types/element/src/types.d.ts +15 -2
  56. package/dist/types/element/src/utils.d.ts +16 -6
  57. package/dist/types/element/src/zindex.d.ts +1 -1
  58. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +42 -51
  59. package/dist/types/excalidraw/actions/actionBoundText.d.ts +28 -34
  60. package/dist/types/excalidraw/actions/actionCanvas.d.ts +188 -227
  61. package/dist/types/excalidraw/actions/actionClipboard.d.ts +81 -98
  62. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +14 -17
  63. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +37 -45
  64. package/dist/types/excalidraw/actions/actionElementLink.d.ts +13 -16
  65. package/dist/types/excalidraw/actions/actionElementLock.d.ts +43 -50
  66. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +14 -17
  67. package/dist/types/excalidraw/actions/actionExport.d.ts +136 -163
  68. package/dist/types/excalidraw/actions/actionFinalize.d.ts +71 -37
  69. package/dist/types/excalidraw/actions/actionFrame.d.ts +103 -115
  70. package/dist/types/excalidraw/actions/actionGroup.d.ts +28 -34
  71. package/dist/types/excalidraw/actions/actionHistory.d.ts +1 -2
  72. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +506 -16
  73. package/dist/types/excalidraw/actions/actionLink.d.ts +13 -16
  74. package/dist/types/excalidraw/actions/actionMenu.d.ts +39 -48
  75. package/dist/types/excalidraw/actions/actionNavigate.d.ts +27 -33
  76. package/dist/types/excalidraw/actions/actionProperties.d.ts +203 -240
  77. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +13 -16
  78. package/dist/types/excalidraw/actions/actionStyles.d.ts +14 -17
  79. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +14 -17
  80. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +14 -17
  81. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +13 -189
  82. package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +19 -0
  83. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +14 -17
  84. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +14 -17
  85. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +14 -17
  86. package/dist/types/excalidraw/actions/types.d.ts +4 -3
  87. package/dist/types/excalidraw/appState.d.ts +19 -10
  88. package/dist/types/excalidraw/components/App.d.ts +30 -19
  89. package/dist/types/excalidraw/components/ButtonIcon.d.ts +1 -0
  90. package/dist/types/excalidraw/components/ColorPicker/ColorInput.d.ts +2 -1
  91. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +5 -1
  92. package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +1 -1
  93. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +2 -3
  94. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +2 -3
  95. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +2 -2
  96. package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +1 -1
  97. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -1
  98. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +1 -1
  99. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +23 -0
  100. package/dist/types/excalidraw/components/ElementLinkDialog.d.ts +4 -3
  101. package/dist/types/excalidraw/components/{ButtonIconSelect.d.ts → RadioSelection.d.ts} +1 -1
  102. package/dist/types/excalidraw/components/Range.d.ts +3 -3
  103. package/dist/types/excalidraw/components/Stats/Angle.d.ts +1 -1
  104. package/dist/types/excalidraw/components/Stats/CanvasGrid.d.ts +1 -1
  105. package/dist/types/excalidraw/components/Stats/Collapsible.d.ts +2 -1
  106. package/dist/types/excalidraw/components/Stats/Dimension.d.ts +1 -1
  107. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +12 -2
  108. package/dist/types/excalidraw/components/Stats/FontSize.d.ts +1 -1
  109. package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +1 -1
  110. package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +1 -1
  111. package/dist/types/excalidraw/components/Stats/MultiFontSize.d.ts +1 -1
  112. package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +1 -1
  113. package/dist/types/excalidraw/components/Stats/Position.d.ts +1 -1
  114. package/dist/types/excalidraw/components/Stats/utils.d.ts +4 -11
  115. package/dist/types/excalidraw/components/UnlockPopup.d.ts +8 -0
  116. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +1 -0
  117. package/dist/types/excalidraw/components/hyperlink/Hyperlink.d.ts +3 -2
  118. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +2 -1
  119. package/dist/types/excalidraw/components/icons.d.ts +3 -0
  120. package/dist/types/excalidraw/components/shapes.d.ts +1 -1
  121. package/dist/types/excalidraw/data/transform.d.ts +1 -1
  122. package/dist/types/excalidraw/editor-jotai.d.ts +6 -6
  123. package/dist/types/excalidraw/eraser/index.d.ts +0 -2
  124. package/dist/types/excalidraw/fonts/Fonts.d.ts +1 -1
  125. package/dist/types/excalidraw/history.d.ts +30 -22
  126. package/dist/types/excalidraw/hooks/useEmitter.d.ts +1 -1
  127. package/dist/types/excalidraw/index.d.ts +9 -9
  128. package/dist/types/excalidraw/lasso/index.d.ts +1 -0
  129. package/dist/types/excalidraw/lasso/utils.d.ts +2 -1
  130. package/dist/types/excalidraw/renderer/helpers.d.ts +7 -2
  131. package/dist/types/excalidraw/scene/Renderer.d.ts +1 -2
  132. package/dist/types/excalidraw/scene/index.d.ts +2 -2
  133. package/dist/types/excalidraw/scene/scrollbars.d.ts +2 -3
  134. package/dist/types/excalidraw/scene/types.d.ts +2 -0
  135. package/dist/types/excalidraw/snapping.d.ts +2 -2
  136. package/dist/types/excalidraw/types.d.ts +30 -10
  137. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +3 -1
  138. package/dist/types/math/src/angle.d.ts +2 -0
  139. package/dist/types/math/src/constants.d.ts +3 -0
  140. package/dist/types/math/src/curve.d.ts +34 -0
  141. package/dist/types/math/src/index.d.ts +1 -0
  142. package/dist/types/math/src/point.d.ts +1 -1
  143. package/dist/types/math/src/rectangle.d.ts +2 -0
  144. package/dist/types/math/src/vector.d.ts +8 -2
  145. package/dist/types/utils/src/bbox.d.ts +1 -1
  146. package/dist/types/utils/src/index.d.ts +1 -1
  147. package/dist/types/utils/src/withinBounds.d.ts +1 -1
  148. package/history.ts +147 -110
  149. package/package.json +12 -9
  150. package/dist/dev/chunk-KKJLIRJU.js +0 -7
  151. package/dist/dev/chunk-KKJLIRJU.js.map +0 -7
  152. package/dist/dev/chunk-LEJJ2YZY.js +0 -18711
  153. package/dist/dev/chunk-LEJJ2YZY.js.map +0 -7
  154. package/dist/dev/chunk-X3RYHLJU.js.map +0 -7
  155. package/dist/prod/chunk-IUH5AXLB.js +0 -12
  156. package/dist/prod/chunk-QUX7WTVH.js +0 -7
  157. package/dist/prod/chunk-RQK6WG4F.js +0 -33
  158. package/dist/prod/data/image-UQDATCXC.js +0 -1
  159. package/dist/types/element/src/Shape.d.ts +0 -17
  160. package/dist/types/element/src/ShapeCache.d.ts +0 -25
  161. package/dist/types/element/src/shapes.d.ts +0 -23
  162. package/dist/types/excalidraw/components/ButtonSelect.d.ts +0 -9
  163. package/dist/types/excalidraw/store.d.ts +0 -129
  164. package/dist/types/excalidraw/visualdebug.d.ts +0 -41
  165. package/dist/types/utils/src/collision.d.ts +0 -8
  166. /package/dist/dev/data/{image-U2IPNUKJ.js.map → image-SURZSZNX.js.map} +0 -0
  167. /package/dist/dev/locales/{en-CKWC2GMK.js.map → en-SMAPCEOQ.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
  import type { AppClassProperties, AppState } from "../types";
5
5
  export declare const actionDeleteSelected: {
@@ -24,7 +24,7 @@ export declare const actionDeleteSelected: {
24
24
  errorMessage: import("react").ReactNode;
25
25
  activeEmbeddable: {
26
26
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
27
- state: "hover" | "active";
27
+ state: "active" | "hover";
28
28
  } | null;
29
29
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
30
30
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -32,7 +32,7 @@ export declare const actionDeleteSelected: {
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;
@@ -80,7 +80,7 @@ export declare const actionDeleteSelected: {
80
80
  zoom: Readonly<{
81
81
  value: import("../types").NormalizedZoomValue;
82
82
  }>;
83
- openMenu: "shape" | "canvas" | null;
83
+ openMenu: "canvas" | "shape" | null;
84
84
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
85
85
  openSidebar: {
86
86
  name: string;
@@ -90,7 +90,7 @@ export declare const actionDeleteSelected: {
90
90
  name: "imageExport" | "help" | "jsonExport";
91
91
  } | {
92
92
  name: "ttd";
93
- tab: "text-to-diagram" | "mermaid";
93
+ tab: "mermaid" | "text-to-diagram";
94
94
  } | {
95
95
  name: "commandPalette";
96
96
  } | {
@@ -162,7 +162,6 @@ export declare const actionDeleteSelected: {
162
162
  shown: true;
163
163
  data: import("../charts").Spreadsheet;
164
164
  };
165
- pendingImageElementId: string | null;
166
165
  showHyperlinkPopup: false | "editor" | "info";
167
166
  selectedLinearElement: LinearElementEditor | null;
168
167
  snapLines: readonly import("../snapping").SnapLine[];
@@ -175,16 +174,14 @@ export declare const actionDeleteSelected: {
175
174
  followedBy: Set<import("../types").SocketId>;
176
175
  isCropping: boolean;
177
176
  croppingElementId: string | null;
178
- searchMatches: readonly {
179
- id: string;
180
- focus: boolean;
181
- matchedLines: {
182
- offsetX: number;
183
- offsetY: number;
184
- width: number;
185
- height: number;
186
- }[];
187
- }[];
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
+ };
188
185
  };
189
186
  captureUpdate: "IMMEDIATELY";
190
187
  } | {
@@ -220,6 +217,7 @@ export declare const actionDeleteSelected: {
220
217
  hoverPointIndex: number;
221
218
  segmentMidPointHoveredCoords: import("@excalidraw/math").GlobalPoint | null;
222
219
  elbowed: boolean;
220
+ customLineAngle: number | null;
223
221
  };
224
222
  contextMenu: {
225
223
  items: import("../components/ContextMenu").ContextMenuItems;
@@ -231,7 +229,7 @@ export declare const actionDeleteSelected: {
231
229
  errorMessage: import("react").ReactNode;
232
230
  activeEmbeddable: {
233
231
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
234
- state: "hover" | "active";
232
+ state: "active" | "hover";
235
233
  } | null;
236
234
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
237
235
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -239,7 +237,7 @@ export declare const actionDeleteSelected: {
239
237
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
240
238
  isBindingEnabled: boolean;
241
239
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
242
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
240
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
243
241
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
244
242
  frameRendering: {
245
243
  enabled: boolean;
@@ -287,7 +285,7 @@ export declare const actionDeleteSelected: {
287
285
  zoom: Readonly<{
288
286
  value: import("../types").NormalizedZoomValue;
289
287
  }>;
290
- openMenu: "shape" | "canvas" | null;
288
+ openMenu: "canvas" | "shape" | null;
291
289
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
292
290
  openSidebar: {
293
291
  name: string;
@@ -297,7 +295,7 @@ export declare const actionDeleteSelected: {
297
295
  name: "imageExport" | "help" | "jsonExport";
298
296
  } | {
299
297
  name: "ttd";
300
- tab: "text-to-diagram" | "mermaid";
298
+ tab: "mermaid" | "text-to-diagram";
301
299
  } | {
302
300
  name: "commandPalette";
303
301
  } | {
@@ -369,7 +367,6 @@ export declare const actionDeleteSelected: {
369
367
  shown: true;
370
368
  data: import("../charts").Spreadsheet;
371
369
  };
372
- pendingImageElementId: string | null;
373
370
  showHyperlinkPopup: false | "editor" | "info";
374
371
  selectedLinearElement: LinearElementEditor | null;
375
372
  snapLines: readonly import("../snapping").SnapLine[];
@@ -382,16 +379,14 @@ export declare const actionDeleteSelected: {
382
379
  followedBy: Set<import("../types").SocketId>;
383
380
  isCropping: boolean;
384
381
  croppingElementId: string | null;
385
- searchMatches: readonly {
386
- id: string;
387
- focus: boolean;
388
- matchedLines: {
389
- offsetX: number;
390
- offsetY: number;
391
- width: number;
392
- height: number;
393
- }[];
394
- }[];
382
+ searchMatches: Readonly<{
383
+ focusedId: string | null;
384
+ matches: readonly import("../types").SearchMatch[];
385
+ }> | null;
386
+ activeLockedId: string | null;
387
+ lockedMultiSelections: {
388
+ [groupId: string]: true;
389
+ };
395
390
  };
396
391
  captureUpdate: "IMMEDIATELY";
397
392
  } | {
@@ -425,7 +420,7 @@ export declare const actionDeleteSelected: {
425
420
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
426
421
  isBindingEnabled: boolean;
427
422
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
428
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
423
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
429
424
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
430
425
  frameRendering: {
431
426
  enabled: boolean;
@@ -469,7 +464,7 @@ export declare const actionDeleteSelected: {
469
464
  zoom: Readonly<{
470
465
  value: import("../types").NormalizedZoomValue;
471
466
  }>;
472
- openMenu: "shape" | "canvas" | null;
467
+ openMenu: "canvas" | "shape" | null;
473
468
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
474
469
  openSidebar: {
475
470
  name: string;
@@ -479,7 +474,7 @@ export declare const actionDeleteSelected: {
479
474
  name: "imageExport" | "help" | "jsonExport";
480
475
  } | {
481
476
  name: "ttd";
482
- tab: "text-to-diagram" | "mermaid";
477
+ tab: "mermaid" | "text-to-diagram";
483
478
  } | {
484
479
  name: "commandPalette";
485
480
  } | {
@@ -544,7 +539,6 @@ export declare const actionDeleteSelected: {
544
539
  shown: true;
545
540
  data: import("../charts").Spreadsheet;
546
541
  };
547
- pendingImageElementId: string | null;
548
542
  showHyperlinkPopup: false | "editor" | "info";
549
543
  snapLines: readonly import("../snapping").SnapLine[];
550
544
  originSnapOffset: {
@@ -556,16 +550,14 @@ export declare const actionDeleteSelected: {
556
550
  followedBy: Set<import("../types").SocketId>;
557
551
  isCropping: boolean;
558
552
  croppingElementId: string | null;
559
- searchMatches: readonly {
560
- id: string;
561
- focus: boolean;
562
- matchedLines: {
563
- offsetX: number;
564
- offsetY: number;
565
- width: number;
566
- height: number;
567
- }[];
568
- }[];
553
+ searchMatches: Readonly<{
554
+ focusedId: string | null;
555
+ matches: readonly import("../types").SearchMatch[];
556
+ }> | null;
557
+ activeLockedId: string | null;
558
+ lockedMultiSelections: {
559
+ [groupId: string]: true;
560
+ };
569
561
  };
570
562
  captureUpdate: "IMMEDIATELY" | "EVENTUALLY";
571
563
  };
@@ -51,7 +51,7 @@ export declare const actionLinkToElement: {
51
51
  errorMessage: import("react").ReactNode;
52
52
  activeEmbeddable: {
53
53
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
54
- state: "hover" | "active";
54
+ state: "active" | "hover";
55
55
  } | null;
56
56
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
57
57
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -59,7 +59,7 @@ export declare const actionLinkToElement: {
59
59
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
60
60
  isBindingEnabled: boolean;
61
61
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
62
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
62
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
63
63
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
64
64
  frameRendering: {
65
65
  enabled: boolean;
@@ -70,7 +70,7 @@ export declare const actionLinkToElement: {
70
70
  editingFrame: string | null;
71
71
  elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
72
72
  editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
73
- editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
73
+ editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
74
74
  activeTool: {
75
75
  lastActiveTool: import("../types").ActiveTool | null;
76
76
  locked: boolean;
@@ -108,7 +108,7 @@ export declare const actionLinkToElement: {
108
108
  zoom: Readonly<{
109
109
  value: import("../types").NormalizedZoomValue;
110
110
  }>;
111
- openMenu: "shape" | "canvas" | null;
111
+ openMenu: "canvas" | "shape" | null;
112
112
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
113
113
  openSidebar: {
114
114
  name: string;
@@ -179,9 +179,8 @@ export declare const actionLinkToElement: {
179
179
  shown: true;
180
180
  data: import("../charts").Spreadsheet;
181
181
  };
182
- pendingImageElementId: string | null;
183
182
  showHyperlinkPopup: false | "editor" | "info";
184
- selectedLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
183
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
185
184
  snapLines: readonly import("../snapping").SnapLine[];
186
185
  originSnapOffset: {
187
186
  x: number;
@@ -192,16 +191,14 @@ export declare const actionLinkToElement: {
192
191
  followedBy: Set<import("../types").SocketId>;
193
192
  isCropping: boolean;
194
193
  croppingElementId: string | null;
195
- searchMatches: readonly {
196
- id: string;
197
- focus: boolean;
198
- matchedLines: {
199
- offsetX: number;
200
- offsetY: number;
201
- width: number;
202
- height: number;
203
- }[];
204
- }[];
194
+ searchMatches: Readonly<{
195
+ focusedId: string | null;
196
+ matches: readonly import("../types").SearchMatch[];
197
+ }> | null;
198
+ activeLockedId: string | null;
199
+ lockedMultiSelections: {
200
+ [groupId: string]: true;
201
+ };
205
202
  };
206
203
  captureUpdate: "IMMEDIATELY";
207
204
  elements?: undefined;
@@ -1,17 +1,28 @@
1
1
  /// <reference types="react" />
2
2
  import type { ExcalidrawElement } from "@excalidraw/element/types";
3
+ import type { AppState } from "../types";
3
4
  export declare const actionToggleElementLock: {
4
5
  name: "toggleElementLock";
5
- label: (elements: readonly ExcalidrawElement[], appState: Readonly<import("../types").AppState>, app: import("../types").AppClassProperties) => "labels.elementLock.unlock" | "labels.elementLock.lock" | "labels.elementLock.lockAll" | "labels.elementLock.unlockAll";
6
+ label: (elements: readonly ExcalidrawElement[], appState: Readonly<AppState>, app: import("../types").AppClassProperties) => "labels.elementLock.lock" | "labels.elementLock.unlock";
6
7
  icon: (appState: import("../types").UIAppState, elements: readonly ExcalidrawElement[]) => import("react/jsx-runtime").JSX.Element;
7
8
  trackEvent: {
8
9
  category: "element";
9
10
  };
10
- predicate: (elements: readonly ExcalidrawElement[], appState: import("../types").AppState, _: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
11
- perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<import("../types").AppState>, _: any, app: import("../types").AppClassProperties) => false | {
11
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState, _: import("../types").ExcalidrawProps, app: import("../types").AppClassProperties) => boolean;
12
+ perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, _: any, app: import("../types").AppClassProperties) => false | {
12
13
  elements: import("@excalidraw/element/types").OrderedExcalidrawElement[];
13
14
  appState: {
14
- selectedLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
15
+ selectedElementIds: Readonly<{
16
+ [id: string]: true;
17
+ }>;
18
+ selectedGroupIds: {
19
+ [groupId: string]: boolean;
20
+ };
21
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
22
+ lockedMultiSelections: {
23
+ [x: string]: true;
24
+ };
25
+ activeLockedId: string | null;
15
26
  contextMenu: {
16
27
  items: import("../components/ContextMenu").ContextMenuItems;
17
28
  top: number;
@@ -22,7 +33,7 @@ export declare const actionToggleElementLock: {
22
33
  errorMessage: import("react").ReactNode;
23
34
  activeEmbeddable: {
24
35
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
25
- state: "hover" | "active";
36
+ state: "active" | "hover";
26
37
  } | null;
27
38
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
28
39
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -30,7 +41,7 @@ export declare const actionToggleElementLock: {
30
41
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
31
42
  isBindingEnabled: boolean;
32
43
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
33
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
44
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
34
45
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
35
46
  frameRendering: {
36
47
  enabled: boolean;
@@ -41,7 +52,7 @@ export declare const actionToggleElementLock: {
41
52
  editingFrame: string | null;
42
53
  elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
43
54
  editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
44
- editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
55
+ editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
45
56
  activeTool: {
46
57
  lastActiveTool: import("../types").ActiveTool | null;
47
58
  locked: boolean;
@@ -79,7 +90,7 @@ export declare const actionToggleElementLock: {
79
90
  zoom: Readonly<{
80
91
  value: import("../types").NormalizedZoomValue;
81
92
  }>;
82
- openMenu: "shape" | "canvas" | null;
93
+ openMenu: "canvas" | "shape" | null;
83
94
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
84
95
  openSidebar: {
85
96
  name: string;
@@ -89,7 +100,7 @@ export declare const actionToggleElementLock: {
89
100
  name: "imageExport" | "help" | "jsonExport";
90
101
  } | {
91
102
  name: "ttd";
92
- tab: "text-to-diagram" | "mermaid";
103
+ tab: "mermaid" | "text-to-diagram";
93
104
  } | {
94
105
  name: "commandPalette";
95
106
  } | {
@@ -98,9 +109,6 @@ export declare const actionToggleElementLock: {
98
109
  } | null;
99
110
  defaultSidebarDockedPreference: boolean;
100
111
  lastPointerDownWith: import("@excalidraw/element/types").PointerType;
101
- selectedElementIds: Readonly<{
102
- [id: string]: true;
103
- }>;
104
112
  hoveredElementIds: Readonly<{
105
113
  [id: string]: true;
106
114
  }>;
@@ -120,9 +128,6 @@ export declare const actionToggleElementLock: {
120
128
  gridStep: number;
121
129
  gridModeEnabled: boolean;
122
130
  viewModeEnabled: boolean;
123
- selectedGroupIds: {
124
- [groupId: string]: boolean;
125
- };
126
131
  editingGroupId: string | null;
127
132
  width: number;
128
133
  height: number;
@@ -161,7 +166,6 @@ export declare const actionToggleElementLock: {
161
166
  shown: true;
162
167
  data: import("../charts").Spreadsheet;
163
168
  };
164
- pendingImageElementId: string | null;
165
169
  showHyperlinkPopup: false | "editor" | "info";
166
170
  snapLines: readonly import("../snapping").SnapLine[];
167
171
  originSnapOffset: {
@@ -173,22 +177,16 @@ export declare const actionToggleElementLock: {
173
177
  followedBy: Set<import("../types").SocketId>;
174
178
  isCropping: boolean;
175
179
  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
- }[];
180
+ searchMatches: Readonly<{
181
+ focusedId: string | null;
182
+ matches: readonly import("../types").SearchMatch[];
183
+ }> | null;
186
184
  };
187
185
  captureUpdate: "IMMEDIATELY";
188
186
  };
189
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: import("../types").AppState, elements: readonly ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean;
187
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: AppState, elements: readonly ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean;
190
188
  } & {
191
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: import("../types").AppState, elements: readonly ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean) | undefined;
189
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: AppState, elements: readonly ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean) | undefined;
192
190
  };
193
191
  export declare const actionUnlockAllElements: {
194
192
  name: "unlockAllElements";
@@ -197,13 +195,18 @@ export declare const actionUnlockAllElements: {
197
195
  };
198
196
  viewMode: false;
199
197
  icon: import("react/jsx-runtime").JSX.Element;
200
- predicate: (elements: readonly ExcalidrawElement[], appState: import("../types").AppState) => boolean;
201
- perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<import("../types").AppState>) => {
198
+ predicate: (elements: readonly ExcalidrawElement[], appState: AppState) => boolean;
199
+ perform: (elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>) => {
202
200
  elements: import("@excalidraw/element/types").OrderedExcalidrawElement[];
203
201
  appState: {
204
202
  selectedElementIds: {
205
203
  [k: string]: true;
206
204
  };
205
+ selectedGroupIds: {
206
+ [groupId: string]: boolean;
207
+ };
208
+ lockedMultiSelections: {};
209
+ activeLockedId: null;
207
210
  contextMenu: {
208
211
  items: import("../components/ContextMenu").ContextMenuItems;
209
212
  top: number;
@@ -214,7 +217,7 @@ export declare const actionUnlockAllElements: {
214
217
  errorMessage: import("react").ReactNode;
215
218
  activeEmbeddable: {
216
219
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
217
- state: "hover" | "active";
220
+ state: "active" | "hover";
218
221
  } | null;
219
222
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
220
223
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -222,7 +225,7 @@ export declare const actionUnlockAllElements: {
222
225
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
223
226
  isBindingEnabled: boolean;
224
227
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
225
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
228
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
226
229
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
227
230
  frameRendering: {
228
231
  enabled: boolean;
@@ -233,7 +236,7 @@ export declare const actionUnlockAllElements: {
233
236
  editingFrame: string | null;
234
237
  elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
235
238
  editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
236
- editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
239
+ editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
237
240
  activeTool: {
238
241
  lastActiveTool: import("../types").ActiveTool | null;
239
242
  locked: boolean;
@@ -271,7 +274,7 @@ export declare const actionUnlockAllElements: {
271
274
  zoom: Readonly<{
272
275
  value: import("../types").NormalizedZoomValue;
273
276
  }>;
274
- openMenu: "shape" | "canvas" | null;
277
+ openMenu: "canvas" | "shape" | null;
275
278
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
276
279
  openSidebar: {
277
280
  name: string;
@@ -281,7 +284,7 @@ export declare const actionUnlockAllElements: {
281
284
  name: "imageExport" | "help" | "jsonExport";
282
285
  } | {
283
286
  name: "ttd";
284
- tab: "text-to-diagram" | "mermaid";
287
+ tab: "mermaid" | "text-to-diagram";
285
288
  } | {
286
289
  name: "commandPalette";
287
290
  } | {
@@ -309,9 +312,6 @@ export declare const actionUnlockAllElements: {
309
312
  gridStep: number;
310
313
  gridModeEnabled: boolean;
311
314
  viewModeEnabled: boolean;
312
- selectedGroupIds: {
313
- [groupId: string]: boolean;
314
- };
315
315
  editingGroupId: string | null;
316
316
  width: number;
317
317
  height: number;
@@ -350,9 +350,8 @@ export declare const actionUnlockAllElements: {
350
350
  shown: true;
351
351
  data: import("../charts").Spreadsheet;
352
352
  };
353
- pendingImageElementId: string | null;
354
353
  showHyperlinkPopup: false | "editor" | "info";
355
- selectedLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
354
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
356
355
  snapLines: readonly import("../snapping").SnapLine[];
357
356
  originSnapOffset: {
358
357
  x: number;
@@ -363,16 +362,10 @@ export declare const actionUnlockAllElements: {
363
362
  followedBy: Set<import("../types").SocketId>;
364
363
  isCropping: boolean;
365
364
  croppingElementId: string | null;
366
- searchMatches: readonly {
367
- id: string;
368
- focus: boolean;
369
- matchedLines: {
370
- offsetX: number;
371
- offsetY: number;
372
- width: number;
373
- height: number;
374
- }[];
375
- }[];
365
+ searchMatches: Readonly<{
366
+ focusedId: string | null;
367
+ matches: readonly import("../types").SearchMatch[];
368
+ }> | null;
376
369
  };
377
370
  captureUpdate: "IMMEDIATELY";
378
371
  };
@@ -24,7 +24,7 @@ export declare const actionSetEmbeddableAsActiveTool: {
24
24
  errorMessage: import("react").ReactNode;
25
25
  activeEmbeddable: {
26
26
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
27
- state: "hover" | "active";
27
+ state: "active" | "hover";
28
28
  } | null;
29
29
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
30
30
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -32,7 +32,7 @@ export declare const actionSetEmbeddableAsActiveTool: {
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 actionSetEmbeddableAsActiveTool: {
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
  penMode: boolean;
48
48
  penDetected: boolean;
49
49
  exportBackground: boolean;
@@ -76,7 +76,7 @@ export declare const actionSetEmbeddableAsActiveTool: {
76
76
  zoom: Readonly<{
77
77
  value: import("../types").NormalizedZoomValue;
78
78
  }>;
79
- openMenu: "shape" | "canvas" | null;
79
+ openMenu: "canvas" | "shape" | null;
80
80
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
81
81
  openSidebar: {
82
82
  name: string;
@@ -86,7 +86,7 @@ export declare const actionSetEmbeddableAsActiveTool: {
86
86
  name: "imageExport" | "help" | "jsonExport";
87
87
  } | {
88
88
  name: "ttd";
89
- tab: "text-to-diagram" | "mermaid";
89
+ tab: "mermaid" | "text-to-diagram";
90
90
  } | {
91
91
  name: "commandPalette";
92
92
  } | {
@@ -158,9 +158,8 @@ export declare const actionSetEmbeddableAsActiveTool: {
158
158
  shown: true;
159
159
  data: import("../charts").Spreadsheet;
160
160
  };
161
- pendingImageElementId: string | null;
162
161
  showHyperlinkPopup: false | "editor" | "info";
163
- selectedLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
162
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
164
163
  snapLines: readonly import("../snapping").SnapLine[];
165
164
  originSnapOffset: {
166
165
  x: number;
@@ -171,16 +170,14 @@ export declare const actionSetEmbeddableAsActiveTool: {
171
170
  followedBy: Set<import("../types").SocketId>;
172
171
  isCropping: boolean;
173
172
  croppingElementId: string | null;
174
- searchMatches: readonly {
175
- id: string;
176
- focus: boolean;
177
- matchedLines: {
178
- offsetX: number;
179
- offsetY: number;
180
- width: number;
181
- height: number;
182
- }[];
183
- }[];
173
+ searchMatches: Readonly<{
174
+ focusedId: string | null;
175
+ matches: readonly import("../types").SearchMatch[];
176
+ }> | null;
177
+ activeLockedId: string | null;
178
+ lockedMultiSelections: {
179
+ [groupId: string]: true;
180
+ };
184
181
  };
185
182
  captureUpdate: "EVENTUALLY";
186
183
  };