UNPKG

ontimize-web-ngx

Version:
54 lines 11.4 kB
import { ChangeDetectionStrategy, Component, forwardRef, Inject, ViewChild, ViewEncapsulation } from "@angular/core"; import { OTableBase } from "../../../o-table-base.class"; import { OMatSortHeader } from "../../sort/o-mat-sort-header"; import * as i0 from "@angular/core"; import * as i1 from "@angular/common"; import * as i2 from "@angular/flex-layout/flex"; import * as i3 from "../../sort/o-mat-sort-header"; import * as i4 from "../table-column-resizer/o-table-column-resizer.component"; import * as i5 from "../table-header-column-filter-icon/o-table-header-column-filter-icon.component"; import * as i6 from "../../../../../pipes/o-translate.pipe"; import * as i7 from "../../../o-table-base.class"; export const DEFAULT_INPUTS_O_TABLE_HEADER = [ 'column' ]; export class OTableHeaderComponent { set columnFilterIcon(value) { this._columnFilterIcon = value; } constructor(table) { this.table = table; this.resizable = this.table.resizable; } isModeColumnFilterable(column) { return this.table.isColumnFiltersActive && this.table.isColumnFilterable(column); } setFilterIconHintVisible(visible) { if (this._columnFilterIcon) { this._columnFilterIcon.filterIconHintVisible.next(visible); } } ngAfterViewInit() { this.table.registerTableHeaders(this); } } OTableHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OTableHeaderComponent, deps: [{ token: forwardRef(() => OTableBase) }], target: i0.ɵɵFactoryTarget.Component }); OTableHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: OTableHeaderComponent, selector: "o-table-header", inputs: { column: "column" }, host: { listeners: { "mouseenter": "setFilterIconHintVisible(true)", "mouseleave": "setFilterIconHintVisible(false)" }, properties: { "class.o-table-header": "true" } }, viewQueries: [{ propertyName: "columnFilterIcon", first: true, predicate: ["columnFilterIcon"], descendants: true }, { propertyName: "matSortHeader", first: true, predicate: OMatSortHeader, descendants: true }], ngImport: i0, template: "<o-table-header-column-filter-icon #columnFilterIcon *ngIf=\"isModeColumnFilterable(column)\" [column]=\"column\">\n</o-table-header-column-filter-icon>\n\n<ng-container *ngIf=\"column.orderable\">\n <span o-mat-sort-header>{{ column.title | oTranslate }}</span>\n</ng-container>\n<ng-container *ngIf=\"!column.orderable\">\n <span class=\"header-title-container\" fxFlex>{{ column.title | oTranslate }}</span>\n</ng-container>\n\n<o-table-column-resizer *ngIf=\"resizable\" [column]=\"column\"></o-table-column-resizer>\n", styles: [".o-table-header{display:flex;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.o-table-header span[o-mat-sort-header]{flex:1;min-width:0}.o-table-header span[o-mat-sort-header]:not(:has(+ .o-table-column-resizer)){padding-right:6px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "component", type: i3.OMatSortHeader, selector: "[o-mat-sort-header]", inputs: ["disabled"], exportAs: ["oMatSortHeader"] }, { kind: "component", type: i4.OTableColumnResizerComponent, selector: "o-table-column-resizer", inputs: ["column"] }, { kind: "component", type: i5.OTableHeaderColumnFilterIconComponent, selector: "o-table-header-column-filter-icon", inputs: ["column"] }, { kind: "pipe", type: i6.OTranslatePipe, name: "oTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OTableHeaderComponent, decorators: [{ type: Component, args: [{ selector: 'o-table-header', inputs: DEFAULT_INPUTS_O_TABLE_HEADER, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { '[class.o-table-header]': 'true', '(mouseenter)': 'setFilterIconHintVisible(true)', '(mouseleave)': 'setFilterIconHintVisible(false)' }, template: "<o-table-header-column-filter-icon #columnFilterIcon *ngIf=\"isModeColumnFilterable(column)\" [column]=\"column\">\n</o-table-header-column-filter-icon>\n\n<ng-container *ngIf=\"column.orderable\">\n <span o-mat-sort-header>{{ column.title | oTranslate }}</span>\n</ng-container>\n<ng-container *ngIf=\"!column.orderable\">\n <span class=\"header-title-container\" fxFlex>{{ column.title | oTranslate }}</span>\n</ng-container>\n\n<o-table-column-resizer *ngIf=\"resizable\" [column]=\"column\"></o-table-column-resizer>\n", styles: [".o-table-header{display:flex;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.o-table-header span[o-mat-sort-header]{flex:1;min-width:0}.o-table-header span[o-mat-sort-header]:not(:has(+ .o-table-column-resizer)){padding-right:6px}\n"] }] }], ctorParameters: function () { return [{ type: i7.OTableBase, decorators: [{ type: Inject, args: [forwardRef(() => OTableBase)] }] }]; }, propDecorators: { columnFilterIcon: [{ type: ViewChild, args: ['columnFilterIcon'] }], matSortHeader: [{ type: ViewChild, args: [OMatSortHeader] }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby10YWJsZS1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL2NvbXBvbmVudHMvdGFibGUvZXh0ZW5zaW9ucy9oZWFkZXIvdGFibGUtaGVhZGVyL28tdGFibGUtaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29udGltaXplLXdlYi1uZ3gvc3JjL2xpYi9jb21wb25lbnRzL3RhYmxlL2V4dGVuc2lvbnMvaGVhZGVyL3RhYmxlLWhlYWRlci9vLXRhYmxlLWhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXJILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sOEJBQThCLENBQUM7Ozs7Ozs7OztBQUc5RCxNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBRztJQUMzQyxRQUFRO0NBQ1QsQ0FBQTtBQWNELE1BQU0sT0FBTyxxQkFBcUI7SUFNaEMsSUFBbUMsZ0JBQWdCLENBQUMsS0FBNEM7UUFDOUYsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQztJQUNqQyxDQUFDO0lBSUQsWUFDa0QsS0FBaUI7UUFBakIsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUVqRSxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDO0lBQ3hDLENBQUM7SUFHRCxzQkFBc0IsQ0FBQyxNQUFlO1FBQ3BDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxxQkFBcUIsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ25GLENBQUM7SUFFRCx3QkFBd0IsQ0FBQyxPQUFnQjtRQUN2QyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMxQixJQUFJLENBQUMsaUJBQWlCLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQzVEO0lBQ0gsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsS0FBSyxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3hDLENBQUM7O21IQS9CVSxxQkFBcUIsa0JBYXRCLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxVQUFVLENBQUM7dUdBYjNCLHFCQUFxQixvWkFVckIsY0FBYyxnRENoQzNCLDhnQkFXQTs0RkRXYSxxQkFBcUI7a0JBYmpDLFNBQVM7K0JBQ0UsZ0JBQWdCLFVBQ2xCLDZCQUE2QixpQkFHdEIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSix3QkFBd0IsRUFBRSxNQUFNO3dCQUNoQyxjQUFjLEVBQUUsZ0NBQWdDO3dCQUNoRCxjQUFjLEVBQUUsaUNBQWlDO3FCQUNsRDs7MEJBZUUsTUFBTTsyQkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDOzRDQVBILGdCQUFnQjtzQkFBbEQsU0FBUzt1QkFBQyxrQkFBa0I7Z0JBSUYsYUFBYTtzQkFBdkMsU0FBUzt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5qZWN0LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB0eXBlIHsgT0NvbHVtbiB9IGZyb20gXCIuLi8uLi8uLi9jb2x1bW4vby1jb2x1bW4uY2xhc3NcIjtcbmltcG9ydCB7IE9UYWJsZUJhc2UgfSBmcm9tIFwiLi4vLi4vLi4vby10YWJsZS1iYXNlLmNsYXNzXCI7XG5pbXBvcnQgeyBPTWF0U29ydEhlYWRlciB9IGZyb20gXCIuLi8uLi9zb3J0L28tbWF0LXNvcnQtaGVhZGVyXCI7XG5pbXBvcnQgdHlwZSB7IE9UYWJsZUhlYWRlckNvbHVtbkZpbHRlckljb25Db21wb25lbnQgfSBmcm9tIFwiLi4vdGFibGUtaGVhZGVyLWNvbHVtbi1maWx0ZXItaWNvbi9vLXRhYmxlLWhlYWRlci1jb2x1bW4tZmlsdGVyLWljb24uY29tcG9uZW50XCI7XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0lOUFVUU19PX1RBQkxFX0hFQURFUiA9IFtcbiAgJ2NvbHVtbidcbl1cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ28tdGFibGUtaGVhZGVyJyxcbiAgaW5wdXRzOiBERUZBVUxUX0lOUFVUU19PX1RBQkxFX0hFQURFUixcbiAgdGVtcGxhdGVVcmw6ICcuL28tdGFibGUtaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vby10YWJsZS1oZWFkZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHtcbiAgICAnW2NsYXNzLm8tdGFibGUtaGVhZGVyXSc6ICd0cnVlJyxcbiAgICAnKG1vdXNlZW50ZXIpJzogJ3NldEZpbHRlckljb25IaW50VmlzaWJsZSh0cnVlKScsXG4gICAgJyhtb3VzZWxlYXZlKSc6ICdzZXRGaWx0ZXJJY29uSGludFZpc2libGUoZmFsc2UpJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIE9UYWJsZUhlYWRlckNvbXBvbmVudCB7XG5cbiAgcHVibGljIGNvbHVtbjogT0NvbHVtbjtcbiAgcHVibGljIHJlc2l6YWJsZTogYm9vbGVhbjtcbiAgcHJvdGVjdGVkIF9jb2x1bW5GaWx0ZXJJY29uOiBPVGFibGVIZWFkZXJDb2x1bW5GaWx0ZXJJY29uQ29tcG9uZW50O1xuXG4gIEBWaWV3Q2hpbGQoJ2NvbHVtbkZpbHRlckljb24nKSBzZXQgY29sdW1uRmlsdGVySWNvbih2YWx1ZTogT1RhYmxlSGVhZGVyQ29sdW1uRmlsdGVySWNvbkNvbXBvbmVudCkge1xuICAgIHRoaXMuX2NvbHVtbkZpbHRlckljb24gPSB2YWx1ZTtcbiAgfVxuXG4gIEBWaWV3Q2hpbGQoT01hdFNvcnRIZWFkZXIpIG1hdFNvcnRIZWFkZXI6IE9NYXRTb3J0SGVhZGVyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoZm9yd2FyZFJlZigoKSA9PiBPVGFibGVCYXNlKSkgcHJvdGVjdGVkIHRhYmxlOiBPVGFibGVCYXNlXG4gICkge1xuICAgIHRoaXMucmVzaXphYmxlID0gdGhpcy50YWJsZS5yZXNpemFibGU7XG4gIH1cblxuXG4gIGlzTW9kZUNvbHVtbkZpbHRlcmFibGUoY29sdW1uOiBPQ29sdW1uKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudGFibGUuaXNDb2x1bW5GaWx0ZXJzQWN0aXZlICYmIHRoaXMudGFibGUuaXNDb2x1bW5GaWx0ZXJhYmxlKGNvbHVtbik7XG4gIH1cblxuICBzZXRGaWx0ZXJJY29uSGludFZpc2libGUodmlzaWJsZTogYm9vbGVhbikge1xuICAgIGlmICh0aGlzLl9jb2x1bW5GaWx0ZXJJY29uKSB7XG4gICAgICB0aGlzLl9jb2x1bW5GaWx0ZXJJY29uLmZpbHRlckljb25IaW50VmlzaWJsZS5uZXh0KHZpc2libGUpO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnRhYmxlLnJlZ2lzdGVyVGFibGVIZWFkZXJzKHRoaXMpO1xuICB9XG5cbn1cbiIsIjxvLXRhYmxlLWhlYWRlci1jb2x1bW4tZmlsdGVyLWljb24gI2NvbHVtbkZpbHRlckljb24gKm5nSWY9XCJpc01vZGVDb2x1bW5GaWx0ZXJhYmxlKGNvbHVtbilcIiBbY29sdW1uXT1cImNvbHVtblwiPlxuPC9vLXRhYmxlLWhlYWRlci1jb2x1bW4tZmlsdGVyLWljb24+XG5cbjxuZy1jb250YWluZXIgKm5nSWY9XCJjb2x1bW4ub3JkZXJhYmxlXCI+XG4gIDxzcGFuIG8tbWF0LXNvcnQtaGVhZGVyPnt7IGNvbHVtbi50aXRsZSB8IG9UcmFuc2xhdGUgfX08L3NwYW4+XG48L25nLWNvbnRhaW5lcj5cbjxuZy1jb250YWluZXIgKm5nSWY9XCIhY29sdW1uLm9yZGVyYWJsZVwiPlxuICA8c3BhbiBjbGFzcz1cImhlYWRlci10aXRsZS1jb250YWluZXJcIiBmeEZsZXg+e3sgY29sdW1uLnRpdGxlIHwgb1RyYW5zbGF0ZSB9fTwvc3Bhbj5cbjwvbmctY29udGFpbmVyPlxuXG48by10YWJsZS1jb2x1bW4tcmVzaXplciAqbmdJZj1cInJlc2l6YWJsZVwiIFtjb2x1bW5dPVwiY29sdW1uXCI+PC9vLXRhYmxlLWNvbHVtbi1yZXNpemVyPlxuIl19