UNPKG

@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.

229 lines (228 loc) 8.26 kB
/**----------------------------------------------------------------------------------------- * Copyright © 2025 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the project root for more information *-------------------------------------------------------------------------------------------*/ import { OnChanges, QueryList, TemplateRef } from '@angular/core'; import { ColumnMenuTemplateDirective } from '../column-menu/column-menu-template.directive'; import { OptionChangesService } from '../common/option-changes.service'; import { FooterTemplateDirective } from '../rendering/footer-template.directive'; import { HeaderTemplateDirective } from '../rendering/header/header-template.directive'; import * as i0 from "@angular/core"; /** * @hidden */ export declare const isSpanColumn: (column: any) => any; /** * @hidden */ export declare const isCheckboxColumn: (column: any) => any; /** * @hidden */ export declare const isRowReorderColumn: (column: any) => any; /** * Serves as the base class for column components in the TreeList. */ export declare class ColumnBase implements OnChanges { parent?: ColumnBase; protected optionChanges?: OptionChangesService; /** * @hidden */ matchesMedia: boolean; /** * The column index after reordering. * The orderIndex` is a read-only property. Setting this field does not affect column order. * @default 0 */ orderIndex: number; /** * @hidden */ set leafIndex(value: number); /** * @hidden */ get leafIndex(): number; protected _leafIndex: number; /** * @hidden */ isColumnGroup: boolean; /** * @hidden */ isSpanColumn: boolean; /** * @hidden */ get id(): string; /** * Indicates whether the column is resizable. * @default true */ resizable: boolean; /** * Indicates whether the column is reorderable. * @default true */ reorderable: boolean; /** * Sets the minimum width (in pixels) for resizing the column using the UI. * @default 10 */ minResizableWidth: number; /** * Sets the title of the column. */ title: string; /** * Sets the width of the column (in pixels). */ set width(value: number); get width(): number; /** * Indicates whether the column is automatically resized during initialization to fit its header and row content. */ autoSize: boolean; /** * Toggles the locked (frozen) state of the columns ([more information and example](slug:locked_columns_treelist)). * @default false */ set locked(value: boolean); get locked(): boolean; protected _locked: boolean; /** * Sets the visibility of the column ([see example](slug:hidden_columns_treelist#toc-using-the-built-in-options)). * @default false */ hidden: boolean; /** * Sets the condition that must be satisfied for a column to remain visible ([see example](slug:responsive_treelist#toc-columns)). * If you set the `hidden` property, the behavior of `media` is overridden. */ media: string; /** * Specifies if the column can be locked or unlocked from the column menu or by reordering the columns. * @default true */ lockable: boolean; /** * Specifies if the column menu is shown for the column. * @default true */ columnMenu: boolean; /** * Specifies if the column is included in the column-chooser list. * @default true */ includeInChooser: boolean; /** * Sets the `role` attribute for the table cells (excluding the footer and header) of the column. * @default "gridcell" */ tableCellsRole: string; /** * Sets custom styles for the table cells (excluding the footer and header) of the column. Uses the [`NgStyle`](link:site.data.urls.angular['ngstyleapi']) directive. [See example](slug:styling_treelist_columns). */ style: { [key: string]: string; }; /** * Sets custom styles for the header cell of the column. Uses the [`NgStyle`](link:site.data.urls.angular['ngstyleapi']) directive. [See example.](slug:styling_treelist_columns) */ headerStyle: { [key: string]: string; }; /** * Sets custom styles for the footer cell of the column. Uses the [`NgStyle`](link:site.data.urls.angular['ngstyleapi']) directive. [See example.](slug:styling_treelist_columns) */ footerStyle: { [key: string]: string; }; /** * Sets custom CSS classes to the column cells. Uses the [`NgClass`](link:site.data.urls.angular['ngclassapi']) directive. To customize header and footer column cells, use the [`headerClass`]({% slug api_treelist_columncomponent %}#toc-headerclass) and [`footerClass`]({% slug api_treelist_columncomponent %}#toc-footerclass) inputs. */ cssClass: string | string[] | Set<string> | { [key: string]: any; }; /** * Sets custom CSS classes to the column header cell. Uses the [`NgClass`](link:site.data.urls.angular['ngclassapi']) directive. [See example](slug:styling_treelist_columns). */ headerClass: string | string[] | Set<string> | { [key: string]: any; }; /** * Sets the custom CSS classes to the column footer cell. Under the hood, to apply the property, * the `footerClass` option uses the * [`NgClass`](link:site.data.urls.angular['ngclassapi']) directive. [See example](slug:styling_treelist_columns). */ footerClass: string | string[] | Set<string> | { [key: string]: any; }; /** * @hidden */ headerTemplates: QueryList<HeaderTemplateDirective>; /** * @hidden */ footerTemplate: FooterTemplateDirective; /** * @hidden */ columnMenuTemplates: QueryList<ColumnMenuTemplateDirective>; /** * @hidden */ resizeStartWidth: number; /** * @hidden */ get level(): number; /** * @hidden */ get isLocked(): boolean; protected _width: number; /** * @hidden */ get colspan(): number; /** * @hidden */ rowspan(totalColumnLevels: number): number; /** * @hidden */ get headerTemplateRef(): TemplateRef<any>; /** * @hidden */ get footerTemplateRef(): TemplateRef<any>; /** * @hidden */ get columnMenuTemplateRef(): TemplateRef<any>; /** * @hidden */ get displayTitle(): string; /** * @hidden */ get isVisible(): boolean; /** * @hidden */ get isEditable(): boolean; private _id; /** * @hidden */ constructor(parent?: ColumnBase, optionChanges?: OptionChangesService); ngOnChanges(_changes: any): void; static ɵfac: i0.ɵɵFactoryDeclaration<ColumnBase, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<ColumnBase, never, never, { "resizable": { "alias": "resizable"; "required": false; }; "reorderable": { "alias": "reorderable"; "required": false; }; "minResizableWidth": { "alias": "minResizableWidth"; "required": false; }; "title": { "alias": "title"; "required": false; }; "width": { "alias": "width"; "required": false; }; "autoSize": { "alias": "autoSize"; "required": false; }; "locked": { "alias": "locked"; "required": false; }; "hidden": { "alias": "hidden"; "required": false; }; "media": { "alias": "media"; "required": false; }; "lockable": { "alias": "lockable"; "required": false; }; "columnMenu": { "alias": "columnMenu"; "required": false; }; "includeInChooser": { "alias": "includeInChooser"; "required": false; }; "tableCellsRole": { "alias": "tableCellsRole"; "required": false; }; "style": { "alias": "style"; "required": false; }; "headerStyle": { "alias": "headerStyle"; "required": false; }; "footerStyle": { "alias": "footerStyle"; "required": false; }; "cssClass": { "alias": "class"; "required": false; }; "headerClass": { "alias": "headerClass"; "required": false; }; "footerClass": { "alias": "footerClass"; "required": false; }; }, {}, ["footerTemplate", "headerTemplates", "columnMenuTemplates"], never, false, never>; }