@zsviczian/excalidraw 0.18.0-16 → 0.18.0-18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/dist/excalidraw.development.js +53 -31
  2. package/dist/excalidraw.production.min.js +1 -1
  3. package/dist/styles.development.css +32 -0
  4. package/dist/styles.production.css +1 -0
  5. package/package.json +1 -1
  6. package/types/element/src/linearElementEditor.d.ts +1 -8
  7. package/types/element/src/sizeHelpers.d.ts +1 -0
  8. package/types/element/src/typeChecks.d.ts +9 -1
  9. package/types/excalidraw/actions/actionAddToLibrary.d.ts +12 -0
  10. package/types/excalidraw/actions/actionBoundText.d.ts +8 -0
  11. package/types/excalidraw/actions/actionCanvas.d.ts +75 -15
  12. package/types/excalidraw/actions/actionClipboard.d.ts +24 -0
  13. package/types/excalidraw/actions/actionCropEditor.d.ts +4 -0
  14. package/types/excalidraw/actions/actionDeleteSelected.d.ts +12 -0
  15. package/types/excalidraw/actions/actionElementLink.d.ts +4 -0
  16. package/types/excalidraw/actions/actionElementLock.d.ts +23 -16
  17. package/types/excalidraw/actions/actionEmbeddable.d.ts +4 -0
  18. package/types/excalidraw/actions/actionExport.d.ts +36 -0
  19. package/types/excalidraw/actions/actionFinalize.d.ts +55 -8
  20. package/types/excalidraw/actions/actionFrame.d.ts +16 -0
  21. package/types/excalidraw/actions/actionGroup.d.ts +8 -0
  22. package/types/excalidraw/actions/actionLinearEditor.d.ts +5 -2
  23. package/types/excalidraw/actions/actionLink.d.ts +4 -0
  24. package/types/excalidraw/actions/actionMenu.d.ts +12 -0
  25. package/types/excalidraw/actions/actionNavigate.d.ts +8 -0
  26. package/types/excalidraw/actions/actionProperties.d.ts +60 -0
  27. package/types/excalidraw/actions/actionSelectAll.d.ts +4 -0
  28. package/types/excalidraw/actions/actionStyles.d.ts +4 -0
  29. package/types/excalidraw/actions/actionToggleGridMode.d.ts +4 -0
  30. package/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +4 -0
  31. package/types/excalidraw/actions/actionToggleSearchMenu.d.ts +4 -0
  32. package/types/excalidraw/actions/actionToggleStats.d.ts +4 -0
  33. package/types/excalidraw/actions/actionToggleViewMode.d.ts +4 -0
  34. package/types/excalidraw/actions/actionToggleZenMode.d.ts +4 -0
  35. package/types/excalidraw/appState.d.ts +9 -0
  36. package/types/excalidraw/components/UnlockPopup.d.ts +8 -0
  37. package/types/excalidraw/components/icons.d.ts +1 -0
  38. package/types/excalidraw/index.d.ts +1 -1
  39. package/types/excalidraw/obsidianUtils.d.ts +9 -1
  40. package/types/excalidraw/types.d.ts +8 -0
@@ -5421,6 +5421,38 @@
5421
5421
  opacity: 1;
5422
5422
  }
5423
5423
  }
5424
+ /*!********************************************************************************************************************************************************************************************************!*\
5425
+ !*** css ../../node_modules/css-loader/dist/cjs.js!../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!../../node_modules/sass-loader/dist/cjs.js!./components/UnlockPopup.scss ***!
5426
+ \********************************************************************************************************************************************************************************************************/
5427
+ .excalidraw .UnlockPopup {
5428
+ position: absolute;
5429
+ z-index: var(--zIndex-interactiveCanvas);
5430
+ display: flex;
5431
+ justify-content: center;
5432
+ align-items: center;
5433
+ gap: 0.5rem;
5434
+ border-radius: 0.5rem;
5435
+ background: var(--island-bg-color);
5436
+ box-shadow: var(--shadow-island);
5437
+ padding: 0.8rem;
5438
+ cursor: pointer;
5439
+ color: var(--color-gray-60);
5440
+ }
5441
+ .excalidraw .UnlockPopup:focus {
5442
+ outline: none;
5443
+ }
5444
+ .excalidraw .UnlockPopup svg {
5445
+ display: block;
5446
+ width: 1.25rem;
5447
+ height: 1.25rem;
5448
+ color: var(--color-gray-60);
5449
+ }
5450
+ .excalidraw .UnlockPopup:hover svg {
5451
+ color: var(--color-primary);
5452
+ }
5453
+ .excalidraw .UnlockPopup:active svg {
5454
+ transform: scale(0.95);
5455
+ }
5424
5456
  /*!****************************************************************************************************************************************************************************************************************!*\
5425
5457
  !*** css ../../node_modules/css-loader/dist/cjs.js!../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!../../node_modules/sass-loader/dist/cjs.js!./components/footer/FooterCenter.scss ***!
5426
5458
  \****************************************************************************************************************************************************************************************************************/
