@syncfusion/ej2-treegrid 20.1.52 → 20.1.59

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.
Files changed (55) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/ej2-treegrid.umd.min.js +2 -2
  3. package/dist/ej2-treegrid.umd.min.js.map +1 -1
  4. package/dist/es6/ej2-treegrid.es2015.js +223 -141
  5. package/dist/es6/ej2-treegrid.es2015.js.map +1 -1
  6. package/dist/es6/ej2-treegrid.es5.js +228 -146
  7. package/dist/es6/ej2-treegrid.es5.js.map +1 -1
  8. package/dist/global/ej2-treegrid.min.js +2 -2
  9. package/dist/global/ej2-treegrid.min.js.map +1 -1
  10. package/dist/global/index.d.ts +1 -1
  11. package/package.json +9 -9
  12. package/src/treegrid/actions/context-menu.js +50 -0
  13. package/src/treegrid/actions/edit.js +33 -29
  14. package/src/treegrid/actions/infinite-scroll.js +1 -1
  15. package/src/treegrid/actions/page.d.ts +1 -0
  16. package/src/treegrid/actions/page.js +11 -0
  17. package/src/treegrid/actions/rowdragdrop.js +2 -2
  18. package/src/treegrid/actions/selection.js +1 -1
  19. package/src/treegrid/base/treegrid.js +18 -2
  20. package/src/treegrid/enum.d.ts +8 -2
  21. package/src/treegrid/enum.js +2 -0
  22. package/src/treegrid/models/column.d.ts +6 -6
  23. package/src/treegrid/models/column.js +6 -6
  24. package/src/treegrid/renderer/render.d.ts +4 -4
  25. package/src/treegrid/renderer/render.js +4 -4
  26. package/styles/bootstrap-dark.css +12 -95
  27. package/styles/bootstrap.css +12 -95
  28. package/styles/bootstrap4.css +12 -94
  29. package/styles/bootstrap5-dark.css +12 -94
  30. package/styles/bootstrap5.css +12 -94
  31. package/styles/fabric-dark.css +12 -93
  32. package/styles/fabric.css +12 -93
  33. package/styles/fluent-dark.css +13 -96
  34. package/styles/fluent.css +13 -96
  35. package/styles/highcontrast-light.css +10 -104
  36. package/styles/highcontrast.css +10 -104
  37. package/styles/material-dark.css +8 -84
  38. package/styles/material.css +8 -85
  39. package/styles/tailwind-dark.css +8 -82
  40. package/styles/tailwind.css +8 -82
  41. package/styles/treegrid/bootstrap-dark.css +12 -95
  42. package/styles/treegrid/bootstrap.css +12 -95
  43. package/styles/treegrid/bootstrap4.css +12 -94
  44. package/styles/treegrid/bootstrap5-dark.css +12 -94
  45. package/styles/treegrid/bootstrap5.css +12 -94
  46. package/styles/treegrid/fabric-dark.css +12 -93
  47. package/styles/treegrid/fabric.css +12 -93
  48. package/styles/treegrid/fluent-dark.css +13 -96
  49. package/styles/treegrid/fluent.css +13 -96
  50. package/styles/treegrid/highcontrast-light.css +10 -104
  51. package/styles/treegrid/highcontrast.css +10 -104
  52. package/styles/treegrid/material-dark.css +8 -84
  53. package/styles/treegrid/material.css +8 -85
  54. package/styles/treegrid/tailwind-dark.css +8 -82
  55. package/styles/treegrid/tailwind.css +8 -82
