@syncfusion/ej2-treegrid 31.1.17 → 31.1.20

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 (136) hide show
  1. package/dist/ej2-treegrid.min.js +2 -2
  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 +13 -4
  5. package/dist/es6/ej2-treegrid.es2015.js.map +1 -1
  6. package/dist/es6/ej2-treegrid.es5.js +13 -4
  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 +14 -50
  12. package/src/treegrid/actions/edit.js +1 -1
  13. package/src/treegrid/actions/rowdragdrop.js +12 -3
  14. package/styles/bootstrap4-lite.css +8 -0
  15. package/styles/bootstrap4.css +8 -0
  16. package/styles/treegrid/bootstrap4.css +8 -0
  17. package/dist/ts/index.d.ts +0 -4
  18. package/dist/ts/index.ts +0 -4
  19. package/dist/ts/treegrid/actions/batch-edit.d.ts +0 -74
  20. package/dist/ts/treegrid/actions/batch-edit.ts +0 -627
  21. package/dist/ts/treegrid/actions/clipboard.d.ts +0 -36
  22. package/dist/ts/treegrid/actions/clipboard.ts +0 -174
  23. package/dist/ts/treegrid/actions/column-chooser.d.ts +0 -37
  24. package/dist/ts/treegrid/actions/column-chooser.ts +0 -55
  25. package/dist/ts/treegrid/actions/column-menu.d.ts +0 -24
  26. package/dist/ts/treegrid/actions/column-menu.ts +0 -39
  27. package/dist/ts/treegrid/actions/command-column.d.ts +0 -24
  28. package/dist/ts/treegrid/actions/command-column.ts +0 -32
  29. package/dist/ts/treegrid/actions/context-menu.d.ts +0 -42
  30. package/dist/ts/treegrid/actions/context-menu.ts +0 -149
  31. package/dist/ts/treegrid/actions/crud-actions.d.ts +0 -66
  32. package/dist/ts/treegrid/actions/crud-actions.ts +0 -388
  33. package/dist/ts/treegrid/actions/detail-row.d.ts +0 -39
  34. package/dist/ts/treegrid/actions/detail-row.ts +0 -124
  35. package/dist/ts/treegrid/actions/edit.d.ts +0 -121
  36. package/dist/ts/treegrid/actions/edit.ts +0 -1083
  37. package/dist/ts/treegrid/actions/excel-export.d.ts +0 -67
  38. package/dist/ts/treegrid/actions/excel-export.ts +0 -240
  39. package/dist/ts/treegrid/actions/filter.d.ts +0 -57
  40. package/dist/ts/treegrid/actions/filter.ts +0 -231
  41. package/dist/ts/treegrid/actions/freeze-column.d.ts +0 -28
  42. package/dist/ts/treegrid/actions/freeze-column.ts +0 -119
  43. package/dist/ts/treegrid/actions/index.d.ts +0 -24
  44. package/dist/ts/treegrid/actions/index.ts +0 -24
  45. package/dist/ts/treegrid/actions/infinite-scroll.d.ts +0 -96
  46. package/dist/ts/treegrid/actions/infinite-scroll.ts +0 -320
  47. package/dist/ts/treegrid/actions/logger.d.ts +0 -25
  48. package/dist/ts/treegrid/actions/logger.ts +0 -136
  49. package/dist/ts/treegrid/actions/page.d.ts +0 -67
  50. package/dist/ts/treegrid/actions/page.ts +0 -212
  51. package/dist/ts/treegrid/actions/pdf-export.d.ts +0 -63
  52. package/dist/ts/treegrid/actions/pdf-export.ts +0 -182
  53. package/dist/ts/treegrid/actions/print.d.ts +0 -37
  54. package/dist/ts/treegrid/actions/print.ts +0 -69
  55. package/dist/ts/treegrid/actions/reorder.d.ts +0 -36
  56. package/dist/ts/treegrid/actions/reorder.ts +0 -60
  57. package/dist/ts/treegrid/actions/resize.d.ts +0 -36
  58. package/dist/ts/treegrid/actions/resize.ts +0 -54
  59. package/dist/ts/treegrid/actions/rowdragdrop.d.ts +0 -405
  60. package/dist/ts/treegrid/actions/rowdragdrop.ts +0 -1896
  61. package/dist/ts/treegrid/actions/selection.d.ts +0 -51
  62. package/dist/ts/treegrid/actions/selection.ts +0 -530
  63. package/dist/ts/treegrid/actions/sort.d.ts +0 -63
  64. package/dist/ts/treegrid/actions/sort.ts +0 -149
  65. package/dist/ts/treegrid/actions/summary.d.ts +0 -47
  66. package/dist/ts/treegrid/actions/summary.ts +0 -231
  67. package/dist/ts/treegrid/actions/toolbar.d.ts +0 -52
  68. package/dist/ts/treegrid/actions/toolbar.ts +0 -154
  69. package/dist/ts/treegrid/actions/virtual-scroll.d.ts +0 -90
  70. package/dist/ts/treegrid/actions/virtual-scroll.ts +0 -306
  71. package/dist/ts/treegrid/base/constant.d.ts +0 -158
  72. package/dist/ts/treegrid/base/constant.ts +0 -158
  73. package/dist/ts/treegrid/base/data.d.ts +0 -90
  74. package/dist/ts/treegrid/base/data.ts +0 -904
  75. package/dist/ts/treegrid/base/index.d.ts +0 -11
  76. package/dist/ts/treegrid/base/index.ts +0 -11
  77. package/dist/ts/treegrid/base/interface.d.ts +0 -186
  78. package/dist/ts/treegrid/base/interface.ts +0 -191
  79. package/dist/ts/treegrid/base/treegrid-model.d.ts +0 -1100
  80. package/dist/ts/treegrid/base/treegrid.d.ts +0 -2422
  81. package/dist/ts/treegrid/base/treegrid.ts +0 -5962
  82. package/dist/ts/treegrid/enum.d.ts +0 -152
  83. package/dist/ts/treegrid/enum.ts +0 -217
  84. package/dist/ts/treegrid/index.d.ts +0 -9
  85. package/dist/ts/treegrid/index.ts +0 -9
  86. package/dist/ts/treegrid/models/column-chooser-settings-model.d.ts +0 -62
  87. package/dist/ts/treegrid/models/column-chooser-settings.d.ts +0 -53
  88. package/dist/ts/treegrid/models/column-chooser-settings.ts +0 -67
  89. package/dist/ts/treegrid/models/column-model.d.ts +0 -30
  90. package/dist/ts/treegrid/models/column.d.ts +0 -697
  91. package/dist/ts/treegrid/models/column.ts +0 -800
  92. package/dist/ts/treegrid/models/edit-settings-model.d.ts +0 -100
  93. package/dist/ts/treegrid/models/edit-settings.d.ts +0 -89
  94. package/dist/ts/treegrid/models/edit-settings.ts +0 -111
  95. package/dist/ts/treegrid/models/filter-settings-model.d.ts +0 -216
  96. package/dist/ts/treegrid/models/filter-settings.d.ts +0 -195
  97. package/dist/ts/treegrid/models/filter-settings.ts +0 -237
  98. package/dist/ts/treegrid/models/index.d.ts +0 -24
  99. package/dist/ts/treegrid/models/index.ts +0 -24
  100. package/dist/ts/treegrid/models/infinite-scroll-settings-model.d.ts +0 -29
  101. package/dist/ts/treegrid/models/infinite-scroll-settings.d.ts +0 -25
  102. package/dist/ts/treegrid/models/infinite-scroll-settings.ts +0 -31
  103. package/dist/ts/treegrid/models/loading-indicator-model.d.ts +0 -21
  104. package/dist/ts/treegrid/models/loading-indicator.d.ts +0 -19
  105. package/dist/ts/treegrid/models/loading-indicator.ts +0 -21
  106. package/dist/ts/treegrid/models/page-settings-model.d.ts +0 -66
  107. package/dist/ts/treegrid/models/page-settings.d.ts +0 -57
  108. package/dist/ts/treegrid/models/page-settings.ts +0 -73
  109. package/dist/ts/treegrid/models/rowdrop-settings-model.d.ts +0 -15
  110. package/dist/ts/treegrid/models/rowdrop-settings.d.ts +0 -34
  111. package/dist/ts/treegrid/models/rowdrop-settings.ts +0 -37
  112. package/dist/ts/treegrid/models/search-settings-model.d.ts +0 -79
  113. package/dist/ts/treegrid/models/search-settings.d.ts +0 -73
  114. package/dist/ts/treegrid/models/search-settings.ts +0 -83
  115. package/dist/ts/treegrid/models/selection-settings-model.d.ts +0 -76
  116. package/dist/ts/treegrid/models/selection-settings.d.ts +0 -68
  117. package/dist/ts/treegrid/models/selection-settings.ts +0 -82
  118. package/dist/ts/treegrid/models/sort-settings-model.d.ts +0 -49
  119. package/dist/ts/treegrid/models/sort-settings.d.ts +0 -43
  120. package/dist/ts/treegrid/models/sort-settings.ts +0 -51
  121. package/dist/ts/treegrid/models/summary-model.d.ts +0 -93
  122. package/dist/ts/treegrid/models/summary.d.ts +0 -126
  123. package/dist/ts/treegrid/models/summary.ts +0 -170
  124. package/dist/ts/treegrid/models/textwrap-settings-model.d.ts +0 -21
  125. package/dist/ts/treegrid/models/textwrap-settings.d.ts +0 -19
  126. package/dist/ts/treegrid/models/textwrap-settings.ts +0 -21
  127. package/dist/ts/treegrid/renderer/index.d.ts +0 -5
  128. package/dist/ts/treegrid/renderer/index.ts +0 -5
  129. package/dist/ts/treegrid/renderer/render.d.ts +0 -41
  130. package/dist/ts/treegrid/renderer/render.ts +0 -379
  131. package/dist/ts/treegrid/renderer/virtual-row-model-generator.d.ts +0 -16
  132. package/dist/ts/treegrid/renderer/virtual-row-model-generator.ts +0 -90
  133. package/dist/ts/treegrid/renderer/virtual-tree-content-render.d.ts +0 -353
  134. package/dist/ts/treegrid/renderer/virtual-tree-content-render.ts +0 -1125
  135. package/dist/ts/treegrid/utils.d.ts +0 -70
  136. package/dist/ts/treegrid/utils.ts +0 -217