@@ -60,6 +60,7 @@
60
60
  .excalidraw .App-toolbar.zen-mode .ToolIcon__keybinding,.excalidraw .App-toolbar.zen-mode .HintViewer{display:none}.excalidraw .App-toolbar__divider{width:1px;height:1.5rem;align-self:center;background-color:var(--default-border-color);margin:0 .25rem}.excalidraw--mobile.excalidraw .App-toolbar__divider{margin:0}.excalidraw .App-toolbar__extra-tools-trigger{box-shadow:none;border:0;background-color:rgba(0,0,0,0)}.excalidraw .App-toolbar__extra-tools-trigger:active{background-color:var(--button-hover-bg);box-shadow:0 0 0 1px var(--button-active-border, var(--color-primary-darkest)) inset}.excalidraw .App-toolbar__extra-tools-trigger--selected,.excalidraw .App-toolbar__extra-tools-trigger--selected:hover{background:var(--color-primary-light);color:var(--color-primary)}.excalidraw .App-toolbar__extra-tools-dropdown{margin-top:.375rem;right:0;min-width:11.875rem;z-index:1}
61
61
  .excalidraw .SVGLayer{pointer-events:none;width:100vw;height:100vh;position:fixed;top:0;left:0;z-index:var(--zIndex-svgLayer)}.excalidraw .SVGLayer svg{image-rendering:auto;overflow:visible;position:absolute;width:100%;height:100%;top:0;left:0}
62
62
  .excalidraw .Toast{animation:fade-in .5s;background-color:var(--button-gray-1);border-radius:4px;bottom:10px;box-sizing:border-box;cursor:default;left:50%;margin-left:-150px;padding:4px 0;position:absolute;text-align:center;width:300px;z-index:999999}.excalidraw .Toast .Toast__message{padding:0 1.6rem;color:var(--popup-text-color);white-space:pre-wrap}.excalidraw .Toast .close{position:absolute;top:0;right:0;padding:.4rem}.excalidraw .Toast .close .ToolIcon__icon{width:1.2rem;height:1.2rem}@keyframes fade-in{from{opacity:0}to{opacity:1}}
63
+ .excalidraw .UnlockPopup{position:absolute;z-index:var(--zIndex-interactiveCanvas);display:flex;justify-content:center;align-items:center;gap:.5rem;border-radius:.5rem;background:var(--island-bg-color);box-shadow:var(--shadow-island);padding:.8rem;cursor:pointer;color:var(--color-gray-60)}.excalidraw .UnlockPopup:focus{outline:none}.excalidraw .UnlockPopup svg{display:block;width:1.25rem;height:1.25rem;color:var(--color-gray-60)}.excalidraw .UnlockPopup:hover svg{color:var(--color-primary)}.excalidraw .UnlockPopup:active svg{transform:scale(0.95)}
63
64
  .footer-center{pointer-events:none;display:flex;width:100%;justify-content:flex-start;margin-inline-end:.6rem}.footer-center>*{pointer-events:var(--ui-pointerEvents)}
