@dwelle/excalidraw 0.5.0-ff7b5f2db → 0.5.0-ffade30

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 (171) hide show
  1. package/CHANGELOG.md +2385 -0
  2. package/dist/dev/{chunk-56C7N44U.js → chunk-CB6O5JO7.js} +16177 -10984
  3. package/dist/dev/chunk-CB6O5JO7.js.map +7 -0
  4. package/dist/dev/{chunk-DGCWVQGA.js → chunk-JB4JDZ66.js} +15 -4
  5. package/dist/dev/chunk-JB4JDZ66.js.map +7 -0
  6. package/dist/dev/chunk-QXVP5PAI.js +7 -0
  7. package/dist/dev/chunk-QXVP5PAI.js.map +7 -0
  8. package/dist/dev/data/{image-BLSI3C2P.js → image-JTJWA4BG.js} +3 -3
  9. package/dist/dev/index.css +143 -68
  10. package/dist/dev/index.css.map +3 -3
  11. package/dist/dev/index.js +3978 -6519
  12. package/dist/dev/index.js.map +4 -4
  13. package/dist/dev/locales/{en-AAITTNRF.js → en-PIB5PD3P.js} +2 -2
  14. package/dist/dev/subset-shared.chunk.js +1 -1
  15. package/dist/dev/subset-worker.chunk.js +1 -1
  16. package/dist/prod/chunk-JEM5OQGK.js +33 -0
  17. package/dist/prod/chunk-JH36RZFS.js +7 -0
  18. package/dist/prod/{chunk-OV23WS6X.js → chunk-KC3NX2DX.js} +4 -4
  19. package/dist/prod/data/image-UJJWHTZ6.js +1 -0
  20. package/dist/prod/index.css +1 -1
  21. package/dist/prod/index.js +22 -21
  22. package/dist/prod/locales/{en-YOZMX4VX.js → en-RKTHI3YA.js} +1 -1
  23. package/dist/prod/subset-shared.chunk.js +1 -1
  24. package/dist/prod/subset-worker.chunk.js +1 -1
  25. package/dist/types/common/src/colors.d.ts +1 -0
  26. package/dist/types/common/src/constants.d.ts +11 -1
  27. package/dist/types/{excalidraw → common/src}/emitter.d.ts +1 -1
  28. package/dist/types/common/src/font-metadata.d.ts +4 -2
  29. package/dist/types/common/src/index.d.ts +1 -0
  30. package/dist/types/common/src/utility-types.d.ts +5 -0
  31. package/dist/types/common/src/utils.d.ts +22 -5
  32. package/dist/types/{excalidraw/scene → element/src}/Scene.d.ts +11 -14
  33. package/dist/types/element/src/ShapeCache.d.ts +1 -1
  34. package/dist/types/element/src/align.d.ts +3 -3
  35. package/dist/types/element/src/binding.d.ts +19 -11
  36. package/dist/types/element/src/bounds.d.ts +7 -2
  37. package/dist/types/element/src/collision.d.ts +1 -1
  38. package/dist/types/{excalidraw/change.d.ts → element/src/delta.d.ts} +40 -35
  39. package/dist/types/element/src/dragElements.d.ts +3 -2
  40. package/dist/types/element/src/duplicate.d.ts +10 -13
  41. package/dist/types/element/src/elbowArrow.d.ts +1 -1
  42. package/dist/types/element/src/flowchart.d.ts +3 -2
  43. package/dist/types/element/src/fractionalIndex.d.ts +2 -2
  44. package/dist/types/element/src/frame.d.ts +5 -4
  45. package/dist/types/element/src/heading.d.ts +0 -1
  46. package/dist/types/element/src/index.d.ts +45 -2
  47. package/dist/types/element/src/linearElementEditor.d.ts +19 -31
  48. package/dist/types/element/src/mutateElement.d.ts +10 -2
  49. package/dist/types/element/src/newElement.d.ts +4 -3
  50. package/dist/types/element/src/resizeElements.d.ts +4 -4
  51. package/dist/types/element/src/selection.d.ts +11 -5
  52. package/dist/types/element/src/shapes.d.ts +5 -1
  53. package/dist/types/element/src/sizeHelpers.d.ts +1 -1
  54. package/dist/types/element/src/store.d.ts +227 -0
  55. package/dist/types/element/src/textElement.d.ts +5 -3
  56. package/dist/types/element/src/transformHandles.d.ts +4 -4
  57. package/dist/types/element/src/typeChecks.d.ts +15 -1
  58. package/dist/types/element/src/types.d.ts +14 -1
  59. package/dist/types/element/src/zindex.d.ts +1 -1
  60. package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +42 -45
  61. package/dist/types/excalidraw/actions/actionAlign.d.ts +8 -8
  62. package/dist/types/excalidraw/actions/actionBoundText.d.ts +28 -30
  63. package/dist/types/excalidraw/actions/actionCanvas.d.ts +438 -275
  64. package/dist/types/excalidraw/actions/actionClipboard.d.ts +86 -92
  65. package/dist/types/excalidraw/actions/actionCropEditor.d.ts +14 -15
  66. package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +40 -43
  67. package/dist/types/excalidraw/actions/actionDistribute.d.ts +4 -4
  68. package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +2 -2
  69. package/dist/types/excalidraw/actions/actionElementLink.d.ts +14 -15
  70. package/dist/types/excalidraw/actions/actionElementLock.d.ts +43 -47
  71. package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +14 -15
  72. package/dist/types/excalidraw/actions/actionExport.d.ts +219 -228
  73. package/dist/types/excalidraw/actions/actionFinalize.d.ts +73 -36
  74. package/dist/types/excalidraw/actions/actionFlip.d.ts +4 -4
  75. package/dist/types/excalidraw/actions/actionFrame.d.ts +100 -104
  76. package/dist/types/excalidraw/actions/actionGroup.d.ts +34 -36
  77. package/dist/types/excalidraw/actions/actionHistory.d.ts +1 -2
  78. package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +506 -14
  79. package/dist/types/excalidraw/actions/actionLink.d.ts +14 -15
  80. package/dist/types/excalidraw/actions/actionMenu.d.ts +42 -45
  81. package/dist/types/excalidraw/actions/actionNavigate.d.ts +27 -29
  82. package/dist/types/excalidraw/actions/actionProperties.d.ts +207 -214
  83. package/dist/types/excalidraw/actions/actionSelectAll.d.ts +16 -17
  84. package/dist/types/excalidraw/actions/actionStyles.d.ts +18 -19
  85. package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +16 -17
  86. package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +16 -17
  87. package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +16 -189
  88. package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +19 -0
  89. package/dist/types/excalidraw/actions/actionToggleStats.d.ts +16 -18
  90. package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +16 -18
  91. package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +16 -18
  92. package/dist/types/excalidraw/actions/actionZindex.d.ts +8 -8
  93. package/dist/types/excalidraw/actions/types.d.ts +4 -3
  94. package/dist/types/excalidraw/animated-trail.d.ts +7 -1
  95. package/dist/types/excalidraw/appState.d.ts +40 -30
  96. package/dist/types/excalidraw/components/App.d.ts +30 -12
  97. package/dist/types/excalidraw/components/ButtonIcon.d.ts +1 -0
  98. package/dist/types/excalidraw/components/ColorPicker/ColorInput.d.ts +2 -1
  99. package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +5 -1
  100. package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +1 -1
  101. package/dist/types/excalidraw/components/ColorPicker/HotkeyLabel.d.ts +1 -2
  102. package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +2 -3
  103. package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +2 -3
  104. package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +2 -2
  105. package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +1 -1
  106. package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +2 -2
  107. package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +1 -1
  108. package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +23 -0
  109. package/dist/types/excalidraw/components/ElementLinkDialog.d.ts +4 -3
  110. package/dist/types/excalidraw/components/{ButtonIconSelect.d.ts → RadioSelection.d.ts} +1 -1
  111. package/dist/types/excalidraw/components/Range.d.ts +3 -3
  112. package/dist/types/excalidraw/components/Stats/Angle.d.ts +1 -1
  113. package/dist/types/excalidraw/components/Stats/CanvasGrid.d.ts +1 -1
  114. package/dist/types/excalidraw/components/Stats/Collapsible.d.ts +2 -1
  115. package/dist/types/excalidraw/components/Stats/Dimension.d.ts +1 -1
  116. package/dist/types/excalidraw/components/Stats/DragInput.d.ts +1 -1
  117. package/dist/types/excalidraw/components/Stats/FontSize.d.ts +1 -1
  118. package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +1 -1
  119. package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +1 -1
  120. package/dist/types/excalidraw/components/Stats/MultiFontSize.d.ts +1 -1
  121. package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +1 -1
  122. package/dist/types/excalidraw/components/Stats/Position.d.ts +1 -1
  123. package/dist/types/excalidraw/components/Stats/utils.d.ts +4 -11
  124. package/dist/types/excalidraw/components/UnlockPopup.d.ts +8 -0
  125. package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +1 -0
  126. package/dist/types/excalidraw/components/hyperlink/Hyperlink.d.ts +3 -2
  127. package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +2 -1
  128. package/dist/types/excalidraw/components/icons.d.ts +4 -0
  129. package/dist/types/excalidraw/components/shapes.d.ts +1 -1
  130. package/dist/types/excalidraw/data/blob.d.ts +1 -1
  131. package/dist/types/excalidraw/data/transform.d.ts +1 -1
  132. package/dist/types/excalidraw/editor-jotai.d.ts +6 -6
  133. package/dist/types/excalidraw/eraser/index.d.ts +14 -0
  134. package/dist/types/excalidraw/fonts/Fonts.d.ts +1 -1
  135. package/dist/types/excalidraw/history.d.ts +14 -22
  136. package/dist/types/excalidraw/hooks/useEmitter.d.ts +1 -1
  137. package/dist/types/excalidraw/index.d.ts +9 -9
  138. package/dist/types/excalidraw/lasso/index.d.ts +16 -0
  139. package/dist/types/excalidraw/lasso/utils.d.ts +12 -0
  140. package/dist/types/excalidraw/renderer/helpers.d.ts +6 -1
  141. package/dist/types/excalidraw/scene/Renderer.d.ts +1 -1
  142. package/dist/types/excalidraw/scene/export.d.ts +1 -1
  143. package/dist/types/excalidraw/scene/index.d.ts +2 -2
  144. package/dist/types/excalidraw/scene/scrollbars.d.ts +2 -3
  145. package/dist/types/excalidraw/scene/types.d.ts +2 -0
  146. package/dist/types/excalidraw/snapping.d.ts +2 -2
  147. package/dist/types/excalidraw/types.d.ts +30 -7
  148. package/dist/types/excalidraw/visualdebug.d.ts +1 -1
  149. package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +3 -1
  150. package/dist/types/math/src/curve.d.ts +2 -0
  151. package/dist/types/math/src/point.d.ts +1 -1
  152. package/dist/types/math/src/polygon.d.ts +1 -0
  153. package/dist/types/math/src/segment.d.ts +1 -1
  154. package/dist/types/math/src/types.d.ts +1 -0
  155. package/dist/types/math/src/vector.d.ts +4 -0
  156. package/dist/types/utils/src/bbox.d.ts +1 -1
  157. package/dist/types/utils/src/index.d.ts +1 -1
  158. package/dist/types/utils/src/withinBounds.d.ts +1 -1
  159. package/history.ts +186 -0
  160. package/package.json +9 -4
  161. package/dist/dev/chunk-56C7N44U.js.map +0 -7
  162. package/dist/dev/chunk-DGCWVQGA.js.map +0 -7
  163. package/dist/dev/chunk-HQHB2BE4.js +0 -7
  164. package/dist/dev/chunk-HQHB2BE4.js.map +0 -7
  165. package/dist/prod/chunk-BUJ2ENHZ.js +0 -31
  166. package/dist/prod/chunk-C3FOHAIA.js +0 -7
  167. package/dist/prod/data/image-MI7OQWUS.js +0 -1
  168. package/dist/types/excalidraw/components/ButtonSelect.d.ts +0 -9
  169. package/dist/types/excalidraw/store.d.ts +0 -129
  170. /package/dist/dev/data/{image-BLSI3C2P.js.map → image-JTJWA4BG.js.map} +0 -0
  171. /package/dist/dev/locales/{en-AAITTNRF.js.map → en-PIB5PD3P.js.map} +0 -0
