UNPKG

@adaptabletools/adaptable

Version:

Powerful data-agnostic HTML5 AG Grid extension which provides advanced, cutting-edge functionality to meet all DataGrid requirements

131 lines (130 loc) 4.6 kB
import { AdaptableColumn, ColumnFilter, ColumnFilterPredicate } from '../types'; import { AdaptablePredicateDef, ColumnFilterDef } from '../AdaptableState/Common/AdaptablePredicate'; /** * Provides run-time access to Filter section of Adaptable State. */ export interface ColumnFilterApi { /** * Gets all Filter Predicates available for a given Column * @param column Column to lookup */ getFilterPredicateDefsForColumn(column: AdaptableColumn): AdaptablePredicateDef[]; /** * Gets all Filter Predicates available for a given ColumnId * @param columnId Id of Column to lookup */ getFilterPredicateDefsForColumnId(columnId: string): AdaptablePredicateDef[] | undefined; /** * Makes Quick Filter Bar appear */ showQuickFilterBar(): void; /** * Hides Quick Filter bar */ hideQuickFilterBar(): void; /** * Whether Quick Filter is available for use */ isQuickFilterAvailable(): boolean; /** * Whether Quick Filter Form is currently visible */ isQuickFilterVisible(): boolean; /** * Retrieves all Column Filters in currently applied Layout * @returns column filters */ getColumnFilters(): ColumnFilter[]; /** * Retrieves all active/no-suspended Column Filters in currently applied Layout * @returns column filters */ getActiveColumnFilters(): ColumnFilter[]; /** * Retrieves the Column Filter for the specified Column. * @param columnId Column ID to lookup */ getColumnFilterForColumn(columnId: string): ColumnFilter | undefined; /** * Retrieves all Column Filters in a given Layout * @param layoutName Layout to retrieve Column Filters for */ getColumnFiltersForLayout(layoutName: string): ColumnFilter[]; /** * Sets Column Filters in current Layout; replaces filters for existing column, leaving other column filters in place * @param columnFilters Column Filters to set * @returns column filters */ setColumnFilters(columnFilters: ColumnFilter[]): ColumnFilter[] | null; /** * Clears given Column Filter in the current Layout * @param columnFilter Column Filter to clear */ clearColumnFilter(columnFilter: ColumnFilter): void; /** * Clears Column Filter for given Column * @param columnId Column for which Column Filter should be cleared */ clearColumnFilterForColumn(columnId: string): void; /** * Clears Column Filters for given set of Columns * @param columns Columns for which Column Filter should be cleared */ clearColumnFiltersForColumns(columns: string[]): void; /** * Clears all Column Filters in the Current Layout */ clearColumnFilters(): void; /** * Clears existing Column Filters and sets new ones * @param columnFilters Column Filters to set */ clearAndSetColumnFilters(columnFilters: ColumnFilter[]): void; /** * Checks if a Column Filter is active (i.e. Predicate has no inputs or has inputs with values) */ isColumnFilterActive(columnFilter: ColumnFilter): boolean; /** * Checks if the given Coumn has an active Column Filter * @param columnId Column ID to check */ isColumnFilterActiveForColumn(columnId: string): boolean; /** * Retrieves the Column Filter definitions for all available Column Filters */ getColumnFilterDefs(): ColumnFilterDef[]; /** * Suspends a Column Filter * @param columnFilter Column Filter to Suspend */ suspendColumnFilter(columnFilter: ColumnFilter): void; /** * Unsuspend a Column Filter * @param columnFilter Column Filter to UnSuspend */ unSuspendColumnFilter(columnFilter: ColumnFilter): void; /** * Suspends all Column Filters */ suspendAllColumnFilters(): void; /** * Unsuspend all Column Filters */ unSuspendAllColumnFilters(): void; /** * Retrieves description of given Column Filter * @param columnFilter Column Filter to use */ columnFilterToString(columnFilter: ColumnFilter): string; /** * Retrieves descriptions of given Column Filters * @param columnFilters Column Filters to use */ columnFiltersToString(columnFilters: ColumnFilter[]): string; /** * Sets the Column Filter for a given Column * @param columnId - Column ID to set Column Filter for * @param predicate - Column Filter to set */ setColumnFilterForColumn(columnId: string, predicate: ColumnFilterPredicate): void; }