ducjs 2.0.1 → 2.1.0
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-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 +3 -0
- package/dist/flatbuffers/duc/exported-data-state.js +8 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -1
- package/dist/parse.d.ts +2 -2
- package/dist/parse.js +55 -18
- package/dist/restore/restoreDataState.d.ts +6 -2
- package/dist/restore/restoreDataState.js +20 -13
- package/dist/restore/restoreElements.js +16 -9
- package/dist/serialize.d.ts +2 -1
- package/dist/serialize.js +12 -25
- package/dist/types/elements/index.d.ts +7 -7
- package/dist/types/elements/typeChecks.d.ts +2 -1
- package/dist/types/elements/typeChecks.js +4 -1
- package/dist/types/index.d.ts +4 -1
- 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/constants.d.ts +2 -0
- package/dist/utils/constants.js +1 -3
- package/dist/utils/elements/frameElement.d.ts +1 -0
- package/dist/utils/elements/frameElement.js +13 -1
- package/dist/utils/elements/index.js +11 -15
- package/dist/utils/elements/newElement.d.ts +1 -1
- package/dist/utils/elements/newElement.js +23 -23
- 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,435 +0,0 @@
|
|
|
1
|
-
import { BindingPoint as BinBindingPoint, BoundElement as BinBoundElement, DucBlockInstanceElementOverride as BinDucBlockInstanceElementOverride, DucElement as BinDucElement, DucLine as BinDucLine, DucLineReference as BinDucLineReference, DucPath as BinDucPath, DucTableCell as BinDucTableCell, DucTableColumn as BinDucTableColumn, DucTableRow as BinDucTableRow, DucTableStyle as BinDucTableStyle, DucTableStyleProps as BinDucTableStyleProps, ElementBackground as BinElementBackground, ElementContentBase as BinElementContentBase, ElementStroke as BinElementStroke, ImageCrop as BinImageCrop, Point as BinPoint, PointBinding as BinPointBinding, SimplePoint as BinSimplePoint, StrokeSides as BinStrokeSides, StrokeStyle as BinStrokeStyle, TilingProperties as BinTilingProperties } from '../duc';
|
|
2
|
-
import { isLinearElement } from '../types/elements/typeChecks';
|
|
3
|
-
import { ensureFiniteNumber, getPrecisionValueField } from './serializationUtils';
|
|
4
|
-
export const serializeDucElement = (builder, element, forRenderer = false) => {
|
|
5
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
|
|
6
|
-
const idOffset = builder.createString(element.id);
|
|
7
|
-
const labelOffset = builder.createString(element.label);
|
|
8
|
-
const scopeOffset = builder.createString(element.scope);
|
|
9
|
-
const frameIdOffset = element.frameId ? builder.createString(element.frameId) : undefined;
|
|
10
|
-
const linkOffset = element.link ? builder.createString(element.link) : undefined;
|
|
11
|
-
const typeOffset = builder.createString(element.type);
|
|
12
|
-
const descriptionOffset = element.description ? builder.createString(element.description) : undefined;
|
|
13
|
-
let fontFamilyOffset;
|
|
14
|
-
let textOffset;
|
|
15
|
-
let containerIdOffset;
|
|
16
|
-
if (element.type === 'text') {
|
|
17
|
-
fontFamilyOffset = element.fontFamily ? builder.createString(String(element.fontFamily)) : undefined;
|
|
18
|
-
textOffset = builder.createString(element.text);
|
|
19
|
-
containerIdOffset = element.containerId ? builder.createString(element.containerId) : undefined;
|
|
20
|
-
}
|
|
21
|
-
let fileIdOffset;
|
|
22
|
-
let statusOffset;
|
|
23
|
-
if (element.type === 'image') {
|
|
24
|
-
fileIdOffset = element.fileId ? builder.createString(element.fileId) : undefined;
|
|
25
|
-
statusOffset = element.status ? builder.createString(element.status) : undefined;
|
|
26
|
-
}
|
|
27
|
-
let docContentOffset;
|
|
28
|
-
if (element.type === 'doc') {
|
|
29
|
-
docContentOffset = builder.createString(element.content);
|
|
30
|
-
}
|
|
31
|
-
let freedrawEasingOffset;
|
|
32
|
-
let freedrawStartEasingOffset;
|
|
33
|
-
let freedrawEndEasingOffset;
|
|
34
|
-
let freedrawSvgPathOffset;
|
|
35
|
-
if (element.type === 'freedraw') {
|
|
36
|
-
freedrawEasingOffset = element.easing ? builder.createString(element.easing.name) : undefined;
|
|
37
|
-
freedrawStartEasingOffset = ((_a = element.start) === null || _a === void 0 ? void 0 : _a.easing) ? builder.createString(element.start.easing.name) : undefined;
|
|
38
|
-
freedrawEndEasingOffset = ((_b = element.end) === null || _b === void 0 ? void 0 : _b.easing) ? builder.createString(element.end.easing.name) : undefined;
|
|
39
|
-
freedrawSvgPathOffset = element.svgPath && forRenderer ? builder.createString(element.svgPath) : undefined;
|
|
40
|
-
}
|
|
41
|
-
// Pre-create frame/magicframe strings
|
|
42
|
-
let labelingColorOffset;
|
|
43
|
-
if (element.type === 'frame') {
|
|
44
|
-
const frameLikeElement = element;
|
|
45
|
-
if (frameLikeElement.labelingColor) {
|
|
46
|
-
labelingColorOffset = builder.createString(frameLikeElement.labelingColor);
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
// Pre-create blockinstance strings
|
|
50
|
-
let blockIdOffset;
|
|
51
|
-
let overrideOffsets = [];
|
|
52
|
-
let overridesVector;
|
|
53
|
-
if (element.type === 'blockinstance') {
|
|
54
|
-
const blockInstanceElement = element;
|
|
55
|
-
if (blockInstanceElement.blockId) {
|
|
56
|
-
blockIdOffset = builder.createString(blockInstanceElement.blockId);
|
|
57
|
-
}
|
|
58
|
-
if (blockInstanceElement.blockElementOverrides) {
|
|
59
|
-
// Create all override objects first
|
|
60
|
-
overrideOffsets = Object.entries(blockInstanceElement.blockElementOverrides).map(([elementId, overrides]) => {
|
|
61
|
-
const elementIdOffset = builder.createString(elementId);
|
|
62
|
-
const overridesOffset = builder.createString(overrides);
|
|
63
|
-
// Create DucBlockInstanceElementOverride
|
|
64
|
-
BinDucBlockInstanceElementOverride.startDucBlockInstanceElementOverride(builder);
|
|
65
|
-
BinDucBlockInstanceElementOverride.addElementId(builder, elementIdOffset);
|
|
66
|
-
BinDucBlockInstanceElementOverride.addOverrides(builder, overridesOffset);
|
|
67
|
-
return BinDucBlockInstanceElementOverride.endDucBlockInstanceElementOverride(builder);
|
|
68
|
-
});
|
|
69
|
-
if (overrideOffsets.length > 0) {
|
|
70
|
-
overridesVector = BinDucElement.createBlockInstanceElementOverridesVector(builder, overrideOffsets);
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
// Pre-create all table-related strings and objects
|
|
75
|
-
let columnOrderVector;
|
|
76
|
-
let rowOrderVector;
|
|
77
|
-
let columnsVector;
|
|
78
|
-
let rowsVector;
|
|
79
|
-
let cellsVector;
|
|
80
|
-
let tableStyleOffset;
|
|
81
|
-
if (element.type === 'table') {
|
|
82
|
-
const tableElement = element;
|
|
83
|
-
columnOrderVector = BinDucElement.createTableColumnOrderVector(builder, tableElement.columnOrder.map(id => builder.createString(id)));
|
|
84
|
-
rowOrderVector = BinDucElement.createTableRowOrderVector(builder, tableElement.rowOrder.map(id => builder.createString(id)));
|
|
85
|
-
columnsVector = BinDucElement.createTableColumnsVector(builder, Object.values(tableElement.columns).map(col => serializeDucTableColumn(builder, col, forRenderer)));
|
|
86
|
-
rowsVector = BinDucElement.createTableRowsVector(builder, Object.values(tableElement.rows).map(row => serializeDucTableRow(builder, row, forRenderer)));
|
|
87
|
-
cellsVector = BinDucElement.createTableCellsVector(builder, Object.values(tableElement.cells).map(cell => serializeDucTableCell(builder, cell, forRenderer)));
|
|
88
|
-
if (tableElement.style) {
|
|
89
|
-
const stylePropsOffset = serializeDucTableStyleProps(builder, tableElement.style, forRenderer);
|
|
90
|
-
BinDucTableStyle.startDucTableStyle(builder);
|
|
91
|
-
BinDucTableStyle.addDefaultProps(builder, stylePropsOffset);
|
|
92
|
-
tableStyleOffset = BinDucTableStyle.endDucTableStyle(builder);
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
// Pre-create all vector offsets and child objects
|
|
96
|
-
const groupIdOffsets = element.groupIds.map(groupId => builder.createString(groupId));
|
|
97
|
-
const groupIdsVector = element.groupIds.length > 0
|
|
98
|
-
? BinDucElement.createGroupIdsVector(builder, groupIdOffsets)
|
|
99
|
-
: undefined;
|
|
100
|
-
const boundElementOffsets = (_d = (_c = element.boundElements) === null || _c === void 0 ? void 0 : _c.map(boundElement => {
|
|
101
|
-
const boundIdOffset = builder.createString(boundElement.id);
|
|
102
|
-
const boundTypeOffset = builder.createString(boundElement.type);
|
|
103
|
-
return BinBoundElement.createBoundElement(builder, boundIdOffset, boundTypeOffset);
|
|
104
|
-
})) !== null && _d !== void 0 ? _d : [];
|
|
105
|
-
const boundElementsVector = boundElementOffsets.length > 0
|
|
106
|
-
? BinDucElement.createBoundElementsVector(builder, boundElementOffsets)
|
|
107
|
-
: undefined;
|
|
108
|
-
const strokeOffsets = (_f = (_e = element.stroke) === null || _e === void 0 ? void 0 : _e.map(stroke => serializeElementStroke(builder, stroke, forRenderer))) !== null && _f !== void 0 ? _f : [];
|
|
109
|
-
const strokeVector = strokeOffsets.length > 0
|
|
110
|
-
? BinDucElement.createStrokeVector(builder, strokeOffsets)
|
|
111
|
-
: undefined;
|
|
112
|
-
const backgroundOffsets = (_h = (_g = element.background) === null || _g === void 0 ? void 0 : _g.map(bg => serializeElementBackground(builder, bg))) !== null && _h !== void 0 ? _h : [];
|
|
113
|
-
const backgroundVector = backgroundOffsets.length > 0
|
|
114
|
-
? BinDucElement.createBackgroundVector(builder, backgroundOffsets)
|
|
115
|
-
: undefined;
|
|
116
|
-
let pointsVector;
|
|
117
|
-
let lastCommittedPointOffset;
|
|
118
|
-
let pressuresVector;
|
|
119
|
-
if ((element.type === 'freedraw' || element.type === 'arrow' || element.type === 'line') && element.points) {
|
|
120
|
-
const points = element.points.map(p => serializeDucPoint(builder, p, forRenderer));
|
|
121
|
-
pointsVector = BinDucElement.createLinearElementPointsVector(builder, points);
|
|
122
|
-
lastCommittedPointOffset = element.lastCommittedPoint ? serializeDucPoint(builder, element.lastCommittedPoint, forRenderer) : undefined;
|
|
123
|
-
}
|
|
124
|
-
if (element.type === 'freedraw' && element.pressures) {
|
|
125
|
-
pressuresVector = BinDucElement.createFreeDrawPressuresVector(builder, Array.from(element.pressures).map(p => ensureFiniteNumber(p)));
|
|
126
|
-
}
|
|
127
|
-
let linesVector;
|
|
128
|
-
let pathOverridesVector;
|
|
129
|
-
if (isLinearElement(element)) {
|
|
130
|
-
const lines = element.lines.map(line => serializeDucLine(builder, line, forRenderer));
|
|
131
|
-
linesVector = BinDucElement.createLinearElementLinesVector(builder, lines);
|
|
132
|
-
if (element.pathOverrides && element.pathOverrides.length > 0) {
|
|
133
|
-
const pathOverrides = element.pathOverrides.map(path => serializeDucPath(builder, path, forRenderer));
|
|
134
|
-
pathOverridesVector = BinDucElement.createLinearElementPathOverridesVector(builder, pathOverrides);
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
let startBindingOffset;
|
|
138
|
-
let endBindingOffset;
|
|
139
|
-
if (element.type === 'line' || element.type === 'arrow') {
|
|
140
|
-
startBindingOffset = element.startBinding ? serializeDucPointBinding(builder, element.startBinding, forRenderer) : undefined;
|
|
141
|
-
endBindingOffset = element.endBinding ? serializeDucPointBinding(builder, element.endBinding, forRenderer) : undefined;
|
|
142
|
-
}
|
|
143
|
-
let imageScaleOffset;
|
|
144
|
-
let imageCropOffset;
|
|
145
|
-
if (element.type === 'image') {
|
|
146
|
-
imageScaleOffset = BinSimplePoint.createSimplePoint(builder, ensureFiniteNumber((_j = element.scale) === null || _j === void 0 ? void 0 : _j[0], 1), ensureFiniteNumber((_k = element.scale) === null || _k === void 0 ? void 0 : _k[1], 1));
|
|
147
|
-
imageCropOffset = element.crop ? serializeImageCrop(builder, element.crop) : undefined;
|
|
148
|
-
}
|
|
149
|
-
// Pre-create frame/magicframe override objects
|
|
150
|
-
let strokeOverrideOffset;
|
|
151
|
-
let backgroundOverrideOffset;
|
|
152
|
-
if (element.type === 'frame') {
|
|
153
|
-
const frameLikeElement = element;
|
|
154
|
-
if (frameLikeElement.strokeOverride) {
|
|
155
|
-
strokeOverrideOffset = serializeElementStroke(builder, frameLikeElement.strokeOverride, forRenderer);
|
|
156
|
-
}
|
|
157
|
-
if (frameLikeElement.backgroundOverride) {
|
|
158
|
-
backgroundOverrideOffset = serializeElementBackground(builder, frameLikeElement.backgroundOverride);
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
BinDucElement.startDucElement(builder);
|
|
162
|
-
BinDucElement.addId(builder, idOffset);
|
|
163
|
-
BinDucElement.addType(builder, typeOffset);
|
|
164
|
-
element.x && BinDucElement.addX(builder, getPrecisionValueField(element.x, forRenderer));
|
|
165
|
-
element.y && BinDucElement.addY(builder, getPrecisionValueField(element.y, forRenderer));
|
|
166
|
-
BinDucElement.addScope(builder, scopeOffset);
|
|
167
|
-
labelOffset && BinDucElement.addLabel(builder, labelOffset);
|
|
168
|
-
BinDucElement.addIsVisible(builder, element.isVisible !== undefined ? element.isVisible : true);
|
|
169
|
-
BinDucElement.addOpacity(builder, element.opacity);
|
|
170
|
-
element.width && BinDucElement.addWidth(builder, getPrecisionValueField(element.width, forRenderer));
|
|
171
|
-
element.height && BinDucElement.addHeight(builder, getPrecisionValueField(element.height, forRenderer));
|
|
172
|
-
BinDucElement.addAngle(builder, element.angle);
|
|
173
|
-
BinDucElement.addIsDeleted(builder, element.isDeleted || false);
|
|
174
|
-
frameIdOffset && BinDucElement.addFrameId(builder, frameIdOffset);
|
|
175
|
-
linkOffset && BinDucElement.addLink(builder, linkOffset);
|
|
176
|
-
BinDucElement.addLocked(builder, element.locked || false);
|
|
177
|
-
groupIdsVector && BinDucElement.addGroupIds(builder, groupIdsVector);
|
|
178
|
-
boundElementsVector && BinDucElement.addBoundElements(builder, boundElementsVector);
|
|
179
|
-
strokeVector && BinDucElement.addStroke(builder, strokeVector);
|
|
180
|
-
backgroundVector && BinDucElement.addBackground(builder, backgroundVector);
|
|
181
|
-
element.blending !== undefined && BinDucElement.addBlending(builder, element.blending);
|
|
182
|
-
element.zIndex !== undefined && BinDucElement.addZIndex(builder, element.zIndex);
|
|
183
|
-
element.roundness && BinDucElement.addRoundness(builder, getPrecisionValueField(element.roundness, forRenderer));
|
|
184
|
-
element.subset !== undefined && element.subset !== null && BinDucElement.addSubset(builder, element.subset);
|
|
185
|
-
descriptionOffset && BinDucElement.addDescription(builder, descriptionOffset);
|
|
186
|
-
element.noPlot !== undefined && BinDucElement.addNoPlot(builder, element.noPlot);
|
|
187
|
-
if (element.type === 'polygon') {
|
|
188
|
-
element.sides && BinDucElement.addPolygonSides(builder, element.sides);
|
|
189
|
-
}
|
|
190
|
-
if (element.type === 'text') {
|
|
191
|
-
element.fontSize && BinDucElement.addTextFontSize(builder, getPrecisionValueField(element.fontSize, forRenderer));
|
|
192
|
-
fontFamilyOffset && BinDucElement.addTextFontFamily(builder, fontFamilyOffset);
|
|
193
|
-
textOffset && BinDucElement.addTextText(builder, textOffset);
|
|
194
|
-
element.textAlign && BinDucElement.addTextTextAlign(builder, element.textAlign);
|
|
195
|
-
element.verticalAlign && BinDucElement.addTextVerticalAlign(builder, element.verticalAlign);
|
|
196
|
-
containerIdOffset && BinDucElement.addTextContainerId(builder, containerIdOffset);
|
|
197
|
-
element.lineHeight !== undefined && BinDucElement.addTextLineHeight(builder, element.lineHeight);
|
|
198
|
-
element.autoResize !== undefined && BinDucElement.addTextAutoResize(builder, element.autoResize);
|
|
199
|
-
}
|
|
200
|
-
if (element.type === 'line' || element.type === 'arrow') {
|
|
201
|
-
pointsVector && BinDucElement.addLinearElementPoints(builder, pointsVector);
|
|
202
|
-
linesVector && BinDucElement.addLinearElementLines(builder, linesVector);
|
|
203
|
-
pathOverridesVector && BinDucElement.addLinearElementPathOverrides(builder, pathOverridesVector);
|
|
204
|
-
lastCommittedPointOffset && BinDucElement.addLinearElementLastCommittedPoint(builder, lastCommittedPointOffset);
|
|
205
|
-
startBindingOffset && BinDucElement.addLinearElementStartBinding(builder, startBindingOffset);
|
|
206
|
-
endBindingOffset && BinDucElement.addLinearElementEndBinding(builder, endBindingOffset);
|
|
207
|
-
if (element.type === 'arrow' && element.elbowed !== undefined) {
|
|
208
|
-
BinDucElement.addArrowElbowed(builder, element.elbowed);
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
if (element.type === 'freedraw') {
|
|
212
|
-
pressuresVector && BinDucElement.addFreeDrawPressures(builder, pressuresVector);
|
|
213
|
-
element.simulatePressure !== undefined && BinDucElement.addFreeDrawSimulatePressure(builder, element.simulatePressure);
|
|
214
|
-
lastCommittedPointOffset && BinDucElement.addLinearElementLastCommittedPoint(builder, lastCommittedPointOffset);
|
|
215
|
-
pointsVector && BinDucElement.addLinearElementPoints(builder, pointsVector);
|
|
216
|
-
element.size !== undefined && BinDucElement.addFreeDrawSize(builder, getPrecisionValueField(element.size, forRenderer));
|
|
217
|
-
element.thinning !== undefined && BinDucElement.addFreeDrawThinning(builder, element.thinning);
|
|
218
|
-
element.smoothing !== undefined && BinDucElement.addFreeDrawSmoothing(builder, element.smoothing);
|
|
219
|
-
element.streamline !== undefined && BinDucElement.addFreeDrawStreamline(builder, element.streamline);
|
|
220
|
-
freedrawEasingOffset && BinDucElement.addFreeDrawEasing(builder, freedrawEasingOffset);
|
|
221
|
-
((_l = element.start) === null || _l === void 0 ? void 0 : _l.cap) !== undefined && BinDucElement.addFreeDrawStartCap(builder, element.start.cap);
|
|
222
|
-
((_m = element.start) === null || _m === void 0 ? void 0 : _m.taper) !== undefined && BinDucElement.addFreeDrawStartTaper(builder, element.start.taper);
|
|
223
|
-
freedrawStartEasingOffset && BinDucElement.addFreeDrawStartEasing(builder, freedrawStartEasingOffset);
|
|
224
|
-
((_o = element.end) === null || _o === void 0 ? void 0 : _o.cap) !== undefined && BinDucElement.addFreeDrawEndCap(builder, element.end.cap);
|
|
225
|
-
((_p = element.end) === null || _p === void 0 ? void 0 : _p.taper) !== undefined && BinDucElement.addFreeDrawEndTaper(builder, element.end.taper);
|
|
226
|
-
freedrawEndEasingOffset && BinDucElement.addFreeDrawEndEasing(builder, freedrawEndEasingOffset);
|
|
227
|
-
freedrawSvgPathOffset && BinDucElement.addFreeDrawSvgPath(builder, freedrawSvgPathOffset);
|
|
228
|
-
}
|
|
229
|
-
if (element.type === 'image') {
|
|
230
|
-
fileIdOffset && BinDucElement.addFileId(builder, fileIdOffset);
|
|
231
|
-
statusOffset && BinDucElement.addImageStatus(builder, statusOffset);
|
|
232
|
-
imageScaleOffset && BinDucElement.addImageScale(builder, imageScaleOffset);
|
|
233
|
-
imageCropOffset && BinDucElement.addImageCrop(builder, imageCropOffset);
|
|
234
|
-
}
|
|
235
|
-
if (element.type === 'frame') {
|
|
236
|
-
const frameLikeElement = element;
|
|
237
|
-
frameLikeElement.isCollapsed !== undefined && BinDucElement.addStackLikeIsCollapsed(builder, frameLikeElement.isCollapsed);
|
|
238
|
-
frameLikeElement.clip !== undefined && BinDucElement.addStackLikeClip(builder, frameLikeElement.clip);
|
|
239
|
-
// Add pre-created stack-like fields
|
|
240
|
-
labelingColorOffset && BinDucElement.addStackLikeLabelingColor(builder, labelingColorOffset);
|
|
241
|
-
strokeOverrideOffset && BinDucElement.addStackLikeStrokeOverride(builder, strokeOverrideOffset);
|
|
242
|
-
backgroundOverrideOffset && BinDucElement.addStackLikeBackgroundOverride(builder, backgroundOverrideOffset);
|
|
243
|
-
}
|
|
244
|
-
if (element.type === 'table') {
|
|
245
|
-
columnOrderVector && BinDucElement.addTableColumnOrder(builder, columnOrderVector);
|
|
246
|
-
rowOrderVector && BinDucElement.addTableRowOrder(builder, rowOrderVector);
|
|
247
|
-
columnsVector && BinDucElement.addTableColumns(builder, columnsVector);
|
|
248
|
-
rowsVector && BinDucElement.addTableRows(builder, rowsVector);
|
|
249
|
-
cellsVector && BinDucElement.addTableCells(builder, cellsVector);
|
|
250
|
-
tableStyleOffset && BinDucElement.addTableStyle(builder, tableStyleOffset);
|
|
251
|
-
}
|
|
252
|
-
if (element.type === 'doc') {
|
|
253
|
-
docContentOffset && BinDucElement.addDocContent(builder, docContentOffset);
|
|
254
|
-
}
|
|
255
|
-
if (element.type === 'ellipse') {
|
|
256
|
-
element.ratio !== undefined && BinDucElement.addEllipseRatio(builder, element.ratio);
|
|
257
|
-
element.startAngle !== undefined && BinDucElement.addEllipseStartAngle(builder, element.startAngle);
|
|
258
|
-
element.endAngle !== undefined && BinDucElement.addEllipseEndAngle(builder, element.endAngle);
|
|
259
|
-
element.showAuxCrosshair !== undefined && BinDucElement.addEllipseShowAuxCrosshair(builder, element.showAuxCrosshair);
|
|
260
|
-
}
|
|
261
|
-
if (element.type === 'blockinstance') {
|
|
262
|
-
blockIdOffset && BinDucElement.addBlockInstanceBlockId(builder, blockIdOffset);
|
|
263
|
-
overridesVector && BinDucElement.addBlockInstanceElementOverrides(builder, overridesVector);
|
|
264
|
-
}
|
|
265
|
-
return BinDucElement.endDucElement(builder);
|
|
266
|
-
};
|
|
267
|
-
export const serializeDucPoint = (builder, point, forRenderer) => {
|
|
268
|
-
BinPoint.startPoint(builder);
|
|
269
|
-
point.x !== undefined && BinPoint.addXV3(builder, getPrecisionValueField(point.x, forRenderer));
|
|
270
|
-
point.y !== undefined && BinPoint.addYV3(builder, getPrecisionValueField(point.y, forRenderer));
|
|
271
|
-
point.mirroring !== undefined && BinPoint.addMirroring(builder, point.mirroring);
|
|
272
|
-
return BinPoint.endPoint(builder);
|
|
273
|
-
};
|
|
274
|
-
const serializeDucLineReference = (builder, lineRef, forRenderer) => {
|
|
275
|
-
const handleOffset = lineRef.handle ? BinSimplePoint.createSimplePoint(builder, getPrecisionValueField(lineRef.handle.x, forRenderer), getPrecisionValueField(lineRef.handle.y, forRenderer)) : undefined;
|
|
276
|
-
BinDucLineReference.startDucLineReference(builder);
|
|
277
|
-
BinDucLineReference.addIndex(builder, lineRef.index);
|
|
278
|
-
handleOffset && BinDucLineReference.addHandle(builder, handleOffset);
|
|
279
|
-
return BinDucLineReference.endDucLineReference(builder);
|
|
280
|
-
};
|
|
281
|
-
const serializeDucLine = (builder, line, forRenderer) => {
|
|
282
|
-
const startOffset = serializeDucLineReference(builder, line[0], forRenderer);
|
|
283
|
-
const endOffset = serializeDucLineReference(builder, line[1], forRenderer);
|
|
284
|
-
BinDucLine.startDucLine(builder);
|
|
285
|
-
BinDucLine.addStart(builder, startOffset);
|
|
286
|
-
BinDucLine.addEnd(builder, endOffset);
|
|
287
|
-
return BinDucLine.endDucLine(builder);
|
|
288
|
-
};
|
|
289
|
-
const serializeDucPath = (builder, path, forRenderer) => {
|
|
290
|
-
const lineIndicesVector = BinDucPath.createLineIndicesVector(builder, Array.from(path.lineIndices));
|
|
291
|
-
const backgroundOffset = path.background ? serializeElementBackground(builder, path.background) : undefined;
|
|
292
|
-
const strokeOffset = path.stroke ? serializeElementStroke(builder, path.stroke, forRenderer) : undefined;
|
|
293
|
-
BinDucPath.startDucPath(builder);
|
|
294
|
-
BinDucPath.addLineIndices(builder, lineIndicesVector);
|
|
295
|
-
backgroundOffset && BinDucPath.addBackground(builder, backgroundOffset);
|
|
296
|
-
strokeOffset && BinDucPath.addStroke(builder, strokeOffset);
|
|
297
|
-
return BinDucPath.endDucPath(builder);
|
|
298
|
-
};
|
|
299
|
-
export const serializeDucPointBinding = (builder, pointBinding, forRenderer) => {
|
|
300
|
-
const elementIdOffset = builder.createString(pointBinding.elementId || '');
|
|
301
|
-
const fixedPointOffset = pointBinding.fixedPoint ?
|
|
302
|
-
BinSimplePoint.createSimplePoint(builder, ensureFiniteNumber(pointBinding.fixedPoint.x, 0.5), ensureFiniteNumber(pointBinding.fixedPoint.y, 0.5)) : undefined;
|
|
303
|
-
let bindingPointOffset;
|
|
304
|
-
if (pointBinding.point) {
|
|
305
|
-
BinBindingPoint.startBindingPoint(builder);
|
|
306
|
-
BinBindingPoint.addIndex(builder, ensureFiniteNumber(pointBinding.point.index));
|
|
307
|
-
BinBindingPoint.addOffset(builder, ensureFiniteNumber(pointBinding.point.offset));
|
|
308
|
-
bindingPointOffset = BinBindingPoint.endBindingPoint(builder);
|
|
309
|
-
}
|
|
310
|
-
BinPointBinding.startPointBinding(builder);
|
|
311
|
-
BinPointBinding.addElementId(builder, elementIdOffset);
|
|
312
|
-
pointBinding.focus !== undefined && BinPointBinding.addFocus(builder, pointBinding.focus);
|
|
313
|
-
pointBinding.gap && BinPointBinding.addGap(builder, getPrecisionValueField(pointBinding.gap, forRenderer));
|
|
314
|
-
fixedPointOffset && BinPointBinding.addFixedPoint(builder, fixedPointOffset);
|
|
315
|
-
bindingPointOffset && BinPointBinding.addPoint(builder, bindingPointOffset);
|
|
316
|
-
pointBinding.head !== undefined && pointBinding.head !== null && BinPointBinding.addHead(builder, pointBinding.head);
|
|
317
|
-
return BinPointBinding.endPointBinding(builder);
|
|
318
|
-
};
|
|
319
|
-
const serializeTilingProperties = (builder, tiling) => {
|
|
320
|
-
BinTilingProperties.startTilingProperties(builder);
|
|
321
|
-
tiling.angle !== undefined && BinTilingProperties.addAngle(builder, tiling.angle);
|
|
322
|
-
tiling.offsetX !== undefined && BinTilingProperties.addOffsetX(builder, tiling.offsetX);
|
|
323
|
-
tiling.offsetY !== undefined && BinTilingProperties.addOffsetY(builder, tiling.offsetY);
|
|
324
|
-
return BinTilingProperties.endTilingProperties(builder);
|
|
325
|
-
};
|
|
326
|
-
const serializeElementContentBase = (builder, content) => {
|
|
327
|
-
const srcOffset = builder.createString(content.src || '');
|
|
328
|
-
const tilingOffset = content.tiling ? serializeTilingProperties(builder, content.tiling) : undefined;
|
|
329
|
-
BinElementContentBase.startElementContentBase(builder);
|
|
330
|
-
BinElementContentBase.addPreference(builder, content.preference);
|
|
331
|
-
BinElementContentBase.addSrc(builder, srcOffset);
|
|
332
|
-
BinElementContentBase.addVisible(builder, content.visible !== undefined ? content.visible : true);
|
|
333
|
-
content.opacity !== undefined && BinElementContentBase.addOpacity(builder, content.opacity);
|
|
334
|
-
tilingOffset && BinElementContentBase.addTiling(builder, tilingOffset);
|
|
335
|
-
return BinElementContentBase.endElementContentBase(builder);
|
|
336
|
-
};
|
|
337
|
-
const serializeStrokeStyle = (builder, style) => {
|
|
338
|
-
const dashVector = style.dash && style.dash.length > 0
|
|
339
|
-
? BinStrokeStyle.createDashVector(builder, style.dash.map(d => ensureFiniteNumber(d)))
|
|
340
|
-
: undefined;
|
|
341
|
-
BinStrokeStyle.startStrokeStyle(builder);
|
|
342
|
-
style.preference !== undefined && BinStrokeStyle.addPreference(builder, style.preference);
|
|
343
|
-
style.cap !== undefined && BinStrokeStyle.addCap(builder, style.cap);
|
|
344
|
-
style.join !== undefined && BinStrokeStyle.addJoin(builder, style.join);
|
|
345
|
-
dashVector && BinStrokeStyle.addDash(builder, dashVector);
|
|
346
|
-
style.miterLimit !== undefined && BinStrokeStyle.addMiterLimit(builder, style.miterLimit);
|
|
347
|
-
return BinStrokeStyle.endStrokeStyle(builder);
|
|
348
|
-
};
|
|
349
|
-
const serializeStrokeSides = (builder, sides) => {
|
|
350
|
-
if (!sides)
|
|
351
|
-
return undefined;
|
|
352
|
-
const valuesVector = sides.values && sides.values.length > 0
|
|
353
|
-
? BinStrokeSides.createValuesVector(builder, sides.values.map(v => ensureFiniteNumber(v)))
|
|
354
|
-
: undefined;
|
|
355
|
-
BinStrokeSides.startStrokeSides(builder);
|
|
356
|
-
BinStrokeSides.addPreference(builder, sides.preference);
|
|
357
|
-
valuesVector && BinStrokeSides.addValues(builder, valuesVector);
|
|
358
|
-
return BinStrokeSides.endStrokeSides(builder);
|
|
359
|
-
};
|
|
360
|
-
export const serializeElementStroke = (builder, stroke, forRenderer) => {
|
|
361
|
-
const contentOffset = serializeElementContentBase(builder, stroke.content);
|
|
362
|
-
const styleOffset = serializeStrokeStyle(builder, stroke.style);
|
|
363
|
-
const strokeSidesOffset = serializeStrokeSides(builder, stroke.strokeSides);
|
|
364
|
-
BinElementStroke.startElementStroke(builder);
|
|
365
|
-
BinElementStroke.addContent(builder, contentOffset);
|
|
366
|
-
stroke.placement !== undefined && BinElementStroke.addPlacement(builder, stroke.placement);
|
|
367
|
-
stroke.width && BinElementStroke.addWidth(builder, getPrecisionValueField(stroke.width, forRenderer));
|
|
368
|
-
styleOffset && BinElementStroke.addStyle(builder, styleOffset);
|
|
369
|
-
strokeSidesOffset && BinElementStroke.addStrokeSides(builder, strokeSidesOffset);
|
|
370
|
-
return BinElementStroke.endElementStroke(builder);
|
|
371
|
-
};
|
|
372
|
-
export const serializeElementBackground = (builder, background) => {
|
|
373
|
-
const contentOffset = serializeElementContentBase(builder, background.content);
|
|
374
|
-
BinElementBackground.startElementBackground(builder);
|
|
375
|
-
BinElementBackground.addContent(builder, contentOffset);
|
|
376
|
-
return BinElementBackground.endElementBackground(builder);
|
|
377
|
-
};
|
|
378
|
-
const serializeImageCrop = (builder, crop) => {
|
|
379
|
-
BinImageCrop.startImageCrop(builder);
|
|
380
|
-
crop.x !== undefined && BinImageCrop.addX(builder, ensureFiniteNumber(crop.x));
|
|
381
|
-
crop.y !== undefined && BinImageCrop.addY(builder, ensureFiniteNumber(crop.y));
|
|
382
|
-
crop.width !== undefined && BinImageCrop.addWidth(builder, ensureFiniteNumber(crop.width, 1));
|
|
383
|
-
crop.height !== undefined && BinImageCrop.addHeight(builder, ensureFiniteNumber(crop.height, 1));
|
|
384
|
-
return BinImageCrop.endImageCrop(builder);
|
|
385
|
-
};
|
|
386
|
-
const serializeDucTableStyleProps = (builder, styleProps, forRenderer) => {
|
|
387
|
-
var _a, _b, _c, _d, _e, _f, _g;
|
|
388
|
-
const backgroundColorOffset = styleProps.background ? builder.createString(styleProps.background) : undefined;
|
|
389
|
-
const borderColorOffset = ((_a = styleProps.border) === null || _a === void 0 ? void 0 : _a.color) ? builder.createString(styleProps.border.color) : undefined;
|
|
390
|
-
const textColorOffset = ((_b = styleProps.text) === null || _b === void 0 ? void 0 : _b.color) ? builder.createString(styleProps.text.color) : undefined;
|
|
391
|
-
const textFontOffset = ((_c = styleProps.text) === null || _c === void 0 ? void 0 : _c.font) ? builder.createString(styleProps.text.font) : undefined;
|
|
392
|
-
const borderDashesVector = ((_d = styleProps.border) === null || _d === void 0 ? void 0 : _d.dashes) && styleProps.border.dashes.length > 0
|
|
393
|
-
? BinDucTableStyleProps.createBorderDashesVector(builder, styleProps.border.dashes.map(d => ensureFiniteNumber(d)))
|
|
394
|
-
: undefined;
|
|
395
|
-
BinDucTableStyleProps.startDucTableStyleProps(builder);
|
|
396
|
-
backgroundColorOffset && BinDucTableStyleProps.addBackgroundColor(builder, backgroundColorOffset);
|
|
397
|
-
((_e = styleProps.border) === null || _e === void 0 ? void 0 : _e.width) && BinDucTableStyleProps.addBorderWidth(builder, getPrecisionValueField(styleProps.border.width, forRenderer));
|
|
398
|
-
borderDashesVector && BinDucTableStyleProps.addBorderDashes(builder, borderDashesVector);
|
|
399
|
-
borderColorOffset && BinDucTableStyleProps.addBorderColor(builder, borderColorOffset);
|
|
400
|
-
textColorOffset && BinDucTableStyleProps.addTextColor(builder, textColorOffset);
|
|
401
|
-
((_f = styleProps.text) === null || _f === void 0 ? void 0 : _f.size) && BinDucTableStyleProps.addTextSize(builder, getPrecisionValueField(styleProps.text.size, forRenderer));
|
|
402
|
-
textFontOffset && BinDucTableStyleProps.addTextFont(builder, textFontOffset);
|
|
403
|
-
((_g = styleProps.text) === null || _g === void 0 ? void 0 : _g.align) && BinDucTableStyleProps.addTextAlign(builder, styleProps.text.align);
|
|
404
|
-
return BinDucTableStyleProps.endDucTableStyleProps(builder);
|
|
405
|
-
};
|
|
406
|
-
const serializeDucTableColumn = (builder, column, forRenderer) => {
|
|
407
|
-
const idOffset = builder.createString(column.id);
|
|
408
|
-
const styleOffset = column.style ? serializeDucTableStyleProps(builder, column.style, forRenderer) : undefined;
|
|
409
|
-
BinDucTableColumn.startDucTableColumn(builder);
|
|
410
|
-
BinDucTableColumn.addId(builder, idOffset);
|
|
411
|
-
column.width && BinDucTableColumn.addWidth(builder, getPrecisionValueField(column.width, forRenderer));
|
|
412
|
-
styleOffset && BinDucTableColumn.addStyle(builder, styleOffset);
|
|
413
|
-
return BinDucTableColumn.endDucTableColumn(builder);
|
|
414
|
-
};
|
|
415
|
-
const serializeDucTableRow = (builder, row, forRenderer) => {
|
|
416
|
-
const idOffset = builder.createString(row.id);
|
|
417
|
-
const styleOffset = row.style ? serializeDucTableStyleProps(builder, row.style, forRenderer) : undefined;
|
|
418
|
-
BinDucTableRow.startDucTableRow(builder);
|
|
419
|
-
BinDucTableRow.addId(builder, idOffset);
|
|
420
|
-
row.height && BinDucTableRow.addHeight(builder, getPrecisionValueField(row.height, forRenderer));
|
|
421
|
-
styleOffset && BinDucTableRow.addStyle(builder, styleOffset);
|
|
422
|
-
return BinDucTableRow.endDucTableRow(builder);
|
|
423
|
-
};
|
|
424
|
-
const serializeDucTableCell = (builder, cell, forRenderer) => {
|
|
425
|
-
const rowIdOffset = builder.createString(cell.rowId);
|
|
426
|
-
const columnIdOffset = builder.createString(cell.columnId);
|
|
427
|
-
const dataOffset = builder.createString(cell.data);
|
|
428
|
-
const styleOffset = cell.style ? serializeDucTableStyleProps(builder, cell.style, forRenderer) : undefined;
|
|
429
|
-
BinDucTableCell.startDucTableCell(builder);
|
|
430
|
-
BinDucTableCell.addRowId(builder, rowIdOffset);
|
|
431
|
-
BinDucTableCell.addColumnId(builder, columnIdOffset);
|
|
432
|
-
BinDucTableCell.addData(builder, dataOffset);
|
|
433
|
-
styleOffset && BinDucTableCell.addStyle(builder, styleOffset);
|
|
434
|
-
return BinDucTableCell.endDucTableCell(builder);
|
|
435
|
-
};
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { DucGroup as BinDucGroup, } from '../duc';
|
|
2
|
-
import { serializeElementStroke, serializeElementBackground } from './serializeElementFromDuc';
|
|
3
|
-
export const serializeDucGroup = (builder, group, forRenderer = false) => {
|
|
4
|
-
// Create string offsets
|
|
5
|
-
const idOffset = builder.createString(group.id);
|
|
6
|
-
const labelOffset = builder.createString(group.label);
|
|
7
|
-
const descriptionOffset = group.description ? builder.createString(group.description) : null;
|
|
8
|
-
const labelingColorOffset = builder.createString(group.labelingColor);
|
|
9
|
-
// Serialize stroke and background overrides
|
|
10
|
-
const strokeOverrideOffset = group.strokeOverride
|
|
11
|
-
? serializeElementStroke(builder, group.strokeOverride, forRenderer)
|
|
12
|
-
: null;
|
|
13
|
-
const backgroundOverrideOffset = group.backgroundOverride
|
|
14
|
-
? serializeElementBackground(builder, group.backgroundOverride)
|
|
15
|
-
: null;
|
|
16
|
-
// Create the group
|
|
17
|
-
BinDucGroup.startDucGroup(builder);
|
|
18
|
-
BinDucGroup.addId(builder, idOffset);
|
|
19
|
-
BinDucGroup.addLabel(builder, labelOffset);
|
|
20
|
-
if (descriptionOffset) {
|
|
21
|
-
BinDucGroup.addDescription(builder, descriptionOffset);
|
|
22
|
-
}
|
|
23
|
-
BinDucGroup.addIsCollapsed(builder, group.isCollapsed);
|
|
24
|
-
BinDucGroup.addNoPlot(builder, group.noPlot);
|
|
25
|
-
BinDucGroup.addLocked(builder, group.locked);
|
|
26
|
-
BinDucGroup.addIsVisible(builder, group.isVisible);
|
|
27
|
-
BinDucGroup.addOpacity(builder, group.opacity);
|
|
28
|
-
BinDucGroup.addLabelingColor(builder, labelingColorOffset);
|
|
29
|
-
if (strokeOverrideOffset) {
|
|
30
|
-
BinDucGroup.addStrokeOverride(builder, strokeOverrideOffset);
|
|
31
|
-
}
|
|
32
|
-
if (backgroundOverrideOffset) {
|
|
33
|
-
BinDucGroup.addBackgroundOverride(builder, backgroundOverrideOffset);
|
|
34
|
-
}
|
|
35
|
-
BinDucGroup.addClip(builder, group.clip);
|
|
36
|
-
return BinDucGroup.endDucGroup(builder);
|
|
37
|
-
};
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { RendererState } from '../duc';
|
|
2
|
-
export const serializeRendererState = (builder, rendererState) => {
|
|
3
|
-
const deletedElementIdsOffset = RendererState.createDeletedElementIdsVector(builder, rendererState.deletedElementIds.map((id) => builder.createString(id)));
|
|
4
|
-
RendererState.startRendererState(builder);
|
|
5
|
-
RendererState.addDeletedElementIds(builder, deletedElementIdsOffset);
|
|
6
|
-
return RendererState.endRendererState(builder);
|
|
7
|
-
};
|