@contrail/documents 1.0.110 → 1.0.111
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.
|
@@ -10,7 +10,7 @@ export declare class DocumentElementFactory {
|
|
|
10
10
|
static createFrameElement(options: DocumentElement): DocumentElement;
|
|
11
11
|
static createComponent(componentType: string, model: any, modelBindings: any, options?: DocumentElement): DocumentElement;
|
|
12
12
|
static createComponentFromComponentDefinition(componentDefinition: ComponentDefinition, model: any, modelBindings: any, options?: DocumentElement): DocumentElement;
|
|
13
|
-
static copyElements(elements: DocumentElement[],
|
|
13
|
+
static copyElements(elements: DocumentElement[], documentId?: string, commonOptions?: DocumentElement, positionOffset?: PositionDefinition, lastFrameNumber?: number): {
|
|
14
14
|
oldIdToNewId: Map<string, string>;
|
|
15
15
|
newElements: DocumentElement[];
|
|
16
16
|
};
|
|
@@ -75,7 +75,7 @@ class DocumentElementFactory {
|
|
|
75
75
|
}
|
|
76
76
|
return element;
|
|
77
77
|
}
|
|
78
|
-
static copyElements(elements, commonOptions = {},
|
|
78
|
+
static copyElements(elements, documentId, commonOptions = {}, positionOffset, lastFrameNumber) {
|
|
79
79
|
var _a;
|
|
80
80
|
const oldIdToNewId = new Map();
|
|
81
81
|
const newElements = [];
|
|
@@ -98,16 +98,19 @@ class DocumentElementFactory {
|
|
|
98
98
|
delete e.specifiedId;
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
|
-
|
|
101
|
+
const newInnerElements = [];
|
|
102
102
|
if (newElement.type === 'table') {
|
|
103
103
|
const oldChildElements = elements.filter(e => e.tableId === element.id && ['cell', 'column', 'row'].indexOf(e.type) !== -1);
|
|
104
|
-
|
|
105
|
-
|
|
104
|
+
let newTableElement, newChildElements = [];
|
|
105
|
+
try {
|
|
106
|
+
[newTableElement, ...newChildElements] = document_table_1.TableCopyService.copy(newElement, oldChildElements);
|
|
107
|
+
}
|
|
108
|
+
catch (e) { }
|
|
109
|
+
if (oldChildElements.length !== newChildElements.length || oldChildElements.length === 0) {
|
|
106
110
|
console.log(`Invalid table element to copy`, newElement, oldChildElements, newChildElements);
|
|
107
111
|
continue;
|
|
108
112
|
}
|
|
109
113
|
newElement = newTableElement;
|
|
110
|
-
newId = newTableElement.id;
|
|
111
114
|
newChildElements.forEach(newChildElement => {
|
|
112
115
|
var _a;
|
|
113
116
|
let oldChildId;
|
|
@@ -125,8 +128,8 @@ class DocumentElementFactory {
|
|
|
125
128
|
if (oldChildId) {
|
|
126
129
|
newChildElement.documentId = documentId;
|
|
127
130
|
newChildElement.specifiedId = newChildElement.id;
|
|
128
|
-
oldIdToNewId
|
|
129
|
-
|
|
131
|
+
oldIdToNewId.set(oldChildId, newChildElement.id);
|
|
132
|
+
newInnerElements.push(newChildElement);
|
|
130
133
|
}
|
|
131
134
|
});
|
|
132
135
|
}
|
|
@@ -142,11 +145,12 @@ class DocumentElementFactory {
|
|
|
142
145
|
newElement.position.y = newElement.position.y + positionOffset.y;
|
|
143
146
|
}
|
|
144
147
|
}
|
|
145
|
-
newElement.documentId = documentId;
|
|
146
|
-
newElement.specifiedId = newId;
|
|
147
|
-
oldIdToNewId[element.id] = newId;
|
|
148
148
|
newElement = DocumentElementFactory.createElement(element.type, newElement);
|
|
149
|
+
newElement.documentId = documentId;
|
|
150
|
+
newElement.specifiedId = newElement.id;
|
|
151
|
+
oldIdToNewId.set(element.id, newElement.id);
|
|
149
152
|
newElements.push(newElement);
|
|
153
|
+
newElements.push(...newInnerElements);
|
|
150
154
|
if (newElement.type === 'group')
|
|
151
155
|
groupElements.push(newElement);
|
|
152
156
|
if (DocumentElementFactory.isMask(newElement))
|