ng-fusion-ui
Version:
Angular data table library!
85 lines (84 loc) • 6.19 kB
TypeScript
import { EventEmitter, OnChanges, SimpleChanges, TemplateRef, OnInit, Injector } from '@angular/core';
import { Subject } from 'rxjs';
import { TableActions, TableLayout } from '../models';
import * as i0 from "@angular/core";
export declare class TableComponent<T extends object> implements OnChanges, OnInit {
dataSource: import("@angular/core").InputSignal<T[]>;
localStorageKey: import("@angular/core").InputSignalWithTransform<string, string>;
tableLayout: import("@angular/core").InputSignal<TableLayout>;
firstPageOnInit: import("@angular/core").InputSignal<boolean>;
pageSizeOptions: import("@angular/core").InputSignal<number[]>;
isLoading: import("@angular/core").InputSignal<boolean>;
totalCount: import("@angular/core").InputSignal<number | undefined>;
serverPagination: import("@angular/core").InputSignal<boolean>;
stripedRows: import("@angular/core").InputSignal<boolean>;
expandable: import("@angular/core").InputSignal<boolean>;
expanded: import("@angular/core").InputSignal<boolean>;
showFilter: import("@angular/core").InputSignal<boolean>;
showPaginator: import("@angular/core").InputSignal<boolean>;
quickPageJump: import("@angular/core").InputSignal<boolean>;
popupOffset: import("@angular/core").InputSignal<number>;
tableTitle: import("@angular/core").InputSignal<string | undefined>;
variant: import("@angular/core").InputSignal<"raised" | "outlined">;
sideBar: import("@angular/core").InputSignal<boolean>;
setsFirstPage$: import("@angular/core").InputSignal<Subject<void> | undefined>;
expandIndex: import("@angular/core").ModelSignal<number | null>;
sidebarTemplate: import("@angular/core").Signal<TemplateRef<any> | undefined>;
noRecordsTemplate: import("@angular/core").Signal<TemplateRef<any> | undefined>;
footerTemplate: import("@angular/core").Signal<TemplateRef<any> | undefined>;
popupTemplate: import("@angular/core").Signal<TemplateRef<any> | undefined>;
expandTemplate: import("@angular/core").Signal<TemplateRef<any> | undefined>;
bodyTemplate: import("@angular/core").Signal<TemplateRef<any>>;
headerTemplate: import("@angular/core").Signal<TemplateRef<any>>;
isInitLoad: import("@angular/core").WritableSignal<boolean>;
filteredData: import("@angular/core").WritableSignal<T[]>;
sortedData: import("@angular/core").WritableSignal<T[]>;
private destroyRef;
private tableIntl;
private tableUtilityService;
private tableStorageService;
injector: Injector;
noRecordsText: import("@angular/core").WritableSignal<string>;
columnCount: import("@angular/core").WritableSignal<number>;
pageSize: import("@angular/core").Signal<number>;
currentPage: import("@angular/core").Signal<number>;
searchText: import("@angular/core").Signal<string>;
private sortColumn;
private sortDirection;
totalItems: import("@angular/core").Signal<number>;
expandedRowIndex: number | null;
arrayFromSize: import("@angular/core").Signal<unknown[]>;
arrayFromCols: import("@angular/core").Signal<unknown[]>;
expandColumnSpan: import("@angular/core").Signal<number>;
hoveredRow: import("@angular/core").WritableSignal<T | null>;
popupPosition: import("@angular/core").WritableSignal<{
top: number;
left: number;
right: number;
}>;
private isMobile;
private hidePopupTimeout;
private isPopupReady;
tableActions: import("@angular/core").OutputEmitterRef<TableActions>;
selectRowAction: EventEmitter<T>;
tableActionsEffect: import("@angular/core").EffectRef;
loadingEffect: import("@angular/core").EffectRef;
ngOnChanges(changes: SimpleChanges): void;
ngOnInit(): void;
onResize(): void;
toggleRow(row: T, index?: number): void;
private filterData;
private sortData;
private paginateData;
private loadServerData;
private watchInitLoad;
private emitTableActions;
private toggleSort;
onRowHover(event: MouseEvent, row: T): void;
onRowLeave(): void;
onPopupHover(): void;
onPopupLeave(): void;
onExpandHover(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<TableComponent<any>, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<TableComponent<any>, "fu-table", never, { "dataSource": { "alias": "dataSource"; "required": true; "isSignal": true; }; "localStorageKey": { "alias": "localStorageKey"; "required": false; "isSignal": true; }; "tableLayout": { "alias": "tableLayout"; "required": false; "isSignal": true; }; "firstPageOnInit": { "alias": "firstPageOnInit"; "required": false; "isSignal": true; }; "pageSizeOptions": { "alias": "pageSizeOptions"; "required": false; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": false; "isSignal": true; }; "totalCount": { "alias": "totalCount"; "required": false; "isSignal": true; }; "serverPagination": { "alias": "serverPagination"; "required": false; "isSignal": true; }; "stripedRows": { "alias": "stripedRows"; "required": false; "isSignal": true; }; "expandable": { "alias": "expandable"; "required": false; "isSignal": true; }; "expanded": { "alias": "expanded"; "required": false; "isSignal": true; }; "showFilter": { "alias": "showFilter"; "required": false; "isSignal": true; }; "showPaginator": { "alias": "showPaginator"; "required": false; "isSignal": true; }; "quickPageJump": { "alias": "quickPageJump"; "required": false; "isSignal": true; }; "popupOffset": { "alias": "popupOffset"; "required": false; "isSignal": true; }; "tableTitle": { "alias": "tableTitle"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "sideBar": { "alias": "sideBar"; "required": false; "isSignal": true; }; "setsFirstPage$": { "alias": "setsFirstPage$"; "required": false; "isSignal": true; }; "expandIndex": { "alias": "expandIndex"; "required": false; "isSignal": true; }; }, { "expandIndex": "expandIndexChange"; "tableActions": "tableActions"; "selectRowAction": "selectRowAction"; }, ["sidebarTemplate", "noRecordsTemplate", "footerTemplate", "popupTemplate", "expandTemplate", "bodyTemplate", "headerTemplate"], never, true, never>;
}