@excalidraw/excalidraw 0.12.0-b00bd3d → 0.12.0-b477c2a
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/CHANGELOG.md +11 -850
- package/README.md +26 -12
- package/dist/excalidraw-assets/locales/bn-BD-json-906099d3f665de611389.js +1 -0
- package/dist/excalidraw-assets/locales/ca-ES-json-7f3f0a2c7f428fa60e01.js +1 -0
- package/dist/excalidraw-assets/locales/cs-CZ-json-304d08cac870aa0684ec.js +1 -0
- package/dist/excalidraw-assets/locales/el-GR-json-18ce48894d32ca4895b8.js +1 -0
- package/dist/excalidraw-assets/locales/es-ES-json-69a6c81b0e5dc370ea1a.js +1 -0
- package/dist/{excalidraw-assets-dev/locales/ja-JP-json-41b80357462192231c17.js → excalidraw-assets/locales/ja-JP-json-4c357f8206b88dc44840.js} +1 -22
- package/dist/excalidraw-assets/locales/ko-KR-json-8e7ae1bb19a7677a8190.js +1 -0
- package/dist/excalidraw-assets/locales/lt-LT-json-4147c3543dce75362050.js +1 -0
- package/dist/excalidraw-assets/locales/pt-BR-json-4ffa2f70c2863bca4f91.js +1 -0
- package/dist/excalidraw-assets/locales/pt-PT-json-4368eca89d2b2b3fb444.js +1 -0
- package/dist/excalidraw-assets/locales/vi-VN-json-929afcbc15b2c06a64f2.js +1 -0
- package/dist/excalidraw-assets/vendor-cb04f63875674d708080.js +2 -0
- package/dist/excalidraw-assets/{vendor-52b1f3361986b6c6a4fe.js.LICENSE.txt → vendor-cb04f63875674d708080.js.LICENSE.txt} +0 -0
- package/dist/excalidraw-assets-dev/locales/bn-BD-json-c3b027e18322cd5f67dd.js +22 -0
- package/dist/excalidraw-assets-dev/locales/ca-ES-json-465e286330127bad8841.js +22 -0
- package/dist/excalidraw-assets-dev/locales/cs-CZ-json-a9cc158d187424de71d7.js +22 -0
- package/dist/excalidraw-assets-dev/locales/el-GR-json-33bcaca5c1eb85d3d81a.js +22 -0
- package/dist/excalidraw-assets-dev/locales/es-ES-json-41e67e045d8f77e56a7a.js +22 -0
- package/dist/excalidraw-assets-dev/locales/ja-JP-json-77b3461742458e757b59.js +22 -0
- package/dist/excalidraw-assets-dev/locales/ko-KR-json-b6b0f0c8dc22ac7a3377.js +22 -0
- package/dist/excalidraw-assets-dev/locales/lt-LT-json-09b44716baf6aae6bf11.js +22 -0
- package/dist/excalidraw-assets-dev/locales/pt-BR-json-5abf09146a4f4387393d.js +22 -0
- package/dist/excalidraw-assets-dev/locales/pt-PT-json-c72abd8cf29d14347cf5.js +22 -0
- package/dist/excalidraw-assets-dev/locales/{bn-BD-json-02993b6dba9e7f115b53.js → vi-VN-json-03f122275dad01552357.js} +4 -4
- package/dist/excalidraw-assets-dev/{vendor-c0592035c3911af79359.js → vendor-e6df8519da951026ff69.js} +1 -1
- package/dist/excalidraw.development.js +77 -77
- package/dist/excalidraw.production.min.js +1 -1
- package/dist/excalidraw.production.min.js.LICENSE.txt +0 -9
- package/package.json +1 -1
- package/types/actions/actionAddToLibrary.d.ts +6 -3
- package/types/actions/actionBoundText.d.ts +2 -1
- package/types/actions/actionCanvas.d.ts +16 -8
- package/types/actions/actionClipboard.d.ts +12 -5
- package/types/actions/actionDeleteSelected.d.ts +8 -3
- package/types/actions/actionExport.d.ts +19 -10
- package/types/actions/actionFinalize.d.ts +4 -2
- package/types/actions/actionMenu.d.ts +6 -3
- package/types/actions/actionProperties.d.ts +26 -13
- package/types/actions/actionSelectAll.d.ts +1 -1
- package/types/actions/actionStyles.d.ts +2 -1
- package/types/actions/actionToggleGridMode.d.ts +2 -1
- package/types/actions/actionToggleLock.d.ts +99 -1
- package/types/actions/actionToggleStats.d.ts +2 -1
- package/types/actions/actionToggleViewMode.d.ts +2 -1
- package/types/actions/actionToggleZenMode.d.ts +2 -1
- package/types/appState.d.ts +2 -1
- package/types/components/Actions.d.ts +13 -2
- package/types/components/App.d.ts +5 -0
- package/types/components/BackgroundPickerAndDarkModeToggle.d.ts +1 -6
- package/types/components/Footer.d.ts +9 -0
- package/types/components/InitializeApp.d.ts +2 -0
- package/types/components/LayerUI.d.ts +1 -2
- package/types/components/LibraryMenu.d.ts +1 -2
- package/types/components/LoadingMessage.d.ts +2 -0
- package/types/components/MobileMenu.d.ts +3 -4
- package/types/components/Stats.d.ts +1 -1
- package/types/constants.d.ts +5 -0
- package/types/data/blob.d.ts +1 -1
- package/types/element/Hyperlink.d.ts +3 -3
- package/types/element/bounds.d.ts +1 -1
- package/types/element/index.d.ts +1 -1
- package/types/element/linearElementEditor.d.ts +41 -18
- package/types/element/newElement.d.ts +6 -1
- package/types/element/sizeHelpers.d.ts +4 -0
- package/types/element/textElement.d.ts +6 -2
- package/types/element/transformHandles.d.ts +5 -4
- package/types/element/types.d.ts +3 -2
- package/types/keys.d.ts +1 -1
- package/types/math.d.ts +8 -1
- package/types/packages/excalidraw/dist/excalidraw-assets/locales/{bn-BD-json-aa99c5a33f005fb00c6b.d.ts → bn-BD-json-906099d3f665de611389.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets/locales/{ca-ES-json-32cf66a0dfdbbafb6903.d.ts → ca-ES-json-7f3f0a2c7f428fa60e01.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets/locales/{cs-CZ-json-b22f93257c798fffdfd2.d.ts → cs-CZ-json-304d08cac870aa0684ec.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets/locales/{el-GR-json-74f57c0f8b11ac1b6dde.d.ts → el-GR-json-18ce48894d32ca4895b8.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets/locales/{es-ES-json-ffb4e65453db2f3058d4.d.ts → es-ES-json-69a6c81b0e5dc370ea1a.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets/locales/{ja-JP-json-c60a94f86d3ebe4ade50.d.ts → ja-JP-json-4c357f8206b88dc44840.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets/locales/{ko-KR-json-f27d159b2556809076aa.d.ts → ko-KR-json-8e7ae1bb19a7677a8190.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets/locales/{lt-LT-json-7277ad8dae6d3e6607b3.d.ts → lt-LT-json-4147c3543dce75362050.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets/locales/{pt-BR-json-686219f43cd76123b7fa.d.ts → pt-BR-json-4ffa2f70c2863bca4f91.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets/locales/{pt-PT-json-be4502ca3a1250845c39.d.ts → pt-PT-json-4368eca89d2b2b3fb444.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets/locales/{vi-VN-json-5c276b534d762658589c.d.ts → vi-VN-json-929afcbc15b2c06a64f2.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets/{vendor-52b1f3361986b6c6a4fe.d.ts → vendor-cb04f63875674d708080.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/{bn-BD-json-02993b6dba9e7f115b53.d.ts → bn-BD-json-c3b027e18322cd5f67dd.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/{ca-ES-json-7aabb5b31e7a995a90e3.d.ts → ca-ES-json-465e286330127bad8841.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/{cs-CZ-json-4119808eda084fb16f0d.d.ts → cs-CZ-json-a9cc158d187424de71d7.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/{el-GR-json-2bc44d5450554154e110.d.ts → el-GR-json-33bcaca5c1eb85d3d81a.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/{es-ES-json-9e5e962b234d2fa5aac2.d.ts → es-ES-json-41e67e045d8f77e56a7a.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/{ja-JP-json-41b80357462192231c17.d.ts → ja-JP-json-77b3461742458e757b59.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/{ko-KR-json-09de6762eea271167b56.d.ts → ko-KR-json-b6b0f0c8dc22ac7a3377.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/{lt-LT-json-a17971ff33b8929e96d3.d.ts → lt-LT-json-09b44716baf6aae6bf11.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/{pt-BR-json-5e4c8cd83b785ed859c2.d.ts → pt-BR-json-5abf09146a4f4387393d.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/{pt-PT-json-a7f89a1c6f1c380141e5.d.ts → pt-PT-json-c72abd8cf29d14347cf5.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets-dev/locales/{vi-VN-json-670ecb0ad40c0453bdfd.d.ts → vi-VN-json-03f122275dad01552357.d.ts} +0 -0
- package/types/packages/excalidraw/dist/excalidraw-assets-dev/{vendor-c0592035c3911af79359.d.ts → vendor-e6df8519da951026ff69.d.ts} +0 -0
- package/types/packages/utils.d.ts +4 -1
- package/types/points.d.ts +2 -1
- package/types/polyfill.d.ts +2 -0
- package/types/renderer/renderScene.d.ts +18 -2
- package/types/types.d.ts +2 -2
- package/dist/excalidraw-assets/locales/bn-BD-json-aa99c5a33f005fb00c6b.js +0 -1
- package/dist/excalidraw-assets/locales/ca-ES-json-32cf66a0dfdbbafb6903.js +0 -1
- package/dist/excalidraw-assets/locales/cs-CZ-json-b22f93257c798fffdfd2.js +0 -1
- package/dist/excalidraw-assets/locales/el-GR-json-74f57c0f8b11ac1b6dde.js +0 -1
- package/dist/excalidraw-assets/locales/es-ES-json-ffb4e65453db2f3058d4.js +0 -1
- package/dist/excalidraw-assets/locales/ja-JP-json-c60a94f86d3ebe4ade50.js +0 -1
- package/dist/excalidraw-assets/locales/ko-KR-json-f27d159b2556809076aa.js +0 -1
- package/dist/excalidraw-assets/locales/lt-LT-json-7277ad8dae6d3e6607b3.js +0 -1
- package/dist/excalidraw-assets/locales/pt-BR-json-686219f43cd76123b7fa.js +0 -1
- package/dist/excalidraw-assets/locales/pt-PT-json-be4502ca3a1250845c39.js +0 -1
- package/dist/excalidraw-assets/locales/vi-VN-json-5c276b534d762658589c.js +0 -1
- package/dist/excalidraw-assets/vendor-52b1f3361986b6c6a4fe.js +0 -2
- package/dist/excalidraw-assets-dev/locales/ca-ES-json-7aabb5b31e7a995a90e3.js +0 -22
- package/dist/excalidraw-assets-dev/locales/cs-CZ-json-4119808eda084fb16f0d.js +0 -22
- package/dist/excalidraw-assets-dev/locales/el-GR-json-2bc44d5450554154e110.js +0 -22
- package/dist/excalidraw-assets-dev/locales/es-ES-json-9e5e962b234d2fa5aac2.js +0 -22
- package/dist/excalidraw-assets-dev/locales/ko-KR-json-09de6762eea271167b56.js +0 -22
- package/dist/excalidraw-assets-dev/locales/lt-LT-json-a17971ff33b8929e96d3.js +0 -22
- package/dist/excalidraw-assets-dev/locales/pt-BR-json-5e4c8cd83b785ed859c2.js +0 -22
- package/dist/excalidraw-assets-dev/locales/pt-PT-json-a7f89a1c6f1c380141e5.js +0 -22
- package/dist/excalidraw-assets-dev/locales/vi-VN-json-670ecb0ad40c0453bdfd.js +0 -22
|
@@ -4,9 +4,8 @@ import { NonDeletedExcalidrawElement } from "./types";
|
|
|
4
4
|
import { Bounds } from "./bounds";
|
|
5
5
|
import "./Hyperlink.scss";
|
|
6
6
|
export declare const EXTERNAL_LINK_IMG: HTMLImageElement;
|
|
7
|
-
export declare const Hyperlink: ({ element,
|
|
7
|
+
export declare const Hyperlink: ({ element, setAppState, onLinkOpen, }: {
|
|
8
8
|
element: NonDeletedExcalidrawElement;
|
|
9
|
-
appState: AppState;
|
|
10
9
|
setAppState: React.Component<any, AppState>["setState"];
|
|
11
10
|
onLinkOpen: ExcalidrawProps["onLinkOpen"];
|
|
12
11
|
}) => JSX.Element | null;
|
|
@@ -56,7 +55,7 @@ export declare const actionLink: {
|
|
|
56
55
|
currentItemOpacity: number;
|
|
57
56
|
currentItemFontFamily: number;
|
|
58
57
|
currentItemFontSize: number;
|
|
59
|
-
currentItemTextAlign:
|
|
58
|
+
currentItemTextAlign: string;
|
|
60
59
|
currentItemStrokeSharpness: import("./types").StrokeSharpness;
|
|
61
60
|
currentItemStartArrowhead: import("./types").Arrowhead | null;
|
|
62
61
|
currentItemEndArrowhead: import("./types").Arrowhead | null;
|
|
@@ -113,6 +112,7 @@ export declare const actionLink: {
|
|
|
113
112
|
data: import("../charts").Spreadsheet;
|
|
114
113
|
};
|
|
115
114
|
pendingImageElementId: string | null;
|
|
115
|
+
selectedLinearElement: import("./linearElementEditor").LinearElementEditor | null;
|
|
116
116
|
};
|
|
117
117
|
commitToHistory: true;
|
|
118
118
|
};
|
|
@@ -8,7 +8,7 @@ export declare const getCurvePathOps: (shape: Drawable) => Op[];
|
|
|
8
8
|
export declare const getArrowheadPoints: (element: ExcalidrawLinearElement, shape: Drawable[], position: "start" | "end", arrowhead: Arrowhead) => number[] | null;
|
|
9
9
|
export declare const getElementBounds: (element: ExcalidrawElement) => [number, number, number, number];
|
|
10
10
|
export declare const getCommonBounds: (elements: readonly ExcalidrawElement[]) => [number, number, number, number];
|
|
11
|
-
export declare const getResizedElementAbsoluteCoords: (element: ExcalidrawElement, nextWidth: number, nextHeight: number) => [number, number, number, number];
|
|
11
|
+
export declare const getResizedElementAbsoluteCoords: (element: ExcalidrawElement, nextWidth: number, nextHeight: number, normalizePoints: boolean) => [number, number, number, number];
|
|
12
12
|
export declare const getElementPointsCoords: (element: ExcalidrawLinearElement, points: readonly (readonly [number, number])[], sharpness: ExcalidrawElement["strokeSharpness"]) => [number, number, number, number];
|
|
13
13
|
export declare const getClosestElementBounds: (elements: readonly ExcalidrawElement[], from: {
|
|
14
14
|
x: number;
|
package/types/element/index.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ export { dragSelectedElements, getDragOffsetXY, dragNewElement, } from "./dragEl
|
|
|
9
9
|
export { isTextElement, isExcalidrawElement } from "./typeChecks";
|
|
10
10
|
export { textWysiwyg } from "./textWysiwyg";
|
|
11
11
|
export { redrawTextBoundingBox } from "./textElement";
|
|
12
|
-
export { getPerfectElementSize, isInvisiblySmallElement, resizePerfectLineForNWHandler, getNormalizedDimensions, } from "./sizeHelpers";
|
|
12
|
+
export { getPerfectElementSize, getLockedLinearCursorAlignSize, isInvisiblySmallElement, resizePerfectLineForNWHandler, getNormalizedDimensions, } from "./sizeHelpers";
|
|
13
13
|
export { showSelectedShapeActions } from "./showSelectedShapeActions";
|
|
14
14
|
export declare const getSceneVersion: (elements: readonly ExcalidrawElement[]) => number;
|
|
15
15
|
export declare const getVisibleElements: (elements: readonly ExcalidrawElement[]) => readonly NonDeletedExcalidrawElement[];
|
|
@@ -3,26 +3,33 @@ import { NonDeleted, ExcalidrawLinearElement, ExcalidrawElement, PointBinding, E
|
|
|
3
3
|
import { Point, AppState } from "../types";
|
|
4
4
|
import History from "../history";
|
|
5
5
|
import Scene from "../scene/Scene";
|
|
6
|
+
declare const editorMidPointsCache: {
|
|
7
|
+
version: number | null;
|
|
8
|
+
points: (Point | null)[];
|
|
9
|
+
zoom: number | null;
|
|
10
|
+
};
|
|
6
11
|
export declare class LinearElementEditor {
|
|
7
|
-
elementId: ExcalidrawElement["id"] & {
|
|
12
|
+
readonly elementId: ExcalidrawElement["id"] & {
|
|
8
13
|
_brand: "excalidrawLinearElementId";
|
|
9
14
|
};
|
|
10
15
|
/** indices */
|
|
11
|
-
selectedPointsIndices: readonly number[] | null;
|
|
12
|
-
pointerDownState: Readonly<{
|
|
16
|
+
readonly selectedPointsIndices: readonly number[] | null;
|
|
17
|
+
readonly pointerDownState: Readonly<{
|
|
13
18
|
prevSelectedPointsIndices: readonly number[] | null;
|
|
14
19
|
/** index */
|
|
15
20
|
lastClickedPoint: number;
|
|
16
21
|
}>;
|
|
17
22
|
/** whether you're dragging a point */
|
|
18
|
-
isDragging: boolean;
|
|
19
|
-
lastUncommittedPoint: Point | null;
|
|
20
|
-
pointerOffset: Readonly<{
|
|
23
|
+
readonly isDragging: boolean;
|
|
24
|
+
readonly lastUncommittedPoint: Point | null;
|
|
25
|
+
readonly pointerOffset: Readonly<{
|
|
21
26
|
x: number;
|
|
22
27
|
y: number;
|
|
23
28
|
}>;
|
|
24
|
-
startBindingElement: ExcalidrawBindableElement | null | "keep";
|
|
25
|
-
endBindingElement: ExcalidrawBindableElement | null | "keep";
|
|
29
|
+
readonly startBindingElement: ExcalidrawBindableElement | null | "keep";
|
|
30
|
+
readonly endBindingElement: ExcalidrawBindableElement | null | "keep";
|
|
31
|
+
readonly hoverPointIndex: number;
|
|
32
|
+
readonly segmentMidPointHoveredCoords: Point | null;
|
|
26
33
|
constructor(element: NonDeleted<ExcalidrawLinearElement>, scene: Scene);
|
|
27
34
|
static POINT_HANDLE_SIZE: number;
|
|
28
35
|
/**
|
|
@@ -32,23 +39,35 @@ export declare class LinearElementEditor {
|
|
|
32
39
|
static getElement(id: InstanceType<typeof LinearElementEditor>["elementId"]): NonDeleted<ExcalidrawLinearElement> | null;
|
|
33
40
|
static handleBoxSelection(event: PointerEvent, appState: AppState, setState: React.Component<any, AppState>["setState"]): false | undefined;
|
|
34
41
|
/** @returns whether point was dragged */
|
|
35
|
-
static handlePointDragging(
|
|
42
|
+
static handlePointDragging(event: PointerEvent, appState: AppState, scenePointerX: number, scenePointerY: number, maybeSuggestBinding: (element: NonDeleted<ExcalidrawLinearElement>, pointSceneCoords: {
|
|
36
43
|
x: number;
|
|
37
44
|
y: number;
|
|
38
|
-
}[]) => void): boolean;
|
|
45
|
+
}[]) => void, linearElementEditor: LinearElementEditor): boolean;
|
|
39
46
|
static handlePointerUp(event: PointerEvent, editingLinearElement: LinearElementEditor, appState: AppState): LinearElementEditor;
|
|
40
|
-
static
|
|
47
|
+
static getEditorMidPoints: (element: NonDeleted<ExcalidrawLinearElement>, appState: AppState) => (typeof editorMidPointsCache)["points"];
|
|
48
|
+
static updateEditorMidPointsCache: (element: NonDeleted<ExcalidrawLinearElement>, appState: AppState) => void;
|
|
49
|
+
static getSegmentMidpointHitCoords: (linearElementEditor: LinearElementEditor, scenePointer: {
|
|
41
50
|
x: number;
|
|
42
51
|
y: number;
|
|
43
|
-
}
|
|
52
|
+
}, appState: AppState) => readonly [number, number] | null;
|
|
53
|
+
static isSegmentTooShort(element: NonDeleted<ExcalidrawLinearElement>, startPoint: Point, endPoint: Point, zoom: AppState["zoom"]): boolean;
|
|
54
|
+
static getSegmentMidPoint(element: NonDeleted<ExcalidrawLinearElement>, startPoint: Point, endPoint: Point, endPointIndex: number): readonly [number, number];
|
|
55
|
+
static getSegmentMidPointIndex(linearElementEditor: LinearElementEditor, appState: AppState, midPoint: Point): number;
|
|
56
|
+
static handlePointerDown(event: React.PointerEvent<HTMLCanvasElement>, appState: AppState, history: History, scenePointer: {
|
|
57
|
+
x: number;
|
|
58
|
+
y: number;
|
|
59
|
+
}, linearElementEditor: LinearElementEditor): {
|
|
44
60
|
didAddPoint: boolean;
|
|
45
61
|
hitElement: NonDeleted<ExcalidrawElement> | null;
|
|
62
|
+
linearElementEditor: LinearElementEditor | null;
|
|
63
|
+
isMidPoint: boolean;
|
|
46
64
|
};
|
|
47
|
-
static
|
|
65
|
+
static arePointsEqual(point1: Point | null, point2: Point | null): boolean;
|
|
66
|
+
static handlePointerMove(event: React.PointerEvent<HTMLCanvasElement>, scenePointerX: number, scenePointerY: number, appState: AppState): LinearElementEditor | null;
|
|
48
67
|
/** scene coords */
|
|
49
68
|
static getPointGlobalCoordinates(element: NonDeleted<ExcalidrawLinearElement>, point: Point): readonly [number, number];
|
|
50
69
|
/** scene coords */
|
|
51
|
-
static getPointsGlobalCoordinates(element: NonDeleted<ExcalidrawLinearElement>):
|
|
70
|
+
static getPointsGlobalCoordinates(element: NonDeleted<ExcalidrawLinearElement>): Point[];
|
|
52
71
|
static getPointAtIndexGlobalCoordinates(element: NonDeleted<ExcalidrawLinearElement>, indexMaybeFromEnd: number): Point;
|
|
53
72
|
static pointFromAbsoluteCoords(element: NonDeleted<ExcalidrawLinearElement>, absoluteCoords: Point): Point;
|
|
54
73
|
static getPointIndexUnderCursor(element: NonDeleted<ExcalidrawLinearElement>, zoom: AppState["zoom"], x: number, y: number): number;
|
|
@@ -76,7 +95,6 @@ export declare class LinearElementEditor {
|
|
|
76
95
|
/** index */
|
|
77
96
|
lastClickedPoint: number;
|
|
78
97
|
}>;
|
|
79
|
-
/** whether you're dragging a point */
|
|
80
98
|
isDragging: boolean;
|
|
81
99
|
lastUncommittedPoint: readonly [number, number] | null;
|
|
82
100
|
pointerOffset: Readonly<{
|
|
@@ -85,6 +103,8 @@ export declare class LinearElementEditor {
|
|
|
85
103
|
}>;
|
|
86
104
|
startBindingElement: ExcalidrawBindableElement | "keep" | null;
|
|
87
105
|
endBindingElement: ExcalidrawBindableElement | "keep" | null;
|
|
106
|
+
hoverPointIndex: number;
|
|
107
|
+
segmentMidPointHoveredCoords: readonly [number, number] | null;
|
|
88
108
|
};
|
|
89
109
|
isLoading: boolean;
|
|
90
110
|
errorMessage: string | null;
|
|
@@ -122,7 +142,7 @@ export declare class LinearElementEditor {
|
|
|
122
142
|
currentItemOpacity: number;
|
|
123
143
|
currentItemFontFamily: number;
|
|
124
144
|
currentItemFontSize: number;
|
|
125
|
-
currentItemTextAlign:
|
|
145
|
+
currentItemTextAlign: string;
|
|
126
146
|
currentItemStrokeSharpness: import("./types").StrokeSharpness;
|
|
127
147
|
currentItemStartArrowhead: import("./types").Arrowhead | null;
|
|
128
148
|
currentItemEndArrowhead: import("./types").Arrowhead | null;
|
|
@@ -150,7 +170,7 @@ export declare class LinearElementEditor {
|
|
|
150
170
|
shouldCacheIgnoreZoom: boolean;
|
|
151
171
|
showHelpDialog: boolean;
|
|
152
172
|
toast: {
|
|
153
|
-
message: string;
|
|
173
|
+
message: string; /** @returns whether point was dragged */
|
|
154
174
|
closable?: boolean | undefined;
|
|
155
175
|
duration?: number | undefined;
|
|
156
176
|
} | null;
|
|
@@ -181,10 +201,11 @@ export declare class LinearElementEditor {
|
|
|
181
201
|
};
|
|
182
202
|
pendingImageElementId: string | null;
|
|
183
203
|
showHyperlinkPopup: false | "info" | "editor";
|
|
204
|
+
selectedLinearElement: LinearElementEditor | null;
|
|
184
205
|
};
|
|
185
206
|
};
|
|
186
207
|
static deletePoints(element: NonDeleted<ExcalidrawLinearElement>, pointIndices: readonly number[]): void;
|
|
187
|
-
static addPoints(element: NonDeleted<ExcalidrawLinearElement>, targetPoints: {
|
|
208
|
+
static addPoints(element: NonDeleted<ExcalidrawLinearElement>, appState: AppState, targetPoints: {
|
|
188
209
|
point: Point;
|
|
189
210
|
}[]): void;
|
|
190
211
|
static movePoints(element: NonDeleted<ExcalidrawLinearElement>, targetPoints: {
|
|
@@ -196,4 +217,6 @@ export declare class LinearElementEditor {
|
|
|
196
217
|
endBinding?: PointBinding;
|
|
197
218
|
}): void;
|
|
198
219
|
private static _updatePoints;
|
|
220
|
+
private static _getShiftLockedDelta;
|
|
199
221
|
}
|
|
222
|
+
export {};
|
|
@@ -12,7 +12,9 @@ export declare const newTextElement: (opts: {
|
|
|
12
12
|
verticalAlign: VerticalAlign;
|
|
13
13
|
containerId?: ExcalidrawRectangleElement["id"];
|
|
14
14
|
} & ElementConstructorOpts) => NonDeleted<ExcalidrawTextElement>;
|
|
15
|
-
export declare const
|
|
15
|
+
export declare const getMaxContainerWidth: (container: ExcalidrawElement) => number;
|
|
16
|
+
export declare const getMaxContainerHeight: (container: ExcalidrawElement) => number;
|
|
17
|
+
export declare const updateTextElement: (textElement: ExcalidrawTextElement, { text, isDeleted, originalText, }: {
|
|
16
18
|
text: string;
|
|
17
19
|
isDeleted?: boolean | undefined;
|
|
18
20
|
originalText: string;
|
|
@@ -30,6 +32,9 @@ export declare const newLinearElement: (opts: {
|
|
|
30
32
|
} & ElementConstructorOpts) => NonDeleted<ExcalidrawLinearElement>;
|
|
31
33
|
export declare const newImageElement: (opts: {
|
|
32
34
|
type: ExcalidrawImageElement["type"];
|
|
35
|
+
status?: ExcalidrawImageElement["status"];
|
|
36
|
+
fileId?: ExcalidrawImageElement["fileId"];
|
|
37
|
+
scale?: ExcalidrawImageElement["scale"];
|
|
33
38
|
} & ElementConstructorOpts) => NonDeleted<ExcalidrawImageElement>;
|
|
34
39
|
export declare const deepCopyElement: (val: any, depth?: number) => any;
|
|
35
40
|
/**
|
|
@@ -8,6 +8,10 @@ export declare const getPerfectElementSize: (elementType: AppState["activeTool"]
|
|
|
8
8
|
width: number;
|
|
9
9
|
height: number;
|
|
10
10
|
};
|
|
11
|
+
export declare const getLockedLinearCursorAlignSize: (originX: number, originY: number, x: number, y: number) => {
|
|
12
|
+
width: number;
|
|
13
|
+
height: number;
|
|
14
|
+
};
|
|
11
15
|
export declare const resizePerfectLineForNWHandler: (element: ExcalidrawElement, x: number, y: number) => void;
|
|
12
16
|
export declare const getNormalizedDimensions: (element: Pick<ExcalidrawElement, "width" | "height" | "x" | "y">) => {
|
|
13
17
|
width: ExcalidrawElement["width"];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ExcalidrawElement, ExcalidrawTextElement, ExcalidrawTextElementWithContainer, FontString, NonDeletedExcalidrawElement } from "./types";
|
|
2
2
|
import { MaybeTransformHandleType } from "./transformHandles";
|
|
3
|
-
export declare const redrawTextBoundingBox: (
|
|
3
|
+
export declare const redrawTextBoundingBox: (textElement: ExcalidrawTextElement, container: ExcalidrawElement | null) => void;
|
|
4
4
|
export declare const bindTextToShapeAfterDuplication: (sceneElements: ExcalidrawElement[], oldElements: ExcalidrawElement[], oldIdToDuplicatedId: Map<ExcalidrawElement["id"], ExcalidrawElement["id"]>) => void;
|
|
5
5
|
export declare const handleBindTextResize: (element: NonDeletedExcalidrawElement, transformHandleType: MaybeTransformHandleType) => void;
|
|
6
6
|
export declare const measureText: (text: string, font: FontString, maxWidth?: number | null) => {
|
|
@@ -9,7 +9,7 @@ export declare const measureText: (text: string, font: FontString, maxWidth?: nu
|
|
|
9
9
|
baseline: number;
|
|
10
10
|
};
|
|
11
11
|
export declare const getApproxLineHeight: (font: FontString) => number;
|
|
12
|
-
export declare const wrapText: (text: string, font: FontString,
|
|
12
|
+
export declare const wrapText: (text: string, font: FontString, maxWidth: number) => string;
|
|
13
13
|
export declare const charWidth: {
|
|
14
14
|
calculate: (char: string, font: FontString) => number;
|
|
15
15
|
getCache: (font: FontString) => number[];
|
|
@@ -24,3 +24,7 @@ export declare const getBoundTextElement: (element: ExcalidrawElement | null) =>
|
|
|
24
24
|
export declare const getContainerElement: (element: (ExcalidrawElement & {
|
|
25
25
|
containerId: ExcalidrawElement["id"] | null;
|
|
26
26
|
}) | null) => ExcalidrawElement | null;
|
|
27
|
+
export declare const getContainerDims: (element: ExcalidrawElement) => {
|
|
28
|
+
width: number;
|
|
29
|
+
height: number;
|
|
30
|
+
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ExcalidrawElement, PointerType } from "./types";
|
|
1
|
+
import { ExcalidrawElement, NonDeletedExcalidrawElement, PointerType } from "./types";
|
|
2
2
|
import { Bounds } from "./bounds";
|
|
3
|
-
import { Zoom } from "../types";
|
|
3
|
+
import { AppState, Zoom } from "../types";
|
|
4
4
|
export declare type TransformHandleDirection = "n" | "s" | "w" | "e" | "nw" | "ne" | "sw" | "se";
|
|
5
5
|
export declare type TransformHandleType = TransformHandleDirection | "rotation";
|
|
6
6
|
export declare type TransformHandle = [number, number, number, number];
|
|
@@ -17,12 +17,13 @@ export declare const OMIT_SIDES_FOR_MULTIPLE_ELEMENTS: {
|
|
|
17
17
|
export declare const getTransformHandlesFromCoords: ([x1, y1, x2, y2]: Bounds, angle: number, zoom: Zoom, pointerType: PointerType, omitSides?: {
|
|
18
18
|
e?: boolean | undefined;
|
|
19
19
|
s?: boolean | undefined;
|
|
20
|
-
n?: boolean | undefined;
|
|
21
20
|
w?: boolean | undefined;
|
|
21
|
+
n?: boolean | undefined;
|
|
22
22
|
nw?: boolean | undefined;
|
|
23
23
|
ne?: boolean | undefined;
|
|
24
24
|
sw?: boolean | undefined;
|
|
25
25
|
se?: boolean | undefined;
|
|
26
26
|
rotation?: boolean | undefined;
|
|
27
|
-
}) => TransformHandles;
|
|
27
|
+
}, margin?: number) => TransformHandles;
|
|
28
28
|
export declare const getTransformHandles: (element: ExcalidrawElement, zoom: Zoom, pointerType?: PointerType) => TransformHandles;
|
|
29
|
+
export declare const shouldShowBoundingBox: (elements: NonDeletedExcalidrawElement[], appState: AppState) => boolean;
|
package/types/element/types.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Point } from "../types";
|
|
2
|
-
import { FONT_FAMILY, THEME, VERTICAL_ALIGN } from "../constants";
|
|
2
|
+
import { FONT_FAMILY, TEXT_ALIGN, THEME, VERTICAL_ALIGN } from "../constants";
|
|
3
3
|
export declare type ChartType = "bar" | "line";
|
|
4
4
|
export declare type FillStyle = "hachure" | "cross-hatch" | "solid";
|
|
5
5
|
export declare type FontFamilyKeys = keyof typeof FONT_FAMILY;
|
|
@@ -12,7 +12,7 @@ export declare type GroupId = string;
|
|
|
12
12
|
export declare type PointerType = "mouse" | "pen" | "touch";
|
|
13
13
|
export declare type StrokeSharpness = "round" | "sharp";
|
|
14
14
|
export declare type StrokeStyle = "solid" | "dashed" | "dotted";
|
|
15
|
-
export declare type TextAlign =
|
|
15
|
+
export declare type TextAlign = typeof TEXT_ALIGN[keyof typeof TEXT_ALIGN];
|
|
16
16
|
declare type VerticalAlignKeys = keyof typeof VERTICAL_ALIGN;
|
|
17
17
|
export declare type VerticalAlign = typeof VERTICAL_ALIGN[VerticalAlignKeys];
|
|
18
18
|
declare type _ExcalidrawElementBase = Readonly<{
|
|
@@ -53,6 +53,7 @@ declare type _ExcalidrawElementBase = Readonly<{
|
|
|
53
53
|
updated: number;
|
|
54
54
|
link: string | null;
|
|
55
55
|
locked: boolean;
|
|
56
|
+
customData?: Record<string, any>;
|
|
56
57
|
}>;
|
|
57
58
|
export declare type ExcalidrawSelectionElement = _ExcalidrawElementBase & {
|
|
58
59
|
type: "selection";
|
package/types/keys.d.ts
CHANGED
|
@@ -65,4 +65,4 @@ export declare type Key = keyof typeof KEYS;
|
|
|
65
65
|
export declare const isArrowKey: (key: string) => boolean;
|
|
66
66
|
export declare const shouldResizeFromCenter: (event: MouseEvent | KeyboardEvent) => boolean;
|
|
67
67
|
export declare const shouldMaintainAspectRatio: (event: MouseEvent | KeyboardEvent) => boolean;
|
|
68
|
-
export declare const shouldRotateWithDiscreteAngle: (event: MouseEvent | KeyboardEvent) => boolean;
|
|
68
|
+
export declare const shouldRotateWithDiscreteAngle: (event: MouseEvent | KeyboardEvent | React.PointerEvent<HTMLCanvasElement>) => boolean;
|
package/types/math.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Point, Zoom } from "./types";
|
|
2
|
-
import { ExcalidrawLinearElement } from "./element/types";
|
|
2
|
+
import { ExcalidrawLinearElement, NonDeleted } from "./element/types";
|
|
3
3
|
export declare const rotate: (x1: number, y1: number, x2: number, y2: number, angle: number) => [number, number];
|
|
4
4
|
export declare const rotatePoint: (point: readonly [number, number], center: readonly [number, number], angle: number) => [number, number];
|
|
5
5
|
export declare const adjustXYWithRotation: (sides: {
|
|
@@ -18,3 +18,10 @@ export declare const centerPoint: (a: readonly [number, number], b: readonly [nu
|
|
|
18
18
|
export declare const isPathALoop: (points: ExcalidrawLinearElement["points"], zoomValue?: Zoom["value"]) => boolean;
|
|
19
19
|
export declare const isPointInPolygon: (points: Point[], x: number, y: number) => boolean;
|
|
20
20
|
export declare const getGridPoint: (x: number, y: number, gridSize: number | null) => [number, number];
|
|
21
|
+
export declare const getControlPointsForBezierCurve: (element: NonDeleted<ExcalidrawLinearElement>, endPoint: readonly [number, number]) => [number, number][] | null;
|
|
22
|
+
export declare const getBezierXY: (p0: readonly [number, number], p1: readonly [number, number], p2: readonly [number, number], p3: readonly [number, number], t: number) => number[];
|
|
23
|
+
export declare const getPointsInBezierCurve: (element: NonDeleted<ExcalidrawLinearElement>, endPoint: readonly [number, number]) => [number, number][];
|
|
24
|
+
export declare const getBezierCurveArcLengths: (element: NonDeleted<ExcalidrawLinearElement>, endPoint: readonly [number, number]) => number[];
|
|
25
|
+
export declare const getBezierCurveLength: (element: NonDeleted<ExcalidrawLinearElement>, endPoint: readonly [number, number]) => number;
|
|
26
|
+
export declare const mapIntervalToBezierT: (element: NonDeleted<ExcalidrawLinearElement>, endPoint: readonly [number, number], interval: number) => number;
|
|
27
|
+
export declare const arePointsEqual: (p1: readonly [number, number], p2: readonly [number, number]) => boolean;
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -13,10 +13,13 @@ declare type ExportOpts = {
|
|
|
13
13
|
scale?: number;
|
|
14
14
|
};
|
|
15
15
|
};
|
|
16
|
-
export declare const exportToCanvas: ({ elements, appState, files, maxWidthOrHeight, getDimensions, }: ExportOpts
|
|
16
|
+
export declare const exportToCanvas: ({ elements, appState, files, maxWidthOrHeight, getDimensions, exportPadding, }: ExportOpts & {
|
|
17
|
+
exportPadding?: number | undefined;
|
|
18
|
+
}) => Promise<HTMLCanvasElement>;
|
|
17
19
|
export declare const exportToBlob: (opts: ExportOpts & {
|
|
18
20
|
mimeType?: string;
|
|
19
21
|
quality?: number;
|
|
22
|
+
exportPadding?: number;
|
|
20
23
|
}) => Promise<Blob>;
|
|
21
24
|
export declare const exportToSvg: ({ elements, appState, files, exportPadding, }: Omit<ExportOpts, "getDimensions"> & {
|
|
22
25
|
exportPadding?: number | undefined;
|
package/types/points.d.ts
CHANGED
|
@@ -3,4 +3,5 @@ export declare const getSizeFromPoints: (points: readonly Point[]) => {
|
|
|
3
3
|
width: number;
|
|
4
4
|
height: number;
|
|
5
5
|
};
|
|
6
|
-
|
|
6
|
+
/** @arg dimension, 0 for rescaling only x, 1 for y */
|
|
7
|
+
export declare const rescalePoints: (dimension: 0 | 1, newSize: number, points: readonly Point[], normalize: boolean) => Point[];
|
|
@@ -3,7 +3,15 @@ import { RoughSVG } from "roughjs/bin/svg";
|
|
|
3
3
|
import { AppState, BinaryFiles } from "../types";
|
|
4
4
|
import { NonDeletedExcalidrawElement } from "../element/types";
|
|
5
5
|
import { RenderConfig } from "../scene/types";
|
|
6
|
-
export declare const
|
|
6
|
+
export declare const DEFAULT_SPACING = 4;
|
|
7
|
+
export declare const _renderScene: ({ elements, appState, scale, rc, canvas, renderConfig, }: {
|
|
8
|
+
elements: readonly NonDeletedExcalidrawElement[];
|
|
9
|
+
appState: AppState;
|
|
10
|
+
scale: number;
|
|
11
|
+
rc: RoughCanvas;
|
|
12
|
+
canvas: HTMLCanvasElement;
|
|
13
|
+
renderConfig: RenderConfig;
|
|
14
|
+
}) => {
|
|
7
15
|
atLeastOneVisibleElement: boolean;
|
|
8
16
|
scrollBars?: undefined;
|
|
9
17
|
} | {
|
|
@@ -11,7 +19,15 @@ export declare const _renderScene: (elements: readonly NonDeletedExcalidrawEleme
|
|
|
11
19
|
scrollBars: import("../scene/types").ScrollBars | undefined;
|
|
12
20
|
};
|
|
13
21
|
/** renderScene throttled to animation framerate */
|
|
14
|
-
export declare const renderScene: <T extends boolean = false>(
|
|
22
|
+
export declare const renderScene: <T extends boolean = false>(config: {
|
|
23
|
+
elements: readonly NonDeletedExcalidrawElement[];
|
|
24
|
+
appState: AppState;
|
|
25
|
+
scale: number;
|
|
26
|
+
rc: RoughCanvas;
|
|
27
|
+
canvas: HTMLCanvasElement;
|
|
28
|
+
renderConfig: RenderConfig;
|
|
29
|
+
callback?: ((data: ReturnType<typeof _renderScene>) => void) | undefined;
|
|
30
|
+
}, throttle?: T | undefined) => T extends true ? void : {
|
|
15
31
|
atLeastOneVisibleElement: boolean;
|
|
16
32
|
scrollBars?: undefined;
|
|
17
33
|
} | {
|
package/types/types.d.ts
CHANGED
|
@@ -149,6 +149,7 @@ export declare type AppState = {
|
|
|
149
149
|
/** imageElement waiting to be placed on canvas */
|
|
150
150
|
pendingImageElementId: ExcalidrawImageElement["id"] | null;
|
|
151
151
|
showHyperlinkPopup: false | "info" | "editor";
|
|
152
|
+
selectedLinearElement: LinearElementEditor | null;
|
|
152
153
|
};
|
|
153
154
|
export declare type NormalizedZoomValue = number & {
|
|
154
155
|
_brand: "normalizedZoom";
|
|
@@ -259,7 +260,7 @@ declare type CanvasActions = {
|
|
|
259
260
|
export?: false | ExportOpts;
|
|
260
261
|
loadScene?: boolean;
|
|
261
262
|
saveToActiveFile?: boolean;
|
|
262
|
-
|
|
263
|
+
toggleTheme?: boolean | null;
|
|
263
264
|
saveAsImage?: boolean;
|
|
264
265
|
};
|
|
265
266
|
export declare type AppProps = Merge<ExcalidrawProps, {
|
|
@@ -322,7 +323,6 @@ export declare type PointerDownState = Readonly<{
|
|
|
322
323
|
wasAddedToSelection: boolean;
|
|
323
324
|
hasBeenDuplicated: boolean;
|
|
324
325
|
hasHitCommonBoundingBoxOfSelectedElements: boolean;
|
|
325
|
-
hasHitElementInside: boolean;
|
|
326
326
|
};
|
|
327
327
|
withCmdOrCtrl: boolean;
|
|
328
328
|
drag: {
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkExcalidrawLib=self.webpackChunkExcalidrawLib||[]).push([[429],{8525:function(e){e.exports=JSON.parse('{"labels":{"paste":"","pasteCharts":"","selectAll":"","multiSelect":"","moveCanvas":"","cut":"","copy":"","copyAsPng":"","copyAsSvg":"","copyText":"","bringForward":"","sendToBack":"","bringToFront":"","sendBackward":"","delete":"","copyStyles":"","pasteStyles":"","stroke":"","background":"","fill":"","strokeWidth":"","strokeStyle":"","strokeStyle_solid":"","strokeStyle_dashed":"","strokeStyle_dotted":"","sloppiness":"","opacity":"","textAlign":"","edges":"","sharp":"","round":"","arrowheads":"","arrowhead_none":"","arrowhead_arrow":"","arrowhead_bar":"","arrowhead_dot":"","arrowhead_triangle":"","fontSize":"","fontFamily":"","onlySelected":"","withBackground":"","exportEmbedScene":"","exportEmbedScene_details":"","addWatermark":"","handDrawn":"","normal":"","code":"","small":"","medium":"","large":"","veryLarge":"","solid":"","hachure":"","crossHatch":"","thin":"","bold":"","left":"","center":"","right":"","extraBold":"","architect":"","artist":"","cartoonist":"","fileTitle":"","colorPicker":"","canvasColors":"","canvasBackground":"","drawingCanvas":"","layers":"","actions":"","language":"","liveCollaboration":"","duplicateSelection":"","untitled":"","name":"","yourName":"","madeWithExcalidraw":"","group":"","ungroup":"","collaborators":"","showGrid":"","addToLibrary":"","removeFromLibrary":"","libraryLoadingMessage":"","libraries":"","loadingScene":"","align":"","alignTop":"","alignBottom":"","alignLeft":"","alignRight":"","centerVertically":"","centerHorizontally":"","distributeHorizontally":"","distributeVertically":"","flipHorizontal":"","flipVertical":"","viewMode":"","toggleExportColorScheme":"","share":"","showStroke":"","showBackground":"","toggleTheme":"","personalLib":"","excalidrawLib":"","decreaseFontSize":"","increaseFontSize":"","unbindText":"","bindText":"","link":{"edit":"","create":"","label":""},"elementLock":{"lock":"","unlock":"","lockAll":"","unlockAll":""},"statusPublished":"","sidebarLock":""},"library":{"noItems":"","hint_emptyLibrary":"","hint_emptyPrivateLibrary":""},"buttons":{"clearReset":"","exportJSON":"","exportImage":"","export":"","exportToPng":"","exportToSvg":"","copyToClipboard":"","copyPngToClipboard":"","scale":"","save":"","saveAs":"","load":"","getShareableLink":"","close":"","selectLanguage":"","scrollBackToContent":"","zoomIn":"","zoomOut":"","resetZoom":"","menu":"","done":"","edit":"","undo":"","redo":"","resetLibrary":"","createNewRoom":"","fullScreen":"","darkMode":"","lightMode":"","zenMode":"","exitZenMode":"","cancel":"","clear":"","remove":"","publishLibrary":"","submit":"","confirm":""},"alerts":{"clearReset":"","couldNotCreateShareableLink":"","couldNotCreateShareableLinkTooBig":"","couldNotLoadInvalidFile":"","importBackendFailed":"","cannotExportEmptyCanvas":"","couldNotCopyToClipboard":"","decryptFailed":"","uploadedSecurly":"","loadSceneOverridePrompt":"","collabStopOverridePrompt":"","errorAddingToLibrary":"","errorRemovingFromLibrary":"","confirmAddLibrary":"","imageDoesNotContainScene":"","cannotRestoreFromImage":"","invalidSceneUrl":"","resetLibrary":"","removeItemsFromsLibrary":"","invalidEncryptionKey":""},"errors":{"unsupportedFileType":"","imageInsertError":"","fileTooBig":"","svgImageInsertError":"","invalidSVGString":"","cannotResolveCollabServer":"","importLibraryError":""},"toolBar":{"selection":"","image":"","rectangle":"","diamond":"","ellipse":"","arrow":"","line":"","freedraw":"","text":"","library":"","lock":"","penMode":"","link":"","eraser":""},"headings":{"canvasActions":"","selectedShapeActions":"","shapes":""},"hints":{"canvasPanning":"","linearElement":"","freeDraw":"","text":"","text_selected":"","text_editing":"","linearElementMulti":"","lockAngle":"","resize":"","resizeImage":"","rotate":"","lineEditor_info":"","lineEditor_pointSelected":"","lineEditor_nothingSelected":"","placeImage":"","publishLibrary":"","bindTextToElement":"","deepBoxSelect":"","eraserRevert":""},"canvasError":{"cannotShowPreview":"","canvasTooBig":"","canvasTooBigTip":""},"errorSplash":{"headingMain_pre":"","headingMain_button":"","clearCanvasMessage":"","clearCanvasMessage_button":"","clearCanvasCaveat":"","trackedToSentry_pre":"","trackedToSentry_post":"","openIssueMessage_pre":"","openIssueMessage_button":"","openIssueMessage_post":"","sceneContent":""},"roomDialog":{"desc_intro":"","desc_privacy":"","button_startSession":"","button_stopSession":"","desc_inProgressIntro":"","desc_shareLink":"","desc_exitSession":"","shareTitle":""},"errorDialog":{"title":""},"exportDialog":{"disk_title":"","disk_details":"","disk_button":"","link_title":"","link_details":"","link_button":"","excalidrawplus_description":"","excalidrawplus_button":"","excalidrawplus_exportError":""},"helpDialog":{"blog":"","click":"","deepSelect":"","deepBoxSelect":"","curvedArrow":"","curvedLine":"","documentation":"","doubleClick":"","drag":"","editor":"","editSelectedShape":"","github":"","howto":"","or":"","preventBinding":"","tools":"","shortcuts":"","textFinish":"","textNewLine":"","title":"","view":"","zoomToFit":"","zoomToSelection":"","toggleElementLock":""},"clearCanvasDialog":{"title":""},"publishDialog":{"title":"","itemName":"","authorName":"","githubUsername":"","twitterUsername":"","libraryName":"","libraryDesc":"","website":"","placeholder":{"authorName":"","libraryName":"","libraryDesc":"","githubHandle":"","twitterHandle":"","website":""},"errors":{"required":"","website":""},"noteDescription":{"pre":"","link":"","post":""},"noteGuidelines":{"pre":"","link":"","post":""},"noteLicense":{"pre":"","link":"","post":""},"noteItems":"","atleastOneLibItem":"","republishWarning":""},"publishSuccessDialog":{"title":"","content":"","link":""},"confirmDialog":{"resetLibrary":"","removeItemsFromLib":""},"encrypted":{"tooltip":"","link":""},"stats":{"angle":"","element":"","elements":"","height":"","scene":"","selected":"","storage":"","title":"","total":"","version":"","versionCopy":"","versionNotAvailable":"","width":""},"toast":{"addedToLibrary":"","copyStyles":"","copyToClipboard":"","copyToClipboardAsPng":"","fileSaved":"","fileSavedToFilename":"","canvas":"","selection":""},"colors":{"495057":"","ffffff":"","f8f9fa":"","f1f3f5":"","fff5f5":"","fff0f6":"","f8f0fc":"","f3f0ff":"","edf2ff":"","e7f5ff":"","e3fafc":"","e6fcf5":"","ebfbee":"","f4fce3":"","fff9db":"","fff4e6":"","transparent":"","ced4da":"","868e96":"","fa5252":"","e64980":"","be4bdb":"","7950f2":"","4c6ef5":"","228be6":"","15aabf":"","12b886":"","40c057":"","82c91e":"","fab005":"","fd7e14":"","000000":"","343a40":"","c92a2a":"","a61e4d":"","862e9c":"","5f3dc4":"","364fc7":"","1864ab":"","0b7285":"","087f5b":"","2b8a3e":"","5c940d":"","e67700":"","d9480f":""}}')}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkExcalidrawLib=self.webpackChunkExcalidrawLib||[]).push([[130],{510:function(e){e.exports=JSON.parse('{"labels":{"paste":"Enganxa","pasteCharts":"Enganxa els diagrames","selectAll":"Selecciona-ho tot","multiSelect":"Afegeix un element a la selecció","moveCanvas":"Mou el llenç","cut":"Retalla","copy":"Copia","copyAsPng":"Copia al porta-retalls com a PNG","copyAsSvg":"Copia al porta-retalls com a SVG","copyText":"Copia al porta-retalls com a text","bringForward":"Porta endavant","sendToBack":"Envia enrere","bringToFront":"Porta al davant","sendBackward":"Envia al fons","delete":"Elimina","copyStyles":"Copia els estils","pasteStyles":"Enganxa els estils","stroke":"Color del traç","background":"Color del fons","fill":"Estil del fons","strokeWidth":"Amplada del traç","strokeStyle":"Estil del traç","strokeStyle_solid":"Sòlid","strokeStyle_dashed":"Guions","strokeStyle_dotted":"Punts","sloppiness":"Estil del traç","opacity":"Opacitat","textAlign":"Alineació del text","edges":"Vores","sharp":"Agut","round":"Arrodonit","arrowheads":"Puntes de fletxa","arrowhead_none":"Cap","arrowhead_arrow":"Fletxa","arrowhead_bar":"Barra","arrowhead_dot":"Punt","arrowhead_triangle":"Triangle","fontSize":"Mida de lletra","fontFamily":"Tipus de lletra","onlySelected":"Només seleccionats","withBackground":"Fons","exportEmbedScene":"Insereix l\'escena","exportEmbedScene_details":"Les dades de l’escena es desaran al fitxer PNG/SVG de manera que es pugui restaurar l’escena.\\nAugmentarà la mida del fitxer exportat.","addWatermark":"Afegeix-hi «Fet amb Excalidraw»","handDrawn":"Dibuixat a mà","normal":"Normal","code":"Codi","small":"Petit","medium":"Mitjà","large":"Gran","veryLarge":"Molt gran","solid":"Sòlid","hachure":"Ratlletes","crossHatch":"Ratlletes creuades","thin":"Fi","bold":"Negreta","left":"Esquerra","center":"Centre","right":"Dreta","extraBold":"Extra negreta","architect":"Arquitecte","artist":"Artista","cartoonist":"Dibuixant","fileTitle":"Nom del fitxer","colorPicker":"Selector de colors","canvasColors":"Usat al llenç","canvasBackground":"Fons del llenç","drawingCanvas":"Llenç de dibuix","layers":"Capes","actions":"Accions","language":"Llengua","liveCollaboration":"Col·laboració en directe","duplicateSelection":"Duplica","untitled":"Sense títol","name":"Nom","yourName":"El vostre nom","madeWithExcalidraw":"Fet amb Excalidraw","group":"Agrupa la selecció","ungroup":"Desagrupa la selecció","collaborators":"Col·laboradors","showGrid":"Mostra la graella","addToLibrary":"Afegir a la biblioteca","removeFromLibrary":"Eliminar de la biblioteca","libraryLoadingMessage":"S\'està carregant la biblioteca…","libraries":"Explora les biblioteques","loadingScene":"S\'està carregant l\'escena…","align":"Alinea","alignTop":"Alinea a la part superior","alignBottom":"Alinea a la part inferior","alignLeft":"Alinea a l’esquerra","alignRight":"Alinea a la dreta","centerVertically":"Centra verticalment","centerHorizontally":"Centra horitzontalment","distributeHorizontally":"Distribueix horitzontalment","distributeVertically":"Distribueix verticalment","flipHorizontal":"Capgira horitzontalment","flipVertical":"Capgira verticalment","viewMode":"Mode de visualització","toggleExportColorScheme":"Canvia l\'esquema de colors de l\'exportació","share":"Comparteix","showStroke":"Mostra el selector de color del traç","showBackground":"Mostra el selector de color de fons","toggleTheme":"Activa o desactiva el tema","personalLib":"Biblioteca personal","excalidrawLib":"Biblioteca d\'Excalidraw","decreaseFontSize":"Redueix la mida de la lletra","increaseFontSize":"Augmenta la mida de la lletra","unbindText":"Desvincular el text","bindText":"","link":{"edit":"Edita l\'enllaç","create":"Crea un enllaç","label":"Enllaç"},"elementLock":{"lock":"Bloca","unlock":"Desbloca","lockAll":"Bloca-ho tot","unlockAll":"Desbloca-ho tot"},"statusPublished":"Publicat","sidebarLock":""},"library":{"noItems":"","hint_emptyLibrary":"","hint_emptyPrivateLibrary":""},"buttons":{"clearReset":"Neteja el llenç","exportJSON":"Exporta a un fitxer","exportImage":"Desa com a imatge","export":"Exporta","exportToPng":"Exporta a PNG","exportToSvg":"Exporta a SNG","copyToClipboard":"Copia al porta-retalls","copyPngToClipboard":"Copia el PNG al porta-retalls","scale":"Escala","save":"Desa al fitxer actual","saveAs":"Anomena i desa","load":"Carrega","getShareableLink":"Obté l\'enllaç per a compartir","close":"Tanca","selectLanguage":"Trieu la llengua","scrollBackToContent":"Torna al contingut","zoomIn":"Apropa\'t","zoomOut":"Allunya\'t","resetZoom":"Restableix el zoom","menu":"Menú","done":"Fet","edit":"Edita","undo":"Desfés","redo":"Refés","resetLibrary":"Restableix la biblioteca","createNewRoom":"Crea una sala nova","fullScreen":"Pantalla completa","darkMode":"Mode fosc","lightMode":"Mode clar","zenMode":"Mode zen","exitZenMode":"Surt de mode zen","cancel":"Cancel·la","clear":"Neteja","remove":"Suprimeix","publishLibrary":"Publica","submit":"Envia","confirm":"Confirma"},"alerts":{"clearReset":"S\'esborrarà tot el llenç. N\'esteu segur?","couldNotCreateShareableLink":"No s\'ha pogut crear un enllaç per a compartir.","couldNotCreateShareableLinkTooBig":"No s’ha pogut crear un enllaç per a compartir: l’escena és massa gran","couldNotLoadInvalidFile":"No s\'ha pogut carregar un fitxer no vàlid","importBackendFailed":"Importació fallida.","cannotExportEmptyCanvas":"No es pot exportar un llenç buit.","couldNotCopyToClipboard":"No s\'ha pogut copiar al porta-retalls.","decryptFailed":"No s\'ha pogut desencriptar.","uploadedSecurly":"La càrrega s\'ha assegurat amb xifratge punta a punta, cosa que significa que el servidor Excalidraw i tercers no poden llegir el contingut.","loadSceneOverridePrompt":"Si carregas aquest dibuix extern, substituirá el que tens. Vols continuar?","collabStopOverridePrompt":"Aturar la sessió provocarà la sobreescriptura del dibuix previ, que hi ha desat en l\'emmagatzematge local. N\'esteu segur?\\n\\n(Si voleu conservar el dibuix local, tanqueu la pentanya del navegador en comptes d\'aturar la sessió).","errorAddingToLibrary":"No s\'ha pogut afegir l\'element a la biblioteca","errorRemovingFromLibrary":"No s\'ha pogut eliminar l\'element de la biblioteca","confirmAddLibrary":"Això afegirà {{numShapes}} forma(es) a la vostra biblioteca. Estàs segur?","imageDoesNotContainScene":"Aquesta imatge no sembla contenir cap dada d\'escena. Heu activat l\'incrustació de l\'escena durant l\'exportació?","cannotRestoreFromImage":"L’escena no s’ha pogut restaurar des d’aquest fitxer d’imatge","invalidSceneUrl":"No s\'ha pogut importar l\'escena des de l\'adreça URL proporcionada. Està malformada o no conté dades Excalidraw JSON vàlides.","resetLibrary":"Això buidarà la biblioteca. N\'esteu segur?","removeItemsFromsLibrary":"Suprimir {{count}} element(s) de la biblioteca?","invalidEncryptionKey":"La clau d\'encriptació ha de tenir 22 caràcters. La col·laboració en directe està desactivada."},"errors":{"unsupportedFileType":"Tipus de fitxer no suportat.","imageInsertError":"No s\'ha pogut insertar la imatge, torneu-ho a provar més tard...","fileTooBig":"El fitxer és massa gros. La mida màxima permesa és {{maxSize}}.","svgImageInsertError":"No ha estat possible inserir la imatge SVG. Les marques SVG semblen invàlides.","invalidSVGString":"SVG no vàlid.","cannotResolveCollabServer":"","importLibraryError":"No s\'ha pogut carregar la biblioteca"},"toolBar":{"selection":"Selecció","image":"Insereix imatge","rectangle":"Rectangle","diamond":"Rombe","ellipse":"El·lipse","arrow":"Fletxa","line":"Línia","freedraw":"Dibuix","text":"Text","library":"Biblioteca","lock":"Mantenir activa l\'eina seleccionada desprès de dibuixar","penMode":"Evita el zoom i accepta solament el dibuix lliure amb bolígraf","link":"Afegeix / actualitza l\'enllaç per a la forma seleccionada","eraser":"Esborrador"},"headings":{"canvasActions":"Accions del llenç","selectedShapeActions":"Accions per a les formes seleccionades","shapes":"Formes"},"hints":{"canvasPanning":"Per a moure el llenç, mantingueu premuda la roda del ratolí o la tecla espai mentre l\'arrossegueu","linearElement":"Feu clic per a dibuixar múltiples punts; arrossegueu per a una sola línia","freeDraw":"Feu clic i arrossegueu, deixeu anar per a finalitzar","text":"Consell: també podeu afegir text fent doble clic en qualsevol lloc amb l\'eina de selecció","text_selected":"Feu doble clic o premeu Retorn per a editar el text","text_editing":"Premeu Escapada o Ctrl+Retorn (o Ordre+Retorn) per a finalitzar l\'edició","linearElementMulti":"Feu clic a l\'ultim punt, o pitgeu Esc o Retorn per a finalitzar","lockAngle":"Per restringir els angles, mantenir premut el majúscul (SHIFT)","resize":"Per restringir les proporcions mentres es canvia la mida, mantenir premut el majúscul (SHIFT); per canviar la mida des del centre, mantenir premut ALT","resizeImage":"Podeu redimensionar lliurement prement MAJÚSCULA;\\nper a redimensionar des del centre, premeu ALT","rotate":"Per restringir els angles mentre gira, mantenir premut el majúscul (SHIFT)","lineEditor_info":"Fes doble clic o premi Enter per editar punts","lineEditor_pointSelected":"Premeu Suprimir per a eliminar el(s) punt(s), CtrlOrCmd+D per a duplicar-lo, o arrossegueu-lo per a moure\'l","lineEditor_nothingSelected":"Seleccioneu un punt per a editar-lo (premeu SHIFT si voleu\\nselecció múltiple), o manteniu Alt i feu clic per a afegir més punts","placeImage":"Feu clic per a col·locar la imatge o clic i arrossegar per a establir-ne la mida manualment","publishLibrary":"Publiqueu la vostra pròpia llibreria","bindTextToElement":"Premeu enter per a afegir-hi text","deepBoxSelect":"Manteniu CtrlOrCmd per a selecció profunda, i per a evitar l\'arrossegament","eraserRevert":"Mantingueu premuda Alt per a revertir els elements seleccionats per a esborrar"},"canvasError":{"cannotShowPreview":"No es pot mostrar la previsualització","canvasTooBig":"Pot ser que el llenç sigui massa gran.","canvasTooBigTip":"Consell: proveu d’acostar una mica els elements més allunyats."},"errorSplash":{"headingMain_pre":"S\'ha produït un error. Proveu ","headingMain_button":"recarregar la pàgina.","clearCanvasMessage":"Si la recàrrega no funciona, proveu ","clearCanvasMessage_button":"esborrar el llenç.","clearCanvasCaveat":" Això resultarà en la pèrdua de feina ","trackedToSentry_pre":"L\'error amb l\'identificador ","trackedToSentry_post":" s\'ha rastrejat en el nostre sistema.","openIssueMessage_pre":"Anàvem amb molta cura de no incloure la informació de la vostra escena en l\'error. Si l\'escena no és privada, podeu fer-ne el seguiment al nostre ","openIssueMessage_button":"rastrejador d\'errors.","openIssueMessage_post":" Incloeu la informació a continuació copiant i enganxant a GitHub Issues.","sceneContent":"Contingut de l\'escena:"},"roomDialog":{"desc_intro":"Podeu convidar persones a la vostra escena actual a col·laborar amb vós.","desc_privacy":"No us preocupeu, la sessió utilitza el xifratge de punta a punta, de manera que qualsevol cosa que dibuixeu romandrà privada. Ni tan sols el nostre servidor podrà veure què feu.","button_startSession":"Inicia la sessió","button_stopSession":"Atura la sessió","desc_inProgressIntro":"La sessió de col·laboració en directe està en marxa.","desc_shareLink":"Comparteix aquest enllaç amb qualsevol persona amb qui vulgueu col·laborar:","desc_exitSession":"Si atureu la sessió, us desconectareu de la sala, però podreu continuar treballant amb el dibuix localment. Tingues en compte que això no afectarà a altres persones, i encara podran col·laborar en la seva versió.","shareTitle":"Uniu-vos a una sessió de col·laboració en directe a Excalidraw"},"errorDialog":{"title":"Error"},"exportDialog":{"disk_title":"Desa al disc","disk_details":"Exporta les dades de l\'escena a un fitxer que després podreu importar.","disk_button":"Desa en un fitxer","link_title":"Enllaç per a compartir","link_details":"Exporta com a un enllaç de només lectura.","link_button":"Exporta a un enllaç","excalidrawplus_description":"Desa l\'escena en el vostre espai de treball Excalidraw+.","excalidrawplus_button":"Exporta","excalidrawplus_exportError":"No és possible exportar a Excalidraw+ ara mateix..."},"helpDialog":{"blog":"Llegiu el nostre blog","click":"clic","deepSelect":"Selecció profunda","deepBoxSelect":"","curvedArrow":"Fletxa corba","curvedLine":"Línia corba","documentation":"Documentació","doubleClick":"doble clic","drag":"arrossega","editor":"Editor","editSelectedShape":"Edita la forma seleccionada (text, fletxa o línia)","github":"Hi heu trobat un problema? Informeu-ne","howto":"Seguiu les nostres guies","or":"o","preventBinding":"Prevenir vinculació de la fletxa","tools":"Eines","shortcuts":"Dreceres de teclat","textFinish":"Finalitza l\'edició (editor de text)","textNewLine":"Afegeix una línia nova (editor de text)","title":"Ajuda","view":"Visualització","zoomToFit":"Zoom per veure tots els elements","zoomToSelection":"Zoom per veure la selecció","toggleElementLock":""},"clearCanvasDialog":{"title":"Neteja el llenç"},"publishDialog":{"title":"Publica la biblioteca","itemName":"Nom de l\'element","authorName":"Nom de l\'autor/a","githubUsername":"Nom d\'usuari de GitHub","twitterUsername":"Nom d\'usuari de Twitter","libraryName":"Nom de la biblioteca","libraryDesc":"Descripció de la biblioteca","website":"Lloc web","placeholder":{"authorName":"Nom o usuari","libraryName":"Nom de la vostra biblioteca","libraryDesc":"Descripció de la biblioteca per a ajudar a la gent a entendre\'n el funcionament","githubHandle":"","twitterHandle":"Usuari de twitter (opcional), per tal que puguem donar-vos crèdit quan fem la promoció a Twitter","website":"Enllaç al vostre lloc web personal o a qualsevol altre (opcional)"},"errors":{"required":"Requerit","website":"Introduïu una URL vàlida"},"noteDescription":{"pre":"Envieu la vostra biblioteca perquè sigui inclosa al ","link":"repositori públic","post":"per tal que altres persones puguin fer-ne ús en els seus dibuixos."},"noteGuidelines":{"pre":"La biblioteca ha de ser aprovada manualment. Si us plau, llegiu les ","link":"directrius","post":" abans d\'enviar-hi res. Necessitareu un compte de GitHub per a comunicar i fer-hi canvis si cal, però no és requisit imprescindible."},"noteLicense":{"pre":"Quan l\'envieu, accepteu que la biblioteca sigui publicada sota la ","link":"llicència MIT, ","post":"que, en resum, vol dir que qualsevol persona pot fer-ne ús sense restriccions."},"noteItems":"Cada element de la biblioteca ha de tenir el seu propi nom per tal que sigui filtrable. S\'hi inclouran els elements següents:","atleastOneLibItem":"Si us plau, seleccioneu si més no un element de la biblioteca per a començar","republishWarning":"Nota: alguns dels elements seleccionats s\'han marcat com a publicats/enviats. Només hauríeu de reenviar elements quan actualitzeu una biblioteca existent."},"publishSuccessDialog":{"title":"Biblioteca enviada","content":"Gràcies, {{authorName}}. La vostra biblioteca ha estat enviada per a ser revisada. Podeu comprovar-ne l\'estat","link":"aquí"},"confirmDialog":{"resetLibrary":"Restableix la biblioteca","removeItemsFromLib":"Suprimeix els elements seleccionats de la llibreria"},"encrypted":{"tooltip":"Els vostres dibuixos estan xifrats de punta a punta de manera que els servidors d’Excalidraw no els veuran mai.","link":"Article del blog sobre encriptació d\'extrem a extrem a Excalidraw"},"stats":{"angle":"Angle","element":"Element","elements":"Elements","height":"Altura","scene":"Escena","selected":"Seleccionat","storage":"Emmagatzematge","title":"Estadístiques per nerds","total":"Total","version":"Versió","versionCopy":"Feu clic per a copiar","versionNotAvailable":"Versió no disponible","width":"Amplada"},"toast":{"addedToLibrary":"Afegit a la biblioteca","copyStyles":"S\'han copiat els estils.","copyToClipboard":"S\'ha copiat al porta-retalls.","copyToClipboardAsPng":"S\'ha copiat {{exportSelection}} al porta-retalls en format PNG\\n({{exportColorScheme}})","fileSaved":"S\'ha desat el fitxer.","fileSavedToFilename":"S\'ha desat a {filename}","canvas":"el llenç","selection":"la selecció"},"colors":{"495057":"Gris 7","ffffff":"Blanc","f8f9fa":"Gris 0","f1f3f5":"Gris 1","fff5f5":"Vermell 0","fff0f6":"Rosa 0","f8f0fc":"Malva 0","f3f0ff":"Violat 0","edf2ff":"Indi 0","e7f5ff":"Blau 0","e3fafc":"Cian 0","e6fcf5":"Xarxet 0","ebfbee":"Verd 0","f4fce3":"Llima 0","fff9db":"Groc 0","fff4e6":"Taronja 0","transparent":"Transparent","ced4da":"Gris 4","868e96":"Gris 6","fa5252":"Vermell 6","e64980":"Rosa 6","be4bdb":"Malva 6","7950f2":"Violat 6","4c6ef5":"Indi 6","228be6":"Blau 6","15aabf":"Cian 6","12b886":"Xarxet 6","40c057":"Verd 6","82c91e":"Llima 6","fab005":"Groc 6","fd7e14":"Taronja 6","000000":"Negre","343a40":"Gris 8","c92a2a":"Vermell 9","a61e4d":"Rosa 9","862e9c":"Malva 9","5f3dc4":"Violat 9","364fc7":"Indi 9","1864ab":"Blau 9","0b7285":"Cian 9","087f5b":"Xarxet 9","2b8a3e":"Verd 9","5c940d":"Llima 9","e67700":"Groc 9","d9480f":"Taronja 9"}}')}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkExcalidrawLib=self.webpackChunkExcalidrawLib||[]).push([[265],{7605:function(e){e.exports=JSON.parse('{"labels":{"paste":"Vložit","pasteCharts":"Vložit grafy","selectAll":"Vybrat vše","multiSelect":"Přidat prvek do výběru","moveCanvas":"Posunout plátno","cut":"Vyjmout","copy":"Kopírovat","copyAsPng":"Zkopírovat do schránky jako PNG","copyAsSvg":"Zkopírovat do schránky jako SVG","copyText":"Zkopírovat do schránky jako text","bringForward":"Přenést blíž","sendToBack":"Přenést do pozadí","bringToFront":"Přenést do popředí","sendBackward":"Přenést dál","delete":"Smazat","copyStyles":"Kopírovat styly","pasteStyles":"Vložit styly","stroke":"Obrys","background":"Pozadí","fill":"Výplň","strokeWidth":"Šířka obrysu","strokeStyle":"Styl tahu","strokeStyle_solid":"Plný","strokeStyle_dashed":"Čárkovaný","strokeStyle_dotted":"Tečkovaný","sloppiness":"Stylizace","opacity":"Průhlednost","textAlign":"Zarovnání textu","edges":"Hrany","sharp":"Ostré","round":"Zaoblené","arrowheads":"Styl šipky","arrowhead_none":"Žádný","arrowhead_arrow":"Šipka","arrowhead_bar":"Kóta","arrowhead_dot":"Tečka","arrowhead_triangle":"Trojúhelník","fontSize":"Velikost písma","fontFamily":"Písmo","onlySelected":"Pouze vybrané","withBackground":"Pozadí","exportEmbedScene":"Vložit scénu","exportEmbedScene_details":"Data scény budou uložena do exportovaného souboru PNG/SVG tak, aby z něj mohla být scéna obnovena.\\nZvýší se velikost exportovaného souboru.","addWatermark":"Přidat \\"Vyrobeno s Excalidraw\\"","handDrawn":"Od ruky","normal":"Normální","code":"Kód","small":"Malé","medium":"Střední","large":"Velké","veryLarge":"Velmi velké","solid":"","hachure":"","crossHatch":"","thin":"","bold":"","left":"","center":"","right":"","extraBold":"","architect":"","artist":"","cartoonist":"","fileTitle":"","colorPicker":"","canvasColors":"","canvasBackground":"Pozadí plátna","drawingCanvas":"","layers":"","actions":"","language":"","liveCollaboration":"","duplicateSelection":"","untitled":"","name":"","yourName":"","madeWithExcalidraw":"","group":"","ungroup":"","collaborators":"","showGrid":"","addToLibrary":"","removeFromLibrary":"","libraryLoadingMessage":"","libraries":"","loadingScene":"","align":"","alignTop":"","alignBottom":"","alignLeft":"","alignRight":"","centerVertically":"","centerHorizontally":"","distributeHorizontally":"","distributeVertically":"","flipHorizontal":"","flipVertical":"","viewMode":"Náhled","toggleExportColorScheme":"","share":"Sdílet","showStroke":"","showBackground":"","toggleTheme":"Přepnout tmavý řežim","personalLib":"","excalidrawLib":"","decreaseFontSize":"","increaseFontSize":"","unbindText":"","bindText":"","link":{"edit":"","create":"","label":""},"elementLock":{"lock":"","unlock":"","lockAll":"","unlockAll":""},"statusPublished":"","sidebarLock":""},"library":{"noItems":"","hint_emptyLibrary":"","hint_emptyPrivateLibrary":""},"buttons":{"clearReset":"","exportJSON":"","exportImage":"","export":"Exportovat","exportToPng":"Exportovat do PNG","exportToSvg":"Exportovat do SVG","copyToClipboard":"Kopírovat do schránky","copyPngToClipboard":"Kopírovat PNG do schránky","scale":"Měřítko","save":"","saveAs":"Uložit jako","load":"Nahrát","getShareableLink":"Získat odkaz pro sdílení","close":"Zavřít","selectLanguage":"Zvolit jazyk","scrollBackToContent":"","zoomIn":"Přiblížit","zoomOut":"Oddálit","resetZoom":"Resetovat přiblížení","menu":"Menu","done":"Hotovo","edit":"Upravit","undo":"Zpět","redo":"Znovu","resetLibrary":"","createNewRoom":"Vytvořit novou místnost","fullScreen":"Celá obrazovka","darkMode":"Tmavý režim","lightMode":"Světlý režim","zenMode":"Zen mód","exitZenMode":"Opustit zen mód","cancel":"","clear":"","remove":"","publishLibrary":"","submit":"","confirm":""},"alerts":{"clearReset":"","couldNotCreateShareableLink":"","couldNotCreateShareableLinkTooBig":"","couldNotLoadInvalidFile":"","importBackendFailed":"","cannotExportEmptyCanvas":"","couldNotCopyToClipboard":"","decryptFailed":"","uploadedSecurly":"","loadSceneOverridePrompt":"","collabStopOverridePrompt":"","errorAddingToLibrary":"","errorRemovingFromLibrary":"","confirmAddLibrary":"","imageDoesNotContainScene":"","cannotRestoreFromImage":"","invalidSceneUrl":"","resetLibrary":"","removeItemsFromsLibrary":"","invalidEncryptionKey":""},"errors":{"unsupportedFileType":"","imageInsertError":"","fileTooBig":"","svgImageInsertError":"","invalidSVGString":"","cannotResolveCollabServer":"","importLibraryError":""},"toolBar":{"selection":"Výběr","image":"","rectangle":"Obdélník","diamond":"Diamant","ellipse":"Elipsa","arrow":"Šipka","line":"Čára","freedraw":"Kreslení","text":"Text","library":"","lock":"","penMode":"","link":"","eraser":""},"headings":{"canvasActions":"","selectedShapeActions":"","shapes":"Tvary"},"hints":{"canvasPanning":"","linearElement":"","freeDraw":"","text":"","text_selected":"","text_editing":"","linearElementMulti":"","lockAngle":"","resize":"","resizeImage":"","rotate":"","lineEditor_info":"","lineEditor_pointSelected":"","lineEditor_nothingSelected":"","placeImage":"","publishLibrary":"","bindTextToElement":"","deepBoxSelect":"","eraserRevert":""},"canvasError":{"cannotShowPreview":"","canvasTooBig":"","canvasTooBigTip":""},"errorSplash":{"headingMain_pre":"","headingMain_button":"","clearCanvasMessage":"","clearCanvasMessage_button":"","clearCanvasCaveat":"","trackedToSentry_pre":"","trackedToSentry_post":"","openIssueMessage_pre":"","openIssueMessage_button":"","openIssueMessage_post":"","sceneContent":""},"roomDialog":{"desc_intro":"","desc_privacy":"","button_startSession":"","button_stopSession":"","desc_inProgressIntro":"","desc_shareLink":"","desc_exitSession":"","shareTitle":""},"errorDialog":{"title":""},"exportDialog":{"disk_title":"","disk_details":"","disk_button":"","link_title":"","link_details":"","link_button":"","excalidrawplus_description":"","excalidrawplus_button":"","excalidrawplus_exportError":""},"helpDialog":{"blog":"","click":"kliknutí","deepSelect":"","deepBoxSelect":"","curvedArrow":"","curvedLine":"","documentation":"","doubleClick":"","drag":"tažení","editor":"","editSelectedShape":"","github":"","howto":"","or":"nebo","preventBinding":"","tools":"","shortcuts":"","textFinish":"","textNewLine":"","title":"","view":"","zoomToFit":"","zoomToSelection":"","toggleElementLock":""},"clearCanvasDialog":{"title":""},"publishDialog":{"title":"","itemName":"","authorName":"","githubUsername":"","twitterUsername":"","libraryName":"","libraryDesc":"","website":"","placeholder":{"authorName":"","libraryName":"","libraryDesc":"","githubHandle":"","twitterHandle":"","website":""},"errors":{"required":"","website":""},"noteDescription":{"pre":"","link":"","post":""},"noteGuidelines":{"pre":"","link":"","post":""},"noteLicense":{"pre":"","link":"","post":""},"noteItems":"","atleastOneLibItem":"","republishWarning":""},"publishSuccessDialog":{"title":"","content":"","link":""},"confirmDialog":{"resetLibrary":"","removeItemsFromLib":""},"encrypted":{"tooltip":"","link":""},"stats":{"angle":"","element":"","elements":"","height":"","scene":"","selected":"","storage":"","title":"","total":"","version":"","versionCopy":"","versionNotAvailable":"","width":""},"toast":{"addedToLibrary":"","copyStyles":"","copyToClipboard":"","copyToClipboardAsPng":"","fileSaved":"","fileSavedToFilename":"","canvas":"plátno","selection":"výběr"},"colors":{"495057":"","ffffff":"","f8f9fa":"","f1f3f5":"","fff5f5":"","fff0f6":"","f8f0fc":"","f3f0ff":"","edf2ff":"","e7f5ff":"","e3fafc":"","e6fcf5":"","ebfbee":"","f4fce3":"","fff9db":"","fff4e6":"","transparent":"","ced4da":"","868e96":"","fa5252":"","e64980":"","be4bdb":"","7950f2":"","4c6ef5":"","228be6":"","15aabf":"","12b886":"","40c057":"","82c91e":"","fab005":"","fd7e14":"","000000":"","343a40":"","c92a2a":"","a61e4d":"","862e9c":"","5f3dc4":"","364fc7":"","1864ab":"","0b7285":"","087f5b":"","2b8a3e":"","5c940d":"","e67700":"","d9480f":""}}')}}]);
|