neo.mjs 6.16.0 → 6.16.1
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/package.json +8 -8
- package/src/table/Container.mjs +42 -0
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "neo.mjs",
|
3
|
-
"version": "6.16.
|
3
|
+
"version": "6.16.1",
|
4
4
|
"description": "The webworkers driven UI framework",
|
5
5
|
"type": "module",
|
6
6
|
"repository": {
|
@@ -47,23 +47,23 @@
|
|
47
47
|
"autoprefixer": "^10.4.19",
|
48
48
|
"chalk": "^5.3.0",
|
49
49
|
"clean-webpack-plugin": "^4.0.0",
|
50
|
-
"commander": "^12.
|
51
|
-
"cssnano": "^
|
52
|
-
"envinfo": "^7.
|
50
|
+
"commander": "^12.1.0",
|
51
|
+
"cssnano": "^7.0.2",
|
52
|
+
"envinfo": "^7.13.0",
|
53
53
|
"fs-extra": "^11.2.0",
|
54
54
|
"highlightjs-line-numbers.js": "^2.8.0",
|
55
|
-
"inquirer": "^9.2.
|
55
|
+
"inquirer": "^9.2.23",
|
56
56
|
"marked": "^12.0.2",
|
57
|
-
"monaco-editor": "^0.
|
57
|
+
"monaco-editor": "^0.49.0",
|
58
58
|
"neo-jsdoc": "1.0.1",
|
59
59
|
"neo-jsdoc-x": "1.0.5",
|
60
60
|
"postcss": "^8.4.38",
|
61
|
-
"sass": "^1.
|
61
|
+
"sass": "^1.77.4",
|
62
62
|
"siesta-lite": "5.5.2",
|
63
63
|
"url": "^0.11.3",
|
64
64
|
"webpack": "^5.91.0",
|
65
65
|
"webpack-cli": "^5.1.4",
|
66
|
-
"webpack-dev-server": "^
|
66
|
+
"webpack-dev-server": "^5.0.4",
|
67
67
|
"webpack-hook-plugin": "^1.0.7",
|
68
68
|
"webpack-node-externals": "^3.0.0"
|
69
69
|
},
|
package/src/table/Container.mjs
CHANGED
@@ -161,6 +161,26 @@ class Container extends BaseContainer {
|
|
161
161
|
me.createColumns(me.columns)
|
162
162
|
}
|
163
163
|
|
164
|
+
/**
|
165
|
+
* Triggered after the columns config got changed
|
166
|
+
* @param {Object[]|null} value
|
167
|
+
* @param {Object[]|null} oldValue
|
168
|
+
* @protected
|
169
|
+
*/
|
170
|
+
afterSetColumns(value, oldValue) {
|
171
|
+
if (Array.isArray(oldValue) && oldValue.length > 0) {
|
172
|
+
let me = this,
|
173
|
+
headerToolbar = me.headerToolbar;
|
174
|
+
|
175
|
+
if (headerToolbar) {
|
176
|
+
headerToolbar.items = value;
|
177
|
+
headerToolbar.createItems()
|
178
|
+
}
|
179
|
+
|
180
|
+
me.view?.createViewData(me.store.items)
|
181
|
+
}
|
182
|
+
}
|
183
|
+
|
164
184
|
/**
|
165
185
|
* Triggered after the selectionModel config got changed
|
166
186
|
* @param {Neo.selection.Model} value
|
@@ -312,6 +332,28 @@ class Container extends BaseContainer {
|
|
312
332
|
return value || oldValue
|
313
333
|
}
|
314
334
|
|
335
|
+
/**
|
336
|
+
* In case you want to update multiple existing records in parallel,
|
337
|
+
* using this method is faster than updating each record one by one.
|
338
|
+
* At least until we introduce row based vdom updates.
|
339
|
+
* @param {Object[]} records
|
340
|
+
*/
|
341
|
+
bulkUpdateRecords(records) {
|
342
|
+
let {view} = this;
|
343
|
+
|
344
|
+
if (view) {
|
345
|
+
view.silentVdomUpdate = true;
|
346
|
+
|
347
|
+
this.store.items.forEach((record, index) => {
|
348
|
+
record.set(records[index])
|
349
|
+
});
|
350
|
+
|
351
|
+
view.silentVdomUpdate = false;
|
352
|
+
|
353
|
+
view.update()
|
354
|
+
}
|
355
|
+
}
|
356
|
+
|
315
357
|
/**
|
316
358
|
* @param {Object[]} columns
|
317
359
|
* @returns {*}
|