64
65
  .excalidraw .collab-button{--button-bg: var(--color-primary);--button-color: var(--color-surface-lowest);--button-border: var(--color-primary);--button-width: var(--lg-button-size);--button-height: var(--lg-button-size);--button-hover-bg: var(--color-primary-darker);--button-hover-border: var(--color-primary-darker);--button-active-bg: var(--color-primary-darker);box-shadow:0 0 0 1px var(--color-surface-lowest);flex-shrink:0}.excalidraw .collab-button.active.active{background-color:#0fb884;border-color:#0fb884}.excalidraw .collab-button.active.active svg{color:#fff}.excalidraw .collab-button.active.active:hover,.excalidraw .collab-button.active.active:active{background-color:#0fb884;border-color:#0fb884}.excalidraw .CollabButton.is-collaborating{background-color:var(--button-special-active-bg-color)}.excalidraw .CollabButton.is-collaborating .ToolIcon__icon svg,.excalidraw .CollabButton.is-collaborating .ToolIcon__label{color:var(--icon-green-fill-color)}.excalidraw .CollabButton-collaborators{min-width:1em;min-height:1em;line-height:1;position:absolute;bottom:-5px;padding:3px;border-radius:50%;background-color:#b2f2bb;color:#2b8a3e;font-size:.6rem;font-family:"Cascadia"}:root[dir=ltr] .excalidraw .CollabButton-collaborators{right:-5px}:root[dir=rtl] .excalidraw .CollabButton-collaborators{left:-5px}
65
66
  .excalidraw .ExcalidrawLogo{--logo-icon--xs: 2rem;--logo-text--xs: 1.5rem;--logo-icon--small: 2.5rem;--logo-text--small: 1.75rem;--logo-icon--normal: 3rem;--logo-text--normal: 2.2rem;--logo-icon--large: 90px;--logo-text--large: 65px;display:flex;align-items:center}.excalidraw .ExcalidrawLogo svg{flex:0 0 auto}.excalidraw .ExcalidrawLogo .ExcalidrawLogo-icon{width:auto;color:var(--color-logo-icon)}.excalidraw .ExcalidrawLogo .ExcalidrawLogo-text{margin-left:.75rem;width:auto;color:var(--color-logo-text)}.excalidraw .ExcalidrawLogo.is-xs .ExcalidrawLogo-icon{height:var(--logo-icon--xs)}.excalidraw .ExcalidrawLogo.is-xs .ExcalidrawLogo-text{height:var(--logo-text--xs)}.excalidraw .ExcalidrawLogo.is-small .ExcalidrawLogo-icon{height:var(--logo-icon--small)}.excalidraw .ExcalidrawLogo.is-small .ExcalidrawLogo-text{height:var(--logo-text--small)}.excalidraw .ExcalidrawLogo.is-normal .ExcalidrawLogo-icon{height:var(--logo-icon--normal)}.excalidraw .ExcalidrawLogo.is-normal .ExcalidrawLogo-text{height:var(--logo-text--normal)}.excalidraw .ExcalidrawLogo.is-large .ExcalidrawLogo-icon{height:var(--logo-icon--large)}.excalidraw .ExcalidrawLogo.is-large .ExcalidrawLogo-text{height:var(--logo-text--large)}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zsviczian/excalidraw",
3
- "version": "0.18.0-16",
3
+ "version": "0.18.0-18",
4
4
  "main": "main.js",
5
5
  "module": "./dist/prod/index.js",
6
6
  "types": "types/excalidraw/index.d.ts",
@@ -4,11 +4,6 @@ import type { AppState, PointerCoords, InteractiveCanvasAppState, AppClassProper
4
4
  import type { Scene } from "./Scene";
5
5
  import type { Bounds } from "./bounds";
6
6
  import type { NonDeleted, ExcalidrawLinearElement, ExcalidrawElement, PointBinding, ExcalidrawBindableElement, ExcalidrawTextElementWithContainer, ElementsMap, NonDeletedSceneElementsMap, ExcalidrawElbowArrowElement, PointsPositionUpdates } from "./types";
7
- declare const editorMidPointsCache: {
8
- version: number | null;
9
- points: (GlobalPoint | null)[];
10
- zoom: number | null;
11
- };
12
7
  export declare class LinearElementEditor {
13
8
  readonly elementId: ExcalidrawElement["id"] & {
14
9
  _brand: "excalidrawLinearElementId";
@@ -58,8 +53,7 @@ export declare class LinearElementEditor {
58
53
  y: number;
59
54
  }[]) => void, linearElementEditor: LinearElementEditor, scene: Scene): LinearElementEditor | null;
60
55
  static handlePointerUp(event: PointerEvent, editingLinearElement: LinearElementEditor, appState: AppState, scene: Scene): LinearElementEditor;
61
- static getEditorMidPoints: (element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap, appState: InteractiveCanvasAppState) => (typeof editorMidPointsCache)["points"];
62
- static updateEditorMidPointsCache: (element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap, appState: InteractiveCanvasAppState) => void;
56
+ static getEditorMidPoints: (element: NonDeleted<ExcalidrawLinearElement>, elementsMap: ElementsMap, appState: InteractiveCanvasAppState) => (GlobalPoint | null)[];
63
57
  static getSegmentMidpointHitCoords: (linearElementEditor: LinearElementEditor, scenePointer: {
64
58
  x: number;
65
59
  y: number;
@@ -121,4 +115,3 @@ export declare class LinearElementEditor {
121
115
  static moveFixedSegment(linearElement: LinearElementEditor, index: number, x: number, y: number, scene: Scene): LinearElementEditor;
122
116
  static deleteFixedSegment(element: ExcalidrawElbowArrowElement, scene: Scene, index: number): void;
123
117
  }
124
- export {};
@@ -1,5 +1,6 @@
1
1
  import type { AppState, Offsets, Zoom } from "@excalidraw/excalidraw/types";
2
2
  import type { ElementsMap, ExcalidrawElement } from "./types";
3
+ export declare const INVISIBLY_SMALL_ELEMENT_SIZE = 0.1;
3
4
  export declare const isInvisiblySmallElement: (element: ExcalidrawElement) => boolean;
4
5
  export declare const isElementInViewport: (element: ExcalidrawElement, width: number, height: number, viewTransformations: {
5
6
  zoom: Zoom;
@@ -42,4 +42,12 @@ export declare const getDefaultRoundnessTypeForElement: (element: ExcalidrawElem
42
42
  export declare const isFixedPointBinding: (binding: PointBinding | FixedPointBinding) => binding is FixedPointBinding;
43
43
  export declare const isBounds: (box: unknown) => box is Bounds;
44
44
  export declare const getLinearElementSubType: (element: ExcalidrawLinearElement) => ExcalidrawLinearElementSubType;
45
- export declare const isEligiblePolygon: (element: ExcalidrawElement) => element is ExcalidrawLineElement;
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;
@@ -206,6 +206,10 @@ export declare const actionAddToLibrary: {
206
206
  focusedId: string | null;
207
207
  matches: readonly import("../types").SearchMatch[];
208
208
  }> | null;
209
+ activeLockedId: string | null;
210
+ lockedMultiSelections: {
211
+ [groupId: string]: true;
212
+ };
209
213
  };
210
214
  } | {
211
215
  captureUpdate: "EVENTUALLY";
@@ -412,6 +416,10 @@ export declare const actionAddToLibrary: {
412
416
  focusedId: string | null;
413
417
  matches: readonly import("../types").SearchMatch[];
414
418
  }> | null;
419
+ activeLockedId: string | null;
420
+ lockedMultiSelections: {
421
+ [groupId: string]: true;
422
+ };
415
423
  };
416
424
  }> | {
417
425
  captureUpdate: "EVENTUALLY";
@@ -618,6 +626,10 @@ export declare const actionAddToLibrary: {
618
626
  focusedId: string | null;
619
627
  matches: readonly import("../types").SearchMatch[];
620
628
  }> | null;
629
+ activeLockedId: string | null;
630
+ lockedMultiSelections: {
631
+ [groupId: string]: true;
632
+ };
621
633
  };
622
634
  };
623
635
  label: string;
@@ -228,6 +228,10 @@ export declare const actionBindText: {
228
228
  focusedId: string | null;
229
229
  matches: readonly import("../types").SearchMatch[];
230
230
  }> | null;
231
+ activeLockedId: string | null;
232
+ lockedMultiSelections: {
233
+ [groupId: string]: true;
234
+ };
231
235
  };
232
236
  captureUpdate: "IMMEDIATELY";
233
237
  };
@@ -446,6 +450,10 @@ export declare const actionWrapTextInContainer: {
446
450
  focusedId: string | null;
447
451
  matches: readonly import("../types").SearchMatch[];
448
452
  }> | null;
453
+ activeLockedId: string | null;
454
+ lockedMultiSelections: {
455
+ [groupId: string]: true;
456
+ };
449
457
  };
