ag-grid-community
Version:
Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
75 lines (74 loc) • 2.79 kB
TypeScript
import { Promise } from '../utils';
import { Column } from '../entities/column';
import { ColumnEventType } from '../events';
import { IFilterComp, IFilterParams } from '../interfaces/iFilter';
import { ColDef } from '../entities/colDef';
import { BeanStub } from '../context/beanStub';
export declare type FilterRequestSource = 'COLUMN_MENU' | 'TOOLBAR' | 'NO_UI';
export declare class FilterManager extends BeanStub {
private $compile;
private $scope;
private gridOptionsWrapper;
private valueService;
private columnController;
private rowModel;
private columnApi;
private gridApi;
private userComponentFactory;
static QUICK_FILTER_SEPARATOR: string;
private allFilters;
private quickFilter;
private quickFilterParts;
private advancedFilterPresent;
private externalFilterPresent;
private processingFilterChange;
private allowShowChangeAfterFilter;
init(): void;
private setQuickFilterParts;
setFilterModel(model: {
[key: string]: any;
}): void;
private setModelOnFilterWrapper;
getFilterModel(): {
[key: string]: any;
};
isAdvancedFilterPresent(): boolean;
private setAdvancedFilterPresent;
private updateFilterFlagInColumns;
isAnyFilterPresent(): boolean;
private doesFilterPass;
private parseQuickFilter;
setQuickFilter(newFilter: any): void;
private checkExternalFilter;
onFilterChanged(filterInstance?: IFilterComp, additionalEventAttributes?: any): void;
isSuppressFlashingCellsBecauseFiltering(): boolean;
isQuickFilterPresent(): boolean;
doesRowPassOtherFilters(filterToSkip: any, node: any): boolean;
private doesRowPassQuickFilterNoCache;
private doesRowPassQuickFilterCache;
private doesRowPassQuickFilter;
doesRowPassFilter(node: any, filterToSkip?: any): boolean;
private getQuickFilterTextForColumn;
private aggregateRowForQuickFilter;
private onNewRowsLoaded;
private createValueGetter;
getFilterComponent(column: Column, source: FilterRequestSource): Promise<IFilterComp>;
isFilterActive(column: Column): boolean;
getOrCreateFilterWrapper(column: Column, source: FilterRequestSource): FilterWrapper;
cachedFilter(column: Column): FilterWrapper;
private createFilterInstance;
createFilterParams(column: Column, colDef: ColDef, $scope?: any): IFilterParams;
private createFilterWrapper;
private putIntoGui;
private onNewColumnsLoaded;
destroyFilter(column: Column, source?: ColumnEventType): void;
private disposeFilterWrapper;
protected destroy(): void;
}
export interface FilterWrapper {
compiledElement: any;
column: Column;
filterPromise: Promise<IFilterComp>;
scope: any;
guiPromise: Promise<HTMLElement>;
}