@@ -1,90 +0,0 @@
1
- import { TreeGrid } from '../base/treegrid';
2
- import { VirtualScroll as GridVirtualScroll, IGrid, ServiceLocator } from '@syncfusion/ej2-grids';
3
- /**
4
- * TreeGrid Virtual Scroll module will handle Virtualization
5
- *
6
- * @hidden
7
- */
8
- export declare class VirtualScroll {
9
- private parent;
10
- private expandCollapseRec;
11
- private prevstartIndex;
12
- setEndIndexToGantt: boolean;
13
- ganttEndIndex: number;
14
- private prevendIndex;
15
- private visualData;
16
- private prevrequestType;
17
- prevSelectedRecord: object;
18
- /**
19
- * Constructor for VirtualScroll module
20
- *
21
- * @param {TreeGrid} parent - Tree Grid instance
22
- */
23
- constructor(parent?: TreeGrid);
24
- /**
25
- * For internal use only - Get the module name.
26
- *
27
- * @private
28
- * @returns {string} - Returns VirtualScroll module name
29
- */
30
- protected getModuleName(): string;
31
- /**
32
- * @hidden
33
- * @returns {void}
34
- */
35
- addEventListener(): void;
36
- /**
37
- * @hidden
38
- * @returns {void}
39
- */
40
- removeEventListener(): void;
41
- /**
42
- * Handles the virtual child collapse or expand action in a tree grid.
43
- *
44
- * @param {object} row - Object containing information about the collapse/expand action.
45
- * @param {string} row.action - The type of action, either "collapse" or "expand".
46
- * @param {HTMLTableRowElement} row.row - The HTML row element that is affected by the action.
47
- * @param {ITreeData} row.record - The tree data record associated with the row.
48
- * @param {RowCollapsedEventArgs} row.args - Additional event arguments related to the row collapse or expand.
49
- *
50
- * @returns {void} No return value as the function executes a procedure.
51
- */
52
- private collapseExpandVirtualchilds;
53
- /**
54
- * Handles selection logic for the TreeGrid component.
55
- *
56
- * @returns {void}
57
- */
58
- private handleSelection;
59
- /**
60
- * Handles the action related to virtual scrolling with paging details.
61
- *
62
- * @param {Object} pageingDetails - Contains the result data, count of results, and action arguments.
63
- * @param {ITreeData[]} pageingDetails.result - The result data to be handled.
64
- * @param {number} pageingDetails.count - The count of results.
65
- * @param {ActionEventArgs} pageingDetails.actionArgs - The action arguments related to the virtual page action.
66
- * @returns {void}
67
- */
68
- private virtualPageAction;
69
- /**
70
- * To destroy the virtualScroll module
71
- *
72
- * @returns {void}
73
- * @hidden
74
- */
75
- destroy(): void;
76
- /**
77
- * Updates the row selection when the header checkbox is clicked and the number of selected rows
78
- * does not match the current view data length.
79
- *
80
- * @param {RowDeselectEventArgs} args - The arguments containing details of the row deselection event.
81
- * @returns {void} - This method does not return a value.
82
- */
83
- private updateSelection;
84
- }
85
- export declare class TreeVirtual extends GridVirtualScroll {
86
- constructor(parent: IGrid, locator?: ServiceLocator);
87
- getModuleName(): string;
88
- protected instantiateRenderers(): void;
89
- ensurePageSize(): void;
90
- }
@@ -1,306 +0,0 @@
1
- import { TreeGrid } from '../base/treegrid';
2
- import { Grid, VirtualScroll as GridVirtualScroll, NotifyArgs, ActionEventArgs, IGrid, ServiceLocator, RowDeselectEventArgs } from '@syncfusion/ej2-grids';
3
- import { RenderType } from '@syncfusion/ej2-grids';
4
- import { getValue, isNullOrUndefined } from '@syncfusion/ej2-base';
5
- import * as events from '../base/constant';
6
- import { ITreeData, RowCollapsedEventArgs } from '../base';
7
- import { DataManager, Predicate, Query } from '@syncfusion/ej2-data';
8
- import { getExpandStatus } from '../utils';
9
- import { VirtualTreeContentRenderer } from '../renderer/virtual-tree-content-render';
10
- import { VirtualHeaderRenderer, getTransformValues, VirtualContentRenderer } from '@syncfusion/ej2-grids';
11
-
12
- /**
13
- * TreeGrid Virtual Scroll module will handle Virtualization
14
- *
15
- * @hidden
16
- */
17
- export class VirtualScroll {
18
- private parent: TreeGrid;
19
- private expandCollapseRec: ITreeData;
20
- private prevstartIndex: number = -1;
21
- public setEndIndexToGantt : boolean = true;
22
- public ganttEndIndex : number;
23
- private prevendIndex: number = -1;
24
- private visualData: ITreeData[];
25
- private prevrequestType: string;
26
- public prevSelectedRecord: object = [];
27
-
28
- /**
29
- * Constructor for VirtualScroll module
30
- *
31
- * @param {TreeGrid} parent - Tree Grid instance
32
- */
33
- constructor(parent?: TreeGrid) {
34
- this.parent = parent;
35
- Grid.Inject(TreeVirtual);
36
- this.addEventListener();
37
- }
38
-
39
- /**
40
- * For internal use only - Get the module name.
41
- *
42
- * @private
43
- * @returns {string} - Returns VirtualScroll module name
44
- */
45
- protected getModuleName(): string {
46
- return 'virtualScroll';
47
- }
48
- /**
49
- * @hidden
50
- * @returns {void}
51
- */
52
- public addEventListener(): void {
53
- if (this.parent.isDestroyed) { return; }
54
- this.parent.on(events.localPagedExpandCollapse, this.collapseExpandVirtualchilds, this);
55
- this.parent.on(events.pagingActions, this.virtualPageAction, this);
56
- this.parent.on(events.destroy, this.destroy, this);
57
- }
58
- /**
59
- * @hidden
60
- * @returns {void}
61
- */
62
- public removeEventListener(): void {
63
- if (this.parent.isDestroyed) { return; }
64
- this.parent.off(events.localPagedExpandCollapse, this.collapseExpandVirtualchilds);
65
- this.parent.off(events.pagingActions, this.virtualPageAction);
66
- this.parent.off(events.destroy, this.destroy);
67
- }
68
-
69
- /**
70
- * Handles the virtual child collapse or expand action in a tree grid.
71
- *
72
- * @param {object} row - Object containing information about the collapse/expand action.
73
- * @param {string} row.action - The type of action, either "collapse" or "expand".
74
- * @param {HTMLTableRowElement} row.row - The HTML row element that is affected by the action.
75
- * @param {ITreeData} row.record - The tree data record associated with the row.
76
- * @param {RowCollapsedEventArgs} row.args - Additional event arguments related to the row collapse or expand.
77
- *
78
- * @returns {void} No return value as the function executes a procedure.
79
- */
80
- private collapseExpandVirtualchilds(row: { action: string, row: HTMLTableRowElement,
81
- record: ITreeData, args: RowCollapsedEventArgs }): void {
82
- this.parent.grid.notify(events.virtualActionArgs, { isExpandCollapse: true });
83
- this.expandCollapseRec = row.record;
84
- row.record.expanded = row.action === 'collapse' ? false : true;
85
- this.parent.flatData.map((e: ITreeData) => e.expanded = e.uniqueID === row.record.uniqueID &&
86
- e.expanded !== row.record.expanded ? row.record.expanded : e.expanded);
87
- const actionDetails : Object = {
88
- result: this.parent.flatData,
89
- row: row.row,
90
- action: row.action,
91
- record: row.record,
92
- count: this.parent.flatData.length
93
- };
94
- this.handleSelection();
95
- const requestType: string = getValue('isCollapseAll', this.parent) ? 'collapseAll' : 'refresh';
96
- getValue('grid.renderModule', this.parent).dataManagerSuccess(actionDetails , <NotifyArgs>{ requestType: requestType });
97
- }
98
-
99
- /**
100
- * Handles selection logic for the TreeGrid component.
101
- *
102
- * @returns {void}
103
- */
104
- private handleSelection(): void {
105
- if ((this.parent.selectionSettings.mode === 'Cell' ||
106
- (this.parent.selectionSettings.mode === 'Row' && !this.parent.selectionSettings.persistSelection))) {
107
- this.parent.grid.clearSelection();
108
- }
109
- if (getValue('isCollapseAll', this.parent) && this.parent.selectionSettings.persistSelection && this.parent.getSelectedRecords().length > 0) {
110
- this.prevSelectedRecord = this.parent.getSelectedRecords();
111
- this.parent.grid.clearSelection();
112
- }
113
- }
114
-
115
- /**
116
- * Handles the action related to virtual scrolling with paging details.
117
- *
118
- * @param {Object} pageingDetails - Contains the result data, count of results, and action arguments.
119
- * @param {ITreeData[]} pageingDetails.result - The result data to be handled.
120
- * @param {number} pageingDetails.count - The count of results.
121
- * @param {ActionEventArgs} pageingDetails.actionArgs - The action arguments related to the virtual page action.
122
- * @returns {void}
123
- */
124
- private virtualPageAction(pageingDetails: {result: ITreeData[], count: number, actionArgs: ActionEventArgs}): void {
125
- const dm: DataManager = new DataManager(pageingDetails.result);
126
- const expanded: Predicate = new Predicate('expanded', 'notequal', null).or('expanded', 'notequal', undefined);
127
- const parents: ITreeData[] = dm.executeLocal(new Query().where(expanded));
128
- const visualData: ITreeData[] = parents.filter((e: ITreeData) => {
129
- return getExpandStatus(this.parent, e, parents);
130
- });
131
- this.visualData = visualData;
132
- pageingDetails.count = visualData.length;
133
- this.parent.grid.notify(events.dataListener, {data: visualData});
134
- const counts: { startIndex: number, endIndex: number, count: number, requestType: string } =
135
- { startIndex: -1, endIndex: -1, count: pageingDetails.count, requestType: pageingDetails.actionArgs.requestType };
136
- this.parent.grid.notify(events.indexModifier, counts);
137
- let startIndex: number = counts.startIndex;
138
- let endIndex: number = counts.endIndex;
139
- pageingDetails.count = visualData.length;
140
- if (startIndex === -1 && endIndex === -1) {
141
- let query: Query = new Query();
142
- const size: number = this.parent.grid.pageSettings.pageSize;
143
- const current: number = this.parent.grid.pageSettings.currentPage;
144
- const skip: number = size * (current - 1);
145
- query = query.skip(skip).take(size);
146
- dm.dataSource.json = visualData;
147
- pageingDetails.result = dm.executeLocal(query);
148
- } else {
149
- const requestType: string = pageingDetails.actionArgs.requestType;
150
- if (requestType === 'filtering' || requestType === 'collapseAll' || requestType === 'searching' || (requestType === 'refresh' && getValue('isExpandAll', this.parent)) ||
151
- (requestType === 'refresh' && this.parent.enableCollapseAll && endIndex > visualData.length && isNullOrUndefined(this.expandCollapseRec))) {
152
- startIndex = 0;
153
- endIndex = this.parent.grid.pageSettings.pageSize;
154
- (this.parent.grid.getContent() as HTMLElement).firstElementChild.scrollTop = 0;
155
- this.parent.grid.notify(events.virtualActionArgs, { setTop: true });
156
- }
157
- if ((requestType === 'save' && pageingDetails.actionArgs.index >= (counts.count - this.parent.grid.pageSettings.pageSize)) || (requestType === 'refresh' && this.parent['isGantt'] && this.parent['isAddedFromGantt'])) {
158
- if (this.setEndIndexToGantt) {
159
- this.ganttEndIndex = counts.endIndex;
160
- }
161
- if (
162
- (
163
- (counts.endIndex + this.parent.pageSettings.pageSize >= counts.count) &&
164
- (this.parent.root && counts.count !== this.ganttEndIndex) && this.parent['isAddedFromGantt']
165
- ) || !(this.parent['isGantt'] && this.parent['isAddedFromGantt'])
166
- ) {
167
- startIndex = counts.startIndex + (counts.count - counts.endIndex);
168
- endIndex = counts.count;
169
- this.setEndIndexToGantt = false;
170
- }
171
- this.ganttEndIndex = endIndex;
172
- this.parent['isAddedFromGantt'] = false;
173
- }
174
- //if ((this.prevendIndex !== -1 && this.prevstartIndex !== -1) &&
175
- //this.prevendIndex === endIndex && this.prevstartIndex === startIndex) {
176
- const virtualWrapperElement: HTMLElement = (this.parent.grid.contentModule as VirtualContentRenderer).virtualEle.wrapper;
177
- const translateY: number = getTransformValues(virtualWrapperElement).height;
178
- if (!isNullOrUndefined(this.expandCollapseRec) && (pageingDetails.actionArgs.requestType === 'virtualscroll' ||
179
- (pageingDetails.actionArgs.requestType === 'refresh' && startIndex !== this.prevstartIndex)) &&
180
- (startIndex < this.parent.getRows().length && endIndex <= startIndex + this.parent.getRows().length) && translateY === 0) {
181
- startIndex = 0;
182
- }
183
- if ((pageingDetails.actionArgs.requestType === 'save' && startIndex !== this.prevstartIndex) &&
184
- (startIndex < this.parent.getRows().length && endIndex <= startIndex + this.parent.getRows().length) && translateY === 0) {
185
- startIndex = 0;
186
- endIndex = startIndex + this.parent.grid.pageSettings.pageSize;
187
- }
188
- if (!isNullOrUndefined(this.expandCollapseRec)) {
189
- const resourceCount: number = this.parent.grid.pageSettings.pageSize;
190
- let sIndex: number = visualData.indexOf(this.expandCollapseRec);
191
- const tempdata: ITreeData[] = visualData.slice(sIndex, sIndex + resourceCount);
192
- if (tempdata.length < resourceCount && sIndex >= 0 && startIndex !== 0) {
193
- sIndex = visualData.length - resourceCount;
194
- sIndex = sIndex > 0 ? sIndex : 0;
195
- endIndex = visualData.length;
196
- if (endIndex - startIndex < resourceCount) {
197
- const newRowsCount: number = sIndex - startIndex;
198
- startIndex = sIndex;
199
- if (visualData.indexOf(this.expandCollapseRec) > visualData.length - resourceCount / 2) {
200
- const newTranslateY: number = startIndex * this.parent.grid.getRowHeight();
201
- (this.parent.grid.contentModule as VirtualTreeContentRenderer)['translateY'] = newTranslateY;
202
- (this.parent.grid.contentModule as VirtualContentRenderer).virtualEle.adjustTable(0, newTranslateY);
203
- }
204
- }
205
- } else if ( getValue('isCollapseAll', this.parent)) {
206
- startIndex = 0;
207
- endIndex = this.parent.grid.pageSettings.pageSize - 1;
208
- this.parent.grid.notify(events.virtualActionArgs, { setTop: true });
209
- }
210
- }
211
- //}
212
- if (this.prevrequestType === 'collapseAll' && pageingDetails.actionArgs.requestType === 'virtualscroll'
213
- && !isNullOrUndefined(this.parent.idMapping) && startIndex === 0) {
214
- startIndex = 0;
215
- endIndex = this.parent.grid.pageSettings.pageSize - 1;
216
- this.parent.grid.notify(events.virtualActionArgs, { setTop: true });
217
- }
218
- if ((this.parent.enableCollapseAll || this.parent.expandStateMapping) && !isNullOrUndefined(this.expandCollapseRec)) {
219
- if (pageingDetails.count < this.parent.getRows()[0].getBoundingClientRect().height) {
220
- startIndex = 0;
221
- } else if (!this.parent['isExpandAll'] && (this.parent.grid.contentModule as VirtualTreeContentRenderer)['translateY'] === 0) {
222
- startIndex = this.prevstartIndex === -1 ? 0 : this.prevstartIndex;
223
- }
224
- }
225
- this.expandCollapseRec = null;
226
- startIndex = startIndex < 0 ? 0 : startIndex;
227
- if (endIndex === 0 && visualData.length > 0) {
228
- pageingDetails.result = visualData;
229
- }
230
- else {
231
- pageingDetails.result = visualData.slice(startIndex, endIndex);
232
- }
233
- this.prevstartIndex = startIndex;
234
- this.prevendIndex = endIndex;
235
- this.prevrequestType = pageingDetails.actionArgs.requestType;
236
- }
237
- this.parent.notify('updateAction', pageingDetails);
238
- }
239
- /**
240
- * To destroy the virtualScroll module
241
- *
242
- * @returns {void}
243
- * @hidden
244
- */
245
- public destroy(): void {
246
- this.removeEventListener();
247
- }
248
-
249
- /**
250
- * Updates the row selection when the header checkbox is clicked and the number of selected rows
251
- * does not match the current view data length.
252
- *
253
- * @param {RowDeselectEventArgs} args - The arguments containing details of the row deselection event.
254
- * @returns {void} - This method does not return a value.
255
- */
256
- private updateSelection(args: RowDeselectEventArgs): void {
257
- if (args.isHeaderCheckboxClicked &&
258
- this.parent.grid.currentViewData.length !== this.parent.grid.selectionModule.selectedRowIndexes.length) {
259
- const updateRowSelection: string = 'updateRowSelection';
260
- for (let i: number = 0; i < this.parent.getRows().length; i++) {
261
- if (this.parent.getRows()[parseInt(i.toString(), 10)].getElementsByClassName('e-frame e-icons e-uncheck').length) {
262
- this.parent.grid.selectionModule[`${updateRowSelection}`](this.parent.getRows()[parseInt(i.toString(), 10)],
263
- // eslint-disable-next-line max-len
264
- (this.parent.getCurrentViewRecords()[parseInt(i.toString(), 10)] as
265
- ITreeData).index);
266
- }
267
- }
268
- }
269
- }
270
- }
271
-
272
- export class TreeVirtual extends GridVirtualScroll {
273
- constructor(parent: IGrid, locator?: ServiceLocator) {
274
- super(parent, locator);
275
- getValue('parent', this).off('initial-load', getValue('instantiateRenderer', this), this);
276
- getValue('parent', this).on('initial-load', this.instantiateRenderers, this);
277
- }
278
- public getModuleName(): string {
279
- return 'treeVirtualScroll';
280
- }
281
- protected instantiateRenderers(): void {
282
- const parentGrid: IGrid = getValue('parent', this);
283
- getValue('parent', this).log(['limitation', 'virtual_height'], 'virtualization');
284
- const renderer: Object = getValue('locator', this).getService('rendererFactory');
285
- if (parentGrid.enableColumnVirtualization) {
286
- getValue('addRenderer', renderer)
287
- .apply(renderer, [RenderType.Header, new VirtualHeaderRenderer(getValue('parent', this), getValue('locator', this))]);
288
- }
289
- getValue('addRenderer', renderer)
290
- .apply(renderer, [RenderType.Content, new VirtualTreeContentRenderer(getValue('parent', this), getValue('locator', this))]);
291
- this.ensurePageSize();
292
- }
293
- public ensurePageSize(): void {
294
- const parentGrid: IGrid = getValue('parent', this);
295
- const rowHeight: number = parentGrid.getRowHeight();
296
- if (!isNullOrUndefined(parentGrid.height) && typeof (parentGrid.height) === 'string' && parentGrid.height.indexOf('%') !== -1) {
297
- parentGrid.element.style.height = parentGrid.height;
298
- }
299
- const vHeight: string | number = parentGrid.height.toString().indexOf('%') < 0 ? parseInt(parentGrid.height.toString(), 10) :
300
- parentGrid.element.getBoundingClientRect().height;
301
- const blockSize: number = ~~(<number>vHeight / rowHeight);
302
- const height: number = blockSize * 2;
303
- const size: number = parentGrid.pageSettings.pageSize;
304
- parentGrid.setProperties({ pageSettings: { pageSize: size < height ? height : size } }, true);
305
- }
306
- }
@@ -1,158 +0,0 @@
1
- /**
2
- * @hidden
3
- */
4
- export declare const load: string;
5
- /** @hidden */
6
- export declare const rowDataBound: string;
7
- /** @hidden */
8
- export declare const dataBound: string;
9
- /** @hidden */
10
- export declare const queryCellInfo: string;
11
- /** @hidden */
12
- export declare const beforeDataBound: string;
13
- /** @hidden */
14
- export declare const actionBegin: string;
15
- /** @hidden */
16
- export declare const dataStateChange: string;
17
- /** @hidden */
18
- export declare const actionComplete: string;
19
- /** @hidden */
20
- export declare const rowSelecting: string;
21
- /** @hidden */
22
- export declare const rowSelected: string;
23
- /** @hidden */
24
- export declare const checkboxChange: string;
25
- /** @hidden */
26
- export declare const rowDeselected: string;
27
- /** @hidden */
28
- export declare const toolbarClick: string;
29
- /** @hidden */
30
- export declare const beforeExcelExport: string;
31
- /** @hidden */
32
- export declare const beforePdfExport: string;
33
- /** @hidden */
34
- export declare const resizeStop: string;
35
- /** @hidden */
36
- export declare const expanded: string;
37
- /** @hidden */
38
- export declare const expanding: string;
39
- /** @hidden */
40
- export declare const collapsed: string;
41
- /** @hidden */
42
- export declare const collapsing: string;
43
- /** @hidden */
44
- export declare const remoteExpand: string;
45
- /** @hidden */
46
- export declare const localPagedExpandCollapse: string;
47
- /** @hidden */
48
- export declare const pagingActions: string;
49
- /** @hidden */
50
- export declare const printGridInit: string;
51
- /** @hidden */
52
- export declare const contextMenuOpen: string;
53
- /** @hidden */
54
- export declare const contextMenuClick: string;
55
- /** @hidden */
56
- export declare const beforeCopy: string;
57
- /** @hidden */
58
- export declare const beforePaste: string;
59
- /** @hidden */
60
- export declare const savePreviousRowPosition: string;
61
- /** @hidden */
62
- export declare const crudAction: string;
63
- /** @hidden */
64
- export declare const beginEdit: string;
65
- /** @hidden */
66
- export declare const beginAdd: string;
67
- /** @hidden */
68
- export declare const recordDoubleClick: string;
69
- /** @hidden */
70
- export declare const cellSave: string;
71
- /** @hidden */
72
- export declare const cellSaved: string;
73
- /** @hidden */
74
- export declare const cellEdit: string;
75
- /** @hidden */
76
- export declare const batchDelete: string;
77
- /** @hidden */
78
- export declare const batchCancel: string;
79
- /** @hidden */
80
- export declare const batchAdd: string;
81
- /** @hidden */
82
- export declare const beforeBatchDelete: string;
83
- /** @hidden */
84
- export declare const beforeBatchAdd: string;
85
- /** @hidden */
86
- export declare const beforeBatchSave: string;
87
- /** @hidden */
88
- export declare const batchSave: string;
89
- /** @hidden */
90
- export declare const keyPressed: string;
91
- /** @hidden */
92
- export declare const updateData: string;
93
- /** @hidden */
94
- export declare const doubleTap: string;
95
- /** @hidden */
96
- export declare const virtualColumnIndex: string;
97
- /** @hidden */
98
- export declare const virtualActionArgs: string;
99
- /** @hidden */
100
- export declare const destroy: string;
101
- /** @hidden */
102
- export declare const dataListener: string;
103
- /** @hidden */
104
- export declare const indexModifier: string;
105
- /** @hidden */
106
- export declare const beforeStartEdit: string;
107
- /** @hidden */
108
- export declare const beforeBatchCancel: string;
109
- /** @hidden */
110
- export declare const batchEditFormRendered: string;
111
- /** @hidden */
112
- export declare const detailDataBound: string;
113
- /** @hidden */
114
- export declare const rowDrag: string;
115
- /** @hidden */
116
- export declare const rowDragStartHelper: string;
117
- /** @hidden */
118
- export declare const rowDrop: string;
119
- /** @hidden */
120
- export declare const rowDragStart: string;
121
- /** @hidden */
122
- export declare const rowsAdd: string;
123
- /** @hidden */
124
- export declare const rowsRemove: string;
125
- /** @hidden */
126
- export declare const rowdraging: string;
127
- /** @hidden */
128
- export declare const rowDropped: string;
129
- /** @hidden */
130
- export declare const autoCol: string;
131
- /** @hidden */
132
- export declare const rowDeselecting: string;
133
- /** @hidden */
134
- export declare const headerContent: string;
135
- /** @hidden */
136
- export declare const movableContent: string;
137
- /** @hidden */
138
- export declare const movableHeader: string;
139
- /** @hidden */
140
- export declare const frozenContent: string;
141
- /** @hidden */
142
- export declare const frozenHeader: string;
143
- /** @hidden */
144
- export declare const content: string;
145
- /** @hidden */
146
- export declare const table: string;
147
- /** @hidden */
148
- export declare const leftRight: string;
149
- /** @hidden */
150
- export declare const frozenRight: string;
151
- /** @hidden */
152
- export declare const frozenLeft: string;
153
- /** @hidden */
154
- export declare const ariaColIndex: string;
155
- /** @hidden */
156
- export declare const ariaRowIndex: string;
157
- /** @hidden */
158
- export declare const actionFailure: string;