@progress/kendo-angular-treelist
Version:
Kendo UI TreeList for Angular - Display hierarchical data in an Angular tree grid view that supports sorting, filtering, paging, and much more.
292 lines (291 loc) • 14.9 kB
JavaScript
/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { TreeListComponent } from './treelist.component';
import { CustomMessagesComponent } from './localization/custom-messages.component';
import { ToolbarTemplateDirective } from "./rendering/toolbar/toolbar-template.directive";
import { ToolbarComponent } from "./rendering/toolbar/toolbar.component";
import { TreeListToolbarFocusableDirective } from './rendering/toolbar/toolbar-focusable.directive';
import { TemplateEditingDirective } from './editing-directives/template-editing.directive';
import { ReactiveEditingDirective } from './editing-directives/reactive-editing.directive';
import { InCellEditingDirective } from './editing-directives/in-cell-editing.directive';
import { HierarchyBindingDirective } from './binding-directives/hierarchy-binding.directive';
import { FlatBindingDirective } from './binding-directives/flat-binding.directive';
import { ExpandableDirective } from './expand-state/expandable.directive';
import { SelectableDirective } from './selection/selectable.directive';
import { TreeListSpacerComponent } from './rendering/common/spacer.component';
import { ColumnComponent } from './columns/column.component';
import { CheckboxColumnComponent } from './columns/checkbox-column.component';
import { SpanColumnComponent } from './columns/span-column.component';
import { ColumnGroupComponent } from './columns/column-group.component';
import { FocusableDirective } from "./navigation/focusable.directive";
import { RowReorderColumnComponent } from './columns/rowreorder-column.component';
import { CommandColumnComponent } from './columns/command-column.component';
import { NoRecordsTemplateDirective } from './rendering/no-records-template.directive';
import { CellTemplateDirective } from './rendering/cell-template.directive';
import { EditTemplateDirective } from './editing/edit-template.directive';
import { EditCommandDirective } from './editing/edit-command.directive';
import { CancelCommandDirective } from './editing/cancel-command.directive';
import { SaveCommandDirective } from './editing/save-command.directive';
import { RemoveCommandDirective } from './editing/remove-command.directive';
import { AddCommandDirective } from './editing/add-command.directive';
import { FooterTemplateDirective } from './rendering/footer-template.directive';
import { HeaderTemplateDirective } from './rendering/header/header-template.directive';
import { FilterRowComponent } from './filtering/filter-row.component';
import { FilterCellComponent } from './filtering/cell/filter-cell.component';
import { FilterCellTemplateDirective } from './filtering/cell/filter-cell-template.directive';
import { FilterCellOperatorsComponent } from './filtering/cell/filter-cell-operators.component';
import { StringFilterCellComponent } from './filtering/cell/string-filter-cell.component';
import { NumericFilterCellComponent } from './filtering/cell/numeric-filter-cell.component';
import { AutoCompleteFilterCellComponent } from './filtering/cell/autocomplete-filter-cell.component';
import { BooleanFilterCellComponent } from './filtering/cell/boolean-filter-cell.component';
import { DateFilterCellComponent } from './filtering/cell/date-filter-cell.component';
import { ContainsFilterOperatorComponent } from './filtering/operators/contains-filter-operator.component';
import { DoesNotContainFilterOperatorComponent } from './filtering/operators/not-contains-filter-operator.component';
import { EndsWithFilterOperatorComponent } from './filtering/operators/ends-with-filter-operator.component';
import { EqualFilterOperatorComponent } from './filtering/operators/eq-filter-operator.component';
import { IsEmptyFilterOperatorComponent } from './filtering/operators/is-empty-filter-operator.component';
import { IsNotEmptyFilterOperatorComponent } from './filtering/operators/is-not-empty-filter-operator.component';
import { IsNotNullFilterOperatorComponent } from './filtering/operators/is-not-null-filter-operator.component';
import { IsNullFilterOperatorComponent } from './filtering/operators/isnull-filter-operator.component';
import { NotEqualFilterOperatorComponent } from './filtering/operators/neq-filter-operator.component';
import { StartsWithFilterOperatorComponent } from './filtering/operators/starts-with-filter-operator.component';
import { GreaterFilterOperatorComponent } from './filtering/operators/gt-filter-operator.component';
import { GreaterOrEqualToFilterOperatorComponent } from './filtering/operators/gte-filter-operator.component';
import { LessFilterOperatorComponent } from './filtering/operators/lt-filter-operator.component';
import { LessOrEqualToFilterOperatorComponent } from './filtering/operators/lte-filter-operator.component';
import { AfterFilterOperatorComponent } from './filtering/operators/after-filter-operator.component';
import { AfterEqFilterOperatorComponent } from './filtering/operators/after-eq-filter-operator.component';
import { BeforeEqFilterOperatorComponent } from './filtering/operators/before-eq-filter-operator.component';
import { BeforeFilterOperatorComponent } from './filtering/operators/before-filter-operator.component';
import { StringFilterMenuComponent } from './filtering/menu/string-filter-menu.component';
import { FilterMenuTemplateDirective } from './filtering/menu/filter-menu-template.directive';
import { NumericFilterMenuComponent } from './filtering/menu/numeric-filter-menu.component';
import { DateFilterMenuComponent } from './filtering/menu/date-filter-menu.component';
import { BooleanFilterMenuComponent } from './filtering/menu/boolean-filter-menu.component';
import { ColumnChooserComponent } from './column-menu/column-chooser.component';
import { ColumnMenuFilterComponent } from './column-menu/column-menu-filter.component';
import { ColumnMenuItemComponent } from './column-menu/column-menu-item.component';
import { ColumnMenuItemContentTemplateDirective } from './column-menu/column-menu-item-content-template.directive';
import { ColumnMenuSortComponent } from './column-menu/column-menu-sort.component';
import { ColumnMenuLockComponent } from './column-menu/column-menu-lock.component';
import { ColumnMenuChooserComponent } from './column-menu/column-menu-chooser.component';
import { ColumnMenuAutoSizeAllColumnsComponent } from "./column-menu/column-menu-autosize-all.component";
import { ColumnMenuAutoSizeColumnComponent } from "./column-menu/column-menu-autosize.component";
import { ColumnMenuTemplateDirective } from './column-menu/column-menu-template.directive';
import { ColumnMenuComponent } from './column-menu/column-menu.component';
import { LogicalCellDirective } from './navigation/logical-cell.directive';
import { LogicalRowDirective } from './navigation/logical-row.directive';
import { ColGroupComponent } from './rendering/common/col-group.component';
import { ResizableContainerDirective } from './layout/resizable.directive';
import { FieldAccessorPipe } from './rendering/common/field-accessor.pipe';
import { LoadingComponent } from './rendering/common/loading.component';
import { TemplateContextDirective } from '@progress/kendo-angular-common';
// Excel Export
import { ExcelComponent } from './excel/excel.component';
import { ExcelCommandDirective } from './excel/excel-command.directive';
import { ExcelCommandToolbarDirective } from './excel/excel-command-tool.directive';
import { ColumnComponent as ExcelColumnComponent, ColumnGroupComponent as ExcelColumnGroupComponent, FooterTemplateDirective as ExcelFooterTemplateDirective, GroupFooterTemplateDirective as ExcelGroupFooterTemplateDirective, GroupHeaderTemplateDirective as ExcelGroupHeaderTemplateDirective, GroupHeaderColumnTemplateDirective as ExcelGroupHeaderColumnTemplateDirective } from '@progress/kendo-angular-excel-export';
import { FilterInputDirective } from './filtering/filter-input.directive';
import { FilterCellHostDirective } from './filtering/cell/filter-cell-host.directive';
import { FilterCellWrapperComponent } from './filtering/cell/filter-cell-wrapper.component';
import { FilterMenuComponent } from './filtering/menu/filter-menu.component';
import { FilterMenuContainerComponent } from './filtering/menu/filter-menu-container.component';
import { FilterMenuInputWrapperComponent } from './filtering/menu/filter-menu-input-wrapper.component';
import { StringFilterMenuInputComponent } from './filtering/menu/string-filter-menu-input.component';
import { DateFilterMenuInputComponent } from './filtering/menu/date-filter-menu-input.component';
import { NumericFilterMenuInputComponent } from './filtering/menu/numeric-filter-menu-input.component';
import { FilterMenuHostDirective } from './filtering/menu/filter-menu-host.directive';
import { PDFComponent } from './pdf/pdf.component';
import { PDFMarginComponent } from './pdf/pdf-margin.component';
import { PDFCommandDirective } from './pdf/pdf-command.directive';
import { PDFTemplateDirective } from './pdf/pdf-template.directive';
import { HeaderComponent } from './rendering/header/header.component';
import { ColumnHandleDirective } from './column-resizing/column-handle.directive';
import { CellComponent } from './rendering/cell.component';
import { BooleanFilterRadioButtonDirective } from './filtering/menu/filter-radio-button.directive';
import { AddCommandToolbarDirective } from './editing/add-command-tool.directive';
import { PDFCommandToolbarDirective } from './pdf/pdf-command-tool.directive';
import { ColumnMenuItemDirective } from './column-menu/column-menu-item.directive';
/**
* @hidden
* Utility array that contains the former Shared module exports.
*/
export const SHARED_EXPORTS = [
ColumnComponent,
ColumnGroupComponent,
LogicalCellDirective,
LogicalRowDirective,
FocusableDirective,
ColGroupComponent,
ResizableContainerDirective,
TemplateContextDirective,
FieldAccessorPipe,
SpanColumnComponent,
LoadingComponent,
FilterCellOperatorsComponent,
CheckboxColumnComponent,
RowReorderColumnComponent
];
/**
* @hidden
* Utility array that contains the Body module exports.
*/
export const BODY_EXPORTS = [
CommandColumnComponent,
CellTemplateDirective,
CellComponent,
NoRecordsTemplateDirective,
EditTemplateDirective,
EditCommandDirective,
CancelCommandDirective,
SaveCommandDirective,
RemoveCommandDirective,
AddCommandDirective,
AddCommandToolbarDirective,
FooterTemplateDirective
];
/**
* @hidden
* Utility array that contains the Header module exports.
*/
export const HEADER_EXPORTS = [
HeaderComponent,
HeaderTemplateDirective,
ColumnHandleDirective
];
/**
* @hidden
* Utility array that contains the former SharedFilter module exports.
*/
export const SHARED_FILTER_EXPORTS = [
FilterCellOperatorsComponent,
ContainsFilterOperatorComponent,
DoesNotContainFilterOperatorComponent,
EndsWithFilterOperatorComponent,
EqualFilterOperatorComponent,
IsEmptyFilterOperatorComponent,
IsNotEmptyFilterOperatorComponent,
IsNotNullFilterOperatorComponent,
IsNullFilterOperatorComponent,
NotEqualFilterOperatorComponent,
StartsWithFilterOperatorComponent,
GreaterFilterOperatorComponent,
GreaterOrEqualToFilterOperatorComponent,
LessFilterOperatorComponent,
LessOrEqualToFilterOperatorComponent,
AfterFilterOperatorComponent,
AfterEqFilterOperatorComponent,
BeforeEqFilterOperatorComponent,
BeforeFilterOperatorComponent,
FilterInputDirective,
...SHARED_EXPORTS,
];
/**
* @hidden
* Utility array that contains the former FilterRow module exports.
*/
export const ROW_FILTER_EXPORTS = [
FilterRowComponent,
FilterCellComponent,
FilterCellTemplateDirective,
StringFilterCellComponent,
NumericFilterCellComponent,
AutoCompleteFilterCellComponent,
BooleanFilterCellComponent,
FilterCellHostDirective,
FilterCellWrapperComponent,
DateFilterCellComponent,
...SHARED_FILTER_EXPORTS
];
/**
* @hidden
* Utility array that contains the former FilterMenu module exports
*/
export const FILTER_MENU_EXPORTS = [
FilterMenuComponent,
FilterMenuContainerComponent,
FilterMenuInputWrapperComponent,
StringFilterMenuInputComponent,
StringFilterMenuComponent,
FilterMenuTemplateDirective,
NumericFilterMenuComponent,
NumericFilterMenuInputComponent,
DateFilterMenuInputComponent,
DateFilterMenuComponent,
FilterMenuHostDirective,
BooleanFilterMenuComponent,
BooleanFilterRadioButtonDirective
];
/**
* @hidden
* Utility array that contains the former ColumnMenu module exports.
*/
export const COLUMN_MENU_EXPORTS = [
ColumnChooserComponent,
ColumnMenuChooserComponent,
ColumnMenuFilterComponent,
ColumnMenuItemComponent,
ColumnMenuItemContentTemplateDirective,
ColumnMenuSortComponent,
ColumnMenuComponent,
ColumnMenuLockComponent,
ColumnMenuTemplateDirective,
ColumnMenuItemDirective,
ColumnMenuAutoSizeColumnComponent,
ColumnMenuAutoSizeAllColumnsComponent
];
/**
* @hidden
* Utility array that contains the Excel module exports.
*/
export const KENDO_TREELIST_EXCEL_EXPORT = [
ExcelComponent,
ExcelCommandDirective,
ExcelCommandToolbarDirective,
ExcelColumnComponent,
ExcelColumnGroupComponent,
ExcelFooterTemplateDirective,
ExcelGroupFooterTemplateDirective,
ExcelGroupHeaderColumnTemplateDirective,
ExcelGroupHeaderTemplateDirective
];
/**
* @hidden
* Utility array that contains the PDF module exports.
*/
export const KENDO_TREELIST_PDF_EXPORT = [
PDFComponent,
PDFMarginComponent,
PDFCommandDirective,
PDFTemplateDirective,
PDFCommandToolbarDirective
];
/**
* Utility array that contains all `@progress/kendo-angular-treelist`-related components and directives.
* Use it to import all TreeList components and directives into a standalone Angular application.
*/
export const KENDO_TREELIST = [
TreeListComponent,
ToolbarTemplateDirective,
ToolbarComponent,
TreeListSpacerComponent,
CustomMessagesComponent,
TemplateEditingDirective,
ReactiveEditingDirective,
InCellEditingDirective,
HierarchyBindingDirective,
FlatBindingDirective,
ExpandableDirective,
SelectableDirective,
TreeListToolbarFocusableDirective,
...SHARED_EXPORTS,
...BODY_EXPORTS,
...HEADER_EXPORTS,
...ROW_FILTER_EXPORTS,
...FILTER_MENU_EXPORTS,
...COLUMN_MENU_EXPORTS,
...KENDO_TREELIST_EXCEL_EXPORT,
...KENDO_TREELIST_PDF_EXPORT
];