@syncfusion/ej2-treegrid 22.2.9 → 23.1.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +15 -50
- package/dist/ej2-treegrid.min.js +3 -3
- package/dist/ej2-treegrid.umd.min.js +3 -3
- package/dist/ej2-treegrid.umd.min.js.map +1 -1
- package/dist/es6/ej2-treegrid.es2015.js +234 -328
- package/dist/es6/ej2-treegrid.es2015.js.map +1 -1
- package/dist/es6/ej2-treegrid.es5.js +233 -351
- package/dist/es6/ej2-treegrid.es5.js.map +1 -1
- package/dist/global/ej2-treegrid.min.js +3 -3
- package/dist/global/ej2-treegrid.min.js.map +1 -1
- package/dist/global/index.d.ts +2 -2
- package/package.json +10 -10
- package/src/treegrid/actions/batch-edit.js +2 -28
- package/src/treegrid/actions/crud-actions.js +1 -1
- package/src/treegrid/actions/edit.js +6 -52
- package/src/treegrid/actions/excel-export.d.ts +2 -2
- package/src/treegrid/actions/freeze-column.d.ts +0 -1
- package/src/treegrid/actions/freeze-column.js +4 -36
- package/src/treegrid/actions/infinite-scroll.js +8 -8
- package/src/treegrid/actions/pdf-export.d.ts +2 -2
- package/src/treegrid/actions/rowdragdrop.js +3 -1
- package/src/treegrid/actions/selection.js +1 -1
- package/src/treegrid/actions/virtual-scroll.js +6 -8
- package/src/treegrid/base/data.js +20 -4
- package/src/treegrid/base/treegrid-model.d.ts +8 -1
- package/src/treegrid/base/treegrid.d.ts +69 -1
- package/src/treegrid/base/treegrid.js +172 -34
- package/src/treegrid/models/column.d.ts +1 -0
- package/src/treegrid/renderer/virtual-row-model-generator.js +4 -4
- package/src/treegrid/renderer/virtual-tree-content-render.d.ts +0 -1
- package/src/treegrid/renderer/virtual-tree-content-render.js +9 -21
- package/styles/material-dark.css +0 -1
- package/styles/material.css +0 -1
- package/styles/material3-dark.css +0 -1
- package/styles/material3-dark.scss +1 -1
- package/styles/material3.css +0 -1
- package/styles/material3.scss +1 -1
- package/styles/tailwind-dark.css +0 -1
- package/styles/tailwind.css +0 -1
- package/styles/treegrid/bootstrap-dark.scss +1 -1
- package/styles/treegrid/bootstrap.scss +1 -1
- package/styles/treegrid/bootstrap4.scss +1 -1
- package/styles/treegrid/bootstrap5-dark.scss +1 -1
- package/styles/treegrid/bootstrap5.scss +1 -1
- package/styles/treegrid/fabric-dark.scss +1 -1
- package/styles/treegrid/fabric.scss +1 -1
- package/styles/treegrid/fluent-dark.scss +1 -1
- package/styles/treegrid/fluent.scss +1 -1
- package/styles/treegrid/highcontrast-light.scss +1 -1
- package/styles/treegrid/highcontrast.scss +1 -1
- package/styles/treegrid/material-dark.css +0 -1
- package/styles/treegrid/material-dark.scss +1 -1
- package/styles/treegrid/material.css +0 -1
- package/styles/treegrid/material.scss +1 -1
- package/styles/treegrid/material3-dark.css +0 -1
- package/styles/treegrid/material3-dark.scss +1 -1
- package/styles/treegrid/material3.css +0 -1
- package/styles/treegrid/material3.scss +1 -1
- package/styles/treegrid/tailwind-dark.css +0 -1
- package/styles/treegrid/tailwind-dark.scss +1 -1
- package/styles/treegrid/tailwind.css +0 -1
- package/styles/treegrid/tailwind.scss +1 -1
- package/src/treegrid/renderer/virtual-tree-freeze-render.d.ts +0 -59
- package/src/treegrid/renderer/virtual-tree-freeze-render.js +0 -163
|
@@ -113,6 +113,7 @@ export declare class TreeGrid extends Component<HTMLElement> implements INotifyP
|
|
|
113
113
|
private treeColumnTextAlign;
|
|
114
114
|
private treeColumnField;
|
|
115
115
|
private stackedHeader;
|
|
116
|
+
private isExcel;
|
|
116
117
|
/** @hidden */
|
|
117
118
|
initialRender: boolean;
|
|
118
119
|
/** @hidden */
|
|
@@ -360,6 +361,12 @@ export declare class TreeGrid extends Component<HTMLElement> implements INotifyP
|
|
|
360
361
|
* Configures the row drop settings of the TreeGrid.
|
|
361
362
|
*/
|
|
362
363
|
rowDropSettings: RowDropSettingsModel;
|
|
364
|
+
/**
|
|
365
|
+
* Defines the currencyCode format of the Tree Grid columns
|
|
366
|
+
*
|
|
367
|
+
* @private
|
|
368
|
+
*/
|
|
369
|
+
private currencyCode;
|
|
363
370
|
/**
|
|
364
371
|
* @hidden
|
|
365
372
|
* It used to render pager template
|
|
@@ -1144,6 +1151,47 @@ export declare class TreeGrid extends Component<HTMLElement> implements INotifyP
|
|
|
1144
1151
|
* @returns {Promise<any>} - Returns promise object of export action
|
|
1145
1152
|
*/
|
|
1146
1153
|
pdfExport(pdfExportProperties?: PdfExportProperties | TreeGridPdfExportProperties, isMultipleExport?: boolean, pdfDoc?: Object, isBlob?: boolean): Promise<Object>;
|
|
1154
|
+
/**
|
|
1155
|
+
* Sends a post request to export tree grid to excel file in server side.
|
|
1156
|
+
*
|
|
1157
|
+
* @param {string} url - Pass URL for server side excel export action.
|
|
1158
|
+
* @returns {void}
|
|
1159
|
+
*/
|
|
1160
|
+
serverExcelExport(url: string): void;
|
|
1161
|
+
/**
|
|
1162
|
+
* Sends a post request to export tree grid to pdf file in server side.
|
|
1163
|
+
*
|
|
1164
|
+
* @param {string} url - Pass URL for server-side pdf export action.
|
|
1165
|
+
* @returns {void}
|
|
1166
|
+
*/
|
|
1167
|
+
serverPdfExport(url: string): void;
|
|
1168
|
+
/**
|
|
1169
|
+
* Sends a Post request to export Tree Grid to CSV file in server side.
|
|
1170
|
+
*
|
|
1171
|
+
* @param {string} url - Pass URL for server-side csv export action.
|
|
1172
|
+
* @returns {void}
|
|
1173
|
+
*/
|
|
1174
|
+
serverCsvExport(url: string): void;
|
|
1175
|
+
/**
|
|
1176
|
+
* Exports the TreeGrid data to the specified URL using a POST request.
|
|
1177
|
+
* @param {string} url - Defines exporting url
|
|
1178
|
+
* @returns {void}
|
|
1179
|
+
*/
|
|
1180
|
+
private exportTreeGrid;
|
|
1181
|
+
/**
|
|
1182
|
+
* Sets the header text and other properties for an array of columns based on specified criteria.
|
|
1183
|
+
* @param {Column[]} columns - Defines array of columns
|
|
1184
|
+
* @param {string[]} include - Defines array of sting
|
|
1185
|
+
* @returns {Column[]} returns array of columns
|
|
1186
|
+
*/
|
|
1187
|
+
private setHeaderText;
|
|
1188
|
+
/**
|
|
1189
|
+
* Retrieves the appropriate format string from the given format options.
|
|
1190
|
+
*
|
|
1191
|
+
* @param {string | NumberFormatOptions | DateFormatOptions} format - The format options to retrieve the format string from.
|
|
1192
|
+
* @returns {string} The format string extracted from the provided format options.
|
|
1193
|
+
*/
|
|
1194
|
+
private getFormat;
|
|
1147
1195
|
/**
|
|
1148
1196
|
* For internal use only - Get the module name.
|
|
1149
1197
|
*
|
|
@@ -1740,7 +1788,6 @@ export declare class TreeGrid extends Component<HTMLElement> implements INotifyP
|
|
|
1740
1788
|
expandRow(row: HTMLTableRowElement, record?: Object, key?: Object, level?: number): void;
|
|
1741
1789
|
private expandRows;
|
|
1742
1790
|
private expandCollapseAllChildren;
|
|
1743
|
-
private setHeightForFrozenContent;
|
|
1744
1791
|
private getCollapseExpandRecords;
|
|
1745
1792
|
/**
|
|
1746
1793
|
* Collapses child rows
|
|
@@ -1921,12 +1968,16 @@ export declare class TreeGrid extends Component<HTMLElement> implements INotifyP
|
|
|
1921
1968
|
* @param {number} rowIndex - Specifies the row index.
|
|
1922
1969
|
* @param {number} columnIndex - Specifies the column index.
|
|
1923
1970
|
* @returns {Element} - Returns movable cell element from the indexes passed
|
|
1971
|
+
*
|
|
1972
|
+
|
|
1924
1973
|
*/
|
|
1925
1974
|
getMovableCellFromIndex(rowIndex: number, columnIndex: number): Element;
|
|
1926
1975
|
/**
|
|
1927
1976
|
* Gets all the TreeGrid's movable table data rows.
|
|
1928
1977
|
*
|
|
1929
1978
|
* @returns {Element[]} - Returns element collection of movable rows
|
|
1979
|
+
*
|
|
1980
|
+
|
|
1930
1981
|
*/
|
|
1931
1982
|
getMovableDataRows(): Element[];
|
|
1932
1983
|
/**
|
|
@@ -1934,12 +1985,15 @@ export declare class TreeGrid extends Component<HTMLElement> implements INotifyP
|
|
|
1934
1985
|
*
|
|
1935
1986
|
* @param {number} index - Specifies the row index.
|
|
1936
1987
|
* @returns {Element} - Returns movable row based on index passed
|
|
1988
|
+
*
|
|
1989
|
+
|
|
1937
1990
|
*/
|
|
1938
1991
|
getMovableRowByIndex(index: number): Element;
|
|
1939
1992
|
/**
|
|
1940
1993
|
* Gets the TreeGrid's movable content rows from frozen treegrid.
|
|
1941
1994
|
*
|
|
1942
1995
|
* @returns {Element[]}: Returns movable row element
|
|
1996
|
+
|
|
1943
1997
|
*/
|
|
1944
1998
|
getMovableRows(): Element[];
|
|
1945
1999
|
/**
|
|
@@ -1947,18 +2001,24 @@ export declare class TreeGrid extends Component<HTMLElement> implements INotifyP
|
|
|
1947
2001
|
*
|
|
1948
2002
|
* @param {number} index - Specifies the row index.
|
|
1949
2003
|
* @returns {Element} returns the element
|
|
2004
|
+
*
|
|
2005
|
+
|
|
1950
2006
|
*/
|
|
1951
2007
|
getFrozenRightRowByIndex(index: number): Element;
|
|
1952
2008
|
/**
|
|
1953
2009
|
* Gets the Tree Grid's frozen right content rows from frozen Tree Grid.
|
|
1954
2010
|
*
|
|
1955
2011
|
* @returns {Element[]} returns the element
|
|
2012
|
+
*
|
|
2013
|
+
|
|
1956
2014
|
*/
|
|
1957
2015
|
getFrozenRightRows(): Element[];
|
|
1958
2016
|
/**
|
|
1959
2017
|
* Gets all the Tree Grid's frozen right table data rows.
|
|
1960
2018
|
*
|
|
1961
2019
|
* @returns {Element[]} Returns the Element
|
|
2020
|
+
*
|
|
2021
|
+
|
|
1962
2022
|
*/
|
|
1963
2023
|
getFrozenRightDataRows(): Element[];
|
|
1964
2024
|
/**
|
|
@@ -1967,6 +2027,8 @@ export declare class TreeGrid extends Component<HTMLElement> implements INotifyP
|
|
|
1967
2027
|
* @param {number} rowIndex - Specifies the row index.
|
|
1968
2028
|
* @param {number} columnIndex - Specifies the column index.
|
|
1969
2029
|
* @returns {Element} Returns the Element
|
|
2030
|
+
*
|
|
2031
|
+
|
|
1970
2032
|
*/
|
|
1971
2033
|
getFrozenRightCellFromIndex(rowIndex: number, columnIndex: number): Element;
|
|
1972
2034
|
/**
|
|
@@ -1974,6 +2036,8 @@ export declare class TreeGrid extends Component<HTMLElement> implements INotifyP
|
|
|
1974
2036
|
*
|
|
1975
2037
|
* @param {number} index - Specifies the column index.
|
|
1976
2038
|
* @returns {Element} Returns the Element
|
|
2039
|
+
*
|
|
2040
|
+
|
|
1977
2041
|
*/
|
|
1978
2042
|
getFrozenLeftColumnHeaderByIndex(index: number): Element;
|
|
1979
2043
|
/**
|
|
@@ -1981,6 +2045,8 @@ export declare class TreeGrid extends Component<HTMLElement> implements INotifyP
|
|
|
1981
2045
|
*
|
|
1982
2046
|
* @param {number} index - Specifies the column index.
|
|
1983
2047
|
* @returns {Element} Returns the Element
|
|
2048
|
+
*
|
|
2049
|
+
|
|
1984
2050
|
*/
|
|
1985
2051
|
getFrozenRightColumnHeaderByIndex(index: number): Element;
|
|
1986
2052
|
/**
|
|
@@ -1988,6 +2054,8 @@ export declare class TreeGrid extends Component<HTMLElement> implements INotifyP
|
|
|
1988
2054
|
*
|
|
1989
2055
|
* @param {number} index - Specifies the column index.
|
|
1990
2056
|
* @returns {Element} Returns the Element
|
|
2057
|
+
*
|
|
2058
|
+
|
|
1991
2059
|
*/
|
|
1992
2060
|
getMovableColumnHeaderByIndex(index: number): Element;
|
|
1993
2061
|
/**
|
|
@@ -21,6 +21,7 @@ import { Component, addClass, createElement, EventHandler, isNullOrUndefined, ex
|
|
|
21
21
|
import { removeClass, Complex, Collection, getValue } from '@syncfusion/ej2-base';
|
|
22
22
|
import { Event, Property, NotifyPropertyChanges, setValue, KeyboardEvents, L10n } from '@syncfusion/ej2-base';
|
|
23
23
|
import { Column } from '../models/column';
|
|
24
|
+
import { getNumberFormat } from '@syncfusion/ej2-grids';
|
|
24
25
|
import { RowDropSettings, getUid } from '@syncfusion/ej2-grids';
|
|
25
26
|
import { LoadingIndicator } from '../models/loading-indicator';
|
|
26
27
|
import { FilterSettings } from '../models/filter-settings';
|
|
@@ -33,7 +34,7 @@ import * as events from '../base/constant';
|
|
|
33
34
|
import { SearchSettings } from '../models/search-settings';
|
|
34
35
|
import { SelectionSettings } from '../models/selection-settings';
|
|
35
36
|
import { getActualProperties, getObject } from '@syncfusion/ej2-grids';
|
|
36
|
-
import { DataManager, RemoteSaveAdaptor, Query, JsonAdaptor, Deferred } from '@syncfusion/ej2-data';
|
|
37
|
+
import { DataManager, RemoteSaveAdaptor, Query, JsonAdaptor, Deferred, UrlAdaptor } from '@syncfusion/ej2-data';
|
|
37
38
|
import { createSpinner, hideSpinner, showSpinner } from '@syncfusion/ej2-popups';
|
|
38
39
|
import { isRemoteData, isOffline, extendArray, isCountRequired, findChildrenRecords } from '../utils';
|
|
39
40
|
import { Grid, Logger } from '@syncfusion/ej2-grids';
|
|
@@ -145,6 +146,112 @@ var TreeGrid = /** @class */ (function (_super) {
|
|
|
145
146
|
TreeGrid.prototype.pdfExport = function (pdfExportProperties, isMultipleExport, pdfDoc, isBlob) {
|
|
146
147
|
return this.pdfExportModule.Map(pdfExportProperties, isMultipleExport, pdfDoc, isBlob);
|
|
147
148
|
};
|
|
149
|
+
/**
|
|
150
|
+
* Sends a post request to export tree grid to excel file in server side.
|
|
151
|
+
*
|
|
152
|
+
* @param {string} url - Pass URL for server side excel export action.
|
|
153
|
+
* @returns {void}
|
|
154
|
+
*/
|
|
155
|
+
TreeGrid.prototype.serverExcelExport = function (url) {
|
|
156
|
+
this.isExcel = true;
|
|
157
|
+
this.exportTreeGrid(url);
|
|
158
|
+
};
|
|
159
|
+
/**
|
|
160
|
+
* Sends a post request to export tree grid to pdf file in server side.
|
|
161
|
+
*
|
|
162
|
+
* @param {string} url - Pass URL for server-side pdf export action.
|
|
163
|
+
* @returns {void}
|
|
164
|
+
*/
|
|
165
|
+
TreeGrid.prototype.serverPdfExport = function (url) {
|
|
166
|
+
this.isExcel = false;
|
|
167
|
+
this.exportTreeGrid(url);
|
|
168
|
+
};
|
|
169
|
+
/**
|
|
170
|
+
* Sends a Post request to export Tree Grid to CSV file in server side.
|
|
171
|
+
*
|
|
172
|
+
* @param {string} url - Pass URL for server-side csv export action.
|
|
173
|
+
* @returns {void}
|
|
174
|
+
*/
|
|
175
|
+
TreeGrid.prototype.serverCsvExport = function (url) {
|
|
176
|
+
this.isExcel = true;
|
|
177
|
+
this.exportTreeGrid(url);
|
|
178
|
+
};
|
|
179
|
+
/**
|
|
180
|
+
* Exports the TreeGrid data to the specified URL using a POST request.
|
|
181
|
+
* @param {string} url - Defines exporting url
|
|
182
|
+
* @returns {void}
|
|
183
|
+
*/
|
|
184
|
+
TreeGrid.prototype.exportTreeGrid = function (url) {
|
|
185
|
+
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
|
186
|
+
var treegrid = this;
|
|
187
|
+
var query = treegrid.grid.getDataModule().generateQuery(true);
|
|
188
|
+
var state = new UrlAdaptor().processQuery(new DataManager({ url: '' }), query);
|
|
189
|
+
var queries = JSON.parse(state.data);
|
|
190
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
191
|
+
var treeGridModel = JSON.parse(this.addOnPersist(['allowPaging', 'pageSettings', 'sortSettings', 'allowPdfExport', 'allowExcelExport', 'aggregates',
|
|
192
|
+
'filterSettings', 'columns', 'locale', 'searchSettings', 'idMapping', 'parentIdMapping', 'childMapping', 'treeColumnIndex']));
|
|
193
|
+
var include = ['field', 'headerText', 'type', 'format', 'visible',
|
|
194
|
+
'template', 'index', 'width', 'textAlign', 'headerTextAlign', 'columns'];
|
|
195
|
+
treeGridModel.filterSettings.columns = queries.where;
|
|
196
|
+
treeGridModel.searchSettings.fields = queries.search && queries.search[0]['fields'] || [];
|
|
197
|
+
treeGridModel.sortSettings.columns = queries.sorted;
|
|
198
|
+
treeGridModel.columns = this.setHeaderText(treeGridModel.columns, include);
|
|
199
|
+
var form = this.createElement('form', { id: 'ExportForm', styles: 'display:none;' });
|
|
200
|
+
var treeGridInput = this.createElement('input', { id: 'treeGridInput', attrs: { name: 'treeGridModel' } });
|
|
201
|
+
treeGridInput.value = JSON.stringify(treeGridModel);
|
|
202
|
+
form.method = 'POST';
|
|
203
|
+
form.action = url;
|
|
204
|
+
form.appendChild(treeGridInput);
|
|
205
|
+
document.body.appendChild(form);
|
|
206
|
+
form.submit();
|
|
207
|
+
form.remove();
|
|
208
|
+
};
|
|
209
|
+
/**
|
|
210
|
+
* Sets the header text and other properties for an array of columns based on specified criteria.
|
|
211
|
+
* @param {Column[]} columns - Defines array of columns
|
|
212
|
+
* @param {string[]} include - Defines array of sting
|
|
213
|
+
* @returns {Column[]} returns array of columns
|
|
214
|
+
*/
|
|
215
|
+
TreeGrid.prototype.setHeaderText = function (columns, include) {
|
|
216
|
+
for (var i = 0; i < columns.length; i++) {
|
|
217
|
+
var column = this.getColumnByUid(columns[parseInt(i.toString(), 10)].uid);
|
|
218
|
+
if (this.stackedHeader && isNullOrUndefined(column)) {
|
|
219
|
+
column = !isNullOrUndefined(columns[parseInt(i.toString(), 10)].field) ?
|
|
220
|
+
this.getColumnByField(columns[parseInt(i.toString(), 10)].field) : columns[parseInt(i.toString(), 10)];
|
|
221
|
+
}
|
|
222
|
+
columns[parseInt(i.toString(), 10)].headerText = column.headerText;
|
|
223
|
+
if (!isNullOrUndefined(column.template)) {
|
|
224
|
+
columns[parseInt(i.toString(), 10)].template = 'true';
|
|
225
|
+
}
|
|
226
|
+
if (columns[parseInt(i.toString(), 10)].format) {
|
|
227
|
+
columns[parseInt(i.toString(), 10)].format = getNumberFormat(this.getFormat(column.format), column.type, false, this.currencyCode);
|
|
228
|
+
if (!this.isExcel && (column.type === 'datetime' || column.type === 'date')) {
|
|
229
|
+
columns[parseInt(i.toString(), 10)].format = columns[parseInt(i.toString(), 10)].format.toString().replace('AM/PM', 'tt');
|
|
230
|
+
}
|
|
231
|
+
columns[parseInt(i.toString(), 10)].type = column.type;
|
|
232
|
+
}
|
|
233
|
+
if (columns[parseInt(i.toString(), 10)].columns) {
|
|
234
|
+
this.setHeaderText(columns[parseInt(i.toString(), 10)].columns, include);
|
|
235
|
+
}
|
|
236
|
+
var keys = Object.keys(columns[parseInt(i.toString(), 10)]);
|
|
237
|
+
for (var j = 0; j < keys.length; j++) {
|
|
238
|
+
if (include.indexOf(keys[parseInt(j.toString(), 10)]) < 0) {
|
|
239
|
+
delete columns[parseInt(i.toString(), 10)][keys[parseInt(j.toString(), 10)]];
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
return columns;
|
|
244
|
+
};
|
|
245
|
+
/**
|
|
246
|
+
* Retrieves the appropriate format string from the given format options.
|
|
247
|
+
*
|
|
248
|
+
* @param {string | NumberFormatOptions | DateFormatOptions} format - The format options to retrieve the format string from.
|
|
249
|
+
* @returns {string} The format string extracted from the provided format options.
|
|
250
|
+
*/
|
|
251
|
+
TreeGrid.prototype.getFormat = function (format) {
|
|
252
|
+
return typeof (format) === 'object' ? !isNullOrUndefined(format.format) ?
|
|
253
|
+
format.format : format.skeleton : format;
|
|
254
|
+
};
|
|
148
255
|
/**
|
|
149
256
|
* For internal use only - Get the module name.
|
|
150
257
|
*
|
|
@@ -420,7 +527,7 @@ var TreeGrid = /** @class */ (function (_super) {
|
|
|
420
527
|
TreeGrid.prototype.requiredModules = function () {
|
|
421
528
|
var modules = [];
|
|
422
529
|
var splitFrozenCount = 'splitFrozenCount';
|
|
423
|
-
this.grid["" + splitFrozenCount](this.
|
|
530
|
+
this.grid["" + splitFrozenCount](this.getColumns());
|
|
424
531
|
if (this.isDestroyed) {
|
|
425
532
|
return modules;
|
|
426
533
|
}
|
|
@@ -780,9 +887,11 @@ var TreeGrid = /** @class */ (function (_super) {
|
|
|
780
887
|
TreeGrid.prototype.IsExpandCollapseClicked = function (args) {
|
|
781
888
|
if (!isNullOrUndefined(args.target) && (args.target.classList.contains('e-treegridexpand')
|
|
782
889
|
|| args.target.classList.contains('e-treegridcollapse') || args.target.classList.contains('e-summarycell'))
|
|
783
|
-
&&
|
|
784
|
-
args.
|
|
785
|
-
|
|
890
|
+
&& !this.selectionSettings.checkboxOnly) {
|
|
891
|
+
if ((!isNullOrUndefined(args.data) && args.data['hasChildRecords']) || (args.rowIndex !== -1 && isNullOrUndefined(args.data))) {
|
|
892
|
+
args.cancel = true;
|
|
893
|
+
return;
|
|
894
|
+
}
|
|
786
895
|
}
|
|
787
896
|
};
|
|
788
897
|
TreeGrid.prototype.bindGridEvents = function () {
|
|
@@ -900,9 +1009,13 @@ var TreeGrid = /** @class */ (function (_super) {
|
|
|
900
1009
|
_this.updateAltRow(_this.getRows());
|
|
901
1010
|
_this.notify('dataBoundArg', args);
|
|
902
1011
|
if (isRemoteData(_this) && !isOffline(_this) && !_this.hasChildMapping) {
|
|
903
|
-
var req =
|
|
904
|
-
|
|
905
|
-
|
|
1012
|
+
var req = void 0;
|
|
1013
|
+
if (_this.dataResults.result) {
|
|
1014
|
+
req = 0;
|
|
1015
|
+
}
|
|
1016
|
+
else {
|
|
1017
|
+
req = 1;
|
|
1018
|
+
}
|
|
906
1019
|
setValue('grid.contentModule.isLoaded', !(req > 0), _this);
|
|
907
1020
|
}
|
|
908
1021
|
if (_this.isPixelHeight() && _this.initialRender) {
|
|
@@ -1867,6 +1980,18 @@ var TreeGrid = /** @class */ (function (_super) {
|
|
|
1867
1980
|
}
|
|
1868
1981
|
this.isEditCollapse = false;
|
|
1869
1982
|
this.notify('checkboxSelection', { target: target });
|
|
1983
|
+
if (this.grid.isCheckBoxSelection && !this.grid.isPersistSelection) {
|
|
1984
|
+
if (this.aggregates.map(function (ag) { return ag.showChildSummary === true; }).length) {
|
|
1985
|
+
var checkedTarget = this.grid.getHeaderContent().querySelector('.e-checkselectall');
|
|
1986
|
+
var checkedLen = this.grid.getSelectedRowIndexes().length;
|
|
1987
|
+
var totalRecords = this.getCurrentViewRecords().length;
|
|
1988
|
+
if (checkedLen === totalRecords) {
|
|
1989
|
+
var spanEle = checkedTarget.nextElementSibling;
|
|
1990
|
+
removeClass([spanEle], ['e-stop', 'e-uncheck']);
|
|
1991
|
+
addClass([spanEle], ['e-check']);
|
|
1992
|
+
}
|
|
1993
|
+
}
|
|
1994
|
+
}
|
|
1870
1995
|
};
|
|
1871
1996
|
/**
|
|
1872
1997
|
* Returns TreeGrid rows
|
|
@@ -2663,7 +2788,6 @@ var TreeGrid = /** @class */ (function (_super) {
|
|
|
2663
2788
|
var children = 'Children';
|
|
2664
2789
|
if (!(isRemoteData(this) && !isOffline(this)) && (!isCountRequired(this) || !isNullOrUndefined(record["" + children]))) {
|
|
2665
2790
|
var expandArgs = { data: record, row: row };
|
|
2666
|
-
this.setHeightForFrozenContent();
|
|
2667
2791
|
if (!isNullOrUndefined(this.expandStateMapping)) {
|
|
2668
2792
|
this.updateExpandStateMapping(expandArgs.data, true);
|
|
2669
2793
|
}
|
|
@@ -2690,12 +2814,6 @@ var TreeGrid = /** @class */ (function (_super) {
|
|
|
2690
2814
|
this.expandCollapse(action, null, records[parseInt(i.toString(), 10)]);
|
|
2691
2815
|
}
|
|
2692
2816
|
};
|
|
2693
|
-
TreeGrid.prototype.setHeightForFrozenContent = function () {
|
|
2694
|
-
var freeze = (this.grid.getFrozenLeftColumnsCount() > 0 || this.grid.getFrozenRightColumnsCount() > 0) ? true : false;
|
|
2695
|
-
if (this.grid.getFrozenColumns() > 0 || freeze) {
|
|
2696
|
-
this.grid.contentModule.refreshScrollOffset();
|
|
2697
|
-
}
|
|
2698
|
-
};
|
|
2699
2817
|
TreeGrid.prototype.getCollapseExpandRecords = function (row, record) {
|
|
2700
2818
|
if (this.allowPaging && this.pageSettings.pageSizeMode === 'All' && this.isExpandAll && isNullOrUndefined(record) &&
|
|
2701
2819
|
!isRemoteData(this)) {
|
|
@@ -2772,7 +2890,6 @@ var TreeGrid = /** @class */ (function (_super) {
|
|
|
2772
2890
|
this.expandCollapse('collapse', row, record);
|
|
2773
2891
|
var collapseArgs = { data: record, row: row };
|
|
2774
2892
|
if (!isRemoteData(this)) {
|
|
2775
|
-
this.setHeightForFrozenContent();
|
|
2776
2893
|
if (!isNullOrUndefined(this.expandStateMapping)) {
|
|
2777
2894
|
this.updateExpandStateMapping(collapseArgs.data, false);
|
|
2778
2895
|
}
|
|
@@ -3227,7 +3344,6 @@ var TreeGrid = /** @class */ (function (_super) {
|
|
|
3227
3344
|
_this.isExpandRefresh = true;
|
|
3228
3345
|
var scrollHeightBeforeRefresh = _this.getContentTable().parentElement.scrollTop;
|
|
3229
3346
|
_this.grid.refresh();
|
|
3230
|
-
_this.setHeightForFrozenContent();
|
|
3231
3347
|
if (_this.enableInfiniteScrolling) {
|
|
3232
3348
|
_this.getContentTable().parentElement.scrollTop = scrollHeightBeforeRefresh;
|
|
3233
3349
|
}
|
|
@@ -3250,7 +3366,6 @@ var TreeGrid = /** @class */ (function (_super) {
|
|
|
3250
3366
|
this.notify(events.remoteExpand, { record: record, rows: rows, parentRow: row });
|
|
3251
3367
|
var args_1 = { row: row, data: record };
|
|
3252
3368
|
if (rows.length > 0) {
|
|
3253
|
-
this.setHeightForFrozenContent();
|
|
3254
3369
|
this.trigger(events.expanded, args_1);
|
|
3255
3370
|
}
|
|
3256
3371
|
}
|
|
@@ -3259,7 +3374,6 @@ var TreeGrid = /** @class */ (function (_super) {
|
|
|
3259
3374
|
}
|
|
3260
3375
|
else {
|
|
3261
3376
|
this.collapseRemoteChild({ record: record, rows: rows });
|
|
3262
|
-
this.setHeightForFrozenContent();
|
|
3263
3377
|
this.trigger(events.collapsed, args);
|
|
3264
3378
|
}
|
|
3265
3379
|
};
|
|
@@ -3294,12 +3408,12 @@ var TreeGrid = /** @class */ (function (_super) {
|
|
|
3294
3408
|
}
|
|
3295
3409
|
var freeze = (this.grid.getFrozenLeftColumnsCount() > 0 || this.grid.getFrozenRightColumnsCount() > 0) ? true : false;
|
|
3296
3410
|
if (this.frozenRows || this.frozenColumns || this.getFrozenColumns() || freeze) {
|
|
3297
|
-
movableRows = this.
|
|
3411
|
+
movableRows = this.getRows().filter(function (r) {
|
|
3298
3412
|
return r.querySelector('.e-gridrowindex' + record.index + 'level' + (record.level + 1));
|
|
3299
3413
|
});
|
|
3300
3414
|
}
|
|
3301
3415
|
if (freeze) {
|
|
3302
|
-
freezeRightRows = this.
|
|
3416
|
+
freezeRightRows = this.getRows().filter(function (r) {
|
|
3303
3417
|
return r.querySelector('.e-gridrowindex' + record.index + 'level' + (record.level + 1));
|
|
3304
3418
|
});
|
|
3305
3419
|
}
|
|
@@ -3399,10 +3513,10 @@ var TreeGrid = /** @class */ (function (_super) {
|
|
|
3399
3513
|
var rightrows = [];
|
|
3400
3514
|
var freeze = (this.getFrozenLeftColumnsCount() > 0 || this.getFrozenRightColumnsCount() > 0) ? true : false;
|
|
3401
3515
|
if (freeze) {
|
|
3402
|
-
movablerows = this.
|
|
3516
|
+
movablerows = this.getRows().filter(function (r) {
|
|
3403
3517
|
return r.querySelector('.e-gridrowindex' + rowDetails.record.index + 'level' + (rowDetails.record.level + 1));
|
|
3404
3518
|
});
|
|
3405
|
-
rightrows = this.
|
|
3519
|
+
rightrows = this.getRows().filter(function (r) {
|
|
3406
3520
|
return r.querySelector('.e-gridrowindex' + rowDetails.record.index + 'level' + (rowDetails.record.level + 1));
|
|
3407
3521
|
});
|
|
3408
3522
|
}
|
|
@@ -3612,59 +3726,72 @@ var TreeGrid = /** @class */ (function (_super) {
|
|
|
3612
3726
|
* @param {number} rowIndex - Specifies the row index.
|
|
3613
3727
|
* @param {number} columnIndex - Specifies the column index.
|
|
3614
3728
|
* @returns {Element} - Returns movable cell element from the indexes passed
|
|
3729
|
+
*
|
|
3730
|
+
|
|
3615
3731
|
*/
|
|
3616
3732
|
TreeGrid.prototype.getMovableCellFromIndex = function (rowIndex, columnIndex) {
|
|
3617
|
-
return this.grid.
|
|
3733
|
+
return this.grid.getCellFromIndex(rowIndex, columnIndex);
|
|
3618
3734
|
};
|
|
3619
3735
|
/**
|
|
3620
3736
|
* Gets all the TreeGrid's movable table data rows.
|
|
3621
3737
|
*
|
|
3622
3738
|
* @returns {Element[]} - Returns element collection of movable rows
|
|
3739
|
+
*
|
|
3740
|
+
|
|
3623
3741
|
*/
|
|
3624
3742
|
TreeGrid.prototype.getMovableDataRows = function () {
|
|
3625
|
-
return this.grid.
|
|
3743
|
+
return this.grid.getDataRows();
|
|
3626
3744
|
};
|
|
3627
3745
|
/**
|
|
3628
3746
|
* Gets a movable tables row by index.
|
|
3629
3747
|
*
|
|
3630
3748
|
* @param {number} index - Specifies the row index.
|
|
3631
3749
|
* @returns {Element} - Returns movable row based on index passed
|
|
3750
|
+
*
|
|
3751
|
+
|
|
3632
3752
|
*/
|
|
3633
3753
|
TreeGrid.prototype.getMovableRowByIndex = function (index) {
|
|
3634
|
-
return this.grid.
|
|
3754
|
+
return this.grid.getRowByIndex(index);
|
|
3635
3755
|
};
|
|
3636
3756
|
/**
|
|
3637
3757
|
* Gets the TreeGrid's movable content rows from frozen treegrid.
|
|
3638
3758
|
*
|
|
3639
3759
|
* @returns {Element[]}: Returns movable row element
|
|
3760
|
+
|
|
3640
3761
|
*/
|
|
3641
3762
|
TreeGrid.prototype.getMovableRows = function () {
|
|
3642
|
-
return this.grid.
|
|
3763
|
+
return this.grid.getRows();
|
|
3643
3764
|
};
|
|
3644
3765
|
/**
|
|
3645
3766
|
* Gets a frozen right tables row element by index.
|
|
3646
3767
|
*
|
|
3647
3768
|
* @param {number} index - Specifies the row index.
|
|
3648
3769
|
* @returns {Element} returns the element
|
|
3770
|
+
*
|
|
3771
|
+
|
|
3649
3772
|
*/
|
|
3650
3773
|
TreeGrid.prototype.getFrozenRightRowByIndex = function (index) {
|
|
3651
|
-
return this.grid.
|
|
3774
|
+
return this.grid.getRowByIndex(index);
|
|
3652
3775
|
};
|
|
3653
3776
|
/**
|
|
3654
3777
|
* Gets the Tree Grid's frozen right content rows from frozen Tree Grid.
|
|
3655
3778
|
*
|
|
3656
3779
|
* @returns {Element[]} returns the element
|
|
3780
|
+
*
|
|
3781
|
+
|
|
3657
3782
|
*/
|
|
3658
3783
|
TreeGrid.prototype.getFrozenRightRows = function () {
|
|
3659
|
-
return this.grid.
|
|
3784
|
+
return this.grid.getRows();
|
|
3660
3785
|
};
|
|
3661
3786
|
/**
|
|
3662
3787
|
* Gets all the Tree Grid's frozen right table data rows.
|
|
3663
3788
|
*
|
|
3664
3789
|
* @returns {Element[]} Returns the Element
|
|
3790
|
+
*
|
|
3791
|
+
|
|
3665
3792
|
*/
|
|
3666
3793
|
TreeGrid.prototype.getFrozenRightDataRows = function () {
|
|
3667
|
-
return this.grid.
|
|
3794
|
+
return this.grid.getDataRows();
|
|
3668
3795
|
};
|
|
3669
3796
|
/**
|
|
3670
3797
|
* Gets a frozen right table cell by row and column index.
|
|
@@ -3672,36 +3799,44 @@ var TreeGrid = /** @class */ (function (_super) {
|
|
|
3672
3799
|
* @param {number} rowIndex - Specifies the row index.
|
|
3673
3800
|
* @param {number} columnIndex - Specifies the column index.
|
|
3674
3801
|
* @returns {Element} Returns the Element
|
|
3802
|
+
*
|
|
3803
|
+
|
|
3675
3804
|
*/
|
|
3676
3805
|
TreeGrid.prototype.getFrozenRightCellFromIndex = function (rowIndex, columnIndex) {
|
|
3677
|
-
return this.grid.
|
|
3806
|
+
return this.grid.getCellFromIndex(rowIndex, columnIndex);
|
|
3678
3807
|
};
|
|
3679
3808
|
/**
|
|
3680
3809
|
* Gets a frozen left column header by column index.
|
|
3681
3810
|
*
|
|
3682
3811
|
* @param {number} index - Specifies the column index.
|
|
3683
3812
|
* @returns {Element} Returns the Element
|
|
3813
|
+
*
|
|
3814
|
+
|
|
3684
3815
|
*/
|
|
3685
3816
|
TreeGrid.prototype.getFrozenLeftColumnHeaderByIndex = function (index) {
|
|
3686
|
-
return this.grid.
|
|
3817
|
+
return this.grid.getColumnHeaderByIndex(index);
|
|
3687
3818
|
};
|
|
3688
3819
|
/**
|
|
3689
3820
|
* Gets a frozen right column header by column index.
|
|
3690
3821
|
*
|
|
3691
3822
|
* @param {number} index - Specifies the column index.
|
|
3692
3823
|
* @returns {Element} Returns the Element
|
|
3824
|
+
*
|
|
3825
|
+
|
|
3693
3826
|
*/
|
|
3694
3827
|
TreeGrid.prototype.getFrozenRightColumnHeaderByIndex = function (index) {
|
|
3695
|
-
return this.grid.
|
|
3828
|
+
return this.grid.getColumnHeaderByIndex(index);
|
|
3696
3829
|
};
|
|
3697
3830
|
/**
|
|
3698
3831
|
* Gets a movable column header by column index.
|
|
3699
3832
|
*
|
|
3700
3833
|
* @param {number} index - Specifies the column index.
|
|
3701
3834
|
* @returns {Element} Returns the Element
|
|
3835
|
+
*
|
|
3836
|
+
|
|
3702
3837
|
*/
|
|
3703
3838
|
TreeGrid.prototype.getMovableColumnHeaderByIndex = function (index) {
|
|
3704
|
-
return this.grid.
|
|
3839
|
+
return this.grid.getColumnHeaderByIndex(index);
|
|
3705
3840
|
};
|
|
3706
3841
|
/**
|
|
3707
3842
|
* @hidden
|
|
@@ -3935,6 +4070,9 @@ var TreeGrid = /** @class */ (function (_super) {
|
|
|
3935
4070
|
__decorate([
|
|
3936
4071
|
Complex({}, RowDropSettings)
|
|
3937
4072
|
], TreeGrid.prototype, "rowDropSettings", void 0);
|
|
4073
|
+
__decorate([
|
|
4074
|
+
Property('USD')
|
|
4075
|
+
], TreeGrid.prototype, "currencyCode", void 0);
|
|
3938
4076
|
__decorate([
|
|
3939
4077
|
Property()
|
|
3940
4078
|
], TreeGrid.prototype, "pagerTemplate", void 0);
|
|
@@ -326,6 +326,7 @@ export declare class Column {
|
|
|
326
326
|
* The available built-in freeze directions are
|
|
327
327
|
* * Left - Freeze the column at left side.
|
|
328
328
|
* * Right - Freeze the column at right side.
|
|
329
|
+
* * Fixed - Freeze the column at Center.
|
|
329
330
|
*
|
|
330
331
|
* @default null
|
|
331
332
|
*/
|
|
@@ -83,8 +83,8 @@ var TreeVirtualRowModelGenerator = /** @class */ (function (_super) {
|
|
|
83
83
|
var currentPage = this["" + model].currentPage;
|
|
84
84
|
if (clear) {
|
|
85
85
|
this.cache = {};
|
|
86
|
-
this.movableCache = {};
|
|
87
|
-
this.frozenRightCache = {}
|
|
86
|
+
/*this.movableCache = {};
|
|
87
|
+
this.frozenRightCache = {};*/
|
|
88
88
|
this.data = {};
|
|
89
89
|
this.groups = {};
|
|
90
90
|
}
|
|
@@ -99,8 +99,8 @@ var TreeVirtualRowModelGenerator = /** @class */ (function (_super) {
|
|
|
99
99
|
this.cache = {};
|
|
100
100
|
this.data = {};
|
|
101
101
|
this.groups = {};
|
|
102
|
-
this.movableCache = {};
|
|
103
|
-
this.frozenRightCache = {}
|
|
102
|
+
/*this.movableCache = {};
|
|
103
|
+
this.frozenRightCache = {};*/
|
|
104
104
|
}
|
|
105
105
|
}
|
|
106
106
|
return clear;
|
|
@@ -25,7 +25,6 @@ export declare class VirtualTreeContentRenderer extends VirtualContentRenderer {
|
|
|
25
25
|
/** @hidden */
|
|
26
26
|
isDataSourceChanged: boolean;
|
|
27
27
|
getRowByIndex(index: number): Element;
|
|
28
|
-
getMovableVirtualRowByIndex(index: number): Element;
|
|
29
28
|
getFrozenRightVirtualRowByIndex(index: number): Element;
|
|
30
29
|
getRowCollection(index: number, isMovable: boolean, isRowObject?: boolean, isFrozenRight?: boolean): Element | Object;
|
|
31
30
|
addEventListener(): void;
|