@slickgrid-universal/odata 2.5.0 → 2.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/dist/commonjs/index.js +22 -22
  2. package/dist/commonjs/interfaces/index.js +19 -19
  3. package/dist/commonjs/interfaces/odataOption.interface.js +2 -2
  4. package/dist/commonjs/interfaces/odataServiceApi.interface.js +2 -2
  5. package/dist/commonjs/interfaces/odataSortingOption.interface.js +2 -2
  6. package/dist/commonjs/services/grid-odata.service.js +582 -582
  7. package/dist/commonjs/services/index.js +18 -18
  8. package/dist/commonjs/services/odataQueryBuilder.service.js +208 -208
  9. package/dist/esm/index.js +3 -3
  10. package/dist/esm/interfaces/index.js +3 -3
  11. package/dist/esm/interfaces/odataOption.interface.js +1 -1
  12. package/dist/esm/interfaces/odataServiceApi.interface.js +1 -1
  13. package/dist/esm/interfaces/odataSortingOption.interface.js +1 -1
  14. package/dist/esm/services/grid-odata.service.js +580 -580
  15. package/dist/esm/services/index.js +2 -2
  16. package/dist/esm/services/odataQueryBuilder.service.js +204 -204
  17. package/dist/tsconfig.tsbuildinfo +1 -0
  18. package/dist/{commonjs → types}/index.d.ts +4 -3
  19. package/dist/types/index.d.ts.map +1 -0
  20. package/dist/{esm → types}/interfaces/index.d.ts +4 -3
  21. package/dist/types/interfaces/index.d.ts.map +1 -0
  22. package/dist/{commonjs → types}/interfaces/odataOption.interface.d.ts +38 -37
  23. package/dist/types/interfaces/odataOption.interface.d.ts.map +1 -0
  24. package/dist/{esm → types}/interfaces/odataServiceApi.interface.d.ts +10 -9
  25. package/dist/types/interfaces/odataServiceApi.interface.d.ts.map +1 -0
  26. package/dist/{commonjs → types}/interfaces/odataSortingOption.interface.d.ts +6 -5
  27. package/dist/types/interfaces/odataSortingOption.interface.d.ts.map +1 -0
  28. package/dist/{commonjs → types}/services/grid-odata.service.d.ts +75 -74
  29. package/dist/types/services/grid-odata.service.d.ts.map +1 -0
  30. package/dist/{esm → types}/services/index.d.ts +3 -2
  31. package/dist/types/services/index.d.ts.map +1 -0
  32. package/dist/{commonjs → types}/services/odataQueryBuilder.service.d.ts +29 -28
  33. package/dist/types/services/odataQueryBuilder.service.d.ts.map +1 -0
  34. package/package.json +8 -8
  35. package/dist/commonjs/interfaces/index.d.ts +0 -3
  36. package/dist/commonjs/interfaces/odataServiceApi.interface.d.ts +0 -9
  37. package/dist/commonjs/services/index.d.ts +0 -2
  38. package/dist/esm/index.d.ts +0 -3
  39. package/dist/esm/interfaces/odataOption.interface.d.ts +0 -37
  40. package/dist/esm/interfaces/odataSortingOption.interface.d.ts +0 -5
  41. package/dist/esm/services/grid-odata.service.d.ts +0 -74
  42. package/dist/esm/services/odataQueryBuilder.service.d.ts +0 -28
