@myoc/common 0.19.536 → 0.19.537
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/types/element/src/align.d.ts +5 -1
- package/dist/types/excalidraw/actions/actionAlign.d.ts +191 -0
- package/dist/types/excalidraw/actions/actionBoundText.d.ts +6 -0
- package/dist/types/excalidraw/actions/actionCanvas.d.ts +18 -0
- package/dist/types/excalidraw/actions/actionClipboard.d.ts +6 -0
- package/dist/types/excalidraw/actions/actionCropEditor.d.ts +3 -0
- package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +9 -0
- package/dist/types/excalidraw/actions/actionDeselect.d.ts +3 -1
- package/dist/types/excalidraw/actions/actionElementLock.d.ts +6 -1
- package/dist/types/excalidraw/actions/actionExport.d.ts +6 -0
- package/dist/types/excalidraw/actions/actionFrame.d.ts +9 -0
- package/dist/types/excalidraw/actions/actionGroup.d.ts +6 -0
- package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +3 -0
- package/dist/types/excalidraw/actions/actionLink.d.ts +3 -0
- package/dist/types/excalidraw/actions/actionMenu.d.ts +3 -0
- package/dist/types/excalidraw/actions/actionProperties.d.ts +6 -0
- package/dist/types/excalidraw/actions/actionSelectAll.d.ts +3 -0
- package/dist/types/excalidraw/actions/actionStyles.d.ts +3 -0
- package/dist/types/excalidraw/actions/actionToggleArrowBinding.d.ts +3 -0
- package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +3 -0
- package/dist/types/excalidraw/actions/actionToggleMidpointSnapping.d.ts +3 -0
- package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +3 -0
- package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +3 -0
- package/dist/types/excalidraw/actions/actionToggleStats.d.ts +3 -0
- package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +3 -0
- package/dist/types/excalidraw/actions/index.d.ts +1 -1
- package/dist/types/excalidraw/actions/types.d.ts +1 -3
- package/dist/types/excalidraw/appState.d.ts +3 -0
- package/dist/types/excalidraw/components/App.d.ts +0 -1
- package/dist/types/excalidraw/components/Tools.d.ts +0 -1
- package/dist/types/excalidraw/data/blob.d.ts +3 -0
- package/dist/types/excalidraw/data/json.d.ts +3 -0
- package/dist/types/excalidraw/editorPreferences.d.ts +5 -2
- package/dist/types/excalidraw/types.d.ts +7 -6
- package/dist/types/excalidraw/viewport.d.ts +3 -0
- package/package.json +1 -1
- package/dist/types/excalidraw/keyboardShortcuts.d.ts +0 -27
|
@@ -5,4 +5,8 @@ export interface Alignment {
|
|
|
5
5
|
position: "start" | "center" | "end";
|
|
6
6
|
axis: "x" | "y";
|
|
7
7
|
}
|
|
8
|
-
export
|
|
8
|
+
export interface AlignElementsOptions {
|
|
9
|
+
stacking?: boolean;
|
|
10
|
+
gap?: number;
|
|
11
|
+
}
|
|
12
|
+
export declare const alignElements: (selectedElements: NonDeletedExcalidrawElement[], alignment: Alignment, scene: Scene, appState: Readonly<AppState>, options?: AlignElementsOptions) => NonDeletedExcalidrawElement[];
|
|
@@ -1,6 +1,197 @@
|
|
|
1
1
|
import type { ExcalidrawElement } from "@excalidraw/element/types";
|
|
2
2
|
import type { AppClassProperties, AppState, UIAppState } from "../types";
|
|
3
3
|
export declare const alignActionsPredicate: (appState: UIAppState, app: AppClassProperties) => boolean;
|
|
4
|
+
export declare const actionToggleAlignStacking: {
|
|
5
|
+
name: "toggleAlignStacking";
|
|
6
|
+
label: string;
|
|
7
|
+
trackEvent: {
|
|
8
|
+
category: "element";
|
|
9
|
+
};
|
|
10
|
+
predicate: (_elements: readonly ExcalidrawElement[], appState: AppState, _appProps: import("../types").ExcalidrawProps, app: AppClassProperties) => boolean;
|
|
11
|
+
perform: (_elements: readonly import("@excalidraw/element/types").OrderedExcalidrawElement[], appState: Readonly<AppState>, value: unknown, app: AppClassProperties) => {
|
|
12
|
+
appState: {
|
|
13
|
+
alignConfiguration: {
|
|
14
|
+
stacking: boolean;
|
|
15
|
+
};
|
|
16
|
+
contextMenu: {
|
|
17
|
+
items: import("../components/ContextMenu").ContextMenuItems;
|
|
18
|
+
top: number;
|
|
19
|
+
left: number;
|
|
20
|
+
} | null;
|
|
21
|
+
showWelcomeScreen: boolean;
|
|
22
|
+
isLoading: boolean;
|
|
23
|
+
myocSimplifiedMode: boolean;
|
|
24
|
+
dontResizeLimitMBs: number;
|
|
25
|
+
hideMainMenus: boolean;
|
|
26
|
+
wheelZoomsOnDefault?: boolean;
|
|
27
|
+
arrangeConfiguration: {
|
|
28
|
+
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
29
|
+
gap: number;
|
|
30
|
+
};
|
|
31
|
+
normaliseConfiguration: {
|
|
32
|
+
mode: import("../types").NormaliseMode;
|
|
33
|
+
metric: import("../types").NormaliseMetric;
|
|
34
|
+
};
|
|
35
|
+
errorMessage: React.ReactNode;
|
|
36
|
+
activeEmbeddable: {
|
|
37
|
+
element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
|
|
38
|
+
state: "hover" | "active";
|
|
39
|
+
} | null;
|
|
40
|
+
newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
|
|
41
|
+
resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
|
|
42
|
+
multiElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawLinearElement> | null;
|
|
43
|
+
selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
|
|
44
|
+
isBindingEnabled: boolean;
|
|
45
|
+
boxSelectionMode: import("../types").BoxSelectionMode;
|
|
46
|
+
bindingPreference: "enabled" | "disabled";
|
|
47
|
+
isMidpointSnappingEnabled: boolean;
|
|
48
|
+
suggestedBinding: {
|
|
49
|
+
element: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement>;
|
|
50
|
+
midPoint?: import("@excalidraw/math").GlobalPoint;
|
|
51
|
+
} | null;
|
|
52
|
+
hoveredArrowTextAnchor: {
|
|
53
|
+
elementId: import("@excalidraw/element/types").ExcalidrawArrowElement["id"];
|
|
54
|
+
anchor: "start" | "end" | "label";
|
|
55
|
+
} | null;
|
|
56
|
+
frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
|
|
57
|
+
frameRendering: {
|
|
58
|
+
enabled: boolean;
|
|
59
|
+
name: boolean;
|
|
60
|
+
outline: boolean;
|
|
61
|
+
clip: boolean;
|
|
62
|
+
};
|
|
63
|
+
editingFrame: import("@excalidraw/element/types").ExcalidrawFrameLikeElement["id"] | null;
|
|
64
|
+
elementsToHighlight: readonly import("@excalidraw/element/types").NonDeletedExcalidrawElement[] | null;
|
|
65
|
+
editingTextElement: import("@excalidraw/element/types").ExcalidrawTextElement | null;
|
|
66
|
+
activeTool: {
|
|
67
|
+
lastActiveTool: import("../types").ActiveTool | null;
|
|
68
|
+
locked: boolean;
|
|
69
|
+
fromSelection: boolean;
|
|
70
|
+
} & import("../types").ActiveTool;
|
|
71
|
+
preferredSelectionTool: {
|
|
72
|
+
type: "selection" | "lasso";
|
|
73
|
+
initialized: boolean;
|
|
74
|
+
};
|
|
75
|
+
penMode: boolean;
|
|
76
|
+
penDetected: boolean;
|
|
77
|
+
exportBackground: boolean;
|
|
78
|
+
exportEmbedScene: boolean;
|
|
79
|
+
exportWithDarkMode: boolean;
|
|
80
|
+
exportScale: number;
|
|
81
|
+
currentItemStrokeColor: string;
|
|
82
|
+
currentItemBackgroundColor: string;
|
|
83
|
+
currentItemFillStyle: ExcalidrawElement["fillStyle"];
|
|
84
|
+
currentItemStrokeWidthKey: import("@excalidraw/common").StrokeWidthKey;
|
|
85
|
+
currentItemStrokeStyle: ExcalidrawElement["strokeStyle"];
|
|
86
|
+
currentItemRoughness: number;
|
|
87
|
+
currentItemStrokeVariability: import("@excalidraw/element/types").StrokeVariability;
|
|
88
|
+
currentItemOpacity: number;
|
|
89
|
+
currentItemFontFamily: import("@excalidraw/element/types").FontFamilyValues;
|
|
90
|
+
currentItemFontSize: number;
|
|
91
|
+
currentItemTextAlign: import("@excalidraw/element/types").TextAlign;
|
|
92
|
+
currentItemStartArrowhead: import("@excalidraw/element/types").Arrowhead | null;
|
|
93
|
+
currentItemEndArrowhead: import("@excalidraw/element/types").Arrowhead | null;
|
|
94
|
+
currentHoveredFontFamily: import("@excalidraw/element/types").FontFamilyValues | null;
|
|
95
|
+
currentItemRoundness: import("@excalidraw/element/types").StrokeRoundness;
|
|
96
|
+
currentItemArrowType: "sharp" | "round" | "elbow";
|
|
97
|
+
viewBackgroundColor: string;
|
|
98
|
+
scrollX: number;
|
|
99
|
+
scrollY: number;
|
|
100
|
+
scrollConstraints: import("../types").ScrollConstraints | null;
|
|
101
|
+
cursorButton: "up" | "down";
|
|
102
|
+
scrolledOutside: boolean;
|
|
103
|
+
name: string | null;
|
|
104
|
+
isResizing: boolean;
|
|
105
|
+
isRotating: boolean;
|
|
106
|
+
zoom: import("../types").Zoom;
|
|
107
|
+
openMenu: "canvas" | null;
|
|
108
|
+
openPopup: "canvasBackground" | "elementBackground" | "elementStroke" | "fontFamily" | "compactTextProperties" | "compactStrokeStyles" | "compactOtherProperties" | "compactArrowProperties" | "gifFrameGallery" | "gifSpeedPicker" | null;
|
|
109
|
+
openSidebar: {
|
|
110
|
+
name: import("../types").SidebarName;
|
|
111
|
+
tab?: import("../types").SidebarTabName;
|
|
112
|
+
} | null;
|
|
113
|
+
openDialog: null | {
|
|
114
|
+
name: "imageExport" | "help" | "jsonExport";
|
|
115
|
+
} | {
|
|
116
|
+
name: "settings";
|
|
117
|
+
} | {
|
|
118
|
+
name: "elementLinkSelector";
|
|
119
|
+
sourceElementId: ExcalidrawElement["id"];
|
|
120
|
+
} | {
|
|
121
|
+
name: "charts";
|
|
122
|
+
data: import("../charts").Spreadsheet;
|
|
123
|
+
rawText: string;
|
|
124
|
+
};
|
|
125
|
+
defaultSidebarDockedPreference: boolean;
|
|
126
|
+
lastPointerDownWith: import("@excalidraw/element/types").PointerType;
|
|
127
|
+
selectedElementIds: Readonly<{
|
|
128
|
+
[id: string]: true;
|
|
129
|
+
}>;
|
|
130
|
+
hoveredElementIds: Readonly<{
|
|
131
|
+
[id: string]: true;
|
|
132
|
+
}>;
|
|
133
|
+
previousSelectedElementIds: {
|
|
134
|
+
[id: string]: true;
|
|
135
|
+
};
|
|
136
|
+
selectedElementsAreBeingDragged: boolean;
|
|
137
|
+
shouldCacheIgnoreZoom: boolean;
|
|
138
|
+
toast: {
|
|
139
|
+
message: React.ReactNode;
|
|
140
|
+
closable?: boolean;
|
|
141
|
+
duration?: number;
|
|
142
|
+
} | null;
|
|
143
|
+
zenModeEnabled: boolean;
|
|
144
|
+
theme: import("@excalidraw/element/types").Theme;
|
|
145
|
+
gridSize: number;
|
|
146
|
+
gridStep: number;
|
|
147
|
+
gridModeEnabled: boolean;
|
|
148
|
+
viewModeEnabled: boolean;
|
|
149
|
+
viewModeOnly: boolean;
|
|
150
|
+
selectedGroupIds: {
|
|
151
|
+
[groupId: string]: boolean;
|
|
152
|
+
};
|
|
153
|
+
editingGroupId: import("@excalidraw/element/types").GroupId | null;
|
|
154
|
+
width: number;
|
|
155
|
+
height: number;
|
|
156
|
+
offsetTop: number;
|
|
157
|
+
offsetLeft: number;
|
|
158
|
+
fileHandle: FileSystemFileHandle | null;
|
|
159
|
+
collaborators: Map<import("../types").SocketId, import("../types").Collaborator>;
|
|
160
|
+
stats: {
|
|
161
|
+
open: boolean;
|
|
162
|
+
panels: number;
|
|
163
|
+
};
|
|
164
|
+
showHyperlinkPopup: false | "info" | "editor";
|
|
165
|
+
selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
|
|
166
|
+
snapLines: readonly import("../snapping").SnapLine[];
|
|
167
|
+
originSnapOffset: {
|
|
168
|
+
x: number;
|
|
169
|
+
y: number;
|
|
170
|
+
} | null;
|
|
171
|
+
objectsSnapModeEnabled: boolean;
|
|
172
|
+
isCropping: boolean;
|
|
173
|
+
croppingElementId: ExcalidrawElement["id"] | null;
|
|
174
|
+
searchMatches: Readonly<{
|
|
175
|
+
focusedId: ExcalidrawElement["id"] | null;
|
|
176
|
+
matches: readonly import("../types").SearchMatch[];
|
|
177
|
+
}> | null;
|
|
178
|
+
activeLockedId: string | null;
|
|
179
|
+
lockedMultiSelections: {
|
|
180
|
+
[groupId: string]: true;
|
|
181
|
+
};
|
|
182
|
+
bindMode: import("@excalidraw/element/types").BindMode;
|
|
183
|
+
colorTopPicks: {
|
|
184
|
+
elementStroke: readonly string[] | null;
|
|
185
|
+
elementBackground: readonly string[] | null;
|
|
186
|
+
bucketFill: readonly string[] | null;
|
|
187
|
+
};
|
|
188
|
+
};
|
|
189
|
+
captureUpdate: "NEVER";
|
|
190
|
+
};
|
|
191
|
+
PanelComponent: ({ appState, updateData, appProps }: import("./types").PanelComponentProps) => import("react/jsx-runtime").JSX.Element;
|
|
192
|
+
} & {
|
|
193
|
+
keyTest?: undefined;
|
|
194
|
+
};
|
|
4
195
|
export declare const actionAlignTop: {
|
|
5
196
|
name: "alignTop";
|
|
6
197
|
label: string;
|
|
@@ -40,6 +40,9 @@ export declare const actionBindText: {
|
|
|
40
40
|
dontResizeLimitMBs: number;
|
|
41
41
|
hideMainMenus: boolean;
|
|
42
42
|
wheelZoomsOnDefault?: boolean;
|
|
43
|
+
alignConfiguration: {
|
|
44
|
+
stacking: boolean;
|
|
45
|
+
};
|
|
43
46
|
arrangeConfiguration: {
|
|
44
47
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
45
48
|
gap: number;
|
|
@@ -228,6 +231,9 @@ export declare const actionWrapTextInContainer: {
|
|
|
228
231
|
dontResizeLimitMBs: number;
|
|
229
232
|
hideMainMenus: boolean;
|
|
230
233
|
wheelZoomsOnDefault?: boolean;
|
|
234
|
+
alignConfiguration: {
|
|
235
|
+
stacking: boolean;
|
|
236
|
+
};
|
|
231
237
|
arrangeConfiguration: {
|
|
232
238
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
233
239
|
gap: number;
|
|
@@ -28,6 +28,9 @@ export declare const actionZoomIn: {
|
|
|
28
28
|
dontResizeLimitMBs: number;
|
|
29
29
|
hideMainMenus: boolean;
|
|
30
30
|
wheelZoomsOnDefault?: boolean;
|
|
31
|
+
alignConfiguration: {
|
|
32
|
+
stacking: boolean;
|
|
33
|
+
};
|
|
31
34
|
arrangeConfiguration: {
|
|
32
35
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
33
36
|
gap: number;
|
|
@@ -220,6 +223,9 @@ export declare const actionZoomOut: {
|
|
|
220
223
|
dontResizeLimitMBs: number;
|
|
221
224
|
hideMainMenus: boolean;
|
|
222
225
|
wheelZoomsOnDefault?: boolean;
|
|
226
|
+
alignConfiguration: {
|
|
227
|
+
stacking: boolean;
|
|
228
|
+
};
|
|
223
229
|
arrangeConfiguration: {
|
|
224
230
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
225
231
|
gap: number;
|
|
@@ -412,6 +418,9 @@ export declare const actionResetZoom: {
|
|
|
412
418
|
dontResizeLimitMBs: number;
|
|
413
419
|
hideMainMenus: boolean;
|
|
414
420
|
wheelZoomsOnDefault?: boolean;
|
|
421
|
+
alignConfiguration: {
|
|
422
|
+
stacking: boolean;
|
|
423
|
+
};
|
|
415
424
|
arrangeConfiguration: {
|
|
416
425
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
417
426
|
gap: number;
|
|
@@ -604,6 +613,9 @@ export declare const actionZoomToFitSelectionInViewport: {
|
|
|
604
613
|
dontResizeLimitMBs: number;
|
|
605
614
|
hideMainMenus: boolean;
|
|
606
615
|
wheelZoomsOnDefault?: boolean;
|
|
616
|
+
alignConfiguration: {
|
|
617
|
+
stacking: boolean;
|
|
618
|
+
};
|
|
607
619
|
arrangeConfiguration: {
|
|
608
620
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
609
621
|
gap: number;
|
|
@@ -795,6 +807,9 @@ export declare const actionZoomToFitSelection: {
|
|
|
795
807
|
dontResizeLimitMBs: number;
|
|
796
808
|
hideMainMenus: boolean;
|
|
797
809
|
wheelZoomsOnDefault?: boolean;
|
|
810
|
+
alignConfiguration: {
|
|
811
|
+
stacking: boolean;
|
|
812
|
+
};
|
|
798
813
|
arrangeConfiguration: {
|
|
799
814
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
800
815
|
gap: number;
|
|
@@ -986,6 +1001,9 @@ export declare const actionZoomToFit: {
|
|
|
986
1001
|
dontResizeLimitMBs: number;
|
|
987
1002
|
hideMainMenus: boolean;
|
|
988
1003
|
wheelZoomsOnDefault?: boolean;
|
|
1004
|
+
alignConfiguration: {
|
|
1005
|
+
stacking: boolean;
|
|
1006
|
+
};
|
|
989
1007
|
arrangeConfiguration: {
|
|
990
1008
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
991
1009
|
gap: number;
|
|
@@ -22,6 +22,9 @@ export declare const actionPaste: {
|
|
|
22
22
|
dontResizeLimitMBs: number;
|
|
23
23
|
hideMainMenus: boolean;
|
|
24
24
|
wheelZoomsOnDefault?: boolean;
|
|
25
|
+
alignConfiguration: {
|
|
26
|
+
stacking: boolean;
|
|
27
|
+
};
|
|
25
28
|
arrangeConfiguration: {
|
|
26
29
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
27
30
|
gap: number;
|
|
@@ -248,6 +251,9 @@ export declare const actionCopyAsPng: {
|
|
|
248
251
|
dontResizeLimitMBs: number;
|
|
249
252
|
hideMainMenus: boolean;
|
|
250
253
|
wheelZoomsOnDefault?: boolean;
|
|
254
|
+
alignConfiguration: {
|
|
255
|
+
stacking: boolean;
|
|
256
|
+
};
|
|
251
257
|
arrangeConfiguration: {
|
|
252
258
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
253
259
|
gap: number;
|
|
@@ -22,6 +22,9 @@ export declare const actionToggleCropEditor: {
|
|
|
22
22
|
dontResizeLimitMBs: number;
|
|
23
23
|
hideMainMenus: boolean;
|
|
24
24
|
wheelZoomsOnDefault?: boolean;
|
|
25
|
+
alignConfiguration: {
|
|
26
|
+
stacking: boolean;
|
|
27
|
+
};
|
|
25
28
|
arrangeConfiguration: {
|
|
26
29
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
27
30
|
gap: number;
|
|
@@ -23,6 +23,9 @@ export declare const actionDeleteSelected: {
|
|
|
23
23
|
dontResizeLimitMBs: number;
|
|
24
24
|
hideMainMenus: boolean;
|
|
25
25
|
wheelZoomsOnDefault?: boolean;
|
|
26
|
+
alignConfiguration: {
|
|
27
|
+
stacking: boolean;
|
|
28
|
+
};
|
|
26
29
|
arrangeConfiguration: {
|
|
27
30
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
28
31
|
gap: number;
|
|
@@ -233,6 +236,9 @@ export declare const actionDeleteSelected: {
|
|
|
233
236
|
dontResizeLimitMBs: number;
|
|
234
237
|
hideMainMenus: boolean;
|
|
235
238
|
wheelZoomsOnDefault?: boolean;
|
|
239
|
+
alignConfiguration: {
|
|
240
|
+
stacking: boolean;
|
|
241
|
+
};
|
|
236
242
|
arrangeConfiguration: {
|
|
237
243
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
238
244
|
gap: number;
|
|
@@ -421,6 +427,9 @@ export declare const actionDeleteSelected: {
|
|
|
421
427
|
dontResizeLimitMBs: number;
|
|
422
428
|
hideMainMenus: boolean;
|
|
423
429
|
wheelZoomsOnDefault?: boolean;
|
|
430
|
+
alignConfiguration: {
|
|
431
|
+
stacking: boolean;
|
|
432
|
+
};
|
|
424
433
|
arrangeConfiguration: {
|
|
425
434
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
426
435
|
gap: number;
|
|
@@ -31,6 +31,9 @@ export declare const actionDeselect: {
|
|
|
31
31
|
dontResizeLimitMBs: number;
|
|
32
32
|
hideMainMenus: boolean;
|
|
33
33
|
wheelZoomsOnDefault?: boolean;
|
|
34
|
+
alignConfiguration: {
|
|
35
|
+
stacking: boolean;
|
|
36
|
+
};
|
|
34
37
|
arrangeConfiguration: {
|
|
35
38
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
36
39
|
gap: number;
|
|
@@ -168,7 +171,6 @@ export declare const actionDeselect: {
|
|
|
168
171
|
captureUpdate: "IMMEDIATELY";
|
|
169
172
|
};
|
|
170
173
|
keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: AppState, _: readonly import("@excalidraw/element/types").ExcalidrawElement[], app: AppClassProperties) => boolean;
|
|
171
|
-
keyCondition: (event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: AppState, _: readonly import("@excalidraw/element/types").ExcalidrawElement[], app: AppClassProperties) => boolean;
|
|
172
174
|
} & {
|
|
173
175
|
keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: AppState, _: readonly import("@excalidraw/element/types").ExcalidrawElement[], app: AppClassProperties) => boolean) | undefined;
|
|
174
176
|
};
|
|
@@ -33,6 +33,9 @@ export declare const actionToggleElementLock: {
|
|
|
33
33
|
dontResizeLimitMBs: number;
|
|
34
34
|
hideMainMenus: boolean;
|
|
35
35
|
wheelZoomsOnDefault?: boolean;
|
|
36
|
+
alignConfiguration: {
|
|
37
|
+
stacking: boolean;
|
|
38
|
+
};
|
|
36
39
|
arrangeConfiguration: {
|
|
37
40
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
38
41
|
gap: number;
|
|
@@ -187,7 +190,6 @@ export declare const actionToggleElementLock: {
|
|
|
187
190
|
captureUpdate: "IMMEDIATELY";
|
|
188
191
|
};
|
|
189
192
|
keyTest: (event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: AppState, elements: readonly ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean;
|
|
190
|
-
keyCondition: (_event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: AppState, _elements: readonly ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean;
|
|
191
193
|
} & {
|
|
192
194
|
keyTest?: ((event: KeyboardEvent | import("react").KeyboardEvent<Element>, appState: AppState, elements: readonly ExcalidrawElement[], app: import("../types").AppClassProperties) => boolean) | undefined;
|
|
193
195
|
};
|
|
@@ -221,6 +223,9 @@ export declare const actionUnlockAllElements: {
|
|
|
221
223
|
dontResizeLimitMBs: number;
|
|
222
224
|
hideMainMenus: boolean;
|
|
223
225
|
wheelZoomsOnDefault?: boolean;
|
|
226
|
+
alignConfiguration: {
|
|
227
|
+
stacking: boolean;
|
|
228
|
+
};
|
|
224
229
|
arrangeConfiguration: {
|
|
225
230
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
226
231
|
gap: number;
|
|
@@ -106,6 +106,9 @@ export declare const actionLoadScene: {
|
|
|
106
106
|
myocSimplifiedMode: boolean;
|
|
107
107
|
dontResizeLimitMBs: number;
|
|
108
108
|
hideMainMenus: boolean;
|
|
109
|
+
alignConfiguration: {
|
|
110
|
+
stacking: boolean;
|
|
111
|
+
};
|
|
109
112
|
arrangeConfiguration: {
|
|
110
113
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
111
114
|
gap: number;
|
|
@@ -268,6 +271,9 @@ export declare const actionLoadScene: {
|
|
|
268
271
|
dontResizeLimitMBs: number;
|
|
269
272
|
hideMainMenus: boolean;
|
|
270
273
|
wheelZoomsOnDefault?: boolean;
|
|
274
|
+
alignConfiguration: {
|
|
275
|
+
stacking: boolean;
|
|
276
|
+
};
|
|
271
277
|
arrangeConfiguration: {
|
|
272
278
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
273
279
|
gap: number;
|
|
@@ -21,6 +21,9 @@ export declare const actionSelectAllElementsInFrame: {
|
|
|
21
21
|
dontResizeLimitMBs: number;
|
|
22
22
|
hideMainMenus: boolean;
|
|
23
23
|
wheelZoomsOnDefault?: boolean;
|
|
24
|
+
alignConfiguration: {
|
|
25
|
+
stacking: boolean;
|
|
26
|
+
};
|
|
24
27
|
arrangeConfiguration: {
|
|
25
28
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
26
29
|
gap: number;
|
|
@@ -213,6 +216,9 @@ export declare const actionRemoveAllElementsFromFrame: {
|
|
|
213
216
|
dontResizeLimitMBs: number;
|
|
214
217
|
hideMainMenus: boolean;
|
|
215
218
|
wheelZoomsOnDefault?: boolean;
|
|
219
|
+
alignConfiguration: {
|
|
220
|
+
stacking: boolean;
|
|
221
|
+
};
|
|
216
222
|
arrangeConfiguration: {
|
|
217
223
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
218
224
|
gap: number;
|
|
@@ -409,6 +415,9 @@ export declare const actionupdateFrameRendering: {
|
|
|
409
415
|
dontResizeLimitMBs: number;
|
|
410
416
|
hideMainMenus: boolean;
|
|
411
417
|
wheelZoomsOnDefault?: boolean;
|
|
418
|
+
alignConfiguration: {
|
|
419
|
+
stacking: boolean;
|
|
420
|
+
};
|
|
412
421
|
arrangeConfiguration: {
|
|
413
422
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
414
423
|
gap: number;
|
|
@@ -27,6 +27,9 @@ export declare const actionGroup: {
|
|
|
27
27
|
dontResizeLimitMBs: number;
|
|
28
28
|
hideMainMenus: boolean;
|
|
29
29
|
wheelZoomsOnDefault?: boolean;
|
|
30
|
+
alignConfiguration: {
|
|
31
|
+
stacking: boolean;
|
|
32
|
+
};
|
|
30
33
|
arrangeConfiguration: {
|
|
31
34
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
32
35
|
gap: number;
|
|
@@ -218,6 +221,9 @@ export declare const actionUngroup: {
|
|
|
218
221
|
dontResizeLimitMBs: number;
|
|
219
222
|
hideMainMenus: boolean;
|
|
220
223
|
wheelZoomsOnDefault?: boolean;
|
|
224
|
+
alignConfiguration: {
|
|
225
|
+
stacking: boolean;
|
|
226
|
+
};
|
|
221
227
|
arrangeConfiguration: {
|
|
222
228
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
223
229
|
gap: number;
|
|
@@ -54,6 +54,9 @@ export declare const actionToggleLinearEditor: {
|
|
|
54
54
|
dontResizeLimitMBs: number;
|
|
55
55
|
hideMainMenus: boolean;
|
|
56
56
|
wheelZoomsOnDefault?: boolean;
|
|
57
|
+
alignConfiguration: {
|
|
58
|
+
stacking: boolean;
|
|
59
|
+
};
|
|
57
60
|
arrangeConfiguration: {
|
|
58
61
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
59
62
|
gap: number;
|
|
@@ -18,6 +18,9 @@ export declare const actionLink: {
|
|
|
18
18
|
dontResizeLimitMBs: number;
|
|
19
19
|
hideMainMenus: boolean;
|
|
20
20
|
wheelZoomsOnDefault?: boolean;
|
|
21
|
+
alignConfiguration: {
|
|
22
|
+
stacking: boolean;
|
|
23
|
+
};
|
|
21
24
|
arrangeConfiguration: {
|
|
22
25
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
23
26
|
gap: number;
|
|
@@ -25,6 +25,9 @@ export declare const actionShortcuts: {
|
|
|
25
25
|
dontResizeLimitMBs: number;
|
|
26
26
|
hideMainMenus: boolean;
|
|
27
27
|
wheelZoomsOnDefault?: boolean;
|
|
28
|
+
alignConfiguration: {
|
|
29
|
+
stacking: boolean;
|
|
30
|
+
};
|
|
28
31
|
arrangeConfiguration: {
|
|
29
32
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
30
33
|
gap: number;
|
|
@@ -59,6 +59,9 @@ export declare const actionDecreaseFontSize: {
|
|
|
59
59
|
dontResizeLimitMBs: number;
|
|
60
60
|
hideMainMenus: boolean;
|
|
61
61
|
wheelZoomsOnDefault?: boolean;
|
|
62
|
+
alignConfiguration: {
|
|
63
|
+
stacking: boolean;
|
|
64
|
+
};
|
|
62
65
|
arrangeConfiguration: {
|
|
63
66
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
64
67
|
gap: number;
|
|
@@ -246,6 +249,9 @@ export declare const actionIncreaseFontSize: {
|
|
|
246
249
|
dontResizeLimitMBs: number;
|
|
247
250
|
hideMainMenus: boolean;
|
|
248
251
|
wheelZoomsOnDefault?: boolean;
|
|
252
|
+
alignConfiguration: {
|
|
253
|
+
stacking: boolean;
|
|
254
|
+
};
|
|
249
255
|
arrangeConfiguration: {
|
|
250
256
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
251
257
|
gap: number;
|
|
@@ -25,6 +25,9 @@ export declare const actionSelectAll: {
|
|
|
25
25
|
dontResizeLimitMBs: number;
|
|
26
26
|
hideMainMenus: boolean;
|
|
27
27
|
wheelZoomsOnDefault?: boolean;
|
|
28
|
+
alignConfiguration: {
|
|
29
|
+
stacking: boolean;
|
|
30
|
+
};
|
|
28
31
|
arrangeConfiguration: {
|
|
29
32
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
30
33
|
gap: number;
|
|
@@ -23,6 +23,9 @@ export declare const actionCopyStyles: {
|
|
|
23
23
|
dontResizeLimitMBs: number;
|
|
24
24
|
hideMainMenus: boolean;
|
|
25
25
|
wheelZoomsOnDefault?: boolean;
|
|
26
|
+
alignConfiguration: {
|
|
27
|
+
stacking: boolean;
|
|
28
|
+
};
|
|
26
29
|
arrangeConfiguration: {
|
|
27
30
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
28
31
|
gap: number;
|
|
@@ -21,6 +21,9 @@ export declare const actionToggleArrowBinding: {
|
|
|
21
21
|
dontResizeLimitMBs: number;
|
|
22
22
|
hideMainMenus: boolean;
|
|
23
23
|
wheelZoomsOnDefault?: boolean;
|
|
24
|
+
alignConfiguration: {
|
|
25
|
+
stacking: boolean;
|
|
26
|
+
};
|
|
24
27
|
arrangeConfiguration: {
|
|
25
28
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
26
29
|
gap: number;
|
|
@@ -23,6 +23,9 @@ export declare const actionToggleGridMode: {
|
|
|
23
23
|
dontResizeLimitMBs: number;
|
|
24
24
|
hideMainMenus: boolean;
|
|
25
25
|
wheelZoomsOnDefault?: boolean;
|
|
26
|
+
alignConfiguration: {
|
|
27
|
+
stacking: boolean;
|
|
28
|
+
};
|
|
26
29
|
arrangeConfiguration: {
|
|
27
30
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
28
31
|
gap: number;
|
|
@@ -20,6 +20,9 @@ export declare const actionToggleMidpointSnapping: {
|
|
|
20
20
|
dontResizeLimitMBs: number;
|
|
21
21
|
hideMainMenus: boolean;
|
|
22
22
|
wheelZoomsOnDefault?: boolean;
|
|
23
|
+
alignConfiguration: {
|
|
24
|
+
stacking: boolean;
|
|
25
|
+
};
|
|
23
26
|
arrangeConfiguration: {
|
|
24
27
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
25
28
|
gap: number;
|
|
@@ -22,6 +22,9 @@ export declare const actionToggleObjectsSnapMode: {
|
|
|
22
22
|
dontResizeLimitMBs: number;
|
|
23
23
|
hideMainMenus: boolean;
|
|
24
24
|
wheelZoomsOnDefault?: boolean;
|
|
25
|
+
alignConfiguration: {
|
|
26
|
+
stacking: boolean;
|
|
27
|
+
};
|
|
25
28
|
arrangeConfiguration: {
|
|
26
29
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
27
30
|
gap: number;
|
|
@@ -27,6 +27,9 @@ export declare const actionToggleSearchMenu: {
|
|
|
27
27
|
dontResizeLimitMBs: number;
|
|
28
28
|
hideMainMenus: boolean;
|
|
29
29
|
wheelZoomsOnDefault?: boolean;
|
|
30
|
+
alignConfiguration: {
|
|
31
|
+
stacking: boolean;
|
|
32
|
+
};
|
|
30
33
|
arrangeConfiguration: {
|
|
31
34
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
32
35
|
gap: number;
|
|
@@ -24,6 +24,9 @@ export declare const actionToggleStats: {
|
|
|
24
24
|
dontResizeLimitMBs: number;
|
|
25
25
|
hideMainMenus: boolean;
|
|
26
26
|
wheelZoomsOnDefault?: boolean;
|
|
27
|
+
alignConfiguration: {
|
|
28
|
+
stacking: boolean;
|
|
29
|
+
};
|
|
27
30
|
arrangeConfiguration: {
|
|
28
31
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
29
32
|
gap: number;
|
|
@@ -21,6 +21,9 @@ export declare const actionToggleViewMode: {
|
|
|
21
21
|
dontResizeLimitMBs: number;
|
|
22
22
|
hideMainMenus: boolean;
|
|
23
23
|
wheelZoomsOnDefault?: boolean;
|
|
24
|
+
alignConfiguration: {
|
|
25
|
+
stacking: boolean;
|
|
26
|
+
};
|
|
24
27
|
arrangeConfiguration: {
|
|
25
28
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
26
29
|
gap: number;
|
|
@@ -11,7 +11,7 @@ export { actionCopyStyles, actionPasteStyles } from "./actionStyles";
|
|
|
11
11
|
export { actionShortcuts } from "./actionMenu";
|
|
12
12
|
export { actionGroup, actionUngroup } from "./actionGroup";
|
|
13
13
|
export { actionGoToCollaborator } from "./actionNavigate";
|
|
14
|
-
export { actionAlignTop, actionAlignBottom, actionAlignLeft, actionAlignRight, actionAlignVerticallyCentered, actionAlignHorizontallyCentered, } from "./actionAlign";
|
|
14
|
+
export { actionAlignTop, actionAlignBottom, actionAlignLeft, actionAlignRight, actionAlignVerticallyCentered, actionAlignHorizontallyCentered, actionToggleAlignStacking, } from "./actionAlign";
|
|
15
15
|
export { distributeHorizontally, distributeVertically, } from "./actionDistribute";
|
|
16
16
|
export { actionArrangeElements } from "./actionArrange";
|
|
17
17
|
export { actionNormaliseElements } from "./actionNormalise";
|
|
@@ -14,7 +14,7 @@ export type ActionResult = {
|
|
|
14
14
|
type ActionFn<TData = any> = (elements: readonly OrderedExcalidrawElement[], appState: Readonly<AppState>, formData: TData | undefined, app: AppClassProperties) => ActionResult | Promise<ActionResult>;
|
|
15
15
|
export type UpdaterFn = (res: ActionResult) => void;
|
|
16
16
|
export type ActionFilterFn = (action: Action) => void;
|
|
17
|
-
export type ActionName = "copy" | "cut" | "paste" | "copyAsPng" | "copyAsSvg" | "copyText" | "sendBackward" | "bringForward" | "sendToBack" | "bringToFront" | "copyStyles" | "selectAll" | "pasteStyles" | "gridMode" | "objectsSnapMode" | "arrowBinding" | "midpointSnapping" | "stats" | "changeStrokeColor" | "changeBackgroundColor" | "changeBucketFillBackgroundColor" | "changeFillStyle" | "changeStrokeWidth" | "changeSloppiness" | "changeFreedrawMode" | "changeStrokeStyle" | "changeArrowhead" | "changeArrowType" | "changeArrowProperties" | "changeOpacity" | "changeFontSize" | "undo" | "redo" | "finalize" | "changeProjectName" | "changeExportBackground" | "changeExportEmbedScene" | "changeExportScale" | "saveToActiveFile" | "saveFileToDisk" | "loadScene" | "duplicateSelection" | "deleteSelectedElements" | "changeViewBackgroundColor" | "zoomIn" | "zoomOut" | "resetZoom" | "zoomToFit" | "zoomToFitSelection" | "zoomToFitSelectionInViewport" | "changeFontFamily" | "changeTextAlign" | "changeVerticalAlign" | "toggleFullScreen" | "toggleShortcuts" | "group" | "ungroup" | "goToCollaborator" | "changeRoundness" | "alignTop" | "alignBottom" | "alignLeft" | "alignRight" | "alignVerticallyCentered" | "alignHorizontallyCentered" | "distributeHorizontally" | "distributeVertically" | "arrangeElements" | "normaliseElements" | "flipHorizontal" | "flipVertical" | "deselect" | "viewMode" | "exportWithDarkMode" | "toggleTheme" | "increaseFontSize" | "decreaseFontSize" | "unbindText" | "hyperlink" | "bindText" | "unlockAllElements" | "toggleElementLock" | "toggleLinearEditor" | "selectAllElementsInFrame" | "removeAllElementsFromFrame" | "updateFrameRendering" | "createContainerFromText" | "wrapTextInContainer" | "autoResize" | "elementStats" | "searchMenu" | "linkToElement" | "cropEditor" | "wrapSelectionInFrame" | "smartZoom" | "toggleLassoTool" | "toggleShapeSwitch" | "togglePolygon";
|
|
17
|
+
export type ActionName = "copy" | "cut" | "paste" | "copyAsPng" | "copyAsSvg" | "copyText" | "sendBackward" | "bringForward" | "sendToBack" | "bringToFront" | "copyStyles" | "selectAll" | "pasteStyles" | "gridMode" | "objectsSnapMode" | "arrowBinding" | "midpointSnapping" | "stats" | "changeStrokeColor" | "changeBackgroundColor" | "changeBucketFillBackgroundColor" | "changeFillStyle" | "changeStrokeWidth" | "changeSloppiness" | "changeFreedrawMode" | "changeStrokeStyle" | "changeArrowhead" | "changeArrowType" | "changeArrowProperties" | "changeOpacity" | "changeFontSize" | "undo" | "redo" | "finalize" | "changeProjectName" | "changeExportBackground" | "changeExportEmbedScene" | "changeExportScale" | "saveToActiveFile" | "saveFileToDisk" | "loadScene" | "duplicateSelection" | "deleteSelectedElements" | "changeViewBackgroundColor" | "zoomIn" | "zoomOut" | "resetZoom" | "zoomToFit" | "zoomToFitSelection" | "zoomToFitSelectionInViewport" | "changeFontFamily" | "changeTextAlign" | "changeVerticalAlign" | "toggleFullScreen" | "toggleShortcuts" | "group" | "ungroup" | "goToCollaborator" | "changeRoundness" | "alignTop" | "alignBottom" | "alignLeft" | "alignRight" | "alignVerticallyCentered" | "alignHorizontallyCentered" | "toggleAlignStacking" | "distributeHorizontally" | "distributeVertically" | "arrangeElements" | "normaliseElements" | "flipHorizontal" | "flipVertical" | "deselect" | "viewMode" | "exportWithDarkMode" | "toggleTheme" | "increaseFontSize" | "decreaseFontSize" | "unbindText" | "hyperlink" | "bindText" | "unlockAllElements" | "toggleElementLock" | "toggleLinearEditor" | "selectAllElementsInFrame" | "removeAllElementsFromFrame" | "updateFrameRendering" | "createContainerFromText" | "wrapTextInContainer" | "autoResize" | "elementStats" | "searchMenu" | "linkToElement" | "cropEditor" | "wrapSelectionInFrame" | "smartZoom" | "toggleLassoTool" | "toggleShapeSwitch" | "togglePolygon";
|
|
18
18
|
export type PanelComponentProps = {
|
|
19
19
|
elements: readonly ExcalidrawElement[];
|
|
20
20
|
appState: UIAppState;
|
|
@@ -33,8 +33,6 @@ export interface Action<TData = any> {
|
|
|
33
33
|
perform: ActionFn<TData>;
|
|
34
34
|
keyPriority?: number;
|
|
35
35
|
keyTest?: (event: React.KeyboardEvent | KeyboardEvent, appState: AppState, elements: readonly ExcalidrawElement[], app: AppClassProperties) => boolean;
|
|
36
|
-
/** Additional state guard retained when a host overrides `keyTest`'s keys. */
|
|
37
|
-
keyCondition?: (event: React.KeyboardEvent | KeyboardEvent, appState: AppState, elements: readonly ExcalidrawElement[], app: AppClassProperties) => boolean;
|
|
38
36
|
predicate?: (elements: readonly ExcalidrawElement[], appState: AppState, appProps: ExcalidrawProps, app: AppClassProperties) => boolean;
|
|
39
37
|
checked?: (appState: Readonly<UIAppState>) => boolean;
|
|
40
38
|
trackEvent: false | {
|
|
@@ -17,6 +17,9 @@ export declare const clearAppStateForLocalStorage: (appState: Partial<AppState>)
|
|
|
17
17
|
myocSimplifiedMode?: boolean | undefined;
|
|
18
18
|
dontResizeLimitMBs?: number | undefined;
|
|
19
19
|
hideMainMenus?: boolean | undefined;
|
|
20
|
+
alignConfiguration?: {
|
|
21
|
+
stacking: boolean;
|
|
22
|
+
} | undefined;
|
|
20
23
|
arrangeConfiguration?: {
|
|
21
24
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
22
25
|
gap: number;
|
|
@@ -51,7 +51,6 @@ export declare const getToolLetter: (type: ToolbarToolType) => string | undefine
|
|
|
51
51
|
/** human-readable shortcut hint, e.g. "R", used in tooltips & aria */
|
|
52
52
|
export declare const getToolShortcut: (type: ToolbarToolType) => string | undefined;
|
|
53
53
|
export declare const findShapeByKey: (key: string, app: AppClassProperties, shiftKey?: boolean) => "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "embeddable" | "image" | "frame" | "freedraw" | "lasso" | "eraser" | "hand" | "laser" | "autoshape" | "bucketfill" | null;
|
|
54
|
-
export declare const findShapeByKeyboardEvent: (event: KeyboardEvent | React.KeyboardEvent, app: AppClassProperties) => "line" | "arrow" | "text" | "selection" | "rectangle" | "diamond" | "ellipse" | "embeddable" | "image" | "frame" | "freedraw" | "lasso" | "eraser" | "hand" | "laser" | "autoshape" | "bucketfill" | null;
|
|
55
54
|
/**
|
|
56
55
|
* Whether a toolbar entry activating the given tool renders disabled — true
|
|
57
56
|
* when the active tool is host-controlled (`props.activeTool`) and the entry
|
|
@@ -41,6 +41,9 @@ fileHandle?: FileSystemFileHandle | null) => Promise<{
|
|
|
41
41
|
myocSimplifiedMode: boolean;
|
|
42
42
|
dontResizeLimitMBs: number;
|
|
43
43
|
hideMainMenus: boolean;
|
|
44
|
+
alignConfiguration: {
|
|
45
|
+
stacking: boolean;
|
|
46
|
+
};
|
|
44
47
|
arrangeConfiguration: {
|
|
45
48
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
46
49
|
gap: number;
|
|
@@ -42,6 +42,9 @@ export declare const loadFromJSON: (localAppState: AppState, localElements: read
|
|
|
42
42
|
myocSimplifiedMode: boolean;
|
|
43
43
|
dontResizeLimitMBs: number;
|
|
44
44
|
hideMainMenus: boolean;
|
|
45
|
+
alignConfiguration: {
|
|
46
|
+
stacking: boolean;
|
|
47
|
+
};
|
|
45
48
|
arrangeConfiguration: {
|
|
46
49
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
47
50
|
gap: number;
|
|
@@ -1,11 +1,14 @@
|
|
|
1
|
-
import type { AppState, ArrangePreferences, EditorPreferences, NormalisePreferences, SmartZoomPreferences } from "./types";
|
|
1
|
+
import type { AlignPreferences, AppState, ArrangePreferences, EditorPreferences, NormalisePreferences, SmartZoomPreferences } from "./types";
|
|
2
2
|
export type ResolvedSmartZoomPreferences = Required<SmartZoomPreferences>;
|
|
3
|
+
export type ResolvedAlignPreferences = Required<AlignPreferences>;
|
|
3
4
|
export type ResolvedArrangePreferences = Required<ArrangePreferences>;
|
|
4
5
|
export type ResolvedNormalisePreferences = Required<NormalisePreferences>;
|
|
5
6
|
export type ResolvedEditorPreferences = {
|
|
6
7
|
smartZoom: ResolvedSmartZoomPreferences;
|
|
8
|
+
align: ResolvedAlignPreferences;
|
|
7
9
|
arrange: ResolvedArrangePreferences;
|
|
8
10
|
normalise: ResolvedNormalisePreferences;
|
|
9
11
|
};
|
|
12
|
+
export declare const DEFAULT_ALIGN_PREFERENCES: ResolvedAlignPreferences;
|
|
10
13
|
export declare const DEFAULT_SMART_ZOOM_PREFERENCES: ResolvedSmartZoomPreferences;
|
|
11
|
-
export declare const getEffectiveEditorPreferences: (appState: Readonly<Pick<AppState, "arrangeConfiguration" | "normaliseConfiguration"
|
|
14
|
+
export declare const getEffectiveEditorPreferences: (appState: Readonly<Pick<AppState, "arrangeConfiguration" | "normaliseConfiguration"> & Partial<Pick<AppState, "alignConfiguration">>>, editorPreferences?: EditorPreferences) => ResolvedEditorPreferences;
|
|
@@ -226,12 +226,16 @@ export type ArrangePreferences = {
|
|
|
226
226
|
algorithm?: ArrangeAlgorithms;
|
|
227
227
|
gap?: number;
|
|
228
228
|
};
|
|
229
|
+
export type AlignPreferences = {
|
|
230
|
+
stacking?: boolean;
|
|
231
|
+
};
|
|
229
232
|
export type NormalisePreferences = {
|
|
230
233
|
mode?: NormaliseMode;
|
|
231
234
|
metric?: NormaliseMetric;
|
|
232
235
|
};
|
|
233
236
|
export type EditorPreferences = {
|
|
234
237
|
smartZoom?: SmartZoomPreferences;
|
|
238
|
+
align?: AlignPreferences;
|
|
235
239
|
arrange?: ArrangePreferences;
|
|
236
240
|
normalise?: NormalisePreferences;
|
|
237
241
|
};
|
|
@@ -283,6 +287,9 @@ export interface AppState {
|
|
|
283
287
|
dontResizeLimitMBs: number;
|
|
284
288
|
hideMainMenus: boolean;
|
|
285
289
|
wheelZoomsOnDefault?: boolean;
|
|
290
|
+
alignConfiguration: {
|
|
291
|
+
stacking: boolean;
|
|
292
|
+
};
|
|
286
293
|
arrangeConfiguration: {
|
|
287
294
|
algorithm: ArrangeAlgorithms;
|
|
288
295
|
gap: number;
|
|
@@ -687,12 +694,6 @@ export type UIConfig = {
|
|
|
687
694
|
};
|
|
688
695
|
export interface ExcalidrawProps {
|
|
689
696
|
className?: string;
|
|
690
|
-
/**
|
|
691
|
-
* Controlled keyboard shortcut overrides. Omitted commands retain their
|
|
692
|
-
* Excalidraw defaults; pass an empty array to disable a command. Excalidraw
|
|
693
|
-
* does not persist this value.
|
|
694
|
-
*/
|
|
695
|
-
keyboardShortcuts?: import("./keyboardShortcuts").KeyboardShortcutOverrides;
|
|
696
697
|
onChange?: (elements: readonly OrderedExcalidrawElement[], appState: AppState, files: BinaryFiles) => void;
|
|
697
698
|
onThemeChange?: (theme: Theme | "system") => void;
|
|
698
699
|
/**
|
|
@@ -105,6 +105,9 @@ export declare const zoomToFitBounds: ({ bounds, appState, canvasOffsets, fit, m
|
|
|
105
105
|
dontResizeLimitMBs: number;
|
|
106
106
|
hideMainMenus: boolean;
|
|
107
107
|
wheelZoomsOnDefault?: boolean;
|
|
108
|
+
alignConfiguration: {
|
|
109
|
+
stacking: boolean;
|
|
110
|
+
};
|
|
108
111
|
arrangeConfiguration: {
|
|
109
112
|
algorithm: import("@excalidraw/element/types").ArrangeAlgorithms;
|
|
110
113
|
gap: number;
|
package/package.json
CHANGED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import type { ActionName } from "./actions/types";
|
|
2
|
-
type KeyboardShortcutModifiers = {
|
|
3
|
-
ctrlOrCmd?: boolean;
|
|
4
|
-
ctrl?: boolean;
|
|
5
|
-
meta?: boolean;
|
|
6
|
-
alt?: boolean;
|
|
7
|
-
shift?: boolean;
|
|
8
|
-
};
|
|
9
|
-
export type KeyboardShortcut = KeyboardShortcutModifiers & ({
|
|
10
|
-
/** `KeyboardEvent.key` (case-insensitive for single letters). */
|
|
11
|
-
key: string;
|
|
12
|
-
code?: never;
|
|
13
|
-
} | {
|
|
14
|
-
/** `KeyboardEvent.code`, useful for layout-independent shortcuts. */
|
|
15
|
-
code: string;
|
|
16
|
-
key?: never;
|
|
17
|
-
});
|
|
18
|
-
export type KeyboardShortcutCommand = ActionName | `tool:${"hand" | "selection" | "rectangle" | "diamond" | "ellipse" | "arrow" | "line" | "freedraw" | "text" | "image" | "eraser" | "frame" | "autoshape" | "embeddable" | "laser" | "bucketfill" | "lasso"}` | "toolLock" | "strokeEyeDropper" | "backgroundEyeDropper" | "helpDialog" | "imageExport" | "elementStroke" | "elementBackground" | "fontFamily";
|
|
19
|
-
/**
|
|
20
|
-
* A partial, controlled set of shortcut overrides. Missing commands retain
|
|
21
|
-
* Excalidraw's defaults; an empty array explicitly disables a command.
|
|
22
|
-
*/
|
|
23
|
-
export type KeyboardShortcutOverrides = Partial<Record<KeyboardShortcutCommand, readonly KeyboardShortcut[]>>;
|
|
24
|
-
export declare const matchesKeyboardShortcut: (event: Pick<KeyboardEvent, "key" | "code" | "ctrlKey" | "metaKey" | "altKey" | "shiftKey">, shortcut: KeyboardShortcut) => boolean;
|
|
25
|
-
export declare const matchesKeyboardShortcuts: (event: Parameters<typeof matchesKeyboardShortcut>[0], shortcuts: readonly KeyboardShortcut[]) => boolean;
|
|
26
|
-
export declare const formatKeyboardShortcut: (shortcut: KeyboardShortcut) => string;
|
|
27
|
-
export {};
|