@@ -77,12 +77,12 @@ var Column = /** @__PURE__ @class */ (function () {
77
77
  merge(this, options);
78
78
  }
79
79
  /**
80
- * Update the State changes reflected for TreeGrid columndirective in react platform.
81
- *
82
- * @param {Column} column - specifies the column
83
- * @returns {void}
84
- * @hidden
85
- */
80
+ * Update the State changes reflected for TreeGrid columndirective in react platform.
81
+ *
82
+ * @param {Column} column - specifies the column
83
+ * @returns {void}
84
+ * @hidden
85
+ */
86
86
  Column.prototype.setProperties = function (column) {
87
87
  //Angular two way binding
88
88
  var keys = Object.keys(column);
@@ -959,7 +959,7 @@ var Selection = /** @__PURE__ @class */ (function () {
959
959
  Selection.prototype.getCheckboxcolumnIndex = function () {
960
960
  var mappingUid;
961
961
  var columnIndex;
962
- var stackedHeader = "stackedHeader";
962
+ var stackedHeader = 'stackedHeader';
963
963
  var columnModel = 'columnModel';
964
964
  var columns = this.parent[stackedHeader] ? this.parent[columnModel] : (this.parent.columns);
965
965
  for (var col = 0; col < columns.length; col++) {
@@ -1350,6 +1350,105 @@ var Selection = /** @__PURE__ @class */ (function () {
1350
1350
  return Selection;
1351
1351
  }());
1352
1352
 
1353
+ /**
1354
+ * TreeGrid Freeze module
1355
+ *
1356
+ * @hidden
1357
+ */
1358
+ var Freeze$1 = /** @__PURE__ @class */ (function () {
1359
+ /**
1360
+ * Constructor for render module
1361
+ *
1362
+ * @param {TreeGrid} parent - Tree Grid instance
1363
+ */
1364
+ function Freeze$$1(parent) {
1365
+ Grid.Inject(Freeze);
1366
+ this.parent = parent;
1367
+ this.addEventListener();
1368
+ }
1369
+ Freeze$$1.prototype.addEventListener = function () {
1370
+ this.parent.on('rowExpandCollapse', this.rowExpandCollapse, this);
1371
+ this.parent.on('dataBoundArg', this.dataBoundArg, this);
1372
+ this.parent.grid.on('dblclick', this.dblClickHandler, this);
1373
+ };
1374
+ Freeze$$1.prototype.removeEventListener = function () {
1375
+ if (this.parent.isDestroyed) {
1376
+ return;
1377
+ }
1378
+ this.parent.off('rowExpandCollapse', this.rowExpandCollapse);
1379
+ this.parent.off('dataBoundArg', this.dataBoundArg);
1380
+ this.parent.grid.off('dblclick', this.dblClickHandler);
1381
+ };
1382
+ Freeze$$1.prototype.rowExpandCollapse = function (args) {
1383
+ var movableRows = this.parent.getMovableDataRows();
1384
+ var frozenrows = this.parent.getRows();
1385
+ var rows;
1386
+ var frozenRightRows;
1387
+ var freeze = (this.parent.getFrozenLeftColumnsCount() > 0 ||
1388
+ this.parent.getFrozenRightColumnsCount() > 0) ? true : false;
1389
+ if (freeze) {
1390
+ frozenRightRows = this.parent.getFrozenRightRows().filter(function (e) {
1391
+ return e.querySelector('.e-gridrowindex' + args.record.index + 'level' + (args.record.level + 1));
1392
+ });
1393
+ }
1394
+ if (!args.detailrows.length) {
1395
+ rows = movableRows.filter(function (e) {
1396
+ return e.querySelector('.e-gridrowindex' + args.record.index + 'level' + (args.record.level + 1));
1397
+ });
1398
+ }
1399
+ else {
1400
+ rows = args.detailrows;
1401
+ }
1402
+ for (var i = 0; i < rows.length; i++) {
1403
+ var rData = this.parent.grid.getRowObjectFromUID(rows[i].getAttribute('data-Uid')).data;
1404
+ rows[i].style.display = args.action;
1405
+ if (freeze) {
1406
+ frozenRightRows[i].style.display = args.action;
1407
+ }
1408
+ var queryselector = args.action === 'none' ? '.e-treecolumn-container .e-treegridcollapse'
1409
+ : '.e-treecolumn-container .e-treegridexpand';
1410
+ if (frozenrows[rows[i].rowIndex].querySelector(queryselector)) {
1411
+ var cRow = [];
1412
+ for (var i_1 = 0; i_1 < movableRows.length; i_1++) {
1413
+ if (movableRows[i_1].querySelector('.e-gridrowindex' + rData.index + 'level' + (rData.level + 1))) {
1414
+ cRow.push(movableRows[i_1]);
1415
+ }
1416
+ }
1417
+ if (cRow.length) {
1418
+ this.rowExpandCollapse({ detailrows: cRow, action: args.action });
1419
+ }
1420
+ }
1421
+ }
1422
+ };
1423
+ Freeze$$1.prototype.dblClickHandler = function (e) {
1424
+ if (parentsUntil(e.target, 'e-rowcell') &&
1425
+ this.parent.grid.editSettings.allowEditOnDblClick && this.parent.editSettings.mode !== 'Cell') {
1426
+ this.parent.grid.editModule.startEdit(parentsUntil(e.target, 'e-row'));
1427
+ }
1428
+ };
1429
+ Freeze$$1.prototype.dataBoundArg = function () {
1430
+ var checkboxColumn = this.parent.getColumns().filter(function (e) {
1431
+ return e.showCheckbox;
1432
+ });
1433
+ if (checkboxColumn.length && this.parent.freezeModule && this.parent.initialRender) {
1434
+ addClass([this.parent.element.getElementsByClassName('e-grid')[0]], 'e-checkselection');
1435
+ }
1436
+ };
1437
+ Freeze$$1.prototype.destroy = function () {
1438
+ this.removeEventListener();
1439
+ };
1440
+ /**
1441
+ * For internal use only - Get the module name.
1442
+ *
1443
+ * @private
1444
+ * @returns {string} Returns Freeze module name
1445
+ */
1446
+ Freeze$$1.prototype.getModuleName = function () {
1447
+ return 'freeze';
1448
+ };
1449
+ return Freeze$$1;
1450
+ }());
1451
+
1353
1452
  /**
1354
1453
  * TreeGrid Print module
1355
1454
  *
@@ -1777,10 +1876,10 @@ var Render = /** @__PURE__ @class */ (function () {
1777
1876
  }
1778
1877
  };
1779
1878
  /**
1780
- * @param {string} columnUid - Defines column uid
1781
- * @returns {void}
1782
- * @hidden
1783
- */
1879
+ * @param {string} columnUid - Defines column uid
1880
+ * @returns {void}
1881
+ * @hidden
1882
+ */
1784
1883
  Render.prototype.refreshReactColumnTemplateByUid = function (columnUid) {
1785
1884
  var _this = this;
1786
1885
  if (this.parent.isReact) {
@@ -2458,6 +2557,8 @@ var ContextMenuItems;
2458
2557
  ContextMenuItems[ContextMenuItems["LastPage"] = 13] = "LastPage";
2459
2558
  ContextMenuItems[ContextMenuItems["NextPage"] = 14] = "NextPage";
2460
2559
  ContextMenuItems[ContextMenuItems["AddRow"] = 15] = "AddRow";
2560
+ ContextMenuItems[ContextMenuItems["RowIndent"] = 16] = "RowIndent";
2561
+ ContextMenuItems[ContextMenuItems["RowOutdent"] = 17] = "RowOutdent";
2461
2562
  })(ContextMenuItems || (ContextMenuItems = {}));
2462
2563
 
2463
2564
  var __extends$7 = (undefined && undefined.__extends) || (function () {
@@ -3559,6 +3660,7 @@ var TreeGrid = /** @__PURE__ @class */ (function (_super) {
3559
3660
  TreeGrid.prototype.requiredModules = function () {
3560
3661
  var modules = [];
3561
3662
  var splitFrozenCount = 'splitFrozenCount';
3663
+ this.freezeModule = new Freeze$1(this);
3562
3664
  this.grid[splitFrozenCount](this.getGridColumns(this.columns));
3563
3665
  if (this.isDestroyed) {
3564
3666
  return modules;
@@ -3610,7 +3712,7 @@ var TreeGrid = /** @__PURE__ @class */ (function (_super) {
3610
3712
  });
3611
3713
  }
3612
3714
  if (this.frozenColumns || this.frozenRows || this.getFrozenColumns() ||
3613
- this.grid.getFrozenLeftColumnsCount() || this.grid.getFrozenRightColumnsCount()) {
3715
+ this.grid.getFrozenLeftColumnsCount() || this.grid.getFrozenRightColumnsCount() || this.freezeModule) {
3614
3716
  modules.push({
3615
3717
  member: 'freeze', args: [this]
3616
3718
  });
@@ -3640,7 +3742,7 @@ var TreeGrid = /** @__PURE__ @class */ (function (_super) {
3640
3742
  };
3641
3743
  TreeGrid.prototype.extendRequiredModules = function (modules) {
3642
3744
  var IsRowDDInjected = this.injectedModules.filter(function (e) {
3643
- return e.name === 'RowDD';
3745
+ return e.prototype.getModuleName() === 'rowDragAndDrop';
3644
3746
  });
3645
3747
  if (this.allowRowDragAndDrop || IsRowDDInjected.length) {
3646
3748
  if ((!isNullOrUndefined(this.toolbar) && (this.toolbar['includes']('Indent') ||
@@ -4453,6 +4555,16 @@ var TreeGrid = /** @__PURE__ @class */ (function (_super) {
4453
4555
  target: '.e-content', id: this.element.id + '_gridcontrol_cmenu_AddRow',
4454
4556
  items: [{ text: this.l10n.getConstant('Above'), id: 'Above' }, { text: this.l10n.getConstant('Below'), id: 'Below' }, { text: this.l10n.getConstant('Child'), id: 'Child' }] });
4455
4557
  break;
4558
+ case 'Indent':
4559
+ case ContextMenuItems.RowIndent:
4560
+ items.push({ text: this.l10n.getConstant('RowIndent'),
4561
+ target: '.e-content', iconCss: 'e-indent e-icons', id: this.element.id + '_gridcontrol_cmenu_Indent' });
4562
+ break;
4563
+ case 'Outdent':
4564
+ case ContextMenuItems.RowOutdent:
4565
+ items.push({ text: this.l10n.getConstant('RowOutdent'),
4566
+ target: '.e-content', iconCss: 'e-outdent e-icons', id: this.element.id + '_gridcontrol_cmenu_Outdent' });
4567
+ break;
4456
4568
  default:
4457
4569
  items.push(this.contextMenuItems[i]);
4458
4570
  }
@@ -4471,6 +4583,7 @@ var TreeGrid = /** @__PURE__ @class */ (function (_super) {
4471
4583
  */
4472
4584
  TreeGrid.prototype.getGridToolbar = function () {
4473
4585
  if (this.toolbar) {
4586
+ this.l10n = new L10n('treegrid', this.defaultLocale, this.locale);
4474
4587
  var items = [];
4475
4588
  var tooltipText = void 0;
4476
4589
  for (var i = 0; i < this.toolbar.length; i++) {
@@ -4716,6 +4829,9 @@ var TreeGrid = /** @__PURE__ @class */ (function (_super) {
4716
4829
  break;
4717
4830
  case 'locale':
4718
4831
  this.grid.locale = this.locale;
4832
+ this.TreeGridLocale();
4833
+ this.grid.toolbar = this.getGridToolbar();
4834
+ this.grid.contextMenuItems = this.getContextMenu();
4719
4835
  break;
4720
4836
  case 'selectedRowIndex':
4721
4837
  this.grid.selectedRowIndex = this.selectedRowIndex;
@@ -8018,8 +8134,8 @@ var RowDD$1 = /** @__PURE__ @class */ (function () {
8018
8134
  if (this.dropPosition === 'bottomSegment') {
8019
8135
  var primaryKeyField = this.parent.getPrimaryKeyFieldNames()[0];
8020
8136
  var rowIndex = selectedItemIndex === -1 ?
8021
- (this.parent.grid.getRowIndexByPrimaryKey(data[0][primaryKeyField])) - 1
8022
- : this.parent.getSelectedRowIndexes()[0] - 1;
8137
+ (this.parent.grid.getRowIndexByPrimaryKey(data[0][primaryKeyField]))
8138
+ : this.parent.getSelectedRowIndexes()[0];
8023
8139
  var selectedRecord = this.parent.getCurrentViewRecords()[rowIndex];
8024
8140
  this.droppedRecord = getParentData(this.parent, selectedRecord.parentItem.uniqueID);
8025
8141
  }
@@ -9377,6 +9493,16 @@ var Page$1 = /** @__PURE__ @class */ (function () {
9377
9493
  }
9378
9494
  return newResults;
9379
9495
  };
9496
+ Page$$1.prototype.updatePageSize = function (pageingDetails) {
9497
+ var updateSize = pageingDetails.result.length;
9498
+ var gridPagerModule = this.parent.grid.pagerModule;
9499
+ if (this.parent.pageSettings.pageSizes === true) {
9500
+ if (gridPagerModule.pagerObj.pagerdropdownModule['dropDownListObject'].value === gridPagerModule.pagerObj.getLocalizedLabel('All')) {
9501
+ gridPagerModule['pagerObj'].totalRecordsCount = updateSize;
9502
+ this.parent.grid.pageSettings.pageSize = updateSize;
9503
+ }
9504
+ }
9505
+ };
9380
9506
  Page$$1.prototype.pageAction = function (pageingDetails) {
9381
9507
  var _this = this;
9382
9508
  var dm = new DataManager(pageingDetails.result);
@@ -9413,6 +9539,7 @@ var Page$1 = /** @__PURE__ @class */ (function () {
9413
9539
  pageingDetails.count = visualData.length;
9414
9540
  var query = new Query();
9415
9541
  var size = this.parent.grid.pageSettings.pageSize;
9542
+ this.updatePageSize(pageingDetails);
9416
9543
  var current = this.parent.grid.pageSettings.currentPage;
9417
9544
  if (visualData.length < (current * size)) {
9418
9545
  current = (Math.floor(visualData.length / size)) + ((visualData.length % size) ? 1 : 0);
@@ -10001,6 +10128,8 @@ var ContextMenu$1 = /** @__PURE__ @class */ (function () {
10001
10128
  ContextMenu$$1.prototype.contextMenuOpen = function (args) {
10002
10129
  var addRow = select('#' + this.parent.element.id + '_gridcontrol_cmenu_AddRow', args.element);
10003
10130
  var editRecord = select('#' + this.parent.element.id + '_gridcontrol_cmenu_Edit', args.element);
10131
+ var indent = select('#' + this.parent.element.id + '_gridcontrol_cmenu_Indent', args.element);
10132
+ var outdent = select('#' + this.parent.element.id + '_gridcontrol_cmenu_Outdent', args.element);
10004
10133
  if (addRow) {
10005
10134
  if (this.parent.grid.editSettings.allowAdding === false) {
10006
10135
  addRow.style.display = 'none';
@@ -10013,6 +10142,47 @@ var ContextMenu$1 = /** @__PURE__ @class */ (function () {
10013
10142
  && !(isNullOrUndefined(editRecord)) && !(editRecord.classList.contains('e-menu-hide'))) {
10014
10143
  editRecord.style.display = 'none';
10015
10144
  }
10145
+ if (indent || outdent) {
10146
+ var tObj = this.parent;
10147
+ var selectedrow = tObj.getSelectedRows()[0];
10148
+ var targetElement = args.event.target.closest('td');
10149
+ if (isNullOrUndefined(targetElement) || (!isNullOrUndefined(targetElement) && !targetElement.classList.contains('e-rowcell'))) {
10150
+ indent.style.display = outdent.style.display = 'none';
10151
+ }
10152
+ else {
10153
+ if (selectedrow.rowIndex === 0 || tObj.getSelectedRowIndexes().length > 1) {
10154
+ indent.style.display = outdent.style.display = 'none';
10155
+ }
10156
+ else if (args['name'] !== 'rowDeselected' || (!isNullOrUndefined(selectedrow) && tObj.grid.isCheckBoxSelection)) {
10157
+ var selectedItem = tObj.getCurrentViewRecords()[selectedrow.rowIndex];
10158
+ if (!isNullOrUndefined(selectedItem)) {
10159
+ if ((selectedItem.level > tObj.getCurrentViewRecords()[selectedrow.rowIndex - 1].level)) {
10160
+ indent.style.display = 'none';
10161
+ }
10162
+ else {
10163
+ indent.style.display = 'block';
10164
+ }
10165
+ if (selectedItem.level === tObj.getCurrentViewRecords()[selectedrow.rowIndex - 1].level) {
10166
+ indent.style.display = 'block';
10167
+ }
10168
+ if (selectedItem.level === 0) {
10169
+ outdent.style.display = 'none';
10170
+ }
10171
+ if (selectedItem.level !== 0) {
10172
+ outdent.style.display = 'block';
10173
+ }
10174
+ }
10175
+ }
10176
+ if (args['name'] === 'rowDeselected' && isNullOrUndefined(selectedrow) && !tObj.grid.isCheckBoxSelection) {
10177
+ if (this.parent.toolbar['includes']('Indent')) {
10178
+ indent.style.display = 'none';
10179
+ }
10180
+ if (this.parent.toolbar['includes']('Outdent')) {
10181
+ outdent.style.display = 'none';
10182
+ }
10183
+ }
10184
+ }
10185
+ }
10016
10186
  };
10017
10187
  ContextMenu$$1.prototype.contextMenuClick = function (args) {
10018
10188
  if (args.item.id === 'Above' || args.item.id === 'Below' || args.item.id === 'Child') {
@@ -10020,6 +10190,13 @@ var ContextMenu$1 = /** @__PURE__ @class */ (function () {
10020
10190
  this.parent.setProperties({ editSettings: { newRowPosition: args.item.id } }, true);
10021
10191
  this.parent.addRecord();
10022
10192
  }
10193
+ if (args.item.id === this.parent.element.id + '_gridcontrol_cmenu_Indent' || args.item.id === this.parent.element.id + '_gridcontrol_cmenu_Outdent') {
10194
+ if (!isNullOrUndefined(this.parent.rowDragAndDropModule)) {
10195
+ var indentOutdentAction = 'indentOutdentAction';
10196
+ var action = args.item.id === this.parent.element.id + '_gridcontrol_cmenu_Indent' ? 'indent' : 'outdent';
10197
+ this.parent.rowDragAndDropModule[indentOutdentAction](null, action);
10198
+ }
10199
+ }
10023
10200
  };
10024
10201
  /**
10025
10202
  * For internal use only - Get the module name.
@@ -11195,11 +11372,13 @@ var Edit$1 = /** @__PURE__ @class */ (function () {
11195
11372
  Edit$$1.prototype.updateIndex = function (data, rows, records) {
11196
11373
  for (var j = 0; j < this.parent.getDataRows().length; j++) {
11197
11374
  var data1 = records[j];
11198
- var index = getValue('uniqueIDCollection.' + data1.uniqueID + '.index', this.parent);
11199
- data1.index = index;
11200
- if (!isNullOrUndefined(data1.parentItem)) {
11201
- var parentIndex = getValue('uniqueIDCollection.' + data1.parentItem.uniqueID + '.index', this.parent);
11202
- data1.parentItem.index = parentIndex;
11375
+ if (!isNullOrUndefined(data1)) {
11376
+ var index = getValue('uniqueIDCollection.' + data1.uniqueID + '.index', this.parent);
11377
+ data1.index = index;
11378
+ if (!isNullOrUndefined(data1.parentItem)) {
11379
+ var parentIndex = getValue('uniqueIDCollection.' + data1.parentItem.uniqueID + '.index', this.parent);
11380
+ data1.parentItem.index = parentIndex;
11381
+ }
11203
11382
  }
11204
11383
  }
11205
11384
  var count = -1;
@@ -11218,32 +11397,34 @@ var Edit$1 = /** @__PURE__ @class */ (function () {
11218
11397
  count++;
11219
11398
  }
11220
11399
  var data2 = records[count];
11221
- var index = data2.index;
11222
- var level = data2.level;
11223
- var row = rows[k];
11224
- if (!isNullOrUndefined(data2.parentItem)) {
11225
- index = getValue('uniqueIDCollection.' + data2.parentItem.uniqueID + '.index', this.parent);
11226
- }
11227
- var treecell = row.cells[treeColIndex];
11228
- if (!isNullOrUndefined(treecell)) {
11229
- for (var l = 0; l < treecell.classList.length; l++) {
11230
- var value = treecell.classList[l];
11231
- var remove$$1 = /e-gridrowindex/i;
11232
- var removed = /e-griddetailrowindex/i;
11233
- var result = value.match(remove$$1);
11234
- var results = value.match(removed);
11235
- if (result != null) {
11236
- removeClass([treecell], value);
11237
- }
11238
- if (results != null) {
11239
- removeClass([treecell], value);
11240
- }
11241
- }
11242
- if (!rows[k].classList.contains('e-detailrow')) {
11243
- addClass([treecell], 'e-gridrowindex' + index + 'level' + level);
11244
- }
11245
- else {
11246
- addClass([treecell], 'e-griddetailrowindex' + index + 'level' + level);
11400
+ if (!isNullOrUndefined(data2)) {
11401
+ var index = data2.index;
11402
+ var level = data2.level;
11403
+ var row = rows[k];
11404
+ if (!isNullOrUndefined(data2.parentItem)) {
11405
+ index = getValue('uniqueIDCollection.' + data2.parentItem.uniqueID + '.index', this.parent);
11406
+ }
11407
+ var treecell = row.cells[treeColIndex];
11408
+ if (!isNullOrUndefined(treecell)) {
11409
+ for (var l = 0; l < treecell.classList.length; l++) {
11410
+ var value = treecell.classList[l];
11411
+ var remove$$1 = /e-gridrowindex/i;
11412
+ var removed = /e-griddetailrowindex/i;
11413
+ var result = value.match(remove$$1);
11414
+ var results = value.match(removed);
11415
+ if (result != null) {
11416
+ removeClass([treecell], value);
11417
+ }
11418
+ if (results != null) {
11419
+ removeClass([treecell], value);
11420
+ }
11421
+ }
11422
+ if (!rows[k].classList.contains('e-detailrow')) {
11423
+ addClass([treecell], 'e-gridrowindex' + index + 'level' + level);
11424
+ }
11425
+ else {
11426
+ addClass([treecell], 'e-griddetailrowindex' + index + 'level' + level);
11427
+ }
11247
11428
  }
11248
11429
  }
11249
11430
  }
@@ -12583,105 +12764,6 @@ var TreeVirtual = /** @__PURE__ @class */ (function (_super) {
12583
12764
  return TreeVirtual;
12584
12765
  }(VirtualScroll));
12585
12766
 
12586
- /**
12587
- * TreeGrid Freeze module
12588
- *
12589
- * @hidden
12590
- */
12591
- var Freeze$1 = /** @__PURE__ @class */ (function () {
12592
- /**
12593
- * Constructor for render module
12594
- *
12595
- * @param {TreeGrid} parent - Tree Grid instance
12596
- */
12597
- function Freeze$$1(parent) {
12598
- Grid.Inject(Freeze);
12599
- this.parent = parent;
12600
- this.addEventListener();
12601
- }
12602
- Freeze$$1.prototype.addEventListener = function () {
12603
- this.parent.on('rowExpandCollapse', this.rowExpandCollapse, this);
12604
- this.parent.on('dataBoundArg', this.dataBoundArg, this);
12605
- this.parent.grid.on('dblclick', this.dblClickHandler, this);
12606
- };
12607
- Freeze$$1.prototype.removeEventListener = function () {
12608
- if (this.parent.isDestroyed) {
12609
- return;
12610
- }
12611
- this.parent.off('rowExpandCollapse', this.rowExpandCollapse);
12612
- this.parent.off('dataBoundArg', this.dataBoundArg);
12613
- this.parent.grid.off('dblclick', this.dblClickHandler);
12614
- };
12615
- Freeze$$1.prototype.rowExpandCollapse = function (args) {
12616
- var movableRows = this.parent.getMovableDataRows();
12617
- var frozenrows = this.parent.getRows();
12618
- var rows;
12619
- var frozenRightRows;
12620
- var freeze = (this.parent.getFrozenLeftColumnsCount() > 0 ||
12621
- this.parent.getFrozenRightColumnsCount() > 0) ? true : false;
12622
- if (freeze) {
12623
- frozenRightRows = this.parent.getFrozenRightRows().filter(function (e) {
12624
- return e.querySelector('.e-gridrowindex' + args.record.index + 'level' + (args.record.level + 1));
12625
- });
12626
- }
12627
- if (!args.detailrows.length) {
12628
- rows = movableRows.filter(function (e) {
12629
- return e.querySelector('.e-gridrowindex' + args.record.index + 'level' + (args.record.level + 1));
12630
- });
12631
- }
12632
- else {
12633
- rows = args.detailrows;
12634
- }
12635
- for (var i = 0; i < rows.length; i++) {
12636
- var rData = this.parent.grid.getRowObjectFromUID(rows[i].getAttribute('data-Uid')).data;
12637
- rows[i].style.display = args.action;
12638
- if (freeze) {
12639
- frozenRightRows[i].style.display = args.action;
12640
- }
12641
- var queryselector = args.action === 'none' ? '.e-treecolumn-container .e-treegridcollapse'
12642
- : '.e-treecolumn-container .e-treegridexpand';
12643
- if (frozenrows[rows[i].rowIndex].querySelector(queryselector)) {
12644
- var cRow = [];
12645
- for (var i_1 = 0; i_1 < movableRows.length; i_1++) {
12646
- if (movableRows[i_1].querySelector('.e-gridrowindex' + rData.index + 'level' + (rData.level + 1))) {
12647
- cRow.push(movableRows[i_1]);
12648
- }
12649
- }
12650
- if (cRow.length) {
12651
- this.rowExpandCollapse({ detailrows: cRow, action: args.action });
12652
- }
12653
- }
12654
- }
12655
- };
12656
- Freeze$$1.prototype.dblClickHandler = function (e) {
12657
- if (parentsUntil(e.target, 'e-rowcell') &&
12658
- this.parent.grid.editSettings.allowEditOnDblClick && this.parent.editSettings.mode !== 'Cell') {
12659
- this.parent.grid.editModule.startEdit(parentsUntil(e.target, 'e-row'));
12660
- }
12661
- };
12662
- Freeze$$1.prototype.dataBoundArg = function () {
12663
- var checkboxColumn = this.parent.getColumns().filter(function (e) {
12664
- return e.showCheckbox;
12665
- });
12666
- if (checkboxColumn.length && this.parent.freezeModule && this.parent.initialRender) {
12667
- addClass([this.parent.element.getElementsByClassName('e-grid')[0]], 'e-checkselection');
12668
- }
12669
- };
12670
- Freeze$$1.prototype.destroy = function () {
12671
- this.removeEventListener();
12672
- };
12673
- /**
12674
- * For internal use only - Get the module name.
12675
- *
12676
- * @private
12677
- * @returns {string} Returns Freeze module name
12678
- */
12679
- Freeze$$1.prototype.getModuleName = function () {
12680
- return 'freeze';
12681
- };
12682
- return Freeze$$1;
12683
- }());
12684
-
12685
12767
  /**
12686
12768
  * TreeGrid ColumnChooser module
12687
12769
  *
@@ -13018,7 +13100,7 @@ var InfiniteScroll$1 = /** @__PURE__ @class */ (function () {
13018
13100
  if (getValue('selectedIndex', this.parent.editModule) !== -1 && this.parent.editSettings.newRowPosition !== 'Top') {
13019
13101
  if (this.parent.editSettings.newRowPosition === 'Below' || this.parent.editSettings.newRowPosition === 'Child') {
13020
13102
  position = 'after';
13021
- newRowIndex += findChildrenRecords(currentData[newRowIndex + 1]).length;
13103
+ newRowIndex += findChildrenRecords(currentData[newRowIndex]).length;
13022
13104
  if (this.parent.editSettings.newRowPosition === 'Child') {
13023
13105
  newRowIndex -= 1; //// for child position already child record is added in childRecords so subtracting 1
13024
13106
  }