ducjs 2.0.1 → 2.2.2
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/README.md +1 -1
- package/dist/flatbuffers/duc/duc-block-collection-entry.d.ts +16 -0
- package/dist/flatbuffers/duc/duc-block-collection-entry.js +48 -0
- package/dist/flatbuffers/duc/duc-block-collection.d.ts +31 -0
- package/dist/flatbuffers/duc/duc-block-collection.js +97 -0
- package/dist/flatbuffers/duc/duc-block-instance-element.d.ts +0 -20
- package/dist/flatbuffers/duc/duc-block-instance-element.js +0 -66
- package/dist/flatbuffers/duc/duc-block-instance.d.ts +32 -0
- package/dist/flatbuffers/duc/duc-block-instance.js +100 -0
- package/dist/flatbuffers/duc/duc-block-metadata.d.ts +23 -0
- package/dist/flatbuffers/duc/duc-block-metadata.js +72 -0
- package/dist/flatbuffers/duc/duc-block.d.ts +9 -7
- package/dist/flatbuffers/duc/duc-block.js +31 -30
- package/dist/flatbuffers/duc/duc-element-base.d.ts +9 -0
- package/dist/flatbuffers/duc/duc-element-base.js +29 -1
- package/dist/flatbuffers/duc/duc-feature-control-frame-style.d.ts +0 -3
- package/dist/flatbuffers/duc/duc-feature-control-frame-style.js +0 -8
- package/dist/flatbuffers/duc/duc-leader-style.d.ts +0 -3
- package/dist/flatbuffers/duc/duc-leader-style.js +0 -8
- package/dist/flatbuffers/duc/duc-plot-style.d.ts +1 -4
- package/dist/flatbuffers/duc/duc-plot-style.js +1 -10
- package/dist/flatbuffers/duc/duc-table-style.d.ts +0 -3
- package/dist/flatbuffers/duc/duc-table-style.js +0 -8
- package/dist/flatbuffers/duc/duc-text-style.d.ts +0 -3
- package/dist/flatbuffers/duc/duc-text-style.js +0 -8
- package/dist/flatbuffers/duc/duc-viewport-style.d.ts +1 -4
- package/dist/flatbuffers/duc/duc-viewport-style.js +1 -10
- package/dist/flatbuffers/duc/duc-xray-style.d.ts +1 -4
- package/dist/flatbuffers/duc/duc-xray-style.js +1 -10
- package/dist/flatbuffers/duc/exported-data-state.d.ts +15 -0
- package/dist/flatbuffers/duc/exported-data-state.js +52 -1
- package/dist/flatbuffers/duc.d.ts +4 -0
- package/dist/flatbuffers/duc.js +4 -0
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -1
- package/dist/parse.d.ts +2 -2
- package/dist/parse.js +149 -37
- package/dist/restore/restoreDataState.d.ts +29 -3
- package/dist/restore/restoreDataState.js +188 -25
- package/dist/restore/restoreElements.js +16 -9
- package/dist/serialize.d.ts +2 -1
- package/dist/serialize.js +136 -55
- package/dist/types/elements/index.d.ts +96 -27
- package/dist/types/elements/typeChecks.d.ts +2 -2
- package/dist/types/elements/typeChecks.js +4 -5
- package/dist/types/index.d.ts +7 -2
- package/dist/types/index.js +1 -0
- package/dist/types/typeChecks.d.ts +5 -0
- package/dist/types/typeChecks.js +10 -0
- package/dist/utils/bounds.js +1 -1
- package/dist/utils/constants.d.ts +14 -2
- package/dist/utils/constants.js +19 -5
- package/dist/utils/elements/frameElement.d.ts +1 -0
- package/dist/utils/elements/frameElement.js +13 -1
- package/dist/utils/elements/index.js +12 -15
- package/dist/utils/elements/newElement.d.ts +1 -7
- package/dist/utils/elements/newElement.js +26 -28
- package/dist/utils/elements/textElement.js +3 -1
- package/dist/utils/functionCodec.js +2 -2
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.js +1 -0
- package/dist/utils/traverse.d.ts +22 -0
- package/dist/utils/traverse.js +87 -0
- package/package.json +4 -2
- package/dist/legacy/index.d.ts +0 -1
- package/dist/legacy/index.js +0 -1
- package/dist/legacy/v1/duc/app-state.d.ts +0 -124
- package/dist/legacy/v1/duc/app-state.js +0 -388
- package/dist/legacy/v1/duc/binary-file-data.d.ts +0 -27
- package/dist/legacy/v1/duc/binary-file-data.js +0 -90
- package/dist/legacy/v1/duc/binary-files-entry.d.ts +0 -16
- package/dist/legacy/v1/duc/binary-files-entry.js +0 -43
- package/dist/legacy/v1/duc/binary-files.d.ts +0 -17
- package/dist/legacy/v1/duc/binary-files.js +0 -55
- package/dist/legacy/v1/duc/binding-point.d.ts +0 -15
- package/dist/legacy/v1/duc/binding-point.js +0 -48
- package/dist/legacy/v1/duc/bound-element.d.ts +0 -17
- package/dist/legacy/v1/duc/bound-element.js +0 -48
- package/dist/legacy/v1/duc/duc-block-attribute-details.d.ts +0 -22
- package/dist/legacy/v1/duc/duc-block-attribute-details.js +0 -57
- package/dist/legacy/v1/duc/duc-block-attribute.d.ts +0 -16
- package/dist/legacy/v1/duc/duc-block-attribute.js +0 -43
- package/dist/legacy/v1/duc/duc-block-instance-element-override.d.ts +0 -17
- package/dist/legacy/v1/duc/duc-block-instance-element-override.js +0 -48
- package/dist/legacy/v1/duc/duc-block.d.ts +0 -34
- package/dist/legacy/v1/duc/duc-block.js +0 -110
- package/dist/legacy/v1/duc/duc-element.d.ts +0 -273
- package/dist/legacy/v1/duc/duc-element.js +0 -865
- package/dist/legacy/v1/duc/duc-group.d.ts +0 -40
- package/dist/legacy/v1/duc/duc-group.js +0 -114
- package/dist/legacy/v1/duc/duc-line-reference.d.ts +0 -15
- package/dist/legacy/v1/duc/duc-line-reference.js +0 -43
- package/dist/legacy/v1/duc/duc-line.d.ts +0 -15
- package/dist/legacy/v1/duc/duc-line.js +0 -43
- package/dist/legacy/v1/duc/duc-path.d.ts +0 -26
- package/dist/legacy/v1/duc/duc-path.js +0 -69
- package/dist/legacy/v1/duc/duc-table-cell.d.ts +0 -22
- package/dist/legacy/v1/duc/duc-table-cell.js +0 -57
- package/dist/legacy/v1/duc/duc-table-column.d.ts +0 -18
- package/dist/legacy/v1/duc/duc-table-column.js +0 -50
- package/dist/legacy/v1/duc/duc-table-row.d.ts +0 -18
- package/dist/legacy/v1/duc/duc-table-row.js +0 -50
- package/dist/legacy/v1/duc/duc-table-style-props.d.ts +0 -39
- package/dist/legacy/v1/duc/duc-table-style-props.js +0 -114
- package/dist/legacy/v1/duc/duc-table-style.d.ts +0 -14
- package/dist/legacy/v1/duc/duc-table-style.js +0 -41
- package/dist/legacy/v1/duc/element-background.d.ts +0 -14
- package/dist/legacy/v1/duc/element-background.js +0 -41
- package/dist/legacy/v1/duc/element-content-base.d.ts +0 -22
- package/dist/legacy/v1/duc/element-content-base.js +0 -64
- package/dist/legacy/v1/duc/element-stroke.d.ts +0 -23
- package/dist/legacy/v1/duc/element-stroke.js +0 -66
- package/dist/legacy/v1/duc/exported-data-state.d.ts +0 -51
- package/dist/legacy/v1/duc/exported-data-state.js +0 -155
- package/dist/legacy/v1/duc/image-crop.d.ts +0 -23
- package/dist/legacy/v1/duc/image-crop.js +0 -80
- package/dist/legacy/v1/duc/linear-element-editor.d.ts +0 -44
- package/dist/legacy/v1/duc/linear-element-editor.js +0 -119
- package/dist/legacy/v1/duc/point-binding.d.ts +0 -25
- package/dist/legacy/v1/duc/point-binding.js +0 -72
- package/dist/legacy/v1/duc/point.d.ts +0 -20
- package/dist/legacy/v1/duc/point.js +0 -63
- package/dist/legacy/v1/duc/pointer-down-state.d.ts +0 -32
- package/dist/legacy/v1/duc/pointer-down-state.js +0 -90
- package/dist/legacy/v1/duc/renderer-state.d.ts +0 -17
- package/dist/legacy/v1/duc/renderer-state.js +0 -54
- package/dist/legacy/v1/duc/segment-midpoint-state.d.ts +0 -18
- package/dist/legacy/v1/duc/segment-midpoint-state.js +0 -57
- package/dist/legacy/v1/duc/simple-point.d.ts +0 -15
- package/dist/legacy/v1/duc/simple-point.js +0 -48
- package/dist/legacy/v1/duc/stroke-sides.d.ts +0 -23
- package/dist/legacy/v1/duc/stroke-sides.js +0 -66
- package/dist/legacy/v1/duc/stroke-style.d.ts +0 -31
- package/dist/legacy/v1/duc/stroke-style.js +0 -102
- package/dist/legacy/v1/duc/tiling-properties.d.ts +0 -21
- package/dist/legacy/v1/duc/tiling-properties.js +0 -75
- package/dist/legacy/v1/duc.d.ts +0 -35
- package/dist/legacy/v1/duc.js +0 -37
- package/dist/legacy/v1/index.d.ts +0 -1
- package/dist/legacy/v1/index.js +0 -1
- package/dist/legacy/v1/parse/index.d.ts +0 -67
- package/dist/legacy/v1/parse/index.js +0 -101
- package/dist/legacy/v1/parse/parseAppStateFromBinary.d.ts +0 -3
- package/dist/legacy/v1/parse/parseAppStateFromBinary.js +0 -139
- package/dist/legacy/v1/parse/parseBinaryFilesFromBinary.d.ts +0 -4
- package/dist/legacy/v1/parse/parseBinaryFilesFromBinary.js +0 -32
- package/dist/legacy/v1/parse/parseBlockFromBinary.d.ts +0 -3
- package/dist/legacy/v1/parse/parseBlockFromBinary.js +0 -70
- package/dist/legacy/v1/parse/parseElementFromBinary.d.ts +0 -8
- package/dist/legacy/v1/parse/parseElementFromBinary.js +0 -387
- package/dist/legacy/v1/parse/parseGroupFromBinary.d.ts +0 -4
- package/dist/legacy/v1/parse/parseGroupFromBinary.js +0 -36
- package/dist/legacy/v1/parse/parseRendererStateFromBinary.d.ts +0 -4
- package/dist/legacy/v1/parse/parseRendererStateFromBinary.js +0 -15
- package/dist/legacy/v1/serialize/index.d.ts +0 -5
- package/dist/legacy/v1/serialize/index.js +0 -81
- package/dist/legacy/v1/serialize/serializationUtils.d.ts +0 -17
- package/dist/legacy/v1/serialize/serializationUtils.js +0 -27
- package/dist/legacy/v1/serialize/serializeAppStateFromDuc.d.ts +0 -4
- package/dist/legacy/v1/serialize/serializeAppStateFromDuc.js +0 -145
- package/dist/legacy/v1/serialize/serializeBinaryFilesFromDuc.d.ts +0 -4
- package/dist/legacy/v1/serialize/serializeBinaryFilesFromDuc.js +0 -46
- package/dist/legacy/v1/serialize/serializeBlockFromDuc.d.ts +0 -3
- package/dist/legacy/v1/serialize/serializeBlockFromDuc.js +0 -60
- package/dist/legacy/v1/serialize/serializeElementFromDuc.d.ts +0 -8
- package/dist/legacy/v1/serialize/serializeElementFromDuc.js +0 -435
- package/dist/legacy/v1/serialize/serializeGroupFromDuc.d.ts +0 -3
- package/dist/legacy/v1/serialize/serializeGroupFromDuc.js +0 -37
- package/dist/legacy/v1/serialize/serializeRendererStateFromDuc.d.ts +0 -4
- package/dist/legacy/v1/serialize/serializeRendererStateFromDuc.js +0 -7
- package/dist/legacy/v1/types/elements/index.d.ts +0 -480
- package/dist/legacy/v1/types/elements/index.js +0 -1
- package/dist/legacy/v1/types/elements/typeChecks.d.ts +0 -40
- package/dist/legacy/v1/types/elements/typeChecks.js +0 -179
- package/dist/legacy/v1/types/geometryTypes.d.ts +0 -78
- package/dist/legacy/v1/types/geometryTypes.js +0 -1
- package/dist/legacy/v1/types/index.d.ts +0 -496
- package/dist/legacy/v1/types/index.js +0 -1
- package/dist/legacy/v1/types/utility-types.d.ts +0 -31
- package/dist/legacy/v1/types/utility-types.js +0 -1
- package/dist/legacy/v1/utils/bounds.d.ts +0 -76
- package/dist/legacy/v1/utils/bounds.js +0 -415
- package/dist/legacy/v1/utils/constants.d.ts +0 -370
- package/dist/legacy/v1/utils/constants.js +0 -571
- package/dist/legacy/v1/utils/elements/index.d.ts +0 -26
- package/dist/legacy/v1/utils/elements/index.js +0 -108
- package/dist/legacy/v1/utils/elements/linearElement.d.ts +0 -133
- package/dist/legacy/v1/utils/elements/linearElement.js +0 -544
- package/dist/legacy/v1/utils/elements/textElement.d.ts +0 -89
- package/dist/legacy/v1/utils/elements/textElement.js +0 -563
- package/dist/legacy/v1/utils/index.d.ts +0 -26
- package/dist/legacy/v1/utils/index.js +0 -40
- package/dist/legacy/v1/utils/math/algebra/ga.d.ts +0 -63
- package/dist/legacy/v1/utils/math/algebra/ga.js +0 -268
- package/dist/legacy/v1/utils/math/algebra/gadirections.d.ts +0 -9
- package/dist/legacy/v1/utils/math/algebra/gadirections.js +0 -18
- package/dist/legacy/v1/utils/math/algebra/galines.d.ts +0 -23
- package/dist/legacy/v1/utils/math/algebra/galines.js +0 -32
- package/dist/legacy/v1/utils/math/algebra/gapoints.d.ts +0 -8
- package/dist/legacy/v1/utils/math/algebra/gapoints.js +0 -30
- package/dist/legacy/v1/utils/math/algebra/gatransforms.d.ts +0 -10
- package/dist/legacy/v1/utils/math/algebra/gatransforms.js +0 -23
- package/dist/legacy/v1/utils/math/bbox.d.ts +0 -10
- package/dist/legacy/v1/utils/math/bbox.js +0 -42
- package/dist/legacy/v1/utils/math/geometry.d.ts +0 -102
- package/dist/legacy/v1/utils/math/geometry.js +0 -790
- package/dist/legacy/v1/utils/math/index.d.ts +0 -309
- package/dist/legacy/v1/utils/math/index.js +0 -1140
- package/dist/legacy/v1/utils/math/random.d.ts +0 -4
- package/dist/legacy/v1/utils/math/random.js +0 -25
- package/dist/legacy/v1/utils/measurements.d.ts +0 -33
- package/dist/legacy/v1/utils/measurements.js +0 -65
- package/dist/legacy/v1/utils/normalize.d.ts +0 -14
- package/dist/legacy/v1/utils/normalize.js +0 -49
- package/dist/legacy/v1/utils/restore.d.ts +0 -197
- package/dist/legacy/v1/utils/restore.js +0 -1255
- package/dist/legacy/v1/utils/scopes.d.ts +0 -260
- package/dist/legacy/v1/utils/scopes.js +0 -661
- package/dist/legacy/v1/utils/standards.d.ts +0 -12
- package/dist/legacy/v1/utils/standards.js +0 -10
- package/dist/legacy/v1/utils/state/index.d.ts +0 -2
- package/dist/legacy/v1/utils/state/index.js +0 -68
- package/dist/legacy/v1/utils/url.d.ts +0 -8
- package/dist/legacy/v1/utils/url.js +0 -33
|
@@ -1,179 +0,0 @@
|
|
|
1
|
-
import { assertNever } from "../../utils";
|
|
2
|
-
export const isInitializedImageElement = (element) => {
|
|
3
|
-
return !!element && element.type === "image" && !!element.fileId;
|
|
4
|
-
};
|
|
5
|
-
export const isImageElement = (element) => {
|
|
6
|
-
return !!element && element.type === "image";
|
|
7
|
-
};
|
|
8
|
-
export const isEmbeddableElement = (element) => {
|
|
9
|
-
return !!element && element.type === "embeddable";
|
|
10
|
-
};
|
|
11
|
-
export const isTableElement = (element) => {
|
|
12
|
-
return !!element && element.type === "table";
|
|
13
|
-
};
|
|
14
|
-
export const isIframeLikeElement = (element) => {
|
|
15
|
-
return (!!element && (element.type === "embeddable" ||
|
|
16
|
-
element.type === "table" ||
|
|
17
|
-
element.type === "doc"));
|
|
18
|
-
};
|
|
19
|
-
export const isTextElement = (element) => {
|
|
20
|
-
return element != null && element.type === "text";
|
|
21
|
-
};
|
|
22
|
-
export const isFrameElement = (element) => {
|
|
23
|
-
return element != null && element.type === "frame";
|
|
24
|
-
};
|
|
25
|
-
export const isFrameLikeElement = (element) => {
|
|
26
|
-
return (element != null &&
|
|
27
|
-
(element.type === "frame"));
|
|
28
|
-
};
|
|
29
|
-
export const isFreeDrawElement = (element) => {
|
|
30
|
-
return element != null && isFreeDrawElementType(element.type);
|
|
31
|
-
};
|
|
32
|
-
export const isEllipseElement = (element) => {
|
|
33
|
-
return element != null && element.type === "ellipse";
|
|
34
|
-
};
|
|
35
|
-
export const isPolygonElement = (element) => {
|
|
36
|
-
return element != null && element.type === "polygon";
|
|
37
|
-
};
|
|
38
|
-
export const isFreeDrawElementType = (elementType) => {
|
|
39
|
-
return elementType === "freedraw";
|
|
40
|
-
};
|
|
41
|
-
export const isLinearElement = (element) => {
|
|
42
|
-
return element != null && isLinearElementType(element.type);
|
|
43
|
-
};
|
|
44
|
-
export const isLinearElementType = (elementType) => {
|
|
45
|
-
return (elementType === "arrow" || elementType === "line");
|
|
46
|
-
};
|
|
47
|
-
export const isFlowchartNodeElement = (element) => {
|
|
48
|
-
return (element.type === "rectangle" ||
|
|
49
|
-
element.type === "ellipse" ||
|
|
50
|
-
element.type === "polygon");
|
|
51
|
-
};
|
|
52
|
-
export const isShapeToLinearElementPossible = (element) => {
|
|
53
|
-
return (element.type === "rectangle" ||
|
|
54
|
-
element.type === "ellipse" ||
|
|
55
|
-
element.type === "polygon");
|
|
56
|
-
};
|
|
57
|
-
export const isArrowElement = (element) => {
|
|
58
|
-
return element != null && element.type === "arrow";
|
|
59
|
-
};
|
|
60
|
-
export const isElbowArrow = (element) => {
|
|
61
|
-
return isArrowElement(element) && element.elbowed;
|
|
62
|
-
};
|
|
63
|
-
export const isBindingElement = (element, includeLocked = true) => {
|
|
64
|
-
return (element != null &&
|
|
65
|
-
(!element.locked || includeLocked === true) &&
|
|
66
|
-
isBindingElementType(element.type));
|
|
67
|
-
};
|
|
68
|
-
export const isBindingElementType = (elementType) => {
|
|
69
|
-
return elementType === "arrow";
|
|
70
|
-
};
|
|
71
|
-
export const isBindableElement = (element, includeLocked = true) => {
|
|
72
|
-
return (element != null &&
|
|
73
|
-
(!element.locked || includeLocked === true) &&
|
|
74
|
-
(element.type === "rectangle" ||
|
|
75
|
-
element.type === "polygon" ||
|
|
76
|
-
element.type === "ellipse" ||
|
|
77
|
-
element.type === "image" ||
|
|
78
|
-
element.type === "embeddable" ||
|
|
79
|
-
element.type === "frame" ||
|
|
80
|
-
element.type === "line" ||
|
|
81
|
-
element.type === "arrow" ||
|
|
82
|
-
(element.type === "text" && !element.containerId)));
|
|
83
|
-
};
|
|
84
|
-
export const isRectanguloidElement = (element) => {
|
|
85
|
-
return (element != null &&
|
|
86
|
-
(element.type === "rectangle" ||
|
|
87
|
-
element.type === "image" ||
|
|
88
|
-
element.type === "embeddable" ||
|
|
89
|
-
element.type === "frame" ||
|
|
90
|
-
element.type === "table" ||
|
|
91
|
-
(element.type === "text" && !element.containerId)));
|
|
92
|
-
};
|
|
93
|
-
export const isBlockInstanceElement = (element) => {
|
|
94
|
-
return element != null && element.type === "blockinstance";
|
|
95
|
-
};
|
|
96
|
-
// TODO: Remove this when proper distance calculation is introduced
|
|
97
|
-
// @see binding.ts:distanceToBindableElement()
|
|
98
|
-
export const isRectangularElement = (element) => {
|
|
99
|
-
return (element != null &&
|
|
100
|
-
(element.type === "rectangle" ||
|
|
101
|
-
element.type === "image" ||
|
|
102
|
-
element.type === "text" ||
|
|
103
|
-
element.type === "embeddable" ||
|
|
104
|
-
element.type === "frame" ||
|
|
105
|
-
element.type === "table"));
|
|
106
|
-
};
|
|
107
|
-
export const isTextBindableContainer = (element, includeLocked = true) => {
|
|
108
|
-
return (element != null &&
|
|
109
|
-
(!element.locked || includeLocked === true) &&
|
|
110
|
-
(element.type === "rectangle" ||
|
|
111
|
-
element.type === "polygon" ||
|
|
112
|
-
element.type === "ellipse" ||
|
|
113
|
-
isArrowElement(element)));
|
|
114
|
-
};
|
|
115
|
-
export const isDucElement = (element) => {
|
|
116
|
-
const type = element === null || element === void 0 ? void 0 : element.type;
|
|
117
|
-
if (!type) {
|
|
118
|
-
return false;
|
|
119
|
-
}
|
|
120
|
-
switch (type) {
|
|
121
|
-
case "text":
|
|
122
|
-
case "polygon":
|
|
123
|
-
case "rectangle":
|
|
124
|
-
case "embeddable":
|
|
125
|
-
case "ellipse":
|
|
126
|
-
case "arrow":
|
|
127
|
-
case "freedraw":
|
|
128
|
-
case "line":
|
|
129
|
-
case "frame":
|
|
130
|
-
case "image":
|
|
131
|
-
case "table":
|
|
132
|
-
case "doc":
|
|
133
|
-
case "blockinstance":
|
|
134
|
-
case "selection": {
|
|
135
|
-
return true;
|
|
136
|
-
}
|
|
137
|
-
default: {
|
|
138
|
-
assertNever(type, null);
|
|
139
|
-
return false;
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
};
|
|
143
|
-
export const hasBoundTextElement = (element) => {
|
|
144
|
-
var _a;
|
|
145
|
-
return (isTextBindableContainer(element) &&
|
|
146
|
-
!!((_a = element.boundElements) === null || _a === void 0 ? void 0 : _a.some(({ type }) => type === "text")));
|
|
147
|
-
};
|
|
148
|
-
export const isBoundToContainer = (element) => {
|
|
149
|
-
return (element !== null &&
|
|
150
|
-
"containerId" in element &&
|
|
151
|
-
element.containerId !== null &&
|
|
152
|
-
isTextElement(element));
|
|
153
|
-
};
|
|
154
|
-
export const isUsingAdaptiveRadius = (type) => type === "rectangle" ||
|
|
155
|
-
type === "embeddable" ||
|
|
156
|
-
type === "image" ||
|
|
157
|
-
type === "table";
|
|
158
|
-
export const isUsingProportionalRadius = (type) => type === "line" || type === "arrow" || type === "diamond";
|
|
159
|
-
// TODO: Move this to @excalidraw/math
|
|
160
|
-
export const isPoint = (point) => Array.isArray(point) && point.length === 2;
|
|
161
|
-
// TODO: Move this to @excalidraw/math
|
|
162
|
-
export const isBounds = (box) => Array.isArray(box) &&
|
|
163
|
-
box.length === 4 &&
|
|
164
|
-
typeof box[0] === "number" &&
|
|
165
|
-
typeof box[1] === "number" &&
|
|
166
|
-
typeof box[2] === "number" &&
|
|
167
|
-
typeof box[3] === "number";
|
|
168
|
-
// TODO: Move this to @excalidraw/math
|
|
169
|
-
export const isLineSegment = (segment) => Array.isArray(segment) &&
|
|
170
|
-
segment.length === 2 &&
|
|
171
|
-
isPoint(segment[0]) &&
|
|
172
|
-
isPoint(segment[0]);
|
|
173
|
-
export const isFixedPointBinding = (binding) => {
|
|
174
|
-
return binding.fixedPoint != null;
|
|
175
|
-
};
|
|
176
|
-
export const isTable = (element) => {
|
|
177
|
-
return (element === null || element === void 0 ? void 0 : element.type) === "table";
|
|
178
|
-
};
|
|
179
|
-
export const isNonDeletedElement = (element) => !element.isDeleted;
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
import { ScopedValue } from "./";
|
|
2
|
-
/**
|
|
3
|
-
* x and y position of top left corner, x and y position of bottom right corner
|
|
4
|
-
*/
|
|
5
|
-
export type Bounds = readonly [
|
|
6
|
-
minX: ScopedValue,
|
|
7
|
-
minY: ScopedValue,
|
|
8
|
-
maxX: ScopedValue,
|
|
9
|
-
maxY: ScopedValue
|
|
10
|
-
];
|
|
11
|
-
/**
|
|
12
|
-
* Angle in Radian
|
|
13
|
-
* Ranges from 0 to 2π: 0 - 360°
|
|
14
|
-
*/
|
|
15
|
-
export type Radian = number & {
|
|
16
|
-
__brand: "Radian";
|
|
17
|
-
};
|
|
18
|
-
/**
|
|
19
|
-
* Percentage
|
|
20
|
-
* Ranges from 0 to 1: 0% - 100%
|
|
21
|
-
*/
|
|
22
|
-
export type Percentage = number & {
|
|
23
|
-
__brand: "Percentage";
|
|
24
|
-
};
|
|
25
|
-
export type GeometricPoint = {
|
|
26
|
-
x: number;
|
|
27
|
-
y: number;
|
|
28
|
-
};
|
|
29
|
-
export type GeometricVector = GeometricPoint;
|
|
30
|
-
export type TuplePoint = [number, number];
|
|
31
|
-
export type ElementsSegmentsMap = Map<string, GeometricPoint[]>;
|
|
32
|
-
export type Line = [GeometricPoint, GeometricPoint];
|
|
33
|
-
export type LineSegment = Line;
|
|
34
|
-
export type Polyline = Line[];
|
|
35
|
-
export type Curve = [GeometricPoint, GeometricPoint, GeometricPoint, GeometricPoint];
|
|
36
|
-
export type Polycurve = Curve[];
|
|
37
|
-
export type Polygon = GeometricPoint[];
|
|
38
|
-
export type Ellipse = {
|
|
39
|
-
center: GeometricPoint;
|
|
40
|
-
angle: number;
|
|
41
|
-
halfWidth: number;
|
|
42
|
-
halfHeight: number;
|
|
43
|
-
};
|
|
44
|
-
export type GeometricShape = {
|
|
45
|
-
type: "line";
|
|
46
|
-
data: Line;
|
|
47
|
-
} | {
|
|
48
|
-
type: "polygon";
|
|
49
|
-
data: Polygon;
|
|
50
|
-
} | {
|
|
51
|
-
type: "curve";
|
|
52
|
-
data: Curve;
|
|
53
|
-
} | {
|
|
54
|
-
type: "ellipse";
|
|
55
|
-
data: Ellipse;
|
|
56
|
-
} | {
|
|
57
|
-
type: "polyline";
|
|
58
|
-
data: Polyline;
|
|
59
|
-
} | {
|
|
60
|
-
type: "polycurve";
|
|
61
|
-
data: Polycurve;
|
|
62
|
-
};
|
|
63
|
-
/**
|
|
64
|
-
* Defines the possible headings using the new Point interface.
|
|
65
|
-
*/
|
|
66
|
-
export type Heading = {
|
|
67
|
-
x: 1;
|
|
68
|
-
y: 0;
|
|
69
|
-
} | {
|
|
70
|
-
x: 0;
|
|
71
|
-
y: 1;
|
|
72
|
-
} | {
|
|
73
|
-
x: -1;
|
|
74
|
-
y: 0;
|
|
75
|
-
} | {
|
|
76
|
-
x: 0;
|
|
77
|
-
y: -1;
|
|
78
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|