450
458
  captureUpdate: "IMMEDIATELY";
451
459
  };
@@ -133,7 +133,7 @@ export declare const actionClearCanvas: {
133
133
  name: "help" | "imageExport" | "jsonExport";
134
134
  } | {
135
135
  name: "ttd";
136
- tab: "mermaid" | "text-to-diagram"; /** zoom content to cover X of the viewport, when fitToViewport=true */
136
+ tab: "mermaid" | "text-to-diagram";
137
137
  } | {
138
138
  name: "commandPalette";
139
139
  } | {
@@ -224,6 +224,10 @@ export declare const actionClearCanvas: {
224
224
  focusedId: string | null;
225
225
  matches: readonly import("../types").SearchMatch[];
226
226
  }> | null;
227
+ activeLockedId: string | null;
228
+ lockedMultiSelections: {
229
+ [groupId: string]: true;
230
+ };
227
231
  };
228
232
  captureUpdate: "IMMEDIATELY";
229
233
  };
@@ -318,7 +322,7 @@ export declare const actionZoomIn: {
318
322
  name: "help" | "imageExport" | "jsonExport";
319
323
  } | {
320
324
  name: "ttd";
321
- tab: "mermaid" | "text-to-diagram"; /** zoom content to cover X of the viewport, when fitToViewport=true */
325
+ tab: "mermaid" | "text-to-diagram";
322
326
  } | {
323
327
  name: "commandPalette";
324
328
  } | {
@@ -442,6 +446,10 @@ export declare const actionZoomIn: {
442
446
  focusedId: string | null;
443
447
  matches: readonly import("../types").SearchMatch[];
444
448
  }> | null;
449
+ activeLockedId: string | null;
450
+ lockedMultiSelections: {
451
+ [groupId: string]: true;
452
+ };
445
453
  };
