@syncfusion/ej2-treegrid 20.2.44 → 20.2.49
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 +19 -0
- package/dist/ej2-treegrid.umd.min.js +2 -2
- package/dist/ej2-treegrid.umd.min.js.map +1 -1
- package/dist/es6/ej2-treegrid.es2015.js +99 -68
- package/dist/es6/ej2-treegrid.es2015.js.map +1 -1
- package/dist/es6/ej2-treegrid.es5.js +99 -68
- package/dist/es6/ej2-treegrid.es5.js.map +1 -1
- package/dist/global/ej2-treegrid.min.js +2 -2
- package/dist/global/ej2-treegrid.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +9 -9
- package/src/treegrid/actions/context-menu.js +16 -15
- package/src/treegrid/actions/crud-actions.js +1 -1
- package/src/treegrid/actions/filter.js +0 -4
- package/src/treegrid/actions/selection.js +9 -0
- package/src/treegrid/actions/toolbar.js +43 -41
- package/src/treegrid/base/data.js +1 -1
- package/src/treegrid/base/treegrid-model.d.ts +1 -1
- package/src/treegrid/base/treegrid.js +19 -6
- package/src/treegrid/renderer/virtual-tree-content-render.js +10 -0
package/dist/global/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* filename: index.d.ts
|
|
3
|
-
* version : 20.2.
|
|
3
|
+
* version : 20.2.49
|
|
4
4
|
* Copyright Syncfusion Inc. 2001 - 2020. All rights reserved.
|
|
5
5
|
* Use of this code is subject to the terms of our license.
|
|
6
6
|
* A copy of the current license can be obtained at any time by e-mailing
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"_from": "@syncfusion/ej2-treegrid@*",
|
|
3
|
-
"_id": "@syncfusion/ej2-treegrid@20.2.
|
|
3
|
+
"_id": "@syncfusion/ej2-treegrid@20.2.46",
|
|
4
4
|
"_inBundle": false,
|
|
5
|
-
"_integrity": "sha512-
|
|
5
|
+
"_integrity": "sha512-0SyT77dBgVOM2dMvYAZTKTa1lbiUkc2eAQXOWT+BUE0AS5gJZu2W7kNchvvayJVtor/3u3SkoUVg8lOsDy3eUw==",
|
|
6
6
|
"_location": "/@syncfusion/ej2-treegrid",
|
|
7
7
|
"_phantomChildren": {},
|
|
8
8
|
"_requested": {
|
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
"/@syncfusion/ej2-react-treegrid",
|
|
25
25
|
"/@syncfusion/ej2-vue-treegrid"
|
|
26
26
|
],
|
|
27
|
-
"_resolved": "http://nexus.syncfusion.com/repository/ej2-hotfix-new/@syncfusion/ej2-treegrid/-/ej2-treegrid-20.2.
|
|
28
|
-
"_shasum": "
|
|
27
|
+
"_resolved": "http://nexus.syncfusion.com/repository/ej2-hotfix-new/@syncfusion/ej2-treegrid/-/ej2-treegrid-20.2.46.tgz",
|
|
28
|
+
"_shasum": "f7e5f74d66bffde32c3c7b995b213375cc3773c9",
|
|
29
29
|
"_spec": "@syncfusion/ej2-treegrid@*",
|
|
30
30
|
"_where": "/jenkins/workspace/automation_release_19.1.0.1-ZPMUBNQ6AUYH6YGEFBPVYMEQLRRW2SLD4XCZ6GATNZJFYJ3RIAOA/packages/included",
|
|
31
31
|
"author": {
|
|
@@ -36,10 +36,10 @@
|
|
|
36
36
|
},
|
|
37
37
|
"bundleDependencies": false,
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"@syncfusion/ej2-base": "~20.2.
|
|
40
|
-
"@syncfusion/ej2-data": "~20.2.
|
|
41
|
-
"@syncfusion/ej2-grids": "~20.2.
|
|
42
|
-
"@syncfusion/ej2-popups": "~20.2.
|
|
39
|
+
"@syncfusion/ej2-base": "~20.2.48",
|
|
40
|
+
"@syncfusion/ej2-data": "~20.2.45",
|
|
41
|
+
"@syncfusion/ej2-grids": "~20.2.49",
|
|
42
|
+
"@syncfusion/ej2-popups": "~20.2.49"
|
|
43
43
|
},
|
|
44
44
|
"deprecated": false,
|
|
45
45
|
"description": "Essential JS 2 TreeGrid Component",
|
|
@@ -60,6 +60,6 @@
|
|
|
60
60
|
"url": "git+https://github.com/syncfusion/ej2-treegrid.git"
|
|
61
61
|
},
|
|
62
62
|
"typings": "index.d.ts",
|
|
63
|
-
"version": "20.2.
|
|
63
|
+
"version": "20.2.49",
|
|
64
64
|
"sideEffects": false
|
|
65
65
|
}
|
|
@@ -47,9 +47,9 @@ var ContextMenu = /** @class */ (function () {
|
|
|
47
47
|
&& !(isNullOrUndefined(editRecord)) && !(editRecord.classList.contains('e-menu-hide'))) {
|
|
48
48
|
editRecord.style.display = 'none';
|
|
49
49
|
}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
50
|
+
var tObj = this.parent;
|
|
51
|
+
var selectedrow = tObj.getSelectedRows()[0];
|
|
52
|
+
if ((indent || outdent) && !isNullOrUndefined(selectedrow)) {
|
|
53
53
|
var targetElement = args.event.target.closest('td');
|
|
54
54
|
if (isNullOrUndefined(targetElement) || (!isNullOrUndefined(targetElement) && !targetElement.classList.contains('e-rowcell'))) {
|
|
55
55
|
indent.style.display = outdent.style.display = 'none';
|
|
@@ -61,31 +61,32 @@ var ContextMenu = /** @class */ (function () {
|
|
|
61
61
|
else if (args['name'] !== 'rowDeselected' || (!isNullOrUndefined(selectedrow) && tObj.grid.isCheckBoxSelection)) {
|
|
62
62
|
var selectedItem = tObj.getCurrentViewRecords()[selectedrow.rowIndex];
|
|
63
63
|
if (!isNullOrUndefined(selectedItem)) {
|
|
64
|
-
if ((selectedItem.level > tObj.getCurrentViewRecords()[selectedrow.rowIndex - 1].level)
|
|
64
|
+
if ((selectedItem.level > tObj.getCurrentViewRecords()[selectedrow.rowIndex - 1].level) || this.parent.editSettings.mode === 'Batch'
|
|
65
|
+
|| this.parent.editSettings.mode === 'Cell') {
|
|
65
66
|
indent.style.display = 'none';
|
|
66
67
|
}
|
|
67
68
|
else {
|
|
68
69
|
indent.style.display = 'block';
|
|
69
70
|
}
|
|
70
|
-
if (selectedItem.level === tObj.getCurrentViewRecords()[selectedrow.rowIndex - 1].level)
|
|
71
|
+
if ((selectedItem.level === tObj.getCurrentViewRecords()[selectedrow.rowIndex - 1].level) && this.parent.editSettings.mode !== 'Batch'
|
|
72
|
+
&& this.parent.editSettings.mode !== 'Cell') {
|
|
71
73
|
indent.style.display = 'block';
|
|
72
74
|
}
|
|
73
|
-
if (selectedItem.level === 0)
|
|
75
|
+
if ((selectedItem.level === 0) || this.parent.editSettings.mode === 'Batch'
|
|
76
|
+
|| this.parent.editSettings.mode === 'Cell') {
|
|
74
77
|
outdent.style.display = 'none';
|
|
75
78
|
}
|
|
76
|
-
|
|
79
|
+
else {
|
|
77
80
|
outdent.style.display = 'block';
|
|
78
81
|
}
|
|
79
82
|
}
|
|
80
83
|
}
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
}
|
|
88
|
-
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
if (tObj.grid.isEdit && isNullOrUndefined(selectedrow)) {
|
|
88
|
+
indent.style.display = 'none';
|
|
89
|
+
outdent.style.display = 'none';
|
|
89
90
|
}
|
|
90
91
|
}
|
|
91
92
|
};
|
|
@@ -66,7 +66,7 @@ export function editAction(details, control, isSelfReference, addRowIndex, selec
|
|
|
66
66
|
var childRecords = parentData ? parentData[control.childMapping] : [];
|
|
67
67
|
for (var p = childRecords.length - 1; p >= 0; p--) {
|
|
68
68
|
if (childRecords[p][control.idMapping] === currentData_1[control.idMapping]) {
|
|
69
|
-
if (!control.enableImmutableMode) {
|
|
69
|
+
if (!control.enableImmutableMode && parentData.childRecords.length === parentData['Children'].length) {
|
|
70
70
|
parentData['childRecords'].splice(p, 1);
|
|
71
71
|
}
|
|
72
72
|
childRecords.splice(p, 1);
|
|
@@ -155,10 +155,6 @@ var Filter = /** @class */ (function () {
|
|
|
155
155
|
}
|
|
156
156
|
}
|
|
157
157
|
else {
|
|
158
|
-
if ((!this.parent.enableCollapseAll || !this.parent.initialRender && isNullOrUndefined(this.parent['dataResults']['result']))
|
|
159
|
-
&& parent['expanded'] === false && this.parent.getVisibleRecords().indexOf(record) === -1) {
|
|
160
|
-
this.parent.expandRow(this.parent.getRows()[parent['index']], parent);
|
|
161
|
-
}
|
|
162
158
|
this.addParentRecord(parent);
|
|
163
159
|
}
|
|
164
160
|
}
|
|
@@ -266,6 +266,8 @@ var Selection = /** @class */ (function () {
|
|
|
266
266
|
var _this = this;
|
|
267
267
|
var index = -1;
|
|
268
268
|
var length = 0;
|
|
269
|
+
//This property used to maintain the check state of the currentview data after clear filtering
|
|
270
|
+
var multiFilterCheckState = false;
|
|
269
271
|
if (!isNullOrUndefined(this.parent.filterModule) && this.parent.filterModule.filteredResult.length > 0) {
|
|
270
272
|
var filterResult = this.parent.filterModule.filteredResult;
|
|
271
273
|
if (this.filteredList.length === 0) {
|
|
@@ -274,6 +276,10 @@ var Selection = /** @class */ (function () {
|
|
|
274
276
|
else {
|
|
275
277
|
if (this.filteredList !== filterResult) {
|
|
276
278
|
this.filteredList = filterResult;
|
|
279
|
+
multiFilterCheckState = true;
|
|
280
|
+
}
|
|
281
|
+
else {
|
|
282
|
+
multiFilterCheckState = false;
|
|
277
283
|
}
|
|
278
284
|
}
|
|
279
285
|
}
|
|
@@ -292,6 +298,9 @@ var Selection = /** @class */ (function () {
|
|
|
292
298
|
if (data[i].checkboxState === 'check') {
|
|
293
299
|
continue;
|
|
294
300
|
}
|
|
301
|
+
if (multiFilterCheckState) {
|
|
302
|
+
continue;
|
|
303
|
+
}
|
|
295
304
|
data[i].checkboxState = 'check';
|
|
296
305
|
this.updateSelectedItems(data[i], data[i].checkboxState);
|
|
297
306
|
}
|
|
@@ -43,53 +43,55 @@ var Toolbar = /** @class */ (function () {
|
|
|
43
43
|
this.parent.off(events.toolbarClick, this.toolbarClickHandler);
|
|
44
44
|
};
|
|
45
45
|
Toolbar.prototype.refreshToolbar = function (args) {
|
|
46
|
-
var tObj = this.parent;
|
|
47
|
-
var indentElement;
|
|
48
|
-
var outdentElement;
|
|
49
|
-
var indentID = tObj.element.id + '_gridcontrol_indent';
|
|
50
|
-
var outdentID = tObj.element.id + '_gridcontrol_outdent';
|
|
51
46
|
var toolbarElement = this.parent.grid.toolbarModule.getToolbar();
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
indentElement.classList.add('e-hidden');
|
|
65
|
-
outdentElement.classList.add('e-hidden');
|
|
47
|
+
if (!isNullOrUndefined(toolbarElement)) {
|
|
48
|
+
var tObj = this.parent;
|
|
49
|
+
var indentElement = void 0;
|
|
50
|
+
var outdentElement = void 0;
|
|
51
|
+
var indentID = tObj.element.id + '_gridcontrol_indent';
|
|
52
|
+
var outdentID = tObj.element.id + '_gridcontrol_outdent';
|
|
53
|
+
var indentEle = toolbarElement.querySelector('#' + indentID);
|
|
54
|
+
var outdentEle = toolbarElement.querySelector('#' + outdentID);
|
|
55
|
+
var row = args.row;
|
|
56
|
+
var selectedrow = tObj.getSelectedRows()[0];
|
|
57
|
+
if (!isNullOrUndefined(row[0])) {
|
|
58
|
+
row = row[0];
|
|
66
59
|
}
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
60
|
+
row = (!isNullOrUndefined(selectedrow) && selectedrow.rowIndex !== row.rowIndex) ? selectedrow : row;
|
|
61
|
+
if (indentEle !== null && outdentEle !== null) {
|
|
62
|
+
indentElement = toolbarElement.querySelector('#' + indentID).parentElement;
|
|
63
|
+
outdentElement = toolbarElement.querySelector('#' + outdentID).parentElement;
|
|
64
|
+
if (row.rowIndex === 0 || tObj.getSelectedRowIndexes().length > 1) {
|
|
65
|
+
indentElement.classList.add('e-hidden');
|
|
66
|
+
outdentElement.classList.add('e-hidden');
|
|
67
|
+
}
|
|
68
|
+
else if (args['name'] !== 'rowDeselected' || (!isNullOrUndefined(selectedrow) && tObj.grid.isCheckBoxSelection)) {
|
|
69
|
+
var selectedItem = tObj.getCurrentViewRecords()[row.rowIndex];
|
|
70
|
+
if (!isNullOrUndefined(selectedItem)) {
|
|
71
|
+
if ((selectedItem.level > tObj.getCurrentViewRecords()[row.rowIndex - 1].level)) {
|
|
72
|
+
indentElement.classList.add('e-hidden');
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
indentElement.classList.remove('e-hidden');
|
|
76
|
+
}
|
|
77
|
+
if (selectedItem.level === tObj.getCurrentViewRecords()[row.rowIndex - 1].level) {
|
|
78
|
+
indentElement.classList.remove('e-hidden');
|
|
79
|
+
}
|
|
80
|
+
if (selectedItem.level === 0) {
|
|
81
|
+
outdentElement.classList.add('e-hidden');
|
|
82
|
+
}
|
|
83
|
+
if (selectedItem.level !== 0) {
|
|
84
|
+
outdentElement.classList.remove('e-hidden');
|
|
85
|
+
}
|
|
75
86
|
}
|
|
76
|
-
|
|
77
|
-
|
|
87
|
+
}
|
|
88
|
+
if (args['name'] === 'rowDeselected' && isNullOrUndefined(selectedrow) && !tObj.grid.isCheckBoxSelection) {
|
|
89
|
+
if (this.parent.toolbar['includes']('Indent')) {
|
|
90
|
+
indentElement.classList.add('e-hidden');
|
|
78
91
|
}
|
|
79
|
-
if (
|
|
92
|
+
if (this.parent.toolbar['includes']('Outdent')) {
|
|
80
93
|
outdentElement.classList.add('e-hidden');
|
|
81
94
|
}
|
|
82
|
-
if (selectedItem.level !== 0) {
|
|
83
|
-
outdentElement.classList.remove('e-hidden');
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
if (args['name'] === 'rowDeselected' && isNullOrUndefined(selectedrow) && !tObj.grid.isCheckBoxSelection) {
|
|
88
|
-
if (this.parent.toolbar['includes']('Indent')) {
|
|
89
|
-
indentElement.classList.add('e-hidden');
|
|
90
|
-
}
|
|
91
|
-
if (this.parent.toolbar['includes']('Outdent')) {
|
|
92
|
-
outdentElement.classList.add('e-hidden');
|
|
93
95
|
}
|
|
94
96
|
}
|
|
95
97
|
}
|
|
@@ -378,7 +378,7 @@ var DataManipulation = /** @class */ (function () {
|
|
|
378
378
|
currentData.index = this.storedIndex;
|
|
379
379
|
}
|
|
380
380
|
if ((!isNullOrUndefined(currentData[this.parent.childMapping]) && !isCountRequired(this.parent)) ||
|
|
381
|
-
((currentData[this.parent.hasChildMapping]) && isCountRequired(this.parent) && this.parent.initialRender)) {
|
|
381
|
+
((currentData[this.parent.hasChildMapping]) && isCountRequired(this.parent) && (this.parent.initialRender || isNullOrUndefined(this.parent['dataResults'].result)))) {
|
|
382
382
|
currentData.hasChildRecords = true;
|
|
383
383
|
if (this.parent.enableCollapseAll || !isNullOrUndefined(this.parent.dataStateChange)
|
|
384
384
|
&& isNullOrUndefined(currentData[this.parent.childMapping])) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component, addClass, createElement, EventHandler, isNullOrUndefined, Ajax, ModuleDeclaration, extend} from '@syncfusion/ej2-base';import { removeClass, EmitType, Complex, Collection, KeyboardEventArgs, getValue } from '@syncfusion/ej2-base';import {Event, Property, NotifyPropertyChanges, INotifyPropertyChanged, setValue, KeyboardEvents, L10n } from '@syncfusion/ej2-base';import { Column, ColumnModel } from '../models/column';import { BeforeBatchSaveArgs, BeforeBatchAddArgs, BatchDeleteArgs, BeforeBatchDeleteArgs } from '@syncfusion/ej2-grids';import { GridModel, ColumnQueryModeType, HeaderCellInfoEventArgs, EditSettingsModel as GridEditModel } from '@syncfusion/ej2-grids';import {RowDragEventArgs, RowDropEventArgs, RowDropSettingsModel, RowDropSettings, getUid } from '@syncfusion/ej2-grids';import { ActionEventArgs, TextAlign } from'@syncfusion/ej2-grids';import { DetailDataBoundEventArgs, ClipMode, ColumnChooser} from '@syncfusion/ej2-grids';import { SearchEventArgs, AddEventArgs, EditEventArgs, DeleteEventArgs} from '@syncfusion/ej2-grids';import { SaveEventArgs, CellSaveArgs, BatchAddArgs, BatchCancelArgs, BeginEditArgs, CellEditArgs} from '@syncfusion/ej2-grids';import { FilterSettings } from '../models/filter-settings';import { TextWrapSettings } from '../models/textwrap-settings';import { TextWrapSettingsModel } from '../models/textwrap-settings-model';import {Filter} from '../actions/filter';import { Logger as TreeLogger } from '../actions/logger';import { BeforeCopyEventArgs, BeforePasteEventArgs } from '@syncfusion/ej2-grids';import { TreeClipboard } from '../actions/clipboard';import {Aggregate} from '../actions/summary';import { Reorder } from '../actions/reorder';import { Resize } from '../actions/resize';import { Selection as TreeGridSelection } from '../actions/selection';import { ColumnMenu } from '../actions/column-menu';import { DetailRow } from '../actions/detail-row';import { Freeze } from '../actions/freeze-column';import { Print } from '../actions/print';import * as events from '../base/constant';import { FilterSettingsModel } from '../models/filter-settings-model';import { SearchSettings} from '../models/search-settings';import { SearchSettingsModel } from '../models/search-settings-model';import {RowInfo, RowDataBoundEventArgs, PageEventArgs, FilterEventArgs, FailureEventArgs, SortEventArgs } from '@syncfusion/ej2-grids';import { RowSelectingEventArgs, RowSelectEventArgs, RowDeselectEventArgs, IIndex, ISelectedCell } from '@syncfusion/ej2-grids';import {ColumnModel as GridColumnModel, Column as GridColumn, CellSelectEventArgs, CellDeselectEventArgs } from '@syncfusion/ej2-grids';import { SelectionSettings } from '../models/selection-settings';import { SelectionSettingsModel } from '../models/selection-settings-model';import {getActualProperties, SortDirection, getObject, ColumnDragEventArgs } from '@syncfusion/ej2-grids';import { PrintMode, Data, IGrid, ContextMenuItemModel } from '@syncfusion/ej2-grids';import { ColumnMenuItem, ColumnMenuItemModel, CheckBoxChangeEventArgs } from '@syncfusion/ej2-grids';import { ExcelExportCompleteArgs, ExcelHeaderQueryCellInfoEventArgs, ExcelQueryCellInfoEventArgs } from '@syncfusion/ej2-grids';import { PdfExportCompleteArgs, PdfHeaderQueryCellInfoEventArgs, PdfQueryCellInfoEventArgs } from '@syncfusion/ej2-grids';import { ExcelExportProperties, PdfExportProperties, CellSelectingEventArgs, PrintEventArgs } from '@syncfusion/ej2-grids';import { ColumnMenuOpenEventArgs } from '@syncfusion/ej2-grids';import {BeforeDataBoundArgs} from '@syncfusion/ej2-grids';import { DataManager, ReturnOption, RemoteSaveAdaptor, Query, JsonAdaptor, Deferred } from '@syncfusion/ej2-data';import { createSpinner, hideSpinner, showSpinner, Dialog } from '@syncfusion/ej2-popups';import { isRemoteData, isOffline, extendArray, isCountRequired, findChildrenRecords } from '../utils';import { Grid, QueryCellInfoEventArgs, Logger } from '@syncfusion/ej2-grids';import { Render } from '../renderer/render';import { VirtualTreeContentRenderer } from '../renderer/virtual-tree-content-render';import { DataManipulation } from './data';import { RowDD } from '../actions/rowdragdrop';import { Sort } from '../actions/sort';import { ITreeData, RowExpandedEventArgs, RowCollapsedEventArgs, RowCollapsingEventArgs, TreeGridExcelExportProperties } from './interface';import { CellSaveEventArgs, DataStateChangeEventArgs, RowExpandingEventArgs, TreeGridPdfExportProperties } from './interface';import { iterateArrayOrObject, GridLine } from '@syncfusion/ej2-grids';import { DataSourceChangedEventArgs, RecordDoubleClickEventArgs, ResizeArgs } from '@syncfusion/ej2-grids';import { ToolbarItems, ToolbarItem, ContextMenuItem, ContextMenuItems, RowPosition, CopyHierarchyType } from '../enum';import { ItemModel, ClickEventArgs, BeforeOpenCloseMenuEventArgs, MenuEventArgs } from '@syncfusion/ej2-navigations';import { PageSettings } from '../models/page-settings';import { PageSettingsModel } from '../models/page-settings-model';import { AggregateRow } from '../models/summary';import { AggregateRowModel } from '../models/summary-model';import { ExcelExport } from '../actions/excel-export';import { PdfExport } from '../actions/pdf-export';import { Toolbar } from '../actions/toolbar';import { Page } from '../actions/page';import { ContextMenu } from '../actions/context-menu';import { EditSettings } from '../models/edit-settings';import { EditSettingsModel } from '../models/edit-settings-model';import { Edit} from '../actions/edit';import { SortSettings } from '../models/sort-settings';import { SortSettingsModel } from '../models/sort-settings-model';import { isHidden, getExpandStatus } from '../utils';import { editAction } from '../actions/crud-actions';import { InfiniteScrollSettings } from '../models/infinite-scroll-settings';import { InfiniteScrollSettingsModel } from '../models/infinite-scroll-settings-model';import { TreeActionEventArgs } from '..';
|
|
1
|
+
import { Component, addClass, createElement, EventHandler, isNullOrUndefined, Ajax, ModuleDeclaration, extend, merge} from '@syncfusion/ej2-base';import { removeClass, EmitType, Complex, Collection, KeyboardEventArgs, getValue } from '@syncfusion/ej2-base';import {Event, Property, NotifyPropertyChanges, INotifyPropertyChanged, setValue, KeyboardEvents, L10n } from '@syncfusion/ej2-base';import { Column, ColumnModel } from '../models/column';import { BeforeBatchSaveArgs, BeforeBatchAddArgs, BatchDeleteArgs, BeforeBatchDeleteArgs } from '@syncfusion/ej2-grids';import { GridModel, ColumnQueryModeType, HeaderCellInfoEventArgs, EditSettingsModel as GridEditModel } from '@syncfusion/ej2-grids';import {RowDragEventArgs, RowDropEventArgs, RowDropSettingsModel, RowDropSettings, getUid } from '@syncfusion/ej2-grids';import { ActionEventArgs, TextAlign } from'@syncfusion/ej2-grids';import { DetailDataBoundEventArgs, ClipMode, ColumnChooser} from '@syncfusion/ej2-grids';import { SearchEventArgs, AddEventArgs, EditEventArgs, DeleteEventArgs} from '@syncfusion/ej2-grids';import { SaveEventArgs, CellSaveArgs, BatchAddArgs, BatchCancelArgs, BeginEditArgs, CellEditArgs} from '@syncfusion/ej2-grids';import { FilterSettings } from '../models/filter-settings';import { TextWrapSettings } from '../models/textwrap-settings';import { TextWrapSettingsModel } from '../models/textwrap-settings-model';import {Filter} from '../actions/filter';import { Logger as TreeLogger } from '../actions/logger';import { BeforeCopyEventArgs, BeforePasteEventArgs } from '@syncfusion/ej2-grids';import { TreeClipboard } from '../actions/clipboard';import {Aggregate} from '../actions/summary';import { Reorder } from '../actions/reorder';import { Resize } from '../actions/resize';import { Selection as TreeGridSelection } from '../actions/selection';import { ColumnMenu } from '../actions/column-menu';import { DetailRow } from '../actions/detail-row';import { Freeze } from '../actions/freeze-column';import { Print } from '../actions/print';import * as events from '../base/constant';import { FilterSettingsModel } from '../models/filter-settings-model';import { SearchSettings} from '../models/search-settings';import { SearchSettingsModel } from '../models/search-settings-model';import {RowInfo, RowDataBoundEventArgs, PageEventArgs, FilterEventArgs, FailureEventArgs, SortEventArgs } from '@syncfusion/ej2-grids';import { RowSelectingEventArgs, RowSelectEventArgs, RowDeselectEventArgs, IIndex, ISelectedCell } from '@syncfusion/ej2-grids';import {ColumnModel as GridColumnModel, Column as GridColumn, CellSelectEventArgs, CellDeselectEventArgs } from '@syncfusion/ej2-grids';import { SelectionSettings } from '../models/selection-settings';import { SelectionSettingsModel } from '../models/selection-settings-model';import {getActualProperties, SortDirection, getObject, ColumnDragEventArgs } from '@syncfusion/ej2-grids';import { PrintMode, Data, IGrid, ContextMenuItemModel } from '@syncfusion/ej2-grids';import { ColumnMenuItem, ColumnMenuItemModel, CheckBoxChangeEventArgs } from '@syncfusion/ej2-grids';import { ExcelExportCompleteArgs, ExcelHeaderQueryCellInfoEventArgs, ExcelQueryCellInfoEventArgs } from '@syncfusion/ej2-grids';import { PdfExportCompleteArgs, PdfHeaderQueryCellInfoEventArgs, PdfQueryCellInfoEventArgs } from '@syncfusion/ej2-grids';import { ExcelExportProperties, PdfExportProperties, CellSelectingEventArgs, PrintEventArgs } from '@syncfusion/ej2-grids';import { ColumnMenuOpenEventArgs } from '@syncfusion/ej2-grids';import {BeforeDataBoundArgs} from '@syncfusion/ej2-grids';import { DataManager, ReturnOption, RemoteSaveAdaptor, Query, JsonAdaptor, Deferred } from '@syncfusion/ej2-data';import { createSpinner, hideSpinner, showSpinner, Dialog } from '@syncfusion/ej2-popups';import { isRemoteData, isOffline, extendArray, isCountRequired, findChildrenRecords } from '../utils';import { Grid, QueryCellInfoEventArgs, Logger } from '@syncfusion/ej2-grids';import { Render } from '../renderer/render';import { VirtualTreeContentRenderer } from '../renderer/virtual-tree-content-render';import { DataManipulation } from './data';import { RowDD } from '../actions/rowdragdrop';import { Sort } from '../actions/sort';import { ITreeData, RowExpandedEventArgs, RowCollapsedEventArgs, RowCollapsingEventArgs, TreeGridExcelExportProperties } from './interface';import { CellSaveEventArgs, DataStateChangeEventArgs, RowExpandingEventArgs, TreeGridPdfExportProperties } from './interface';import { iterateArrayOrObject, GridLine } from '@syncfusion/ej2-grids';import { DataSourceChangedEventArgs, RecordDoubleClickEventArgs, ResizeArgs } from '@syncfusion/ej2-grids';import { ToolbarItems, ToolbarItem, ContextMenuItem, ContextMenuItems, RowPosition, CopyHierarchyType } from '../enum';import { ItemModel, ClickEventArgs, BeforeOpenCloseMenuEventArgs, MenuEventArgs } from '@syncfusion/ej2-navigations';import { PageSettings } from '../models/page-settings';import { PageSettingsModel } from '../models/page-settings-model';import { AggregateRow } from '../models/summary';import { AggregateRowModel } from '../models/summary-model';import { ExcelExport } from '../actions/excel-export';import { PdfExport } from '../actions/pdf-export';import { Toolbar } from '../actions/toolbar';import { Page } from '../actions/page';import { ContextMenu } from '../actions/context-menu';import { EditSettings } from '../models/edit-settings';import { EditSettingsModel } from '../models/edit-settings-model';import { Edit} from '../actions/edit';import { SortSettings } from '../models/sort-settings';import { SortSettingsModel } from '../models/sort-settings-model';import { isHidden, getExpandStatus } from '../utils';import { editAction } from '../actions/crud-actions';import { InfiniteScrollSettings } from '../models/infinite-scroll-settings';import { InfiniteScrollSettingsModel } from '../models/infinite-scroll-settings-model';import { TreeActionEventArgs } from '..';
|
|
2
2
|
import {ComponentModel} from '@syncfusion/ej2-base';
|
|
3
3
|
|
|
4
4
|
/**
|
|
@@ -17,7 +17,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
17
17
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
18
18
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
19
19
|
};
|
|
20
|
-
import { Component, addClass, createElement, EventHandler, isNullOrUndefined, extend } from '@syncfusion/ej2-base';
|
|
20
|
+
import { Component, addClass, createElement, EventHandler, isNullOrUndefined, extend, merge } from '@syncfusion/ej2-base';
|
|
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';
|
|
@@ -1126,6 +1126,19 @@ var TreeGrid = /** @class */ (function (_super) {
|
|
|
1126
1126
|
if (args.requestType === 'save' && _this.aggregates.map(function (ag) { return ag.showChildSummary === true; }).length) {
|
|
1127
1127
|
_this.grid.refresh();
|
|
1128
1128
|
}
|
|
1129
|
+
if (args.action === 'filter') {
|
|
1130
|
+
if (_this.filterModule['currentFilterObject'] !== '' && _this.enableVirtualization && !_this.initialRender) {
|
|
1131
|
+
_this.expandAll();
|
|
1132
|
+
}
|
|
1133
|
+
}
|
|
1134
|
+
if (args.requestType === 'searching') {
|
|
1135
|
+
if (_this.searchSettings.key !== '' && _this.enableVirtualization && !_this.initialRender) {
|
|
1136
|
+
_this.expandAll();
|
|
1137
|
+
}
|
|
1138
|
+
}
|
|
1139
|
+
if (args.action === 'clearFilter' && _this.enableCollapseAll) {
|
|
1140
|
+
_this.collapseAll();
|
|
1141
|
+
}
|
|
1129
1142
|
if (_this.action === 'indenting' || _this.action === 'outdenting') {
|
|
1130
1143
|
_this.action = _this.action === 'indenting' ? 'indented' : 'outdented';
|
|
1131
1144
|
var selectedItem_1 = [_this.selectedRecords];
|
|
@@ -1409,7 +1422,7 @@ var TreeGrid = /** @class */ (function (_super) {
|
|
|
1409
1422
|
treeGridColumn[prop] = column[i][prop];
|
|
1410
1423
|
}
|
|
1411
1424
|
else if (prop === 'columns' && !isNullOrUndefined(column[i][prop])) {
|
|
1412
|
-
gridColumn[prop] = this.getGridColumns(column[i][prop], false,
|
|
1425
|
+
gridColumn[prop] = this.getGridColumns(column[i][prop], false, this.columnModel.length - 1);
|
|
1413
1426
|
treeGridColumn[prop] = column[i][prop];
|
|
1414
1427
|
}
|
|
1415
1428
|
else if (this.initialRender && !isNullOrUndefined(treeColumn) && this.enablePersistence && prop === 'edit') {
|
|
@@ -2201,15 +2214,15 @@ var TreeGrid = /** @class */ (function (_super) {
|
|
|
2201
2214
|
}
|
|
2202
2215
|
}
|
|
2203
2216
|
}
|
|
2204
|
-
var
|
|
2205
|
-
this[
|
|
2217
|
+
var deepMerge = 'deepMerge';
|
|
2218
|
+
this[deepMerge] = ['columns']; // Workaround for blazor updateModel
|
|
2206
2219
|
if (this.grid.columns.length !== this.columnModel.length) {
|
|
2207
2220
|
this.stackedHeader = true;
|
|
2208
2221
|
}
|
|
2209
2222
|
if (!this.stackedHeader) {
|
|
2210
|
-
this.
|
|
2223
|
+
merge(this.columns, this.columnModel);
|
|
2211
2224
|
}
|
|
2212
|
-
this[
|
|
2225
|
+
this[deepMerge] = undefined; // Workaround for blazor updateModel
|
|
2213
2226
|
return this.columnModel;
|
|
2214
2227
|
};
|
|
2215
2228
|
/**
|
|
@@ -327,6 +327,8 @@ var VirtualTreeContentRenderer = /** @class */ (function (_super) {
|
|
|
327
327
|
var upScroll = (scrollArgs.offset.top - this.translateY) < 0;
|
|
328
328
|
var downScroll = Math.ceil(scrollArgs.offset.top - this.translateY) >= scrollHeight;
|
|
329
329
|
var selectedRowIndex = 'selectedRowIndex';
|
|
330
|
+
var currentViewData = this.parent.currentViewData;
|
|
331
|
+
var indexValue = 'index';
|
|
330
332
|
if (upScroll && (scrollArgs.direction !== 'right' && scrollArgs.direction !== 'left')) {
|
|
331
333
|
var vHeight = +(this.parent.height.toString().indexOf('%') < 0 ? this.parent.height :
|
|
332
334
|
this.parent.element.getBoundingClientRect().height);
|
|
@@ -345,6 +347,10 @@ var VirtualTreeContentRenderer = /** @class */ (function (_super) {
|
|
|
345
347
|
this.endIndex = lastInx;
|
|
346
348
|
this.startIndex = (this.startIndex - remains) < 0 ? 0 : (this.startIndex - remains);
|
|
347
349
|
}
|
|
350
|
+
if (currentViewData.length && ((currentViewData[0][indexValue] - this.startIndex) < (this.parent.pageSettings.pageSize / 2))) {
|
|
351
|
+
this.startIndex = currentViewData[0][indexValue] - (this.parent.pageSettings.pageSize / 2);
|
|
352
|
+
this.endIndex = this.startIndex + this.parent.pageSettings.pageSize;
|
|
353
|
+
}
|
|
348
354
|
//var firsttdinx = parseInt(this.parent.getContent().querySelector('.e-content td').getAttribute('index'), 0);
|
|
349
355
|
var rowPt = Math.ceil(scrollArgs.offset.top / this.parent.getRowHeight());
|
|
350
356
|
rowPt = rowPt % this.parent.pageSettings.pageSize;
|
|
@@ -383,6 +389,10 @@ var VirtualTreeContentRenderer = /** @class */ (function (_super) {
|
|
|
383
389
|
}
|
|
384
390
|
this.startIndex = !isLastBlock ? lastIndex - this.parent.pageSettings.pageSize : nextSetResIndex;
|
|
385
391
|
this.endIndex = lastIndex;
|
|
392
|
+
if (currentViewData.length && this.startIndex > currentViewData[0][indexValue] &&
|
|
393
|
+
((this.startIndex - currentViewData[0][indexValue]) < (this.parent.pageSettings.pageSize / 2))) {
|
|
394
|
+
this.startIndex = currentViewData[0][indexValue] + (this.parent.pageSettings.pageSize / 2);
|
|
395
|
+
}
|
|
386
396
|
if (scrollArgs.offset.top > (this.parent.getRowHeight() * this.totalRecords)) {
|
|
387
397
|
this.translateY = this.getTranslateY(scrollArgs.offset.top, content.getBoundingClientRect().height);
|
|
388
398
|
}
|