@excalidraw/excalidraw 0.18.0-c4c0649 → 0.18.0-c65b684e9
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.
- package/dist/dev/chunk-65CT75SH.js +5668 -0
- package/dist/dev/chunk-65CT75SH.js.map +7 -0
- package/dist/dev/chunk-CP5DND7P.js +7 -0
- package/dist/dev/chunk-CP5DND7P.js.map +7 -0
- package/dist/dev/{chunk-JCUIYZXF.js → chunk-QF5FRM6O.js} +6 -2
- package/dist/dev/chunk-QF5FRM6O.js.map +7 -0
- package/dist/dev/data/{image-SLEZBMLG.js → image-G3ZXYWE6.js} +3 -3
- package/dist/dev/index.css +51 -20
- package/dist/dev/index.css.map +3 -3
- package/dist/dev/index.js +6832 -4278
- package/dist/dev/index.js.map +4 -4
- package/dist/dev/locales/{en-ZDTPSZNL.js → en-SMAPCEOQ.js} +2 -2
- package/dist/dev/subset-shared.chunk.js +1 -1
- package/dist/dev/subset-worker.chunk.js +1 -1
- package/dist/prod/chunk-A66AFZZU.js +7 -0
- package/dist/prod/{chunk-GCFVWREF.js → chunk-I4UNSFV6.js} +4 -4
- package/dist/prod/chunk-YZO7PSYQ.js +4 -0
- package/dist/prod/data/image-53OPA26C.js +1 -0
- package/dist/prod/index.css +1 -1
- package/dist/prod/index.js +25 -18
- package/dist/prod/locales/{en-MHZ26NAR.js → en-TYY6KWIJ.js} +1 -1
- package/dist/prod/subset-shared.chunk.js +1 -1
- package/dist/prod/subset-worker.chunk.js +1 -1
- package/dist/types/common/src/constants.d.ts +19 -3
- package/dist/types/common/src/utils.d.ts +3 -5
- package/dist/types/element/src/Scene.d.ts +1 -1
- package/dist/types/element/src/align.d.ts +2 -1
- package/dist/types/element/src/binding.d.ts +10 -7
- package/dist/types/element/src/bounds.d.ts +11 -3
- package/dist/types/element/src/collision.d.ts +18 -12
- package/dist/types/element/src/cropElement.d.ts +1 -1
- package/dist/types/element/src/delta.d.ts +37 -7
- package/dist/types/element/src/distance.d.ts +2 -2
- package/dist/types/element/src/distribute.d.ts +2 -1
- package/dist/types/element/src/fractionalIndex.d.ts +8 -2
- package/dist/types/element/src/frame.d.ts +2 -2
- package/dist/types/element/src/groups.d.ts +1 -0
- package/dist/types/element/src/index.d.ts +1 -3
- package/dist/types/element/src/linearElementEditor.d.ts +14 -23
- package/dist/types/element/src/mutateElement.d.ts +1 -1
- package/dist/types/element/src/newElement.d.ts +2 -1
- package/dist/types/element/src/resizeElements.d.ts +1 -0
- package/dist/types/element/src/selection.d.ts +1 -1
- package/dist/types/element/src/shape.d.ts +42 -0
- package/dist/types/element/src/sizeHelpers.d.ts +2 -1
- package/dist/types/element/src/store.d.ts +13 -8
- package/dist/types/element/src/transformHandles.d.ts +4 -4
- package/dist/types/element/src/typeChecks.d.ts +15 -1
- package/dist/types/element/src/types.d.ts +8 -3
- package/dist/types/element/src/utils.d.ts +16 -6
- package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +21 -15
- package/dist/types/excalidraw/actions/actionAlign.d.ts +8 -8
- package/dist/types/excalidraw/actions/actionBoundText.d.ts +14 -10
- package/dist/types/excalidraw/actions/actionCanvas.d.ts +193 -154
- package/dist/types/excalidraw/actions/actionClipboard.d.ts +50 -36
- package/dist/types/excalidraw/actions/actionCropEditor.d.ts +7 -5
- package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +27 -20
- package/dist/types/excalidraw/actions/actionDistribute.d.ts +4 -4
- package/dist/types/excalidraw/actions/actionDuplicateSelection.d.ts +2 -2
- package/dist/types/excalidraw/actions/actionElementLink.d.ts +6 -4
- package/dist/types/excalidraw/actions/actionElementLock.d.ts +29 -26
- package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +7 -5
- package/dist/types/excalidraw/actions/actionExport.d.ts +147 -129
- package/dist/types/excalidraw/actions/actionFinalize.d.ts +65 -20
- package/dist/types/excalidraw/actions/actionFlip.d.ts +4 -4
- package/dist/types/excalidraw/actions/actionFrame.d.ts +78 -70
- package/dist/types/excalidraw/actions/actionGroup.d.ts +20 -16
- package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +533 -7
- package/dist/types/excalidraw/actions/actionLink.d.ts +8 -6
- package/dist/types/excalidraw/actions/actionMenu.d.ts +22 -16
- package/dist/types/excalidraw/actions/actionNavigate.d.ts +14 -10
- package/dist/types/excalidraw/actions/actionProperties.d.ts +119 -81
- package/dist/types/excalidraw/actions/actionSelectAll.d.ts +10 -8
- package/dist/types/excalidraw/actions/actionStyles.d.ts +11 -9
- package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +9 -7
- package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +9 -7
- package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +8 -6
- package/dist/types/excalidraw/actions/actionToggleStats.d.ts +9 -7
- package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +9 -7
- package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +9 -7
- package/dist/types/excalidraw/actions/actionZindex.d.ts +8 -8
- package/dist/types/excalidraw/actions/types.d.ts +2 -1
- package/dist/types/excalidraw/appState.d.ts +29 -20
- package/dist/types/excalidraw/components/Actions.d.ts +0 -4
- package/dist/types/excalidraw/components/App.d.ts +14 -16
- package/dist/types/excalidraw/components/ButtonIcon.d.ts +1 -0
- package/dist/types/excalidraw/components/Ellipsify.d.ts +4 -0
- package/dist/types/excalidraw/components/{ButtonIconSelect.d.ts → RadioSelection.d.ts} +1 -1
- package/dist/types/excalidraw/components/Stats/DragInput.d.ts +11 -1
- package/dist/types/excalidraw/components/UnlockPopup.d.ts +8 -0
- package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +1 -0
- package/dist/types/excalidraw/components/icons.d.ts +2 -0
- package/dist/types/excalidraw/components/shapes.d.ts +1 -1
- package/dist/types/excalidraw/data/blob.d.ts +1 -1
- package/dist/types/excalidraw/eraser/index.d.ts +0 -2
- package/dist/types/excalidraw/history.d.ts +21 -5
- package/dist/types/excalidraw/index.d.ts +1 -0
- package/dist/types/excalidraw/lasso/index.d.ts +1 -0
- package/dist/types/excalidraw/lasso/utils.d.ts +2 -1
- package/dist/types/excalidraw/renderer/helpers.d.ts +4 -4
- package/dist/types/excalidraw/renderer/staticScene.d.ts +4 -1
- package/dist/types/excalidraw/scene/Renderer.d.ts +0 -1
- package/dist/types/excalidraw/types.d.ts +11 -7
- package/dist/types/math/src/angle.d.ts +2 -0
- package/dist/types/math/src/constants.d.ts +3 -0
- package/dist/types/math/src/curve.d.ts +32 -0
- package/dist/types/math/src/index.d.ts +1 -0
- package/dist/types/math/src/point.d.ts +1 -1
- package/dist/types/math/src/rectangle.d.ts +2 -0
- package/dist/types/math/src/vector.d.ts +4 -2
- package/history.ts +108 -45
- package/package.json +12 -9
- package/dist/dev/chunk-HNRFOURL.js +0 -23482
- package/dist/dev/chunk-HNRFOURL.js.map +0 -7
- package/dist/dev/chunk-JCUIYZXF.js.map +0 -7
- package/dist/dev/chunk-VKWYDXFZ.js +0 -7
- package/dist/dev/chunk-VKWYDXFZ.js.map +0 -7
- package/dist/prod/chunk-G6SRO7HP.js +0 -7
- package/dist/prod/chunk-M3D5LUUK.js +0 -33
- package/dist/prod/data/image-PMKVN4IF.js +0 -1
- package/dist/types/element/src/Shape.d.ts +0 -17
- package/dist/types/element/src/ShapeCache.d.ts +0 -25
- package/dist/types/element/src/shapes.d.ts +0 -23
- package/dist/types/excalidraw/components/ButtonSelect.d.ts +0 -9
- package/dist/types/excalidraw/visualdebug.d.ts +0 -41
- package/dist/types/utils/src/collision.d.ts +0 -8
- /package/dist/dev/data/{image-SLEZBMLG.js.map → image-G3ZXYWE6.js.map} +0 -0
- /package/dist/dev/locales/{en-ZDTPSZNL.js.map → en-SMAPCEOQ.js.map} +0 -0
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { type GeometricShape } from "@excalidraw/utils/shape";
|
|
2
|
+
import { type LocalPoint } from "@excalidraw/math";
|
|
3
|
+
import type { GlobalPoint } from "@excalidraw/math";
|
|
4
|
+
import type { AppState, EmbedsValidationStatus } from "@excalidraw/excalidraw/types";
|
|
5
|
+
import type { ElementShape, ElementShapes } from "@excalidraw/excalidraw/scene/types";
|
|
6
|
+
import type { ExcalidrawElement, ExcalidrawLinearElement, ExcalidrawFreeDrawElement, ElementsMap, ExcalidrawLineElement } from "./types";
|
|
7
|
+
import type { Drawable, Options } from "roughjs/bin/core";
|
|
8
|
+
export declare class ShapeCache {
|
|
9
|
+
private static rg;
|
|
10
|
+
private static cache;
|
|
11
|
+
/**
|
|
12
|
+
* Retrieves shape from cache if available. Use this only if shape
|
|
13
|
+
* is optional and you have a fallback in case it's not cached.
|
|
14
|
+
*/
|
|
15
|
+
static get: <T extends ExcalidrawElement>(element: T) => T["type"] extends keyof ElementShapes ? ElementShapes[T["type"]] | undefined : ElementShape | undefined;
|
|
16
|
+
static set: <T extends ExcalidrawElement>(element: T, shape: T["type"] extends keyof ElementShapes ? ElementShapes[T["type"]] : Drawable) => WeakMap<ExcalidrawElement, ElementShape>;
|
|
17
|
+
static delete: (element: ExcalidrawElement) => boolean;
|
|
18
|
+
static destroy: () => void;
|
|
19
|
+
/**
|
|
20
|
+
* Generates & caches shape for element if not already cached, otherwise
|
|
21
|
+
* returns cached shape.
|
|
22
|
+
*/
|
|
23
|
+
static generateElementShape: <T extends ExcalidrawLinearElement | import("./types").ExcalidrawRectangleElement | import("./types").ExcalidrawDiamondElement | import("./types").ExcalidrawEllipseElement | import("./types").ExcalidrawEmbeddableElement | import("./types").ExcalidrawIframeElement | import("./types").ExcalidrawImageElement | import("./types").ExcalidrawFrameElement | import("./types").ExcalidrawMagicFrameElement | import("./types").ExcalidrawTextElement | ExcalidrawFreeDrawElement | import("./types").ExcalidrawArrowElement>(element: T, renderConfig: {
|
|
24
|
+
isExporting: boolean;
|
|
25
|
+
canvasBackgroundColor: AppState["viewBackgroundColor"];
|
|
26
|
+
embedsValidationStatus: EmbedsValidationStatus;
|
|
27
|
+
} | null) => ((T["type"] extends keyof ElementShapes ? ElementShapes[T["type"]] | undefined : ElementShape | undefined) & ({} | null)) | (T["type"] extends keyof ElementShapes ? ElementShapes[T["type"]] : Drawable | null);
|
|
28
|
+
}
|
|
29
|
+
export declare const generateRoughOptions: (element: ExcalidrawElement, continuousPath?: boolean) => Options;
|
|
30
|
+
export declare const generateLinearCollisionShape: (element: ExcalidrawLinearElement | ExcalidrawFreeDrawElement) => {
|
|
31
|
+
op: string;
|
|
32
|
+
data: number[];
|
|
33
|
+
}[];
|
|
34
|
+
/**
|
|
35
|
+
* get the pure geometric shape of an excalidraw elementw
|
|
36
|
+
* which is then used for hit detection
|
|
37
|
+
*/
|
|
38
|
+
export declare const getElementShape: <Point extends GlobalPoint | LocalPoint>(element: ExcalidrawElement, elementsMap: ElementsMap) => GeometricShape<Point>;
|
|
39
|
+
export declare const toggleLinePolygonState: (element: ExcalidrawLineElement, nextPolygonState: boolean) => {
|
|
40
|
+
polygon: ExcalidrawLineElement["polygon"];
|
|
41
|
+
points: ExcalidrawLineElement["points"];
|
|
42
|
+
} | null;
|
|
@@ -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;
|
|
@@ -22,7 +23,7 @@ export declare const getPerfectElementSize: (elementType: AppState["activeTool"]
|
|
|
22
23
|
width: number;
|
|
23
24
|
height: number;
|
|
24
25
|
};
|
|
25
|
-
export declare const getLockedLinearCursorAlignSize: (originX: number, originY: number, x: number, y: number) => {
|
|
26
|
+
export declare const getLockedLinearCursorAlignSize: (originX: number, originY: number, x: number, y: number, customAngle?: number) => {
|
|
26
27
|
width: number;
|
|
27
28
|
height: number;
|
|
28
29
|
};
|
|
@@ -3,7 +3,8 @@ import type App from "@excalidraw/excalidraw/components/App";
|
|
|
3
3
|
import type { DTO, ValueOf } from "@excalidraw/common/utility-types";
|
|
4
4
|
import type { AppState, ObservedAppState } from "@excalidraw/excalidraw/types";
|
|
5
5
|
import { ElementsDelta, AppStateDelta } from "./delta";
|
|
6
|
-
import type {
|
|
6
|
+
import type { ApplyToOptions } from "./delta";
|
|
7
|
+
import type { ExcalidrawElement, OrderedExcalidrawElement, SceneElementsMap } from "./types";
|
|
7
8
|
export declare const CaptureUpdateAction: {
|
|
8
9
|
/**
|
|
9
10
|
* Immediately undoable.
|
|
@@ -60,7 +61,7 @@ export declare class Store {
|
|
|
60
61
|
*/
|
|
61
62
|
scheduleMicroAction(params: {
|
|
62
63
|
action: CaptureUpdateActionType;
|
|
63
|
-
elements:
|
|
64
|
+
elements: readonly ExcalidrawElement[] | undefined;
|
|
64
65
|
appState: AppState | ObservedAppState | undefined;
|
|
65
66
|
} | {
|
|
66
67
|
action: typeof CaptureUpdateAction.IMMEDIATELY;
|
|
@@ -157,6 +158,10 @@ export declare class StoreDelta {
|
|
|
157
158
|
static create(elements: ElementsDelta, appState: AppStateDelta, opts?: {
|
|
158
159
|
id: string;
|
|
159
160
|
}): StoreDelta;
|
|
161
|
+
/**
|
|
162
|
+
* Calculate the delta between the previous and next snapshot.
|
|
163
|
+
*/
|
|
164
|
+
static calculate(prevSnapshot: StoreSnapshot, nextSnapshot: StoreSnapshot): StoreDelta;
|
|
160
165
|
/**
|
|
161
166
|
* Restore a store delta instance from a DTO.
|
|
162
167
|
*/
|
|
@@ -170,13 +175,13 @@ export declare class StoreDelta {
|
|
|
170
175
|
*/
|
|
171
176
|
static inverse(delta: StoreDelta): StoreDelta;
|
|
172
177
|
/**
|
|
173
|
-
* Apply
|
|
178
|
+
* Apply the delta to the passed elements and appState, does not modify the snapshot.
|
|
174
179
|
*/
|
|
175
|
-
static
|
|
180
|
+
static applyTo(delta: StoreDelta, elements: SceneElementsMap, appState: AppState, options?: ApplyToOptions): [SceneElementsMap, AppState, boolean];
|
|
176
181
|
/**
|
|
177
|
-
* Apply
|
|
182
|
+
* Apply latest (remote) changes to the delta, creates new instance of `StoreDelta`.
|
|
178
183
|
*/
|
|
179
|
-
static
|
|
184
|
+
static applyLatestChanges(delta: StoreDelta, prevElements: SceneElementsMap, nextElements: SceneElementsMap, modifierOptions?: "deleted" | "inserted"): StoreDelta;
|
|
180
185
|
isEmpty(): boolean;
|
|
181
186
|
}
|
|
182
187
|
/**
|
|
@@ -216,7 +221,7 @@ export declare class StoreSnapshot {
|
|
|
216
221
|
private maybeCreateElementsSnapshot;
|
|
217
222
|
private detectChangedAppState;
|
|
218
223
|
/**
|
|
219
|
-
* Detect if there any changed elements.
|
|
224
|
+
* Detect if there are any changed elements.
|
|
220
225
|
*/
|
|
221
226
|
private detectChangedElements;
|
|
222
227
|
/**
|
|
@@ -224,4 +229,4 @@ export declare class StoreSnapshot {
|
|
|
224
229
|
*/
|
|
225
230
|
private createElementsSnapshot;
|
|
226
231
|
}
|
|
227
|
-
export declare const getObservedAppState: (appState: AppState) => ObservedAppState;
|
|
232
|
+
export declare const getObservedAppState: (appState: AppState | ObservedAppState) => ObservedAppState;
|
|
@@ -32,9 +32,9 @@ export declare const canResizeFromSides: (device: Device) => boolean;
|
|
|
32
32
|
export declare const getOmitSidesForDevice: (device: Device) => {};
|
|
33
33
|
export declare const getTransformHandlesFromCoords: ([x1, y1, x2, y2, cx, cy]: [number, number, number, number, number, number], angle: Radians, zoom: Zoom, pointerType: PointerType, omitSides?: {
|
|
34
34
|
s?: boolean | undefined;
|
|
35
|
-
e?: boolean | undefined;
|
|
36
|
-
w?: boolean | undefined;
|
|
37
35
|
n?: boolean | undefined;
|
|
36
|
+
w?: boolean | undefined;
|
|
37
|
+
e?: boolean | undefined;
|
|
38
38
|
nw?: boolean | undefined;
|
|
39
39
|
ne?: boolean | undefined;
|
|
40
40
|
sw?: boolean | undefined;
|
|
@@ -43,9 +43,9 @@ export declare const getTransformHandlesFromCoords: ([x1, y1, x2, y2, cx, cy]: [
|
|
|
43
43
|
}, margin?: number, spacing?: number) => TransformHandles;
|
|
44
44
|
export declare const getTransformHandles: (element: ExcalidrawElement, zoom: Zoom, elementsMap: ElementsMap, pointerType?: PointerType, omitSides?: {
|
|
45
45
|
s?: boolean | undefined;
|
|
46
|
-
e?: boolean | undefined;
|
|
47
|
-
w?: boolean | undefined;
|
|
48
46
|
n?: boolean | undefined;
|
|
47
|
+
w?: boolean | undefined;
|
|
48
|
+
e?: boolean | undefined;
|
|
49
49
|
nw?: boolean | undefined;
|
|
50
50
|
ne?: boolean | undefined;
|
|
51
51
|
sw?: boolean | undefined;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { ElementOrToolType } from "@excalidraw/excalidraw/types";
|
|
2
2
|
import type { MarkNonNullable } from "@excalidraw/common/utility-types";
|
|
3
3
|
import type { Bounds } from "./bounds";
|
|
4
|
-
import type { ExcalidrawElement, ExcalidrawTextElement, ExcalidrawEmbeddableElement, ExcalidrawLinearElement, ExcalidrawBindableElement, ExcalidrawFreeDrawElement, InitializedExcalidrawImageElement, ExcalidrawImageElement, ExcalidrawTextElementWithContainer, ExcalidrawTextContainer, ExcalidrawFrameElement, RoundnessType, ExcalidrawFrameLikeElement, ExcalidrawElementType, ExcalidrawIframeElement, ExcalidrawIframeLikeElement, ExcalidrawMagicFrameElement, ExcalidrawArrowElement, ExcalidrawElbowArrowElement, PointBinding, FixedPointBinding, ExcalidrawFlowchartNodeElement, ExcalidrawLinearElementSubType } from "./types";
|
|
4
|
+
import type { ExcalidrawElement, ExcalidrawTextElement, ExcalidrawEmbeddableElement, ExcalidrawLinearElement, ExcalidrawBindableElement, ExcalidrawFreeDrawElement, InitializedExcalidrawImageElement, ExcalidrawImageElement, ExcalidrawTextElementWithContainer, ExcalidrawTextContainer, ExcalidrawFrameElement, RoundnessType, ExcalidrawFrameLikeElement, ExcalidrawElementType, ExcalidrawIframeElement, ExcalidrawIframeLikeElement, ExcalidrawMagicFrameElement, ExcalidrawArrowElement, ExcalidrawElbowArrowElement, ExcalidrawLineElement, PointBinding, FixedPointBinding, ExcalidrawFlowchartNodeElement, ExcalidrawLinearElementSubType } from "./types";
|
|
5
5
|
export declare const isInitializedImageElement: (element: ExcalidrawElement | null) => element is InitializedExcalidrawImageElement;
|
|
6
6
|
export declare const isImageElement: (element: ExcalidrawElement | null) => element is ExcalidrawImageElement;
|
|
7
7
|
export declare const isEmbeddableElement: (element: ExcalidrawElement | null | undefined) => element is ExcalidrawEmbeddableElement;
|
|
@@ -14,8 +14,13 @@ export declare const isFrameLikeElement: (element: ExcalidrawElement | null) =>
|
|
|
14
14
|
export declare const isFreeDrawElement: (element?: ExcalidrawElement | null) => element is ExcalidrawFreeDrawElement;
|
|
15
15
|
export declare const isFreeDrawElementType: (elementType: ExcalidrawElementType) => boolean;
|
|
16
16
|
export declare const isLinearElement: (element?: ExcalidrawElement | null) => element is ExcalidrawLinearElement;
|
|
17
|
+
export declare const isLineElement: (element?: ExcalidrawElement | null) => element is ExcalidrawLineElement;
|
|
17
18
|
export declare const isArrowElement: (element?: ExcalidrawElement | null) => element is ExcalidrawArrowElement;
|
|
18
19
|
export declare const isElbowArrow: (element?: ExcalidrawElement) => element is ExcalidrawElbowArrowElement;
|
|
20
|
+
/**
|
|
21
|
+
* sharp or curved arrow, but not elbow
|
|
22
|
+
*/
|
|
23
|
+
export declare const isSimpleArrow: (element?: ExcalidrawElement) => element is ExcalidrawArrowElement;
|
|
19
24
|
export declare const isSharpArrow: (element?: ExcalidrawElement) => element is ExcalidrawArrowElement;
|
|
20
25
|
export declare const isCurvedArrow: (element?: ExcalidrawElement) => element is ExcalidrawArrowElement;
|
|
21
26
|
export declare const isLinearElementType: (elementType: ElementOrToolType) => boolean;
|
|
@@ -41,3 +46,12 @@ export declare const getDefaultRoundnessTypeForElement: (element: ExcalidrawElem
|
|
|
41
46
|
export declare const isFixedPointBinding: (binding: PointBinding | FixedPointBinding) => binding is FixedPointBinding;
|
|
42
47
|
export declare const isBounds: (box: unknown) => box is Bounds;
|
|
43
48
|
export declare const getLinearElementSubType: (element: ExcalidrawLinearElement) => ExcalidrawLinearElementSubType;
|
|
49
|
+
/**
|
|
50
|
+
* Checks if current element points meet all the conditions for polygon=true
|
|
51
|
+
* (this isn't a element type check, for that use isLineElement).
|
|
52
|
+
*
|
|
53
|
+
* If you want to check if points *can* be turned into a polygon, use
|
|
54
|
+
* canBecomePolygon(points).
|
|
55
|
+
*/
|
|
56
|
+
export declare const isValidPolygon: (points: ExcalidrawLineElement["points"]) => boolean;
|
|
57
|
+
export declare const canBecomePolygon: (points: ExcalidrawLineElement["points"]) => boolean;
|
|
@@ -151,7 +151,7 @@ export type ExcalidrawFrameLikeElement = ExcalidrawFrameElement | ExcalidrawMagi
|
|
|
151
151
|
*/
|
|
152
152
|
export type ExcalidrawGenericElement = ExcalidrawSelectionElement | ExcalidrawRectangleElement | ExcalidrawDiamondElement | ExcalidrawEllipseElement;
|
|
153
153
|
export type ExcalidrawFlowchartNodeElement = ExcalidrawRectangleElement | ExcalidrawDiamondElement | ExcalidrawEllipseElement;
|
|
154
|
-
export type ExcalidrawRectanguloidElement = ExcalidrawRectangleElement | ExcalidrawImageElement | ExcalidrawTextElement | ExcalidrawFreeDrawElement | ExcalidrawIframeLikeElement | ExcalidrawFrameLikeElement | ExcalidrawEmbeddableElement;
|
|
154
|
+
export type ExcalidrawRectanguloidElement = ExcalidrawRectangleElement | ExcalidrawImageElement | ExcalidrawTextElement | ExcalidrawFreeDrawElement | ExcalidrawIframeLikeElement | ExcalidrawFrameLikeElement | ExcalidrawEmbeddableElement | ExcalidrawSelectionElement;
|
|
155
155
|
/**
|
|
156
156
|
* ExcalidrawElement should be JSON serializable and (eventually) contain
|
|
157
157
|
* no computed data. The list of all ExcalidrawElements should be shareable
|
|
@@ -205,7 +205,8 @@ export type PointBinding = {
|
|
|
205
205
|
export type FixedPointBinding = Merge<PointBinding, {
|
|
206
206
|
fixedPoint: FixedPoint;
|
|
207
207
|
}>;
|
|
208
|
-
|
|
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:
|
|
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 {
|
|
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
|
|
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: "
|
|
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;
|
|
@@ -39,7 +39,6 @@ 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 | null;
|
|
43
42
|
activeTool: {
|
|
44
43
|
lastActiveTool: import("../types").ActiveTool | null;
|
|
45
44
|
locked: boolean;
|
|
@@ -87,7 +86,7 @@ export declare const actionAddToLibrary: {
|
|
|
87
86
|
name: "imageExport" | "help" | "jsonExport";
|
|
88
87
|
} | {
|
|
89
88
|
name: "ttd";
|
|
90
|
-
tab: "text-to-diagram"
|
|
89
|
+
tab: "mermaid" | "text-to-diagram";
|
|
91
90
|
} | {
|
|
92
91
|
name: "commandPalette";
|
|
93
92
|
} | {
|
|
@@ -154,8 +153,7 @@ export declare const actionAddToLibrary: {
|
|
|
154
153
|
shown: true;
|
|
155
154
|
data: import("../charts").Spreadsheet;
|
|
156
155
|
};
|
|
157
|
-
|
|
158
|
-
showHyperlinkPopup: false | "info" | "editor";
|
|
156
|
+
showHyperlinkPopup: false | "editor" | "info";
|
|
159
157
|
selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
|
|
160
158
|
snapLines: readonly import("../snapping").SnapLine[];
|
|
161
159
|
originSnapOffset: {
|
|
@@ -171,6 +169,10 @@ export declare const actionAddToLibrary: {
|
|
|
171
169
|
focusedId: string | null;
|
|
172
170
|
matches: readonly import("../types").SearchMatch[];
|
|
173
171
|
}> | null;
|
|
172
|
+
activeLockedId: string | null;
|
|
173
|
+
lockedMultiSelections: {
|
|
174
|
+
[groupId: string]: true;
|
|
175
|
+
};
|
|
174
176
|
};
|
|
175
177
|
} | {
|
|
176
178
|
captureUpdate: "EVENTUALLY";
|
|
@@ -185,7 +187,7 @@ export declare const actionAddToLibrary: {
|
|
|
185
187
|
isLoading: boolean;
|
|
186
188
|
activeEmbeddable: {
|
|
187
189
|
element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
|
|
188
|
-
state: "
|
|
190
|
+
state: "active" | "hover";
|
|
189
191
|
} | null;
|
|
190
192
|
newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
|
|
191
193
|
resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
|
|
@@ -204,7 +206,6 @@ export declare const actionAddToLibrary: {
|
|
|
204
206
|
editingFrame: string | null;
|
|
205
207
|
elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
|
|
206
208
|
editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
|
|
207
|
-
editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
|
|
208
209
|
activeTool: {
|
|
209
210
|
lastActiveTool: import("../types").ActiveTool | null;
|
|
210
211
|
locked: boolean;
|
|
@@ -252,7 +253,7 @@ export declare const actionAddToLibrary: {
|
|
|
252
253
|
name: "imageExport" | "help" | "jsonExport";
|
|
253
254
|
} | {
|
|
254
255
|
name: "ttd";
|
|
255
|
-
tab: "text-to-diagram"
|
|
256
|
+
tab: "mermaid" | "text-to-diagram";
|
|
256
257
|
} | {
|
|
257
258
|
name: "commandPalette";
|
|
258
259
|
} | {
|
|
@@ -324,8 +325,7 @@ export declare const actionAddToLibrary: {
|
|
|
324
325
|
shown: true;
|
|
325
326
|
data: import("../charts").Spreadsheet;
|
|
326
327
|
};
|
|
327
|
-
|
|
328
|
-
showHyperlinkPopup: false | "info" | "editor";
|
|
328
|
+
showHyperlinkPopup: false | "editor" | "info";
|
|
329
329
|
selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
|
|
330
330
|
snapLines: readonly import("../snapping").SnapLine[];
|
|
331
331
|
originSnapOffset: {
|
|
@@ -341,6 +341,10 @@ export declare const actionAddToLibrary: {
|
|
|
341
341
|
focusedId: string | null;
|
|
342
342
|
matches: readonly import("../types").SearchMatch[];
|
|
343
343
|
}> | null;
|
|
344
|
+
activeLockedId: string | null;
|
|
345
|
+
lockedMultiSelections: {
|
|
346
|
+
[groupId: string]: true;
|
|
347
|
+
};
|
|
344
348
|
};
|
|
345
349
|
}> | {
|
|
346
350
|
captureUpdate: "EVENTUALLY";
|
|
@@ -355,7 +359,7 @@ export declare const actionAddToLibrary: {
|
|
|
355
359
|
isLoading: boolean;
|
|
356
360
|
activeEmbeddable: {
|
|
357
361
|
element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
|
|
358
|
-
state: "
|
|
362
|
+
state: "active" | "hover";
|
|
359
363
|
} | null;
|
|
360
364
|
newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
|
|
361
365
|
resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
|
|
@@ -374,7 +378,6 @@ export declare const actionAddToLibrary: {
|
|
|
374
378
|
editingFrame: string | null;
|
|
375
379
|
elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
|
|
376
380
|
editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
|
|
377
|
-
editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
|
|
378
381
|
activeTool: {
|
|
379
382
|
lastActiveTool: import("../types").ActiveTool | null;
|
|
380
383
|
locked: boolean;
|
|
@@ -422,7 +425,7 @@ export declare const actionAddToLibrary: {
|
|
|
422
425
|
name: "imageExport" | "help" | "jsonExport";
|
|
423
426
|
} | {
|
|
424
427
|
name: "ttd";
|
|
425
|
-
tab: "text-to-diagram"
|
|
428
|
+
tab: "mermaid" | "text-to-diagram";
|
|
426
429
|
} | {
|
|
427
430
|
name: "commandPalette";
|
|
428
431
|
} | {
|
|
@@ -494,8 +497,7 @@ export declare const actionAddToLibrary: {
|
|
|
494
497
|
shown: true;
|
|
495
498
|
data: import("../charts").Spreadsheet;
|
|
496
499
|
};
|
|
497
|
-
|
|
498
|
-
showHyperlinkPopup: false | "info" | "editor";
|
|
500
|
+
showHyperlinkPopup: false | "editor" | "info";
|
|
499
501
|
selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
|
|
500
502
|
snapLines: readonly import("../snapping").SnapLine[];
|
|
501
503
|
originSnapOffset: {
|
|
@@ -511,6 +513,10 @@ export declare const actionAddToLibrary: {
|
|
|
511
513
|
focusedId: string | null;
|
|
512
514
|
matches: readonly import("../types").SearchMatch[];
|
|
513
515
|
}> | null;
|
|
516
|
+
activeLockedId: string | null;
|
|
517
|
+
lockedMultiSelections: {
|
|
518
|
+
[groupId: string]: true;
|
|
519
|
+
};
|
|
514
520
|
};
|
|
515
521
|
};
|
|
516
522
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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: "
|
|
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;
|
|
@@ -59,7 +59,6 @@ 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 | null;
|
|
63
62
|
activeTool: {
|
|
64
63
|
lastActiveTool: import("../types").ActiveTool | null;
|
|
65
64
|
locked: boolean;
|
|
@@ -107,7 +106,7 @@ export declare const actionBindText: {
|
|
|
107
106
|
name: "imageExport" | "help" | "jsonExport";
|
|
108
107
|
} | {
|
|
109
108
|
name: "ttd";
|
|
110
|
-
tab: "text-to-diagram"
|
|
109
|
+
tab: "mermaid" | "text-to-diagram";
|
|
111
110
|
} | {
|
|
112
111
|
name: "commandPalette";
|
|
113
112
|
} | {
|
|
@@ -176,8 +175,7 @@ export declare const actionBindText: {
|
|
|
176
175
|
shown: true;
|
|
177
176
|
data: import("../charts").Spreadsheet;
|
|
178
177
|
};
|
|
179
|
-
|
|
180
|
-
showHyperlinkPopup: false | "info" | "editor";
|
|
178
|
+
showHyperlinkPopup: false | "editor" | "info";
|
|
181
179
|
selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
|
|
182
180
|
snapLines: readonly import("../snapping").SnapLine[];
|
|
183
181
|
originSnapOffset: {
|
|
@@ -193,6 +191,10 @@ export declare const actionBindText: {
|
|
|
193
191
|
focusedId: string | null;
|
|
194
192
|
matches: readonly import("../types").SearchMatch[];
|
|
195
193
|
}> | null;
|
|
194
|
+
activeLockedId: string | null;
|
|
195
|
+
lockedMultiSelections: {
|
|
196
|
+
[groupId: string]: true;
|
|
197
|
+
};
|
|
196
198
|
};
|
|
197
199
|
captureUpdate: "IMMEDIATELY";
|
|
198
200
|
};
|
|
@@ -222,7 +224,7 @@ export declare const actionWrapTextInContainer: {
|
|
|
222
224
|
errorMessage: import("react").ReactNode;
|
|
223
225
|
activeEmbeddable: {
|
|
224
226
|
element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
|
|
225
|
-
state: "
|
|
227
|
+
state: "active" | "hover";
|
|
226
228
|
} | null;
|
|
227
229
|
newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
|
|
228
230
|
resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
|
|
@@ -241,7 +243,6 @@ export declare const actionWrapTextInContainer: {
|
|
|
241
243
|
editingFrame: string | null;
|
|
242
244
|
elementsToHighlight: import("@excalidraw/element/types").NonDeleted<ExcalidrawElement>[] | null;
|
|
243
245
|
editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
|
|
244
|
-
editingLinearElement: import("@excalidraw/element").LinearElementEditor | null;
|
|
245
246
|
activeTool: {
|
|
246
247
|
lastActiveTool: import("../types").ActiveTool | null;
|
|
247
248
|
locked: boolean;
|
|
@@ -289,7 +290,7 @@ export declare const actionWrapTextInContainer: {
|
|
|
289
290
|
name: "imageExport" | "help" | "jsonExport";
|
|
290
291
|
} | {
|
|
291
292
|
name: "ttd";
|
|
292
|
-
tab: "text-to-diagram"
|
|
293
|
+
tab: "mermaid" | "text-to-diagram";
|
|
293
294
|
} | {
|
|
294
295
|
name: "commandPalette";
|
|
295
296
|
} | {
|
|
@@ -358,8 +359,7 @@ export declare const actionWrapTextInContainer: {
|
|
|
358
359
|
shown: true;
|
|
359
360
|
data: import("../charts").Spreadsheet;
|
|
360
361
|
};
|
|
361
|
-
|
|
362
|
-
showHyperlinkPopup: false | "info" | "editor";
|
|
362
|
+
showHyperlinkPopup: false | "editor" | "info";
|
|
363
363
|
selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
|
|
364
364
|
snapLines: readonly import("../snapping").SnapLine[];
|
|
365
365
|
originSnapOffset: {
|
|
@@ -375,6 +375,10 @@ export declare const actionWrapTextInContainer: {
|
|
|
375
375
|
focusedId: string | null;
|
|
376
376
|
matches: readonly import("../types").SearchMatch[];
|
|
377
377
|
}> | null;
|
|
378
|
+
activeLockedId: string | null;
|
|
379
|
+
lockedMultiSelections: {
|
|
380
|
+
[groupId: string]: true;
|
|
381
|
+
};
|
|
378
382
|
};
|
|
379
383
|
captureUpdate: "IMMEDIATELY";
|
|
380
384
|
};
|