UNPKG

novo-elements

Version:

Bullhorn's NOVO Element Repository for Angular 2

39 lines (33 loc) 1.28 kB
import { EventEmitter } from '@angular/core'; import { NovoSimpleTableChange, NovoSimpleSortFilter } from './interfaces'; export class NovoActivityTableState { id: number = Math.random(); sort: { id: string, value: string } = undefined; filter: { id: string, value: string } = undefined; page: number = 0; pageSize: number = undefined; globalSearch: string = undefined; selectedRows: Map<string, object> = new Map<string, object>(); updates: EventEmitter<NovoSimpleTableChange> = new EventEmitter<NovoSimpleTableChange>(); onReset: EventEmitter<boolean> = new EventEmitter<boolean>(); get userFiltered(): boolean { return !!(this.filter || this.sort || this.globalSearch); } public reset(fireUpdate: boolean = true, persistUserFilters?: boolean): void { if (!persistUserFilters) { this.sort = undefined; this.globalSearch = undefined; this.filter = undefined; } this.page = 0; this.selectedRows.clear(); this.onReset.emit(true); if (fireUpdate) { this.updates.emit({ sort: this.sort, filter: this.filter, globalSearch: this.globalSearch }); } } }