neo.mjs 10.3.2 → 10.3.4
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/.github/RELEASE_NOTES/v10.3.3.md +14 -0
- package/README.md +2 -1
- package/ServiceWorker.mjs +2 -2
- package/apps/portal/index.html +1 -1
- package/apps/portal/resources/data/blog.json +13 -1
- package/apps/portal/view/home/FooterContainer.mjs +1 -1
- package/buildScripts/buildAll.mjs +1 -1
- package/buildScripts/webpack/development/webpack.config.appworker.mjs +1 -1
- package/buildScripts/webpack/production/webpack.config.appworker.mjs +1 -1
- package/examples/functional/nestedTemplateComponent/Component.mjs +2 -1
- package/learn/blog/v10-deep-dive-vdom-revolution.md +284 -59
- package/learn/comparisons/NeoVsAngular.md +15 -0
- package/learn/comparisons/NeoVsReact.md +15 -0
- package/learn/comparisons/NeoVsVue.md +15 -0
- package/package.json +3 -3
- package/src/DefaultConfig.mjs +2 -2
- package/src/grid/Body.mjs +26 -24
- package/.github/epic-string-based-templates.md +0 -690
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "neo.mjs",
|
|
3
|
-
"version": "10.3.
|
|
3
|
+
"version": "10.3.4",
|
|
4
4
|
"description": "Neo.mjs: The multi-threaded UI framework for building ultra-fast, desktop-like web applications with uncompromised responsiveness, inherent security, and a transpilation-free dev mode.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"repository": {
|
|
@@ -83,7 +83,7 @@
|
|
|
83
83
|
"acorn": "^8.15.0",
|
|
84
84
|
"astring": "^1.9.0",
|
|
85
85
|
"autoprefixer": "^10.4.21",
|
|
86
|
-
"chalk": "^5.
|
|
86
|
+
"chalk": "^5.5.0",
|
|
87
87
|
"clean-webpack-plugin": "^4.0.0",
|
|
88
88
|
"commander": "^14.0.0",
|
|
89
89
|
"cssnano": "^7.1.0",
|
|
@@ -93,7 +93,7 @@
|
|
|
93
93
|
"highlightjs-line-numbers.js": "^2.9.0",
|
|
94
94
|
"html-minifier-terser": "^7.2.0",
|
|
95
95
|
"inquirer": "^12.9.0",
|
|
96
|
-
"marked": "^16.1.
|
|
96
|
+
"marked": "^16.1.2",
|
|
97
97
|
"monaco-editor": "0.50.0",
|
|
98
98
|
"neo-jsdoc": "1.0.1",
|
|
99
99
|
"neo-jsdoc-x": "1.0.5",
|
package/src/DefaultConfig.mjs
CHANGED
|
@@ -299,12 +299,12 @@ const DefaultConfig = {
|
|
|
299
299
|
useVdomWorker: true,
|
|
300
300
|
/**
|
|
301
301
|
* buildScripts/injectPackageVersion.mjs will update this value
|
|
302
|
-
* @default '10.3.
|
|
302
|
+
* @default '10.3.4'
|
|
303
303
|
* @memberOf! module:Neo
|
|
304
304
|
* @name config.version
|
|
305
305
|
* @type String
|
|
306
306
|
*/
|
|
307
|
-
version: '10.3.
|
|
307
|
+
version: '10.3.4'
|
|
308
308
|
};
|
|
309
309
|
|
|
310
310
|
Object.assign(DefaultConfig, {
|
package/src/grid/Body.mjs
CHANGED
|
@@ -958,40 +958,42 @@ class GridBody extends Component {
|
|
|
958
958
|
* @param {Object} data.record
|
|
959
959
|
*/
|
|
960
960
|
onStoreRecordChange({fields, record}) {
|
|
961
|
-
let me
|
|
962
|
-
fieldNames
|
|
963
|
-
needsUpdate
|
|
964
|
-
rowIndex
|
|
965
|
-
{selectionModel} = me,
|
|
961
|
+
let me = this,
|
|
962
|
+
fieldNames = fields.map(field => field.name),
|
|
963
|
+
needsUpdate = false,
|
|
964
|
+
rowIndex = me.store.indexOf(record),
|
|
965
|
+
{mountedRows, selectionModel} = me,
|
|
966
966
|
column, needsCellUpdate, recordId;
|
|
967
967
|
|
|
968
968
|
if (fieldNames.includes(me.colspanField)) {
|
|
969
969
|
me.vdom.cn[rowIndex] = me.createRow({record, rowIndex});
|
|
970
970
|
me.update()
|
|
971
971
|
} else {
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
972
|
+
if (rowIndex >= mountedRows[0] && rowIndex <= mountedRows[1]) {
|
|
973
|
+
for (column of me.parent.columns.items) {
|
|
974
|
+
if (
|
|
975
|
+
column instanceof Neo.grid.column.Component &&
|
|
976
|
+
Neo.typeOf(column.component === 'Function') &&
|
|
977
|
+
!fieldNames.includes(column.dataField)
|
|
978
|
+
) {
|
|
979
|
+
needsCellUpdate = me.updateCellNode(record, column.dataField);
|
|
980
|
+
needsUpdate = needsUpdate || needsCellUpdate
|
|
981
|
+
}
|
|
980
982
|
}
|
|
981
|
-
}
|
|
982
983
|
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
984
|
+
fields.forEach(field => {
|
|
985
|
+
if (field.name === me.selectedRecordField) {
|
|
986
|
+
if (selectionModel.ntype === 'selection-grid-rowmodel') {
|
|
987
|
+
recordId = record[me.store.getKeyProperty()];
|
|
987
988
|
|
|
988
|
-
|
|
989
|
+
selectionModel[field.value ? 'selectRow' : 'deselectRow'](recordId)
|
|
990
|
+
}
|
|
991
|
+
} else {
|
|
992
|
+
needsCellUpdate = me.updateCellNode(record, field.name);
|
|
993
|
+
needsUpdate = needsUpdate || needsCellUpdate
|
|
989
994
|
}
|
|
990
|
-
}
|
|
991
|
-
|
|
992
|
-
needsUpdate = needsUpdate || needsCellUpdate
|
|
993
|
-
}
|
|
994
|
-
})
|
|
995
|
+
})
|
|
996
|
+
}
|
|
995
997
|
}
|
|
996
998
|
|
|
997
999
|
needsUpdate && me.update()
|