@excalidraw/excalidraw 0.18.0-c4c0649 → 0.18.0-d2463f87d

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 (121) 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-SLEZBMLG.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 +5873 -3369
  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 +12 -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 +13 -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/index.d.ts +1 -0
  93. package/dist/types/excalidraw/lasso/utils.d.ts +2 -1
  94. package/dist/types/excalidraw/renderer/helpers.d.ts +4 -4
  95. package/dist/types/excalidraw/scene/Renderer.d.ts +0 -1
  96. package/dist/types/excalidraw/types.d.ts +10 -4
  97. package/dist/types/math/src/angle.d.ts +2 -0
  98. package/dist/types/math/src/constants.d.ts +3 -0
  99. package/dist/types/math/src/curve.d.ts +32 -0
  100. package/dist/types/math/src/index.d.ts +1 -0
  101. package/dist/types/math/src/point.d.ts +1 -1
  102. package/dist/types/math/src/rectangle.d.ts +2 -0
  103. package/dist/types/math/src/vector.d.ts +4 -2
  104. package/history.ts +108 -45
  105. package/package.json +12 -9
  106. package/dist/dev/chunk-HNRFOURL.js +0 -23482
  107. package/dist/dev/chunk-HNRFOURL.js.map +0 -7
  108. package/dist/dev/chunk-JCUIYZXF.js.map +0 -7
  109. package/dist/dev/chunk-VKWYDXFZ.js +0 -7
  110. package/dist/dev/chunk-VKWYDXFZ.js.map +0 -7
  111. package/dist/prod/chunk-G6SRO7HP.js +0 -7
  112. package/dist/prod/chunk-M3D5LUUK.js +0 -33
  113. package/dist/prod/data/image-PMKVN4IF.js +0 -1
  114. package/dist/types/element/src/Shape.d.ts +0 -17
  115. package/dist/types/element/src/ShapeCache.d.ts +0 -25
  116. package/dist/types/element/src/shapes.d.ts +0 -23
  117. package/dist/types/excalidraw/components/ButtonSelect.d.ts +0 -9
  118. package/dist/types/excalidraw/visualdebug.d.ts +0 -41
  119. package/dist/types/utils/src/collision.d.ts +0 -8
  120. /package/dist/dev/data/{image-SLEZBMLG.js.map → image-SURZSZNX.js.map} +0 -0
  121. /package/dist/dev/locales/{en-ZDTPSZNL.js.map → en-SMAPCEOQ.js.map} +0 -0
@@ -3,7 +3,7 @@ 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 { ExcalidrawElement, OrderedExcalidrawElement, SceneElementsMap } from "./types";
7
7
  export declare const CaptureUpdateAction: {
8
8
  /**
9
9
  * Immediately undoable.
@@ -60,7 +60,7 @@ export declare class Store {
60
60
  */
61
61
  scheduleMicroAction(params: {
62
62
  action: CaptureUpdateActionType;
63
- elements: SceneElementsMap | undefined;
63
+ elements: readonly ExcalidrawElement[] | undefined;
64
64
  appState: AppState | ObservedAppState | undefined;
65
65
  } | {
66
66
  action: typeof CaptureUpdateAction.IMMEDIATELY;
@@ -157,6 +157,10 @@ export declare class StoreDelta {
157
157
  static create(elements: ElementsDelta, appState: AppStateDelta, opts?: {
158
158
  id: string;
159
159
  }): StoreDelta;
160
+ /**
161
+ * Calculate the delta between the previous and next snapshot.
162
+ */
163
+ static calculate(prevSnapshot: StoreSnapshot, nextSnapshot: StoreSnapshot): StoreDelta;
160
164
  /**
161
165
  * Restore a store delta instance from a DTO.
162
166
  */
@@ -170,13 +174,13 @@ export declare class StoreDelta {
170
174
  */
171
175
  static inverse(delta: StoreDelta): StoreDelta;
172
176
  /**
173
- * Apply latest (remote) changes to the delta, creates new instance of `StoreDelta`.
177
+ * Apply the delta to the passed elements and appState, does not modify the snapshot.
174
178
  */
175
- static applyLatestChanges(delta: StoreDelta, elements: SceneElementsMap, modifierOptions: "deleted" | "inserted"): StoreDelta;
179
+ static applyTo(delta: StoreDelta, elements: SceneElementsMap, appState: AppState): [SceneElementsMap, AppState, boolean];
176
180
  /**
177
- * Apply the delta to the passed elements and appState, does not modify the snapshot.
181
+ * Apply latest (remote) changes to the delta, creates new instance of `StoreDelta`.
178
182
  */
179
- static applyTo(delta: StoreDelta, elements: SceneElementsMap, appState: AppState, prevSnapshot?: StoreSnapshot): [SceneElementsMap, AppState, boolean];
183
+ static applyLatestChanges(delta: StoreDelta, prevElements: SceneElementsMap, nextElements: SceneElementsMap, modifierOptions?: "deleted" | "inserted"): StoreDelta;
180
184
  isEmpty(): boolean;
181
185
  }
182
186
  /**
@@ -216,7 +220,7 @@ export declare class StoreSnapshot {
216
220
  private maybeCreateElementsSnapshot;
217
221
  private detectChangedAppState;
218
222
  /**
219
- * Detect if there any changed elements.
223
+ * Detect if there are any changed elements.
220
224
  */
221
225
  private detectChangedElements;
222
226
  /**
@@ -224,4 +228,4 @@ export declare class StoreSnapshot {
224
228
  */
225
229
  private createElementsSnapshot;
226
230
  }
227
- export declare const getObservedAppState: (appState: AppState) => ObservedAppState;
231
+ 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
  };