UNPKG

@lucasheight/kendo-grid-state

Version:

A helper library that implements a directive to manage grid state during session or between sessions for Progress Kendo UI for Angular Grid.

80 lines (72 loc) 3.32 kB
import { State, CompositeFilterDescriptor, SortDescriptor, GroupDescriptor } from '@progress/kendo-data-query'; import * as i0 from '@angular/core'; import { OnInit, OnDestroy, AfterContentInit, EventEmitter, InjectionToken } from '@angular/core'; import { DataStateChangeEvent } from '@progress/kendo-angular-grid'; declare class Column { origIdx?: number; orderIndex?: number; leafIndex?: number; hidden?: boolean; width?: number; expanded?: boolean; title?: string; field?: string; } interface IGridState { columns: Column[]; state: State; expandedRows?: boolean[]; } declare class GridStateDirective implements OnInit, OnDestroy, AfterContentInit { private grid; private storageService; private subs; private _expandedRows; get expandedRows(): any[]; set expandedRows(val: any[]); expandedRowsChange: EventEmitter<any[]>; stateReady: EventEmitter<DataStateChangeEvent>; filter: CompositeFilterDescriptor; filterChange: EventEmitter<CompositeFilterDescriptor>; gridState: string; sort: Array<SortDescriptor>; sortChange: EventEmitter<Array<SortDescriptor>>; skip?: number; skipChange: EventEmitter<number>; group?: Array<GroupDescriptor>; groupChange: EventEmitter<Array<GroupDescriptor>>; take?: number; takeChange: EventEmitter<number>; constructor(); private expander; private get key(); get state(): IGridState; set state(val: IGridState); get initState(): DataStateChangeEvent; ngOnInit(): void; private colMapper; ngAfterContentInit(): void; unload(e: BeforeUnloadEvent): void; private saveState; ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GridStateDirective, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GridStateDirective, "kendo-grid[gridState]", never, { "expandedRows": { "alias": "expandedRows"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; "gridState": { "alias": "gridState"; "required": false; }; "sort": { "alias": "sort"; "required": false; }; "skip": { "alias": "skip"; "required": false; }; "group": { "alias": "group"; "required": false; }; "take": { "alias": "take"; "required": false; }; }, { "expandedRowsChange": "expandedRowsChange"; "stateReady": "stateReady"; "filterChange": "filterChange"; "sortChange": "sortChange"; "skipChange": "skipChange"; "groupChange": "groupChange"; "takeChange": "takeChange"; }, never, never, true, never>; } declare class GridStateModule { static ɵfac: i0.ɵɵFactoryDeclaration<GridStateModule, never>; static ɵmod: i0.ɵɵNgModuleDeclaration<GridStateModule, never, [typeof GridStateDirective], [typeof GridStateDirective]>; static ɵinj: i0.ɵɵInjectorDeclaration<GridStateModule>; } declare const APP_STORAGE: InjectionToken<Storage>; declare class StorageService { private store; clear(): void; getItem(key: string): string; key(index: number): string; removeItem(key: string): void; setItem(key: string, value: string): void; static ɵfac: i0.ɵɵFactoryDeclaration<StorageService, never>; static ɵprov: i0.ɵɵInjectableDeclaration<StorageService>; } export { APP_STORAGE, Column, GridStateDirective, GridStateModule, StorageService }; export type { IGridState };