-
-
Notifications
You must be signed in to change notification settings - Fork 31
/
Copy pathbackendServiceOption.interface.ts
39 lines (32 loc) · 1.42 KB
/
backendServiceOption.interface.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import type { SlickGrid } from '../core/slickGrid.js';
import type { OperatorType } from '../enums/operatorType.enum.js';
import type { Column } from './column.interface.js';
export interface InfiniteScrollOption {
fetchSize: number;
}
export interface BackendServiceOption {
/** Infinite Scroll will fetch next page but without showing any pagination in the UI. */
infiniteScroll?: boolean | InfiniteScrollOption;
/** What are the pagination options? ex.: (first, last, offset) */
paginationOptions?: any;
/** array of Filtering Options, ex.: [{ field: 'firstName', operator: 'EQ', value: 'John' }] */
filteringOptions?: any[];
/** array of Filtering Options, ex.: [{ field: 'firstName', direction: 'DESC' }] */
sortingOptions?: any[];
/** Execute the process callback command on component init (page load) */
executeProcessCommandOnInit?: boolean;
}
export interface BackendServiceFilterQueryOverrideArgs {
/** The column to define the filter for */
columnDef: Column<any> | undefined;
/** The OData fieldName as target of the filter */
fieldName: string;
/** The operator selected by the user via the compound operator dropdown */
columnFilterOperator: OperatorType;
/** The inferred operator. See columnDef.autoParseInputFilterOperator */
operator: OperatorType;
/** The entered search value */
searchValues: any[];
/** A reference to the SlickGrid instance */
grid: SlickGrid | undefined;
}