446
454
  captureUpdate: "EVENTUALLY";
447
455
  };
@@ -538,7 +546,7 @@ export declare const actionZoomOut: {
538
546
  name: "help" | "imageExport" | "jsonExport";
539
547
  } | {
540
548
  name: "ttd";
541
- tab: "mermaid" | "text-to-diagram"; /** zoom content to cover X of the viewport, when fitToViewport=true */
549
+ tab: "mermaid" | "text-to-diagram";
542
550
  } | {
543
551
  name: "commandPalette";
544
552
  } | {
@@ -662,6 +670,10 @@ export declare const actionZoomOut: {
662
670
  focusedId: string | null;
663
671
  matches: readonly import("../types").SearchMatch[];
664
672
  }> | null;
673
+ activeLockedId: string | null;
674
+ lockedMultiSelections: {
675
+ [groupId: string]: true;
676
+ };
665
677
  };
666
678
  captureUpdate: "EVENTUALLY";
667
679
  };
@@ -758,7 +770,7 @@ export declare const actionResetZoom: {
758
770
  name: "help" | "imageExport" | "jsonExport";
759
771
  } | {
760
772
  name: "ttd";
761
- tab: "mermaid" | "text-to-diagram"; /** zoom content to cover X of the viewport, when fitToViewport=true */
773
+ tab: "mermaid" | "text-to-diagram";
762
774
  } | {
763
775
  name: "commandPalette";
764
776
  } | {
@@ -882,6 +894,10 @@ export declare const actionResetZoom: {
882
894
  focusedId: string | null;
883
895
  matches: readonly import("../types").SearchMatch[];
884
896
  }> | null;
897
+ activeLockedId: string | null;
898
+ lockedMultiSelections: {
899
+ [groupId: string]: true;
900
+ };
885
901
  };
886
902
  captureUpdate: "EVENTUALLY";
887
903
  };
@@ -984,7 +1000,7 @@ export declare const zoomToFitBounds: ({ bounds, appState, canvasOffsets, fitToV
984
1000
  name: "help" | "imageExport" | "jsonExport";
985
1001
  } | {
986
1002
  name: "ttd";
987
- tab: "mermaid" | "text-to-diagram"; /** zoom content to cover X of the viewport, when fitToViewport=true */
1003
+ tab: "mermaid" | "text-to-diagram";
988
1004
  } | {
989
1005
  name: "commandPalette";
990
1006
  } | {
@@ -1109,6 +1125,10 @@ export declare const zoomToFitBounds: ({ bounds, appState, canvasOffsets, fitToV
1109
1125
  focusedId: string | null;
1110
1126
  matches: readonly import("../types").SearchMatch[];
1111
1127
  }> | null;
1128
+ activeLockedId: string | null;
1129
+ lockedMultiSelections: {
1130
+ [groupId: string]: true;
1131
+ };
1112
1132
  };
1113
1133
  captureUpdate: "EVENTUALLY";
1114
1134
  };
@@ -1206,7 +1226,7 @@ export declare const zoomToFit: ({ canvasOffsets, targetElements, appState, fitT
1206
1226
  name: "help" | "imageExport" | "jsonExport";
1207
1227
  } | {
1208
1228
  name: "ttd";
1209
- tab: "mermaid" | "text-to-diagram"; /** zoom content to cover X of the viewport, when fitToViewport=true */
1229
+ tab: "mermaid" | "text-to-diagram";
1210
1230
  } | {
1211
1231
  name: "commandPalette";
1212
1232
  } | {
@@ -1331,6 +1351,10 @@ export declare const zoomToFit: ({ canvasOffsets, targetElements, appState, fitT
1331
1351
  focusedId: string | null;
1332
1352
  matches: readonly import("../types").SearchMatch[];
1333
1353
  }> | null;
1354
+ activeLockedId: string | null;
1355
+ lockedMultiSelections: {
1356
+ [groupId: string]: true;
1357
+ };
1334
1358
  };
1335
1359
  captureUpdate: "EVENTUALLY";
1336
1360
  };
@@ -1420,7 +1444,7 @@ export declare const actionZoomToFitSelectionInViewport: {
1420
1444
  name: "help" | "imageExport" | "jsonExport";
1421
1445
  } | {
1422
1446
  name: "ttd";
1423
- tab: "mermaid" | "text-to-diagram"; /** zoom content to cover X of the viewport, when fitToViewport=true */
1447
+ tab: "mermaid" | "text-to-diagram";
1424
1448
  } | {
1425
1449
  name: "commandPalette";
1426
1450
  } | {
@@ -1545,6 +1569,10 @@ export declare const actionZoomToFitSelectionInViewport: {
1545
1569
  focusedId: string | null;
1546
1570
  matches: readonly import("../types").SearchMatch[];
1547
1571
  }> | null;
1572
+ activeLockedId: string | null;
1573
+ lockedMultiSelections: {
1574
+ [groupId: string]: true;
1575
+ };
1548
1576
  };
1549
1577
  captureUpdate: "EVENTUALLY";
1550
1578
  };
@@ -1638,7 +1666,7 @@ export declare const actionZoomToFitSelection: {
1638
1666
  name: "help" | "imageExport" | "jsonExport";
1639
1667
  } | {
1640
1668
  name: "ttd";
1641
- tab: "mermaid" | "text-to-diagram"; /** zoom content to cover X of the viewport, when fitToViewport=true */
1669
+ tab: "mermaid" | "text-to-diagram";
1642
1670
  } | {
1643
1671
  name: "commandPalette";
1644
1672
  } | {
@@ -1763,6 +1791,10 @@ export declare const actionZoomToFitSelection: {
1763
1791
  focusedId: string | null;
1764
1792
  matches: readonly import("../types").SearchMatch[];
1765
1793
  }> | null;
1794
+ activeLockedId: string | null;
1795
+ lockedMultiSelections: {
1796
+ [groupId: string]: true;
1797
+ };
1766
1798
  };
1767
1799
  captureUpdate: "EVENTUALLY";
1768
1800
  };