@@ -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 } 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,11 @@ 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
+ export declare const isSharpArrow: (element?: ExcalidrawElement) => element is ExcalidrawArrowElement;
21
+ export declare const isCurvedArrow: (element?: ExcalidrawElement) => element is ExcalidrawArrowElement;
19
22
  export declare const isLinearElementType: (elementType: ElementOrToolType) => boolean;
20
23
  export declare const isBindingElement: (element?: ExcalidrawElement | null, includeLocked?: boolean) => element is ExcalidrawLinearElement;
21
24
  export declare const isBindingElementType: (elementType: ElementOrToolType) => boolean;
@@ -27,6 +30,7 @@ export declare const isExcalidrawElement: (element: any) => element is Excalidra
27
30
  export declare const isFlowchartNodeElement: (element: ExcalidrawElement) => element is ExcalidrawFlowchartNodeElement;
28
31
  export declare const hasBoundTextElement: (element: ExcalidrawElement | null) => element is MarkNonNullable<ExcalidrawBindableElement, "boundElements">;
29
32
  export declare const isBoundToContainer: (element: ExcalidrawElement | null) => element is ExcalidrawTextElementWithContainer;
33
+ export declare const isArrowBoundToElement: (element: ExcalidrawArrowElement) => boolean;
30
34
  export declare const isUsingAdaptiveRadius: (type: string) => boolean;
