devextreme-angular
Version:
Angular UI and visualization components based on DevExtreme widgets
1,669 lines (1,320 loc) • 299 kB
JavaScript
/*!
* devextreme-angular
* Version: 25.1.4
* Build date: Tue Aug 05 2025
*
* Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
*
* This software may be modified and distributed under the terms
* of the MIT license. See the LICENSE file in the root of the project for details.
*
* https://github.com/DevExpress/devextreme-angular
*/
/* tslint:disable:max-line-length */
import { TransferState, Component, NgModule, ElementRef, NgZone, PLATFORM_ID, Inject, Input, Output, EventEmitter, ContentChildren, QueryList } from '@angular/core';
import DxTreeList from 'devextreme/ui/tree_list';
import { DxComponent, DxTemplateHost, DxIntegrationModule, DxTemplateModule, NestedOptionHost, IterableDifferHelper, WatcherHelper } from 'devextreme-angular/core';
import { DxoColumnChooserModule } from 'devextreme-angular/ui/nested';
import { DxoPositionModule } from 'devextreme-angular/ui/nested';
import { DxoAtModule } from 'devextreme-angular/ui/nested';
import { DxoBoundaryOffsetModule } from 'devextreme-angular/ui/nested';
import { DxoCollisionModule } from 'devextreme-angular/ui/nested';
import { DxoMyModule } from 'devextreme-angular/ui/nested';
import { DxoOffsetModule } from 'devextreme-angular/ui/nested';
import { DxoSearchModule } from 'devextreme-angular/ui/nested';
import { DxoSelectionModule } from 'devextreme-angular/ui/nested';
import { DxoColumnFixingModule } from 'devextreme-angular/ui/nested';
import { DxoIconsModule } from 'devextreme-angular/ui/nested';
import { DxoTextsModule } from 'devextreme-angular/ui/nested';
import { DxiColumnModule } from 'devextreme-angular/ui/nested';
import { DxiButtonModule } from 'devextreme-angular/ui/nested';
import { DxoLookupModule } from 'devextreme-angular/ui/nested';
import { DxoFormatModule } from 'devextreme-angular/ui/nested';
import { DxoFormItemModule } from 'devextreme-angular/ui/nested';
import { DxoLabelModule } from 'devextreme-angular/ui/nested';
import { DxiValidationRuleModule } from 'devextreme-angular/ui/nested';
import { DxoHeaderFilterModule } from 'devextreme-angular/ui/nested';
import { DxoEditingModule } from 'devextreme-angular/ui/nested';
import { DxiChangeModule } from 'devextreme-angular/ui/nested';
import { DxoFormModule } from 'devextreme-angular/ui/nested';
import { DxoColCountByScreenModule } from 'devextreme-angular/ui/nested';
import { DxiItemModule } from 'devextreme-angular/ui/nested';
import { DxoTabPanelOptionsModule } from 'devextreme-angular/ui/nested';
import { DxiTabModule } from 'devextreme-angular/ui/nested';
import { DxoButtonOptionsModule } from 'devextreme-angular/ui/nested';
import { DxoPopupModule } from 'devextreme-angular/ui/nested';
import { DxoAnimationModule } from 'devextreme-angular/ui/nested';
import { DxoHideModule } from 'devextreme-angular/ui/nested';
import { DxoFromModule } from 'devextreme-angular/ui/nested';
import { DxoToModule } from 'devextreme-angular/ui/nested';
import { DxoShowModule } from 'devextreme-angular/ui/nested';
import { DxoFilterBuilderModule } from 'devextreme-angular/ui/nested';
import { DxiCustomOperationModule } from 'devextreme-angular/ui/nested';
import { DxiFieldModule } from 'devextreme-angular/ui/nested';
import { DxoFilterOperationDescriptionsModule } from 'devextreme-angular/ui/nested';
import { DxoGroupOperationDescriptionsModule } from 'devextreme-angular/ui/nested';
import { DxoFilterBuilderPopupModule } from 'devextreme-angular/ui/nested';
import { DxoFilterPanelModule } from 'devextreme-angular/ui/nested';
import { DxoFilterRowModule } from 'devextreme-angular/ui/nested';
import { DxoOperationDescriptionsModule } from 'devextreme-angular/ui/nested';
import { DxoKeyboardNavigationModule } from 'devextreme-angular/ui/nested';
import { DxoLoadPanelModule } from 'devextreme-angular/ui/nested';
import { DxoPagerModule } from 'devextreme-angular/ui/nested';
import { DxoPagingModule } from 'devextreme-angular/ui/nested';
import { DxoRemoteOperationsModule } from 'devextreme-angular/ui/nested';
import { DxoRowDraggingModule } from 'devextreme-angular/ui/nested';
import { DxoCursorOffsetModule } from 'devextreme-angular/ui/nested';
import { DxoScrollingModule } from 'devextreme-angular/ui/nested';
import { DxoSearchPanelModule } from 'devextreme-angular/ui/nested';
import { DxoSortingModule } from 'devextreme-angular/ui/nested';
import { DxoStateStoringModule } from 'devextreme-angular/ui/nested';
import { DxoToolbarModule } from 'devextreme-angular/ui/nested';
import { DxoTreeListAnimationModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxiTreeListAsyncRuleModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListAtModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListBoundaryOffsetModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxiTreeListButtonModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxiTreeListChangeModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListColCountByScreenModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListCollisionModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxiTreeListColumnModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListColumnChooserModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListColumnChooserSearchModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListColumnChooserSelectionModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListColumnFixingModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListColumnFixingTextsModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListColumnHeaderFilterModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListColumnHeaderFilterSearchModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListColumnLookupModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxiTreeListCompareRuleModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListCursorOffsetModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxiTreeListCustomOperationModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxiTreeListCustomRuleModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListEditingModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListEditingTextsModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxiTreeListEmailRuleModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxiTreeListFieldModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListFieldLookupModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListFilterBuilderModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListFilterBuilderPopupModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListFilterOperationDescriptionsModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListFilterPanelModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListFilterPanelTextsModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListFilterRowModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListFormModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListFormatModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListFormItemModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListFromModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListGroupOperationDescriptionsModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListHeaderFilterModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListHideModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListIconsModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxiTreeListItemModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListKeyboardNavigationModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListLabelModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListLoadPanelModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListLookupModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListMyModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxiTreeListNumericRuleModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListOffsetModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListOperationDescriptionsModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListPagerModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListPagingModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxiTreeListPatternRuleModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListPopupModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListPositionModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxiTreeListRangeRuleModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListRemoteOperationsModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxiTreeListRequiredRuleModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListRowDraggingModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListScrollingModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListSearchModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListSearchPanelModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListSelectionModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListShowModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListSortingModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListStateStoringModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxiTreeListStringLengthRuleModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListTextsModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListToModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListToolbarModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxiTreeListToolbarItemModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListTreeListHeaderFilterModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListTreeListHeaderFilterSearchModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListTreeListHeaderFilterTextsModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxoTreeListTreeListSelectionModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxiTreeListValidationRuleModule } from 'devextreme-angular/ui/tree-list/nested';
import { DxiColumnComponent } from 'devextreme-angular/ui/nested';
import { DxiTreeListColumnComponent } from 'devextreme-angular/ui/tree-list/nested';
import * as i0 from "@angular/core";
import * as i1 from "devextreme-angular/core";
/**
* The TreeList is a UI component that represents data from a local or remote source in the form of a multi-column tree view. This UI component offers such features as sorting, filtering, editing, selection, etc.
*/
export class DxTreeListComponent extends DxComponent {
_watcherHelper;
_idh;
instance = null;
/**
* Specifies the shortcut key that sets focus on the UI component.
*/
get accessKey() {
return this._getOption('accessKey');
}
set accessKey(value) {
this._setOption('accessKey', value);
}
/**
* Specifies whether the UI component changes its visual state as a result of user interaction.
*/
get activeStateEnabled() {
return this._getOption('activeStateEnabled');
}
set activeStateEnabled(value) {
this._setOption('activeStateEnabled', value);
}
/**
* Specifies whether a user can reorder columns.
*/
get allowColumnReordering() {
return this._getOption('allowColumnReordering');
}
set allowColumnReordering(value) {
this._setOption('allowColumnReordering', value);
}
/**
* Specifies whether a user can resize columns.
*/
get allowColumnResizing() {
return this._getOption('allowColumnResizing');
}
set allowColumnResizing(value) {
this._setOption('allowColumnResizing', value);
}
/**
* Specifies whether all rows are expanded initially.
*/
get autoExpandAll() {
return this._getOption('autoExpandAll');
}
set autoExpandAll(value) {
this._setOption('autoExpandAll', value);
}
/**
* Automatically scrolls the component to the focused row when the focusedRowKey is changed.
*/
get autoNavigateToFocusedRow() {
return this._getOption('autoNavigateToFocusedRow');
}
set autoNavigateToFocusedRow(value) {
this._setOption('autoNavigateToFocusedRow', value);
}
/**
* Specifies whether data should be cached.
*/
get cacheEnabled() {
return this._getOption('cacheEnabled');
}
set cacheEnabled(value) {
this._setOption('cacheEnabled', value);
}
/**
* Enables a hint that appears when a user hovers the mouse pointer over a cell with truncated content.
*/
get cellHintEnabled() {
return this._getOption('cellHintEnabled');
}
set cellHintEnabled(value) {
this._setOption('cellHintEnabled', value);
}
/**
* Specifies whether columns should adjust their widths to the content.
*/
get columnAutoWidth() {
return this._getOption('columnAutoWidth');
}
set columnAutoWidth(value) {
this._setOption('columnAutoWidth', value);
}
/**
* Configures the column chooser.
*/
get columnChooser() {
return this._getOption('columnChooser');
}
set columnChooser(value) {
this._setOption('columnChooser', value);
}
/**
* Configures column fixing.
*/
get columnFixing() {
return this._getOption('columnFixing');
}
set columnFixing(value) {
this._setOption('columnFixing', value);
}
/**
* Specifies whether the UI component should hide columns to adapt to the screen or container size. Ignored if allowColumnResizing is true and columnResizingMode is 'widget'.
*/
get columnHidingEnabled() {
return this._getOption('columnHidingEnabled');
}
set columnHidingEnabled(value) {
this._setOption('columnHidingEnabled', value);
}
/**
* Specifies the minimum width of columns.
*/
get columnMinWidth() {
return this._getOption('columnMinWidth');
}
set columnMinWidth(value) {
this._setOption('columnMinWidth', value);
}
/**
* Specifies how the UI component resizes columns. Applies only if allowColumnResizing is true.
*/
get columnResizingMode() {
return this._getOption('columnResizingMode');
}
set columnResizingMode(value) {
this._setOption('columnResizingMode', value);
}
/**
* Configures columns.
*/
get columns() {
return this._getOption('columns');
}
set columns(value) {
this._setOption('columns', value);
}
/**
* Specifies the width for all data columns. Has a lower priority than the column.width property.
*/
get columnWidth() {
return this._getOption('columnWidth');
}
set columnWidth(value) {
this._setOption('columnWidth', value);
}
/**
* Customizes columns after they are created.
*/
get customizeColumns() {
return this._getOption('customizeColumns');
}
set customizeColumns(value) {
this._setOption('customizeColumns', value);
}
/**
* Binds the UI component to data.
*/
get dataSource() {
return this._getOption('dataSource');
}
set dataSource(value) {
this._setOption('dataSource', value);
}
/**
* Notifies the UI component of the used data structure.
*/
get dataStructure() {
return this._getOption('dataStructure');
}
set dataStructure(value) {
this._setOption('dataStructure', value);
}
/**
* Specifies the format in which date-time values should be sent to the server.
*/
get dateSerializationFormat() {
return this._getOption('dateSerializationFormat');
}
set dateSerializationFormat(value) {
this._setOption('dateSerializationFormat', value);
}
/**
* Specifies whether the UI component responds to user interaction.
*/
get disabled() {
return this._getOption('disabled');
}
set disabled(value) {
this._setOption('disabled', value);
}
/**
* Configures editing.
*/
get editing() {
return this._getOption('editing');
}
set editing(value) {
this._setOption('editing', value);
}
/**
* Specifies the global attributes to be attached to the UI component's container element.
*/
get elementAttr() {
return this._getOption('elementAttr');
}
set elementAttr(value) {
this._setOption('elementAttr', value);
}
/**
* Indicates whether to show the error row.
*/
get errorRowEnabled() {
return this._getOption('errorRowEnabled');
}
set errorRowEnabled(value) {
this._setOption('errorRowEnabled', value);
}
/**
* Specifies keys of the initially expanded rows.
*/
get expandedRowKeys() {
return this._getOption('expandedRowKeys');
}
set expandedRowKeys(value) {
this._setOption('expandedRowKeys', value);
}
/**
* Specifies whether nodes appear expanded or collapsed after filtering is applied.
*/
get expandNodesOnFiltering() {
return this._getOption('expandNodesOnFiltering');
}
set expandNodesOnFiltering(value) {
this._setOption('expandNodesOnFiltering', value);
}
/**
* Configures the integrated filter builder.
*/
get filterBuilder() {
return this._getOption('filterBuilder');
}
set filterBuilder(value) {
this._setOption('filterBuilder', value);
}
/**
* Configures the popup in which the integrated filter builder is shown.
*/
get filterBuilderPopup() {
return this._getOption('filterBuilderPopup');
}
set filterBuilderPopup(value) {
this._setOption('filterBuilderPopup', value);
}
/**
* Specifies whether filter and search results should include matching rows only, matching rows with ancestors, or matching rows with ancestors and descendants (full branch).
*/
get filterMode() {
return this._getOption('filterMode');
}
set filterMode(value) {
this._setOption('filterMode', value);
}
/**
* Configures the filter panel.
*/
get filterPanel() {
return this._getOption('filterPanel');
}
set filterPanel(value) {
this._setOption('filterPanel', value);
}
/**
* Configures the filter row.
*/
get filterRow() {
return this._getOption('filterRow');
}
set filterRow(value) {
this._setOption('filterRow', value);
}
/**
* Specifies whether to synchronize the filter row, header filter, and filter builder. The synchronized filter expression is stored in the filterValue property.
*/
get filterSyncEnabled() {
return this._getOption('filterSyncEnabled');
}
set filterSyncEnabled(value) {
this._setOption('filterSyncEnabled', value);
}
/**
* Specifies a filter expression.
*/
get filterValue() {
return this._getOption('filterValue');
}
set filterValue(value) {
this._setOption('filterValue', value);
}
/**
* The index of the column that contains the focused data cell. This index is taken from the columns array.
*/
get focusedColumnIndex() {
return this._getOption('focusedColumnIndex');
}
set focusedColumnIndex(value) {
this._setOption('focusedColumnIndex', value);
}
/**
* Specifies whether the focused row feature is enabled.
*/
get focusedRowEnabled() {
return this._getOption('focusedRowEnabled');
}
set focusedRowEnabled(value) {
this._setOption('focusedRowEnabled', value);
}
/**
* Specifies or indicates the focused data row's index.
*/
get focusedRowIndex() {
return this._getOption('focusedRowIndex');
}
set focusedRowIndex(value) {
this._setOption('focusedRowIndex', value);
}
/**
* Specifies initially or currently focused grid row's key.
*/
get focusedRowKey() {
return this._getOption('focusedRowKey');
}
set focusedRowKey(value) {
this._setOption('focusedRowKey', value);
}
/**
* Specifies which data field defines whether the node has children.
*/
get hasItemsExpr() {
return this._getOption('hasItemsExpr');
}
set hasItemsExpr(value) {
this._setOption('hasItemsExpr', value);
}
/**
* Configures the header filter feature.
*/
get headerFilter() {
return this._getOption('headerFilter');
}
set headerFilter(value) {
this._setOption('headerFilter', value);
}
/**
* Specifies the UI component's height.
*/
get height() {
return this._getOption('height');
}
set height(value) {
this._setOption('height', value);
}
/**
* Specifies whether to highlight rows and cells with edited data. repaintChangesOnly should be true.
*/
get highlightChanges() {
return this._getOption('highlightChanges');
}
set highlightChanges(value) {
this._setOption('highlightChanges', value);
}
/**
* Specifies text for a hint that appears when a user pauses on the UI component.
*/
get hint() {
return this._getOption('hint');
}
set hint(value) {
this._setOption('hint', value);
}
/**
* Specifies whether the UI component changes its state when a user pauses on it.
*/
get hoverStateEnabled() {
return this._getOption('hoverStateEnabled');
}
set hoverStateEnabled(value) {
this._setOption('hoverStateEnabled', value);
}
/**
* Specifies which data field contains nested items. Set this property when your data has a hierarchical structure.
*/
get itemsExpr() {
return this._getOption('itemsExpr');
}
set itemsExpr(value) {
this._setOption('itemsExpr', value);
}
/**
* Configures keyboard navigation.
*/
get keyboardNavigation() {
return this._getOption('keyboardNavigation');
}
set keyboardNavigation(value) {
this._setOption('keyboardNavigation', value);
}
/**
* Specifies the key property (or properties) that provide(s) key values to access data items. Each key value must be unique.
*/
get keyExpr() {
return this._getOption('keyExpr');
}
set keyExpr(value) {
this._setOption('keyExpr', value);
}
/**
* Configures the load panel.
*/
get loadPanel() {
return this._getOption('loadPanel');
}
set loadPanel(value) {
this._setOption('loadPanel', value);
}
/**
* Specifies a text string shown when the widget does not display any data.
*/
get noDataText() {
return this._getOption('noDataText');
}
set noDataText(value) {
this._setOption('noDataText', value);
}
/**
* Configures the pager.
*/
get pager() {
return this._getOption('pager');
}
set pager(value) {
this._setOption('pager', value);
}
/**
* Configures paging.
*/
get paging() {
return this._getOption('paging');
}
set paging(value) {
this._setOption('paging', value);
}
/**
* Specifies which data field provides parent keys.
*/
get parentIdExpr() {
return this._getOption('parentIdExpr');
}
set parentIdExpr(value) {
this._setOption('parentIdExpr', value);
}
/**
* Notifies the TreeList of the server's data processing operations. Applies only if data has a plain structure.
*/
get remoteOperations() {
return this._getOption('remoteOperations');
}
set remoteOperations(value) {
this._setOption('remoteOperations', value);
}
/**
* Specifies whether to render the filter row, command columns, and columns with showEditorAlways set to true after other elements.
*/
get renderAsync() {
return this._getOption('renderAsync');
}
set renderAsync(value) {
this._setOption('renderAsync', value);
}
/**
* Specifies whether to repaint only those cells whose data changed.
*/
get repaintChangesOnly() {
return this._getOption('repaintChangesOnly');
}
set repaintChangesOnly(value) {
this._setOption('repaintChangesOnly', value);
}
/**
* Specifies the root node's identifier. Applies if dataStructure is 'plain'.
*/
get rootValue() {
return this._getOption('rootValue');
}
set rootValue(value) {
this._setOption('rootValue', value);
}
/**
* Specifies whether rows should be shaded differently.
*/
get rowAlternationEnabled() {
return this._getOption('rowAlternationEnabled');
}
set rowAlternationEnabled(value) {
this._setOption('rowAlternationEnabled', value);
}
/**
* Configures row reordering using drag and drop gestures.
*/
get rowDragging() {
return this._getOption('rowDragging');
}
set rowDragging(value) {
this._setOption('rowDragging', value);
}
/**
* Switches the UI component to a right-to-left representation.
*/
get rtlEnabled() {
return this._getOption('rtlEnabled');
}
set rtlEnabled(value) {
this._setOption('rtlEnabled', value);
}
/**
* Configures scrolling.
*/
get scrolling() {
return this._getOption('scrolling');
}
set scrolling(value) {
this._setOption('scrolling', value);
}
/**
* Configures the search panel.
*/
get searchPanel() {
return this._getOption('searchPanel');
}
set searchPanel(value) {
this._setOption('searchPanel', value);
}
/**
* Allows you to select rows or determine which rows are selected.
*/
get selectedRowKeys() {
return this._getOption('selectedRowKeys');
}
set selectedRowKeys(value) {
this._setOption('selectedRowKeys', value);
}
/**
* Configures runtime selection.
*/
get selection() {
return this._getOption('selection');
}
set selection(value) {
this._setOption('selection', value);
}
/**
* Specifies whether the outer borders of the UI component are visible.
*/
get showBorders() {
return this._getOption('showBorders');
}
set showBorders(value) {
this._setOption('showBorders', value);
}
/**
* Specifies whether column headers are visible.
*/
get showColumnHeaders() {
return this._getOption('showColumnHeaders');
}
set showColumnHeaders(value) {
this._setOption('showColumnHeaders', value);
}
/**
* Specifies whether vertical lines that separate one column from another are visible.
*/
get showColumnLines() {
return this._getOption('showColumnLines');
}
set showColumnLines(value) {
this._setOption('showColumnLines', value);
}
/**
* Specifies whether horizontal lines that separate one row from another are visible.
*/
get showRowLines() {
return this._getOption('showRowLines');
}
set showRowLines(value) {
this._setOption('showRowLines', value);
}
/**
* Configures runtime sorting.
*/
get sorting() {
return this._getOption('sorting');
}
set sorting(value) {
this._setOption('sorting', value);
}
/**
* Configures state storing.
*/
get stateStoring() {
return this._getOption('stateStoring');
}
set stateStoring(value) {
this._setOption('stateStoring', value);
}
/**
* Specifies whether to show only relevant values in the header filter and filter row.
*/
get syncLookupFilterValues() {
return this._getOption('syncLookupFilterValues');
}
set syncLookupFilterValues(value) {
this._setOption('syncLookupFilterValues', value);
}
/**
* Specifies the number of the element when the Tab key is used for navigating.
*/
get tabIndex() {
return this._getOption('tabIndex');
}
set tabIndex(value) {
this._setOption('tabIndex', value);
}
/**
* Configures the toolbar.
*/
get toolbar() {
return this._getOption('toolbar');
}
set toolbar(value) {
this._setOption('toolbar', value);
}
/**
* Specifies whether to enable two-way data binding.
*/
get twoWayBindingEnabled() {
return this._getOption('twoWayBindingEnabled');
}
set twoWayBindingEnabled(value) {
this._setOption('twoWayBindingEnabled', value);
}
/**
* Specifies whether the UI component is visible.
*/
get visible() {
return this._getOption('visible');
}
set visible(value) {
this._setOption('visible', value);
}
/**
* Specifies the UI component's width.
*/
get width() {
return this._getOption('width');
}
set width(value) {
this._setOption('width', value);
}
/**
* Specifies whether text that does not fit into a column should be wrapped.
*/
get wordWrapEnabled() {
return this._getOption('wordWrapEnabled');
}
set wordWrapEnabled(value) {
this._setOption('wordWrapEnabled', value);
}
/**
* A function that is executed before an adaptive detail row is rendered.
*/
onAdaptiveDetailRowPreparing;
/**
* A function that is executed when a cell is clicked or tapped. Executed before onRowClick.
*/
onCellClick;
/**
* A function that is executed when a cell is double-clicked or double-tapped. Executed before onRowDblClick.
*/
onCellDblClick;
/**
* A function that is executed after the pointer enters or leaves a cell.
*/
onCellHoverChanged;
/**
* A function that is executed after a grid cell is created.
*/
onCellPrepared;
/**
* A function that is executed when the UI component is rendered and each time the component is repainted.
*/
onContentReady;
/**
* A function that is executed before the context menu is rendered.
*/
onContextMenuPreparing;
/**
* A function that is executed when an error occurs in the data source.
*/
onDataErrorOccurred;
/**
* A function that is executed before the UI component is disposed of.
*/
onDisposing;
/**
* A function that is executed after row changes are discarded.
*/
onEditCanceled;
/**
* A function that is executed when the edit operation is canceled, but row changes are not yet discarded.
*/
onEditCanceling;
/**
* A function that is executed before a cell or row switches to the editing state.
*/
onEditingStart;
/**
* A function that is executed after an editor is created. Not executed for cells with an editCellTemplate.
*/
onEditorPrepared;
/**
* A function used to customize cell editors. Not executed for cells with an editCellTemplate.
*/
onEditorPreparing;
/**
* A function that is executed after the focused cell changes. Applies only to cells in data rows.
*/
onFocusedCellChanged;
/**
* A function that is executed before the focused cell changes. Applies only to cells in data rows.
*/
onFocusedCellChanging;
/**
* A function that executed when the focused row changes. Applies only to data rows. focusedRowEnabled should be true.
*/
onFocusedRowChanged;
/**
* A function that is executed before the focused row changes. Applies only to data rows. focusedRowEnabled should be true.
*/
onFocusedRowChanging;
/**
* A function used in JavaScript frameworks to save the UI component instance.
*/
onInitialized;
/**
* A function that is executed before a new row is added to the UI component.
*/
onInitNewRow;
/**
* A function that is executed when the UI component is in focus and a key has been pressed down.
*/
onKeyDown;
/**
* A function that is executed after the loaded nodes are initialized.
*/
onNodesInitialized;
/**
* A function that is executed after a UI component property is changed.
*/
onOptionChanged;
/**
* A function that is executed when a grid row is clicked or tapped.
*/
onRowClick;
/**
* A function that is executed after a row is collapsed.
*/
onRowCollapsed;
/**
* A function that is executed before a row is collapsed.
*/
onRowCollapsing;
/**
* A function that is executed when a row is double-clicked or double-tapped. Executed after onCellDblClick.
*/
onRowDblClick;
/**
* A function that is executed after a row is expanded.
*/
onRowExpanded;
/**
* A function that is executed before a row is expanded.
*/
onRowExpanding;
/**
* A function that is executed after a new row has been inserted into the data source.
*/
onRowInserted;
/**
* A function that is executed before a new row is inserted into the data source.
*/
onRowInserting;
/**
* A function that is executed after a row is created.
*/
onRowPrepared;
/**
* A function that is executed after a row has been removed from the data source.
*/
onRowRemoved;
/**
* A function that is executed before a row is removed from the data source.
*/
onRowRemoving;
/**
* A function that is executed after a row has been updated in the data source.
*/
onRowUpdated;
/**
* A function that is executed before a row is updated in the data source.
*/
onRowUpdating;
/**
* A function that is executed after cells in a row are validated against validation rules.
*/
onRowValidating;
/**
* A function that is executed after row changes are saved.
*/
onSaved;
/**
* A function that is executed before pending row changes are saved.
*/
onSaving;
/**
* A function that is executed after selecting a row or clearing its selection.
*/
onSelectionChanged;
/**
* A function that is executed before the toolbar is created.
*/
onToolbarPreparing;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
accessKeyChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
activeStateEnabledChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
allowColumnReorderingChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
allowColumnResizingChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
autoExpandAllChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
autoNavigateToFocusedRowChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
cacheEnabledChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
cellHintEnabledChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
columnAutoWidthChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
columnChooserChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
columnFixingChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
columnHidingEnabledChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
columnMinWidthChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
columnResizingModeChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
columnsChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
columnWidthChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
customizeColumnsChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
dataSourceChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
dataStructureChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
dateSerializationFormatChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
disabledChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
editingChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
elementAttrChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
errorRowEnabledChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
expandedRowKeysChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
expandNodesOnFilteringChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
filterBuilderChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
filterBuilderPopupChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
filterModeChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
filterPanelChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
filterRowChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
filterSyncEnabledChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
filterValueChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
focusedColumnIndexChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
focusedRowEnabledChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
focusedRowIndexChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
focusedRowKeyChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
hasItemsExprChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
headerFilterChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
heightChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
highlightChangesChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
hintChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
hoverStateEnabledChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
itemsExprChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
keyboardNavigationChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
keyExprChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
loadPanelChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
noDataTextChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
pagerChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
pagingChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
parentIdExprChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
remoteOperationsChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
renderAsyncChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
repaintChangesOnlyChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
rootValueChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
rowAlternationEnabledChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
rowDraggingChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
rtlEnabledChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
scrollingChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
searchPanelChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
selectedRowKeysChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
selectionChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
showBordersChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
showColumnHeadersChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
showColumnLinesChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
showRowLinesChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
sortingChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
stateStoringChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
syncLookupFilterValuesChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
tabIndexChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
toolbarChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
twoWayBindingEnabledChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
visibleChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
widthChange;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
wordWrapEnabledChange;
get columnsChildren() {
return this._getOption('columns');
}
set columnsChildren(value) {
this._setChildren('columns', value, 'DxiTreeListColumnComponent');
}
get columnsLegacyChildren() {
return this._getOption('columns');
}
set columnsLegacyChildren(value) {
this._setChildren('columns', value, 'DxiColumnComponent');
}
constructor(elementRef, ngZone, templateHost, _watcherHelper, _idh, optionHost, transferState, platformId) {
super(elementRef, ngZone, templateHost, _watcherHelper, transferState, platformId);
this._watcherHelper = _watcherHelper;
this._idh = _idh;
this._createEventEmitters([
{ subscribe: 'adaptiveDetailRowPreparing', emit: 'onAdaptiveDetailRowPreparing' },
{ subscribe: 'cellClick', emit: 'onCellClick' },
{ subscribe: 'cellDblClick', emit: 'onCellDblClick' },
{ subscribe: 'cellHoverChanged', emit: 'onCellHoverChanged' },
{ subscribe: 'cellPrepared', emit: 'onCellPrepared' },
{ subscribe: 'contentReady', emit: 'onContentReady' },
{ subscribe: 'contextMenuPreparing', emit: 'onCo