@@ -1857,7 +1889,7 @@ export declare const actionZoomToFit: {
1857
1889
  name: "help" | "imageExport" | "jsonExport";
1858
1890
  } | {
1859
1891
  name: "ttd";
1860
- tab: "mermaid" | "text-to-diagram"; /** zoom content to cover X of the viewport, when fitToViewport=true */
1892
+ tab: "mermaid" | "text-to-diagram";
1861
1893
  } | {
1862
1894
  name: "commandPalette";
1863
1895
  } | {
@@ -1982,6 +2014,10 @@ export declare const actionZoomToFit: {
1982
2014
  focusedId: string | null;
1983
2015
  matches: readonly import("../types").SearchMatch[];
1984
2016
  }> | null;
2017
+ activeLockedId: string | null;
2018
+ lockedMultiSelections: {
2019
+ [groupId: string]: true;
2020
+ };
1985
2021
  };
1986
2022
  captureUpdate: "EVENTUALLY";
1987
2023
  };
@@ -2078,7 +2114,7 @@ export declare const actionToggleTheme: {
2078
2114
  name: "help" | "imageExport" | "jsonExport";
2079
2115
  } | {
2080
2116
  name: "ttd";
2081
- tab: "mermaid" | "text-to-diagram"; /** zoom content to cover X of the viewport, when fitToViewport=true */
2117
+ tab: "mermaid" | "text-to-diagram";
2082
2118
  } | {
2083
2119
  name: "commandPalette";
2084
2120
  } | {
@@ -2202,6 +2238,10 @@ export declare const actionToggleTheme: {
2202
2238
  focusedId: string | null;
2203
2239
  matches: readonly import("../types").SearchMatch[];
2204
2240
  }> | null;
2241
+ activeLockedId: string | null;
2242
+ lockedMultiSelections: {
2243
+ [groupId: string]: true;
2244
+ };
2205
2245
  };
2206
2246
  captureUpdate: "EVENTUALLY";
2207
2247
  };
@@ -2294,7 +2334,7 @@ export declare const actionToggleEraserTool: {
2294
2334
  name: "help" | "imageExport" | "jsonExport";
2295
2335
  } | {
2296
2336
  name: "ttd";
2297
- tab: "mermaid" | "text-to-diagram"; /** zoom content to cover X of the viewport, when fitToViewport=true */
2337
+ tab: "mermaid" | "text-to-diagram";
2298
2338
  } | {
2299
2339
  name: "commandPalette";
2300
2340
  } | {
@@ -2413,6 +2453,10 @@ export declare const actionToggleEraserTool: {
2413
2453
  focusedId: string | null;
2414
2454
  matches: readonly import("../types").SearchMatch[];
2415
2455
  }> | null;
2456
+ activeLockedId: string | null;
2457
+ lockedMultiSelections: {
2458
+ [groupId: string]: true;
2459
+ };
2416
2460
  };