@@ -1,28 +1,29 @@
1
- import { Column } from '@slickgrid-universal/common';
2
- import { OdataOption } from '../interfaces/odataOption.interface';
3
- export declare class OdataQueryBuilderService {
4
- _columnFilters: any;
5
- _defaultSortBy: string;
6
- _filterCount: number;
7
- _odataOptions: Partial<OdataOption>;
8
- protected _columnDefinitions: Column[];
9
- set columnDefinitions(columnDefinitions: Column[]);
10
- protected _datasetIdPropName: string;
11
- set datasetIdPropName(datasetIdPropName: string);
12
- constructor();
13
- buildQuery(): string;
14
- getFilterCount(): number;
15
- get columnFilters(): any[];
16
- get options(): Partial<OdataOption>;
17
- set options(options: Partial<OdataOption>);
18
- removeColumnFilter(fieldName: string): void;
19
- saveColumnFilter(fieldName: string, value: any, searchTerms?: any[]): void;
20
- /**
21
- * Change any OData options that will be used to build the query
22
- * @param object options
23
- */
24
- updateOptions(options: Partial<OdataOption>): void;
25
- protected addToFilterQueueWhenNotExists(filterStr: string): void;
26
- private buildSelectExpand;
27
- private buildExpand;
28
- }
1
+ import { Column } from '@slickgrid-universal/common';
2
+ import { OdataOption } from '../interfaces/odataOption.interface';
3
+ export declare class OdataQueryBuilderService {
4
+ _columnFilters: any;
5
+ _defaultSortBy: string;
6
+ _filterCount: number;
7
+ _odataOptions: Partial<OdataOption>;
8
+ protected _columnDefinitions: Column[];
9
+ set columnDefinitions(columnDefinitions: Column[]);
10
+ protected _datasetIdPropName: string;
11
+ set datasetIdPropName(datasetIdPropName: string);
12
+ constructor();
13
+ buildQuery(): string;
14
+ getFilterCount(): number;
15
+ get columnFilters(): any[];
16
+ get options(): Partial<OdataOption>;
17
+ set options(options: Partial<OdataOption>);
18
+ removeColumnFilter(fieldName: string): void;
19
+ saveColumnFilter(fieldName: string, value: any, searchTerms?: any[]): void;
20
+ /**
21
+ * Change any OData options that will be used to build the query
22
+ * @param object options
23
+ */
24
+ updateOptions(options: Partial<OdataOption>): void;
25
+ protected addToFilterQueueWhenNotExists(filterStr: string): void;
26
+ private buildSelectExpand;
27
+ private buildExpand;
28
+ }
29
+ //# sourceMappingURL=odataQueryBuilder.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"odataQueryBuilder.service.d.ts","sourceRoot":"","sources":["../../../src/services/odataQueryBuilder.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAE/D,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAElE,qBAAa,wBAAwB;IACnC,cAAc,EAAE,GAAG,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,SAAK;IACjB,aAAa,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAEpC,SAAS,CAAC,kBAAkB,EAAE,MAAM,EAAE,CAAM;IAC5C,IAAW,iBAAiB,CAAC,iBAAiB,EAAE,MAAM,EAAE,EAEvD;IAED,SAAS,CAAC,kBAAkB,SAAQ;IACpC,IAAW,iBAAiB,CAAC,iBAAiB,EAAE,MAAM,EAErD;;IAeD,UAAU,IAAI,MAAM;IAwEpB,cAAc,IAAI,MAAM;IAIxB,IAAI,aAAa,IAAI,GAAG,EAAE,CAEzB;IAED,IAAI,OAAO,IAAI,OAAO,CAAC,WAAW,CAAC,CAElC;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,EAExC;IAED,kBAAkB,CAAC,SAAS,EAAE,MAAM;IAMpC,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,WAAW,CAAC,EAAE,GAAG,EAAE;IAOnE;;;OAGG;IACH,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC;IA+B3C,SAAS,CAAC,6BAA6B,CAAC,SAAS,EAAE,MAAM;IAUzD,OAAO,CAAC,iBAAiB;IA8BzB,OAAO,CAAC,WAAW;CAuBpB"}
package/package.json CHANGED
@@ -1,25 +1,25 @@
1
1
  {
2
2
  "name": "@slickgrid-universal/odata",
3
- "version": "2.5.0",
3
+ "version": "2.6.0",
4
4
  "description": "Grid OData Service to sync a grid with an OData backend server",
5
5
  "main": "dist/commonjs/index.js",
6
6
  "module": "dist/esm/index.js",
7
7
  "exports": {
8
8
  ".": {
9
- "browser": "./dist/esm/index.js",
10
9
  "import": "./dist/esm/index.js",
11
- "require": "./dist/commonjs/index.js"
10
+ "require": "./dist/commonjs/index.js",
11
+ "default": "./dist/esm/index.js"
12
12
  },
13
13
  "./*": "./*"
14
14
  },
15
15
  "typesVersions": {
16
16
  "*": {
17
17
  "*": [
18
- "./dist/esm/index.d.ts"
18
+ "./dist/types/index.d.ts"
19
19
  ]
20
20
  }
21
21
  },
22
- "types": "dist/esm/index.d.ts",
22
+ "types": "dist/types/index.d.ts",
23
23
  "publishConfig": {
24
24
  "access": "public"
25
25
  },
@@ -43,12 +43,12 @@
43
43
  "not dead"
44
44
  ],
45
45
  "dependencies": {
46
- "@slickgrid-universal/common": "~2.5.0",
47
- "@slickgrid-universal/utils": "~2.5.0"
46
+ "@slickgrid-universal/common": "~2.6.0",
47
+ "@slickgrid-universal/utils": "~2.6.0"
48
48
  },
49
49
  "funding": {
50
50
  "type": "ko_fi",
51
51
  "url": "https://ko-fi.com/ghiscoding"
52
52
  },
