@cocreate/render 1.28.4 → 1.28.5
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 +8 -0
- package/package.json +1 -1
- package/src/index.js +26 -32
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
## [1.28.5](https://github.com/CoCreate-app/CoCreate-render/compare/v1.28.4...v1.28.5) (2023-10-16)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* render delete nodes ([1921e57](https://github.com/CoCreate-app/CoCreate-render/commit/1921e572051d62aa53513f5379538f3df3c76d93))
|
|
7
|
+
* update and delete for loop data.type ([cc5e4b5](https://github.com/CoCreate-app/CoCreate-render/commit/cc5e4b5ef33814de59159204f6af8648b6fdfbca))
|
|
8
|
+
|
|
1
9
|
## [1.28.4](https://github.com/CoCreate-app/CoCreate-render/compare/v1.28.3...v1.28.4) (2023-10-14)
|
|
2
10
|
|
|
3
11
|
|
package/package.json
CHANGED
package/src/index.js
CHANGED
|
@@ -100,7 +100,7 @@ async function render({ source, element, data, key, index, currentIndex, update,
|
|
|
100
100
|
|
|
101
101
|
for (let i = 0; i < element.length; i++) {
|
|
102
102
|
if (!key)
|
|
103
|
-
key = element[i].getAttribute('render')
|
|
103
|
+
key = element[i].getAttribute('render') || type
|
|
104
104
|
|
|
105
105
|
let renderedNode = renderedNodes.get(element[i])
|
|
106
106
|
if (source) {
|
|
@@ -110,43 +110,37 @@ async function render({ source, element, data, key, index, currentIndex, update,
|
|
|
110
110
|
}
|
|
111
111
|
}
|
|
112
112
|
|
|
113
|
-
// TODO: for loop data[type]?
|
|
114
113
|
if (remove) {
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
114
|
+
for (let j = 0; j < data[type].length; j++) {
|
|
115
|
+
let cloneKey
|
|
116
|
+
if (type === 'object') {
|
|
117
|
+
cloneKey = data[type][j]._id;
|
|
118
|
+
} else {
|
|
119
|
+
cloneKey = data[type][j].name;
|
|
120
120
|
}
|
|
121
|
-
}
|
|
122
121
|
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
cloneKey = data[type][0]._id;
|
|
126
|
-
} else {
|
|
127
|
-
cloneKey = data[type][0].name;
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
let clone = renderedNode.clones.get(cloneKey)
|
|
131
|
-
if (!clone) return
|
|
122
|
+
let clone = renderedNode.clones.get(cloneKey)
|
|
123
|
+
if (!clone) return
|
|
132
124
|
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
125
|
+
renderedNode.clones.delete(cloneKey)
|
|
126
|
+
renderedNodes.delete(clone)
|
|
127
|
+
clone.remove()
|
|
128
|
+
}
|
|
136
129
|
} else if (key || Array.isArray(data)) {
|
|
137
130
|
if (update) {
|
|
138
|
-
let
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
131
|
+
for (let j = 0; j < data[type].length; j++) {
|
|
132
|
+
let clone
|
|
133
|
+
if (type === 'object') {
|
|
134
|
+
clone = renderedNode.clones.get(data[type][j]._id);
|
|
135
|
+
} else {
|
|
136
|
+
clone = renderedNode.clones.get(data[type][j].name);
|
|
137
|
+
}
|
|
144
138
|
|
|
145
|
-
|
|
146
|
-
|
|
139
|
+
if (!currentIndex)
|
|
140
|
+
currentIndex = data.$filter.currentIndex
|
|
141
|
+
|
|
142
|
+
if (!clone) return
|
|
147
143
|
|
|
148
|
-
if (!clone) return
|
|
149
|
-
for (let j = 0; j < data[type].length; j++) {
|
|
150
144
|
await renderValues(clone, { object: data[type][j] });
|
|
151
145
|
if (currentIndex >= 0)
|
|
152
146
|
insertElement(renderedNode, clone, index, currentIndex)
|
|
@@ -170,8 +164,8 @@ async function render({ source, element, data, key, index, currentIndex, update,
|
|
|
170
164
|
}
|
|
171
165
|
|
|
172
166
|
async function renderTemplate(template, data, key, index, keyPath) {
|
|
173
|
-
if (!key)
|
|
174
|
-
|
|
167
|
+
// if (!key)
|
|
168
|
+
// key = template.getAttribute('render')
|
|
175
169
|
|
|
176
170
|
let templateData = renderedNodes.get(template)
|
|
177
171
|
if (!templateData) {
|