ag-grid-enterprise
Version:
Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
125 lines (124 loc) • 5.38 kB
TypeScript
import type { AgPromise, ComponentSelector, ElementParams, FilterDisplayParams, IAfterGuiAttachedParams, ISetFilter, ISetFilterParams, SetFilterModel, SetFilterModelValue, SetFilterParams, SetFilterUi } from 'ag-grid-community';
import { ProvidedFilter } from 'ag-grid-community';
import type { SetFilterHandler } from './setFilterHandler';
/** @param V type of value in the Set Filter */
export declare class SetFilter<V = string> extends ProvidedFilter<SetFilterModel, V, ISetFilterParams<any, V> & FilterDisplayParams<any, any, SetFilterModel>> implements ISetFilter<V>, SetFilterUi {
readonly filterType: "set";
private readonly eMiniFilter;
private readonly eFilterLoading;
private readonly eFilterLoadingIcon;
private readonly eSetFilterList;
private readonly eFilterNoMatches;
private virtualList;
private hardRefreshVirtualList;
handler: SetFilterHandler<V>;
private handlerDestroyFuncs?;
private formatter;
private displayValueModel;
private miniFilterText;
/** When true, in excelMode = 'windows', it adds previously selected filter items to newly checked filter selection */
private addCurrentSelectionToFilter;
/** Keys that have been selected for this filter. */
private selectedKeys;
constructor();
protected setParams(params: ISetFilterParams<any, V> & FilterDisplayParams<any, any, SetFilterModel>): void;
refresh(legacyNewParams: SetFilterParams<any, V>): boolean;
protected updateParams(newParams: ISetFilterParams<any, V> & FilterDisplayParams<any, any, SetFilterModel>, oldParams: ISetFilterParams<any, V> & FilterDisplayParams<any, any, SetFilterModel>): void;
private updateHandler;
protected updateUiVisibility(): void;
protected createBodyTemplate(): ElementParams | null;
protected getAgComponents(): ComponentSelector[];
protected handleKeyDown(e: KeyboardEvent): void;
private handleKeyEnter;
private setModelAndRefresh;
protected setModelIntoUi(model: SetFilterModel | null): AgPromise<void>;
getModelFromUi(): SetFilterModel | null;
protected areNonNullModelsEqual(a: SetFilterModel, b: SetFilterModel): boolean;
private setIsLoading;
private initialiseFilterBodyUi;
private initLoading;
private initVirtualList;
private createVirtualListModel;
private getSelectAllLabel;
private getAddSelectionToFilterLabel;
private createSetListItem;
private newSetTreeItemAttributes;
private newSetListItemAttributes;
private updateSetListItem;
private isSelectedExpanded;
private isSetFilterModelTreeItem;
private initMiniFilter;
private updateMiniFilter;
afterGuiAttached(params?: IAfterGuiAttachedParams): void;
afterGuiDetached(): void;
protected canApply(model: SetFilterModel | null): boolean;
/**
* @deprecated v34 Internal method - should only be called by the grid.
*/
onNewRowsLoaded(): void;
/**
* @deprecated v34 Use the same method on the filter handler (`api.getColumnFilterHandler()`) instead.
*/
setFilterValues(values: (V | null)[]): void;
/**
* @deprecated v34 Use the same method on the filter handler (`api.getColumnFilterHandler()`) instead.
*/
resetFilterValues(): void;
/**
* @deprecated v34 Use the same method on the filter handler (`api.getColumnFilterHandler()`) instead.
*/
refreshFilterValues(): void;
private doRefreshFilterValues;
/**
* @deprecated v34 Internal method - should only be called by the grid.
*/
onAnyFilterChanged(): void;
private onMiniFilterInput;
private updateUiAfterMiniFilterChange;
private showOrHideResults;
private resetMiniFilter;
private onMiniFilterKeyDown;
private focusRowIfAlive;
private onSelectAll;
private onGroupItemSelected;
private onItemSelected;
private onExpandAll;
private onExpandedChanged;
private refreshAfterExpansion;
private refreshAfterSelection;
setMiniFilter(newMiniFilter: string | null): void;
/** Sets mini filter value. Returns true if it changed from last value, otherwise false. */
private doSetMiniFilter;
getMiniFilter(): string | null;
protected getUiChangeEventParams(): any;
protected getState(): any;
private checkAndRefreshVirtualList;
/**
* @deprecated v34 Use the same method on the filter handler (`api.getColumnFilterHandler()`) instead.
*/
getFilterKeys(): SetFilterModelValue;
/**
* @deprecated v34 Use the same method on the filter handler (`api.getColumnFilterHandler()`) instead.
*/
getFilterValues(): (V | null)[];
private refreshVirtualList;
private isSelectAllSelected;
private areAllChildrenSelected;
private resetExpansion;
getModelAsString(model: SetFilterModel | null): string;
protected getPositionableElement(): HTMLElement;
private updateDisplayedValues;
private hasSelections;
private isInWindowsExcelMode;
private isAddCurrentSelectionToFilterChecked;
private showAddCurrentSelectionToFilter;
private selectAllMatchingMiniFilter;
private deselectAllMatchingMiniFilter;
private setKeySelected;
private isEverythingVisibleSelected;
private isNothingVisibleSelected;
private getSelectedModel;
private setSelectedModel;
private resetSelectionState;
destroy(): void;
}