@c10t/nice-component-library
Version:
nice-component-library
76 lines (75 loc) • 4.72 kB
TypeScript
import { AfterContentChecked, ChangeDetectorRef, EventEmitter, Injector, OnChanges, OnInit, QueryList } from '@angular/core';
import { AbstractControl, ControlValueAccessor, NgControl } from '@angular/forms';
import { MatCheckboxChange } from '@angular/material/checkbox';
import { MatTable, MatTableDataSource } from '@angular/material/table';
import { ColumnModel } from '../../models/components/column.model';
import { ColumnTypeEnum } from '../../enums/column-type.enum';
import { ButtonClickEvent } from '../../models/button-click.event';
import { BaseModel } from '../../models/base.model';
import { AlignEnum } from '../../enums/align.enum';
import { ButtonModel } from '../../models/components/button.model';
import { TableService } from '../../services/table.service';
import { IconTypeEnum } from '../../enums/icon-type.enum';
import { TableFooterModel } from '../../models/components/table-footer.model';
import { NiceComponentLibraryConfig } from '../../models/nice-component-library.config';
import { NumericInputFormat } from '../../directives/numeric-input-format';
import { CvaFormControl } from '../cva-form-control';
import * as i0 from "@angular/core";
export declare class CvaSmartTableComponent implements ControlValueAccessor, OnChanges, OnInit, AfterContentChecked {
private ref;
config: NiceComponentLibraryConfig;
private injector;
protected readonly ColumnTypeEnum: typeof ColumnTypeEnum;
protected readonly IconTypeEnum: typeof IconTypeEnum;
protected readonly AlignEnum: typeof AlignEnum;
protected readonly TableService: typeof TableService;
cellComponents: QueryList<CvaFormControl>;
moduleName: string;
columns: ColumnModel[];
buttons: ButtonModel[];
superHeaders: ColumnModel[][];
value: any[];
minRow: number;
maxRow: number;
errorMessages: Map<string, () => string>;
isFormControl: boolean;
isSticky: boolean;
isStickyHeader: boolean;
isStickyFooter: boolean;
clickAction: EventEmitter<ButtonClickEvent>;
onChange: EventEmitter<any>;
matTable?: MatTable<any>;
isExpandRowTable: boolean;
expandRowProperty: string;
$displayedColumns: string[];
$displayedFooters: string[][];
datasource: MatTableDataSource<BaseModel | any>;
formControl: AbstractControl | undefined;
selectAllChecked: boolean;
buttonColspan: number;
formatFunc: NumericInputFormat;
constructor(ref: ChangeDetectorRef, config: NiceComponentLibraryConfig, injector: Injector, ngControl: NgControl);
get displayedFooters(): string[][];
propagateChange: (_: any) => void;
writeValue(obj: any[] | any): void;
getParentRowData(): any[];
registerOnChange(fn: any): void;
registerOnTouched(): void;
ngOnChanges(): void;
ngOnInit(): void;
ngAfterContentChecked(): void;
onClick(action: string, result: any, index: number | null): void;
onCellValueChange(result: any, column: ColumnModel, $event: any): void;
toggleSelect(val: MatCheckboxChange | null, result?: any, column?: ColumnModel): void;
onDisplayHeaderCell(column: ColumnModel): boolean;
onDisplayFooter(footer: TableFooterModel, dataTable: any[]): boolean;
callValidator(): void;
getIsDecimal(column: ColumnModel): boolean;
getErrorMessageMap(column: ColumnModel): Map<string, () => string>;
expandRow(i: number, row: any, parentRowClassIndex: number | 0 | 1): void;
getAlign(column: ColumnModel): AlignEnum;
getHeaderButtonColspan(): number;
markAllControlsAsDirty(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<CvaSmartTableComponent, [null, null, null, { optional: true; self: true; }]>;
static ɵcmp: i0.ɵɵComponentDeclaration<CvaSmartTableComponent, "cva-smart-table", never, { "moduleName": { "alias": "moduleName"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "buttons": { "alias": "buttons"; "required": false; }; "superHeaders": { "alias": "superHeaders"; "required": false; }; "value": { "alias": "value"; "required": false; }; "minRow": { "alias": "minRow"; "required": false; }; "maxRow": { "alias": "maxRow"; "required": false; }; "errorMessages": { "alias": "errorMessages"; "required": false; }; "isFormControl": { "alias": "isFormControl"; "required": false; }; "isSticky": { "alias": "isSticky"; "required": false; }; "isStickyHeader": { "alias": "isStickyHeader"; "required": false; }; "isStickyFooter": { "alias": "isStickyFooter"; "required": false; }; "isExpandRowTable": { "alias": "isExpandRowTable"; "required": false; }; "expandRowProperty": { "alias": "expandRowProperty"; "required": false; }; }, { "clickAction": "clickAction"; "onChange": "onChange"; }, never, never, false, never>;
}