@syncfusion/ej2-angular-treegrid 31.2.15 → 32.1.19-ngcc

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 (129) hide show
  1. package/@syncfusion/ej2-angular-treegrid.es5.js +798 -0
  2. package/@syncfusion/ej2-angular-treegrid.es5.js.map +1 -0
  3. package/@syncfusion/ej2-angular-treegrid.js +748 -0
  4. package/@syncfusion/ej2-angular-treegrid.js.map +1 -0
  5. package/CHANGELOG.md +47 -31
  6. package/README.md +7 -15
  7. package/dist/ej2-angular-treegrid.umd.js +970 -0
  8. package/dist/ej2-angular-treegrid.umd.js.map +1 -0
  9. package/dist/ej2-angular-treegrid.umd.min.js +2 -0
  10. package/dist/ej2-angular-treegrid.umd.min.js.map +1 -0
  11. package/ej2-angular-treegrid.d.ts +5 -0
  12. package/ej2-angular-treegrid.metadata.json +1 -0
  13. package/license +10 -0
  14. package/package.json +49 -46
  15. package/postinstall/tagchange.js +18 -0
  16. package/schematics/collection.json +19 -10
  17. package/schematics/generators/treegrid-default/index.d.ts +3 -0
  18. package/schematics/generators/treegrid-default/index.js +8 -0
  19. package/schematics/generators/treegrid-default/index.ts +8 -0
  20. package/schematics/generators/treegrid-default/sample-details.d.ts +5 -0
  21. package/schematics/generators/treegrid-default/sample-details.js +7 -0
  22. package/schematics/generators/treegrid-default/sample-details.ts +5 -0
  23. package/schematics/generators/treegrid-default/samples/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.css +5 -0
  24. package/schematics/generators/treegrid-default/samples/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html +10 -0
  25. package/schematics/generators/treegrid-default/samples/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts +143 -0
  26. package/schematics/generators/treegrid-default/schema.d.ts +3 -0
  27. package/schematics/generators/treegrid-default/schema.js +2 -0
  28. package/schematics/generators/treegrid-default/schema.json +125 -0
  29. package/schematics/generators/treegrid-default/schema.ts +3 -0
  30. package/schematics/generators/treegrid-feature/index.d.ts +3 -0
  31. package/schematics/generators/treegrid-feature/index.js +8 -0
  32. package/schematics/generators/treegrid-feature/index.ts +8 -0
  33. package/schematics/generators/treegrid-feature/sample-details.d.ts +5 -0
  34. package/schematics/generators/treegrid-feature/sample-details.js +7 -0
  35. package/schematics/generators/treegrid-feature/sample-details.ts +5 -0
  36. package/schematics/generators/treegrid-feature/samples/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.css +5 -0
  37. package/schematics/generators/treegrid-feature/samples/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html +11 -0
  38. package/schematics/generators/treegrid-feature/samples/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts +144 -0
  39. package/schematics/generators/treegrid-feature/schema.d.ts +3 -0
  40. package/schematics/generators/treegrid-feature/schema.js +2 -0
  41. package/schematics/generators/treegrid-feature/schema.json +125 -0
  42. package/schematics/generators/treegrid-feature/schema.ts +3 -0
  43. package/schematics/ng-add/index.ts +10 -10
  44. package/schematics/ng-add/schema.json +34 -34
  45. package/schematics/ng-add/schema.ts +30 -30
  46. package/schematics/tsconfig.json +25 -25
  47. package/schematics/utils/lib-details.d.ts +2 -2
  48. package/schematics/utils/lib-details.js +2 -2
  49. package/schematics/utils/lib-details.ts +4 -4
  50. package/src/treegrid/aggregate-columns.directive.d.ts +28 -31
  51. package/src/treegrid/aggregates.directive.d.ts +2 -7
  52. package/src/treegrid/columns.directive.d.ts +77 -60
  53. package/src/treegrid/stacked-column.directive.d.ts +77 -60
  54. package/src/treegrid/treegrid-all.module.d.ts +0 -6
  55. package/src/treegrid/treegrid.component.d.ts +1 -23
  56. package/src/treegrid/treegrid.module.d.ts +0 -10
  57. package/esm2020/public_api.mjs +0 -2
  58. package/esm2020/src/index.mjs +0 -9
  59. package/esm2020/src/treegrid/aggregate-columns.directive.mjs +0 -72
  60. package/esm2020/src/treegrid/aggregates.directive.mjs +0 -69
  61. package/esm2020/src/treegrid/columns.directive.mjs +0 -100
  62. package/esm2020/src/treegrid/stacked-column.directive.mjs +0 -100
  63. package/esm2020/src/treegrid/treegrid-all.module.mjs +0 -89
  64. package/esm2020/src/treegrid/treegrid.component.mjs +0 -271
  65. package/esm2020/src/treegrid/treegrid.module.mjs +0 -61
  66. package/esm2020/syncfusion-ej2-angular-treegrid.mjs +0 -5
  67. package/fesm2015/syncfusion-ej2-angular-treegrid.mjs +0 -734
  68. package/fesm2015/syncfusion-ej2-angular-treegrid.mjs.map +0 -1
  69. package/fesm2020/syncfusion-ej2-angular-treegrid.mjs +0 -734
  70. package/fesm2020/syncfusion-ej2-angular-treegrid.mjs.map +0 -1
  71. package/styles/bds-lite.css +0 -1
  72. package/styles/bds-lite.scss +0 -1
  73. package/styles/bds.css +0 -1
  74. package/styles/bds.scss +0 -1
  75. package/styles/bootstrap-dark-lite.css +0 -1
  76. package/styles/bootstrap-dark-lite.scss +0 -1
  77. package/styles/bootstrap-lite.css +0 -1
  78. package/styles/bootstrap-lite.scss +0 -1
  79. package/styles/bootstrap4-lite.css +0 -1
  80. package/styles/bootstrap4-lite.scss +0 -1
  81. package/styles/bootstrap5-dark-lite.css +0 -1
  82. package/styles/bootstrap5-dark-lite.scss +0 -1
  83. package/styles/bootstrap5-lite.css +0 -1
  84. package/styles/bootstrap5-lite.scss +0 -1
  85. package/styles/bootstrap5.3-lite.css +0 -1
  86. package/styles/bootstrap5.3-lite.scss +0 -1
  87. package/styles/bootstrap5.3.css +0 -1
  88. package/styles/bootstrap5.3.scss +0 -1
  89. package/styles/fabric-dark-lite.css +0 -1
  90. package/styles/fabric-dark-lite.scss +0 -1
  91. package/styles/fabric-lite.css +0 -1
  92. package/styles/fabric-lite.scss +0 -1
  93. package/styles/fluent-dark-lite.css +0 -1
  94. package/styles/fluent-dark-lite.scss +0 -1
  95. package/styles/fluent-lite.css +0 -1
  96. package/styles/fluent-lite.scss +0 -1
  97. package/styles/fluent2-lite.css +0 -1
  98. package/styles/fluent2-lite.scss +0 -1
  99. package/styles/fluent2.css +0 -1
  100. package/styles/fluent2.scss +0 -1
  101. package/styles/highcontrast-light-lite.css +0 -1
  102. package/styles/highcontrast-light-lite.scss +0 -1
  103. package/styles/highcontrast-lite.css +0 -1
  104. package/styles/highcontrast-lite.scss +0 -1
  105. package/styles/material-dark-lite.css +0 -1
  106. package/styles/material-dark-lite.scss +0 -1
  107. package/styles/material-lite.css +0 -1
  108. package/styles/material-lite.scss +0 -1
  109. package/styles/material3-dark-lite.css +0 -1
  110. package/styles/material3-dark-lite.scss +0 -1
  111. package/styles/material3-lite.css +0 -1
  112. package/styles/material3-lite.scss +0 -1
  113. package/styles/tailwind-dark-lite.css +0 -1
  114. package/styles/tailwind-dark-lite.scss +0 -1
  115. package/styles/tailwind-lite.css +0 -1
  116. package/styles/tailwind-lite.scss +0 -1
  117. package/styles/tailwind3-lite.css +0 -1
  118. package/styles/tailwind3-lite.scss +0 -1
  119. package/styles/tailwind3.css +0 -1
  120. package/styles/tailwind3.scss +0 -1
  121. package/styles/treegrid/bds.css +0 -1
  122. package/styles/treegrid/bds.scss +0 -1
  123. package/styles/treegrid/bootstrap5.3.css +0 -1
  124. package/styles/treegrid/bootstrap5.3.scss +0 -1
  125. package/styles/treegrid/fluent2.css +0 -1
  126. package/styles/treegrid/fluent2.scss +0 -1
  127. package/styles/treegrid/tailwind3.css +0 -1
  128. package/styles/treegrid/tailwind3.scss +0 -1
  129. package/syncfusion-ej2-angular-treegrid.d.ts +0 -5
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ej2-angular-treegrid.js","sources":["~/@syncfusion/ej2-angular-treegrid/ej2-angular-treegrid.ts","~/@syncfusion/ej2-angular-treegrid/src/treegrid/treegrid-all.module.ts","~/@syncfusion/ej2-angular-treegrid/src/treegrid/treegrid.module.ts","~/@syncfusion/ej2-angular-treegrid/src/treegrid/treegrid.component.ts","~/@syncfusion/ej2-angular-treegrid/src/treegrid/aggregates.directive.ts","~/@syncfusion/ej2-angular-treegrid/src/treegrid/aggregate-columns.directive.ts","~/@syncfusion/ej2-angular-treegrid/src/treegrid/columns.directive.ts","~/@syncfusion/ej2-angular-treegrid/src/treegrid/stacked-column.directive.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport {StackedColumnDirective,StackedColumnsDirective,ColumnDirective,ColumnsDirective,AggregateColumnDirective,AggregateColumnsDirective,AggregateDirective,AggregatesDirective,TreeGridComponent,TreeGridModule,TreeGridAllModule,FilterService,PageService,SortService,ReorderService,ToolbarService,AggregateService,ResizeService,ColumnMenuService,ExcelExportService,PdfExportService,CommandColumnService,ContextMenuService,EditService,SelectionService,VirtualScrollService,DetailRowService,RowDDService,FreezeService,ColumnChooserService,LoggerService,InfiniteScrollService,TreeGrid,TreeGridModel,load,rowDataBound,dataBound,queryCellInfo,beforeDataBound,actionBegin,dataStateChange,actionComplete,rowSelecting,rowSelected,checkboxChange,rowDeselected,toolbarClick,beforeExcelExport,beforePdfExport,resizeStop,expanded,expanding,collapsed,collapsing,remoteExpand,localPagedExpandCollapse,pagingActions,printGridInit,contextMenuOpen,contextMenuClick,beforeCopy,beforePaste,savePreviousRowPosition,crudAction,beginEdit,beginAdd,recordDoubleClick,cellSave,cellSaved,cellEdit,batchDelete,batchCancel,batchAdd,beforeBatchDelete,beforeBatchAdd,beforeBatchSave,batchSave,keyPressed,updateData,doubleTap,virtualColumnIndex,virtualActionArgs,destroy,dataListener,indexModifier,beforeStartEdit,beforeBatchCancel,batchEditFormRendered,detailDataBound,rowDrag,rowDragStartHelper,rowDrop,rowDragStart,rowsAdd,rowsRemove,rowdraging,rowDropped,autoCol,rowDeselecting,headerContent,movableContent,movableHeader,frozenContent,frozenHeader,content,table,leftRight,frozenRight,frozenLeft,dataColIndex,ariaColIndex,dataRowIndex,ariaRowIndex,DataManipulation,ITreeData,TreeGridExcelExportProperties,TreeGridPdfExportProperties,AggregateTemplateContext,ITreeGridCellFormatter,RowExpandedEventArgs,RowExpandingEventArgs,RowCollapsedEventArgs,RowCollapsingEventArgs,CellSaveEventArgs,DataStateChangeEventArgs,RowDragEventArgs,Reorder,Resize,RowDD,Column,ColumnModel,TreeGridColumn,TreeGridColumnModel,StackedColumn,StackedColumnModel,EditSettings,EditSettingsModel,Predicate,FilterSettings,PredicateModel,FilterSettingsModel,PageSettings,PageSettingsModel,SearchSettings,SearchSettingsModel,SelectionSettings,SelectionSettingsModel,AggregateColumn,AggregateRow,AggregateColumnModel,AggregateRowModel,SortDescriptor,SortSettings,SortDescriptorModel,SortSettingsModel,RowDropSettings,TreeActionEventArgs,RowDropSettingsModel,InfiniteScrollSettings,InfiniteScrollSettingsModel,LoadingIndicator,LoadingIndicatorModel,Render,TreeVirtualRowModelGenerator,isRemoteData,isCountRequired,isCheckboxcolumn,isFilterChildHierarchy,findParentRecords,getExpandStatus,findChildrenRecords,isOffline,extendArray,getPlainData,getParentData,isHidden,FilterHierarchyMode,ToolbarItems,ToolbarItem,PageSizeMode,ContextMenuItem,ContextMenuItems,EditMode,RowPosition,FilterType,WrapMode,CopyHierarchyType,Filter,ExcelExport,PdfExport,Page,Toolbar,Aggregate,Sort,TreeClipboard,ColumnMenu,ContextMenu,Edit,CommandColumn,Selection,DetailRow,VirtualScroll,TreeVirtual,Freeze,ColumnChooser,TreeItemDetails,Logger,treeGridDetails,InfiniteScroll} from './public_api';\n\nexport {inputs as ɵa,outputs as ɵb} from './src/treegrid/treegrid.component';","import { NgModule, ValueProvider } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { StackedColumnDirective, StackedColumnsDirective } from './stacked-column.directive';\nimport { ColumnDirective, ColumnsDirective } from './columns.directive';\nimport { AggregateColumnDirective, AggregateColumnsDirective } from './aggregate-columns.directive';\nimport { AggregateDirective, AggregatesDirective } from './aggregates.directive';\nimport { TreeGridComponent } from './treegrid.component';\nimport { TreeGridModule } from './treegrid.module';\nimport {Filter, Page, Sort, Reorder, Toolbar, Aggregate, Resize, ColumnMenu, ExcelExport, PdfExport, CommandColumn, ContextMenu, Edit, Selection, VirtualScroll, DetailRow, RowDD, Freeze, ColumnChooser, Logger, InfiniteScroll} from '@syncfusion/ej2-treegrid';\n\n\nexport const /** @type {?} */ FilterService: ValueProvider = { provide: 'TreeGridFilter', useValue: Filter};\nexport const /** @type {?} */ PageService: ValueProvider = { provide: 'TreeGridPage', useValue: Page};\nexport const /** @type {?} */ SortService: ValueProvider = { provide: 'TreeGridSort', useValue: Sort};\nexport const /** @type {?} */ ReorderService: ValueProvider = { provide: 'TreeGridReorder', useValue: Reorder};\nexport const /** @type {?} */ ToolbarService: ValueProvider = { provide: 'TreeGridToolbar', useValue: Toolbar};\nexport const /** @type {?} */ AggregateService: ValueProvider = { provide: 'TreeGridAggregate', useValue: Aggregate};\nexport const /** @type {?} */ ResizeService: ValueProvider = { provide: 'TreeGridResize', useValue: Resize};\nexport const /** @type {?} */ ColumnMenuService: ValueProvider = { provide: 'TreeGridColumnMenu', useValue: ColumnMenu};\nexport const /** @type {?} */ ExcelExportService: ValueProvider = { provide: 'TreeGridExcelExport', useValue: ExcelExport};\nexport const /** @type {?} */ PdfExportService: ValueProvider = { provide: 'TreeGridPdfExport', useValue: PdfExport};\nexport const /** @type {?} */ CommandColumnService: ValueProvider = { provide: 'TreeGridCommandColumn', useValue: CommandColumn};\nexport const /** @type {?} */ ContextMenuService: ValueProvider = { provide: 'TreeGridContextMenu', useValue: ContextMenu};\nexport const /** @type {?} */ EditService: ValueProvider = { provide: 'TreeGridEdit', useValue: Edit};\nexport const /** @type {?} */ SelectionService: ValueProvider = { provide: 'TreeGridSelection', useValue: Selection};\nexport const /** @type {?} */ VirtualScrollService: ValueProvider = { provide: 'TreeGridVirtualScroll', useValue: VirtualScroll};\nexport const /** @type {?} */ DetailRowService: ValueProvider = { provide: 'TreeGridDetailRow', useValue: DetailRow};\nexport const /** @type {?} */ RowDDService: ValueProvider = { provide: 'TreeGridRowDD', useValue: RowDD};\nexport const /** @type {?} */ FreezeService: ValueProvider = { provide: 'TreeGridFreeze', useValue: Freeze};\nexport const /** @type {?} */ ColumnChooserService: ValueProvider = { provide: 'TreeGridColumnChooser', useValue: ColumnChooser};\nexport const /** @type {?} */ LoggerService: ValueProvider = { provide: 'TreeGridLogger', useValue: Logger};\nexport const /** @type {?} */ InfiniteScrollService: ValueProvider = { provide: 'TreeGridInfiniteScroll', useValue: InfiniteScroll};\n/**\n * NgModule definition for the TreeGrid component with providers.\n */\nexport class TreeGridAllModule { static decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule, TreeGridModule],\n exports: [\n TreeGridModule\n ],\n providers:[\n FilterService,\n PageService,\n SortService,\n ReorderService,\n ToolbarService,\n AggregateService,\n ResizeService,\n ColumnMenuService,\n ExcelExportService,\n PdfExportService,\n CommandColumnService,\n ContextMenuService,\n EditService,\n SelectionService,\n VirtualScrollService,\n DetailRowService,\n RowDDService,\n FreezeService,\n ColumnChooserService,\n LoggerService,\n InfiniteScrollService\n ]\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\nfunction TreeGridAllModule_tsickle_Closure_declarations() {\n/** @type {?} */\nTreeGridAllModule.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nTreeGridAllModule.ctorParameters;\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { StackedColumnDirective, StackedColumnsDirective } from './stacked-column.directive';\nimport { ColumnDirective, ColumnsDirective } from './columns.directive';\nimport { AggregateColumnDirective, AggregateColumnsDirective } from './aggregate-columns.directive';\nimport { AggregateDirective, AggregatesDirective } from './aggregates.directive';\nimport { TreeGridComponent } from './treegrid.component';\n/**\n * NgModule definition for the TreeGrid component.\n */\nexport class TreeGridModule { static decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule],\n declarations: [\n TreeGridComponent,\n StackedColumnDirective,\n StackedColumnsDirective,\n ColumnDirective,\n ColumnsDirective,\n AggregateColumnDirective,\n AggregateColumnsDirective,\n AggregateDirective,\n AggregatesDirective\n ],\n exports: [\n TreeGridComponent,\n StackedColumnDirective,\n StackedColumnsDirective,\n ColumnDirective,\n ColumnsDirective,\n AggregateColumnDirective,\n AggregateColumnsDirective,\n AggregateDirective,\n AggregatesDirective\n ]\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\nfunction TreeGridModule_tsickle_Closure_declarations() {\n/** @type {?} */\nTreeGridModule.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nTreeGridModule.ctorParameters;\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n","import { Component, ElementRef, ViewContainerRef, ChangeDetectionStrategy, QueryList, Renderer2, Injector, ValueProvider, ContentChild } from '@angular/core';\nimport { ComponentBase, IComponentBase, applyMixins, ComponentMixins, PropertyCollectionInfo, setValue } from '@syncfusion/ej2-angular-base';\nimport { TreeGrid } from '@syncfusion/ej2-treegrid';\nimport { Template } from '@syncfusion/ej2-angular-base';\nimport { ColumnsDirective } from './columns.directive';\nimport { AggregatesDirective } from './aggregates.directive';\n\nexport const /** @type {?} */ inputs: string[] = ['aggregates','allowExcelExport','allowFiltering','allowMultiSorting','allowPaging','allowPdfExport','allowReordering','allowResizing','allowRowDragAndDrop','allowSelection','allowSorting','allowTextWrap','autoCheckHierarchy','childMapping','clipMode','columnMenuItems','columnQueryMode','columns','contextMenuItems','copyHierarchyMode','currencyCode','dataSource','detailTemplate','editSettings','enableAdaptiveUI','enableAltRow','enableAutoFill','enableCollapseAll','enableColumnVirtualization','enableHover','enableHtmlSanitizer','enableImmutableMode','enableInfiniteScrolling','enablePersistence','enableRtl','enableVirtualMaskRow','enableVirtualization','expandStateMapping','filterSettings','frozenColumns','frozenRows','gridLines','hasChildMapping','height','idMapping','infiniteScrollSettings','loadChildOnDemand','loadingIndicator','locale','pageSettings','parentIdMapping','printMode','query','rowDropSettings','rowHeight','rowTemplate','searchSettings','selectedRowIndex','selectionSettings','showColumnChooser','showColumnMenu','sortSettings','textWrapSettings','toolbar','treeColumnIndex','width'];\nexport const /** @type {?} */ outputs: string[] = ['actionBegin','actionComplete','actionFailure','batchAdd','batchCancel','batchDelete','beforeBatchAdd','beforeBatchDelete','beforeBatchSave','beforeCopy','beforeDataBound','beforeExcelExport','beforePaste','beforePdfExport','beforePrint','beginEdit','cellDeselected','cellDeselecting','cellEdit','cellSave','cellSaved','cellSelected','cellSelecting','checkboxChange','collapsed','collapsing','columnDrag','columnDragStart','columnDrop','columnMenuClick','columnMenuOpen','contextMenuClick','contextMenuOpen','created','dataBound','dataSourceChanged','dataStateChange','detailDataBound','excelExportComplete','excelHeaderQueryCellInfo','excelQueryCellInfo','expanded','expanding','headerCellInfo','load','pdfExportComplete','pdfHeaderQueryCellInfo','pdfQueryCellInfo','printComplete','queryCellInfo','recordDoubleClick','resizeStart','resizeStop','resizing','rowDataBound','rowDeselected','rowDeselecting','rowDrag','rowDragStart','rowDragStartHelper','rowDrop','rowSelected','rowSelecting','toolbarClick','dataSourceChange'];\nexport const /** @type {?} */ twoWays: string[] = ['dataSource'];\n/**\n * `ejs-treegrid` represents the Angular TreeTreeGrid Component.\n * ```html\n * <ejs-treegrid [dataSource]='data' allowPaging='true' allowSorting='true'></ejs-treegrid>\n * ```\n */\n@ComponentMixins([ComponentBase])\nexport class TreeGridComponent extends TreeGrid implements IComponentBase {\npublic context : any;\npublic tagObjects: any;\n\tactionBegin: any;\n\tactionComplete: any;\n\tactionFailure: any;\n\tbatchAdd: any;\n\tbatchCancel: any;\n\tbatchDelete: any;\n\tbeforeBatchAdd: any;\n\tbeforeBatchDelete: any;\n\tbeforeBatchSave: any;\n\tbeforeCopy: any;\n\tbeforeDataBound: any;\n\tbeforeExcelExport: any;\n\tbeforePaste: any;\n\tbeforePdfExport: any;\n\tbeforePrint: any;\n\tbeginEdit: any;\n\tcellDeselected: any;\n\tcellDeselecting: any;\n\tcellEdit: any;\n\tcellSave: any;\n\tcellSaved: any;\n\tcellSelected: any;\n\tcellSelecting: any;\n\tcheckboxChange: any;\n\tcollapsed: any;\n\tcollapsing: any;\n\tcolumnDrag: any;\n\tcolumnDragStart: any;\n\tcolumnDrop: any;\n\tcolumnMenuClick: any;\n\tcolumnMenuOpen: any;\n\tcontextMenuClick: any;\n\tcontextMenuOpen: any;\n\tcreated: any;\n\tdataBound: any;\n\tdataSourceChanged: any;\n\tdataStateChange: any;\n\tdetailDataBound: any;\n\texcelExportComplete: any;\n\texcelHeaderQueryCellInfo: any;\n\texcelQueryCellInfo: any;\n\texpanded: any;\n\texpanding: any;\n\theaderCellInfo: any;\n\tload: any;\n\tpdfExportComplete: any;\n\tpdfHeaderQueryCellInfo: any;\n\tpdfQueryCellInfo: any;\n\tprintComplete: any;\n\tqueryCellInfo: any;\n\trecordDoubleClick: any;\n\tresizeStart: any;\n\tresizeStop: any;\n\tresizing: any;\n\trowDataBound: any;\n\trowDeselected: any;\n\trowDeselecting: any;\n\trowDrag: any;\n\trowDragStart: any;\n\trowDragStartHelper: any;\n\trowDrop: any;\n\trowSelected: any;\n\trowSelecting: any;\n\ttoolbarClick: any;\npublic dataSourceChange: any;\npublic childColumns: QueryList<ColumnsDirective>;\npublic childAggregates: QueryList<AggregatesDirective>;\npublic tags: string[] = ['columns', 'aggregates'];\n \n @Template()\npublic toolbarTemplate: any;\n \n @Template()\npublic pagerTemplate: any;\n/**\n * The row template that renders customized rows from the given template. \n * By default, TreeGrid renders a table row for every data source item. \n * > * It accepts either [template string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals) \n * or HTML element ID. \n * > * The row template must be a table row.\n * \n * > Check the [`Row Template`](../../treegrid/row) customization.\n * \n * \\@asptype string\n */\n@Template()\n public rowTemplate: any;\n/**\n * The detail template allows you to show or hide additional information about a particular row.\n * \n * > It accepts either the [template string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals)\n * or the HTML element ID.\n * \n * \\@asptype string\n */\n@Template()\n public detailTemplate: any;\n \n @Template()\npublic editSettings_template: any;\n/**\n * @param {?} ngEle\n * @param {?} srenderer\n * @param {?} viewContainerRef\n * @param {?} injector\n */\nconstructor(private ngEle: ElementRef,\nprivate srenderer: Renderer2,\nprivate viewContainerRef:ViewContainerRef,\nprivate injector: Injector) {\n super();\n this.element = this.ngEle.nativeElement;\n this.injectedModules = this.injectedModules || [];\n try {\n let mod = this.injector.get('TreeGridFilter');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n try {\n let mod = this.injector.get('TreeGridPage');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n try {\n let mod = this.injector.get('TreeGridSort');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n try {\n let mod = this.injector.get('TreeGridReorder');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n try {\n let mod = this.injector.get('TreeGridToolbar');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n try {\n let mod = this.injector.get('TreeGridAggregate');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n try {\n let mod = this.injector.get('TreeGridResize');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n try {\n let mod = this.injector.get('TreeGridColumnMenu');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n try {\n let mod = this.injector.get('TreeGridExcelExport');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n try {\n let mod = this.injector.get('TreeGridPdfExport');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n try {\n let mod = this.injector.get('TreeGridCommandColumn');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n try {\n let mod = this.injector.get('TreeGridContextMenu');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n try {\n let mod = this.injector.get('TreeGridEdit');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n try {\n let mod = this.injector.get('TreeGridSelection');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n try {\n let mod = this.injector.get('TreeGridVirtualScroll');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n try {\n let mod = this.injector.get('TreeGridDetailRow');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n try {\n let mod = this.injector.get('TreeGridRowDD');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n try {\n let mod = this.injector.get('TreeGridFreeze');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n try {\n let mod = this.injector.get('TreeGridColumnChooser');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n try {\n let mod = this.injector.get('TreeGridLogger');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n try {\n let mod = this.injector.get('TreeGridInfiniteScroll');\n if(this.injectedModules.indexOf(mod) === -1) {\n this.injectedModules.push(mod)\n }\n } catch { }\n\n this.registerEvents(outputs);\n this.addTwoWay.call(this, twoWays);\n setValue('currentInstance', this, this.viewContainerRef);\n this.context = new ComponentBase();\n }\n/**\n * @return {?}\n */\npublic ngOnInit() {\n this.context.ngOnInit(this);\n }\n/**\n * @return {?}\n */\npublic ngAfterViewInit(): void {\n this.context.ngAfterViewInit(this);\n }\n/**\n * @return {?}\n */\npublic ngOnDestroy(): void {\n this.context.ngOnDestroy(this);\n }\n/**\n * @return {?}\n */\npublic ngAfterContentChecked(): void {\n this.tagObjects[0].instance = this.childColumns;\n if (this.childAggregates) {\n this.tagObjects[1].instance = /** @type {?} */(( this.childAggregates as any));\n }\n this.context.ngAfterContentChecked(this);\n }\npublic registerEvents: (eventList: string[]) => void;\npublic addTwoWay: (propList: string[]) => void;\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'ejs-treegrid',\n inputs: inputs,\n outputs: outputs,\n template: '',\n changeDetection: ChangeDetectionStrategy.OnPush,\n queries: {\n childColumns: new ContentChild(ColumnsDirective), \n childAggregates: new ContentChild(AggregatesDirective)\n }\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ElementRef, },\n{type: Renderer2, },\n{type: ViewContainerRef, },\n{type: Injector, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'toolbarTemplate': [{ type: ContentChild, args: ['toolbarTemplate', ] },],\n'pagerTemplate': [{ type: ContentChild, args: ['pagerTemplate', ] },],\n'rowTemplate': [{ type: ContentChild, args: ['rowTemplate', ] },],\n'detailTemplate': [{ type: ContentChild, args: ['detailTemplate', ] },],\n'editSettings_template': [{ type: ContentChild, args: ['editSettingsTemplate', ] },],\n};\n}\n\nfunction TreeGridComponent_tsickle_Closure_declarations() {\n/** @type {?} */\nTreeGridComponent.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nTreeGridComponent.ctorParameters;\n/** @type {?} */\nTreeGridComponent.propDecorators;\n/** @type {?} */\nTreeGridComponent.prototype.context;\n/** @type {?} */\nTreeGridComponent.prototype.tagObjects;\n/** @type {?} */\nTreeGridComponent.prototype.actionBegin;\n/** @type {?} */\nTreeGridComponent.prototype.actionComplete;\n/** @type {?} */\nTreeGridComponent.prototype.actionFailure;\n/** @type {?} */\nTreeGridComponent.prototype.batchAdd;\n/** @type {?} */\nTreeGridComponent.prototype.batchCancel;\n/** @type {?} */\nTreeGridComponent.prototype.batchDelete;\n/** @type {?} */\nTreeGridComponent.prototype.beforeBatchAdd;\n/** @type {?} */\nTreeGridComponent.prototype.beforeBatchDelete;\n/** @type {?} */\nTreeGridComponent.prototype.beforeBatchSave;\n/** @type {?} */\nTreeGridComponent.prototype.beforeCopy;\n/** @type {?} */\nTreeGridComponent.prototype.beforeDataBound;\n/** @type {?} */\nTreeGridComponent.prototype.beforeExcelExport;\n/** @type {?} */\nTreeGridComponent.prototype.beforePaste;\n/** @type {?} */\nTreeGridComponent.prototype.beforePdfExport;\n/** @type {?} */\nTreeGridComponent.prototype.beforePrint;\n/** @type {?} */\nTreeGridComponent.prototype.beginEdit;\n/** @type {?} */\nTreeGridComponent.prototype.cellDeselected;\n/** @type {?} */\nTreeGridComponent.prototype.cellDeselecting;\n/** @type {?} */\nTreeGridComponent.prototype.cellEdit;\n/** @type {?} */\nTreeGridComponent.prototype.cellSave;\n/** @type {?} */\nTreeGridComponent.prototype.cellSaved;\n/** @type {?} */\nTreeGridComponent.prototype.cellSelected;\n/** @type {?} */\nTreeGridComponent.prototype.cellSelecting;\n/** @type {?} */\nTreeGridComponent.prototype.checkboxChange;\n/** @type {?} */\nTreeGridComponent.prototype.collapsed;\n/** @type {?} */\nTreeGridComponent.prototype.collapsing;\n/** @type {?} */\nTreeGridComponent.prototype.columnDrag;\n/** @type {?} */\nTreeGridComponent.prototype.columnDragStart;\n/** @type {?} */\nTreeGridComponent.prototype.columnDrop;\n/** @type {?} */\nTreeGridComponent.prototype.columnMenuClick;\n/** @type {?} */\nTreeGridComponent.prototype.columnMenuOpen;\n/** @type {?} */\nTreeGridComponent.prototype.contextMenuClick;\n/** @type {?} */\nTreeGridComponent.prototype.contextMenuOpen;\n/** @type {?} */\nTreeGridComponent.prototype.created;\n/** @type {?} */\nTreeGridComponent.prototype.dataBound;\n/** @type {?} */\nTreeGridComponent.prototype.dataSourceChanged;\n/** @type {?} */\nTreeGridComponent.prototype.dataStateChange;\n/** @type {?} */\nTreeGridComponent.prototype.detailDataBound;\n/** @type {?} */\nTreeGridComponent.prototype.excelExportComplete;\n/** @type {?} */\nTreeGridComponent.prototype.excelHeaderQueryCellInfo;\n/** @type {?} */\nTreeGridComponent.prototype.excelQueryCellInfo;\n/** @type {?} */\nTreeGridComponent.prototype.expanded;\n/** @type {?} */\nTreeGridComponent.prototype.expanding;\n/** @type {?} */\nTreeGridComponent.prototype.headerCellInfo;\n/** @type {?} */\nTreeGridComponent.prototype.load;\n/** @type {?} */\nTreeGridComponent.prototype.pdfExportComplete;\n/** @type {?} */\nTreeGridComponent.prototype.pdfHeaderQueryCellInfo;\n/** @type {?} */\nTreeGridComponent.prototype.pdfQueryCellInfo;\n/** @type {?} */\nTreeGridComponent.prototype.printComplete;\n/** @type {?} */\nTreeGridComponent.prototype.queryCellInfo;\n/** @type {?} */\nTreeGridComponent.prototype.recordDoubleClick;\n/** @type {?} */\nTreeGridComponent.prototype.resizeStart;\n/** @type {?} */\nTreeGridComponent.prototype.resizeStop;\n/** @type {?} */\nTreeGridComponent.prototype.resizing;\n/** @type {?} */\nTreeGridComponent.prototype.rowDataBound;\n/** @type {?} */\nTreeGridComponent.prototype.rowDeselected;\n/** @type {?} */\nTreeGridComponent.prototype.rowDeselecting;\n/** @type {?} */\nTreeGridComponent.prototype.rowDrag;\n/** @type {?} */\nTreeGridComponent.prototype.rowDragStart;\n/** @type {?} */\nTreeGridComponent.prototype.rowDragStartHelper;\n/** @type {?} */\nTreeGridComponent.prototype.rowDrop;\n/** @type {?} */\nTreeGridComponent.prototype.rowSelected;\n/** @type {?} */\nTreeGridComponent.prototype.rowSelecting;\n/** @type {?} */\nTreeGridComponent.prototype.toolbarClick;\n/** @type {?} */\nTreeGridComponent.prototype.dataSourceChange;\n/** @type {?} */\nTreeGridComponent.prototype.childColumns;\n/** @type {?} */\nTreeGridComponent.prototype.childAggregates;\n/** @type {?} */\nTreeGridComponent.prototype.tags;\n/** @type {?} */\nTreeGridComponent.prototype.toolbarTemplate;\n/** @type {?} */\nTreeGridComponent.prototype.pagerTemplate;\n/**\n * The row template that renders customized rows from the given template. \n * By default, TreeGrid renders a table row for every data source item. \n * > * It accepts either [template string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals) \n * or HTML element ID. \n * > * The row template must be a table row.\n * \n * > Check the [`Row Template`](../../treegrid/row) customization.\n * \n * \\@asptype string\n * @type {?}\n */\nTreeGridComponent.prototype.rowTemplate;\n/**\n * The detail template allows you to show or hide additional information about a particular row.\n * \n * > It accepts either the [template string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals)\n * or the HTML element ID.\n * \n * \\@asptype string\n * @type {?}\n */\nTreeGridComponent.prototype.detailTemplate;\n/** @type {?} */\nTreeGridComponent.prototype.editSettings_template;\n/** @type {?} */\nTreeGridComponent.prototype.registerEvents;\n/** @type {?} */\nTreeGridComponent.prototype.addTwoWay;\n/** @type {?} */\nTreeGridComponent.prototype.ngEle;\n/** @type {?} */\nTreeGridComponent.prototype.srenderer;\n/** @type {?} */\nTreeGridComponent.prototype.viewContainerRef;\n/** @type {?} */\nTreeGridComponent.prototype.injector;\n}\n\n\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n","import { Directive, ViewContainerRef, ContentChildren, ContentChild } from '@angular/core';\nimport { ComplexBase, ArrayBase, setValue } from '@syncfusion/ej2-angular-base';\n\nimport { AggregateColumnsDirective } from './aggregate-columns.directive';\n\nlet /** @type {?} */ input: string[] = ['columns', 'showChildSummary'];\nlet /** @type {?} */ outputs: string[] = [];\n/**\n * `e-aggregate` directive represent a aggregate row of the Angular TreeGrid. \n * It must be contained in a TreeGrid component(`ejs-treegrid`). \n * ```html\n * <ejs-treegrid [dataSource]='data' allowPaging='true' allowSorting='true'> \n * <e-columns>\n * <e-column field='ID' width='100'></e-column>\n * <e-column field='name' headerText='Name' width='100'></e-column>\n * </e-columns>\n * <e-aggregates>\n * <e-aggregate>\n * <e-columns>\n * <e-column field='ID' type='Min'></e-column>\n * </e-columns>\n * </e-aggregate>\n * </e-aggregates>\n * </ejs-treegrid>\n * ```\n */\nexport class AggregateDirective extends ComplexBase<AggregateDirective> {\npublic directivePropList: any;\npublic childColumns: any;\npublic tags: string[] = ['columns'];\n/**\n * Configures the aggregate columns.\n * \\@default []\n */\npublic columns: any;\n/**\n * Display the childSummary for each parent.\n */\npublic showChildSummary: any;\n/**\n * @param {?} viewContainerRef\n */\nconstructor(private viewContainerRef:ViewContainerRef) {\n super();\n setValue('currentInstance', this, this.viewContainerRef);\n this.registerEvents(outputs);\n this.directivePropList = input;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: 'ejs-treegrid>e-aggregates>e-aggregate',\n inputs: input,\n outputs: outputs, \n queries: {\n childColumns: new ContentChild(AggregateColumnsDirective)\n }\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ViewContainerRef, },\n];\n}\n\nfunction AggregateDirective_tsickle_Closure_declarations() {\n/** @type {?} */\nAggregateDirective.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nAggregateDirective.ctorParameters;\n/** @type {?} */\nAggregateDirective.prototype.directivePropList;\n/** @type {?} */\nAggregateDirective.prototype.childColumns;\n/** @type {?} */\nAggregateDirective.prototype.tags;\n/**\n * Configures the aggregate columns.\n * \\@default []\n * @type {?}\n */\nAggregateDirective.prototype.columns;\n/**\n * Display the childSummary for each parent.\n * @type {?}\n */\nAggregateDirective.prototype.showChildSummary;\n/** @type {?} */\nAggregateDirective.prototype.viewContainerRef;\n}\n\n/**\n * Aggregate Array Directive\n */\nexport class AggregatesDirective extends ArrayBase<AggregatesDirective> {\nconstructor() {\n super('aggregates');\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: 'ejs-treegrid>e-aggregates',\n queries: {\n children: new ContentChildren(AggregateDirective)\n },\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\nfunction AggregatesDirective_tsickle_Closure_declarations() {\n/** @type {?} */\nAggregatesDirective.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nAggregatesDirective.ctorParameters;\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n","import { Directive, ViewContainerRef, ContentChildren, ContentChild } from '@angular/core';\nimport { ComplexBase, ArrayBase, setValue } from '@syncfusion/ej2-angular-base';\nimport { Template } from '@syncfusion/ej2-angular-base';\n\n\nlet /** @type {?} */ input: string[] = ['columnName', 'customAggregate', 'field', 'footerTemplate', 'format', 'type'];\nlet /** @type {?} */ outputs: string[] = [];\n/**\n * `e-aggregate->e-column` directive represent a aggregate column of the Angular TreeGrid. \n * ```html\n * <ejs-treegrid [dataSource]='data' allowPaging='true' allowSorting='true'> \n * <e-columns>\n * <e-column field='ID' width='100'></e-column>\n * <e-column field='name' headerText='Name' width='100'></e-column>\n * </e-columns>\n * <e-aggregates>\n * <e-aggregate>\n * <e-columns>\n * <e-column field='ID' type='Min'></e-column>\n * </e-columns>\n * </e-aggregate>\n * </e-aggregates>\n * </ejs-treegrid>\n * ```\n */\nexport class AggregateColumnDirective extends ComplexBase<AggregateColumnDirective> {\npublic directivePropList: any;\n/**\n * Defines the aggregate type of a particular column. \n * To use multiple aggregates for single column, specify the `type` as array. \n * Types of aggregate are, \n * * sum \n * * average \n * * max \n * * min \n * * count \n * * falsecount \n * * truecount \n * * custom \n * > Specify the `type` value as `custom` to use custom aggregation.\n * \\@asptype string\n * \\@default null\n */\npublic type: any;\n/**\n * Defines the column name to display the aggregate value. If `columnName` is not defined, \n * then `field` name value will be assigned to the `columnName` property.\n * \\@default null\n */\npublic columnName: any;\n/**\n * Defines a function to calculate custom aggregate value. The `type` value should be set to `custom`. \n * To use custom aggregate value in the template, use the key as `${custom}`. \n * **Total aggregation**: The custom function will be called with the whole data and the current `AggregateColumn` object. \n * **Group aggregation**: This will be called with the current group details and the `AggregateColumn` object.\n * \\@default null\n */\npublic customAggregate: any;\n/**\n * Defines the column name to perform aggregation.\n * \\@default null\n */\npublic field: any;\n/**\n * Format is applied to a calculated value before it is displayed. \n * Gets the format from the user, which can be standard or custom \n * [`number`](https://ej2.syncfusion.com/documentation/common/internationalization/#supported-format-string) \n * and [`date`](https://ej2.syncfusion.com/documentation/common/internationalization/#supported-format-string-1) formats.\n * \\@asptype string\n * \\@default null\n */\npublic format: any;\n/**\n * Defines the footer cell template as a string for the aggregate column. \n * The `type` name should be used to access aggregate values inside the template.\n * \n * {% codeBlock src=\"grid/footer-template-api/index.ts\" %}{% endcodeBlock %}\n * \n * \\@default null\n * \\@asptype string\n */\n@Template()\n public footerTemplate: any;\n/**\n * @param {?} viewContainerRef\n */\nconstructor(private viewContainerRef:ViewContainerRef) {\n super();\n setValue('currentInstance', this, this.viewContainerRef);\n this.registerEvents(outputs);\n this.directivePropList = input;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: 'ejs-treegrid>e-aggregates>e-aggregate>e-columns>e-column',\n inputs: input,\n outputs: outputs, \n queries: {\n\n }\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ViewContainerRef, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'footerTemplate': [{ type: ContentChild, args: ['footerTemplate', ] },],\n};\n}\n\nfunction AggregateColumnDirective_tsickle_Closure_declarations() {\n/** @type {?} */\nAggregateColumnDirective.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nAggregateColumnDirective.ctorParameters;\n/** @type {?} */\nAggregateColumnDirective.propDecorators;\n/** @type {?} */\nAggregateColumnDirective.prototype.directivePropList;\n/**\n * Defines the aggregate type of a particular column. \n * To use multiple aggregates for single column, specify the `type` as array. \n * Types of aggregate are, \n * * sum \n * * average \n * * max \n * * min \n * * count \n * * falsecount \n * * truecount \n * * custom \n * > Specify the `type` value as `custom` to use custom aggregation.\n * \\@asptype string\n * \\@default null\n * @type {?}\n */\nAggregateColumnDirective.prototype.type;\n/**\n * Defines the column name to display the aggregate value. If `columnName` is not defined, \n * then `field` name value will be assigned to the `columnName` property.\n * \\@default null\n * @type {?}\n */\nAggregateColumnDirective.prototype.columnName;\n/**\n * Defines a function to calculate custom aggregate value. The `type` value should be set to `custom`. \n * To use custom aggregate value in the template, use the key as `${custom}`. \n * **Total aggregation**: The custom function will be called with the whole data and the current `AggregateColumn` object. \n * **Group aggregation**: This will be called with the current group details and the `AggregateColumn` object.\n * \\@default null\n * @type {?}\n */\nAggregateColumnDirective.prototype.customAggregate;\n/**\n * Defines the column name to perform aggregation.\n * \\@default null\n * @type {?}\n */\nAggregateColumnDirective.prototype.field;\n/**\n * Format is applied to a calculated value before it is displayed. \n * Gets the format from the user, which can be standard or custom \n * [`number`](https://ej2.syncfusion.com/documentation/common/internationalization/#supported-format-string) \n * and [`date`](https://ej2.syncfusion.com/documentation/common/internationalization/#supported-format-string-1) formats.\n * \\@asptype string\n * \\@default null\n * @type {?}\n */\nAggregateColumnDirective.prototype.format;\n/**\n * Defines the footer cell template as a string for the aggregate column. \n * The `type` name should be used to access aggregate values inside the template.\n * \n * {% codeBlock src=\"grid/footer-template-api/index.ts\" %}{% endcodeBlock %}\n * \n * \\@default null\n * \\@asptype string\n * @type {?}\n */\nAggregateColumnDirective.prototype.footerTemplate;\n/** @type {?} */\nAggregateColumnDirective.prototype.viewContainerRef;\n}\n\n/**\n * AggregateColumn Array Directive\n */\nexport class AggregateColumnsDirective extends ArrayBase<AggregateColumnsDirective> {\nconstructor() {\n super('columns');\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: 'ejs-treegrid>e-aggregates>e-aggregate>e-columns',\n queries: {\n children: new ContentChildren(AggregateColumnDirective)\n },\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\nfunction AggregateColumnsDirective_tsickle_Closure_declarations() {\n/** @type {?} */\nAggregateColumnsDirective.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nAggregateColumnsDirective.ctorParameters;\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n","import { Directive, ViewContainerRef, ContentChildren, ContentChild } from '@angular/core';\nimport { ComplexBase, ArrayBase, setValue } from '@syncfusion/ej2-angular-base';\nimport { Template } from '@syncfusion/ej2-angular-base';\nimport { StackedColumnsDirective } from './stacked-column.directive';\n\nlet /** @type {?} */ input: string[] = ['allowEditing', 'allowFiltering', 'allowReordering', 'allowResizing', 'allowSorting', 'clipMode', 'columns', 'commands', 'customAttributes', 'defaultValue', 'disableHtmlEncode', 'displayAsCheckBox', 'edit', 'editTemplate', 'editType', 'field', 'filter', 'filterBarTemplate', 'filterTemplate', 'format', 'formatter', 'freeze', 'headerTemplate', 'headerText', 'headerTextAlign', 'hideAtMedia', 'isFrozen', 'isIdentity', 'isPrimaryKey', 'lockColumn', 'maxWidth', 'minWidth', 'showCheckbox', 'showColumnMenu', 'showInColumnChooser', 'sortComparer', 'template', 'textAlign', 'type', 'uid', 'validationRules', 'valueAccessor', 'visible', 'width'];\nlet /** @type {?} */ outputs: string[] = [];\n/**\n * `e-column` directive represent a column of the Angular TreeGrid. \n * It must be contained in a TreeGrid component(`ejs-treegrid`). \n * ```html\n * <ejs-treegrid [dataSource]='data' allowPaging='true' allowSorting='true'> \n * <e-columns>\n * <e-column field='ID' width='100'></e-column>\n * <e-column field='name' headerText='Name' width='100'></e-column>\n * </e-columns>\n * </ejs-treegrid>\n * ```\n */\nexport class ColumnDirective extends ComplexBase<ColumnDirective> {\npublic directivePropList: any;\npublic childColumns: any;\npublic tags: string[] = ['columns'];\n/**\n * Defines the data type of the column.\n * \\@default null\n */\npublic type: any;\n/**\n * If `allowEditing` set to false, then it disables editing of a particular column. \n * By default all columns are editable.\n * \\@default true\n */\npublic allowEditing: any;\n/**\n * If `allowFiltering` set to false, then it disables filtering option and filter bar element of a particular column. \n * By default all columns are filterable.\n * \\@default true\n */\npublic allowFiltering: any;\n/**\n * If `allowReordering` set to false, then it disables reorder of a particular column. \n * By default all columns can be reorder.\n * \\@default true\n */\npublic allowReordering: any;\n/**\n * If `allowResizing` set to false, it disables resize option of a particular column.\n * \\@default true\n */\npublic allowResizing: any;\n/**\n * If `allowSorting` set to false, then it disables sorting option of a particular column. \n * By default all columns are sortable.\n * \\@default true\n */\npublic allowSorting: any;\n/**\n * Defines the cell content's overflow mode. The available modes are \n * \n * also it will display tooltip while hover on ellipsis applied cell.\n * \\@default Syncfusion.EJ2.Grids.ClipMode.Ellipsis\n * \\@isenumeration true\n * \\@asptype Syncfusion.EJ2.Grids.ClipMode\n */\npublic clipMode: any;\n/**\n * Used to render multiple header rows(stacked headers) on TreeGrid header.\n * \\@default null\n */\npublic columns: any;\n/**\n * `commands` provides an option to display command buttons in every cell. \n * The available built-in command buttons are \n * * Edit - Edit the record. \n * * Delete - Delete the record. \n * * Save - Save the record. \n * * Cancel - Cancel the edit state.\n * \n * The following code example implements the custom command column.\n * ```html\n * <style type=\"text/css\" class=\"cssStyles\">\n * .details-icon:before\n * {\n * content:\"\\e74d\";\n * }\n * </style>\n * <div id=\"TreeGrid\"></div>\n * ```\n * ```typescript\n * var gridObj = new TreeGrid({\n * datasource: window.gridData,\n * columns : [\n * { field: 'CustomerID', headerText: 'Customer ID' },\n * { field: 'CustomerName', headerText: 'Customer Name' },\n * {commands: [{buttonOption:{content: 'Details', click: onClick, cssClass: details-icon}}], headerText: 'Customer Details'}\n * ]\n * gridObj.appendTo(\"#TreeGrid\");\n * ```\n * \n * \\@default null\n */\npublic commands: any;\n/**\n * The CSS styles and attributes of the content cells of a particular column can be customized.\n * \\@default null\n */\npublic customAttributes: any;\n/**\n * Defines default values for the component when adding a new record to the TreeGrid.\n * \\@default null\n */\npublic defaultValue: any;\n/**\n * If `disableHtmlEncode` is set to true, it encodes the HTML of the header and content cells.\n * \\@default true\n */\npublic disableHtmlEncode: any;\n/**\n * If `displayAsCheckBox` is set to true, it displays the column value as a check box instead of Boolean value.\n * \\@default false\n */\npublic displayAsCheckBox: any;\n/**\n * Defines the `IEditCell` object to customize default edit cell.\n * \\@default {}\n */\npublic edit: any;\n/**\n * Defines the type of component for editing.\n * \\@default 'stringedit'\n */\npublic editType: any;\n/**\n * Defines the field name of column which is mapped with mapping name of DataSource. \n * The bounded columns can be sort, filter etc., \n * The `field` name must be a valid JavaScript identifier, \n * the first character must be an alphabet and should not contain spaces and special characters.\n * \\@default 'undefined'\n */\npublic field: any;\n/**\n * Defines the filter options to customize filtering for the particular column.\n * \n * \\@default null\n * \n */\npublic filter: any;\n/**\n * The `filterBarTemplate` is used to add a custom component instead of default input component for filter bar. \n * It have create and read functions. \n * * create: It is used for creating custom components. \n * * read: It is used to perform custom filter action.\n * \n * ```html\n * <div id=\"TreeGrid\"></div>\n * ```\n * ```typescript\n * let gridObj: TreeGrid = new TreeGrid({\n * dataSource: filterData,\n * columns: [\n * { field: 'OrderID', headerText: 'Order ID' },\n * {\n * field: 'EmployeeID', filterBarTemplate: {\n * create: (args: { element: Element, column: Column }) => {\n * let input: HTMLInputElement = document.createElement('input');\n * input.id = 'EmployeeID';\n * input.type = 'text';\n * return input;\n * },\n * write: (args: { element: Element, column: Column }) => {\n * args.element.addEventListener('input', args.column.filterBarTemplate.read as EventListener);\n * },\n * read: (args: { element: HTMLInputElement, columnIndex: number, column: Column }) => {\n * gridObj.filterByColumn(args.element.id, 'equal', args.element.value);\n * }\n * }\n * }],\n * allowFiltering: true\n * });\n * gridObj.appendTo('#TreeGrid');\n * ```\n * \n * \\@default null\n */\npublic filterBarTemplate: any;\n/**\n * It is used to change display value with the given format and does not affect the original data. \n * Gets the format from the user which can be standard or custom \n * [`number`](https://ej2.syncfusion.com/documentation/common/internationalization/#supported-format-string) \n * and [`date`](https://ej2.syncfusion.com/documentation/common/internationalization/#supported-format-string-1) formats.\n * \\@default null\n * \\@asptype string\n */\npublic format: any;\n/**\n * Defines the method which is used to achieve custom formatting from an external function. \n * This function triggers before rendering of each cell.\n * \\@default null\n */\npublic formatter: any;\n/**\n * Defines which side the column need to freeze\n * \\@default Syncfusion.EJ2.Grids.FreezeDirection.None\n * \\@isenumeration true\n * \\@asptype Syncfusion.EJ2.Grids.FreezeDirection\n */\npublic freeze: any;\n/**\n * Defines the header text of column which is used to display in column header. \n * If `headerText` is not defined, then field name value will be assigned to header text.\n * \\@default 'undefined'\n */\npublic headerText: any;\n/**\n * Define the alignment of column header which is used to align the text of column header.\n * \\@default null\n * \\@aspdefaultvalueignore\n * \\@isenumeration true\n * \\@asptype Syncfusion.EJ2.Grids.TextAlign\n */\npublic headerTextAlign: any;\n/**\n * Column visibility can change based on [`Media Queries`](http://cssmediaqueries.com/what-are-css-media-queries.html). \n * `hideAtMedia` accepts only valid Media Queries.\n * \\@default 'undefined'\n */\npublic hideAtMedia: any;\n/**\n * You can use this property to freeze selected columns in grid.\n * \\@default false\n */\npublic isFrozen: any;\n/**\n * If `isIdentity` is set to true, then this column is considered as identity column.\n * \\@default false\n */\npublic isIdentity: any;\n/**\n * If `isPrimaryKey` is set to true, considers this column as the primary key constraint.\n * \\@default false\n */\npublic isPrimaryKey: any;\n/**\n * If `lockColumn` set to true, then it disables Reordering of a particular column. \n * The locked column will be moved to first position.\n * \\@default false\n */\npublic lockColumn: any;\n/**\n * Defines the maximum width of the column in pixels or percentage, which will restrict resizing beyond this pixels or percentage.\n * \\@default 'undefined'\n */\npublic maxWidth: any;\n/**\n * Defines the minimum width of the column in pixels or percentage.\n * \\@default 'undefined'\n */\npublic minWidth: any;\n/**\n * If `showCheckbox` set to true, then the checkboxes will be displayed in particular column.\n * \\@default false\n */\npublic showCheckbox: any;\n/**\n * If `showColumnMenu` set to false, then it disable the column menu of a particular column. \n * By default column menu will show for all columns\n * \\@default true\n */\npublic showColumnMenu: any;\n/**\n * If `showInColumnChooser` set to false, then hide the particular column in column chooser. \n * By default all columns are displayed in column Chooser.\n * \\@default true\n */\npublic showInColumnChooser: any;\n/**\n * Defines the sort comparer property.\n * \\@default 'undefined'\n */\npublic sortComparer: any;\n/**\n * Defines the alignment of the column in both header and content cells.\n * \\@default Syncfusion.EJ2.Grids.TextAlign.Left\n * \\@isenumeration true\n * \\@asptype Syncfusion.EJ2.Grids.TextAlign\n */\npublic textAlign: any;\n/**\n * Gets the unique identifier value of the column. It is used to get the object.\n * \\@default 'undefined'\n */\npublic uid: any;\n/**\n * Defines rules to validate data before creating and updating.\n * \\@default null\n */\npublic validationRules: any;\n/**\n * Defines the method used to apply custom cell values from external function and display this on each cell rendered.\n * \\@default null\n */\npublic valueAccessor: any;\n/**\n * If `visible` is set to false, hides the particular column. By default, columns are displayed.\n * \\@default true\n */\npublic visible: any;\n/**\n * Defines the width of the column in pixels or percentage.\n * \\@default 'undefined'\n */\npublic width: any;\n/**\n * Defines the column template that renders customized element in each cell of the column. \n * It accepts either [template string](https://ej2.syncfusion.com/documentation/common/template-engine/) or HTML element ID.\n * \\@default null\n * \\@asptype string\n */\n@Template()\n public template: any;\n/**\n * Defines the header template as string or HTML element ID which is used to add customized element in the column header.\n * \\@default null\n * \\@asptype string\n */\n@Template()\n public headerTemplate: any;\n \n @Template()\npublic filter_itemTemplate: any;\n/**\n * Defines the filter template/UI that is used as filter for a particular column. \n * It accepts either template string or HTML element ID.\n * \\@aspignore\n */\n@Template()\n public filterTemplate: any;\n \n @Template()\npublic commandsTemplate: any;\n/**\n * Defines the cell edit template that used as editor for a particular column. \n * It accepts either template string or HTML element ID.\n * \\@aspignore\n */\n@Template()\n public editTemplate: any;\n/**\n * @param {?} viewContainerRef\n */\nconstructor(private viewContainerRef:ViewContainerRef) {\n super();\n setValue('currentInstance', this, this.viewContainerRef);\n this.registerEvents(outputs);\n this.directivePropList = input;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: 'ejs-treegrid>e-columns>e-column',\n inputs: input,\n outputs: outputs, \n queries: {\n childColumns: new ContentChild(StackedColumnsDirective)\n }\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ViewContainerRef, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'template': [{ type: ContentChild, args: ['template', ] },],\n'headerTemplate': [{ type: ContentChild, args: ['headerTemplate', ] },],\n'filter_itemTemplate': [{ type: ContentChild, args: ['filterItemTemplate', ] },],\n'filterTemplate': [{ type: ContentChild, args: ['filterTemplate', ] },],\n'commandsTemplate': [{ type: ContentChild, args: ['commandsTemplate', ] },],\n'editTemplate': [{ type: ContentChild, args: ['editTemplate', ] },],\n};\n}\n\nfunction ColumnDirective_tsickle_Closure_declarations() {\n/** @type {?} */\nColumnDirective.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nColumnDirective.ctorParameters;\n/** @type {?} */\nColumnDirective.propDecorators;\n/** @type {?} */\nColumnDirective.prototype.directivePropList;\n/** @type {?} */\nColumnDirective.prototype.childColumns;\n/** @type {?} */\nColumnDirective.prototype.tags;\n/**\n * Defines the data type of the column.\n * \\@default null\n * @type {?}\n */\nColumnDirective.prototype.type;\n/**\n * If `allowEditing` set to false, then it disables editing of a particular column. \n * By default all columns are editable.\n * \\@default true\n * @type {?}\n */\nColumnDirective.prototype.allowEditing;\n/**\n * If `allowFiltering` set to false, then it disables filtering option and filter bar element of a particular column. \n * By default all columns are filterable.\n * \\@default true\n * @type {?}\n */\nColumnDirective.prototype.allowFiltering;\n/**\n * If `allowReordering` set to false, then it disables reorder of a particular column. \n * By default all columns can be reorder.\n * \\@default true\n * @type {?}\n */\nColumnDirective.prototype.allowReordering;\n/**\n * If `allowResizing` set to false, it disables resize option of a particular column.\n * \\@default true\n * @type {?}\n */\nColumnDirective.prototype.allowResizing;\n/**\n * If `allowSorting` set to false, then it disables sorting option of a particular column. \n * By default all columns are sortable.\n * \\@default true\n * @type {?}\n */\nColumnDirective.prototype.allowSorting;\n/**\n * Defines the cell content's overflow mode. The available modes are \n * \n * also it will display tooltip while hover on ellipsis applied cell.\n * \\@default Syncfusion.EJ2.Grids.ClipMode.Ellipsis\n * \\@isenumeration true\n * \\@asptype Syncfusion.EJ2.Grids.ClipMode\n * @type {?}\n */\nColumnDirective.prototype.clipMode;\n/**\n * Used to render multiple header rows(stacked headers) on TreeGrid header.\n * \\@default null\n * @type {?}\n */\nColumnDirective.prototype.columns;\n/**\n * `commands` provides an option to display command buttons in every cell. \n * The available built-in command buttons are \n * * Edit - Edit the record. \n * * Delete - Delete the record. \n * * Save - Save the record. \n * * Cancel - Cancel the edit state.\n * \n * The following code example implements the custom command column.\n * ```html\n * <style type=\"text/css\" class=\"cssStyles\">\n * .details-icon:before\n * {\n * content:\"\\e74d\";\n * }\n * </style>\n * <div id=\"TreeGrid\"></div>\n * ```\n * ```typescript\n * var gridObj = new TreeGrid({\n * datasource: window.gridData,\n * columns : [\n * { field: 'CustomerID', headerText: 'Customer ID' },\n * { field: 'CustomerName', headerText: 'Customer Name' },\n * {commands: [{buttonOption:{content: 'Details', click: onClick, cssClass: details-icon}}], headerText: 'Customer Details'}\n * ]\n * gridObj.appendTo(\"#TreeGrid\");\n * ```\n * \n * \\@default null\n * @type {?}\n */\nColumnDirective.prototype.commands;\n/**\n * The CSS styles and attributes of the content cells of a particular column can be customized.\n * \\@default null\n * @type {?}\n */\nColumnDirective.prototype.customAttributes;\n/**\n * Defines default values for the component when adding a new record to the TreeGrid.\n * \\@default null\n * @type {?}\n */\nColumnDirective.prototype.defaultValue;\n/**\n * If `disableHtmlEncode` is set to true, it encodes the HTML of the header and content cells.\n * \\@default true\n * @type {?}\n */\nColumnDirective.prototype.disableHtmlEncode;\n/**\n * If `displayAsCheckBox` is set to true, it displays the column value as a check box instead of Boolean value.\n * \\@default false\n * @type {?}\n */\nColumnDirective.prototype.displayAsCheckBox;\n/**\n * Defines the `IEditCell` object to customize default edit cell.\n * \\@default {}\n * @type {?}\n */\nColumnDirective.prototype.edit;\n/**\n * Defines the type of component for editing.\n * \\@default 'stringedit'\n * @type {?}\n */\nColumnDirective.prototype.editType;\n/**\n * Defines the field name of column which is mapped with mapping name of DataSource. \n * The bounded columns can be sort, filter etc., \n * The `field` name must be a valid JavaScript identifier, \n * the first character must be an alphabet and should not contain spaces and special characters.\n * \\@default 'undefined'\n * @type {?}\n */\nColumnDirective.prototype.field;\n/**\n * Defines the filter options to customize filtering for the particular column.\n * \n * \\@default null\n * \n * @type {?}\n */\nColumnDirective.prototype.filter;\n/**\n * The `filterBarTemplate` is used to add a custom component instead of default input component for filter bar. \n * It have create and read functions. \n * * create: It is used for creating custom components. \n * * read: It is used to perform custom filter action.\n * \n * ```html\n * <div id=\"TreeGrid\"></div>\n * ```\n * ```typescript\n * let gridObj: TreeGrid = new TreeGrid({\n * dataSource: filterData,\n * columns: [\n * { field: 'OrderID', headerText: 'Order ID' },\n * {\n * field: 'EmployeeID', filterBarTemplate: {\n * create: (args: { element: Element, column: Column }) => {\n * let input: HTMLInputElement = document.createElement('input');\n * input.id = 'EmployeeID';\n * input.type = 'text';\n * return input;\n * },\n * write: (args: { element: Element, column: Column }) => {\n * args.element.addEventListener('input', args.column.filterBarTemplate.read as EventListener);\n * },\n * read: (args: { element: HTMLInputElement, columnIndex: number, column: Column }) => {\n * gridObj.filterByColumn(args.element.id, 'equal', args.element.value);\n * }\n * }\n * }],\n * allowFiltering: true\n * });\n * gridObj.appendTo('#TreeGrid');\n * ```\n * \n * \\@default null\n * @type {?}\n */\nColumnDirective.prototype.filterBarTemplate;\n/**\n * It is used to change display value with the given format and does not affect the original data. \n * Gets the format from the user which can be standard or custom \n * [`number`](https://ej2.syncfusion.com/documentation/common/internationalization/#supported-format-string) \n * and [`date`](https://ej2.syncfusion.com/documentation/common/internationalization/#supported-format-string-1) formats.\n * \\@default null\n * \\@asptype string\n * @type {?}\n */\nColumnDirective.prototype.format;\n/**\n * Defines the method which is used to achieve custom formatting from an external function. \n * This function triggers before rendering of each cell.\n * \\@default null\n * @type {?}\n */\nColumnDirective.prototype.formatter;\n/**\n * Defines which side the column need to freeze\n * \\@default Syncfusion.EJ2.Grids.FreezeDirection.None\n * \\@isenumeration true\n * \\@asptype Syncfusion.EJ2.Grids.FreezeDirection\n * @type {?}\n */\nColumnDirective.prototype.freeze;\n/**\n * Defines the header text of column which is used to display in column header. \n * If `headerText` is not defined, then field name value will be assigned to header text.\n * \\@default 'undefined'\n * @type {?}\n */\nColumnDirective.prototype.headerText;\n/**\n * Define the alignment of column header which is used to align the text of column header.\n * \\@default null\n * \\@aspdefaultvalueignore\n * \\@isenumeration true\n * \\@asptype Syncfusion.EJ2.Grids.TextAlign\n * @type {?}\n */\nColumnDirective.prototype.headerTextAlign;\n/**\n * Column visibility can change based on [`Media Queries`](http://cssmediaqueries.com/what-are-css-media-queries.html). \n * `hideAtMedia` accepts only valid Media Queries.\n * \\@default 'undefined'\n * @type {?}\n */\nColumnDirective.prototype.hideAtMedia;\n/**\n * You can use this property to freeze selected columns in grid.\n * \\@default false\n * @type {?}\n */\nColumnDirective.prototype.isFrozen;\n/**\n * If `isIdentity` is set to true, then this column is considered as identity column.\n * \\@default false\n * @type {?}\n */\nColumnDirective.prototype.isIdentity;\n/**\n * If `isPrimaryKey` is set to true, considers this column as the primary key constraint.\n * \\@default false\n * @type {?}\n */\nColumnDirective.prototype.isPrimaryKey;\n/**\n * If `lockColumn` set to true, then it disables Reordering of a particular column. \n * The locked column will be moved to first position.\n * \\@default false\n * @type {?}\n */\nColumnDirective.prototype.lockColumn;\n/**\n * Defines the maximum width of the column in pixels or percentage, which will restrict resizing beyond this pixels or percentage.\n * \\@default 'undefined'\n * @type {?}\n */\nColumnDirective.prototype.maxWidth;\n/**\n * Defines the minimum width of the column in pixels or percentage.\n * \\@default 'undefined'\n * @type {?}\n */\nColumnDirective.prototype.minWidth;\n/**\n * If `showCheckbox` set to true, then the checkboxes will be displayed in particular column.\n * \\@default false\n * @type {?}\n */\nColumnDirective.prototype.showCheckbox;\n/**\n * If `showColumnMenu` set to false, then it disable the column menu of a particular column. \n * By default column menu will show for all columns\n * \\@default true\n * @type {?}\n */\nColumnDirective.prototype.showColumnMenu;\n/**\n * If `showInColumnChooser` set to false, then hide the particular column in column chooser. \n * By default all columns are displayed in column Chooser.\n * \\@default true\n * @type {?}\n */\nColumnDirective.prototype.showInColumnChooser;\n/**\n * Defines the sort comparer property.\n * \\@default 'undefined'\n * @type {?}\n */\nColumnDirective.prototype.sortComparer;\n/**\n * Defines the alignment of the column in both header and content cells.\n * \\@default Syncfusion.EJ2.Grids.TextAlign.Left\n * \\@isenumeration true\n * \\@asptype Syncfusion.EJ2.Grids.TextAlign\n * @type {?}\n */\nColumnDirective.prototype.textAlign;\n/**\n * Gets the unique identifier value of the column. It is used to get the object.\n * \\@default 'undefined'\n * @type {?}\n */\nColumnDirective.prototype.uid;\n/**\n * Defines rules to validate data before creating and updating.\n * \\@default null\n * @type {?}\n */\nColumnDirective.prototype.validationRules;\n/**\n * Defines the method used to apply custom cell values from external function and display this on each cell rendered.\n * \\@default null\n * @type {?}\n */\nColumnDirective.prototype.valueAccessor;\n/**\n * If `visible` is set to false, hides the particular column. By default, columns are displayed.\n * \\@default true\n * @type {?}\n */\nColumnDirective.prototype.visible;\n/**\n * Defines the width of the column in pixels or percentage.\n * \\@default 'undefined'\n * @type {?}\n */\nColumnDirective.prototype.width;\n/**\n * Defines the column template that renders customized element in each cell of the column. \n * It accepts either [template string](https://ej2.syncfusion.com/documentation/common/template-engine/) or HTML element ID.\n * \\@default null\n * \\@asptype string\n * @type {?}\n */\nColumnDirective.prototype.template;\n/**\n * Defines the header template as string or HTML element ID which is used to add customized element in the column header.\n * \\@default null\n * \\@asptype string\n * @type {?}\n */\nColumnDirective.prototype.headerTemplate;\n/** @type {?} */\nColumnDirective.prototype.filter_itemTemplate;\n/**\n * Defines the filter template/UI that is used as filter for a particular column. \n * It accepts either template string or HTML element ID.\n * \\@aspignore\n * @type {?}\n */\nColumnDirective.prototype.filterTemplate;\n/** @type {?} */\nColumnDirective.prototype.commandsTemplate;\n/**\n * Defines the cell edit template that used as editor for a particular column. \n * It accepts either template string or HTML element ID.\n * \\@aspignore\n * @type {?}\n */\nColumnDirective.prototype.editTemplate;\n/** @type {?} */\nColumnDirective.prototype.viewContainerRef;\n}\n\n/**\n * Column Array Directive\n */\nexport class ColumnsDirective extends ArrayBase<ColumnsDirective> {\nconstructor() {\n super('columns');\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: 'ejs-treegrid>e-columns',\n queries: {\n children: new ContentChildren(ColumnDirective)\n },\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\nfunction ColumnsDirective_tsickle_Closure_declarations() {\n/** @type {?} */\nColumnsDirective.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nColumnsDirective.ctorParameters;\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n","import { Directive, ViewContainerRef, ContentChildren, ContentChild } from '@angular/core';\nimport { ComplexBase, ArrayBase, setValue } from '@syncfusion/ej2-angular-base';\nimport { Template } from '@syncfusion/ej2-angular-base';\n\n\nlet /** @type {?} */ input: string[] = ['allowEditing', 'allowFiltering', 'allowReordering', 'allowResizing', 'allowSorting', 'clipMode', 'columns', 'commands', 'customAttributes', 'defaultValue', 'disableHtmlEncode', 'displayAsCheckBox', 'edit', 'editTemplate', 'editType', 'field', 'filter', 'filterBarTemplate', 'filterTemplate', 'format', 'formatter', 'freeze', 'headerTemplate', 'headerText', 'headerTextAlign', 'hideAtMedia', 'isFrozen', 'isIdentity', 'isPrimaryKey', 'lockColumn', 'maxWidth', 'minWidth', 'showCheckbox', 'showColumnMenu', 'showInColumnChooser', 'sortComparer', 'template', 'textAlign', 'type', 'uid', 'validationRules', 'valueAccessor', 'visible', 'width'];\nlet /** @type {?} */ outputs: string[] = [];\n/**\n * `e-stacked-column` directive represent the stacked column of the Angular TreeGrid.\n * It must be contained in a StackedColumns component(`e-stacked-columns`). \n * ```html\n * <ejs-treegrid [dataSource]='data' allowPaging='true' allowSorting='true'> \n * <e-columns>\n * <e-column field='ID' width='100'></e-column>\n * <e-column headerText='Details' width='100'>\n * <e-stacked-columns>\n * <e-stacked-column field='Name' width='140'></e-stacked-column>\n * </e-stacked-columns>\n * </e-column>\n * </e-columns>\n * </ejs-treegrid>\n * ```\n */\nexport class StackedColumnDirective extends ComplexBase<StackedColumnDirective> {\npublic directivePropList: any;\n/**\n * Defines the data type of the column.\n * \\@default null\n */\npublic type: any;\n/**\n * If `allowEditing` set to false, then it disables editing of a particular column. \n * By default all columns are editable.\n * \\@default true\n */\npublic allowEditing: any;\n/**\n * If `allowFiltering` set to false, then it disables filtering option and filter bar element of a particular column. \n * By default all columns are filterable.\n * \\@default true\n */\npublic allowFiltering: any;\n/**\n * If `allowReordering` set to false, then it disables reorder of a particular column. \n * By default all columns can be reorder.\n * \\@default true\n */\npublic allowReordering: any;\n/**\n * If `allowResizing` set to false, it disables resize option of a particular column.\n * \\@default true\n */\npublic allowResizing: any;\n/**\n * If `allowSorting` set to false, then it disables sorting option of a particular column. \n * By default all columns are sortable.\n * \\@default true\n */\npublic allowSorting: any;\n/**\n * Defines the cell content's overflow mode. The available modes are \n * \n * also it will display tooltip while hover on ellipsis applied cell.\n * \\@default Syncfusion.EJ2.Grids.ClipMode.Ellipsis\n * \\@isenumeration true\n * \\@asptype Syncfusion.EJ2.Grids.ClipMode\n */\npublic clipMode: any;\n/**\n * Used to render multiple header rows(stacked headers) on TreeGrid header.\n * \\@default null\n */\npublic columns: any;\n/**\n * `commands` provides an option to display command buttons in every cell. \n * The available built-in command buttons are \n * * Edit - Edit the record. \n * * Delete - Delete the record. \n * * Save - Save the record. \n * * Cancel - Cancel the edit state.\n * \n * The following code example implements the custom command column.\n * ```html\n * <style type=\"text/css\" class=\"cssStyles\">\n * .details-icon:before\n * {\n * content:\"\\e74d\";\n * }\n * </style>\n * <div id=\"TreeGrid\"></div>\n * ```\n * ```typescript\n * var gridObj = new TreeGrid({\n * datasource: window.gridData,\n * columns : [\n * { field: 'CustomerID', headerText: 'Customer ID' },\n * { field: 'CustomerName', headerText: 'Customer Name' },\n * {commands: [{buttonOption:{content: 'Details', click: onClick, cssClass: details-icon}}], headerText: 'Customer Details'}\n * ]\n * gridObj.appendTo(\"#TreeGrid\");\n * ```\n * \n * \\@default null\n */\npublic commands: any;\n/**\n * The CSS styles and attributes of the content cells of a particular column can be customized.\n * \\@default null\n */\npublic customAttributes: any;\n/**\n * Defines default values for the component when adding a new record to the TreeGrid.\n * \\@default null\n */\npublic defaultValue: any;\n/**\n * If `disableHtmlEncode` is set to true, it encodes the HTML of the header and content cells.\n * \\@default true\n */\npublic disableHtmlEncode: any;\n/**\n * If `displayAsCheckBox` is set to true, it displays the column value as a check box instead of Boolean value.\n * \\@default false\n */\npublic displayAsCheckBox: any;\n/**\n * Defines the `IEditCell` object to customize default edit cell.\n * \\@default {}\n */\npublic edit: any;\n/**\n * Defines the type of component for editing.\n * \\@default 'stringedit'\n */\npublic editType: any;\n/**\n * Defines the field name of column which is mapped with mapping name of DataSource. \n * The bounded columns can be sort, filter etc., \n * The `field` name must be a valid JavaScript identifier, \n * the first character must be an alphabet and should not contain spaces and special characters.\n * \\@default 'undefined'\n */\npublic field: any;\n/**\n * Defines the filter options to customize filtering for the particular column.\n * \n * \\@default null\n * \n */\npublic filter: any;\n/**\n * The `filterBarTemplate` is used to add a custom component instead of default input component for filter bar. \n * It have create and read functions. \n * * create: It is used for creating custom components. \n * * read: It is used to perform custom filter action.\n * \n * ```html\n * <div id=\"TreeGrid\"></div>\n * ```\n * ```typescript\n * let gridObj: TreeGrid = new TreeGrid({\n * dataSource: filterData,\n * columns: [\n * { field: 'OrderID', headerText: 'Order ID' },\n * {\n * field: 'EmployeeID', filterBarTemplate: {\n * create: (args: { element: Element, column: Column }) => {\n * let input: HTMLInputElement = document.createElement('input');\n * input.id = 'EmployeeID';\n * input.type = 'text';\n * return input;\n * },\n * write: (args: { element: Element, column: Column }) => {\n * args.element.addEventListener('input', args.column.filterBarTemplate.read as EventListener);\n * },\n * read: (args: { element: HTMLInputElement, columnIndex: number, column: Column }) => {\n * gridObj.filterByColumn(args.element.id, 'equal', args.element.value);\n * }\n * }\n * }],\n * allowFiltering: true\n * });\n * gridObj.appendTo('#TreeGrid');\n * ```\n * \n * \\@default null\n */\npublic filterBarTemplate: any;\n/**\n * It is used to change display value with the given format and does not affect the original data. \n * Gets the format from the user which can be standard or custom \n * [`number`](https://ej2.syncfusion.com/documentation/common/internationalization/#supported-format-string) \n * and [`date`](https://ej2.syncfusion.com/documentation/common/internationalization/#supported-format-string-1) formats.\n * \\@default null\n * \\@asptype string\n */\npublic format: any;\n/**\n * Defines the method which is used to achieve custom formatting from an external function. \n * This function triggers before rendering of each cell.\n * \\@default null\n */\npublic formatter: any;\n/**\n * Defines which side the column need to freeze\n * \\@default Syncfusion.EJ2.Grids.FreezeDirection.None\n * \\@isenumeration true\n * \\@asptype Syncfusion.EJ2.Grids.FreezeDirection\n */\npublic freeze: any;\n/**\n * Defines the header text of column which is used to display in column header. \n * If `headerText` is not defined, then field name value will be assigned to header text.\n * \\@default 'undefined'\n */\npublic headerText: any;\n/**\n * Define the alignment of column header which is used to align the text of column header.\n * \\@default null\n * \\@aspdefaultvalueignore\n * \\@isenumeration true\n * \\@asptype Syncfusion.EJ2.Grids.TextAlign\n */\npublic headerTextAlign: any;\n/**\n * Column visibility can change based on [`Media Queries`](http://cssmediaqueries.com/what-are-css-media-queries.html). \n * `hideAtMedia` accepts only valid Media Queries.\n * \\@default 'undefined'\n */\npublic hideAtMedia: any;\n/**\n * You can use this property to freeze selected columns in grid.\n * \\@default false\n */\npublic isFrozen: any;\n/**\n * If `isIdentity` is set to true, then this column is considered as identity column.\n * \\@default false\n */\npublic isIdentity: any;\n/**\n * If `isPrimaryKey` is set to true, considers this column as the primary key constraint.\n * \\@default false\n */\npublic isPrimaryKey: any;\n/**\n * If `lockColumn` set to true, then it disables Reordering of a particular column. \n * The locked column will be moved to first position.\n * \\@default false\n */\npublic lockColumn: any;\n/**\n * Defines the maximum width of the column in pixels or percentage, which will restrict resizing beyond this pixels or percentage.\n * \\@default 'undefined'\n */\npublic maxWidth: any;\n/**\n * Defines the minimum width of the column in pixels or percentage.\n * \\@default 'undefined'\n */\npublic minWidth: any;\n/**\n * If `showCheckbox` set to true, then the checkboxes will be displayed in particular column.\n * \\@default false\n */\npublic showCheckbox: any;\n/**\n * If `showColumnMenu` set to false, then it disable the column menu of a particular column. \n * By default column menu will show for all columns\n * \\@default true\n */\npublic showColumnMenu: any;\n/**\n * If `showInColumnChooser` set to false, then hide the particular column in column chooser. \n * By default all columns are displayed in column Chooser.\n * \\@default true\n */\npublic showInColumnChooser: any;\n/**\n * Defines the sort comparer property.\n * \\@default 'undefined'\n */\npublic sortComparer: any;\n/**\n * Defines the alignment of the column in both header and content cells.\n * \\@default Syncfusion.EJ2.Grids.TextAlign.Left\n * \\@isenumeration true\n * \\@asptype Syncfusion.EJ2.Grids.TextAlign\n */\npublic textAlign: any;\n/**\n * Gets the unique identifier value of the column. It is used to get the object.\n * \\@default 'undefined'\n */\npublic uid: any;\n/**\n * Defines rules to validate data before creating and updating.\n * \\@default null\n */\npublic validationRules: any;\n/**\n * Defines the method used to apply custom cell values from external function and display this on each cell rendered.\n * \\@default null\n */\npublic valueAccessor: any;\n/**\n * If `visible` is set to false, hides the particular column. By default, columns are displayed.\n * \\@default true\n */\npublic visible: any;\n/**\n * Defines the width of the column in pixels or percentage.\n * \\@default 'undefined'\n */\npublic width: any;\n/**\n * Defines the column template that renders customized element in each cell of the column. \n * It accepts either [template string](https://ej2.syncfusion.com/documentation/common/template-engine/) or HTML element ID.\n * \\@default null\n * \\@asptype string\n */\n@Template()\n public template: any;\n/**\n * Defines the header template as string or HTML element ID which is used to add customized element in the column header.\n * \\@default null\n * \\@asptype string\n */\n@Template()\n public headerTemplate: any;\n \n @Template()\npublic filter_itemTemplate: any;\n/**\n * Defines the filter template/UI that is used as filter for a particular column. \n * It accepts either template string or HTML element ID.\n * \\@aspignore\n */\n@Template()\n public filterTemplate: any;\n \n @Template()\npublic commandsTemplate: any;\n/**\n * Defines the cell edit template that used as editor for a particular column. \n * It accepts either template string or HTML element ID.\n * \\@aspignore\n */\n@Template()\n public editTemplate: any;\n/**\n * @param {?} viewContainerRef\n */\nconstructor(private viewContainerRef:ViewContainerRef) {\n super();\n setValue('currentInstance', this, this.viewContainerRef);\n this.registerEvents(outputs);\n this.directivePropList = input;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: 'ejs-treegrid>e-columns>e-column>e-stacked-columns>e-stacked-column',\n inputs: input,\n outputs: outputs, \n queries: {\n\n }\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ViewContainerRef, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'template': [{ type: ContentChild, args: ['template', ] },],\n'headerTemplate': [{ type: ContentChild, args: ['headerTemplate', ] },],\n'filter_itemTemplate': [{ type: ContentChild, args: ['filterItemTemplate', ] },],\n'filterTemplate': [{ type: ContentChild, args: ['filterTemplate', ] },],\n'commandsTemplate': [{ type: ContentChild, args: ['commandsTemplate', ] },],\n'editTemplate': [{ type: ContentChild, args: ['editTemplate', ] },],\n};\n}\n\nfunction StackedColumnDirective_tsickle_Closure_declarations() {\n/** @type {?} */\nStackedColumnDirective.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nStackedColumnDirective.ctorParameters;\n/** @type {?} */\nStackedColumnDirective.propDecorators;\n/** @type {?} */\nStackedColumnDirective.prototype.directivePropList;\n/**\n * Defines the data type of the column.\n * \\@default null\n * @type {?}\n */\nStackedColumnDirective.prototype.type;\n/**\n * If `allowEditing` set to false, then it disables editing of a particular column. \n * By default all columns are editable.\n * \\@default true\n * @type {?}\n */\nStackedColumnDirective.prototype.allowEditing;\n/**\n * If `allowFiltering` set to false, then it disables filtering option and filter bar element of a particular column. \n * By default all columns are filterable.\n * \\@default true\n * @type {?}\n */\nStackedColumnDirective.prototype.allowFiltering;\n/**\n * If `allowReordering` set to false, then it disables reorder of a particular column. \n * By default all columns can be reorder.\n * \\@default true\n * @type {?}\n */\nStackedColumnDirective.prototype.allowReordering;\n/**\n * If `allowResizing` set to false, it disables resize option of a particular column.\n * \\@default true\n * @type {?}\n */\nStackedColumnDirective.prototype.allowResizing;\n/**\n * If `allowSorting` set to false, then it disables sorting option of a particular column. \n * By default all columns are sortable.\n * \\@default true\n * @type {?}\n */\nStackedColumnDirective.prototype.allowSorting;\n/**\n * Defines the cell content's overflow mode. The available modes are \n * \n * also it will display tooltip while hover on ellipsis applied cell.\n * \\@default Syncfusion.EJ2.Grids.ClipMode.Ellipsis\n * \\@isenumeration true\n * \\@asptype Syncfusion.EJ2.Grids.ClipMode\n * @type {?}\n */\nStackedColumnDirective.prototype.clipMode;\n/**\n * Used to render multiple header rows(stacked headers) on TreeGrid header.\n * \\@default null\n * @type {?}\n */\nStackedColumnDirective.prototype.columns;\n/**\n * `commands` provides an option to display command buttons in every cell. \n * The available built-in command buttons are \n * * Edit - Edit the record. \n * * Delete - Delete the record. \n * * Save - Save the record. \n * * Cancel - Cancel the edit state.\n * \n * The following code example implements the custom command column.\n * ```html\n * <style type=\"text/css\" class=\"cssStyles\">\n * .details-icon:before\n * {\n * content:\"\\e74d\";\n * }\n * </style>\n * <div id=\"TreeGrid\"></div>\n * ```\n * ```typescript\n * var gridObj = new TreeGrid({\n * datasource: window.gridData,\n * columns : [\n * { field: 'CustomerID', headerText: 'Customer ID' },\n * { field: 'CustomerName', headerText: 'Customer Name' },\n * {commands: [{buttonOption:{content: 'Details', click: onClick, cssClass: details-icon}}], headerText: 'Customer Details'}\n * ]\n * gridObj.appendTo(\"#TreeGrid\");\n * ```\n * \n * \\@default null\n * @type {?}\n */\nStackedColumnDirective.prototype.commands;\n/**\n * The CSS styles and attributes of the content cells of a particular column can be customized.\n * \\@default null\n * @type {?}\n */\nStackedColumnDirective.prototype.customAttributes;\n/**\n * Defines default values for the component when adding a new record to the TreeGrid.\n * \\@default null\n * @type {?}\n */\nStackedColumnDirective.prototype.defaultValue;\n/**\n * If `disableHtmlEncode` is set to true, it encodes the HTML of the header and content cells.\n * \\@default true\n * @type {?}\n */\nStackedColumnDirective.prototype.disableHtmlEncode;\n/**\n * If `displayAsCheckBox` is set to true, it displays the column value as a check box instead of Boolean value.\n * \\@default false\n * @type {?}\n */\nStackedColumnDirective.prototype.displayAsCheckBox;\n/**\n * Defines the `IEditCell` object to customize default edit cell.\n * \\@default {}\n * @type {?}\n */\nStackedColumnDirective.prototype.edit;\n/**\n * Defines the type of component for editing.\n * \\@default 'stringedit'\n * @type {?}\n */\nStackedColumnDirective.prototype.editType;\n/**\n * Defines the field name of column which is mapped with mapping name of DataSource. \n * The bounded columns can be sort, filter etc., \n * The `field` name must be a valid JavaScript identifier, \n * the first character must be an alphabet and should not contain spaces and special characters.\n * \\@default 'undefined'\n * @type {?}\n */\nStackedColumnDirective.prototype.field;\n/**\n * Defines the filter options to customize filtering for the particular column.\n * \n * \\@default null\n * \n * @type {?}\n */\nStackedColumnDirective.prototype.filter;\n/**\n * The `filterBarTemplate` is used to add a custom component instead of default input component for filter bar. \n * It have create and read functions. \n * * create: It is used for creating custom components. \n * * read: It is used to perform custom filter action.\n * \n * ```html\n * <div id=\"TreeGrid\"></div>\n * ```\n * ```typescript\n * let gridObj: TreeGrid = new TreeGrid({\n * dataSource: filterData,\n * columns: [\n * { field: 'OrderID', headerText: 'Order ID' },\n * {\n * field: 'EmployeeID', filterBarTemplate: {\n * create: (args: { element: Element, column: Column }) => {\n * let input: HTMLInputElement = document.createElement('input');\n * input.id = 'EmployeeID';\n * input.type = 'text';\n * return input;\n * },\n * write: (args: { element: Element, column: Column }) => {\n * args.element.addEventListener('input', args.column.filterBarTemplate.read as EventListener);\n * },\n * read: (args: { element: HTMLInputElement, columnIndex: number, column: Column }) => {\n * gridObj.filterByColumn(args.element.id, 'equal', args.element.value);\n * }\n * }\n * }],\n * allowFiltering: true\n * });\n * gridObj.appendTo('#TreeGrid');\n * ```\n * \n * \\@default null\n * @type {?}\n */\nStackedColumnDirective.prototype.filterBarTemplate;\n/**\n * It is used to change display value with the given format and does not affect the original data. \n * Gets the format from the user which can be standard or custom \n * [`number`](https://ej2.syncfusion.com/documentation/common/internationalization/#supported-format-string) \n * and [`date`](https://ej2.syncfusion.com/documentation/common/internationalization/#supported-format-string-1) formats.\n * \\@default null\n * \\@asptype string\n * @type {?}\n */\nStackedColumnDirective.prototype.format;\n/**\n * Defines the method which is used to achieve custom formatting from an external function. \n * This function triggers before rendering of each cell.\n * \\@default null\n * @type {?}\n */\nStackedColumnDirective.prototype.formatter;\n/**\n * Defines which side the column need to freeze\n * \\@default Syncfusion.EJ2.Grids.FreezeDirection.None\n * \\@isenumeration true\n * \\@asptype Syncfusion.EJ2.Grids.FreezeDirection\n * @type {?}\n */\nStackedColumnDirective.prototype.freeze;\n/**\n * Defines the header text of column which is used to display in column header. \n * If `headerText` is not defined, then field name value will be assigned to header text.\n * \\@default 'undefined'\n * @type {?}\n */\nStackedColumnDirective.prototype.headerText;\n/**\n * Define the alignment of column header which is used to align the text of column header.\n * \\@default null\n * \\@aspdefaultvalueignore\n * \\@isenumeration true\n * \\@asptype Syncfusion.EJ2.Grids.TextAlign\n * @type {?}\n */\nStackedColumnDirective.prototype.headerTextAlign;\n/**\n * Column visibility can change based on [`Media Queries`](http://cssmediaqueries.com/what-are-css-media-queries.html). \n * `hideAtMedia` accepts only valid Media Queries.\n * \\@default 'undefined'\n * @type {?}\n */\nStackedColumnDirective.prototype.hideAtMedia;\n/**\n * You can use this property to freeze selected columns in grid.\n * \\@default false\n * @type {?}\n */\nStackedColumnDirective.prototype.isFrozen;\n/**\n * If `isIdentity` is set to true, then this column is considered as identity column.\n * \\@default false\n * @type {?}\n */\nStackedColumnDirective.prototype.isIdentity;\n/**\n * If `isPrimaryKey` is set to true, considers this column as the primary key constraint.\n * \\@default false\n * @type {?}\n */\nStackedColumnDirective.prototype.isPrimaryKey;\n/**\n * If `lockColumn` set to true, then it disables Reordering of a particular column. \n * The locked column will be moved to first position.\n * \\@default false\n * @type {?}\n */\nStackedColumnDirective.prototype.lockColumn;\n/**\n * Defines the maximum width of the column in pixels or percentage, which will restrict resizing beyond this pixels or percentage.\n * \\@default 'undefined'\n * @type {?}\n */\nStackedColumnDirective.prototype.maxWidth;\n/**\n * Defines the minimum width of the column in pixels or percentage.\n * \\@default 'undefined'\n * @type {?}\n */\nStackedColumnDirective.prototype.minWidth;\n/**\n * If `showCheckbox` set to true, then the checkboxes will be displayed in particular column.\n * \\@default false\n * @type {?}\n */\nStackedColumnDirective.prototype.showCheckbox;\n/**\n * If `showColumnMenu` set to false, then it disable the column menu of a particular column. \n * By default column menu will show for all columns\n * \\@default true\n * @type {?}\n */\nStackedColumnDirective.prototype.showColumnMenu;\n/**\n * If `showInColumnChooser` set to false, then hide the particular column in column chooser. \n * By default all columns are displayed in column Chooser.\n * \\@default true\n * @type {?}\n */\nStackedColumnDirective.prototype.showInColumnChooser;\n/**\n * Defines the sort comparer property.\n * \\@default 'undefined'\n * @type {?}\n */\nStackedColumnDirective.prototype.sortComparer;\n/**\n * Defines the alignment of the column in both header and content cells.\n * \\@default Syncfusion.EJ2.Grids.TextAlign.Left\n * \\@isenumeration true\n * \\@asptype Syncfusion.EJ2.Grids.TextAlign\n * @type {?}\n */\nStackedColumnDirective.prototype.textAlign;\n/**\n * Gets the unique identifier value of the column. It is used to get the object.\n * \\@default 'undefined'\n * @type {?}\n */\nStackedColumnDirective.prototype.uid;\n/**\n * Defines rules to validate data before creating and updating.\n * \\@default null\n * @type {?}\n */\nStackedColumnDirective.prototype.validationRules;\n/**\n * Defines the method used to apply custom cell values from external function and display this on each cell rendered.\n * \\@default null\n * @type {?}\n */\nStackedColumnDirective.prototype.valueAccessor;\n/**\n * If `visible` is set to false, hides the particular column. By default, columns are displayed.\n * \\@default true\n * @type {?}\n */\nStackedColumnDirective.prototype.visible;\n/**\n * Defines the width of the column in pixels or percentage.\n * \\@default 'undefined'\n * @type {?}\n */\nStackedColumnDirective.prototype.width;\n/**\n * Defines the column template that renders customized element in each cell of the column. \n * It accepts either [template string](https://ej2.syncfusion.com/documentation/common/template-engine/) or HTML element ID.\n * \\@default null\n * \\@asptype string\n * @type {?}\n */\nStackedColumnDirective.prototype.template;\n/**\n * Defines the header template as string or HTML element ID which is used to add customized element in the column header.\n * \\@default null\n * \\@asptype string\n * @type {?}\n */\nStackedColumnDirective.prototype.headerTemplate;\n/** @type {?} */\nStackedColumnDirective.prototype.filter_itemTemplate;\n/**\n * Defines the filter template/UI that is used as filter for a particular column. \n * It accepts either template string or HTML element ID.\n * \\@aspignore\n * @type {?}\n */\nStackedColumnDirective.prototype.filterTemplate;\n/** @type {?} */\nStackedColumnDirective.prototype.commandsTemplate;\n/**\n * Defines the cell edit template that used as editor for a particular column. \n * It accepts either template string or HTML element ID.\n * \\@aspignore\n * @type {?}\n */\nStackedColumnDirective.prototype.editTemplate;\n/** @type {?} */\nStackedColumnDirective.prototype.viewContainerRef;\n}\n\n/**\n * StackedColumn Array Directive\n */\nexport class StackedColumnsDirective extends ArrayBase<StackedColumnsDirective> {\nconstructor() {\n super('columns');\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: 'ejs-treegrid>e-columns>e-column>e-stacked-columns',\n queries: {\n children: new ContentChildren(StackedColumnDirective)\n },\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\nfunction StackedColumnsDirective_tsickle_Closure_declarations() {\n/** @type {?} */\nStackedColumnsDirective.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nStackedColumnsDirective.ctorParameters;\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"],"names":["__metadata","__decorate","outputs","input"],"mappings":"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"}
package/CHANGELOG.md CHANGED
@@ -6,56 +6,66 @@
6
6
 
7
7
  #### Bug Fixes
8
8
 
9
- - `#I779257` - Fixed an issue where dataSource was not updating when new records were added using add record, even if it was initially empty.
10
- - `#I779836` - Resolved the issue where column properties were not updated and accessible during the initial rendering of the TreeGrid.
9
+ - `#I558418` - Resolved data re-rendering on scrolling up in virtualization.
10
+ - `#F187000` - Nested parent remains the expanded property when its root parent is collapsed in remote data with loadChildOnDemand.
11
+ - `#I572093` - `onclick` event of button bound properly while creating a button component in treegrid with HtmlEncode enabled.
11
12
 
12
- ## 31.2.10 (2025-11-13)
13
+ ## 25.1.38 (2024-04-02)
13
14
 
14
15
  ### Tree Grid
15
16
 
16
17
  #### Bug Fixes
17
18
 
18
- - `#I778677` - Authorization token now passes correctly to remote endpoints when using middleware, even with offline: false.
19
+ - `#I560767` - Resolved exception on initial rendering with column template in remote data.
19
20
 
20
- - `#I778677` - Authorization token now passes correctly to remote endpoints when using middleware, even with offline: false
21
-
22
- ## 31.2.5 (2025-11-04)
23
-
24
- ### Tree Grid
25
-
26
- #### Bug Fixes
27
-
28
- - `#I778239` - Resolved an issue that caused incorrect row ordering when multiple rows were moved simultaneously using drag-and-drop.
29
-
30
- ## 31.1.22 (2025-10-01)
21
+ ## 25.1.37 (2024-03-26)
31
22
 
32
23
  ### Tree Grid
33
24
 
34
25
  #### Bug Fixes
35
26
 
36
- - `#763935` - Fixed an issue where the child records position were wrong when expanding parent record in remote data case.
27
+ - `#F187000` - Resolved exception when the dataSource and the columns were not defined.
28
+ - `#I560889` - Added dropPosition in `RowDragEventArgs` of `rowDrop` event.
29
+ - `#I567688` - Resolved exception on refreshing the browser when persistence enabled.
37
30
 
38
- ## 31.1.20 (2025-09-10)
31
+ ## 25.1.35 (2024-03-15)
39
32
 
40
33
  ### Tree Grid
41
34
 
42
35
  #### Bug Fixes
43
36
 
44
- -`#I759266` - The `addRecord` method of the TreeGrid correctly adds a child record to the specified parent node.- `#F69767` - Fixed an issue where data was being duplicated when dragging and dropping items and refreshing in the treegrid.
37
+ - `#F50891` - Fixed issue where react template disappears in tree grid column while using `useState()`.
45
38
 
46
- ## 31.1.17 (2025-09-05)
39
+ ## 23.1.36 (2022-09-15)
47
40
 
48
41
  ### Tree Grid
49
42
 
50
43
  #### Features
51
44
 
52
- - Introduced sticky header support in the Tree Grid, allowing column headers to stay fixed during scrolling. This improves navigation and readability in large hierarchical data views. Explore the demo [here](https://ej2.syncfusion.com/demos/#/tailwind3/tree-grid/sticky-header.html).
45
+ - `#I341079` - Provided support for exporting data to PDF, CSV, and Excel formats using server-side functionality. Please find the demo [here](https://ej2.syncfusion.com/aspnetcore/TreeGrid/ServerSideExporting#/material3).
46
+ - Added support for the new `fixed` mode within the `freeze` property of column settings. When a column is set as `fixed`, it will stay within the viewport during horizontal scrolling, enhancing the user experience with improved visibility and efficiency.
53
47
 
54
- - Enhanced support for `LoadChildOnDemand` in the Tree Grid with remote data binding and virtual scrolling. This improvement enables efficient, on-demand retrieval of child records, ensuring smoother performance when working with large hierarchical datasets.
48
+ - Provided support for inline editing with virtualization enabled. Please find the demo [here](https://ej2.syncfusion.com/angular/demos/#/bootstrap5/treegrid/virtual-scrolling).
49
+ - `#I323425`, `#I332700`, `#I344742`, `#I375307` - Provided support for frozen column with virtualization enabled.
50
+ - `#F166825` - Provided support for infinite scrolling with observable binding.
55
51
 
56
- - Introduced sticky header support in the Tree Grid, allowing column headers to stay fixed during scrolling. This improves navigation and readability in large hierarchical data views. Explore the demo [here](https://ej2.syncfusion.com/angular/demos/#/tailwind3/treegrid/stickyheader).
52
+ #### Breaking Changes
57
53
 
58
- - Enhanced support for `LoadChildOnDemand` in the Tree Grid with remote data binding and virtual scrolling. This improvement enables efficient, on-demand retrieval of child records, ensuring smoother performance when working with large hierarchical datasets.
54
+ - Optimized the frozen columns feature in Tree Grid and thus changed the dom structure of tree grid from two table to single table architecture. Also, the following methods have been removed, and it's recommended to use the following alternatives instead.
55
+
56
+ | Removed methods | Suggested to use alternative methods |
57
+ |---|---|
58
+ | `getMoavableRows`, `getFrozenRightRows` | `getRows` |
59
+ | `getMovableRowByIndex`, `getFrozenRowByIndex`, `getFrozenRightRowByIndex` | `getRowByIndex` |
60
+ | `getMovableCellFromIndex`, `getFrozenRightCellFromIndex` | `getCellFromIndex` |
61
+ | `getMovableDataRows`, `getFrozenRightDataRows`, `getFrozenDataRows` | `getDataRows` |
62
+ | `getAllMovableDataRows`, `getAllFrozenDataRows`, `getAllFrozenRightDataRows` | `getAllDataRows` |
63
+ | `getMovableColumnHeaderByIndex`, `getFrozenRightColumnHeaderByIndex`, `getFrozenLeftColumnHeaderByIndex` | `getColumnHeaderByIndex` |
64
+ | `getFrozenRightHeader`, `getMovableHeader` | `getHeaderContent` |
65
+ | `getFrozenRightRowsObject`, `getMovableRwsObject` | `getRowsObject` |
66
+ | `getFrozenRightHeaderTbody`, `getMovableHeaderTbody`, `getFrozenHeaderTbody` | `getContent().querySelector(‘tbody’)` |
67
+ | `getFrozenLeftContentTbody`, `getFrozenRightContentTbody`, `getMovableContentTbody` | `getHeaderContent().querySelector(‘tbody’)` |
68
+ | `getFrozenRightContent`, `getMovableContent` | `getContent` |
59
69
 
60
70
  ## 20.2.36 (2022-06-30)
61
71
 
@@ -157,12 +167,12 @@
157
167
 
158
168
  - Now `data`, `row` these Tree Grid selection event arguments are get array values only when we perform multi selection. Please find modified event arguments and it types from the below table,
159
169
 
160
- `Properties` |`Type`
161
- -----|-----
162
- `data` | `Object or Object[]`
163
- `rowIndex` | `number`
164
- `rowIndexes` | `number[]`
165
- `row` | `Element or Element[]`
170
+ | `Properties` | `Type` |
171
+ |---|---|
172
+ | `data` | `Object or Object[]` |
173
+ | `rowIndex` | `number` |
174
+ | `rowIndexes` | `number[]` |
175
+ | `row` | `Element or Element[]` |
166
176
 
167
177
  ## 17.4.39 (2019-12-17)
168
178
 
@@ -228,8 +238,14 @@
228
238
  #### Bug Fixes
229
239
 
230
240
  - Expanding and Collapsing records is working fine when `pageSizeMode` is set as `All`.
231
- - `expandAtLevel`, `collapseAtLevel`, `expandAll` and `collapseAll` methods are working fine when `pageSizeMode` is set as `All`.- `actionBegin`, `actionComplete` and `actionFailure` events are triggered properly.
232
- - Additional parameters that are added using the `query` property of TreeGrid are passed to the server side when a parent record is expanded.## 19.1.54 (2021-03-30)
241
+ - `expandAtLevel`, `collapseAtLevel`, `expandAll` and `collapseAll` methods are working fine when `pageSizeMode` is set as `All`.
242
+
243
+
244
+ - `actionBegin`, `actionComplete` and `actionFailure` events are triggered properly.
245
+ - Additional parameters that are added using the `query` property of TreeGrid are passed to the server side when a parent record is expanded.
246
+
247
+
248
+ ## 19.1.54 (2021-03-30)
233
249
 
234
250
  ### Tree Grid
235
251
 
package/README.md CHANGED
@@ -14,7 +14,7 @@ The [Angular TreeGrid](https://www.syncfusion.com/angular-components/angular-tre
14
14
  <p align="center">
15
15
  Trusted by the world's leading companies
16
16
  <a href="https://www.syncfusion.com">
17
- <img src="https://ej2.syncfusion.com/home/images/trusted_companies.png" alt="Bootstrap logo">
17
+ <img src="https://raw.githubusercontent.com/SyncfusionExamples/nuget-img/master/syncfusion/syncfusion-trusted-companies.webp" alt="Bootstrap logo">
18
18
  </a>
19
19
  </p>
20
20
 
@@ -35,9 +35,9 @@ ng new my-app
35
35
  cd my-app
36
36
  ```
37
37
 
38
- ### Adding Syncfusion<sup>®</sup> Tree Grid package
38
+ ### Adding Syncfusion Tree Grid package
39
39
 
40
- All Syncfusion<sup>®</sup> angular packages are published in [npmjs.com](https://www.npmjs.com/~syncfusionorg) registry. To install angular tree grid package, use the following command.
40
+ All Syncfusion angular packages are published in [npmjs.com](https://www.npmjs.com/~syncfusionorg) registry. To install angular tree grid package, use the following command.
41
41
 
42
42
  ```bash
43
43
  ng add @syncfusion/ej2-angular-treegrid
@@ -47,13 +47,13 @@ The above command does the below configuration to your Angular app.
47
47
 
48
48
  * Adds `@syncfusion/ej2-angular-treegrid` package and its peer dependencies to your `package.json` file.
49
49
  * Imports the `TreeGridModule` in your application module `app.module.ts`.
50
- * Registers the Syncfusion<sup>®</sup> UI default theme (material) in the `angular.json` file.
50
+ * Registers the Syncfusion UI default theme (material) in the `angular.json` file.
51
51
 
52
- This makes it easy to add the Syncfusion<sup>®</sup> Angular TreeGrid module to your project and start using it in your application.
52
+ This makes it easy to add the Syncfusion Angular TreeGrid module to your project and start using it in your application.
53
53
 
54
54
  ### Add Tree Grid Component
55
55
 
56
- In **src/app/app.component.ts**, use `<ejs-treegrid>` selector in `template` attribute of `@Component` directive to render the Syncfusion<sup>®</sup> Angular TreeGrid component.
56
+ In **src/app/app.component.ts**, use `<ejs-treegrid>` selector in `template` attribute of `@Component` directive to render the Syncfusion Angular TreeGrid component.
57
57
 
58
58
  ```typescript
59
59
  import { Component, OnInit } from '@angular/core';
@@ -124,14 +124,6 @@ TreeGrid component is also offered in the following list of frameworks.
124
124
  * [RTL support](https://ej2.syncfusion.com/angular/documentation/treegrid/global-local/#right-to-left-rtl): Provides the right-to-left mode which aligns content in the TreeGrid component from right to left. This improves user experience and accessibility for those who work with RTL languages like Hebrew and Arabic.
125
125
  * [Localization](https://ej2.syncfusion.com/angular/documentation/treegrid/global-local/#localization): Provides inherent support to localize the UI.
126
126
 
127
- ## Resources
128
-
129
- * [Documentation](https://ej2.syncfusion.com/angular/documentation/treegrid/overview)
130
- * [Theme Studio](https://ej2.syncfusion.com/themestudio/)
131
- * [What's New](https://www.syncfusion.com/products/whatsnew/angular?utm_medium=listing&utm_source=github)
132
- * [Road Map](https://www.syncfusion.com/products/roadmap/angular)
133
- * [E-Books](https://www.syncfusion.com/succinctly-free-ebooks?searchkey=angular&type=all)
134
-
135
127
  ## Support
136
128
 
137
129
  Product support is available through the following mediums.
@@ -148,7 +140,7 @@ Check the changelog [here](https://github.com/syncfusion/ej2-angular-ui-componen
148
140
 
149
141
  ## License and copyright
150
142
 
151
- > This is a commercial product and requires a paid license for possession or use. Syncfusion’s licensed software, including this component, is subject to the terms and conditions of Syncfusion's [EULA](https://www.syncfusion.com/eula/es/). To acquire a license for 140+ [Angular UI components](https://www.syncfusion.com/angular-components), you can [purchase](https://www.syncfusion.com/sales/products) or [start a free 30-day trial](https://www.syncfusion.com/account/manage-trials/start-trials).
143
+ > This is a commercial product and requires a paid license for possession or use. Syncfusion’s licensed software, including this component, is subject to the terms and conditions of Syncfusion's [EULA](https://www.syncfusion.com/eula/es/). To acquire a license for 80+ [Angular UI components](https://www.syncfusion.com/angular-components), you can [purchase](https://www.syncfusion.com/sales/products) or [start a free 30-day trial](https://www.syncfusion.com/account/manage-trials/start-trials).
152
144
 
153
145
  > A free community [license](https://www.syncfusion.com/products/communitylicense) is also available for companies and individuals whose organizations have less than $1 million USD in annual gross revenue and five or fewer developers.
154
146