@excalidraw/excalidraw 0.18.0-58f7d33 → 0.18.0-6d870b1c8
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-CP5DND7P.js +7 -0
- package/dist/dev/chunk-CP5DND7P.js.map +7 -0
- package/dist/dev/chunk-D5WIFFIO.js +5678 -0
- package/dist/dev/chunk-D5WIFFIO.js.map +7 -0
- package/dist/dev/{chunk-X3RYHLJU.js → chunk-QF5FRM6O.js} +15 -5
- package/dist/dev/chunk-QF5FRM6O.js.map +7 -0
- package/dist/dev/data/{image-U2IPNUKJ.js → image-WMAXQLTI.js} +3 -3
- package/dist/dev/index.css +104 -22
- package/dist/dev/index.css.map +3 -3
- package/dist/dev/index.js +8871 -9726
- package/dist/dev/index.js.map +4 -4
- package/dist/dev/locales/{en-CKWC2GMK.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-I4UNSFV6.js +12 -0
- package/dist/prod/chunk-KK52DCS3.js +4 -0
- package/dist/prod/data/image-U3WTNYT7.js +1 -0
- package/dist/prod/index.css +1 -1
- package/dist/prod/index.js +25 -17
- package/dist/prod/locales/{en-SBO6ZHT2.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 +21 -3
- package/dist/types/{excalidraw → common/src}/emitter.d.ts +1 -1
- package/dist/types/common/src/font-metadata.d.ts +4 -2
- package/dist/types/common/src/index.d.ts +1 -0
- package/dist/types/common/src/utility-types.d.ts +5 -0
- package/dist/types/common/src/utils.d.ts +17 -4
- package/dist/types/{excalidraw/scene → element/src}/Scene.d.ts +11 -14
- package/dist/types/element/src/align.d.ts +4 -3
- package/dist/types/element/src/binding.d.ts +26 -16
- package/dist/types/element/src/bounds.d.ts +13 -5
- package/dist/types/element/src/collision.d.ts +18 -12
- package/dist/types/element/src/cropElement.d.ts +1 -1
- package/dist/types/{excalidraw/change.d.ts → element/src/delta.d.ts} +74 -39
- 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/dragElements.d.ts +3 -2
- package/dist/types/element/src/duplicate.d.ts +10 -13
- package/dist/types/element/src/elbowArrow.d.ts +1 -1
- package/dist/types/element/src/flowchart.d.ts +3 -2
- package/dist/types/element/src/fractionalIndex.d.ts +9 -3
- package/dist/types/element/src/frame.d.ts +5 -4
- package/dist/types/element/src/groups.d.ts +1 -0
- package/dist/types/element/src/index.d.ts +43 -2
- package/dist/types/element/src/linearElementEditor.d.ts +23 -36
- package/dist/types/element/src/mutateElement.d.ts +11 -3
- package/dist/types/element/src/newElement.d.ts +4 -3
- package/dist/types/element/src/resizeElements.d.ts +5 -4
- package/dist/types/element/src/selection.d.ts +11 -5
- package/dist/types/element/src/shape.d.ts +42 -0
- package/dist/types/element/src/sizeHelpers.d.ts +2 -2
- package/dist/types/element/src/store.d.ts +232 -0
- package/dist/types/element/src/textElement.d.ts +4 -3
- package/dist/types/element/src/typeChecks.d.ts +19 -1
- package/dist/types/element/src/types.d.ts +15 -2
- package/dist/types/element/src/utils.d.ts +16 -6
- package/dist/types/element/src/zindex.d.ts +1 -1
- package/dist/types/excalidraw/actions/actionAddToLibrary.d.ts +39 -51
- package/dist/types/excalidraw/actions/actionBoundText.d.ts +26 -34
- package/dist/types/excalidraw/actions/actionCanvas.d.ts +175 -227
- package/dist/types/excalidraw/actions/actionClipboard.d.ts +78 -100
- package/dist/types/excalidraw/actions/actionCropEditor.d.ts +13 -17
- package/dist/types/excalidraw/actions/actionDeleteSelected.d.ts +39 -50
- package/dist/types/excalidraw/actions/actionElementLink.d.ts +12 -16
- package/dist/types/excalidraw/actions/actionElementLock.d.ts +41 -50
- package/dist/types/excalidraw/actions/actionEmbeddable.d.ts +13 -17
- package/dist/types/excalidraw/actions/actionExport.d.ts +127 -163
- package/dist/types/excalidraw/actions/actionFinalize.d.ts +73 -40
- package/dist/types/excalidraw/actions/actionFrame.d.ts +99 -115
- package/dist/types/excalidraw/actions/actionGroup.d.ts +26 -34
- package/dist/types/excalidraw/actions/actionHistory.d.ts +1 -2
- package/dist/types/excalidraw/actions/actionLinearEditor.d.ts +538 -18
- package/dist/types/excalidraw/actions/actionLink.d.ts +12 -16
- package/dist/types/excalidraw/actions/actionMenu.d.ts +36 -48
- package/dist/types/excalidraw/actions/actionNavigate.d.ts +25 -33
- package/dist/types/excalidraw/actions/actionProperties.d.ts +203 -255
- package/dist/types/excalidraw/actions/actionSelectAll.d.ts +13 -17
- package/dist/types/excalidraw/actions/actionStyles.d.ts +13 -17
- package/dist/types/excalidraw/actions/actionToggleGridMode.d.ts +13 -17
- package/dist/types/excalidraw/actions/actionToggleObjectsSnapMode.d.ts +13 -17
- package/dist/types/excalidraw/actions/actionToggleSearchMenu.d.ts +12 -189
- package/dist/types/excalidraw/actions/actionToggleShapeSwitch.d.ts +19 -0
- package/dist/types/excalidraw/actions/actionToggleStats.d.ts +13 -17
- package/dist/types/excalidraw/actions/actionToggleViewMode.d.ts +13 -17
- package/dist/types/excalidraw/actions/actionToggleZenMode.d.ts +13 -17
- package/dist/types/excalidraw/actions/types.d.ts +4 -3
- package/dist/types/excalidraw/appState.d.ts +19 -10
- package/dist/types/excalidraw/components/Actions.d.ts +0 -4
- package/dist/types/excalidraw/components/App.d.ts +30 -19
- package/dist/types/excalidraw/components/ButtonIcon.d.ts +1 -0
- package/dist/types/excalidraw/components/ColorPicker/ColorInput.d.ts +2 -1
- package/dist/types/excalidraw/components/ColorPicker/ColorPicker.d.ts +5 -1
- package/dist/types/excalidraw/components/ColorPicker/CustomColorList.d.ts +1 -1
- package/dist/types/excalidraw/components/ColorPicker/Picker.d.ts +2 -3
- package/dist/types/excalidraw/components/ColorPicker/PickerColorList.d.ts +2 -3
- package/dist/types/excalidraw/components/ColorPicker/ShadeList.d.ts +2 -2
- package/dist/types/excalidraw/components/ColorPicker/TopPicks.d.ts +1 -1
- package/dist/types/excalidraw/components/ColorPicker/colorPickerUtils.d.ts +1 -1
- package/dist/types/excalidraw/components/ColorPicker/keyboardNavHandlers.d.ts +1 -1
- package/dist/types/excalidraw/components/ConvertElementTypePopup.d.ts +23 -0
- package/dist/types/excalidraw/components/ElementLinkDialog.d.ts +4 -3
- 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/Range.d.ts +3 -3
- package/dist/types/excalidraw/components/Stats/Angle.d.ts +1 -1
- package/dist/types/excalidraw/components/Stats/CanvasGrid.d.ts +1 -1
- package/dist/types/excalidraw/components/Stats/Collapsible.d.ts +2 -1
- package/dist/types/excalidraw/components/Stats/Dimension.d.ts +1 -1
- package/dist/types/excalidraw/components/Stats/DragInput.d.ts +12 -2
- package/dist/types/excalidraw/components/Stats/FontSize.d.ts +1 -1
- package/dist/types/excalidraw/components/Stats/MultiAngle.d.ts +1 -1
- package/dist/types/excalidraw/components/Stats/MultiDimension.d.ts +1 -1
- package/dist/types/excalidraw/components/Stats/MultiFontSize.d.ts +1 -1
- package/dist/types/excalidraw/components/Stats/MultiPosition.d.ts +1 -1
- package/dist/types/excalidraw/components/Stats/Position.d.ts +1 -1
- package/dist/types/excalidraw/components/Stats/utils.d.ts +4 -11
- package/dist/types/excalidraw/components/UnlockPopup.d.ts +8 -0
- package/dist/types/excalidraw/components/canvases/InteractiveCanvas.d.ts +1 -0
- package/dist/types/excalidraw/components/hyperlink/Hyperlink.d.ts +3 -2
- package/dist/types/excalidraw/components/hyperlink/helpers.d.ts +2 -1
- package/dist/types/excalidraw/components/icons.d.ts +3 -0
- package/dist/types/excalidraw/components/shapes.d.ts +1 -1
- package/dist/types/excalidraw/data/reconcile.d.ts +1 -0
- package/dist/types/excalidraw/data/restore.d.ts +6 -1
- package/dist/types/excalidraw/data/transform.d.ts +1 -1
- package/dist/types/excalidraw/editor-jotai.d.ts +6 -6
- package/dist/types/excalidraw/eraser/index.d.ts +0 -2
- package/dist/types/excalidraw/fonts/Fonts.d.ts +1 -1
- package/dist/types/excalidraw/history.d.ts +30 -22
- package/dist/types/excalidraw/hooks/useEmitter.d.ts +1 -1
- package/dist/types/excalidraw/index.d.ts +11 -10
- 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 +7 -2
- package/dist/types/excalidraw/renderer/staticScene.d.ts +4 -1
- package/dist/types/excalidraw/scene/Renderer.d.ts +1 -2
- package/dist/types/excalidraw/scene/index.d.ts +2 -2
- package/dist/types/excalidraw/scene/scrollbars.d.ts +2 -3
- package/dist/types/excalidraw/scene/types.d.ts +2 -0
- package/dist/types/excalidraw/snapping.d.ts +2 -2
- package/dist/types/excalidraw/types.d.ts +34 -14
- package/dist/types/excalidraw/wysiwyg/textWysiwyg.d.ts +3 -1
- 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 +34 -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 +8 -2
- package/dist/types/utils/src/bbox.d.ts +1 -1
- package/dist/types/utils/src/index.d.ts +1 -1
- package/dist/types/utils/src/withinBounds.d.ts +1 -1
- package/history.ts +147 -110
- package/package.json +12 -9
- package/dist/dev/chunk-KKJLIRJU.js +0 -7
- package/dist/dev/chunk-KKJLIRJU.js.map +0 -7
- package/dist/dev/chunk-LEJJ2YZY.js +0 -18711
- package/dist/dev/chunk-LEJJ2YZY.js.map +0 -7
- package/dist/dev/chunk-X3RYHLJU.js.map +0 -7
- package/dist/prod/chunk-IUH5AXLB.js +0 -12
- package/dist/prod/chunk-QUX7WTVH.js +0 -7
- package/dist/prod/chunk-RQK6WG4F.js +0 -33
- package/dist/prod/data/image-UQDATCXC.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/store.d.ts +0 -129
- package/dist/types/excalidraw/visualdebug.d.ts +0 -41
- package/dist/types/utils/src/collision.d.ts +0 -8
- /package/dist/dev/data/{image-U2IPNUKJ.js.map → image-WMAXQLTI.js.map} +0 -0
- /package/dist/dev/locales/{en-CKWC2GMK.js.map → en-SMAPCEOQ.js.map} +0 -0
|
@@ -24,7 +24,7 @@ export declare const actionToggleStats: {
|
|
|
24
24
|
errorMessage: import("react").ReactNode;
|
|
25
25
|
activeEmbeddable: {
|
|
26
26
|
element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
|
|
27
|
-
state: "
|
|
27
|
+
state: "active" | "hover";
|
|
28
28
|
} | null;
|
|
29
29
|
newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
|
|
30
30
|
resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
|
|
@@ -32,7 +32,7 @@ export declare const actionToggleStats: {
|
|
|
32
32
|
selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
|
|
33
33
|
isBindingEnabled: boolean;
|
|
34
34
|
startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
|
|
35
|
-
suggestedBindings: import("@excalidraw/element
|
|
35
|
+
suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
|
|
36
36
|
frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
|
|
37
37
|
frameRendering: {
|
|
38
38
|
enabled: boolean;
|
|
@@ -43,7 +43,6 @@ export declare const actionToggleStats: {
|
|
|
43
43
|
editingFrame: string | null;
|
|
44
44
|
elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
|
|
45
45
|
editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
|
|
46
|
-
editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
|
|
47
46
|
activeTool: {
|
|
48
47
|
lastActiveTool: import("../types").ActiveTool | null;
|
|
49
48
|
locked: boolean;
|
|
@@ -81,7 +80,7 @@ export declare const actionToggleStats: {
|
|
|
81
80
|
zoom: Readonly<{
|
|
82
81
|
value: import("../types").NormalizedZoomValue;
|
|
83
82
|
}>;
|
|
84
|
-
openMenu: "
|
|
83
|
+
openMenu: "canvas" | "shape" | null;
|
|
85
84
|
openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
|
|
86
85
|
openSidebar: {
|
|
87
86
|
name: string;
|
|
@@ -91,7 +90,7 @@ export declare const actionToggleStats: {
|
|
|
91
90
|
name: "imageExport" | "help" | "jsonExport";
|
|
92
91
|
} | {
|
|
93
92
|
name: "ttd";
|
|
94
|
-
tab: "text-to-diagram"
|
|
93
|
+
tab: "mermaid" | "text-to-diagram";
|
|
95
94
|
} | {
|
|
96
95
|
name: "commandPalette";
|
|
97
96
|
} | {
|
|
@@ -159,9 +158,8 @@ export declare const actionToggleStats: {
|
|
|
159
158
|
shown: true;
|
|
160
159
|
data: import("../charts").Spreadsheet;
|
|
161
160
|
};
|
|
162
|
-
pendingImageElementId: string | null;
|
|
163
161
|
showHyperlinkPopup: false | "editor" | "info";
|
|
164
|
-
selectedLinearElement: import("@excalidraw/element
|
|
162
|
+
selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
|
|
165
163
|
snapLines: readonly import("../snapping").SnapLine[];
|
|
166
164
|
originSnapOffset: {
|
|
167
165
|
x: number;
|
|
@@ -172,16 +170,14 @@ export declare const actionToggleStats: {
|
|
|
172
170
|
followedBy: Set<import("../types").SocketId>;
|
|
173
171
|
isCropping: boolean;
|
|
174
172
|
croppingElementId: string | null;
|
|
175
|
-
searchMatches:
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
}[];
|
|
184
|
-
}[];
|
|
173
|
+
searchMatches: Readonly<{
|
|
174
|
+
focusedId: string | null;
|
|
175
|
+
matches: readonly import("../types").SearchMatch[];
|
|
176
|
+
}> | null;
|
|
177
|
+
activeLockedId: string | null;
|
|
178
|
+
lockedMultiSelections: {
|
|
179
|
+
[groupId: string]: true;
|
|
180
|
+
};
|
|
185
181
|
};
|
|
186
182
|
captureUpdate: "EVENTUALLY";
|
|
187
183
|
};
|
|
@@ -21,7 +21,7 @@ export declare const actionToggleViewMode: {
|
|
|
21
21
|
errorMessage: import("react").ReactNode;
|
|
22
22
|
activeEmbeddable: {
|
|
23
23
|
element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
|
|
24
|
-
state: "
|
|
24
|
+
state: "active" | "hover";
|
|
25
25
|
} | null;
|
|
26
26
|
newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
|
|
27
27
|
resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
|
|
@@ -29,7 +29,7 @@ export declare const actionToggleViewMode: {
|
|
|
29
29
|
selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
|
|
30
30
|
isBindingEnabled: boolean;
|
|
31
31
|
startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
|
|
32
|
-
suggestedBindings: import("@excalidraw/element
|
|
32
|
+
suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
|
|
33
33
|
frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
|
|
34
34
|
frameRendering: {
|
|
35
35
|
enabled: boolean;
|
|
@@ -40,7 +40,6 @@ export declare const actionToggleViewMode: {
|
|
|
40
40
|
editingFrame: string | null;
|
|
41
41
|
elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
|
|
42
42
|
editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
|
|
43
|
-
editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
|
|
44
43
|
activeTool: {
|
|
45
44
|
lastActiveTool: import("../types").ActiveTool | null;
|
|
46
45
|
locked: boolean;
|
|
@@ -78,7 +77,7 @@ export declare const actionToggleViewMode: {
|
|
|
78
77
|
zoom: Readonly<{
|
|
79
78
|
value: import("../types").NormalizedZoomValue;
|
|
80
79
|
}>;
|
|
81
|
-
openMenu: "
|
|
80
|
+
openMenu: "canvas" | "shape" | null;
|
|
82
81
|
openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
|
|
83
82
|
openSidebar: {
|
|
84
83
|
name: string;
|
|
@@ -88,7 +87,7 @@ export declare const actionToggleViewMode: {
|
|
|
88
87
|
name: "imageExport" | "help" | "jsonExport";
|
|
89
88
|
} | {
|
|
90
89
|
name: "ttd";
|
|
91
|
-
tab: "text-to-diagram"
|
|
90
|
+
tab: "mermaid" | "text-to-diagram";
|
|
92
91
|
} | {
|
|
93
92
|
name: "commandPalette";
|
|
94
93
|
} | {
|
|
@@ -159,9 +158,8 @@ export declare const actionToggleViewMode: {
|
|
|
159
158
|
shown: true;
|
|
160
159
|
data: import("../charts").Spreadsheet;
|
|
161
160
|
};
|
|
162
|
-
pendingImageElementId: string | null;
|
|
163
161
|
showHyperlinkPopup: false | "editor" | "info";
|
|
164
|
-
selectedLinearElement: import("@excalidraw/element
|
|
162
|
+
selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
|
|
165
163
|
snapLines: readonly import("../snapping").SnapLine[];
|
|
166
164
|
originSnapOffset: {
|
|
167
165
|
x: number;
|
|
@@ -172,16 +170,14 @@ export declare const actionToggleViewMode: {
|
|
|
172
170
|
followedBy: Set<import("../types").SocketId>;
|
|
173
171
|
isCropping: boolean;
|
|
174
172
|
croppingElementId: string | null;
|
|
175
|
-
searchMatches:
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
}[];
|
|
184
|
-
}[];
|
|
173
|
+
searchMatches: Readonly<{
|
|
174
|
+
focusedId: string | null;
|
|
175
|
+
matches: readonly import("../types").SearchMatch[];
|
|
176
|
+
}> | null;
|
|
177
|
+
activeLockedId: string | null;
|
|
178
|
+
lockedMultiSelections: {
|
|
179
|
+
[groupId: string]: true;
|
|
180
|
+
};
|
|
185
181
|
};
|
|
186
182
|
captureUpdate: "EVENTUALLY";
|
|
187
183
|
};
|
|
@@ -21,7 +21,7 @@ export declare const actionToggleZenMode: {
|
|
|
21
21
|
errorMessage: import("react").ReactNode;
|
|
22
22
|
activeEmbeddable: {
|
|
23
23
|
element: import("@excalidraw/element/types").NonDeletedExcalidrawElement;
|
|
24
|
-
state: "
|
|
24
|
+
state: "active" | "hover";
|
|
25
25
|
} | null;
|
|
26
26
|
newElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawNonSelectionElement> | null;
|
|
27
27
|
resizingElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
|
|
@@ -29,7 +29,7 @@ export declare const actionToggleZenMode: {
|
|
|
29
29
|
selectionElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
|
|
30
30
|
isBindingEnabled: boolean;
|
|
31
31
|
startBoundElement: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawBindableElement> | null;
|
|
32
|
-
suggestedBindings: import("@excalidraw/element
|
|
32
|
+
suggestedBindings: import("@excalidraw/element").SuggestedBinding[];
|
|
33
33
|
frameToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawFrameLikeElement> | null;
|
|
34
34
|
frameRendering: {
|
|
35
35
|
enabled: boolean;
|
|
@@ -40,7 +40,6 @@ export declare const actionToggleZenMode: {
|
|
|
40
40
|
editingFrame: string | null;
|
|
41
41
|
elementsToHighlight: import("@excalidraw/element/types").NonDeleted<import("@excalidraw/element/types").ExcalidrawElement>[] | null;
|
|
42
42
|
editingTextElement: import("@excalidraw/element/types").NonDeletedExcalidrawElement | null;
|
|
43
|
-
editingLinearElement: import("@excalidraw/element/linearElementEditor").LinearElementEditor | null;
|
|
44
43
|
activeTool: {
|
|
45
44
|
lastActiveTool: import("../types").ActiveTool | null;
|
|
46
45
|
locked: boolean;
|
|
@@ -78,7 +77,7 @@ export declare const actionToggleZenMode: {
|
|
|
78
77
|
zoom: Readonly<{
|
|
79
78
|
value: import("../types").NormalizedZoomValue;
|
|
80
79
|
}>;
|
|
81
|
-
openMenu: "
|
|
80
|
+
openMenu: "canvas" | "shape" | null;
|
|
82
81
|
openPopup: "fontFamily" | "canvasBackground" | "elementBackground" | "elementStroke" | null;
|
|
83
82
|
openSidebar: {
|
|
84
83
|
name: string;
|
|
@@ -88,7 +87,7 @@ export declare const actionToggleZenMode: {
|
|
|
88
87
|
name: "imageExport" | "help" | "jsonExport";
|
|
89
88
|
} | {
|
|
90
89
|
name: "ttd";
|
|
91
|
-
tab: "text-to-diagram"
|
|
90
|
+
tab: "mermaid" | "text-to-diagram";
|
|
92
91
|
} | {
|
|
93
92
|
name: "commandPalette";
|
|
94
93
|
} | {
|
|
@@ -159,9 +158,8 @@ export declare const actionToggleZenMode: {
|
|
|
159
158
|
shown: true;
|
|
160
159
|
data: import("../charts").Spreadsheet;
|
|
161
160
|
};
|
|
162
|
-
pendingImageElementId: string | null;
|
|
163
161
|
showHyperlinkPopup: false | "editor" | "info";
|
|
164
|
-
selectedLinearElement: import("@excalidraw/element
|
|
162
|
+
selectedLinearElement: import("@excalidraw/element").LinearElementEditor | null;
|
|
165
163
|
snapLines: readonly import("../snapping").SnapLine[];
|
|
166
164
|
originSnapOffset: {
|
|
167
165
|
x: number;
|
|
@@ -172,16 +170,14 @@ export declare const actionToggleZenMode: {
|
|
|
172
170
|
followedBy: Set<import("../types").SocketId>;
|
|
173
171
|
isCropping: boolean;
|
|
174
172
|
croppingElementId: string | null;
|
|
175
|
-
searchMatches:
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
}[];
|
|
184
|
-
}[];
|
|
173
|
+
searchMatches: Readonly<{
|
|
174
|
+
focusedId: string | null;
|
|
175
|
+
matches: readonly import("../types").SearchMatch[];
|
|
176
|
+
}> | null;
|
|
177
|
+
activeLockedId: string | null;
|
|
178
|
+
lockedMultiSelections: {
|
|
179
|
+
[groupId: string]: true;
|
|
180
|
+
};
|
|
185
181
|
};
|
|
186
182
|
captureUpdate: "EVENTUALLY";
|
|
187
183
|
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ExcalidrawElement, OrderedExcalidrawElement } from "@excalidraw/element/types";
|
|
2
|
-
import type { CaptureUpdateActionType } from "
|
|
2
|
+
import type { CaptureUpdateActionType } from "@excalidraw/element";
|
|
3
3
|
import type { AppClassProperties, AppState, ExcalidrawProps, BinaryFiles, UIAppState } from "../types";
|
|
4
4
|
import type React from "react";
|
|
5
5
|
export type ActionSource = "ui" | "keyboard" | "contextMenu" | "api" | "commandPalette";
|
|
@@ -14,7 +14,7 @@ export type ActionResult = {
|
|
|
14
14
|
type ActionFn = (elements: readonly OrderedExcalidrawElement[], appState: Readonly<AppState>, formData: any, 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" | "zenMode" | "objectsSnapMode" | "stats" | "changeStrokeColor" | "changeBackgroundColor" | "changeFillStyle" | "changeStrokeWidth" | "changeStrokeShape" | "changeSloppiness" | "changeStrokeStyle" | "changeArrowhead" | "changeArrowType" | "changeOpacity" | "changeFontSize" | "toggleCanvasMenu" | "toggleEditMenu" | "undo" | "redo" | "finalize" | "changeProjectName" | "changeExportBackground" | "changeExportEmbedScene" | "changeExportScale" | "saveToActiveFile" | "saveFileToDisk" | "loadScene" | "duplicateSelection" | "deleteSelectedElements" | "changeViewBackgroundColor" | "clearCanvas" | "zoomIn" | "zoomOut" | "resetZoom" | "zoomToFit" | "zoomToFitSelection" | "zoomToFitSelectionInViewport" | "changeFontFamily" | "changeTextAlign" | "changeVerticalAlign" | "toggleFullScreen" | "toggleShortcuts" | "group" | "ungroup" | "goToCollaborator" | "addToLibrary" | "changeRoundness" | "alignTop" | "alignBottom" | "alignLeft" | "alignRight" | "alignVerticallyCentered" | "alignHorizontallyCentered" | "distributeHorizontally" | "distributeVertically" | "flipHorizontal" | "flipVertical" | "viewMode" | "exportWithDarkMode" | "toggleTheme" | "increaseFontSize" | "decreaseFontSize" | "unbindText" | "hyperlink" | "bindText" | "unlockAllElements" | "toggleElementLock" | "toggleLinearEditor" | "toggleEraserTool" | "toggleHandTool" | "selectAllElementsInFrame" | "removeAllElementsFromFrame" | "updateFrameRendering" | "setFrameAsActiveTool" | "setEmbeddableAsActiveTool" | "createContainerFromText" | "wrapTextInContainer" | "commandPalette" | "autoResize" | "elementStats" | "searchMenu" | "copyElementLink" | "linkToElement" | "cropEditor" | "wrapSelectionInFrame" | "toggleLassoTool";
|
|
17
|
+
export type ActionName = "copy" | "cut" | "paste" | "copyAsPng" | "copyAsSvg" | "copyText" | "sendBackward" | "bringForward" | "sendToBack" | "bringToFront" | "copyStyles" | "selectAll" | "pasteStyles" | "gridMode" | "zenMode" | "objectsSnapMode" | "stats" | "changeStrokeColor" | "changeBackgroundColor" | "changeFillStyle" | "changeStrokeWidth" | "changeStrokeShape" | "changeSloppiness" | "changeStrokeStyle" | "changeArrowhead" | "changeArrowType" | "changeOpacity" | "changeFontSize" | "toggleCanvasMenu" | "toggleEditMenu" | "undo" | "redo" | "finalize" | "changeProjectName" | "changeExportBackground" | "changeExportEmbedScene" | "changeExportScale" | "saveToActiveFile" | "saveFileToDisk" | "loadScene" | "duplicateSelection" | "deleteSelectedElements" | "changeViewBackgroundColor" | "clearCanvas" | "zoomIn" | "zoomOut" | "resetZoom" | "zoomToFit" | "zoomToFitSelection" | "zoomToFitSelectionInViewport" | "changeFontFamily" | "changeTextAlign" | "changeVerticalAlign" | "toggleFullScreen" | "toggleShortcuts" | "group" | "ungroup" | "goToCollaborator" | "addToLibrary" | "changeRoundness" | "alignTop" | "alignBottom" | "alignLeft" | "alignRight" | "alignVerticallyCentered" | "alignHorizontallyCentered" | "distributeHorizontally" | "distributeVertically" | "flipHorizontal" | "flipVertical" | "viewMode" | "exportWithDarkMode" | "toggleTheme" | "increaseFontSize" | "decreaseFontSize" | "unbindText" | "hyperlink" | "bindText" | "unlockAllElements" | "toggleElementLock" | "toggleLinearEditor" | "toggleEraserTool" | "toggleHandTool" | "selectAllElementsInFrame" | "removeAllElementsFromFrame" | "updateFrameRendering" | "setFrameAsActiveTool" | "setEmbeddableAsActiveTool" | "createContainerFromText" | "wrapTextInContainer" | "commandPalette" | "autoResize" | "elementStats" | "searchMenu" | "copyElementLink" | "linkToElement" | "cropEditor" | "wrapSelectionInFrame" | "toggleLassoTool" | "toggleShapeSwitch" | "togglePolygon";
|
|
18
18
|
export type PanelComponentProps = {
|
|
19
19
|
elements: readonly ExcalidrawElement[];
|
|
20
20
|
appState: AppState;
|
|
@@ -22,6 +22,7 @@ export type PanelComponentProps = {
|
|
|
22
22
|
appProps: ExcalidrawProps;
|
|
23
23
|
data?: Record<string, any>;
|
|
24
24
|
app: AppClassProperties;
|
|
25
|
+
renderAction: (name: ActionName, data?: PanelComponentProps["data"]) => React.JSX.Element | null;
|
|
25
26
|
};
|
|
26
27
|
export interface Action {
|
|
27
28
|
name: ActionName;
|
|
@@ -35,7 +36,7 @@ export interface Action {
|
|
|
35
36
|
predicate?: (elements: readonly ExcalidrawElement[], appState: AppState, appProps: ExcalidrawProps, app: AppClassProperties) => boolean;
|
|
36
37
|
checked?: (appState: Readonly<AppState>) => boolean;
|
|
37
38
|
trackEvent: false | {
|
|
38
|
-
category: "toolbar" | "element" | "canvas" | "export" | "history" | "menu" | "collab" | "hyperlink" | "search_menu";
|
|
39
|
+
category: "toolbar" | "element" | "canvas" | "export" | "history" | "menu" | "collab" | "hyperlink" | "search_menu" | "shape_switch";
|
|
39
40
|
action?: string;
|
|
40
41
|
predicate?: (appState: Readonly<AppState>, elements: readonly ExcalidrawElement[], value: any) => boolean;
|
|
41
42
|
};
|
|
@@ -16,14 +16,8 @@ export declare const clearAppStateForLocalStorage: (appState: Partial<AppState>)
|
|
|
16
16
|
selectedGroupIds?: {
|
|
17
17
|
[groupId: string]: boolean;
|
|
18
18
|
} | undefined;
|
|
19
|
-
selectedLinearElement?: import("@excalidraw/element
|
|
19
|
+
selectedLinearElement?: import("@excalidraw/element").LinearElementEditor | null | undefined;
|
|
20
20
|
zenModeEnabled?: boolean | undefined;
|
|
21
|
-
gridModeEnabled?: boolean | undefined;
|
|
22
|
-
objectsSnapModeEnabled?: boolean | undefined;
|
|
23
|
-
shouldCacheIgnoreZoom?: boolean | undefined;
|
|
24
|
-
exportScale?: number | undefined;
|
|
25
|
-
gridSize?: number | undefined;
|
|
26
|
-
gridStep?: number | undefined;
|
|
27
21
|
showWelcomeScreen?: boolean | undefined;
|
|
28
22
|
activeTool?: ({
|
|
29
23
|
lastActiveTool: import("./types").ActiveTool | null;
|
|
@@ -35,6 +29,7 @@ export declare const clearAppStateForLocalStorage: (appState: Partial<AppState>)
|
|
|
35
29
|
exportBackground?: boolean | undefined;
|
|
36
30
|
exportEmbedScene?: boolean | undefined;
|
|
37
31
|
exportWithDarkMode?: boolean | undefined;
|
|
32
|
+
exportScale?: number | undefined;
|
|
38
33
|
currentItemStrokeColor?: string | undefined;
|
|
39
34
|
currentItemBackgroundColor?: string | undefined;
|
|
40
35
|
currentItemFillStyle?: import("@excalidraw/element/types").FillStyle | undefined;
|
|
@@ -51,7 +46,7 @@ export declare const clearAppStateForLocalStorage: (appState: Partial<AppState>)
|
|
|
51
46
|
currentItemArrowType?: "round" | "sharp" | "elbow" | undefined;
|
|
52
47
|
cursorButton?: "up" | "down" | undefined;
|
|
53
48
|
scrolledOutside?: boolean | undefined;
|
|
54
|
-
openMenu?: "
|
|
49
|
+
openMenu?: "canvas" | "shape" | null | undefined;
|
|
55
50
|
openSidebar?: {
|
|
56
51
|
name: string;
|
|
57
52
|
tab?: string | undefined;
|
|
@@ -61,23 +56,37 @@ export declare const clearAppStateForLocalStorage: (appState: Partial<AppState>)
|
|
|
61
56
|
previousSelectedElementIds?: {
|
|
62
57
|
[id: string]: true;
|
|
63
58
|
} | undefined;
|
|
59
|
+
shouldCacheIgnoreZoom?: boolean | undefined;
|
|
60
|
+
gridSize?: number | undefined;
|
|
61
|
+
gridStep?: number | undefined;
|
|
62
|
+
gridModeEnabled?: boolean | undefined;
|
|
64
63
|
stats?: {
|
|
65
64
|
open: boolean;
|
|
66
65
|
panels: number;
|
|
67
66
|
} | undefined;
|
|
68
67
|
currentChartType?: import("@excalidraw/element/types").ChartType | undefined;
|
|
68
|
+
objectsSnapModeEnabled?: boolean | undefined;
|
|
69
|
+
lockedMultiSelections?: {
|
|
70
|
+
[groupId: string]: true;
|
|
71
|
+
} | undefined;
|
|
69
72
|
};
|
|
70
73
|
export declare const cleanAppStateForExport: (appState: Partial<AppState>) => {
|
|
71
74
|
viewBackgroundColor?: string | undefined;
|
|
72
|
-
gridModeEnabled?: boolean | undefined;
|
|
73
75
|
gridSize?: number | undefined;
|
|
74
76
|
gridStep?: number | undefined;
|
|
77
|
+
gridModeEnabled?: boolean | undefined;
|
|
78
|
+
lockedMultiSelections?: {
|
|
79
|
+
[groupId: string]: true;
|
|
80
|
+
} | undefined;
|
|
75
81
|
};
|
|
76
82
|
export declare const clearAppStateForDatabase: (appState: Partial<AppState>) => {
|
|
77
83
|
viewBackgroundColor?: string | undefined;
|
|
78
|
-
gridModeEnabled?: boolean | undefined;
|
|
79
84
|
gridSize?: number | undefined;
|
|
80
85
|
gridStep?: number | undefined;
|
|
86
|
+
gridModeEnabled?: boolean | undefined;
|
|
87
|
+
lockedMultiSelections?: {
|
|
88
|
+
[groupId: string]: true;
|
|
89
|
+
} | undefined;
|
|
81
90
|
};
|
|
82
91
|
export declare const isEraserActive: ({ activeTool, }: {
|
|
83
92
|
activeTool: AppState["activeTool"];
|
|
@@ -28,7 +28,3 @@ export declare const ExitZenModeAction: ({ actionManager, showExitZenModeBtn, }:
|
|
|
28
28
|
actionManager: ActionManager;
|
|
29
29
|
showExitZenModeBtn: boolean;
|
|
30
30
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
31
|
-
export declare const FinalizeAction: ({ renderAction, className, }: {
|
|
32
|
-
renderAction: ActionManager["renderAction"];
|
|
33
|
-
className?: string | undefined;
|
|
34
|
-
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { type EXPORT_IMAGE_TYPES } from "@excalidraw/common";
|
|
3
|
-
import { LinearElementEditor } from "@excalidraw/element
|
|
4
|
-
import {
|
|
5
|
-
import type {
|
|
2
|
+
import { type EXPORT_IMAGE_TYPES, Emitter } from "@excalidraw/common";
|
|
3
|
+
import { LinearElementEditor, FlowChartCreator, Scene, Store, type ElementUpdate } from "@excalidraw/element";
|
|
4
|
+
import type { ExcalidrawElement, NonDeleted, NonDeletedExcalidrawElement, ExcalidrawFrameLikeElement, ExcalidrawIframeElement, ExcalidrawEmbeddableElement, Ordered } from "@excalidraw/element/types";
|
|
5
|
+
import type { Mutable } from "@excalidraw/common/utility-types";
|
|
6
6
|
import { ActionManager } from "../actions/manager";
|
|
7
7
|
import { AnimationFrameHandler } from "../animation-frame-handler";
|
|
8
8
|
import { History } from "../history";
|
|
9
|
-
import Scene from "../scene/Scene";
|
|
10
9
|
import { Fonts } from "../fonts";
|
|
10
|
+
import { type WritableAtom } from "../editor-jotai";
|
|
11
11
|
import { Renderer } from "../scene/Renderer";
|
|
12
|
-
import { Emitter } from "../emitter";
|
|
13
|
-
import { Store } from "../store";
|
|
14
12
|
import { LaserTrails } from "../laser-trails";
|
|
15
13
|
import { LassoTrail } from "../lasso";
|
|
16
14
|
import { EraserTrail } from "../eraser";
|
|
@@ -80,6 +78,7 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
80
78
|
/** embeds that have been inserted to DOM (as a perf optim, we don't want to
|
|
81
79
|
* insert to DOM before user initially scrolls to them) */
|
|
82
80
|
private initializedEmbeds;
|
|
81
|
+
private handleToastClose;
|
|
83
82
|
private elementsPendingErasure;
|
|
84
83
|
flowChartCreator: FlowChartCreator;
|
|
85
84
|
private flowChartNavigator;
|
|
@@ -124,7 +123,7 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
124
123
|
};
|
|
125
124
|
originalElements: Map<string, NonDeleted<ExcalidrawElement>>;
|
|
126
125
|
resize: {
|
|
127
|
-
handleType: import("@excalidraw/element
|
|
126
|
+
handleType: import("@excalidraw/element").MaybeTransformHandleType;
|
|
128
127
|
isResizing: boolean;
|
|
129
128
|
offset: {
|
|
130
129
|
x: number;
|
|
@@ -150,6 +149,10 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
150
149
|
x: number;
|
|
151
150
|
y: number;
|
|
152
151
|
} | null;
|
|
152
|
+
origin: {
|
|
153
|
+
x: number;
|
|
154
|
+
y: number;
|
|
155
|
+
};
|
|
153
156
|
};
|
|
154
157
|
eventListeners: {
|
|
155
158
|
onMove: {
|
|
@@ -189,7 +192,7 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
189
192
|
};
|
|
190
193
|
originalElements: Map<string, NonDeleted<ExcalidrawElement>>;
|
|
191
194
|
resize: {
|
|
192
|
-
handleType: import("@excalidraw/element
|
|
195
|
+
handleType: import("@excalidraw/element").MaybeTransformHandleType;
|
|
193
196
|
isResizing: boolean;
|
|
194
197
|
offset: {
|
|
195
198
|
x: number;
|
|
@@ -215,6 +218,10 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
215
218
|
x: number;
|
|
216
219
|
y: number;
|
|
217
220
|
} | null;
|
|
221
|
+
origin: {
|
|
222
|
+
x: number;
|
|
223
|
+
y: number;
|
|
224
|
+
};
|
|
218
225
|
};
|
|
219
226
|
eventListeners: {
|
|
220
227
|
onMove: {
|
|
@@ -237,6 +244,7 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
237
244
|
missingPointerEventCleanupEmitter: Emitter<[event: PointerEvent | null]>;
|
|
238
245
|
onRemoveEventListenersEmitter: Emitter<[]>;
|
|
239
246
|
constructor(props: AppProps);
|
|
247
|
+
updateEditorAtom: <Value, Args extends unknown[], Result>(atom: WritableAtom<Value, Args, Result>, ...args: Args) => Result;
|
|
240
248
|
private onWindowMessage;
|
|
241
249
|
private cacheEmbeddableRef;
|
|
242
250
|
/**
|
|
@@ -258,6 +266,7 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
258
266
|
render(): import("react/jsx-runtime").JSX.Element;
|
|
259
267
|
focusContainer: AppClassProperties["focusContainer"];
|
|
260
268
|
getSceneElementsIncludingDeleted: () => readonly import("@excalidraw/element/types").OrderedExcalidrawElement[];
|
|
269
|
+
getSceneElementsMapIncludingDeleted: () => Map<string, Ordered<ExcalidrawElement>> & import("@excalidraw/common/utility-types").MakeBrand<"SceneElementsMap">;
|
|
261
270
|
getSceneElements: () => readonly Ordered<NonDeletedExcalidrawElement>[];
|
|
262
271
|
onInsertElements: (elements: readonly ExcalidrawElement[]) => void;
|
|
263
272
|
onExportImage: (type: keyof typeof EXPORT_IMAGE_TYPES, elements: ExportedElements, opts: {
|
|
@@ -388,6 +397,7 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
388
397
|
*/
|
|
389
398
|
captureUpdate?: SceneData["captureUpdate"];
|
|
390
399
|
}) => void;
|
|
400
|
+
mutateElement: <TElement extends Mutable<ExcalidrawElement>>(element: TElement, updates: ElementUpdate<TElement>, informMutation?: boolean) => TElement;
|
|
391
401
|
private triggerRender;
|
|
392
402
|
/**
|
|
393
403
|
* @returns whether the menu was toggled on or off
|
|
@@ -402,12 +412,9 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
402
412
|
private onKeyDown;
|
|
403
413
|
private onKeyUp;
|
|
404
414
|
private isToolSupported;
|
|
405
|
-
setActiveTool: (tool: (
|
|
406
|
-
type:
|
|
415
|
+
setActiveTool: (tool: ({
|
|
416
|
+
type: ToolType;
|
|
407
417
|
} | {
|
|
408
|
-
type: Extract<ToolType, "image">;
|
|
409
|
-
insertOnCanvasDirectly?: boolean;
|
|
410
|
-
}) | {
|
|
411
418
|
type: "custom";
|
|
412
419
|
customType: string;
|
|
413
420
|
}) & {
|
|
@@ -433,7 +440,7 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
433
440
|
private getTextElementAtPosition;
|
|
434
441
|
private getElementAtPosition;
|
|
435
442
|
private getElementsAtPosition;
|
|
436
|
-
getElementHitThreshold(): number;
|
|
443
|
+
getElementHitThreshold(element: ExcalidrawElement): number;
|
|
437
444
|
private hitElement;
|
|
438
445
|
private getTextBindableContainerAtPosition;
|
|
439
446
|
private startTextEditing;
|
|
@@ -496,13 +503,18 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
496
503
|
private restoreReadyToEraseElements;
|
|
497
504
|
private eraseElements;
|
|
498
505
|
private initializeImage;
|
|
506
|
+
/**
|
|
507
|
+
* use during async image initialization,
|
|
508
|
+
* when the placeholder image could have been modified in the meantime,
|
|
509
|
+
* and when you don't want to loose those modifications
|
|
510
|
+
*/
|
|
511
|
+
private getLatestInitializedImageElement;
|
|
499
512
|
/**
|
|
500
513
|
* inserts image into elements array and rerenders
|
|
501
514
|
*/
|
|
502
|
-
insertImageElement
|
|
503
|
-
private setImagePreviewCursor;
|
|
515
|
+
private insertImageElement;
|
|
504
516
|
private onImageAction;
|
|
505
|
-
|
|
517
|
+
private getImageNaturalDimensions;
|
|
506
518
|
/** updates image cache, refreshing updated elements and/or setting status
|
|
507
519
|
to error for images that fail during <img> element creation */
|
|
508
520
|
private updateImageCache;
|
|
@@ -513,7 +525,6 @@ declare class App extends React.Component<AppProps, AppState> {
|
|
|
513
525
|
private scheduleImageRefresh;
|
|
514
526
|
private updateBindingEnabledOnPointerMove;
|
|
515
527
|
private maybeSuggestBindingAtCursor;
|
|
516
|
-
private maybeSuggestBindingsForLinearElementAtCoords;
|
|
517
528
|
private clearSelection;
|
|
518
529
|
private handleInteractiveCanvasRef;
|
|
519
530
|
private handleAppOnDrop;
|
|
@@ -10,6 +10,7 @@ interface ButtonIconProps {
|
|
|
10
10
|
/** include standalone style (could interfere with parent styles) */
|
|
11
11
|
standalone?: boolean;
|
|
12
12
|
onClick: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
|
|
13
|
+
style?: React.CSSProperties;
|
|
13
14
|
}
|
|
14
15
|
export declare const ButtonIcon: import("react").ForwardRefExoticComponent<ButtonIconProps & import("react").RefAttributes<HTMLButtonElement>>;
|
|
15
16
|
export {};
|
|
@@ -4,6 +4,7 @@ interface ColorInputProps {
|
|
|
4
4
|
onChange: (color: string) => void;
|
|
5
5
|
label: string;
|
|
6
6
|
colorPickerType: ColorPickerType;
|
|
7
|
+
placeholder?: string;
|
|
7
8
|
}
|
|
8
|
-
export declare const ColorInput: ({ color, onChange, label, colorPickerType, }: ColorInputProps) => import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export declare const ColorInput: ({ color, onChange, label, colorPickerType, placeholder, }: ColorInputProps) => import("react/jsx-runtime").JSX.Element;
|
|
9
10
|
export {};
|
|
@@ -6,7 +6,11 @@ import type { AppState } from "../../types";
|
|
|
6
6
|
export declare const getColor: (color: string) => string | null;
|
|
7
7
|
interface ColorPickerProps {
|
|
8
8
|
type: ColorPickerType;
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* null indicates no color should be displayed as active
|
|
11
|
+
* (e.g. when multiple shapes selected with different colors)
|
|
12
|
+
*/
|
|
13
|
+
color: string | null;
|
|
10
14
|
onChange: (color: string) => void;
|
|
11
15
|
label: string;
|
|
12
16
|
elements: readonly ExcalidrawElement[];
|
|
@@ -3,9 +3,8 @@ import type { ExcalidrawElement } from "@excalidraw/element/types";
|
|
|
3
3
|
import type { ColorPaletteCustom } from "@excalidraw/common";
|
|
4
4
|
import type { ColorPickerType } from "./colorPickerUtils";
|
|
5
5
|
interface PickerProps {
|
|
6
|
-
color: string;
|
|
6
|
+
color: string | null;
|
|
7
7
|
onChange: (color: string) => void;
|
|
8
|
-
label: string;
|
|
9
8
|
type: ColorPickerType;
|
|
10
9
|
elements: readonly ExcalidrawElement[];
|
|
11
10
|
palette: ColorPaletteCustom;
|
|
@@ -14,5 +13,5 @@ interface PickerProps {
|
|
|
14
13
|
onEyeDropperToggle: (force?: boolean) => void;
|
|
15
14
|
onEscape: (event: React.KeyboardEvent | KeyboardEvent) => void;
|
|
16
15
|
}
|
|
17
|
-
export declare const Picker:
|
|
16
|
+
export declare const Picker: React.ForwardRefExoticComponent<PickerProps & React.RefAttributes<unknown>>;
|
|
18
17
|
export {};
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import type { ColorPaletteCustom } from "@excalidraw/common";
|
|
2
2
|
interface PickerColorListProps {
|
|
3
3
|
palette: ColorPaletteCustom;
|
|
4
|
-
color: string;
|
|
4
|
+
color: string | null;
|
|
5
5
|
onChange: (color: string) => void;
|
|
6
|
-
label: string;
|
|
7
6
|
activeShade: number;
|
|
8
7
|
}
|
|
9
|
-
declare const PickerColorList: ({ palette, color, onChange,
|
|
8
|
+
declare const PickerColorList: ({ palette, color, onChange, activeShade, }: PickerColorListProps) => import("react/jsx-runtime").JSX.Element;
|
|
10
9
|
export default PickerColorList;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { ColorPaletteCustom } from "@excalidraw/common";
|
|
2
2
|
interface ShadeListProps {
|
|
3
|
-
|
|
3
|
+
color: string | null;
|
|
4
4
|
onChange: (color: string) => void;
|
|
5
5
|
palette: ColorPaletteCustom;
|
|
6
6
|
}
|
|
7
|
-
export declare const ShadeList: ({
|
|
7
|
+
export declare const ShadeList: ({ color, onChange, palette }: ShadeListProps) => import("react/jsx-runtime").JSX.Element;
|
|
8
8
|
export {};
|
|
@@ -2,7 +2,7 @@ import type { ColorPickerType } from "./colorPickerUtils";
|
|
|
2
2
|
interface TopPicksProps {
|
|
3
3
|
onChange: (color: string) => void;
|
|
4
4
|
type: ColorPickerType;
|
|
5
|
-
activeColor: string;
|
|
5
|
+
activeColor: string | null;
|
|
6
6
|
topPicks?: readonly string[];
|
|
7
7
|
}
|
|
8
8
|
export declare const TopPicks: ({ onChange, type, activeColor, topPicks, }: TopPicksProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -2,7 +2,7 @@ import type { ExcalidrawElement } from "@excalidraw/element/types";
|
|
|
2
2
|
import type { ColorPickerColor, ColorPaletteCustom } from "@excalidraw/common";
|
|
3
3
|
export declare const getColorNameAndShadeFromColor: ({ palette, color, }: {
|
|
4
4
|
palette: ColorPaletteCustom;
|
|
5
|
-
color: string;
|
|
5
|
+
color: string | null;
|
|
6
6
|
}) => {
|
|
7
7
|
colorName: ColorPickerColor;
|
|
8
8
|
shade: number | null;
|
|
@@ -5,7 +5,7 @@ interface ColorPickerKeyNavHandlerProps {
|
|
|
5
5
|
event: React.KeyboardEvent;
|
|
6
6
|
activeColorPickerSection: ActiveColorPickerSectionAtomType;
|
|
7
7
|
palette: ColorPaletteCustom;
|
|
8
|
-
color: string;
|
|
8
|
+
color: string | null;
|
|
9
9
|
onChange: (color: string) => void;
|
|
10
10
|
customColors: string[];
|
|
11
11
|
setActiveColorPickerSection: (update: React.SetStateAction<ActiveColorPickerSectionAtomType>) => void;
|