@syncfusion/ej2-treegrid 20.1.55 → 20.1.56-97113

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 (126) hide show
  1. package/.eslintrc.json +16 -1
  2. package/CHANGELOG.md +15 -32
  3. package/README.md +64 -51
  4. package/dist/ej2-treegrid.min.js +1 -0
  5. package/dist/ej2-treegrid.umd.min.js +1 -10
  6. package/dist/ej2-treegrid.umd.min.js.map +1 -1
  7. package/dist/es6/ej2-treegrid.es2015.js +2046 -1076
  8. package/dist/es6/ej2-treegrid.es2015.js.map +1 -1
  9. package/dist/es6/ej2-treegrid.es5.js +2131 -1113
  10. package/dist/es6/ej2-treegrid.es5.js.map +1 -1
  11. package/dist/global/ej2-treegrid.min.js +1 -10
  12. package/dist/global/ej2-treegrid.min.js.map +1 -1
  13. package/dist/global/index.d.ts +0 -9
  14. package/helpers/e2e/index.js +8 -6
  15. package/helpers/e2e/treegridhelper.js +82 -65
  16. package/package.json +64 -64
  17. package/src/treegrid/actions/batch-edit.js +115 -87
  18. package/src/treegrid/actions/clipboard.d.ts +3 -2
  19. package/src/treegrid/actions/clipboard.js +37 -35
  20. package/src/treegrid/actions/context-menu.js +53 -1
  21. package/src/treegrid/actions/crud-actions.js +67 -56
  22. package/src/treegrid/actions/detail-row.js +7 -7
  23. package/src/treegrid/actions/edit.d.ts +1 -0
  24. package/src/treegrid/actions/edit.js +168 -115
  25. package/src/treegrid/actions/excel-export.js +2 -2
  26. package/src/treegrid/actions/filter.js +13 -16
  27. package/src/treegrid/actions/freeze-column.d.ts +1 -0
  28. package/src/treegrid/actions/freeze-column.js +48 -11
  29. package/src/treegrid/actions/infinite-scroll.js +25 -22
  30. package/src/treegrid/actions/logger.js +10 -10
  31. package/src/treegrid/actions/page.d.ts +1 -0
  32. package/src/treegrid/actions/page.js +21 -8
  33. package/src/treegrid/actions/reorder.js +2 -2
  34. package/src/treegrid/actions/rowdragdrop.js +142 -86
  35. package/src/treegrid/actions/selection.d.ts +1 -0
  36. package/src/treegrid/actions/selection.js +71 -39
  37. package/src/treegrid/actions/sort.js +17 -5
  38. package/src/treegrid/actions/summary.js +24 -24
  39. package/src/treegrid/actions/toolbar.js +45 -43
  40. package/src/treegrid/actions/virtual-scroll.js +7 -4
  41. package/src/treegrid/base/constant.d.ts +30 -0
  42. package/src/treegrid/base/constant.js +30 -0
  43. package/src/treegrid/base/data.d.ts +1 -0
  44. package/src/treegrid/base/data.js +257 -57
  45. package/src/treegrid/base/treegrid-model.d.ts +50 -34
  46. package/src/treegrid/base/treegrid.d.ts +57 -35
  47. package/src/treegrid/base/treegrid.js +363 -200
  48. package/src/treegrid/enum.d.ts +8 -2
  49. package/src/treegrid/enum.js +2 -0
  50. package/src/treegrid/models/column.d.ts +6 -6
  51. package/src/treegrid/models/column.js +9 -9
  52. package/src/treegrid/models/index.d.ts +2 -0
  53. package/src/treegrid/models/index.js +1 -0
  54. package/src/treegrid/models/loading-indicator-model.d.ts +20 -0
  55. package/src/treegrid/models/loading-indicator.d.ts +17 -0
  56. package/src/treegrid/models/loading-indicator.js +34 -0
  57. package/src/treegrid/renderer/render.d.ts +4 -4
  58. package/src/treegrid/renderer/render.js +33 -24
  59. package/src/treegrid/renderer/virtual-row-model-generator.js +15 -6
  60. package/src/treegrid/renderer/virtual-tree-content-render.d.ts +5 -2
  61. package/src/treegrid/renderer/virtual-tree-content-render.js +224 -106
  62. package/src/treegrid/renderer/virtual-tree-freeze-render.d.ts +59 -0
  63. package/src/treegrid/renderer/virtual-tree-freeze-render.js +163 -0
  64. package/src/treegrid/utils.js +13 -12
  65. package/styles/bootstrap-dark.css +14 -1
  66. package/styles/bootstrap.css +14 -1
  67. package/styles/bootstrap4.css +14 -1
  68. package/styles/bootstrap5-dark.css +16 -2
  69. package/styles/bootstrap5.css +16 -2
  70. package/styles/fabric-dark.css +14 -1
  71. package/styles/fabric.css +14 -1
  72. package/styles/fluent-dark.css +15 -2
  73. package/styles/fluent.css +15 -2
  74. package/styles/highcontrast-light.css +14 -1
  75. package/styles/highcontrast.css +14 -1
  76. package/styles/material-dark.css +14 -1
  77. package/styles/material.css +14 -1
  78. package/styles/tailwind-dark.css +14 -1
  79. package/styles/tailwind.css +14 -1
  80. package/styles/treegrid/_all.scss +1 -1
  81. package/styles/treegrid/_bootstrap-dark-definition.scss +1 -1
  82. package/styles/treegrid/_bootstrap-definition.scss +1 -2
  83. package/styles/treegrid/_bootstrap4-definition.scss +0 -1
  84. package/styles/treegrid/_bootstrap5-definition.scss +0 -1
  85. package/styles/treegrid/_fabric-dark-definition.scss +1 -2
  86. package/styles/treegrid/_fabric-definition.scss +1 -2
  87. package/styles/treegrid/_fluent-definition.scss +0 -1
  88. package/styles/treegrid/_fusionnew-definition.scss +28 -0
  89. package/styles/treegrid/_highcontrast-definition.scss +0 -1
  90. package/styles/treegrid/_highcontrast-light-definition.scss +0 -2
  91. package/styles/treegrid/_icons.scss +12 -1
  92. package/styles/treegrid/_layout.scss +4 -4
  93. package/styles/treegrid/_material-definition.scss +0 -1
  94. package/styles/treegrid/_material3-definition.scss +28 -0
  95. package/styles/treegrid/_tailwind-definition.scss +0 -1
  96. package/styles/treegrid/_theme.scss +1 -0
  97. package/styles/treegrid/bootstrap-dark.css +14 -1
  98. package/styles/treegrid/bootstrap.css +14 -1
  99. package/styles/treegrid/bootstrap4.css +14 -1
  100. package/styles/treegrid/bootstrap5-dark.css +16 -2
  101. package/styles/treegrid/bootstrap5.css +16 -2
  102. package/styles/treegrid/fabric-dark.css +14 -1
  103. package/styles/treegrid/fabric.css +14 -1
  104. package/styles/treegrid/fluent-dark.css +15 -2
  105. package/styles/treegrid/fluent.css +15 -2
  106. package/styles/treegrid/highcontrast-light.css +14 -1
  107. package/styles/treegrid/highcontrast.css +14 -1
  108. package/styles/treegrid/icons/_bootstrap-dark.scss +12 -1
  109. package/styles/treegrid/icons/_bootstrap.scss +12 -1
  110. package/styles/treegrid/icons/_bootstrap4.scss +12 -1
  111. package/styles/treegrid/icons/_bootstrap5.scss +11 -0
  112. package/styles/treegrid/icons/_fabric-dark.scss +12 -1
  113. package/styles/treegrid/icons/_fabric.scss +12 -1
  114. package/styles/treegrid/icons/_fluent.scss +11 -0
  115. package/styles/treegrid/icons/_fusionnew.scss +26 -0
  116. package/styles/treegrid/icons/_highcontrast-light.scss +12 -1
  117. package/styles/treegrid/icons/_highcontrast.scss +11 -0
  118. package/styles/treegrid/icons/_material-dark.scss +12 -1
  119. package/styles/treegrid/icons/_material.scss +11 -0
  120. package/styles/treegrid/icons/_material3.scss +26 -0
  121. package/styles/treegrid/icons/_tailwind-dark.scss +11 -0
  122. package/styles/treegrid/icons/_tailwind.scss +11 -0
  123. package/styles/treegrid/material-dark.css +14 -1
  124. package/styles/treegrid/material.css +14 -1
  125. package/styles/treegrid/tailwind-dark.css +14 -1
  126. package/styles/treegrid/tailwind.css +14 -1
