@syncfusion/ej2-treegrid 21.2.10 → 22.1.34
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/.eslintrc.json +1 -0
- package/CHANGELOG.md +4 -82
- package/README.md +1 -1
- package/dist/ej2-treegrid.min.js +10 -1
- package/dist/ej2-treegrid.umd.min.js +10 -1
- package/dist/ej2-treegrid.umd.min.js.map +1 -1
- package/dist/es6/ej2-treegrid.es2015.js +52 -18
- package/dist/es6/ej2-treegrid.es2015.js.map +1 -1
- package/dist/es6/ej2-treegrid.es5.js +54 -20
- package/dist/es6/ej2-treegrid.es5.js.map +1 -1
- package/dist/global/ej2-treegrid.min.js +10 -1
- package/dist/global/ej2-treegrid.min.js.map +1 -1
- package/dist/global/index.d.ts +9 -0
- package/package.json +70 -67
- package/src/treegrid/actions/edit.js +23 -9
- package/src/treegrid/actions/freeze-column.js +5 -1
- package/src/treegrid/actions/summary.js +1 -0
- package/src/treegrid/base/treegrid-model.d.ts +39 -34
- package/src/treegrid/base/treegrid.d.ts +39 -34
- package/src/treegrid/base/treegrid.js +14 -6
- package/src/treegrid/models/column.d.ts +18 -10
- package/src/treegrid/models/edit-settings-model.d.ts +2 -1
- package/src/treegrid/models/edit-settings.d.ts +2 -1
- package/src/treegrid/models/page-settings-model.d.ts +2 -1
- package/src/treegrid/models/page-settings.d.ts +2 -1
- package/src/treegrid/models/summary-model.d.ts +3 -1
- package/src/treegrid/models/summary.d.ts +3 -1
- package/src/treegrid/renderer/render.js +7 -1
- package/src/treegrid/renderer/virtual-tree-content-render.js +5 -4
- package/styles/material3-dark.css +545 -0
- package/styles/material3-dark.scss +3 -0
- package/styles/material3.css +601 -0
- package/styles/material3.scss +3 -0
- package/styles/treegrid/_material3-dark-definition.scss +1 -0
- package/styles/treegrid/_material3-definition.scss +28 -0
- package/styles/treegrid/icons/_material3-dark.scss +1 -0
- package/styles/treegrid/icons/_material3.scss +12 -1
- package/styles/treegrid/material3-dark.css +545 -0
- package/styles/treegrid/material3-dark.scss +19 -0
- package/styles/treegrid/material3.css +601 -0
- package/styles/treegrid/material3.scss +19 -0
|
@@ -1618,7 +1618,12 @@ class Render {
|
|
|
1618
1618
|
let iconRequired = !isNullOrUndefined(data.hasFilteredChildRecords)
|
|
1619
1619
|
? data.hasFilteredChildRecords : data.hasChildRecords;
|
|
1620
1620
|
if (iconRequired && !isNullOrUndefined(data.childRecords)) {
|
|
1621
|
-
|
|
1621
|
+
if (this.parent['isFromGantt'] && !this.parent.loadChildOnDemand) {
|
|
1622
|
+
iconRequired = data.hasChildRecords;
|
|
1623
|
+
}
|
|
1624
|
+
else {
|
|
1625
|
+
iconRequired = !(data.childRecords.length === 0);
|
|
1626
|
+
}
|
|
1622
1627
|
}
|
|
1623
1628
|
if (iconRequired) {
|
|
1624
1629
|
addClass([args.cell], 'e-treerowcell');
|
|
@@ -1737,6 +1742,7 @@ class Render {
|
|
|
1737
1742
|
args.cell.setAttribute('data-colindex', colindex + '');
|
|
1738
1743
|
}
|
|
1739
1744
|
if (treeColumn.field === args.column.field && !isNullOrUndefined(treeColumn.template)) {
|
|
1745
|
+
/* eslint-disable-next-line @typescript-eslint/no-explicit-any */
|
|
1740
1746
|
args.column.template = treeColumn.template;
|
|
1741
1747
|
args.column[`${templateFn}`] = templateCompiler(args.column.template);
|
|
1742
1748
|
args.cell.classList.add('e-templatecell');
|
|
@@ -3999,7 +4005,9 @@ let TreeGrid = TreeGrid_1 = class TreeGrid extends Component {
|
|
|
3999
4005
|
this.grid.query = this.query;
|
|
4000
4006
|
this.grid.columnQueryMode = this.columnQueryMode;
|
|
4001
4007
|
this.grid.allowPaging = this.allowPaging;
|
|
4008
|
+
/* eslint-disable-next-line @typescript-eslint/no-explicit-any */
|
|
4002
4009
|
this.grid.pageSettings = getActualProperties(this.pageSettings);
|
|
4010
|
+
/* eslint-disable-next-line @typescript-eslint/no-explicit-any */
|
|
4003
4011
|
this.grid.pagerTemplate = this.pagerTemplate;
|
|
4004
4012
|
this.grid.showColumnMenu = this.showColumnMenu;
|
|
4005
4013
|
this.grid.allowSorting = this.allowSorting;
|
|
@@ -4026,12 +4034,14 @@ let TreeGrid = TreeGrid_1 = class TreeGrid extends Component {
|
|
|
4026
4034
|
this.grid.gridLines = this.gridLines;
|
|
4027
4035
|
this.grid.allowSelection = this.allowSelection;
|
|
4028
4036
|
this.grid.toolbar = getActualProperties(this.getGridToolbar());
|
|
4037
|
+
/* eslint-disable-next-line @typescript-eslint/no-explicit-any */
|
|
4029
4038
|
this.grid.toolbarTemplate = this.toolbarTemplate;
|
|
4030
4039
|
this.grid.showColumnChooser = this.showColumnChooser;
|
|
4031
4040
|
this.grid.filterSettings = getActualProperties(this.filterSettings);
|
|
4032
4041
|
this.grid.selectionSettings = getActualProperties(this.selectionSettings);
|
|
4033
4042
|
this.grid.sortSettings = getActualProperties(this.sortSettings);
|
|
4034
4043
|
this.grid.searchSettings = getActualProperties(this.searchSettings);
|
|
4044
|
+
/* eslint-disable-next-line @typescript-eslint/no-explicit-any */
|
|
4035
4045
|
this.grid.aggregates = getActualProperties(this.aggregates);
|
|
4036
4046
|
this.grid.textWrapSettings = getActualProperties(this.textWrapSettings);
|
|
4037
4047
|
this.grid.printMode = getActualProperties(this.printMode);
|
|
@@ -4040,7 +4050,9 @@ let TreeGrid = TreeGrid_1 = class TreeGrid extends Component {
|
|
|
4040
4050
|
this.grid.contextMenuItems = getActualProperties(this.getContextMenu());
|
|
4041
4051
|
this.grid.columnMenuItems = getActualProperties(this.columnMenuItems);
|
|
4042
4052
|
this.grid.editSettings = this.getGridEditSettings();
|
|
4053
|
+
/* eslint-disable-next-line @typescript-eslint/no-explicit-any */
|
|
4043
4054
|
this.grid.rowTemplate = getActualProperties(this.rowTemplate);
|
|
4055
|
+
/* eslint-disable-next-line @typescript-eslint/no-explicit-any */
|
|
4044
4056
|
this.grid.detailTemplate = getActualProperties(this.detailTemplate);
|
|
4045
4057
|
this.grid.frozenRows = this.frozenRows;
|
|
4046
4058
|
this.grid.frozenColumns = this.frozenColumns;
|
|
@@ -4365,10 +4377,8 @@ let TreeGrid = TreeGrid_1 = class TreeGrid extends Component {
|
|
|
4365
4377
|
const currentData = this.getCurrentViewRecords();
|
|
4366
4378
|
const rows = this.getContentTable().rows;
|
|
4367
4379
|
for (let i = 0; i < rows.length; i++) {
|
|
4368
|
-
const args = {
|
|
4369
|
-
|
|
4370
|
-
row: rows[parseInt(i.toString(), 10)]
|
|
4371
|
-
};
|
|
4380
|
+
const args = { data: currentData[parseInt(i.toString(), 10)],
|
|
4381
|
+
row: rows[parseInt(i.toString(), 10)] };
|
|
4372
4382
|
this.renderModule.RowModifier(args);
|
|
4373
4383
|
}
|
|
4374
4384
|
}
|
|
@@ -4820,6 +4830,7 @@ let TreeGrid = TreeGrid_1 = class TreeGrid extends Component {
|
|
|
4820
4830
|
this.grid.allowPaging = this.allowPaging;
|
|
4821
4831
|
break;
|
|
4822
4832
|
case 'pageSettings':
|
|
4833
|
+
/* eslint-disable-next-line @typescript-eslint/no-explicit-any */
|
|
4823
4834
|
this.grid.pageSettings = getActualProperties(this.pageSettings);
|
|
4824
4835
|
requireRefresh = true;
|
|
4825
4836
|
break;
|
|
@@ -4865,6 +4876,7 @@ let TreeGrid = TreeGrid_1 = class TreeGrid extends Component {
|
|
|
4865
4876
|
this.grid.allowRowDragAndDrop = this.allowRowDragAndDrop;
|
|
4866
4877
|
break;
|
|
4867
4878
|
case 'aggregates':
|
|
4879
|
+
/* eslint-disable-next-line @typescript-eslint/no-explicit-any */
|
|
4868
4880
|
this.grid.aggregates = getActualProperties(this.aggregates);
|
|
4869
4881
|
break;
|
|
4870
4882
|
case 'enableInfiniteScrolling':
|
|
@@ -4915,6 +4927,7 @@ let TreeGrid = TreeGrid_1 = class TreeGrid extends Component {
|
|
|
4915
4927
|
this.grid.gridLines = this.gridLines;
|
|
4916
4928
|
break;
|
|
4917
4929
|
case 'rowTemplate':
|
|
4930
|
+
/* eslint-disable-next-line @typescript-eslint/no-explicit-any */
|
|
4918
4931
|
this.grid.rowTemplate = getActualProperties(this.rowTemplate);
|
|
4919
4932
|
break;
|
|
4920
4933
|
case 'frozenRows':
|
|
@@ -4994,6 +5007,7 @@ let TreeGrid = TreeGrid_1 = class TreeGrid extends Component {
|
|
|
4994
5007
|
this.grid.showColumnChooser = this.showColumnChooser;
|
|
4995
5008
|
break;
|
|
4996
5009
|
case 'detailTemplate':
|
|
5010
|
+
/* eslint-disable-next-line @typescript-eslint/no-explicit-any */
|
|
4997
5011
|
this.grid.detailTemplate = getActualProperties(this.detailTemplate);
|
|
4998
5012
|
break;
|
|
4999
5013
|
case 'columnMenuItems':
|
|
@@ -5577,8 +5591,8 @@ let TreeGrid = TreeGrid_1 = class TreeGrid extends Component {
|
|
|
5577
5591
|
}
|
|
5578
5592
|
}
|
|
5579
5593
|
else if (!isNullOrUndefined(this.columns[parseInt(i.toString(), 10)].field)) {
|
|
5580
|
-
const
|
|
5581
|
-
|
|
5594
|
+
const currentColumn = this.grid.getColumnByField(this.columns[parseInt(i.toString(), 10)]
|
|
5595
|
+
.field);
|
|
5582
5596
|
this.columns[parseInt(i.toString(), 10)].width = currentColumn.width;
|
|
5583
5597
|
}
|
|
5584
5598
|
}
|
|
@@ -10128,6 +10142,7 @@ class Aggregate$1 {
|
|
|
10128
10142
|
summaryKey = types[parseInt(i.toString(), 10)];
|
|
10129
10143
|
const key = summaryColumn.field + ' - ' + types[parseInt(i.toString(), 10)].toLowerCase();
|
|
10130
10144
|
const val = types[parseInt(i.toString(), 10)] !== 'Custom' ? getObject('aggregates', sumData) :
|
|
10145
|
+
/* eslint-disable-next-line @typescript-eslint/no-explicit-any */
|
|
10131
10146
|
calculateAggregate(types[parseInt(i.toString(), 10)], sumData, summaryColumn, this.parent);
|
|
10132
10147
|
const disp = summaryColumn.columnName;
|
|
10133
10148
|
const value = types[parseInt(i.toString(), 10)] !== 'Custom' ? val[`${key}`] : val;
|
|
@@ -11177,6 +11192,14 @@ class Edit$1 {
|
|
|
11177
11192
|
if (e.target.classList.contains('e-frame') && this.parent.getCurrentViewRecords().length === 0) {
|
|
11178
11193
|
this.doubleClickTarget = null;
|
|
11179
11194
|
}
|
|
11195
|
+
if (e.target.classList.contains('e-treegridcollapse') || e.target.classList.contains('e-treegridexpand')) {
|
|
11196
|
+
const tr = parentsUntil(e.target, 'e-row');
|
|
11197
|
+
const rowIndex = tr && parseInt(tr.getAttribute('data-rowindex'), 10);
|
|
11198
|
+
if (!isNullOrUndefined(rowIndex) && rowIndex >= 0 && this.parent.allowPaging) {
|
|
11199
|
+
/* eslint-disable-next-line */
|
|
11200
|
+
this.parent.grid.getDataRows()[rowIndex].dataset.uid = this.parent.grid.contentModule.getRows()[rowIndex].uid;
|
|
11201
|
+
}
|
|
11202
|
+
}
|
|
11180
11203
|
}
|
|
11181
11204
|
getRowPosition(addArgs) {
|
|
11182
11205
|
addArgs.newRowPosition = this.parent.editSettings.newRowPosition;
|
|
@@ -11532,15 +11555,21 @@ class Edit$1 {
|
|
|
11532
11555
|
else if (isRemoteData(this.parent) ||
|
|
11533
11556
|
(this.parent.dataSource instanceof DataManager && this.parent.dataSource.adaptor instanceof RemoteSaveAdaptor)) {
|
|
11534
11557
|
const query = this.parent.grid.query;
|
|
11535
|
-
|
|
11536
|
-
crud = this.parent.grid.dataSource.update(primaryKeys[0], args.rowData, query.fromTable, query, args.previousValue);
|
|
11537
|
-
crud.then((e) => {
|
|
11538
|
-
if (!isNullOrUndefined(e)) {
|
|
11539
|
-
args.rowData[args.columnName] = e[args.columnName];
|
|
11540
|
-
}
|
|
11558
|
+
if (this.parent['isGantt'] && !this.parent.loadChildOnDemand) {
|
|
11541
11559
|
this.updateCell(args, rowIndex);
|
|
11542
11560
|
this.afterCellSave(args, row, rowIndex);
|
|
11543
|
-
}
|
|
11561
|
+
}
|
|
11562
|
+
else {
|
|
11563
|
+
let crud = null;
|
|
11564
|
+
crud = this.parent.grid.dataSource.update(primaryKeys[0], args.rowData, query.fromTable, query, args.previousValue);
|
|
11565
|
+
crud.then((e) => {
|
|
11566
|
+
if (!isNullOrUndefined(e)) {
|
|
11567
|
+
args.rowData[args.columnName] = e[args.columnName];
|
|
11568
|
+
}
|
|
11569
|
+
this.updateCell(args, rowIndex);
|
|
11570
|
+
this.afterCellSave(args, row, rowIndex);
|
|
11571
|
+
});
|
|
11572
|
+
}
|
|
11544
11573
|
}
|
|
11545
11574
|
}
|
|
11546
11575
|
else {
|
|
@@ -12740,9 +12769,8 @@ class VirtualTreeContentRenderer extends VirtualContentRenderer {
|
|
|
12740
12769
|
}
|
|
12741
12770
|
this.startIndex = !isLastBlock ? lastIndex - this.parent.pageSettings.pageSize : nextSetResIndex;
|
|
12742
12771
|
this.endIndex = lastIndex;
|
|
12743
|
-
if ((nextSetResIndex + this.parent.pageSettings.pageSize) > this.totalRecords &&
|
|
12744
|
-
(this.endIndex -
|
|
12745
|
-
(this.endIndex - nextSetResIndex) < (this.parent.pageSettings.pageSize / 2)) {
|
|
12772
|
+
if ((nextSetResIndex + this.parent.pageSettings.pageSize) > this.totalRecords && (this.endIndex - this.startIndex) <
|
|
12773
|
+
(this.parent.pageSettings.pageSize / 2) && (this.endIndex - nextSetResIndex) < (this.parent.pageSettings.pageSize / 2)) {
|
|
12746
12774
|
this.startIndex = lastIndex - (this.parent.pageSettings.pageSize / 2);
|
|
12747
12775
|
}
|
|
12748
12776
|
if (currentViewData.length && this.startIndex > currentViewData[0][`${indexValue}`] &&
|
|
@@ -12757,7 +12785,7 @@ class VirtualTreeContentRenderer extends VirtualContentRenderer {
|
|
|
12757
12785
|
this.translateY = scrollArgs.offset.top - rowHeight * 2;
|
|
12758
12786
|
}
|
|
12759
12787
|
else {
|
|
12760
|
-
if (this.totalRecords
|
|
12788
|
+
if (this.totalRecords === this.endIndex) {
|
|
12761
12789
|
this.translateY = (this.totalRecords * rowHeight) - ((this.endIndex - this.startIndex) * rowHeight);
|
|
12762
12790
|
}
|
|
12763
12791
|
else {
|
|
@@ -12945,6 +12973,8 @@ class TreeInterSectionObserver extends InterSectionObserver {
|
|
|
12945
12973
|
if (this[`${options}`].axes.indexOf(current.axis) === -1) {
|
|
12946
12974
|
return;
|
|
12947
12975
|
}
|
|
12976
|
+
const containerRect = 'containerRect';
|
|
12977
|
+
this[`${containerRect}`] = this[`${options}`].container.getBoundingClientRect();
|
|
12948
12978
|
const check = this.check(direction);
|
|
12949
12979
|
if (current.entered && (current.axis === 'X' || instance.enableVirtualMaskRow)) {
|
|
12950
12980
|
if (this[`${movableEle}`] && (direction === 'right' || direction === 'left')) {
|
|
@@ -13357,6 +13387,10 @@ class Freeze$1 {
|
|
|
13357
13387
|
getValue('addRenderer', renderer)
|
|
13358
13388
|
.apply(renderer, [RenderType.Content, new VirtualTreeFreezeRenderer(getValue('grid', this.parent), getValue('serviceLocator', this.parent.grid))]);
|
|
13359
13389
|
}
|
|
13390
|
+
else {
|
|
13391
|
+
getValue('addRenderer', renderer)
|
|
13392
|
+
.apply(renderer, [RenderType.Content, new FreezeContentRender(getValue('grid', this.parent), getValue('serviceLocator', this.parent.grid))]);
|
|
13393
|
+
}
|
|
13360
13394
|
}
|
|
13361
13395
|
if (this.parent.getFrozenLeftColumnsCount() || this.parent.getFrozenRightColumnsCount()) {
|
|
13362
13396
|
getValue('addRenderer', renderer)
|