@circe/table
Version:
Circe Components for Angular :: Table Component
37 lines (36 loc) • 1.72 kB
TypeScript
import { Paginate } from '@circe/pagination';
import { BehaviorSubject, Observable } from 'rxjs';
import { NpaId } from '@circe/core';
import { NpaTableFilter, NpaTableSort } from './table.types';
export declare class TableSource<T> {
totalItems$: BehaviorSubject<number>;
get data(): T[] | BehaviorSubject<T[]>;
set data(data: T[] | BehaviorSubject<T[]>);
get filter(): NpaTableFilter[] | BehaviorSubject<NpaTableFilter[]>;
set filter(filter: NpaTableFilter[] | BehaviorSubject<NpaTableFilter[]>);
get sorter(): NpaTableSort | BehaviorSubject<NpaTableSort>;
set sorter(sorter: NpaTableSort | BehaviorSubject<NpaTableSort>);
get paginator(): Paginate | BehaviorSubject<Paginate>;
set paginator(paginator: Paginate | BehaviorSubject<Paginate>);
private _data$;
private _filter$;
private _sorter$;
private _paginator$;
private _renderChanges$;
private cancelStream$;
private _renderChangesSubscription;
private _dataSubscription;
private _filterSubscription;
private _sortSubscription;
private _pageSubscription;
constructor(data: T[] | BehaviorSubject<T[]>, _filter?: NpaTableFilter[] | BehaviorSubject<NpaTableFilter[]>, _paginator?: Paginate | BehaviorSubject<Paginate>, _sorter?: NpaTableSort | BehaviorSubject<NpaTableSort>);
static sortRows(rows: any[], columnId: NpaId, order?: 'asc' | 'desc'): any[];
static filterRows(rows: any[], filters: NpaTableFilter[]): any[];
private _getDataObservable;
private _filterRows;
private _orderRows;
private _pageRows;
private _isPaginationComponent;
connect(): Observable<T[]>;
}
export declare function _isTableSource<T>(obj: any): obj is TableSource<T>;