UNPKG

ag-grid-community

Version:

Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components

97 lines (96 loc) 3.96 kB
import { IDoesFilterPassParams, IFilterOptionDef, ProvidedFilterModel } from '../../interfaces/iFilter'; import { OptionsFactory } from './optionsFactory'; import { IProvidedFilterParams, ProvidedFilter } from './providedFilter'; import { Promise } from '../../utils'; export interface ISimpleFilterParams extends IProvidedFilterParams { filterOptions?: (IFilterOptionDef | string)[]; defaultOption?: string; suppressAndOrCondition?: boolean; } export interface ISimpleFilterModel extends ProvidedFilterModel { type: string; } export interface ICombinedSimpleModel<M extends ISimpleFilterModel> extends ProvidedFilterModel { operator: string; condition1: M; condition2: M; } export declare enum ConditionPosition { One = 0, Two = 1 } interface ISimpleFilterTranslations { filterOoo: string; empty: string; equals: string; notEqual: string; lessThan: string; greaterThan: string; inRange: string; inRangeStart: string; inRangeEnd: string; lessThanOrEqual: string; greaterThanOrEqual: string; contains: string; notContains: string; startsWith: string; endsWith: string; andCondition: string; orCondition: string; } /** * Every filter with a dropdown where the user can specify a comparing type against the filter values */ export declare abstract class SimpleFilter<M extends ISimpleFilterModel> extends ProvidedFilter { static EMPTY: string; static EQUALS: string; static NOT_EQUAL: string; static LESS_THAN: string; static LESS_THAN_OR_EQUAL: string; static GREATER_THAN: string; static GREATER_THAN_OR_EQUAL: string; static IN_RANGE: string; static CONTAINS: string; static NOT_CONTAINS: string; static STARTS_WITH: string; static ENDS_WITH: string; private eType1; private eType2; private eJoinOperatorAnd; private eJoinOperatorOr; private eCondition2Body; private eJoinOperatorPanel; private allowTwoConditions; protected optionsFactory: OptionsFactory; protected abstract getDefaultFilterOptions(): string[]; protected abstract createValueTemplate(position: ConditionPosition): string; protected abstract individualConditionPasses(params: IDoesFilterPassParams, type: ISimpleFilterModel): boolean; protected abstract isConditionUiComplete(position: ConditionPosition): boolean; protected abstract areSimpleModelsEqual(a: ISimpleFilterModel, b: ISimpleFilterModel): boolean; protected abstract getFilterType(): string; protected abstract setValueFromFloatingFilter(value: string): void; protected abstract createCondition(position: ConditionPosition): M; protected abstract setConditionIntoUi(model: ISimpleFilterModel, position: ConditionPosition): void; protected showValueFrom(type: string): boolean; protected showValueTo(type: string): boolean; onFloatingFilterChanged(type: string, value: any): void; protected setTypeFromFloatingFilter(type: string): void; getModelFromUi(): M | ICombinedSimpleModel<M>; protected getCondition1Type(): string; protected getCondition2Type(): string; protected getJoinOperator(): string; protected areModelsEqual(a: M | ICombinedSimpleModel<M>, b: M | ICombinedSimpleModel<M>): boolean; protected setModelIntoUi(model: ISimpleFilterModel | ICombinedSimpleModel<M>): Promise<void>; doesFilterPass(params: IDoesFilterPassParams): boolean; protected setParams(params: ISimpleFilterParams): void; private putOptionsIntoDropdown; isAllowTwoConditions(): boolean; protected createBodyTemplate(): string; protected getCssIdentifier(): string; protected updateUiVisibility(): void; protected resetUiToDefaults(silent?: boolean): Promise<void>; translate(toTranslate: keyof ISimpleFilterTranslations): string; addChangedListeners(): void; protected doesFilterHaveHiddenInput(filterType: string): boolean; } export {};