@syncfusion/ej2-treegrid 19.4.56 → 20.1.51

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 (80) hide show
  1. package/CHANGELOG.md +11 -57
  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 +446 -156
  5. package/dist/es6/ej2-treegrid.es2015.js.map +1 -1
  6. package/dist/es6/ej2-treegrid.es5.js +451 -164
  7. package/dist/es6/ej2-treegrid.es5.js.map +1 -1
  8. package/dist/global/ej2-treegrid.min.js +2 -2
  9. package/dist/global/ej2-treegrid.min.js.map +1 -1
  10. package/dist/global/index.d.ts +1 -1
  11. package/package.json +9 -9
  12. package/src/treegrid/actions/batch-edit.js +21 -4
  13. package/src/treegrid/actions/crud-actions.js +9 -2
  14. package/src/treegrid/actions/edit.js +16 -1
  15. package/src/treegrid/actions/filter.js +3 -0
  16. package/src/treegrid/actions/rowdragdrop.d.ts +15 -0
  17. package/src/treegrid/actions/rowdragdrop.js +181 -30
  18. package/src/treegrid/actions/toolbar.d.ts +0 -1
  19. package/src/treegrid/actions/toolbar.js +50 -79
  20. package/src/treegrid/actions/virtual-scroll.js +1 -1
  21. package/src/treegrid/base/treegrid-model.d.ts +1 -1
  22. package/src/treegrid/base/treegrid.d.ts +33 -6
  23. package/src/treegrid/base/treegrid.js +136 -39
  24. package/src/treegrid/models/column.d.ts +6 -6
  25. package/src/treegrid/models/column.js +7 -7
  26. package/src/treegrid/models/rowdrop-settings.d.ts +9 -1
  27. package/src/treegrid/renderer/render.d.ts +6 -0
  28. package/src/treegrid/renderer/render.js +27 -1
  29. package/src/treegrid/renderer/virtual-tree-content-render.js +1 -1
  30. package/styles/bootstrap-dark.css +27 -12
  31. package/styles/bootstrap.css +27 -12
  32. package/styles/bootstrap4.css +21 -12
  33. package/styles/bootstrap5-dark.css +43 -27
  34. package/styles/bootstrap5.css +43 -27
  35. package/styles/fabric-dark.css +27 -12
  36. package/styles/fabric.css +27 -12
  37. package/styles/fluent-dark.css +556 -0
  38. package/styles/fluent-dark.scss +1 -0
  39. package/styles/fluent.css +556 -0
  40. package/styles/fluent.scss +1 -0
  41. package/styles/highcontrast-light.css +27 -12
  42. package/styles/highcontrast.css +27 -12
  43. package/styles/material-dark.css +19 -10
  44. package/styles/material.css +19 -10
  45. package/styles/tailwind-dark.css +41 -88
  46. package/styles/tailwind.css +26 -73
  47. package/styles/treegrid/_bootstrap-dark-definition.scss +0 -2
  48. package/styles/treegrid/_bootstrap-definition.scss +0 -2
  49. package/styles/treegrid/_bootstrap4-definition.scss +0 -2
  50. package/styles/treegrid/_bootstrap5-definition.scss +3 -5
  51. package/styles/treegrid/_fabric-dark-definition.scss +0 -2
  52. package/styles/treegrid/_fabric-definition.scss +0 -2
  53. package/styles/treegrid/_fluent-dark-definition.scss +1 -0
  54. package/styles/treegrid/_fluent-definition.scss +3 -4
  55. package/styles/treegrid/_highcontrast-definition.scss +0 -2
  56. package/styles/treegrid/_highcontrast-light-definition.scss +0 -2
  57. package/styles/treegrid/_layout.scss +66 -13
  58. package/styles/treegrid/_material-dark-definition.scss +0 -2
  59. package/styles/treegrid/_material-definition.scss +0 -2
  60. package/styles/treegrid/_tailwind-definition.scss +3 -5
  61. package/styles/treegrid/bootstrap-dark.css +27 -12
  62. package/styles/treegrid/bootstrap.css +27 -12
  63. package/styles/treegrid/bootstrap4.css +21 -12
  64. package/styles/treegrid/bootstrap5-dark.css +43 -27
  65. package/styles/treegrid/bootstrap5.css +43 -27
  66. package/styles/treegrid/fabric-dark.css +27 -12
  67. package/styles/treegrid/fabric.css +27 -12
  68. package/styles/treegrid/fluent-dark.css +556 -0
  69. package/styles/treegrid/fluent-dark.scss +18 -0
  70. package/styles/treegrid/fluent.css +556 -0
  71. package/styles/treegrid/fluent.scss +18 -0
  72. package/styles/treegrid/highcontrast-light.css +27 -12
  73. package/styles/treegrid/highcontrast.css +27 -12
  74. package/styles/treegrid/icons/_fluent-dark.scss +1 -0
  75. package/styles/treegrid/icons/_tailwind-dark.scss +5 -5
  76. package/styles/treegrid/icons/_tailwind.scss +5 -5
  77. package/styles/treegrid/material-dark.css +19 -10
  78. package/styles/treegrid/material.css +19 -10
  79. package/styles/treegrid/tailwind-dark.css +41 -88
  80. package/styles/treegrid/tailwind.css +26 -73
