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.

80 lines (79 loc) 3.98 kB
/**----------------------------------------------------------------------------------------- * Copyright © 2025 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the project root for more information *-------------------------------------------------------------------------------------------*/ import { Component, HostBinding, Input } from '@angular/core'; import { LocalizationService } from '@progress/kendo-angular-l10n'; import { LogicalCellDirective } from '../navigation/logical-cell.directive'; import { FilterCellComponent } from './cell/filter-cell.component'; import * as i0 from "@angular/core"; import * as i1 from "@progress/kendo-angular-l10n"; /** * @hidden */ export class FilterRowComponent { columns = []; filter; logicalRowIndex; lockedColumnsCount; filterRowClass = true; filterLabel; constructor(localization) { this.filterLabel = localization.get('filter'); } getColumnComponent(column) { return column; } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FilterRowComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component }); static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: FilterRowComponent, isStandalone: true, selector: "[kendoTreeListFilterRow]", inputs: { columns: "columns", filter: "filter", logicalRowIndex: "logicalRowIndex", lockedColumnsCount: "lockedColumnsCount" }, host: { properties: { "class.k-filter-row": "this.filterRowClass" } }, ngImport: i0, template: ` @for (column of columns; track column; let columnIndex = $index) { <td role="gridcell" [attr.aria-label]="filterLabel" kendoTreeListFilterCell [column]="$any(column)" [filter]="filter" kendoTreeListLogicalCell class="k-table-td" [logicalRowIndex]="logicalRowIndex" [logicalColIndex]="lockedColumnsCount + columnIndex" [column]="getColumnComponent(column)" [colIndex]="columnIndex" ></td> } `, isInline: true, dependencies: [{ kind: "component", type: FilterCellComponent, selector: "[kendoTreeListFilterCell]", inputs: ["column", "filter"] }, { kind: "directive", type: LogicalCellDirective, selector: "[kendoTreeListLogicalCell]", inputs: ["logicalColIndex", "logicalRowIndex", "logicalSlaveCell", "column", "colIndex", "colSpan", "rowSpan", "dataRowIndex", "dataItem", "expandable", "headerLabelText"] }] }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FilterRowComponent, decorators: [{ type: Component, args: [{ selector: '[kendoTreeListFilterRow]', template: ` @for (column of columns; track column; let columnIndex = $index) { <td role="gridcell" [attr.aria-label]="filterLabel" kendoTreeListFilterCell [column]="$any(column)" [filter]="filter" kendoTreeListLogicalCell class="k-table-td" [logicalRowIndex]="logicalRowIndex" [logicalColIndex]="lockedColumnsCount + columnIndex" [column]="getColumnComponent(column)" [colIndex]="columnIndex" ></td> } `, standalone: true, imports: [FilterCellComponent, LogicalCellDirective] }] }], ctorParameters: () => [{ type: i1.LocalizationService }], propDecorators: { columns: [{ type: Input }], filter: [{ type: Input }], logicalRowIndex: [{ type: Input }], lockedColumnsCount: [{ type: Input }], filterRowClass: [{ type: HostBinding, args: ['class.k-filter-row'] }] } });