@excalidraw/excalidraw 0.18.0-298812e → 0.18.0-4e471c107

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 (120) hide show
  1. package/dist/dev/chunk-CBGOW5JB.js +5669 -0
  2. package/dist/dev/chunk-CBGOW5JB.js.map +7 -0
  3. package/dist/dev/chunk-CP5DND7P.js +7 -0
  4. package/dist/dev/chunk-CP5DND7P.js.map +7 -0
  5. package/dist/dev/{chunk-JCUIYZXF.js → chunk-QF5FRM6O.js} +6 -2
  6. package/dist/dev/chunk-QF5FRM6O.js.map +7 -0
  7. package/dist/dev/data/{image-CB4ZYE3A.js → image-SURZSZNX.js} +3 -3
  8. package/dist/dev/index.css +47 -20
  9. package/dist/dev/index.css.map +3 -3
  10. package/dist/dev/index.js +5855 -3361
  11. package/dist/dev/index.js.map +4 -4
  12. package/dist/dev/locales/{en-ZDTPSZNL.js → en-SMAPCEOQ.js} +2 -2
  13. package/dist/dev/subset-shared.chunk.js +1 -1
  14. package/dist/dev/subset-worker.chunk.js +1 -1
  15. package/dist/prod/chunk-A66AFZZU.js +7 -0
  16. package/dist/prod/{chunk-GCFVWREF.js → chunk-I4UNSFV6.js} +4 -4
  17. package/dist/prod/chunk-IRHK23LL.js +4 -0
  18. package/dist/prod/data/image-HXEZYJPQ.js +1 -0
  19. package/dist/prod/index.css +1 -1
  20. package/dist/prod/index.js +25 -18
  21. package/dist/prod/locales/{en-MHZ26NAR.js → en-TYY6KWIJ.js} +1 -1
  22. package/dist/prod/subset-shared.chunk.js +1 -1
  23. package/dist/prod/subset-worker.chunk.js +1 -1
  24. package/dist/types/common/src/constants.d.ts +18 -3
  25. package/dist/types/common/src/utils.d.ts +3 -5
  26. package/dist/types/element/src/Scene.d.ts +1 -1
  27. package/dist/types/element/src/binding.d.ts +10 -7
  28. package/dist/types/element/src/bounds.d.ts +11 -3
  29. package/dist/types/element/src/collision.d.ts +18 -12
  30. package/dist/types/element/src/cropElement.d.ts +1 -1
  31. package/dist/types/element/src/delta.d.ts +26 -6
  32. package/dist/types/element/src/distance.d.ts +2 -2
  33. package/dist/types/element/src/fractionalIndex.d.ts +8 -2
  34. package/dist/types/element/src/frame.d.ts +2 -2
  35. package/dist/types/element/src/index.d.ts +1 -3
  36. package/dist/types/element/src/linearElementEditor.d.ts +12 -22
  37. package/dist/types/element/src/mutateElement.d.ts +1 -1
  38. package/dist/types/element/src/newElement.d.ts +2 -1
  39. package/dist/types/element/src/resizeElements.d.ts +1 -0
  40. package/dist/types/element/src/selection.d.ts +1 -1
  41. package/dist/types/element/src/shape.d.ts +42 -0
  42. package/dist/types/element/src/sizeHelpers.d.ts +2 -1
  43. package/dist/types/element/src/store.d.ts +13 -8
  44. package/dist/types/element/src/transformHandles.d.ts +4 -4
  45. package/dist/types/element/src/typeChecks.d.ts +15 -1
  46. package/dist/types/element/src/types.d.ts +8 -3
  47. package/dist/types/element/src/utils.d.ts +16 -6
  48. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +21 -12
  49. package/dist/types/excalidraw/actions/actionAlign.d.ts +8 -8
  50. package/dist/types/excalidraw/actions/actionBoundText.d.ts +14 -8
  51. package/dist/types/excalidraw/actions/actionCanvas.d.ts +181 -142
  52. package/dist/types/excalidraw/actions/actionClipboard.d.ts +47 -28
  53. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +7 -4
  54. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +24 -14
  55. package/dist/types/excalidraw/actions/actionDistribute.d.ts +4 -4
  56. package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +2 -2
  57. package/dist/types/excalidraw/actions/actionElementLink.d.ts +6 -3
  58. package/dist/types/excalidraw/actions/actionElementLock.d.ts +29 -24
  59. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +7 -4
  60. package/dist/types/excalidraw/actions/actionExport.d.ts +148 -121
  61. package/dist/types/excalidraw/actions/actionFinalize.d.ts +63 -17
  62. package/dist/types/excalidraw/actions/actionFlip.d.ts +4 -4
  63. package/dist/types/excalidraw/actions/actionFrame.d.ts +78 -66
  64. package/dist/types/excalidraw/actions/actionGroup.d.ts +20 -14
  65. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +500 -4
  66. package/dist/types/excalidraw/actions/actionLink.d.ts +8 -5
  67. package/dist/types/excalidraw/actions/actionMenu.d.ts +22 -13
  68. package/dist/types/excalidraw/actions/actionNavigate.d.ts +14 -8
  69. package/dist/types/excalidraw/actions/actionProperties.d.ts +119 -66
  70. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +10 -7
  71. package/dist/types/excalidraw/actions/actionStyles.d.ts +11 -8
  72. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +9 -6
  73. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +9 -6
  74. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +8 -5
  75. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +9 -6
  76. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +9 -6
  77. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +9 -6
  78. package/dist/types/excalidraw/actions/actionZindex.d.ts +8 -8
  79. package/dist/types/excalidraw/actions/types.d.ts +2 -1
  80. package/dist/types/excalidraw/appState.d.ts +29 -20
  81. package/dist/types/excalidraw/components/App.d.ts +14 -16
  82. package/dist/types/excalidraw/components/ButtonIcon.d.ts +1 -0
  83. package/dist/types/excalidraw/components/{ButtonIconSelect.d.ts → RadioSelection.d.ts} +1 -1
  84. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +11 -1
  85. package/dist/types/excalidraw/components/UnlockPopup.d.ts +8 -0
  86. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +1 -0
  87. package/dist/types/excalidraw/components/icons.d.ts +2 -0
  88. package/dist/types/excalidraw/components/shapes.d.ts +1 -1
  89. package/dist/types/excalidraw/data/blob.d.ts +1 -1
  90. package/dist/types/excalidraw/eraser/index.d.ts +0 -2
  91. package/dist/types/excalidraw/history.d.ts +21 -5
  92. package/dist/types/excalidraw/lasso/utils.d.ts +2 -1
  93. package/dist/types/excalidraw/renderer/helpers.d.ts +4 -4
  94. package/dist/types/excalidraw/scene/Renderer.d.ts +0 -1
  95. package/dist/types/excalidraw/types.d.ts +10 -4
  96. package/dist/types/math/src/angle.d.ts +2 -0
  97. package/dist/types/math/src/constants.d.ts +3 -0
  98. package/dist/types/math/src/curve.d.ts +32 -0
  99. package/dist/types/math/src/index.d.ts +1 -0
  100. package/dist/types/math/src/point.d.ts +1 -1
  101. package/dist/types/math/src/rectangle.d.ts +2 -0
  102. package/dist/types/math/src/vector.d.ts +4 -2
  103. package/history.ts +108 -45
  104. package/package.json +12 -9
  105. package/dist/dev/chunk-JCUIYZXF.js.map +0 -7
  106. package/dist/dev/chunk-RQWTCZLD.js +0 -7
  107. package/dist/dev/chunk-RQWTCZLD.js.map +0 -7
  108. package/dist/dev/chunk-ZPGIVNNG.js +0 -23482
  109. package/dist/dev/chunk-ZPGIVNNG.js.map +0 -7
  110. package/dist/prod/chunk-7TMLMBQX.js +0 -7
  111. package/dist/prod/chunk-WFJFO6F4.js +0 -33
  112. package/dist/prod/data/image-XJI4SWH2.js +0 -1
  113. package/dist/types/element/src/Shape.d.ts +0 -17
  114. package/dist/types/element/src/ShapeCache.d.ts +0 -25
  115. package/dist/types/element/src/shapes.d.ts +0 -23
  116. package/dist/types/excalidraw/components/ButtonSelect.d.ts +0 -9
  117. package/dist/types/excalidraw/visualdebug.d.ts +0 -41
  118. package/dist/types/utils/src/collision.d.ts +0 -8
  119. /package/dist/dev/data/{image-CB4ZYE3A.js.map → image-SURZSZNX.js.map} +0 -0
  120. /package/dist/dev/locales/{en-ZDTPSZNL.js.map → en-SMAPCEOQ.js.map} +0 -0
