UNPKG

@anglr/grid

Version:
62 lines 5.59 kB
import { Component, ChangeDetectionStrategy, Inject, Optional, HostBinding } from '@angular/core'; import { CommonModule } from '@angular/common'; import { MergeCssClassesPipe } from '@anglr/common'; import { HeaderContentRendererAbstractComponent } from '../../../headerContentRendererAbstract.component'; import { HEADER_CONTENT_RENDERER_OPTIONS } from '../../../../../../misc/tokens'; import { CellContextPipe } from '../../../../../../pipes'; import { provideCellContextFactoryFn } from '../../../../../../misc/providers'; import { cellContextFactory } from '../../../../../../misc/utils'; import { OrderableDirective } from '../../../../../../directives'; import * as i0 from "@angular/core"; import * as i1 from "@angular/common"; /** * Default options for 'TableHeaderContentRendererComponent' */ const defaultOptions = { cssClasses: { thead: '', thDefault: 'header-default', spanContent: 'header-content', }, }; /** * Component used for rendering table header in table content renderer * @deprecated use new MatrixGrid with MatrixContentRenderer instead */ export class TableHeaderContentRendererComponent extends HeaderContentRendererAbstractComponent { //######################### public properties - host ######################### /** * Css class applied to header itself */ get cssClass() { return this.ɵoptions.cssClasses.thead; } //######################### constructor ######################### constructor(options) { super(defaultOptions, options); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0", ngImport: i0, type: TableHeaderContentRendererComponent, deps: [{ token: HEADER_CONTENT_RENDERER_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.0", type: TableHeaderContentRendererComponent, isStandalone: true, selector: "thead.content-renderer", host: { properties: { "class": "this.cssClass" } }, providers: [ provideCellContextFactoryFn(cellContextFactory), ], usesInheritance: true, ngImport: i0, template: "<tr>\r\n @for(meta of metadata?.columns; track meta; let index=$index)\r\n {\r\n <th [ngClass]=\"options.cssClasses.thDefault | mergeCssClasses: [meta?.headerClass]\" \r\n [style.width]=\"meta?.width\"\r\n [title]=\"meta?.headerTooltip || meta?.title\"\r\n [orderable]=\"!!meta?.ordering\"\r\n [orderById]=\"meta?.id\">\r\n\r\n @if(meta?.titleVisible)\r\n {\r\n @if(meta?.headerTemplate)\r\n {\r\n <ng-container *ngTemplateOutlet=\"meta?.headerTemplate ?? null; context: meta | cellContext: index\" />\r\n }\r\n @else \r\n {\r\n <span [ngClass]=\"options.cssClasses.spanContent\">{{meta?.title}}</span>\r\n }\r\n }\r\n </th>\r\n }\r\n</tr>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: CellContextPipe, name: "cellContext" }, { kind: "pipe", type: MergeCssClassesPipe, name: "mergeCssClasses" }, { kind: "directive", type: OrderableDirective, selector: "[orderable]", inputs: ["orderable", "orderById"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0", ngImport: i0, type: TableHeaderContentRendererComponent, decorators: [{ type: Component, args: [{ selector: 'thead.content-renderer', imports: [ CommonModule, CellContextPipe, MergeCssClassesPipe, OrderableDirective, ], providers: [ provideCellContextFactoryFn(cellContextFactory), ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<tr>\r\n @for(meta of metadata?.columns; track meta; let index=$index)\r\n {\r\n <th [ngClass]=\"options.cssClasses.thDefault | mergeCssClasses: [meta?.headerClass]\" \r\n [style.width]=\"meta?.width\"\r\n [title]=\"meta?.headerTooltip || meta?.title\"\r\n [orderable]=\"!!meta?.ordering\"\r\n [orderById]=\"meta?.id\">\r\n\r\n @if(meta?.titleVisible)\r\n {\r\n @if(meta?.headerTemplate)\r\n {\r\n <ng-container *ngTemplateOutlet=\"meta?.headerTemplate ?? null; context: meta | cellContext: index\" />\r\n }\r\n @else \r\n {\r\n <span [ngClass]=\"options.cssClasses.spanContent\">{{meta?.title}}</span>\r\n }\r\n }\r\n </th>\r\n }\r\n</tr>" }] }], ctorParameters: () => [{ type: undefined, decorators: [{ type: Inject, args: [HEADER_CONTENT_RENDERER_OPTIONS] }, { type: Optional }] }], propDecorators: { cssClass: [{ type: HostBinding, args: ['class'] }] } }); //# sourceMappingURL=tableHeaderContentRenderer.component.js.map