@@ -44,46 +44,59 @@ var Toolbar = /** @class */ (function () {
44
44
  };
45
45
  Toolbar.prototype.refreshToolbar = function (args) {
46
46
  var tObj = this.parent;
47
- if (args.row.rowIndex === 0 || tObj.getSelectedRecords().length > 1) {
48
- this.enableItems([tObj.element.id + '_gridcontrol_indent', tObj.element.id + '_gridcontrol_outdent'], false);
47
+ var indentElement;
48
+ var outdentElement;
49
+ var indentID = tObj.element.id + '_gridcontrol_indent';
50
+ var outdentID = tObj.element.id + '_gridcontrol_outdent';
51
+ var toolbarElement = this.parent.grid.toolbarModule.getToolbar();
52
+ var indentEle = toolbarElement.querySelector('#' + indentID);
53
+ var outdentEle = toolbarElement.querySelector('#' + outdentID);
54
+ var row = args.row;
55
+ var selectedrow = tObj.getSelectedRows()[0];
56
+ if (!isNullOrUndefined(row[0])) {
57
+ row = row[0];
49
58
  }
50
- else if (args['name'] !== "rowDeselected") {
51
- if (!isNullOrUndefined(tObj.getCurrentViewRecords()[args.row.rowIndex])) {
52
- if (!isNullOrUndefined(tObj.getCurrentViewRecords()[args.row.rowIndex]) &&
53
- (tObj.getCurrentViewRecords()[args.row.rowIndex].level >
54
- tObj.getCurrentViewRecords()[args.row.rowIndex - 1].level)) {
55
- this.enableItems([tObj.element.id + '_gridcontrol_indent'], false);
56
- }
57
- else {
58
- this.enableItems([tObj.element.id + '_gridcontrol_indent'], true);
59
- }
60
- if (tObj.getCurrentViewRecords()[args.row.rowIndex].level ===
61
- tObj.getCurrentViewRecords()[args.row.rowIndex - 1].level) {
62
- this.enableItems([tObj.element.id + '_gridcontrol_indent'], true);
59
+ row = (!isNullOrUndefined(selectedrow) && selectedrow.rowIndex !== row.rowIndex) ? selectedrow : row;
60
+ if (indentEle !== null && outdentEle !== null) {
61
+ indentElement = toolbarElement.querySelector('#' + indentID).parentElement;
62
+ outdentElement = toolbarElement.querySelector('#' + outdentID).parentElement;
63
+ if (row.rowIndex === 0 || tObj.getSelectedRowIndexes().length > 1) {
64
+ indentElement.classList.add('e-hidden');
65
+ outdentElement.classList.add('e-hidden');
66
+ }
67
+ else if (args['name'] !== 'rowDeselected' || (!isNullOrUndefined(selectedrow) && tObj.grid.isCheckBoxSelection)) {
68
+ var selectedItem = tObj.getCurrentViewRecords()[row.rowIndex];
69
+ if (!isNullOrUndefined(selectedItem)) {
70
+ if ((selectedItem.level > tObj.getCurrentViewRecords()[row.rowIndex - 1].level)) {
71
+ indentElement.classList.add('e-hidden');
72
+ }
73
+ else {
74
+ indentElement.classList.remove('e-hidden');
75
+ }
76
+ if (selectedItem.level === tObj.getCurrentViewRecords()[row.rowIndex - 1].level) {
77
+ indentElement.classList.remove('e-hidden');
78
+ }
79
+ if (selectedItem.level === 0) {
80
+ outdentElement.classList.add('e-hidden');
81
+ }
82
+ if (selectedItem.level !== 0) {
83
+ outdentElement.classList.remove('e-hidden');
84
+ }
63
85
  }
64
- if (tObj.getCurrentViewRecords()[args.row.rowIndex].level === 0) {
65
- this.enableItems([tObj.element.id + '_gridcontrol_outdent'], false);
86
+ }
87
+ if (args['name'] === 'rowDeselected' && isNullOrUndefined(selectedrow) && !tObj.grid.isCheckBoxSelection) {
88
+ if (this.parent.toolbar['includes']('Indent')) {
89
+ indentElement.classList.add('e-hidden');
66
90
  }
67
- if (tObj.getCurrentViewRecords()[args.row.rowIndex].level !== 0) {
68
- this.enableItems([tObj.element.id + '_gridcontrol_outdent'], true);
91
+ if (this.parent.toolbar['includes']('Outdent')) {
92
+ outdentElement.classList.add('e-hidden');
69
93
  }
70
94
  }
71
95
  }
72
- if (args['name'] === "rowDeselected") {
73
- if (this.parent.toolbar['includes']('Indent')) {
74
- this.enableItems([tObj.element.id + '_gridcontrol_indent'], false);
75
- }
76
- if (this.parent.toolbar['includes']('Outdent')) {
77
- this.enableItems([tObj.element.id + '_gridcontrol_outdent'], false);
78
- }
79
- }
80
- if (args.row.rowIndex === 0 && !isNullOrUndefined(args.data.parentItem)) {
81
- this.enableItems([tObj.element.id + '_gridcontrol_outdent'], true);
82
- }
83
96
  };
84
97
  Toolbar.prototype.toolbarClickHandler = function (args) {
85
98
  var tObj = this.parent;
86
- var action = 'action';
99
+ var indentOutdentAction = 'indentOutdentAction';
87
100
  if (this.parent.editSettings.mode === 'Cell' && this.parent.grid.editSettings.mode === 'Batch' &&
88
101
  args.item.id === this.parent.grid.element.id + '_update') {
89
102
  args.cancel = true;
@@ -95,57 +108,15 @@ var Toolbar = /** @class */ (function () {
95
108
  if (args.item.id === this.parent.grid.element.id + '_collapseall') {
96
109
  this.parent.collapseAll();
97
110
  }
98
- if (args.item.id === tObj.grid.element.id + '_indent' && tObj.getSelectedRecords().length) {
99
- var record = tObj.getCurrentViewRecords()[tObj.getSelectedRowIndexes()[0] - 1];
100
- var dropIndex = void 0;
101
- if (record.level > tObj.getSelectedRecords()[0].level) {
102
- for (var i = 0; i < tObj.getCurrentViewRecords().length; i++) {
103
- if (tObj.getCurrentViewRecords()[i].taskData === record.parentItem.taskData) {
104
- dropIndex = i;
105
- }
106
- }
107
- }
108
- else {
109
- dropIndex = tObj.getSelectedRowIndexes()[0] - 1;
110
- }
111
- this.parent[action] = 'indenting';
112
- this.eventTrigger('indenting', dropIndex);
111
+ if (args.item.id === tObj.grid.element.id + '_indent' && tObj.getSelectedRecords().length
112
+ && !isNullOrUndefined(tObj.rowDragAndDropModule)) {
113
+ this.parent.rowDragAndDropModule[indentOutdentAction](null, 'indent');
113
114
  }
114
- if (args.item.id === tObj.grid.element.id + '_outdent' && tObj.getSelectedRecords().length) {
115
- var dropIndex = void 0;
116
- var parentItem = tObj.getSelectedRecords()[0].parentItem;
117
- for (var i = 0; i < tObj.getCurrentViewRecords().length; i++) {
118
- if (tObj.getCurrentViewRecords()[i].taskData === parentItem.taskData) {
119
- dropIndex = i;
120
- }
121
- }
122
- this.parent[action] = 'outdenting';
123
- this.eventTrigger('outdenting', dropIndex);
115
+ if (args.item.id === tObj.grid.element.id + '_outdent' && tObj.getSelectedRecords().length
116
+ && !isNullOrUndefined(tObj.rowDragAndDropModule)) {
117
+ this.parent.rowDragAndDropModule[indentOutdentAction](null, 'outdent');
124
118
  }
125
119
  };
126
- Toolbar.prototype.eventTrigger = function (action, dropIndex) {
127
- var _this = this;
128
- var selectedRecords = 'selectedRecords';
129
- var selectedRows = 'selectedRows';
130
- this.parent[selectedRows] = this.parent.getSelectedRows();
131
- this.parent[selectedRecords] = this.parent.getSelectedRecords();
132
- var actionArgs = {
133
- requestType: action,
134
- data: this.parent.getSelectedRecords(),
135
- row: this.parent.getSelectedRows(),
136
- cancel: false
137
- };
138
- this.parent.trigger(events.actionBegin, actionArgs, function (actionArgs) {
139
- if (!actionArgs.cancel) {
140
- if (actionArgs.requestType === 'indenting') {
141
- _this.parent.reorderRows([_this.parent.getSelectedRowIndexes()[0]], dropIndex, 'child');
142
- }
143
- else if (actionArgs.requestType === 'outdenting') {
144
- _this.parent.reorderRows([_this.parent.getSelectedRowIndexes()[0]], dropIndex, 'below');
145
- }
146
- }
147
- });
148
- };
149
120
  /**
150
121
  * Gets the toolbar of the TreeGrid.
151
122
  *
@@ -117,7 +117,7 @@ var VirtualScroll = /** @class */ (function () {
117
117
  }
118
118
  else {
119
119
  var requestType = pageingDetails.actionArgs.requestType;
120
- if (requestType === 'filtering' || requestType === 'collapseAll' ||
120
+ if (requestType === 'filtering' || requestType === 'collapseAll' || requestType === 'searching' ||
121
121
  (requestType === 'refresh' && this.parent.enableCollapseAll && endIndex > visualData.length)) {
122
122
  startIndex = 0;
123
123
  endIndex = this.parent.grid.pageSettings.pageSize - 1;
@@ -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, Row, CellRenderer, Cell } 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 } 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} 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
  /**
@@ -82,11 +82,16 @@ export declare class TreeGrid extends Component<HTMLElement> implements INotifyP
82
82
  private addedRecords;
83
83
  private targetElement;
84
84
  private isGantt;
85
+ private isIndentEnabled;
86
+ private indentOutdentAction;
85
87
  /**
86
88
  * The `sortModule` is used to manipulate sorting in TreeGrid.
87
89
  */
88
90
  sortModule: Sort;
89
91
  private action;
92
+ private dropIndex;
93
+ private dropPosition;
94
+ private modifiedRecords;
90
95
  private selectedRecords;
91
96
  private selectedRows;
92
97
  private loggerModule;
@@ -97,6 +102,8 @@ export declare class TreeGrid extends Component<HTMLElement> implements INotifyP
97
102
  private isExpandRefresh;
98
103
  private gridSettings;
99
104
  private isEditCollapse;
105
+ private treeColumnTextAlign;
106
+ private treeColumnField;
100
107
  /** @hidden */
101
108
  initialRender: boolean;
102
109
  /** @hidden */
@@ -1209,6 +1216,7 @@ export declare class TreeGrid extends Component<HTMLElement> implements INotifyP
1209
1216
  * @returns {void}
1210
1217
  */
1211
1218
  protected render(): void;
1219
+ private refreshToolbarItems;
1212
1220
  private afterGridRender;
1213
1221
  private convertTreeData;
1214
1222
  private bindGridProperties;
@@ -1263,6 +1271,7 @@ export declare class TreeGrid extends Component<HTMLElement> implements INotifyP
1263
1271
  * @returns {void}
1264
1272
  */
1265
1273
  onPropertyChanged(newProp: TreeGridModel): void;
1274
+ private updateTreeColumnTextAlign;
1266
1275
  /**
1267
1276
  * Destroys the component (detaches/removes all event handlers, attributes, classes, and empties the component element).
1268
1277
  *
@@ -1531,12 +1540,6 @@ export declare class TreeGrid extends Component<HTMLElement> implements INotifyP
1531
1540
  */
1532
1541
  getColumns(isRefresh?: boolean): Column[];
1533
1542
  private updateColumnModel;
1534
- /**
1535
- * @param {string} columnUid - Defines column uid
1536
- * @returns {void}
1537
- * @hidden
1538
- */
1539
- private refreshReactColumnTemplateByUid;
1540
1543
  /**
1541
1544
  * Gets the content div of the TreeGrid.
1542
1545
  *
@@ -1698,6 +1701,7 @@ export declare class TreeGrid extends Component<HTMLElement> implements INotifyP
1698
1701
  * @returns {void}
1699
1702
  */
1700
1703
  collapseRow(row: HTMLTableRowElement, record?: Object, key?: Object): void;
1704
+ private updateExpandStateMapping;
1701
1705
  /**
1702
1706
  * Expands the records at specific hierarchical level
1703
1707
  *
@@ -1750,6 +1754,15 @@ export declare class TreeGrid extends Component<HTMLElement> implements INotifyP
1750
1754
  private updateAltRow;
1751
1755
  private treeColumnRowTemplate;
1752
1756
  private collapseRemoteChild;
1757
+ /**
1758
+ * Updates the rows and cells
1759
+ *
1760
+ * @param {Object[]} records - Updates the given records
1761
+ * @param {HTMLTableRowElement[]} rows - Updates the given rows
1762
+ * @param {number} index - Updates the given cell index
1763
+ * @returns {void}
1764
+ */
1765
+ private updateRowAndCellElements;
1753
1766
  /**
1754
1767
  * @hidden
1755
1768
  * @returns {void}
@@ -2008,6 +2021,20 @@ export declare class TreeGrid extends Component<HTMLElement> implements INotifyP
2008
2021
  * @returns {void}
2009
2022
  */
2010
2023
  reorderRows(fromIndexes: number[], toIndex: number, position: string): void;
2024
+ /**
2025
+ * Indents the record to one level of hierarchy. Moves the selected row as the last child of its previous row.
2026
+ *
2027
+ * @param {Object} record – specifies the record to do indented
2028
+ * @returns {void}
2029
+ */
2030
+ indent(record?: Object): void;
2031
+ /**
2032
+ * Outdent the record to one level of hierarchy. Moves the selected row as sibling to its parent row.
2033
+ *
2034
+ * @param {Object} record – specifies the record to do outdented
2035
+ * @returns {void}
2036
+ */
2037
+ outdent(record?: Object): void;
2011
2038
  /**
2012
2039
  * `columnchooserModule` is used to dynamically show or hide the TreeGrid columns.
2013
2040
  *
@@ -21,7 +21,6 @@ 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 { CellRenderer } from '@syncfusion/ej2-grids';
25
24
  import { RowDropSettings, getUid } from '@syncfusion/ej2-grids';
26
25
  import { FilterSettings } from '../models/filter-settings';
27
26
  import { TextWrapSettings } from '../models/textwrap-settings';
@@ -68,6 +67,8 @@ var TreeGrid = /** @class */ (function (_super) {
68
67
  _this.changedRecords = 'changedRecords';
69
68
  _this.deletedRecords = 'deletedRecords';
70
69
  _this.addedRecords = 'addedRecords';
70
+ _this.indentOutdentAction = 'indentOutdentAction';
71
+ _this.modifiedRecords = [];
71
72
  _this.objectEqualityChecker = function (old, current) {
72
73
  if (old) {
73
74
  var keys = Object.keys(old);
@@ -476,7 +477,14 @@ var TreeGrid = /** @class */ (function (_super) {
476
477
  return modules;
477
478
  };
478
479
  TreeGrid.prototype.extendRequiredModules = function (modules) {
479
- if (this.allowRowDragAndDrop) {
480
+ var IsRowDDInjected = this.injectedModules.filter(function (e) {
481
+ return e.name === 'RowDD';
482
+ });
483
+ if (this.allowRowDragAndDrop || IsRowDDInjected.length) {
484
+ if ((!isNullOrUndefined(this.toolbar) && (this.toolbar['includes']('Indent') ||
485
+ this.toolbar['includes']('Outdent')))) {
486
+ this.isIndentEnabled = true;
487
+ }
480
488
  modules.push({
481
489
  member: 'rowDragAndDrop',
482
490
  args: [this]
@@ -602,7 +610,12 @@ var TreeGrid = /** @class */ (function (_super) {
602
610
  }
603
611
  return modules;
604
612
  };
613
+ var root = 'root';
614
+ this.grid[root] = this[root] ? this[root] : this;
605
615
  this.grid.appendTo(gridContainer);
616
+ if (this.isIndentEnabled) {
617
+ this.refreshToolbarItems();
618
+ }
606
619
  this.wireEvents();
607
620
  this.renderComplete();
608
621
  var destroyTemplate = 'destroyTemplate';
@@ -616,6 +629,15 @@ var TreeGrid = /** @class */ (function (_super) {
616
629
  }
617
630
  };
618
631
  };
632
+ TreeGrid.prototype.refreshToolbarItems = function () {
633
+ var toolbarElement = this.toolbarModule.getToolbar();
634
+ var indentID = this.element.id + '_gridcontrol_indent';
635
+ var outdentID = this.element.id + '_gridcontrol_outdent';
636
+ var indentElement = toolbarElement.querySelector('#' + indentID).parentElement;
637
+ var outdentElement = toolbarElement.querySelector('#' + outdentID).parentElement;
638
+ indentElement.classList.add('e-hidden');
639
+ outdentElement.classList.add('e-hidden');
640
+ };
619
641
  TreeGrid.prototype.afterGridRender = function () {
620
642
  if (!isNullOrUndefined(this.grid.clipboardModule)) {
621
643
  this.grid.clipboardModule.destroy();
@@ -1095,14 +1117,24 @@ var TreeGrid = /** @class */ (function (_super) {
1095
1117
  }
1096
1118
  if (_this.action === 'indenting' || _this.action === 'outdenting') {
1097
1119
  _this.action = _this.action === 'indenting' ? 'indented' : 'outdented';
1120
+ var selectedItem_1 = [_this.selectedRecords];
1098
1121
  var actionArgs = {
1122
+ data: selectedItem_1,
1123
+ dropIndex: _this.dropIndex,
1124
+ dropPosition: _this.dropPosition,
1125
+ modifiedRecords: _this.modifiedRecords,
1099
1126
  requestType: _this.action,
1100
- data: _this.selectedRecords,
1101
1127
  row: _this.selectedRows
1102
1128
  };
1103
1129
  _this.trigger(events.actionComplete, actionArgs);
1130
+ var currentPageItem = _this.getCurrentViewRecords().filter(function (e) {
1131
+ return e.uniqueID === selectedItem_1[0].uniqueID;
1132
+ });
1133
+ if (!currentPageItem.length) {
1134
+ _this.refreshToolbarItems();
1135
+ }
1104
1136
  _this.action = '';
1105
- _this.selectedRecords = _this.selectedRows = [];
1137
+ _this.selectedRecords = _this.selectedRows = _this.modifiedRecords = [];
1106
1138
  }
1107
1139
  else {
1108
1140
  _this.trigger(events.actionComplete, args);
@@ -1306,7 +1338,7 @@ var TreeGrid = /** @class */ (function (_super) {
1306
1338
  case ToolbarItem.RowIndent:
1307
1339
  tooltipText = this.l10n.getConstant('RowIndent');
1308
1340
  items.push({
1309
- text: tooltipText, tooltipText: tooltipText, disabled: true,
1341
+ text: tooltipText, tooltipText: tooltipText,
1310
1342
  prefixIcon: 'e-indent', id: this.element.id + '_gridcontrol_indent'
1311
1343
  });
1312
1344
  break;
@@ -1314,7 +1346,7 @@ var TreeGrid = /** @class */ (function (_super) {
1314
1346
  case ToolbarItem.RowOutdent:
1315
1347
  tooltipText = this.l10n.getConstant('RowOutdent');
1316
1348
  items.push({
1317
- text: tooltipText, tooltipText: tooltipText, disabled: true,
1349
+ text: tooltipText, tooltipText: tooltipText,
1318
1350
  prefixIcon: 'e-outdent', id: this.element.id + '_gridcontrol_outdent'
1319
1351
  });
1320
1352
  break;
@@ -1367,6 +1399,15 @@ var TreeGrid = /** @class */ (function (_super) {
1367
1399
  this.columnModel.push(new Column(treeGridColumn));
1368
1400
  }
1369
1401
  gridColumnCollection.push(gridColumn);
1402
+ if (!isNullOrUndefined(this.columnModel[this.treeColumnIndex]) && this.enableRtl) {
1403
+ if (gridColumn.field === this.columnModel[this.treeColumnIndex].field) {
1404
+ if (isNullOrUndefined(this.treeColumnTextAlign)) {
1405
+ this.treeColumnTextAlign = this.columnModel[this.treeColumnIndex].textAlign;
1406
+ this.treeColumnField = this.columnModel[this.treeColumnIndex].field;
1407
+ }
1408
+ gridColumn.textAlign = 'Right';
1409
+ }
1410
+ }
1370
1411
  }
1371
1412
  return gridColumnCollection;
1372
1413
  };
@@ -1539,6 +1580,9 @@ var TreeGrid = /** @class */ (function (_super) {
1539
1580
  this.grid.allowPdfExport = this.allowPdfExport;
1540
1581
  break;
1541
1582
  case 'enableRtl':
1583
+ if (!isNullOrUndefined(this.treeColumnField)) {
1584
+ this.updateTreeColumnTextAlign();
1585
+ }
1542
1586
  this.grid.enableRtl = this.enableRtl;
1543
1587
  break;
1544
1588
  case 'allowReordering':
@@ -1579,6 +1623,11 @@ var TreeGrid = /** @class */ (function (_super) {
1579
1623
  }
1580
1624
  }
1581
1625
  };
1626
+ TreeGrid.prototype.updateTreeColumnTextAlign = function () {
1627
+ var gridColumn = this.grid.getColumnByField(this.treeColumnField);
1628
+ gridColumn.textAlign = this.enableRtl ? 'Right' : this.treeColumnTextAlign;
1629
+ this.grid.refreshColumns();
1630
+ };
1582
1631
  /**
1583
1632
  * Destroys the component (detaches/removes all event handlers, attributes, classes, and empties the component element).
1584
1633
  *
@@ -1916,10 +1965,13 @@ var TreeGrid = /** @class */ (function (_super) {
1916
1965
  rowData.parentUniqueID = record.parentUniqueID;
1917
1966
  rowData.expanded = record.expanded;
1918
1967
  this.grid.setRowData(key, rowData);
1919
- var table = this.getContentTable();
1920
- var sHeight = table.scrollHeight;
1921
- var clientHeight = this.getContent().clientHeight;
1922
- this.lastRowBorder(this.getRows()[record.index], sHeight <= clientHeight);
1968
+ var visibleRecords = this.getVisibleRecords();
1969
+ if (visibleRecords.length > 0 && key === (visibleRecords[visibleRecords.length - 1])[primaryKey]) {
1970
+ var table = this.getContentTable();
1971
+ var sHeight = table.scrollHeight;
1972
+ var clientHeight = this.getContent().clientHeight;
1973
+ this.lastRowBorder(this.getRows()[currentRecords.indexOf(record)], sHeight <= clientHeight);
1974
+ }
1923
1975
  };
1924
1976
  /**
1925
1977
  * Navigates to the specified target page.
@@ -2129,32 +2181,6 @@ var TreeGrid = /** @class */ (function (_super) {
2129
2181
  this[merge] = undefined; // Workaround for blazor updateModel
2130
2182
  return this.columnModel;
2131
2183
  };
2132
- /**
2133
- * @param {string} columnUid - Defines column uid
2134
- * @returns {void}
2135
- * @hidden
2136
- */
2137
- TreeGrid.prototype.refreshReactColumnTemplateByUid = function (columnUid) {
2138
- var _this = this;
2139
- if (this.isReact) {
2140
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
2141
- this.clearTemplate(['columnTemplate'], undefined, function () {
2142
- var cells = 'cells';
2143
- var rowIdx = 'index';
2144
- var rowsObj = _this.grid.getRowsObject();
2145
- var indent = _this.grid.getIndentCount();
2146
- var cellIndex = _this.grid.getNormalizedColumnIndex(columnUid);
2147
- for (var j = 0; j < rowsObj.length; j++) {
2148
- if (rowsObj[j].isDataRow && !isNullOrUndefined(rowsObj[j].index)) {
2149
- var cell = rowsObj[j][cells][cellIndex];
2150
- var cellRenderer = new CellRenderer(_this.grid, _this.grid.serviceLocator);
2151
- var td = _this.getCellFromIndex(rowsObj[j].index, cellIndex - indent);
2152
- cellRenderer.refreshTD(td, cell, rowsObj[j].data, { index: rowsObj[j][rowIdx] });
2153
- }
2154
- }
2155
- });
2156
- }
2157
- };
2158
2184
  /**
2159
2185
  * Gets the content div of the TreeGrid.
2160
2186
  *
@@ -2300,8 +2326,14 @@ var TreeGrid = /** @class */ (function (_super) {
2300
2326
  this.uniqueIDCollection = {};
2301
2327
  this.convertTreeData(this.dataSource);
2302
2328
  if (!isCountRequired(this)) {
2303
- this.grid.dataSource = !(this.dataSource instanceof DataManager) ? this.flatData :
2304
- new DataManager(this.dataSource.dataSource, this.dataSource.defaultQuery, this.dataSource.adaptor);
2329
+ if (!(this.dataSource instanceof DataManager)) {
2330
+ this.grid.dataSource = this.flatData;
2331
+ }
2332
+ else {
2333
+ this.grid.setProperties({
2334
+ dataSource: new DataManager(this.dataSource.dataSource, this.dataSource.defaultQuery, this.dataSource.adaptor)
2335
+ }, true);
2336
+ }
2305
2337
  }
2306
2338
  this.grid.refresh();
2307
2339
  };
@@ -2445,6 +2477,9 @@ var TreeGrid = /** @class */ (function (_super) {
2445
2477
  if (!(isRemoteData(_this) && !isOffline(_this)) && (!isCountRequired(_this) || !isNullOrUndefined(record[children]))) {
2446
2478
  var collapseArgs = { data: record, row: row };
2447
2479
  _this.setHeightForFrozenContent();
2480
+ if (!isNullOrUndefined(_this.expandStateMapping)) {
2481
+ _this.updateExpandStateMapping(collapseArgs.data, true);
2482
+ }
2448
2483
  _this.trigger(events.expanded, collapseArgs);
2449
2484
  }
2450
2485
  }
@@ -2507,6 +2542,9 @@ var TreeGrid = /** @class */ (function (_super) {
2507
2542
  var collapseArgs = { data: record, row: row };
2508
2543
  if (!isRemoteData(_this)) {
2509
2544
  _this.setHeightForFrozenContent();
2545
+ if (!isNullOrUndefined(_this.expandStateMapping)) {
2546
+ _this.updateExpandStateMapping(collapseArgs.data, false);
2547
+ }
2510
2548
  _this.trigger(events.collapsed, collapseArgs);
2511
2549
  if (_this.enableInfiniteScrolling) {
2512
2550
  var scrollHeight = _this.grid.getContent().firstElementChild.scrollHeight;
@@ -2519,6 +2557,19 @@ var TreeGrid = /** @class */ (function (_super) {
2519
2557
  }
2520
2558
  });
2521
2559
  };
2560
+ TreeGrid.prototype.updateExpandStateMapping = function (record, state) {
2561
+ var totalRecords = record;
2562
+ if (totalRecords.length) {
2563
+ for (var i = 0; i < totalRecords.length; i++) {
2564
+ totalRecords[i][this.expandStateMapping] = state;
2565
+ editAction({ value: totalRecords[i], action: 'edit' }, this, this.isSelfReference, totalRecords[i].index, this.grid.selectedRowIndex, this.expandStateMapping);
2566
+ }
2567
+ }
2568
+ else {
2569
+ record[this.expandStateMapping] = state;
2570
+ editAction({ value: record, action: 'edit' }, this, this.isSelfReference, record.index, this.grid.selectedRowIndex, this.expandStateMapping);
2571
+ }
2572
+ };
2522
2573
  /**
2523
2574
  * Expands the records at specific hierarchical level
2524
2575
  *
@@ -2961,7 +3012,7 @@ var TreeGrid = /** @class */ (function (_super) {
2961
3012
  freezeRightRows[i].style.display = displayAction;
2962
3013
  }
2963
3014
  this.notify('childRowExpand', { row: rows[i] });
2964
- if (!isNullOrUndefined(childRecords[i].childRecords) && (action !== 'expand' ||
3015
+ if ((!isNullOrUndefined(childRecords[i].childRecords) && childRecords[i].childRecords.length > 0) && (action !== 'expand' ||
2965
3016
  isNullOrUndefined(childRecords[i].expanded) || childRecords[i].expanded)) {
2966
3017
  this.expandCollapse(action, rows[i], childRecords[i], true);
2967
3018
  if (this.frozenColumns <= this.treeColumnIndex && !isNullOrUndefined(movableRows)) {
@@ -3060,6 +3111,28 @@ var TreeGrid = /** @class */ (function (_super) {
3060
3111
  }
3061
3112
  }
3062
3113
  };
3114
+ /**
3115
+ * Updates the rows and cells
3116
+ *
3117
+ * @param {Object[]} records - Updates the given records
3118
+ * @param {HTMLTableRowElement[]} rows - Updates the given rows
3119
+ * @param {number} index - Updates the given cell index
3120
+ * @returns {void}
3121
+ */
3122
+ TreeGrid.prototype.updateRowAndCellElements = function (records, rows, index) {
3123
+ for (var i = 0; i < records.length; i++) {
3124
+ this.renderModule.cellRender({
3125
+ data: records[i], cell: rows[i].cells[index],
3126
+ column: this.grid.getColumns()[this.treeColumnIndex],
3127
+ requestType: 'rowDragAndDrop'
3128
+ });
3129
+ if (this['action'] === 'indenting' || this['action'] === 'outdenting') {
3130
+ this.renderModule.RowModifier({
3131
+ data: records[i], row: rows[i]
3132
+ });
3133
+ }
3134
+ }
3135
+ };
3063
3136
  /**
3064
3137
  * @hidden
3065
3138
  * @returns {void}
@@ -3413,6 +3486,30 @@ var TreeGrid = /** @class */ (function (_super) {
3413
3486
  TreeGrid.prototype.reorderRows = function (fromIndexes, toIndex, position) {
3414
3487
  this.rowDragAndDropModule.reorderRows(fromIndexes, toIndex, position);
3415
3488
  };
3489
+ /**
3490
+ * Indents the record to one level of hierarchy. Moves the selected row as the last child of its previous row.
3491
+ *
3492
+ * @param {Object} record – specifies the record to do indented
3493
+ * @returns {void}
3494
+ */
3495
+ TreeGrid.prototype.indent = function (record) {
3496
+ if (!isNullOrUndefined(this.rowDragAndDropModule)) {
3497
+ record = record;
3498
+ this.rowDragAndDropModule[this.indentOutdentAction](record, 'indent');
3499
+ }
3500
+ };
3501
+ /**
3502
+ * Outdent the record to one level of hierarchy. Moves the selected row as sibling to its parent row.
3503
+ *
3504
+ * @param {Object} record – specifies the record to do outdented
3505
+ * @returns {void}
3506
+ */
3507
+ TreeGrid.prototype.outdent = function (record) {
3508
+ if (!isNullOrUndefined(this.rowDragAndDropModule)) {
3509
+ record = record;
3510
+ this.rowDragAndDropModule[this.indentOutdentAction](record, 'outdent');
3511
+ }
3512
+ };
3416
3513
  var TreeGrid_1;
3417
3514
  __decorate([
3418
3515
  Property(0)
@@ -329,12 +329,12 @@ export declare class Column {
329
329
  private parent;
330
330
  constructor(options: ColumnModel);
331
331
  /**
332
- * Update the State changes reflected for TreeGrid columndirective in react platform.
333
- *
334
- * @param {Column} column - specifies the column
335
- * @returns {void}
336
- * @hidden
337
- */
332
+ * Update the State changes reflected for TreeGrid columndirective in react platform.
333
+ *
334
+ * @param {Column} column - specifies the column
335
+ * @returns {void}
336
+ * @hidden
337
+ */
338
338
  private setProperties;
339
339
  }
340
340
  /**