@@ -3,7 +3,8 @@ import type App from "@excalidraw/excalidraw/components/App";
3
3
  import type { DTO, ValueOf } from "@excalidraw/common/utility-types";
4
4
  import type { AppState, ObservedAppState } from "@excalidraw/excalidraw/types";
5
5
  import { ElementsDelta, AppStateDelta } from "./delta";
6
- import type { OrderedExcalidrawElement, SceneElementsMap } from "./types";
6
+ import type { ApplyToOptions } from "./delta";
7
+ import type { ExcalidrawElement, OrderedExcalidrawElement, SceneElementsMap } from "./types";
7
8
  export declare const CaptureUpdateAction: {
8
9
  /**
9
10
  * Immediately undoable.
@@ -60,7 +61,7 @@ export declare class Store {
60
61
  */
61
62
  scheduleMicroAction(params: {
62
63
  action: CaptureUpdateActionType;
63
- elements: SceneElementsMap | undefined;
64
+ elements: readonly ExcalidrawElement[] | undefined;
64
65
  appState: AppState | ObservedAppState | undefined;
65
66
  } | {
66
67
  action: typeof CaptureUpdateAction.IMMEDIATELY;
@@ -157,6 +158,10 @@ export declare class StoreDelta {
157
158
  static create(elements: ElementsDelta, appState: AppStateDelta, opts?: {
158
159
  id: string;
159
160
  }): StoreDelta;
161
+ /**
162
+ * Calculate the delta between the previous and next snapshot.
163
+ */
164
+ static calculate(prevSnapshot: StoreSnapshot, nextSnapshot: StoreSnapshot): StoreDelta;
160
165
  /**
161
166
  * Restore a store delta instance from a DTO.
162
167
  */
@@ -170,13 +175,13 @@ export declare class StoreDelta {
170
175
  */
171
176
  static inverse(delta: StoreDelta): StoreDelta;
172
177
  /**
173
- * Apply latest (remote) changes to the delta, creates new instance of `StoreDelta`.
178
+ * Apply the delta to the passed elements and appState, does not modify the snapshot.
174
179
  */
175
- static applyLatestChanges(delta: StoreDelta, elements: SceneElementsMap, modifierOptions: "deleted" | "inserted"): StoreDelta;
180
+ static applyTo(delta: StoreDelta, elements: SceneElementsMap, appState: AppState, options?: ApplyToOptions): [SceneElementsMap, AppState, boolean];
176
181
  /**
177
- * Apply the delta to the passed elements and appState, does not modify the snapshot.
182
+ * Apply latest (remote) changes to the delta, creates new instance of `StoreDelta`.
178
183
  */
179
- static applyTo(delta: StoreDelta, elements: SceneElementsMap, appState: AppState, prevSnapshot?: StoreSnapshot): [SceneElementsMap, AppState, boolean];
184
+ static applyLatestChanges(delta: StoreDelta, prevElements: SceneElementsMap, nextElements: SceneElementsMap, modifierOptions?: "deleted" | "inserted"): StoreDelta;
180
185
  isEmpty(): boolean;
181
186
  }
182
187
  /**
@@ -216,7 +221,7 @@ export declare class StoreSnapshot {
216
221
  private maybeCreateElementsSnapshot;
217
222
  private detectChangedAppState;
218
223
  /**
219
- * Detect if there any changed elements.
224
+ * Detect if there are any changed elements.
220
225
  */
221
226
  private detectChangedElements;
222
227
  /**
@@ -224,4 +229,4 @@ export declare class StoreSnapshot {
224
229
  */
225
230
  private createElementsSnapshot;
226
231
  }
227
- export declare const getObservedAppState: (appState: AppState) => ObservedAppState;
232
+ export declare const getObservedAppState: (appState: AppState | ObservedAppState) => ObservedAppState;
@@ -32,9 +32,9 @@ export declare const canResizeFromSides: (device: Device) => boolean;
32
32
  export declare const getOmitSidesForDevice: (device: Device) => {};
33
33
  export declare const getTransformHandlesFromCoords: ([x1, y1, x2, y2, cx, cy]: [number, number, number, number, number, number], angle: Radians, zoom: Zoom, pointerType: PointerType, omitSides?: {
34
34
  s?: boolean | undefined;
35
- e?: boolean | undefined;
36
- w?: boolean | undefined;
37
35
  n?: boolean | undefined;
36
+ w?: boolean | undefined;
37
+ e?: boolean | undefined;
38
38
  nw?: boolean | undefined;
39
39
  ne?: boolean | undefined;
40
40
  sw?: boolean | undefined;
@@ -43,9 +43,9 @@ export declare const getTransformHandlesFromCoords: ([x1, y1, x2, y2, cx, cy]: [
43
43
  }, margin?: number, spacing?: number) => TransformHandles;
44
44
  export declare const getTransformHandles: (element: ExcalidrawElement, zoom: Zoom, elementsMap: ElementsMap, pointerType?: PointerType, omitSides?: {
45
45
  s?: boolean | undefined;
46
- e?: boolean | undefined;
47
- w?: boolean | undefined;
48
46
  n?: boolean | undefined;
47
+ w?: boolean | undefined;
48
+ e?: boolean | undefined;
49
49
  nw?: boolean | undefined;
50
50
  ne?: boolean | undefined;
51
51
  sw?: boolean | undefined;
@@ -1,7 +1,7 @@
1
1
  import type { ElementOrToolType } from "@excalidraw/excalidraw/types";
2
2
  import type { MarkNonNullable } from "@excalidraw/common/utility-types";
3
3
  import type { Bounds } from "./bounds";
4
- import type { ExcalidrawElement, ExcalidrawTextElement, ExcalidrawEmbeddableElement, ExcalidrawLinearElement, ExcalidrawBindableElement, ExcalidrawFreeDrawElement, InitializedExcalidrawImageElement, ExcalidrawImageElement, ExcalidrawTextElementWithContainer, ExcalidrawTextContainer, ExcalidrawFrameElement, RoundnessType, ExcalidrawFrameLikeElement, ExcalidrawElementType, ExcalidrawIframeElement, ExcalidrawIframeLikeElement, ExcalidrawMagicFrameElement, ExcalidrawArrowElement, ExcalidrawElbowArrowElement, PointBinding, FixedPointBinding, ExcalidrawFlowchartNodeElement, ExcalidrawLinearElementSubType } from "./types";
4
+ import type { ExcalidrawElement, ExcalidrawTextElement, ExcalidrawEmbeddableElement, ExcalidrawLinearElement, ExcalidrawBindableElement, ExcalidrawFreeDrawElement, InitializedExcalidrawImageElement, ExcalidrawImageElement, ExcalidrawTextElementWithContainer, ExcalidrawTextContainer, ExcalidrawFrameElement, RoundnessType, ExcalidrawFrameLikeElement, ExcalidrawElementType, ExcalidrawIframeElement, ExcalidrawIframeLikeElement, ExcalidrawMagicFrameElement, ExcalidrawArrowElement, ExcalidrawElbowArrowElement, ExcalidrawLineElement, PointBinding, FixedPointBinding, ExcalidrawFlowchartNodeElement, ExcalidrawLinearElementSubType } from "./types";
5
5
  export declare const isInitializedImageElement: (element: ExcalidrawElement | null) => element is InitializedExcalidrawImageElement;
6
6
  export declare const isImageElement: (element: ExcalidrawElement | null) => element is ExcalidrawImageElement;
7
7
  export declare const isEmbeddableElement: (element: ExcalidrawElement | null | undefined) => element is ExcalidrawEmbeddableElement;
@@ -14,8 +14,13 @@ export declare const isFrameLikeElement: (element: ExcalidrawElement | null) =>
14
14
  export declare const isFreeDrawElement: (element?: ExcalidrawElement | null) => element is ExcalidrawFreeDrawElement;
15
15
  export declare const isFreeDrawElementType: (elementType: ExcalidrawElementType) => boolean;
16
16
  export declare const isLinearElement: (element?: ExcalidrawElement | null) => element is ExcalidrawLinearElement;
17
+ export declare const isLineElement: (element?: ExcalidrawElement | null) => element is ExcalidrawLineElement;
17
18
  export declare const isArrowElement: (element?: ExcalidrawElement | null) => element is ExcalidrawArrowElement;
18
19
  export declare const isElbowArrow: (element?: ExcalidrawElement) => element is ExcalidrawElbowArrowElement;
20
+ /**
21
+ * sharp or curved arrow, but not elbow
22
+ */
23
+ export declare const isSimpleArrow: (element?: ExcalidrawElement) => element is ExcalidrawArrowElement;
19
24
  export declare const isSharpArrow: (element?: ExcalidrawElement) => element is ExcalidrawArrowElement;
20
25
  export declare const isCurvedArrow: (element?: ExcalidrawElement) => element is ExcalidrawArrowElement;
21
26
  export declare const isLinearElementType: (elementType: ElementOrToolType) => boolean;
@@ -41,3 +46,12 @@ export declare const getDefaultRoundnessTypeForElement: (element: ExcalidrawElem
41
46
  export declare const isFixedPointBinding: (binding: PointBinding | FixedPointBinding) => binding is FixedPointBinding;
42
47
  export declare const isBounds: (box: unknown) => box is Bounds;
43
48
  export declare const getLinearElementSubType: (element: ExcalidrawLinearElement) => ExcalidrawLinearElementSubType;
49
+ /**
50
+ * Checks if current element points meet all the conditions for polygon=true
51
+ * (this isn't a element type check, for that use isLineElement).
52
+ *
53
+ * If you want to check if points *can* be turned into a polygon, use
54
+ * canBecomePolygon(points).
55
+ */
56
+ export declare const isValidPolygon: (points: ExcalidrawLineElement["points"]) => boolean;
57
+ export declare const canBecomePolygon: (points: ExcalidrawLineElement["points"]) => boolean;
@@ -151,7 +151,7 @@ export type ExcalidrawFrameLikeElement = ExcalidrawFrameElement | ExcalidrawMagi
151
151
  */
152
152
  export type ExcalidrawGenericElement = ExcalidrawSelectionElement | ExcalidrawRectangleElement | ExcalidrawDiamondElement | ExcalidrawEllipseElement;
153
153
  export type ExcalidrawFlowchartNodeElement = ExcalidrawRectangleElement | ExcalidrawDiamondElement | ExcalidrawEllipseElement;
154
- export type ExcalidrawRectanguloidElement = ExcalidrawRectangleElement | ExcalidrawImageElement | ExcalidrawTextElement | ExcalidrawFreeDrawElement | ExcalidrawIframeLikeElement | ExcalidrawFrameLikeElement | ExcalidrawEmbeddableElement;
154
+ export type ExcalidrawRectanguloidElement = ExcalidrawRectangleElement | ExcalidrawImageElement | ExcalidrawTextElement | ExcalidrawFreeDrawElement | ExcalidrawIframeLikeElement | ExcalidrawFrameLikeElement | ExcalidrawEmbeddableElement | ExcalidrawSelectionElement;
155
155
  /**
156
156
  * ExcalidrawElement should be JSON serializable and (eventually) contain
157
157
  * no computed data. The list of all ExcalidrawElements should be shareable
@@ -205,7 +205,8 @@ export type PointBinding = {
205
205
  export type FixedPointBinding = Merge<PointBinding, {
206
206
  fixedPoint: FixedPoint;
207
207
  }>;
208
- export type PointsPositionUpdates = Map<number, {
208
+ type Index = number;
209
+ export type PointsPositionUpdates = Map<Index, {
209
210
  point: LocalPoint;
210
211
  isDragging?: boolean;
211
212
  }>;
@@ -219,10 +220,14 @@ export type ExcalidrawLinearElement = _ExcalidrawElementBase & Readonly<{
219
220
  startArrowhead: Arrowhead | null;
220
221
  endArrowhead: Arrowhead | null;
221
222
  }>;
223
+ export type ExcalidrawLineElement = ExcalidrawLinearElement & Readonly<{
224
+ type: "line";
225
+ polygon: boolean;
226
+ }>;
222
227
  export type FixedSegment = {
223
228
  start: LocalPoint;
224
229
  end: LocalPoint;
225
- index: number;
230
+ index: Index;
226
231
  };
227
232
  export type ExcalidrawArrowElement = ExcalidrawLinearElement & Readonly<{
228
233
  type: "arrow";
@@ -1,21 +1,31 @@
1
1
  import { type GlobalPoint } from "@excalidraw/math";
2
2
  import type { Curve, LineSegment } from "@excalidraw/math";
3
- import type { ExcalidrawDiamondElement, ExcalidrawRectanguloidElement } from "./types";
3
+ import type { Zoom } from "@excalidraw/excalidraw/types";
4
+ import type { ExcalidrawDiamondElement, ExcalidrawElement, ExcalidrawFreeDrawElement, ExcalidrawLinearElement, ExcalidrawRectanguloidElement } from "./types";
5
+ /**
6
+ * Returns the **rotated** components of freedraw, line or arrow elements.
7
+ *
8
+ * @param element The linear element to deconstruct
9
+ * @returns The rotated in components.
10
+ */
11
+ export declare function deconstructLinearOrFreeDrawElement(element: ExcalidrawLinearElement | ExcalidrawFreeDrawElement): [LineSegment<GlobalPoint>[], Curve<GlobalPoint>[]];
4
12
  /**
5
13
  * Get the building components of a rectanguloid element in the form of
6
- * line segments and curves.
14
+ * line segments and curves **unrotated**.
7
15
  *
8
16
  * @param element Target rectanguloid element
9
17
  * @param offset Optional offset to expand the rectanguloid shape
10
- * @returns Tuple of line segments (0) and curves (1)
18
+ * @returns Tuple of **unrotated** line segments (0) and curves (1)
11
19
  */
12
20
  export declare function deconstructRectanguloidElement(element: ExcalidrawRectanguloidElement, offset?: number): [LineSegment<GlobalPoint>[], Curve<GlobalPoint>[]];
13
21
  /**
14
- * Get the building components of a diamond element in the form of
15
- * line segments and curves as a tuple, in this order.
22
+ * Get the **unrotated** building components of a diamond element
23
+ * in the form of line segments and curves as a tuple, in this order.
16
24
  *
17
25
  * @param element The element to deconstruct
18
26
  * @param offset An optional offset
19
- * @returns Tuple of line segments (0) and curves (1)
27
+ * @returns Tuple of line **unrotated** segments (0) and curves (1)
20
28
  */
21
29
  export declare function deconstructDiamondElement(element: ExcalidrawDiamondElement, offset?: number): [LineSegment<GlobalPoint>[], Curve<GlobalPoint>[]];
30
+ export declare const isPathALoop: (points: ExcalidrawLinearElement["points"], zoomValue?: Zoom["value"]) => boolean;
31
+ export declare const getCornerRadius: (x: number, element: ExcalidrawElement) => number;
@@ -20,7 +20,7 @@ export declare const actionAddToLibrary: {
20
20
  errorMessage: import("react").ReactNode;
21
21
  activeEmbeddable: {
22
22
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
23
- state: "hover" | "active";
23
+ state: "active" | "hover";
24
24
  } | null;
25
25
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
26
26
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -87,7 +87,7 @@ export declare const actionAddToLibrary: {
87
87
  name: "imageExport" | "help" | "jsonExport";
88
88
  } | {
89
89
  name: "ttd";
90
- tab: "text-to-diagram" | "mermaid";
90
+ tab: "mermaid" | "text-to-diagram";
91
91
  } | {
92
92
  name: "commandPalette";
93
93
  } | {
@@ -154,8 +154,7 @@ export declare const actionAddToLibrary: {
154
154
  shown: true;
155
155
  data: import("../charts").Spreadsheet;
156
156
  };
157
- pendingImageElementId: string | null;
158
- showHyperlinkPopup: false | "info" | "editor";
157
+ showHyperlinkPopup: false | "editor" | "info";
159
158
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
160
159
  snapLines: readonly import("../snapping").SnapLine[];
161
160
  originSnapOffset: {
@@ -171,6 +170,10 @@ export declare const actionAddToLibrary: {
171
170
  focusedId: string | null;
172
171
  matches: readonly import("../types").SearchMatch[];
173
172
  }> | null;
173
+ activeLockedId: string | null;
174
+ lockedMultiSelections: {
175
+ [groupId: string]: true;
176
+ };
174
177
  };
175
178
  } | {
176
179
  captureUpdate: "EVENTUALLY";
@@ -185,7 +188,7 @@ export declare const actionAddToLibrary: {
185
188
  isLoading: boolean;
186
189
  activeEmbeddable: {
187
190
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
188
- state: "hover" | "active";
191
+ state: "active" | "hover";
189
192
  } | null;
190
193
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
191
194
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -252,7 +255,7 @@ export declare const actionAddToLibrary: {
252
255
  name: "imageExport" | "help" | "jsonExport";
253
256
  } | {
254
257
  name: "ttd";
255
- tab: "text-to-diagram" | "mermaid";
258
+ tab: "mermaid" | "text-to-diagram";
256
259
  } | {
257
260
  name: "commandPalette";
258
261
  } | {
@@ -324,8 +327,7 @@ export declare const actionAddToLibrary: {
324
327
  shown: true;
325
328
  data: import("../charts").Spreadsheet;
326
329
  };
327
- pendingImageElementId: string | null;
328
- showHyperlinkPopup: false | "info" | "editor";
330
+ showHyperlinkPopup: false | "editor" | "info";
329
331
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
330
332
  snapLines: readonly import("../snapping").SnapLine[];
331
333
  originSnapOffset: {
@@ -341,6 +343,10 @@ export declare const actionAddToLibrary: {
341
343
  focusedId: string | null;
342
344
  matches: readonly import("../types").SearchMatch[];
343
345
  }> | null;
346
+ activeLockedId: string | null;
347
+ lockedMultiSelections: {
348
+ [groupId: string]: true;
349
+ };
344
350
  };
345
351
  }> | {
346
352
  captureUpdate: "EVENTUALLY";
@@ -355,7 +361,7 @@ export declare const actionAddToLibrary: {
355
361
  isLoading: boolean;
356
362
  activeEmbeddable: {
357
363
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
358
- state: "hover" | "active";
364
+ state: "active" | "hover";
359
365
  } | null;
360
366
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
361
367
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -422,7 +428,7 @@ export declare const actionAddToLibrary: {
422
428
  name: "imageExport" | "help" | "jsonExport";
423
429
  } | {
424
430
  name: "ttd";
425
- tab: "text-to-diagram" | "mermaid";
431
+ tab: "mermaid" | "text-to-diagram";
426
432
  } | {
427
433
  name: "commandPalette";
428
434
  } | {
@@ -494,8 +500,7 @@ export declare const actionAddToLibrary: {
494
500
  shown: true;
495
501
  data: import("../charts").Spreadsheet;
496
502
  };
497
- pendingImageElementId: string | null;
498
- showHyperlinkPopup: false | "info" | "editor";
503
+ showHyperlinkPopup: false | "editor" | "info";
499
504
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
500
505
  snapLines: readonly import("../snapping").SnapLine[];
501
506
  originSnapOffset: {
@@ -511,6 +516,10 @@ export declare const actionAddToLibrary: {
511
516
  focusedId: string | null;
512
517
  matches: readonly import("../types").SearchMatch[];
513
518
  }> | null;
519
+ activeLockedId: string | null;
520
+ lockedMultiSelections: {
521
+ [groupId: string]: true;
522
+ };
514
523
  };
515
524
  };
516
525
  label: string;
@@ -15,10 +15,10 @@ export declare const actionAlignTop: {
15
15
  elements: ExcalidrawElement[];
16
16
  captureUpdate: "IMMEDIATELY";
17
17
  };
18
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
18
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
19
19
  PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
20
20
  } & {
21
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
21
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
22
22
  };
23
23
  export declare const actionAlignBottom: {
24
24
  name: "alignBottom";
@@ -33,10 +33,10 @@ export declare const actionAlignBottom: {
33
33
  elements: ExcalidrawElement[];
34
34
  captureUpdate: "IMMEDIATELY";
35
35
  };
36
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
36
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
37
37
  PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
38
38
  } & {
39
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
39
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
40
40
  };
41
41
  export declare const actionAlignLeft: {
42
42
  name: "alignLeft";
@@ -51,10 +51,10 @@ export declare const actionAlignLeft: {
51
51
  elements: ExcalidrawElement[];
52
52
  captureUpdate: "IMMEDIATELY";
53
53
  };
54
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
54
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
55
55
  PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
56
56
  } & {
57
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
57
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
58
58
  };
59
59
  export declare const actionAlignRight: {
60
60
  name: "alignRight";
@@ -69,10 +69,10 @@ export declare const actionAlignRight: {
69
69
  elements: ExcalidrawElement[];
70
70
  captureUpdate: "IMMEDIATELY";
71
71
  };
72
- keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
72
+ keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
73
73
  PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
74
74
  } & {
75
- keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
75
+ keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
76
76
  };
77
77
  export declare const actionAlignVerticallyCentered: {
78
78
  name: "alignVerticallyCentered";
@@ -40,7 +40,7 @@ export declare const actionBindText: {
40
40
  errorMessage: import("react").ReactNode;
41
41
  activeEmbeddable: {
42
42
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
43
- state: "hover" | "active";
43
+ state: "active" | "hover";
44
44
  } | null;
45
45
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
46
46
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -107,7 +107,7 @@ export declare const actionBindText: {
107
107
  name: "imageExport" | "help" | "jsonExport";
108
108
  } | {
109
109
  name: "ttd";
110
- tab: "text-to-diagram" | "mermaid";
110
+ tab: "mermaid" | "text-to-diagram";
111
111
  } | {
112
112
  name: "commandPalette";
113
113
  } | {
@@ -176,8 +176,7 @@ export declare const actionBindText: {
176
176
  shown: true;
177
177
  data: import("../charts").Spreadsheet;
178
178
  };
179
- pendingImageElementId: string | null;
180
- showHyperlinkPopup: false | "info" | "editor";
179
+ showHyperlinkPopup: false | "editor" | "info";
181
180
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
182
181
  snapLines: readonly import("../snapping").SnapLine[];
183
182
  originSnapOffset: {
@@ -193,6 +192,10 @@ export declare const actionBindText: {
193
192
  focusedId: string | null;
194
193
  matches: readonly import("../types").SearchMatch[];
195
194
  }> | null;
195
+ activeLockedId: string | null;
196
+ lockedMultiSelections: {
197
+ [groupId: string]: true;
198
+ };
196
199
  };
197
200
  captureUpdate: "IMMEDIATELY";
198
201
  };
@@ -222,7 +225,7 @@ export declare const actionWrapTextInContainer: {
222
225
  errorMessage: import("react").ReactNode;
223
226
  activeEmbeddable: {
224
227
  element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
225
- state: "hover" | "active";
228
+ state: "active" | "hover";
226
229
  } | null;
227
230
  newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
228
231
  resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
@@ -289,7 +292,7 @@ export declare const actionWrapTextInContainer: {
289
292
  name: "imageExport" | "help" | "jsonExport";
290
293
  } | {
291
294
  name: "ttd";
292
- tab: "text-to-diagram" | "mermaid";
295
+ tab: "mermaid" | "text-to-diagram";
293
296
  } | {
294
297
  name: "commandPalette";
295
298
  } | {
@@ -358,8 +361,7 @@ export declare const actionWrapTextInContainer: {
358
361
  shown: true;
359
362
  data: import("../charts").Spreadsheet;
360
363
  };
361
- pendingImageElementId: string | null;
362
- showHyperlinkPopup: false | "info" | "editor";
364
+ showHyperlinkPopup: false | "editor" | "info";
363
365
  selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
364
366
  snapLines: readonly import("../snapping").SnapLine[];
365
367
  originSnapOffset: {
@@ -375,6 +377,10 @@ export declare const actionWrapTextInContainer: {
375
377
  focusedId: string | null;
376
378
  matches: readonly import("../types").SearchMatch[];
377
379
  }> | null;
380
+ activeLockedId: string | null;
381
+ lockedMultiSelections: {
382
+ [groupId: string]: true;
383
+ };
378
384
  };
379
385
  captureUpdate: "IMMEDIATELY";
380
386
  };