@contrail/documents 1.0.120 → 1.0.121
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/lib/document-element-factory.js +15 -13
- package/package.json +1 -1
|
@@ -35,7 +35,7 @@ class DocumentElementFactory {
|
|
|
35
35
|
let element = this.initNewElement(type);
|
|
36
36
|
element = Object.assign(element, options);
|
|
37
37
|
if (((_a = element === null || element === void 0 ? void 0 : element.elements) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
38
|
-
element.elements = element.elements.map(
|
|
38
|
+
element.elements = element.elements.map(e => {
|
|
39
39
|
e.id = (0, nanoid_1.nanoid)(16);
|
|
40
40
|
return e;
|
|
41
41
|
});
|
|
@@ -55,8 +55,10 @@ class DocumentElementFactory {
|
|
|
55
55
|
static createColorComponent(model, modelBindings, options) {
|
|
56
56
|
var _a;
|
|
57
57
|
return DocumentElementFactory.createComponent(((_a = model === null || model === void 0 ? void 0 : model.color) === null || _a === void 0 ? void 0 : _a.primaryViewableId) ? 'pattern-view' : 'color-view', model, modelBindings, Object.assign({
|
|
58
|
-
size:
|
|
59
|
-
|
|
58
|
+
size: {
|
|
59
|
+
width: components_1.COLOR_WIDTH + components_1.COLOR_PADDING * 2,
|
|
60
|
+
height: components_1.COLOR_WIDTH + components_1.COLOR_FONT_SIZE + components_1.COLOR_PADDING * 4,
|
|
61
|
+
},
|
|
60
62
|
}, options));
|
|
61
63
|
}
|
|
62
64
|
static createComponent(componentType, model, modelBindings, options) {
|
|
@@ -75,7 +77,7 @@ class DocumentElementFactory {
|
|
|
75
77
|
element.elements = elements;
|
|
76
78
|
element.modelBindings = modelBindings;
|
|
77
79
|
if (((_a = element === null || element === void 0 ? void 0 : element.elements) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
78
|
-
element.elements = element.elements.map(
|
|
80
|
+
element.elements = element.elements.map(e => {
|
|
79
81
|
e.id = (0, nanoid_1.nanoid)(16);
|
|
80
82
|
return e;
|
|
81
83
|
});
|
|
@@ -107,7 +109,7 @@ class DocumentElementFactory {
|
|
|
107
109
|
}
|
|
108
110
|
const newInnerElements = [];
|
|
109
111
|
if (newElement.type === 'table') {
|
|
110
|
-
const oldChildElements = elements.filter(
|
|
112
|
+
const oldChildElements = elements.filter(e => e.tableId === element.id && ['cell', 'column', 'row'].indexOf(e.type) !== -1);
|
|
111
113
|
let newTableElement, newChildElements = [];
|
|
112
114
|
try {
|
|
113
115
|
[newTableElement, ...newChildElements] = document_table_1.TableCopyService.copy(newElement, oldChildElements);
|
|
@@ -118,7 +120,7 @@ class DocumentElementFactory {
|
|
|
118
120
|
continue;
|
|
119
121
|
}
|
|
120
122
|
newElement = newTableElement;
|
|
121
|
-
newChildElements.forEach(
|
|
123
|
+
newChildElements.forEach(newChildElement => {
|
|
122
124
|
var _a;
|
|
123
125
|
let oldChildId;
|
|
124
126
|
if (newChildElement.type === 'row') {
|
|
@@ -130,7 +132,7 @@ class DocumentElementFactory {
|
|
|
130
132
|
else if (newChildElement.type === 'cell') {
|
|
131
133
|
const oldRowId = element.rowIds[newTableElement.rowIds.indexOf(newChildElement.rowId)];
|
|
132
134
|
const oldColumnId = element.columnIds[newTableElement.columnIds.indexOf(newChildElement.columnId)];
|
|
133
|
-
oldChildId = (_a = elements.find(
|
|
135
|
+
oldChildId = (_a = elements.find(e => e.type === 'cell' && e.rowId === oldRowId && e.columnId === oldColumnId)) === null || _a === void 0 ? void 0 : _a.id;
|
|
134
136
|
}
|
|
135
137
|
if (oldChildId) {
|
|
136
138
|
newChildElement.documentId = documentId;
|
|
@@ -163,15 +165,15 @@ class DocumentElementFactory {
|
|
|
163
165
|
if (DocumentElementFactory.isMask(newElement))
|
|
164
166
|
maskElements.push(newElement);
|
|
165
167
|
}
|
|
166
|
-
groupElements.forEach(
|
|
168
|
+
groupElements.forEach(groupElement => {
|
|
167
169
|
groupElement.elementIds = groupElement.elementIds
|
|
168
|
-
.map(
|
|
169
|
-
.filter(
|
|
170
|
+
.map(oldElementId => oldIdToNewId.get(oldElementId))
|
|
171
|
+
.filter(id => !!id);
|
|
170
172
|
});
|
|
171
|
-
maskElements.forEach(
|
|
173
|
+
maskElements.forEach(maskElement => {
|
|
172
174
|
const newElementIds = maskElement.elementIds
|
|
173
|
-
.map(
|
|
174
|
-
.filter(
|
|
175
|
+
.map(oldElementId => oldIdToNewId.get(oldElementId))
|
|
176
|
+
.filter(id => !!id);
|
|
175
177
|
maskElement.elementIds = (newElementIds === null || newElementIds === void 0 ? void 0 : newElementIds.length) > 0 ? newElementIds : null;
|
|
176
178
|
});
|
|
177
179
|
return { oldIdToNewId, newElements };
|