@@ -73,7 +73,7 @@ var Filter = /** @class */ (function () {
73
73
  this.filteredResult = [];
74
74
  this.isHierarchyFilter = false;
75
75
  for (var f = 0; f < this.flatFilteredData.length; f++) {
76
- var rec = this.flatFilteredData[f];
76
+ var rec = this.flatFilteredData[parseInt(f.toString(), 10)];
77
77
  this.addParentRecord(rec);
78
78
  var hierarchyMode = this.parent.grid.searchSettings.key === '' ? this.parent.filterSettings.hierarchyMode
79
79
  : this.parent.searchSettings.hierarchyMode;
@@ -155,9 +155,6 @@ var Filter = /** @class */ (function () {
155
155
  }
156
156
  }
157
157
  else {
158
- if (parent['expanded'] === false && this.parent.getVisibleRecords().indexOf(record) === -1 && isNullOrUndefined(this.parent['dataResults']['action'])) {
159
- this.parent.expandRow(this.parent.getRows()[parent['index']], parent);
160
- }
161
158
  this.addParentRecord(parent);
162
159
  }
163
160
  }
@@ -171,27 +168,27 @@ var Filter = /** @class */ (function () {
171
168
  var childRec = getObject('childRecords', records);
172
169
  var isExist = false;
173
170
  for (var count = 0; count < childRec.length; count++) {
174
- var ischild = childRec[count].childRecords;
171
+ var ischild = childRec[parseInt(count.toString(), 10)].childRecords;
175
172
  var hierarchyMode = this.parent.grid.searchSettings.key === '' ?
176
173
  this.parent.filterSettings.hierarchyMode : this.parent.searchSettings.hierarchyMode;
177
174
  if (((hierarchyMode === 'Child' || hierarchyMode === 'Both') && (this.parent.grid.filterSettings.columns.length !== 0
178
175
  || this.parent.grid.searchSettings.key !== ''))) {
179
176
  var uniqueIDValue = getValue('uniqueIDFilterCollection', this.parent);
180
- if (!Object.prototype.hasOwnProperty.call(uniqueIDValue, childRec[count].uniqueID)) {
181
- this.filteredResult.push(childRec[count]);
182
- setValue('uniqueIDFilterCollection.' + childRec[count].uniqueID, childRec[count], this.parent);
177
+ if (!Object.prototype.hasOwnProperty.call(uniqueIDValue, childRec[parseInt(count.toString(), 10)].uniqueID)) {
178
+ this.filteredResult.push(childRec[parseInt(count.toString(), 10)]);
179
+ setValue('uniqueIDFilterCollection.' + childRec[parseInt(count.toString(), 10)].uniqueID, childRec[parseInt(count.toString(), 10)], this.parent);
183
180
  isExist = true;
184
181
  }
185
182
  }
186
183
  if ((hierarchyMode === 'None')
187
184
  && (this.parent.grid.filterSettings.columns.length !== 0 || this.parent.grid.searchSettings.key !== '')) {
188
- if (this.flatFilteredData.indexOf(childRec[count]) !== -1) {
185
+ if (this.flatFilteredData.indexOf(childRec[parseInt(count.toString(), 10)]) !== -1) {
189
186
  isExist = true;
190
187
  break;
191
188
  }
192
189
  }
193
190
  if (!isNullOrUndefined(ischild) && ischild.length) {
194
- isExist = this.checkChildExsist(childRec[count]);
191
+ isExist = this.checkChildExsist(childRec[parseInt(count.toString(), 10)]);
195
192
  }
196
193
  if ((hierarchyMode === 'Child' || hierarchyMode === 'Both') && childRec.length) {
197
194
  isExist = true;
@@ -203,15 +200,15 @@ var Filter = /** @class */ (function () {
203
200
  var record = this.filteredResult;
204
201
  var len = this.filteredResult.length;
205
202
  for (var c = 0; c < len; c++) {
206
- var parent_2 = getParentData(this.parent, record[c].parentUniqueID);
203
+ var parent_2 = getParentData(this.parent, record[parseInt(c.toString(), 10)].parentUniqueID);
207
204
  var isPrst = record.indexOf(parent_2) !== -1;
208
205
  if (isPrst) {
209
- var parent_3 = getParentData(this.parent, record[c].parentUniqueID, true);
210
- record[c].filterLevel = parent_3.filterLevel + 1;
206
+ var parent_3 = getParentData(this.parent, record[parseInt(c.toString(), 10)].parentUniqueID, true);
207
+ record[parseInt(c.toString(), 10)].filterLevel = parent_3.filterLevel + 1;
211
208
  }
212
209
  else {
213
- record[c].filterLevel = 0;
214
- this.filteredParentRecs.push(record[c]);
210
+ record[parseInt(c.toString(), 10)].filterLevel = 0;
211
+ this.filteredParentRecs.push(record[parseInt(c.toString(), 10)]);
215
212
  }
216
213
  }
217
214
  };
@@ -221,7 +218,7 @@ var Filter = /** @class */ (function () {
221
218
  var len = flatData.length;
222
219
  var currentRecord;
223
220
  for (count; count < len; count++) {
224
- currentRecord = flatData[count];
221
+ currentRecord = flatData[parseInt(count.toString(), 10)];
225
222
  var fLevel = currentRecord.filterLevel;
226
223
  if (fLevel || fLevel === 0 || !isNullOrUndefined(currentRecord.hasFilteredChildRecords)) {
227
224
  currentRecord.hasFilteredChildRecords = null;
@@ -14,6 +14,7 @@ export declare class Freeze {
14
14
  constructor(parent?: TreeGrid);
15
15
  addEventListener(): void;
16
16
  removeEventListener(): void;
17
+ protected instantiateRenderer(): void;
17
18
  private rowExpandCollapse;
18
19
  private dblClickHandler;
19
20
  private dataBoundArg;
@@ -1,6 +1,7 @@
1
- import { parentsUntil } from '@syncfusion/ej2-grids';
1
+ import { ColumnFreezeContentRenderer, ColumnFreezeHeaderRenderer, FreezeContentRender, FreezeRender, parentsUntil, RenderType } from '@syncfusion/ej2-grids';
2
2
  import { Grid, Freeze as FreezeColumn } from '@syncfusion/ej2-grids';
3
- import { addClass } from '@syncfusion/ej2-base';
3
+ import { addClass, getValue } from '@syncfusion/ej2-base';
4
+ import { ColumnVirtualTreeFreezeRenderer, VirtualTreeFreezeRenderer, VirtualTreeFreezeHdrRenderer } from '../renderer/virtual-tree-freeze-render';
4
5
  /**
5
6
  * TreeGrid Freeze module
6
7
  *
@@ -21,6 +22,7 @@ var Freeze = /** @class */ (function () {
21
22
  this.parent.on('rowExpandCollapse', this.rowExpandCollapse, this);
22
23
  this.parent.on('dataBoundArg', this.dataBoundArg, this);
23
24
  this.parent.grid.on('dblclick', this.dblClickHandler, this);
25
+ this.parent.grid.on('initial-load', this.instantiateRenderer, this);
24
26
  };
25
27
  Freeze.prototype.removeEventListener = function () {
26
28
  if (this.parent.isDestroyed) {
@@ -29,6 +31,40 @@ var Freeze = /** @class */ (function () {
29
31
  this.parent.off('rowExpandCollapse', this.rowExpandCollapse);
30
32
  this.parent.off('dataBoundArg', this.dataBoundArg);
31
33
  this.parent.grid.off('dblclick', this.dblClickHandler);
34
+ this.parent.grid.off('initial-load', this.instantiateRenderer);
35
+ };
36
+ Freeze.prototype.instantiateRenderer = function () {
37
+ var renderer = getValue('serviceLocator', this.parent.grid).getService('rendererFactory');
38
+ if (this.parent.getFrozenColumns()) {
39
+ if (this.parent.enableColumnVirtualization) {
40
+ getValue('addRenderer', renderer)
41
+ .apply(renderer, [RenderType.Header, new VirtualTreeFreezeHdrRenderer(getValue('grid', this.parent), getValue('serviceLocator', this.parent.grid))]);
42
+ }
43
+ else {
44
+ getValue('addRenderer', renderer)
45
+ .apply(renderer, [RenderType.Header, new FreezeRender(getValue('grid', this.parent), getValue('serviceLocator', this.parent.grid))]);
46
+ }
47
+ if (this.parent.enableVirtualization) {
48
+ getValue('addRenderer', renderer)
49
+ .apply(renderer, [RenderType.Content, new VirtualTreeFreezeRenderer(getValue('grid', this.parent), getValue('serviceLocator', this.parent.grid))]);
50
+ }
51
+ else {
52
+ getValue('addRenderer', renderer)
53
+ .apply(renderer, [RenderType.Content, new FreezeContentRender(getValue('grid', this.parent), getValue('serviceLocator', this.parent.grid))]);
54
+ }
55
+ }
56
+ if (this.parent.getFrozenLeftColumnsCount() || this.parent.getFrozenRightColumnsCount()) {
57
+ getValue('addRenderer', renderer)
58
+ .apply(renderer, [RenderType.Header, new ColumnFreezeHeaderRenderer(getValue('grid', this.parent), getValue('serviceLocator', this.parent.grid))]);
59
+ if (this.parent.enableVirtualization) {
60
+ getValue('addRenderer', renderer)
61
+ .apply(renderer, [RenderType.Content, new ColumnVirtualTreeFreezeRenderer(getValue('grid', this.parent), getValue('serviceLocator', this.parent.grid))]);
62
+ }
63
+ else {
64
+ getValue('addRenderer', renderer)
65
+ .apply(renderer, [RenderType.Content, new ColumnFreezeContentRenderer(getValue('grid', this.parent), getValue('serviceLocator', this.parent.grid))]);
66
+ }
67
+ }
32
68
  };
33
69
  Freeze.prototype.rowExpandCollapse = function (args) {
34
70
  var movableRows = this.parent.getMovableDataRows();
@@ -51,29 +87,30 @@ var Freeze = /** @class */ (function () {
51
87
  rows = args.detailrows;
52
88
  }
53
89
  for (var i = 0; i < rows.length; i++) {
54
- var rData = this.parent.grid.getRowObjectFromUID(rows[i].getAttribute('data-Uid')).data;
55
- rows[i].style.display = args.action;
56
- if (freeze) {
57
- frozenRightRows[i].style.display = args.action;
90
+ var rData = this.parent.grid.getRowObjectFromUID(rows[parseInt(i.toString(), 10)].getAttribute('data-Uid')).data;
91
+ rows[parseInt(i.toString(), 10)].style.display = args.action;
92
+ if (freeze && frozenRightRows.length) {
93
+ frozenRightRows[parseInt(i.toString(), 10)].style.display = args.action;
58
94
  }
59
95
  var queryselector = args.action === 'none' ? '.e-treecolumn-container .e-treegridcollapse'
60
96
  : '.e-treecolumn-container .e-treegridexpand';
61
- if (frozenrows[rows[i].rowIndex].querySelector(queryselector)) {
97
+ if (frozenrows[rows[parseInt(i.toString(), 10)].rowIndex].querySelector(queryselector)) {
62
98
  var cRow = [];
63
99
  for (var i_1 = 0; i_1 < movableRows.length; i_1++) {
64
- if (movableRows[i_1].querySelector('.e-gridrowindex' + rData.index + 'level' + (rData.level + 1))) {
65
- cRow.push(movableRows[i_1]);
100
+ if (movableRows[parseInt(i_1.toString(), 10)].querySelector('.e-gridrowindex' + rData.index + 'level' + (rData.level + 1))) {
101
+ cRow.push(movableRows[parseInt(i_1.toString(), 10)]);
66
102
  }
67
103
  }
68
104
  if (cRow.length) {
69
- this.rowExpandCollapse({ detailrows: cRow, action: args.action });
105
+ var data = this.parent.getCurrentViewRecords()[cRow[0].rowIndex];
106
+ this.rowExpandCollapse({ detailrows: cRow, action: args.action, record: data });
70
107
  }
71
108
  }
72
109
  }
73
110
  };
74
111
  Freeze.prototype.dblClickHandler = function (e) {
75
112
  if (parentsUntil(e.target, 'e-rowcell') &&
76
- this.parent.grid.editSettings.allowEditOnDblClick && this.parent.editSettings.mode !== 'Cell') {
113
+ this.parent.grid.editSettings.allowEditOnDblClick && this.parent.editSettings.mode !== 'Cell' && (!e.target['classList'].contains('e-treegridcollapse') && !e.target['classList'].contains('e-treegridexpand'))) {
77
114
  this.parent.grid.editModule.startEdit(parentsUntil(e.target, 'e-row'));
78
115
  }
79
116
  };
@@ -70,25 +70,25 @@ var InfiniteScroll = /** @class */ (function () {
70
70
  var rowObjects = this.parent.grid.getRowsObject();
71
71
  var locator = 'serviceLocator';
72
72
  var generateRows = 'generateRows';
73
- var serviceLocator = this.parent.grid.infiniteScrollModule[locator];
73
+ var serviceLocator = this.parent.grid.infiniteScrollModule["" + locator];
74
74
  var rowRenderer = new RowRenderer(serviceLocator, null, this.parent.grid);
75
75
  var rows = this.parent.getRows();
76
76
  var position = args.index === rows.length - 1 ? 'after' : 'before';
77
77
  var cols = this.parent.grid.getColumns();
78
- var childRowObjects = this.parent.grid.infiniteScrollModule[generateRows](args.childData, args);
78
+ var childRowObjects = this.parent.grid.infiniteScrollModule["" + generateRows](args.childData, args);
79
79
  var childRowElements = [];
80
80
  for (var i = 0; i < childRowObjects.length; i++) {
81
- childRowElements.push(rowRenderer.render(childRowObjects[i], cols));
81
+ childRowElements.push(rowRenderer.render(childRowObjects[parseInt(i.toString(), 10)], cols));
82
82
  }
83
83
  rowObjects.splice.apply(rowObjects, [args.index + 1, 0].concat(childRowObjects));
84
84
  for (var i = 0; i < childRowElements.length; i++) {
85
85
  if (position === 'after') {
86
- rows[args.index + i][position](childRowElements[i]);
86
+ rows[args.index + i]["" + position](childRowElements[parseInt(i.toString(), 10)]);
87
87
  }
88
88
  else {
89
- rows[args.index + i + 1][position](childRowElements[i]);
89
+ rows[args.index + i + 1]["" + position](childRowElements[parseInt(i.toString(), 10)]);
90
90
  }
91
- rows.splice(args.index + 1 + i, 0, childRowElements[i]);
91
+ rows.splice(args.index + 1 + i, 0, childRowElements[parseInt(i.toString(), 10)]);
92
92
  }
93
93
  resetRowIndex(this.parent.grid, this.parent.grid.getRowsObject(), this.parent.grid.getRows(), 0);
94
94
  };
@@ -100,9 +100,9 @@ var InfiniteScroll = /** @class */ (function () {
100
100
  InfiniteScroll.prototype.contentready = function () {
101
101
  if (this.parent.infiniteScrollSettings.enableCache && !isNullOrUndefined(this.parent.editModule)) {
102
102
  var updateIndex = 'updateIndex';
103
- this.parent.editModule[updateIndex](this.parent.grid.dataSource, this.parent.getRows(), this.parent.getCurrentViewRecords());
103
+ this.parent.editModule["" + updateIndex](this.parent.grid.dataSource, this.parent.getRows(), this.parent.getCurrentViewRecords());
104
104
  if (this.parent.getFrozenColumns()) {
105
- this.parent.editModule[updateIndex](this.parent.grid.dataSource, this.parent.getMovableDataRows(), this.parent.getCurrentViewRecords());
105
+ this.parent.editModule["" + updateIndex](this.parent.grid.dataSource, this.parent.getMovableDataRows(), this.parent.getCurrentViewRecords());
106
106
  }
107
107
  }
108
108
  };
@@ -137,6 +137,9 @@ var InfiniteScroll = /** @class */ (function () {
137
137
  });
138
138
  var actionArgs = getValue('actionArgs', pageingDetails.actionArgs);
139
139
  var actions = getValue('actions', this.parent.grid.infiniteScrollModule);
140
+ if (this.parent.grid.infiniteScrollModule['isInitialRender'] && !this.parent.initialRender) {
141
+ this.parent.grid.pageSettings.currentPage = 1;
142
+ }
140
143
  var initial = actions.some(function (value) { return value === actionArgs.requestType; });
141
144
  var initialRender = initial ? true : this.parent.initialRender ? true : false;
142
145
  this.visualData = visualData;
@@ -151,8 +154,8 @@ var InfiniteScroll = /** @class */ (function () {
151
154
  this.parent.infiniteScrollSettings.initialBlocks = this.parent.infiniteScrollSettings.maxBlocks;
152
155
  }
153
156
  var size = initialRender ?
154
- this.parent.pageSettings.pageSize * this.parent.infiniteScrollSettings.initialBlocks :
155
- this.parent.pageSettings.pageSize;
157
+ this.parent.grid.pageSettings.pageSize * this.parent.infiniteScrollSettings.initialBlocks :
158
+ this.parent.grid.pageSettings.pageSize;
156
159
  var current = this.parent.grid.pageSettings.currentPage;
157
160
  if (!isNullOrUndefined(actionArgs)) {
158
161
  var lastIndex = getValue('lastIndex', this.parent.grid.infiniteScrollModule);
@@ -170,7 +173,7 @@ var InfiniteScroll = /** @class */ (function () {
170
173
  else {
171
174
  if ((pageingDetails.actionArgs['action'] === 'expand' || pageingDetails.actionArgs['action'] === 'collapse') && this.parent.grid.pageSettings.currentPage !== 1) {
172
175
  current = 1;
173
- size = this.parent.pageSettings.pageSize * this.parent.grid.pageSettings.currentPage;
176
+ size = this.parent.grid.pageSettings.pageSize * this.parent.grid.pageSettings.currentPage;
174
177
  }
175
178
  query = query.page(current, size);
176
179
  }
@@ -198,11 +201,11 @@ var InfiniteScroll = /** @class */ (function () {
198
201
  */
199
202
  InfiniteScroll.prototype.infiniteEditHandler = function (args) {
200
203
  var infiniteData = 'infiniteCurrentViewData';
201
- var infiniteCurrentViewData = this.parent.grid.infiniteScrollModule[infiniteData];
204
+ var infiniteCurrentViewData = this.parent.grid.infiniteScrollModule["" + infiniteData];
202
205
  var keys = Object.keys(infiniteCurrentViewData);
203
206
  if (args.e.requestType === 'delete' && args.result.length > 1) {
204
207
  for (var i = 1; i < args.result.length; i++) {
205
- infiniteCurrentViewData[keys[keys.length - 1]].push(args.result[i]);
208
+ infiniteCurrentViewData[keys[keys.length - 1]].push(args.result[parseInt(i.toString(), 10)]);
206
209
  }
207
210
  }
208
211
  };
@@ -241,13 +244,13 @@ var InfiniteScroll = /** @class */ (function () {
241
244
  var resetInfiniteCurrentViewData = 'resetInfiniteCurrentViewData';
242
245
  var _loop_1 = function (i) {
243
246
  rows.filter(function (e, index) {
244
- if (e.data[keyField] === data[i][keyField]) {
247
+ if (e.data["" + keyField] === data[parseInt(i.toString(), 10)]["" + keyField]) {
245
248
  if (isFrozen) {
246
249
  var page = Math.ceil((index + 1) / _this.parent.grid.pageSettings.pageSize);
247
- _this.parent.grid.infiniteScrollModule[resetInfiniteCurrentViewData](page, index);
250
+ _this.parent.grid.infiniteScrollModule["" + resetInfiniteCurrentViewData](page, index);
248
251
  }
249
252
  rows.splice(index, 1);
250
- remove(rowElms[index]);
253
+ remove(rowElms[parseInt(index.toString(), 10)]);
251
254
  rowElms.splice(index, 1);
252
255
  }
253
256
  });
@@ -263,7 +266,7 @@ var InfiniteScroll = /** @class */ (function () {
263
266
  var locator = 'serviceLocator';
264
267
  var actionArgs = eventArgs.args.e;
265
268
  var row = eventArgs.row;
266
- var serviceLocator = this.parent.grid.infiniteScrollModule[locator];
269
+ var serviceLocator = this.parent.grid.infiniteScrollModule["" + locator];
267
270
  var rowRenderer = new RowRenderer(serviceLocator, null, this.parent.grid);
268
271
  var tbody;
269
272
  var currentData = this.parent.getCurrentViewRecords();
@@ -287,22 +290,22 @@ var InfiniteScroll = /** @class */ (function () {
287
290
  }
288
291
  var position;
289
292
  var addRowIndex = 'addRowIndex';
290
- var newRowIndex = this.parent.editModule[addRowIndex];
293
+ var newRowIndex = this.parent.editModule["" + addRowIndex];
291
294
  for (var i = 0; i < row.length; i++) {
292
- var newRow = rowRenderer.render(row[i], this.parent.grid.getColumns());
295
+ var newRow = rowRenderer.render(row[parseInt(i.toString(), 10)], this.parent.grid.getColumns());
293
296
  if (actionArgs.requestType === 'save' && actionArgs.action === 'add') {
294
297
  if (getValue('selectedIndex', this.parent.editModule) !== -1 && this.parent.editSettings.newRowPosition !== 'Top') {
295
298
  if (this.parent.editSettings.newRowPosition === 'Below' || this.parent.editSettings.newRowPosition === 'Child') {
296
299
  position = 'after';
297
- newRowIndex += findChildrenRecords(currentData[newRowIndex + 1]).length;
300
+ newRowIndex += findChildrenRecords(currentData[parseInt(newRowIndex.toString(), 10)]).length;
298
301
  if (this.parent.editSettings.newRowPosition === 'Child') {
299
302
  newRowIndex -= 1; //// for child position already child record is added in childRecords so subtracting 1
300
303
  }
301
- currentRows[newRowIndex][position](newRow);
304
+ currentRows[parseInt(newRowIndex.toString(), 10)]["" + position](newRow);
302
305
  }
303
306
  else if (this.parent.editSettings.newRowPosition === 'Above') {
304
307
  position = 'before';
305
- currentRows[this.parent.editModule[addRowIndex]][position](newRow);
308
+ currentRows[this.parent.editModule["" + addRowIndex]]["" + position](newRow);
306
309
  }
307
310
  }
308
311
  else if (this.parent.editSettings.newRowPosition === 'Bottom') {
@@ -49,36 +49,36 @@ var Logger = /** @class */ (function (_super) {
49
49
  }
50
50
  var type = types;
51
51
  for (var i = 0; i < type.length; i++) {
52
- var item = detailLists[type[i]];
52
+ var item = detailLists[type[parseInt(i.toString(), 10)]];
53
53
  var cOp = item.check(args, this.parent);
54
54
  if (cOp.success) {
55
55
  var message = item.generateMessage(args, this.parent, cOp.options);
56
56
  message = message.replace('EJ2Grid', 'EJ2TreeGrid').replace('* Hierarchy Grid', '').replace('* Grouping', '');
57
- if (IsRowDDEnabled && type[i] === 'primary_column_missing') {
57
+ if (IsRowDDEnabled && type[parseInt(i.toString(), 10)] === 'primary_column_missing') {
58
58
  message = message.replace('Editing', 'Row DragAndDrop');
59
59
  IsRowDDEnabled = false;
60
60
  }
61
61
  var index = message.indexOf('https');
62
62
  var gridurl = message.substring(index);
63
- if (type[i] === 'module_missing') {
63
+ if (type[parseInt(i.toString(), 10)] === 'module_missing') {
64
64
  message = message.replace(gridurl, DOC_URL + '/modules');
65
65
  }
66
- else if (type[i] === 'primary_column_missing' || type[i] === 'selection_key_missing') {
66
+ else if (type[parseInt(i.toString(), 10)] === 'primary_column_missing' || type[parseInt(i.toString(), 10)] === 'selection_key_missing') {
67
67
  message = message.replace(gridurl, BASE_DOC_URL + '/api/treegrid/column/#isprimarykey');
68
68
  }
69
- else if (type[i] === 'grid_remote_edit') {
69
+ else if (type[parseInt(i.toString(), 10)] === 'grid_remote_edit') {
70
70
  message = message.replace(gridurl, DOC_URL + '/edit');
71
71
  }
72
- else if (type[i] === 'virtual_height') {
72
+ else if (type[parseInt(i.toString(), 10)] === 'virtual_height') {
73
73
  message = message.replace(gridurl, DOC_URL + '/virtual');
74
74
  }
75
- else if (type[i] === 'check_datasource_columns') {
75
+ else if (type[parseInt(i.toString(), 10)] === 'check_datasource_columns') {
76
76
  message = message.replace(gridurl, DOC_URL + '/columns');
77
77
  }
78
- else if (type[i] === 'locale_missing') {
78
+ else if (type[parseInt(i.toString(), 10)] === 'locale_missing') {
79
79
  message = message.replace(gridurl, DOC_URL + '/global-local/#localization');
80
80
  }
81
- if (type[i] === 'datasource_syntax_mismatch') {
81
+ if (type[parseInt(i.toString(), 10)] === 'datasource_syntax_mismatch') {
82
82
  if (!isNullOrUndefined(this.treeGridObj) && !isNullOrUndefined(this.treeGridObj.dataStateChange)) {
83
83
  // eslint-disable-next-line no-console
84
84
  console[item.logType](message);
@@ -102,7 +102,7 @@ var Logger = /** @class */ (function (_super) {
102
102
  this.log('primary_column_missing', args);
103
103
  }
104
104
  for (var i = 0; i < type.length; i++) {
105
- var item = treeGridDetails[type[i]];
105
+ var item = treeGridDetails[type[parseInt(i.toString(), 10)]];
106
106
  var cOp = item.check(args, treeGrid);
107
107
  if (cOp.success) {
108
108
  var message = item.generateMessage(args, treeGrid, cOp.options);
@@ -62,5 +62,6 @@ export declare class Page {
62
62
  */
63
63
  private collapseExpandPagedchilds;
64
64
  private pageRoot;
65
+ private updatePageSize;
65
66
  private pageAction;
66
67
  }
@@ -89,10 +89,12 @@ var Page = /** @class */ (function () {
89
89
  */
90
90
  Page.prototype.collapseExpandPagedchilds = function (rowDetails) {
91
91
  rowDetails.record.expanded = rowDetails.action === 'collapse' ? false : true;
92
+ this.parent.flatData.map(function (e) { return e.expanded = e.uniqueID === rowDetails.record.uniqueID &&
93
+ e.expanded !== rowDetails.record.expanded ? rowDetails.record.expanded : e.expanded; });
92
94
  if (this.parent.enableImmutableMode) {
93
95
  var primaryKeyField_1 = this.parent.getPrimaryKeyFieldNames()[0];
94
96
  var record = this.parent.flatData.filter(function (e) {
95
- return e[primaryKeyField_1] === rowDetails.record[primaryKeyField_1];
97
+ return e["" + primaryKeyField_1] === rowDetails.record["" + primaryKeyField_1];
96
98
  });
97
99
  if (record.length) {
98
100
  record[0].expanded = rowDetails.record.expanded;
@@ -110,15 +112,15 @@ var Page = /** @class */ (function () {
110
112
  var row = 'row';
111
113
  var action = 'action';
112
114
  var targetEle = void 0;
113
- if (ret[action] === 'collapse') {
114
- targetEle = ret[row].getElementsByClassName('e-treegridexpand')[0];
115
+ if (ret["" + action] === 'collapse') {
116
+ targetEle = ret["" + row].getElementsByClassName('e-treegridexpand')[0];
115
117
  if (!isNullOrUndefined(targetEle)) {
116
118
  removeClass([targetEle], 'e-treegridexpand');
117
119
  addClass([targetEle], 'e-treegridcollapse');
118
120
  }
119
121
  }
120
- else if (ret[action] === 'expand') {
121
- targetEle = ret[row].getElementsByClassName('e-treegridcollapse')[0];
122
+ else if (ret["" + action] === 'expand') {
123
+ targetEle = ret["" + row].getElementsByClassName('e-treegridcollapse')[0];
122
124
  if (!isNullOrUndefined(targetEle)) {
123
125
  removeClass([targetEle], 'e-treegridcollapse');
124
126
  addClass([targetEle], 'e-treegridexpand');
@@ -129,11 +131,11 @@ var Page = /** @class */ (function () {
129
131
  Page.prototype.pageRoot = function (pagedResults, temp, result) {
130
132
  var newResults = isNullOrUndefined(result) ? [] : result;
131
133
  var _loop_1 = function (t) {
132
- newResults.push(temp[t]);
134
+ newResults.push(temp[parseInt(t.toString(), 10)]);
133
135
  var res = [];
134
- if (temp[t].hasChildRecords) {
136
+ if (temp[parseInt(t.toString(), 10)].hasChildRecords) {
135
137
  res = pagedResults.filter(function (e) {
136
- return temp[t].uniqueID === e.parentUniqueID;
138
+ return temp[parseInt(t.toString(), 10)].uniqueID === e.parentUniqueID;
137
139
  });
138
140
  newResults = this_1.pageRoot(pagedResults, res, newResults);
139
141
  }
@@ -144,6 +146,16 @@ var Page = /** @class */ (function () {
144
146
  }
145
147
  return newResults;
146
148
  };
149
+ Page.prototype.updatePageSize = function (pageingDetails) {
150
+ var updateSize = pageingDetails.result.length;
151
+ var gridPagerModule = this.parent.grid.pagerModule;
152
+ if (this.parent.pageSettings.pageSizes === true) {
153
+ if (gridPagerModule.pagerObj.pagerdropdownModule['dropDownListObject'].value === gridPagerModule.pagerObj.getLocalizedLabel('All')) {
154
+ gridPagerModule['pagerObj'].totalRecordsCount = updateSize;
155
+ this.parent.grid.pageSettings.pageSize = updateSize;
156
+ }
157
+ }
158
+ };
147
159
  Page.prototype.pageAction = function (pageingDetails) {
148
160
  var _this = this;
149
161
  var dm = new DataManager(pageingDetails.result);
@@ -180,6 +192,7 @@ var Page = /** @class */ (function () {
180
192
  pageingDetails.count = visualData.length;
181
193
  var query = new Query();
182
194
  var size = this.parent.grid.pageSettings.pageSize;
195
+ this.updatePageSize(pageingDetails);
183
196
  var current = this.parent.grid.pageSettings.currentPage;
184
197
  if (visualData.length < (current * size)) {
185
198
  current = (Math.floor(visualData.length / size)) + ((visualData.length % size) ? 1 : 0);
@@ -48,12 +48,12 @@ var Reorder = /** @class */ (function () {
48
48
  };
49
49
  Reorder.prototype.getTreeColumn = function () {
50
50
  var columnModel = 'columnModel';
51
- var treeColumn = this.parent[columnModel][this.parent.treeColumnIndex];
51
+ var treeColumn = this.parent["" + columnModel][this.parent.treeColumnIndex];
52
52
  var treeIndex;
53
53
  var updatedCols = this.parent.getColumns();
54
54
  for (var f = 0; f < updatedCols.length; f++) {
55
55
  var treeColumnfield = getObject('field', treeColumn);
56
- var parentColumnfield = getObject('field', updatedCols[f]);
56
+ var parentColumnfield = getObject('field', updatedCols[parseInt(f.toString(), 10)]);
57
57
  if (treeColumnfield === parentColumnfield) {
58
58
  treeIndex = f;
59
59
  break;