neo.mjs 8.12.0 → 8.14.0
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/apps/ServiceWorker.mjs +2 -2
- package/apps/colors/view/TableContainer.mjs +1 -1
- package/apps/covid/Util.mjs +9 -9
- package/apps/portal/index.html +1 -1
- package/apps/portal/view/home/FooterContainer.mjs +1 -1
- package/apps/realworld2/view/article/PreviewList.mjs +2 -2
- package/apps/sharedcovid/Util.mjs +2 -2
- package/examples/ServiceWorker.mjs +2 -2
- package/examples/grid/covid/Util.mjs +3 -3
- package/examples/grid/nestedRecordFields/Viewport.mjs +27 -4
- package/examples/table/container/MainContainer.mjs +4 -4
- package/examples/table/covid/Util.mjs +3 -3
- package/examples/table/nestedRecordFields/Viewport.mjs +2 -2
- package/package.json +2 -2
- package/resources/scss/src/draggable/DragProxyComponent.scss +4 -1
- package/resources/scss/src/draggable/grid/header/toolbar/SortZone.scss +25 -2
- package/src/DefaultConfig.mjs +2 -2
- package/src/Neo.mjs +1 -1
- package/src/calendar/view/YearComponent.mjs +2 -2
- package/src/calendar/view/month/Component.mjs +1 -1
- package/src/calendar/view/week/EventDragZone.mjs +32 -29
- package/src/calendar/view/week/plugin/DragDrop.mjs +21 -21
- package/src/component/Base.mjs +29 -61
- package/src/component/DateSelector.mjs +1 -1
- package/src/component/Gallery.mjs +1 -1
- package/src/component/Helix.mjs +1 -1
- package/src/data/Model.mjs +0 -8
- package/src/draggable/DragZone.mjs +11 -5
- package/src/draggable/grid/header/toolbar/SortZone.mjs +111 -0
- package/src/draggable/list/DragZone.mjs +2 -2
- package/src/draggable/tab/header/toolbar/SortZone.mjs +2 -2
- package/src/draggable/toolbar/DragZone.mjs +3 -3
- package/src/draggable/toolbar/SortZone.mjs +2 -2
- package/src/draggable/tree/DragZone.mjs +2 -2
- package/src/grid/Container.mjs +2 -18
- package/src/grid/View.mjs +59 -44
- package/src/grid/header/Button.mjs +7 -6
- package/src/grid/header/Toolbar.mjs +4 -8
- package/src/main/DomAccess.mjs +1 -1
- package/src/main/addon/AmCharts.mjs +28 -9
- package/src/main/mixin/DeltaUpdates.mjs +13 -7
- package/src/selection/grid/RowModel.mjs +59 -20
- package/src/selection/table/RowModel.mjs +57 -17
- package/src/table/View.mjs +18 -16
- package/src/table/header/Button.mjs +7 -6
package/src/table/View.mjs
CHANGED
@@ -116,13 +116,14 @@ class View extends Component {
|
|
116
116
|
* @param {Object} data
|
117
117
|
* @param {String} [data.cellId]
|
118
118
|
* @param {Object} data.column
|
119
|
+
* @param {Number} data.columnIndex
|
119
120
|
* @param {Object} data.record
|
120
|
-
* @param {Number} data.
|
121
|
+
* @param {Number} data.rowIndex
|
121
122
|
* @param {Neo.table.Container} data.tableContainer
|
122
123
|
* @returns {Object}
|
123
124
|
*/
|
124
125
|
applyRendererOutput(data) {
|
125
|
-
let {cellId, column, record,
|
126
|
+
let {cellId, column, columnIndex, record, rowIndex, tableContainer} = data,
|
126
127
|
me = this,
|
127
128
|
cellCls = ['neo-table-cell'],
|
128
129
|
colspan = record[me.colspanField],
|
@@ -138,9 +139,10 @@ class View extends Component {
|
|
138
139
|
|
139
140
|
rendererOutput = column.renderer.call(column.rendererScope || tableContainer, {
|
140
141
|
column,
|
142
|
+
columnIndex,
|
141
143
|
dataField,
|
142
|
-
index,
|
143
144
|
record,
|
145
|
+
rowIndex,
|
144
146
|
tableContainer,
|
145
147
|
value: fieldValue
|
146
148
|
});
|
@@ -184,7 +186,7 @@ class View extends Component {
|
|
184
186
|
if (hasStore) {
|
185
187
|
cellId = me.getCellId(record, column.dataField)
|
186
188
|
} else {
|
187
|
-
cellId = vdom.cn[
|
189
|
+
cellId = vdom.cn[rowIndex]?.cn[me.getColumn(column.dataField, true)]?.id || Neo.getId('td')
|
188
190
|
}
|
189
191
|
}
|
190
192
|
|
@@ -267,7 +269,7 @@ class View extends Component {
|
|
267
269
|
|
268
270
|
for (i=0; i < colCount; i++) {
|
269
271
|
column = columns[i];
|
270
|
-
config = me.applyRendererOutput({column, record,
|
272
|
+
config = me.applyRendererOutput({column, columnIndex: i, record, rowIndex, tableContainer});
|
271
273
|
|
272
274
|
if (column.dock) {
|
273
275
|
config.cls = ['neo-locked', ...config.cls || []];
|
@@ -522,17 +524,16 @@ class View extends Component {
|
|
522
524
|
* @param {Object} opts.record
|
523
525
|
*/
|
524
526
|
onStoreRecordChange({fields, model, record}) {
|
525
|
-
let me
|
526
|
-
fieldNames
|
527
|
-
needsUpdate
|
528
|
-
tableContainer
|
529
|
-
|
530
|
-
{vdom}
|
531
|
-
cellId, cellNode, column,
|
527
|
+
let me = this,
|
528
|
+
fieldNames = fields.map(field => field.name),
|
529
|
+
needsUpdate = false,
|
530
|
+
tableContainer = me.parent,
|
531
|
+
rowIndex = me.store.indexOf(record),
|
532
|
+
{selectionModel, vdom} = me,
|
533
|
+
cellId, cellNode, cellVdom, column, columnIndex, scope;
|
532
534
|
|
533
535
|
if (fieldNames.includes(me.colspanField)) {
|
534
|
-
|
535
|
-
me.vdom.cn[index] = me.createRow({record, rowIndex: index});
|
536
|
+
me.vdom.cn[rowIndex] = me.createRow({record, rowIndex});
|
536
537
|
me.update()
|
537
538
|
} else {
|
538
539
|
fields.forEach(field => {
|
@@ -547,11 +548,12 @@ class View extends Component {
|
|
547
548
|
// the vdom might not exist yet => nothing to do in this case
|
548
549
|
if (cellNode?.vdom) {
|
549
550
|
column = me.getColumn(field.name);
|
550
|
-
|
551
|
+
columnIndex = cellNode.index;
|
551
552
|
needsUpdate = true;
|
552
553
|
scope = column.rendererScope || tableContainer;
|
554
|
+
cellVdom = me.applyRendererOutput({cellId, column, columnIndex, record, rowIndex, tableContainer});
|
553
555
|
|
554
|
-
cellNode.parentNode.cn[
|
556
|
+
cellNode.parentNode.cn[columnIndex] = cellVdom
|
555
557
|
}
|
556
558
|
}
|
557
559
|
})
|
@@ -242,13 +242,14 @@ class Button extends BaseButton {
|
|
242
242
|
}
|
243
243
|
|
244
244
|
/**
|
245
|
-
* @param {Object}
|
246
|
-
* @param {Neo.button.Base}
|
247
|
-
* @param {
|
248
|
-
* @param {
|
249
|
-
* @param {Object}
|
245
|
+
* @param {Object} data
|
246
|
+
* @param {Neo.button.Base} data.column
|
247
|
+
* @param {Number} data.columnIndex
|
248
|
+
* @param {String} data.dataField
|
249
|
+
* @param {Object} data.record
|
250
|
+
* @param {Number} data.rowIndex
|
250
251
|
* @param {Neo.table.Container} data.tableContainer
|
251
|
-
* @param {Number|String}
|
252
|
+
* @param {Number|String} data.value
|
252
253
|
* @returns {*}
|
253
254
|
*/
|
254
255
|
cellRenderer(data) {
|