UNPKG

@alauda-fe/common

Version:

Alauda frontend team common codes.

89 lines (88 loc) 6.06 kB
import { Sort } from '@alauda/ui'; import { EventEmitter, QueryList, TemplateRef, TrackByFunction } from '@angular/core'; import { ActivatedRoute, Router } from '@angular/router'; import { BehaviorSubject, Observable, ReplaySubject } from 'rxjs'; import { K8sResourceAction, KubernetesResourceList } from '../core/types/k8s/public-api'; import { StreamListLoader } from '../k8s-resource-list/types'; import { TableCellDefDirective } from './helpers.directive'; import { NormalizedTableColumnDef, TableColumnDefs, TableColumn, TableColumnDef, TableFilterFn } from './types'; import { TableUtilService } from './util.service'; import * as i0 from "@angular/core"; export declare class TableComponent<Item extends object, Context = TableUtilService<Item>> { private readonly router; private readonly route; readonly util: TableUtilService<Item>; list: StreamListLoader<KubernetesResourceList<Item>, Item>; list$: Observable<StreamListLoader<KubernetesResourceList<Item>, Item>>; dataSource: Item[] | Observable<Item[]>; dataSource$: Observable<Item[] | Observable<Item[]>>; resourceName: string; resourceName$: Observable<string>; resourceNameTranslated: string; sticky: number | string; permissions: Partial<Record<K8sResourceAction, boolean>>; columns: ReadonlyArray<TableColumn<Item, Context>>; columns$: Observable<Array<TableColumn<Item, Context>>>; filterParams: Record<string, unknown>; filterParams$: Observable<Record<string, unknown>>; context: Context; get finalContext(): Context; filterFn: TableFilterFn<Item, Context>; filterFn$: Observable<TableFilterFn<Item, Context>>; trackBy: TrackByFunction<Item>; noDataHint: string; loadingErrorTemplate: TemplateRef<any>; enablePagination: boolean; pageSize: number; pageSizeOptions: number[]; paginationLayout: string; firstScrollLoad: number; update: EventEmitter<Item>; delete: EventEmitter<Item>; sortChange: EventEmitter<Sort>; tableCellDefs: QueryList<TableCellDefDirective<Item>>; get scrollWrapper(): boolean; get scrollWrapperHeight(): string; currentPage$: BehaviorSubject<number>; pageSize$: BehaviorSubject<number>; pagination: { total: number; pages: number; }; finalDataSource$: Observable<Item[]>; finalResourceName$: Observable<string>; columnDefs$: Observable<TableColumnDefs<Item, Context>>; columnNames$: Observable<import("@alauda-fe/common").LiteralUnion<"action" | "name", string>[]>; activeSort$$: ReplaySubject<Sort>; activeSort$: Observable<Sort>; filteredItems$: Observable<Item[]>; pagedItems$: Observable<Item[]>; get isListPage(): boolean; isListPage$: Observable<boolean>; isFunction: (value: any) => value is (...args: any[]) => any; isK8sResource: <T extends import("../core/types/k8s/core").KubernetesResource = import("../core/types/k8s/core").KubernetesResource>(value: object) => value is T; isFieldNotAvailable: (field: unknown) => boolean; getValueFromPath: (item: Item, name?: string, path?: import("./types").TableColumnDefPath<Item, unknown>, context?: unknown) => string | number; trackByName(_: number, columnDef: TableColumnDef<Item, Context>): string; NAME: string; CREATOR: string; CREATED_AT: string; ACTION: string; constructor(router: Router, route: ActivatedRoute, util: TableUtilService<Item>); normalizeColumnDefTranslate(column: TableColumnDef<Item, Context>): TableColumnDef<Item, Context, object, string, string | number>; normalizeColumnDefSort(column: TableColumnDef<Item, Context>): TableColumnDef<Item, Context, object, string, string | number>; onSortChange($event: Sort): void; normalizeActionColumnDef(column: TableColumnDef<Item, Context>): NormalizedTableColumnDef<Item, Context>; getColumnTemplate(column: string): TemplateRef<{ $implicit: Item; index: number; even: boolean; odd: boolean; last: boolean; }>; trackByFn(index: number, item: Item): string | number | Exclude<"name" extends infer T ? T extends "name" ? T extends keyof Item ? Item[T] : T extends `${infer FieldKey}[${infer IndexKey}]` ? FieldKey extends keyof Item ? import("lodash").IndexedFieldWithPossiblyUndefined<Item[FieldKey], IndexKey> : undefined : import("lodash").IndexedFieldWithPossiblyUndefined<Item, T> : never : never, null>; onUpdate(data: Item, columnDef: TableColumnDef<Item, Context>): void; getValue<T, F extends (...args: unknown[]) => T>(functionOrValue: T | F, ...args: Parameters<F>): T; static ɵfac: i0.ɵɵFactoryDeclaration<TableComponent<any, any>, never>; static ɵcmp: i0.ɵɵComponentDeclaration<TableComponent<any, any>, "acl-table", never, { "list": { "alias": "list"; "required": false; }; "dataSource": { "alias": "dataSource"; "required": false; }; "resourceName": { "alias": "resourceName"; "required": false; }; "resourceNameTranslated": { "alias": "resourceNameTranslated"; "required": false; }; "sticky": { "alias": "sticky"; "required": false; }; "permissions": { "alias": "permissions"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "filterParams": { "alias": "filterParams"; "required": false; }; "context": { "alias": "context"; "required": false; }; "filterFn": { "alias": "filterFn"; "required": false; }; "trackBy": { "alias": "trackBy"; "required": false; }; "noDataHint": { "alias": "noDataHint"; "required": false; }; "loadingErrorTemplate": { "alias": "loadingErrorTemplate"; "required": false; }; "enablePagination": { "alias": "enablePagination"; "required": false; }; "pageSize": { "alias": "pageSize"; "required": false; }; "pageSizeOptions": { "alias": "pageSizeOptions"; "required": false; }; "paginationLayout": { "alias": "paginationLayout"; "required": false; }; "firstScrollLoad": { "alias": "firstScrollLoad"; "required": false; }; }, { "update": "update"; "delete": "delete"; "sortChange": "sortChange"; }, ["tableCellDefs"], never, false, never>; }