2417
2461
  captureUpdate: "IMMEDIATELY";
2418
2462
  };
@@ -2505,7 +2549,7 @@ export declare const actionToggleLassoTool: {
2505
2549
  name: "help" | "imageExport" | "jsonExport";
2506
2550
  } | {
2507
2551
  name: "ttd";
2508
- tab: "mermaid" | "text-to-diagram"; /** zoom content to cover X of the viewport, when fitToViewport=true */
2552
+ tab: "mermaid" | "text-to-diagram";
2509
2553
  } | {
2510
2554
  name: "commandPalette";
2511
2555
  } | {
@@ -2624,6 +2668,10 @@ export declare const actionToggleLassoTool: {
2624
2668
  focusedId: string | null;
2625
2669
  matches: readonly import("../types").SearchMatch[];
2626
2670
  }> | null;
2671
+ activeLockedId: string | null;
2672
+ lockedMultiSelections: {
2673
+ [groupId: string]: true;
2674
+ };
2627
2675
  };
2628
2676
  captureUpdate: "NEVER";
2629
2677
  };
@@ -2716,7 +2764,7 @@ export declare const actionToggleHandTool: {
2716
2764
  name: "help" | "imageExport" | "jsonExport";
2717
2765
  } | {
2718
2766
  name: "ttd";
2719
- tab: "mermaid" | "text-to-diagram"; /** zoom content to cover X of the viewport, when fitToViewport=true */
2767
+ tab: "mermaid" | "text-to-diagram";
2720
2768
  } | {
2721
2769
  name: "commandPalette";
2722
2770
  } | {
@@ -2835,6 +2883,10 @@ export declare const actionToggleHandTool: {
2835
2883
  focusedId: string | null;
2836
2884
  matches: readonly import("../types").SearchMatch[];
2837
2885
  }> | null;
2886
+ activeLockedId: string | null;
2887
+ lockedMultiSelections: {
2888
+ [groupId: string]: true;
2889
+ };
2838
2890
  };
2839
2891
  captureUpdate: "IMMEDIATELY";
2840
2892
  };
@@ -2926,7 +2978,7 @@ export declare const actionToggleLaserPointer: {
2926
2978
  name: "help" | "imageExport" | "jsonExport";
2927
2979
  } | {
2928
2980
  name: "ttd";
2929
- tab: "mermaid" | "text-to-diagram"; /** zoom content to cover X of the viewport, when fitToViewport=true */
2981
+ tab: "mermaid" | "text-to-diagram";
2930
2982
  } | {
2931
2983
  name: "commandPalette";
2932
2984
  } | {
@@ -3045,6 +3097,10 @@ export declare const actionToggleLaserPointer: {
3045
3097
  focusedId: string | null;
3046
3098
  matches: readonly import("../types").SearchMatch[];
3047
3099
  }> | null;
3100
+ activeLockedId: string | null;
3101
+ lockedMultiSelections: {
3102
+ [groupId: string]: true;
3103
+ };
3048
3104
  };
3049
3105
  captureUpdate: "NEVER";
3050
3106
  };
@@ -3133,7 +3189,7 @@ export declare const zoomToFitElements: (elements: readonly ExcalidrawElement[],
3133
3189
  name: "help" | "imageExport" | "jsonExport";
3134
3190
  } | {
3135
3191
  name: "ttd";
3136
- tab: "mermaid" | "text-to-diagram"; /** zoom content to cover X of the viewport, when fitToViewport=true */
3192
+ tab: "mermaid" | "text-to-diagram";
3137
3193
  } | {
3138
3194
  name: "commandPalette";
3139
3195
  } | {
@@ -3258,6 +3314,10 @@ export declare const zoomToFitElements: (elements: readonly ExcalidrawElement[],
3258
3314
  focusedId: string | null;
3259
3315
  matches: readonly import("../types").SearchMatch[];
3260
3316
  }> | null;
3317
+ activeLockedId: string | null;
3318
+ lockedMultiSelections: {
3319
+ [groupId: string]: true;
3320
+ };
3261
3321
  };
3262
3322
  commitToHistory: boolean;
3263
3323
  };
@@ -210,6 +210,10 @@ export declare const actionCopy: {
210
210
  focusedId: string | null;
211
211
  matches: readonly import("../types").SearchMatch[];
212
212
  }> | null;
213
+ activeLockedId: string | null;
214
+ lockedMultiSelections: {
215
+ [groupId: string]: true;
216
+ };
213
217
  };