31
35
  export declare const isUsingProportionalRadius: (type: string) => boolean;
32
36
  export declare const canApplyRoundnessTypeToElement: (roundnessType: RoundnessType, element: ExcalidrawElement) => boolean;
@@ -37,3 +41,13 @@ export declare const getDefaultRoundnessTypeForElement: (element: ExcalidrawElem
37
41
  } | null;
38
42
  export declare const isFixedPointBinding: (binding: PointBinding | FixedPointBinding) => binding is FixedPointBinding;
39
43
  export declare const isBounds: (box: unknown) => box is Bounds;
44
+ export declare const getLinearElementSubType: (element: ExcalidrawLinearElement) => ExcalidrawLinearElementSubType;
45
+ /**
46
+ * Checks if current element points meet all the conditions for polygon=true
47
+ * (this isn't a element type check, for that use isLineElement).
48
+ *
49
+ * If you want to check if points *can* be turned into a polygon, use
50
+ * canBecomePolygon(points).
51
+ */
52
+ export declare const isValidPolygon: (points: ExcalidrawLineElement["points"]) => boolean;
53
+ export declare const canBecomePolygon: (points: ExcalidrawLineElement["points"]) => boolean;
@@ -205,6 +205,11 @@ export type PointBinding = {
205
205
  export type FixedPointBinding = Merge<PointBinding, {
206
206
  fixedPoint: FixedPoint;
207
207
  }>;
208
+ type Index = number;
209
+ export type PointsPositionUpdates = Map<Index, {
210
+ point: LocalPoint;
211
+ isDragging?: boolean;
212
+ }>;
208
213
  export type Arrowhead = "arrow" | "bar" | "dot" | "circle" | "circle_outline" | "triangle" | "triangle_outline" | "diamond" | "diamond_outline" | "crowfoot_one" | "crowfoot_many" | "crowfoot_one_or_many";
209
214
  export type ExcalidrawLinearElement = _ExcalidrawElementBase & Readonly<{
210
215
  type: "line" | "arrow";
@@ -215,10 +220,14 @@ export type ExcalidrawLinearElement = _ExcalidrawElementBase & Readonly<{
215
220
  startArrowhead: Arrowhead | null;
216
221
  endArrowhead: Arrowhead | null;
217
222
  }>;
223
+ export type ExcalidrawLineElement = ExcalidrawLinearElement & Readonly<{
224
+ type: "line";
225
+ polygon: boolean;
226
+ }>;
218
227
  export type FixedSegment = {
219
228
  start: LocalPoint;
220
229
  end: LocalPoint;
221
- index: number;
230
+ index: Index;
222
231
  };
223
232
  export type ExcalidrawArrowElement = ExcalidrawLinearElement & Readonly<{
224
233
  type: "arrow";
@@ -279,4 +288,8 @@ export type SceneElementsMap = Map<ExcalidrawElement["id"], Ordered<ExcalidrawEl
279
288
  */
280
289
  export type NonDeletedSceneElementsMap = Map<ExcalidrawElement["id"], Ordered<NonDeletedExcalidrawElement>> & MakeBrand<"NonDeletedSceneElementsMap">;
281
290
  export type ElementsMapOrArray = readonly ExcalidrawElement[] | Readonly<ElementsMap>;
291
+ export type ExcalidrawLinearElementSubType = "line" | "sharpArrow" | "curvedArrow" | "elbowArrow";
292
+ export type ConvertibleGenericTypes = "rectangle" | "diamond" | "ellipse";
293
+ export type ConvertibleLinearTypes = ExcalidrawLinearElementSubType;
294
+ export type ConvertibleTypes = ConvertibleGenericTypes | ConvertibleLinearTypes;
282
295
  export {};
@@ -1,5 +1,5 @@
1
1
  import type { AppState } from "@excalidraw/excalidraw/types";
2
- import type Scene from "@excalidraw/excalidraw/scene/Scene";
2
+ import type { Scene } from "./Scene";
3
3
  import type { ExcalidrawElement } from "./types";
4
4
  export declare const moveOneLeft: (allElements: readonly ExcalidrawElement[], appState: AppState, scene: Scene) => readonly ExcalidrawElement[];
5
5
  export declare const moveOneRight: (allElements: readonly ExcalidrawElement[], appState: AppState, scene: Scene) => readonly ExcalidrawElement[];
@@ -28,7 +28,7 @@ export declare const actionAddToLibrary: {
28
28
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
29
29
  isBindingEnabled: boolean;
30
30
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
31
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
31
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
32
32
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
33
33
  frameRendering: {
34
34
  enabled: boolean;
@@ -39,10 +39,11 @@ export declare const actionAddToLibrary: {
39
39
  editingFrame: string | null;
40
40
  elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
41
41
  editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
42
- editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
42
+ editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
43
43
  activeTool: {
44
44
  lastActiveTool: import("../types").ActiveTool | null;
45
45
  locked: boolean;
46
+ fromSelection: boolean;
46
47
  } & import("../types").ActiveTool;
47
48
  penMode: boolean;
48
49
  penDetected: boolean;
@@ -76,7 +77,7 @@ export declare const actionAddToLibrary: {
76
77
  zoom: Readonly<{
77
78
  value: import("../types").NormalizedZoomValue;
78
79
  }>;
79
- openMenu: "shape" | "canvas" | null;
80
+ openMenu: "canvas" | "shape" | null;
80
81
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
81
82
  openSidebar: {
82
83
  name: string;
@@ -154,8 +155,8 @@ export declare const actionAddToLibrary: {
154
155
  data: import("../charts").Spreadsheet;
155
156
  };
156
157
  pendingImageElementId: string | null;
157
- showHyperlinkPopup: false | "editor" | "info";
158
- selectedLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
158
+ showHyperlinkPopup: false | "info" | "editor";
159
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
159
160
  snapLines: readonly import("../snapping").SnapLine[];
160
161
  originSnapOffset: {
161
162
  x: number;
@@ -166,16 +167,14 @@ export declare const actionAddToLibrary: {
166
167
  followedBy: Set<import("../types").SocketId>;
167
168
  isCropping: boolean;
168
169
  croppingElementId: string | null;
169
- searchMatches: readonly {
170
- id: string;
171
- focus: boolean;
172
- matchedLines: {
173
- offsetX: number;
174
- offsetY: number;
175
- width: number;
176
- height: number;
177
- }[];
178
- }[];
170
+ searchMatches: Readonly<{
171
+ focusedId: string | null;
172
+ matches: readonly import("../types").SearchMatch[];
173
+ }> | null;
174
+ activeLockedId: string | null;
175
+ lockedMultiSelections: {
176
+ [groupId: string]: true;
177
+ };
179
178
  };
180
179
  } | {
181
180
  captureUpdate: "EVENTUALLY";
@@ -198,7 +197,7 @@ export declare const actionAddToLibrary: {
198
197
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
199
198
  isBindingEnabled: boolean;
200
199
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
201
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
200
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
202
201
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
203
202
  frameRendering: {
204
203
  enabled: boolean;
@@ -209,10 +208,11 @@ export declare const actionAddToLibrary: {
209
208
  editingFrame: string | null;
210
209
  elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
211
210
  editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
212
- editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
211
+ editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
213
212
  activeTool: {
214
213
  lastActiveTool: import("../types").ActiveTool | null;
215
214
  locked: boolean;
215
+ fromSelection: boolean;
216
216
  } & import("../types").ActiveTool;
217
217
  penMode: boolean;
218
218
  penDetected: boolean;
@@ -246,7 +246,7 @@ export declare const actionAddToLibrary: {
246
246
  zoom: Readonly<{
247
247
  value: import("../types").NormalizedZoomValue;
248
248
  }>;
249
- openMenu: "shape" | "canvas" | null;
249
+ openMenu: "canvas" | "shape" | null;
250
250
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
251
251
  openSidebar: {
252
252
  name: string;
@@ -329,8 +329,8 @@ export declare const actionAddToLibrary: {
329
329
  data: import("../charts").Spreadsheet;
330
330
  };
331
331
  pendingImageElementId: string | null;
332
- showHyperlinkPopup: false | "editor" | "info";
333
- selectedLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
332
+ showHyperlinkPopup: false | "info" | "editor";
333
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
334
334
  snapLines: readonly import("../snapping").SnapLine[];
335
335
  originSnapOffset: {
336
336
  x: number;
@@ -341,16 +341,14 @@ export declare const actionAddToLibrary: {
341
341
  followedBy: Set<import("../types").SocketId>;
342
342
  isCropping: boolean;
343
343
  croppingElementId: string | null;
344
- searchMatches: readonly {
345
- id: string;
346
- focus: boolean;
347
- matchedLines: {
348
- offsetX: number;
349
- offsetY: number;
350
- width: number;
351
- height: number;
352
- }[];
353
- }[];
344
+ searchMatches: Readonly<{
345
+ focusedId: string | null;
346
+ matches: readonly import("../types").SearchMatch[];
347
+ }> | null;
348
+ activeLockedId: string | null;
349
+ lockedMultiSelections: {
350
+ [groupId: string]: true;
351
+ };
354
352
  };
355
353
  }> | {
356
354
  captureUpdate: "EVENTUALLY";
@@ -373,7 +371,7 @@ export declare const actionAddToLibrary: {
373
371
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
374
372
  isBindingEnabled: boolean;
375
373
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
376
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
374
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
377
375
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
378
376
  frameRendering: {
379
377
  enabled: boolean;
@@ -384,10 +382,11 @@ export declare const actionAddToLibrary: {
384
382
  editingFrame: string | null;
385
383
  elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
386
384
  editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
387
- editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
385
+ editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
388
386
  activeTool: {
389
387
  lastActiveTool: import("../types").ActiveTool | null;
390
388
  locked: boolean;
389
+ fromSelection: boolean;
391
390
  } & import("../types").ActiveTool;
392
391
  penMode: boolean;
393
392
  penDetected: boolean;
@@ -421,7 +420,7 @@ export declare const actionAddToLibrary: {
421
420
  zoom: Readonly<{
422
421
  value: import("../types").NormalizedZoomValue;
423
422
  }>;
424
- openMenu: "shape" | "canvas" | null;
423
+ openMenu: "canvas" | "shape" | null;
425
424
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
426
425
  openSidebar: {
427
426
  name: string;
@@ -504,8 +503,8 @@ export declare const actionAddToLibrary: {
504
503
  data: import("../charts").Spreadsheet;
505
504
  };
506
505
  pendingImageElementId: string | null;
507
- showHyperlinkPopup: false | "editor" | "info";
508
- selectedLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
506
+ showHyperlinkPopup: false | "info" | "editor";
507
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
509
508
  snapLines: readonly import("../snapping").SnapLine[];
510
509
  originSnapOffset: {
511
510
  x: number;
@@ -516,16 +515,14 @@ export declare const actionAddToLibrary: {
516
515
  followedBy: Set<import("../types").SocketId>;
517
516
  isCropping: boolean;
518
517
  croppingElementId: string | null;
519
- searchMatches: readonly {
520
- id: string;
521
- focus: boolean;
522
- matchedLines: {
523
- offsetX: number;
524
- offsetY: number;
525
- width: number;
526
- height: number;
527
- }[];
528
- }[];
518
+ searchMatches: Readonly<{
519
+ focusedId: string | null;
520
+ matches: readonly import("../types").SearchMatch[];
521
+ }> | null;
522
+ activeLockedId: string | null;
523
+ lockedMultiSelections: {
524
+ [groupId: string]: true;
525
+ };
529
526
  };
530
527
  };
531
528
  label: string;
@@ -15,10 +15,10 @@ export declare const actionAlignTop: {
15
15
  elements: ExcalidrawElement[];
16
16
  captureUpdate: "IMMEDIATELY";
17
17
  };
18
- keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
18
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
19
19
  PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
20
20
  } & {
21
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
21
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => 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: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
36
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
37
37
  PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
38
38
  } & {
39
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
39
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => 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: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
54
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
55
55
  PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
56
56
  } & {
57
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
57
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => 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: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean;
72
+ keyTest: (event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean;
73
73
  PanelComponent: ({ elements, appState, updateData, app }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
74
74
  } & {
75
- keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>) => boolean) | undefined;
75
+ keyTest?: ((event: import("react").KeyboardEvent<Element> | KeyboardEvent) => boolean) | undefined;
76
76
  };
77
77
  export declare const actionAlignVerticallyCentered: {
78
78
  name: "alignVerticallyCentered";
@@ -48,7 +48,7 @@ export declare const actionBindText: {
48
48
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
49
49
  isBindingEnabled: boolean;
50
50
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
51
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
51
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
52
52
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
53
53
  frameRendering: {
54
54
  enabled: boolean;
@@ -59,10 +59,11 @@ export declare const actionBindText: {
59
59
  editingFrame: string | null;
60
60
  elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
61
61
  editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
62
- editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
62
+ editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
63
63
  activeTool: {
64
64
  lastActiveTool: import("../types").ActiveTool | null;
65
65
  locked: boolean;
66
+ fromSelection: boolean;
66
67
  } & import("../types").ActiveTool;
67
68
  penMode: boolean;
68
69
  penDetected: boolean;
@@ -96,7 +97,7 @@ export declare const actionBindText: {
96
97
  zoom: Readonly<{
97
98
  value: import("../types").NormalizedZoomValue;
98
99
  }>;
99
- openMenu: "shape" | "canvas" | null;
100
+ openMenu: "canvas" | "shape" | null;
100
101
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
101
102
  openSidebar: {
102
103
  name: string;
@@ -176,8 +177,8 @@ export declare const actionBindText: {
176
177
  data: import("../charts").Spreadsheet;
177
178
  };
178
179
  pendingImageElementId: string | null;
179
- showHyperlinkPopup: false | "editor" | "info";
180
- selectedLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
180
+ showHyperlinkPopup: false | "info" | "editor";
181
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
181
182
  snapLines: readonly import("../snapping").SnapLine[];
182
183
  originSnapOffset: {
183
184
  x: number;
@@ -188,16 +189,14 @@ export declare const actionBindText: {
188
189
  followedBy: Set<import("../types").SocketId>;
189
190
  isCropping: boolean;
190
191
  croppingElementId: string | null;
191
- searchMatches: readonly {
192
- id: string;
193
- focus: boolean;
194
- matchedLines: {
195
- offsetX: number;
196
- offsetY: number;
197
- width: number;
198
- height: number;
199
- }[];
200
- }[];
192
+ searchMatches: Readonly<{
193
+ focusedId: string | null;
194
+ matches: readonly import("../types").SearchMatch[];
195
+ }> | null;
196
+ activeLockedId: string | null;
197
+ lockedMultiSelections: {
198
+ [groupId: string]: true;
199
+ };
201
200
  };
202
201
  captureUpdate: "IMMEDIATELY";
203
202
  };
@@ -235,7 +234,7 @@ export declare const actionWrapTextInContainer: {
235
234
  selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
236
235
  isBindingEnabled: boolean;
237
236
  startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
238
- suggestedBindings: import("@excalidraw/element/binding").SuggestedBinding[];
237
+ suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
239
238
  frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
240
239
  frameRendering: {
241
240
  enabled: boolean;
@@ -246,10 +245,11 @@ export declare const actionWrapTextInContainer: {
246
245
  editingFrame: string | null;
247
246
  elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
248
247
  editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
249
- editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
248
+ editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
250
249
  activeTool: {
251
250
  lastActiveTool: import("../types").ActiveTool | null;
252
251
  locked: boolean;
252
+ fromSelection: boolean;
253
253
  } & import("../types").ActiveTool;
254
254
  penMode: boolean;
255
255
  penDetected: boolean;
@@ -283,7 +283,7 @@ export declare const actionWrapTextInContainer: {
283
283
  zoom: Readonly<{
284
284
  value: import("../types").NormalizedZoomValue;
285
285
  }>;
286
- openMenu: "shape" | "canvas" | null;
286
+ openMenu: "canvas" | "shape" | null;
287
287
  openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
288
288
  openSidebar: {
289
289
  name: string;
@@ -363,8 +363,8 @@ export declare const actionWrapTextInContainer: {
363
363
  data: import("../charts").Spreadsheet;
364
364
  };
365
365
  pendingImageElementId: string | null;
366
- showHyperlinkPopup: false | "editor" | "info";
367
- selectedLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
366
+ showHyperlinkPopup: false | "info" | "editor";
367
+ selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
368
368
  snapLines: readonly import("../snapping").SnapLine[];
369
369
  originSnapOffset: {
370
370
  x: number;
@@ -375,16 +375,14 @@ export declare const actionWrapTextInContainer: {
375
375
  followedBy: Set<import("../types").SocketId>;
376
376
  isCropping: boolean;
377
377
  croppingElementId: string | null;
378
- searchMatches: readonly {
379
- id: string;
380
- focus: boolean;
381
- matchedLines: {
382
- offsetX: number;
383
- offsetY: number;
384
- width: number;
385
- height: number;
386
- }[];
387
- }[];
378
+ searchMatches: Readonly<{
379
+ focusedId: string | null;
380
+ matches: readonly import("../types").SearchMatch[];
381
+ }> | null;
382
+ activeLockedId: string | null;
383
+ lockedMultiSelections: {
384
+ [groupId: string]: true;
385
+ };
388
386
  };
389
387
  captureUpdate: "IMMEDIATELY";
390
388
  };