53
- "gitHead": "5e25aa044aab301d7246c24003386ab59e75b486"
53
+ "gitHead": "9cddf3ee91a91ca829d0ced99c1f20f6d0e9941f"
54
54
  }
@@ -1,3 +0,0 @@
1
- export * from './odataOption.interface';
2
- export * from './odataServiceApi.interface';
3
- export * from './odataSortingOption.interface';
@@ -1,9 +0,0 @@
1
- import { BackendServiceApi } from '@slickgrid-universal/common';
2
- import { OdataOption } from './odataOption.interface';
3
- import { GridOdataService } from '../services/index';
4
- export interface OdataServiceApi extends BackendServiceApi {
5
- /** Backend Service Options */
6
- options?: Partial<OdataOption>;
7
- /** Backend Service instance (could be OData or GraphQL Service) */
8
- service: GridOdataService;
9
- }
@@ -1,2 +0,0 @@
1
- export * from './grid-odata.service';
2
- export * from './odataQueryBuilder.service';
@@ -1,3 +0,0 @@
1
- export { GridOdataService } from './services/grid-odata.service';
2
- export { OdataQueryBuilderService } from './services/odataQueryBuilder.service';
3
- export * from './interfaces/index';
@@ -1,37 +0,0 @@
1
- import { BackendServiceOption, CaseType } from '@slickgrid-universal/common';
2
- export interface OdataOption extends BackendServiceOption {
3
- /** What is the casing type to use? Typically that would be 1 of the following 2: camelCase or PascalCase */
4
- caseType: CaseType;
5
- /** Add the total count $inlinecount (OData v2) or $count (OData v4) to the OData query */
6
- enableCount?: boolean;
7
- /**
8
- * Query fields using $select. The row identifier field is always added.
9
- * E.g.: columns [{ field: 'date' }] results in $select=id,date
10
- */
11
- enableSelect?: boolean;
12
- /**
13
- * Query navigation fields (containing '/') using $expand.
14
- * E.g.: with odata v4 and columns [{ field: 'date' }, { field: 'products/name' }] result in $select=id,date&$expand=products($select=name)
15
- */
16
- enableExpand?: boolean;
17
- /** How many rows to pull? */
18
- top?: number;
19
- /** How many rows to skip on the pagination? */
20
- skip?: number;
21
- /** (alias to "filter") Filter string (or array of string) that must be a valid OData string */
22
- filter?: string | string[];
23
- /** Filter string (or array of string) that must be a valid OData string */
24
- filterBy?: any;
25
- /** What is the separator between each filters? Typically "and", "or" */
26
- filterBySeparator?: 'and' | 'or';
27
- /** Filter queue */
28
- filterQueue?: any[];
29
- /** Sorting string (or array of string) that must be a valid OData string */
30
- orderBy?: string | string[];
31
- /** OData (or any other) version number (the query string is different between versions) */
32
- version?: number;
33
- /** A callback which will extract and return the count from the data queried. Defaults to 'd.__count' for v2, '__count' for v3 and '@odata.count' for v4. */
34
- countExtractor?: (response: any) => number;
35
- /** A callback which will extract and return the dataset from the data queried. Defaults to 'd.results' for v2, 'results' for v3 and 'value' for v4. */
36
- datasetExtractor?: (response: any) => number;
37
- }
@@ -1,5 +0,0 @@
1
- import { SortDirection, SortDirectionString } from '@slickgrid-universal/common';
2
- export interface OdataSortingOption {
3
- field: string;
4
- direction: SortDirection | SortDirectionString;
5
- }
@@ -1,74 +0,0 @@
1
- import { BackendService, Column, ColumnFilters, ColumnSort, CurrentFilter, CurrentPagination, CurrentSorter, FilterChangedArgs, FieldType, GridOption, MultiColumnSort, Pagination, PaginationChangedArgs, OperatorType, OperatorString, SearchTerm, SharedService, SingleColumnSort, SlickGrid } from '@slickgrid-universal/common';
2
- import { OdataQueryBuilderService } from './odataQueryBuilder.service';
3
- import { OdataOption } from '../interfaces/index';
4
- export declare class GridOdataService implements BackendService {
5
- protected _currentFilters: CurrentFilter[];
6
- protected _currentPagination: CurrentPagination | null;
7
- protected _currentSorters: CurrentSorter[];
8
- protected _columnDefinitions: Column[];
9
- protected _grid: SlickGrid | undefined;
10
- protected _odataService: OdataQueryBuilderService;
11
- options?: Partial<OdataOption>;
12
- pagination: Pagination | undefined;
13
- defaultOptions: OdataOption;
14
- /** Getter for the Column Definitions */
15
- get columnDefinitions(): Column<any>[];
16
- /** Getter for the Odata Service */
17
- get odataService(): OdataQueryBuilderService;
18
- /** Getter for the Grid Options pulled through the Grid Object */
19
- protected get _gridOptions(): GridOption;
20
- constructor();
21
- init(serviceOptions?: Partial<OdataOption>, pagination?: Pagination, grid?: SlickGrid, sharedService?: SharedService): void;
22
- buildQuery(): string;
23
- postProcess(processResult: any): void;
24
- clearFilters(): void;
25
- clearSorters(): void;
26
- updateOptions(serviceOptions?: Partial<OdataOption>): void;
27
- removeColumnFilter(fieldName: string): void;
28
- /** Get the Filters that are currently used by the grid */
29
- getCurrentFilters(): CurrentFilter[];
30
- /** Get the Pagination that is currently used by the grid */
31
- getCurrentPagination(): CurrentPagination | null;
32
- /** Get the Sorters that are currently used by the grid */
33
- getCurrentSorters(): CurrentSorter[];
34
- /**
35
- * Mapper for mathematical operators (ex.: <= is "le", > is "gt")
36
- * @param string operator
37
- * @returns string map
38
- */
39
- mapOdataOperator(operator: string): string;
40
- resetPaginationOptions(): void;
41
- saveColumnFilter(fieldName: string, value: string, terms?: SearchTerm[]): void;
42
- processOnFilterChanged(_event: Event | undefined, args: FilterChangedArgs): string;
43
- processOnPaginationChanged(_event: Event | undefined, args: PaginationChangedArgs): string;
44
- processOnSortChanged(_event: Event | undefined, args: SingleColumnSort | MultiColumnSort): string;
45
- /**
46
- * loop through all columns to inspect filters & update backend service filters
47
- * @param columnFilters
48
- */
49
- updateFilters(columnFilters: ColumnFilters | CurrentFilter[], isUpdatedByPresetOrDynamically?: boolean): void;
50
- /**
51
- * Update the pagination component with it's new page number and size
52
- * @param newPage
53
- * @param pageSize
54
- */
55
- updatePagination(newPage: number, pageSize: number): void;
56
- /**
57
- * loop through all columns to inspect sorters & update backend service orderBy
58
- * @param columnFilters
59
- */
60
- updateSorters(sortColumns?: ColumnSort[], presetSorters?: CurrentSorter[]): string;
61
- /**
62
- * Cast provided filters (could be in multiple format) into an array of ColumnFilter
63
- * @param columnFilters
64
- */
65
- protected castFilterToColumnFilters(columnFilters: ColumnFilters | CurrentFilter[]): CurrentFilter[];
66
- /**
67
- * Filter by a range of searchTerms (2 searchTerms OR 1 string separated by 2 dots "value1..value2")
68
- */
69
- protected filterBySearchTermRange(fieldName: string, operator: OperatorType | OperatorString, searchTerms: SearchTerm[]): string;
70
- /**
71
- * Normalizes the search value according to field type and oData version.
72
- */
73
- protected normalizeSearchValue(fieldType: typeof FieldType[keyof typeof FieldType], searchValue: any, version: number): any;
74
- }
@@ -1,28 +0,0 @@
1
- import { Column } from '@slickgrid-universal/common';
2
- import { OdataOption } from '../interfaces/odataOption.interface';
3
- export declare class OdataQueryBuilderService {
4
- _columnFilters: any;
5
- _defaultSortBy: string;
6
- _filterCount: number;
7
- _odataOptions: Partial<OdataOption>;
8
- protected _columnDefinitions: Column[];
9
- set columnDefinitions(columnDefinitions: Column[]);
10
- protected _datasetIdPropName: string;
11
- set datasetIdPropName(datasetIdPropName: string);
12
- constructor();
13
- buildQuery(): string;
14
- getFilterCount(): number;
15
- get columnFilters(): any[];
16
- get options(): Partial<OdataOption>;
17
- set options(options: Partial<OdataOption>);
18
- removeColumnFilter(fieldName: string): void;
19
- saveColumnFilter(fieldName: string, value: any, searchTerms?: any[]): void;
20
- /**
21
- * Change any OData options that will be used to build the query
22
- * @param object options
23
- */
24
- updateOptions(options: Partial<OdataOption>): void;
25
- protected addToFilterQueueWhenNotExists(filterStr: string): void;
26
- private buildSelectExpand;
27
- private buildExpand;
28
- }