214
218
  } | {
215
219
  captureUpdate: "EVENTUALLY";
@@ -430,6 +434,10 @@ export declare const actionPaste: {
430
434
  focusedId: string | null;
431
435
  matches: readonly import("../types").SearchMatch[];
432
436
  }> | null;
437
+ activeLockedId: string | null;
438
+ lockedMultiSelections: {
439
+ [groupId: string]: true;
440
+ };
433
441
  };
434
442
  } | {
435
443
  captureUpdate: "EVENTUALLY";
@@ -651,6 +659,10 @@ export declare const actionCut: {
651
659
  focusedId: string | null;
652
660
  matches: readonly import("../types").SearchMatch[];
653
661
  }> | null;
662
+ activeLockedId: string | null;
663
+ lockedMultiSelections: {
664
+ [groupId: string]: true;
665
+ };
654
666
  };
655
667
  captureUpdate: "IMMEDIATELY";
656
668
  } | {
@@ -888,6 +900,10 @@ export declare const actionCut: {
888
900
  focusedId: string | null;
889
901
  matches: readonly import("../types").SearchMatch[];
890
902
  }> | null;
903
+ activeLockedId: string | null;
904
+ lockedMultiSelections: {
905
+ [groupId: string]: true;
906
+ };
891
907
  };
892
908
  captureUpdate: "IMMEDIATELY";
893
909
  } | {
@@ -1092,6 +1108,10 @@ export declare const actionCut: {
1092
1108
  focusedId: string | null;
1093
1109
  matches: readonly import("../types").SearchMatch[];
1094
1110
  }> | null;
1111
+ activeLockedId: string | null;
1112
+ lockedMultiSelections: {
1113
+ [groupId: string]: true;
1114
+ };
1095
1115
  };
1096
1116
  captureUpdate: "IMMEDIATELY" | "EVENTUALLY";
1097
1117
  };
@@ -1343,6 +1363,10 @@ export declare const actionCopyAsPng: {
1343
1363
  focusedId: string | null;
1344
1364
  matches: readonly import("../types").SearchMatch[];
1345
1365
  }> | null;
1366
+ activeLockedId: string | null;
1367
+ lockedMultiSelections: {
1368
+ [groupId: string]: true;
1369
+ };
1346
1370
  };
1347
1371
  captureUpdate: "EVENTUALLY";
1348
1372
  }>;
@@ -211,6 +211,10 @@ export declare const actionToggleCropEditor: {
211
211
  focusedId: string | null;
212
212
  matches: readonly import("../types").SearchMatch[];
213
213
  }> | null;
214
+ activeLockedId: string | null;
215
+ lockedMultiSelections: {
216
+ [groupId: string]: true;
217
+ };
214
218
  };
215
219
  captureUpdate: "IMMEDIATELY";
216
220
  };
@@ -214,6 +214,10 @@ export declare const actionDeleteSelected: {
214
214
  focusedId: string | null;
215
215
  matches: readonly import("../types").SearchMatch[];
216
216
  }> | null;
217
+ activeLockedId: string | null;
218
+ lockedMultiSelections: {
219
+ [groupId: string]: true;
220
+ };
217
221
  };
218
222
  captureUpdate: "IMMEDIATELY";
219
223
  } | {
@@ -451,6 +455,10 @@ export declare const actionDeleteSelected: {
451
455
  focusedId: string | null;
452
456
  matches: readonly import("../types").SearchMatch[];
453
457
  }> | null;
458
+ activeLockedId: string | null;
459
+ lockedMultiSelections: {
460
+ [groupId: string]: true;
461
+ };
454
462
  };
455
463
  captureUpdate: "IMMEDIATELY";
456
464
  } | {
@@ -655,6 +663,10 @@ export declare const actionDeleteSelected: {
655
663
  focusedId: string | null;
656
664
  matches: readonly import("../types").SearchMatch[];
657
665
  }> | null;
666
+ activeLockedId: string | null;
667
+ lockedMultiSelections: {
668
+ [groupId: string]: true;
669
+ };
658
670
  };
659
671
  captureUpdate: "IMMEDIATELY" | "EVENTUALLY";
660
672
  };
@@ -231,6 +231,10 @@ export declare const actionLinkToElement: {
231
231
  focusedId: string | null;
232
232
  matches: readonly import("../types").SearchMatch[];
233
233
  }> | null;
234
+ activeLockedId: string | null;
235
+ lockedMultiSelections: {
236
+ [groupId: string]: true;
237
+ };
234
238
  };
235
239
  captureUpdate: "IMMEDIATELY";
236
240
  elements?: undefined;