@slickgrid-universal/odata 0.19.2 → 1.2.1

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.
package/CHANGELOG.md CHANGED
@@ -3,7 +3,18 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
- ## [0.19.2](https://github.com/ghiscoding/slickgrid-universal/compare/v0.19.1...v0.19.2) (2021-11-19)
6
+ ## [1.2.1](https://github.com/ghiscoding/slickgrid-universal/compare/v1.2.0...v1.2.1) (2022-01-18)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **odata:** fix range filtering with ".." ([d14d3e9](https://github.com/ghiscoding/slickgrid-universal/commit/d14d3e9f92fad2c14a7227b8f822dffc79c8934c))
12
+
13
+
14
+
15
+
16
+
17
+ # [1.2.0](https://github.com/ghiscoding/slickgrid-universal/compare/v1.1.1...v1.2.0) (2022-01-06)
7
18
 
8
19
  **Note:** Version bump only for package @slickgrid-universal/odata
9
20
 
@@ -11,6 +22,34 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
11
22
 
12
23
 
13
24
 
25
+ ## [1.1.1](https://github.com/ghiscoding/slickgrid-universal/compare/v1.1.0...v1.1.1) (2021-12-11)
26
+
27
+
28
+ ### Bug Fixes
29
+
30
+ * **build:** bump version manually bcoz of previous force push ([5e9a610](https://github.com/ghiscoding/slickgrid-universal/commit/5e9a610ad01d752673856591f9b5de73b0ece0e9))
31
+
32
+
33
+
34
+
35
+
36
+ # [1.1.0](https://github.com/ghiscoding/slickgrid-universal/compare/v0.19.2...v1.1.0) (2021-12-11)
37
+
38
+ **Note:** Version bump only for package @slickgrid-universal/odata
39
+
40
+
41
+
42
+
43
+
44
+
45
+ ## [0.19.2](https://github.com/ghiscoding/slickgrid-universal/compare/v0.19.1...v0.19.2) (2021-11-19)
46
+
47
+ **Note:** Version bump only for package @slickgrid-universal/odata
48
+
49
+
50
+
51
+
52
+
14
53
 
15
54
  ## [0.19.1](https://github.com/ghiscoding/slickgrid-universal/compare/v0.19.0...v0.19.1) (2021-11-15)
16
55
 
package/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2020-2021, Ghislain B. - Slickgrid-Universal
1
+ Copyright (c) 2020-2022, Ghislain B. - Slickgrid-Universal
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining
4
4
  a copy of this software and associated documentation files (the
package/README.md CHANGED
@@ -1,51 +1,51 @@
1
- [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
2
- [![TypeScript](https://img.shields.io/badge/%3C%2F%3E-TypeScript-%230074c1.svg)](http://www.typescriptlang.org/)
3
- [![lerna](https://img.shields.io/badge/maintained%20with-lerna-cc00ff.svg)](https://lerna.js.org/)
4
- [![npm](https://img.shields.io/npm/v/@slickgrid-universal/odata.svg?color=forest)](https://www.npmjs.com/package/@slickgrid-universal/odata)
5
- [![npm](https://img.shields.io/npm/dy/@slickgrid-universal/odata?color=forest)](https://www.npmjs.com/package/@slickgrid-universal/odata)
6
-
7
- [![Actions Status](https://github.com/ghiscoding/slickgrid-universal/workflows/CI%20Build/badge.svg)](https://github.com/ghiscoding/slickgrid-universal/actions)
8
- [![Cypress.io](https://img.shields.io/badge/tested%20with-Cypress-04C38E.svg)](https://www.cypress.io/)
9
- [![jest](https://jestjs.io/img/jest-badge.svg)](https://github.com/facebook/jest)
10
- [![codecov](https://codecov.io/gh/ghiscoding/slickgrid-universal/branch/master/graph/badge.svg)](https://codecov.io/gh/ghiscoding/slickgrid-universal)
11
-
12
- ## Grid OData Service
13
- #### @slickgrid-universal/odata
14
-
15
- OData Service to sync a grid with an OData backend server, the service will consider any Filter/Sort and automatically build the necessary OData query string that is sent to your OData backend server.
16
-
17
- ### Internal Dependencies
18
- - [@slickgrid-universal/common](https://github.com/ghiscoding/slickgrid-universal/tree/master/packages/common)
19
-
20
- ### External Dependencies
21
- No external dependency
22
-
23
- ### Installation
24
- Follow the instruction provided in the main [README](https://github.com/ghiscoding/slickgrid-universal#installation), you can see a demo by looking at the [GitHub Demo](https://ghiscoding.github.io/slickgrid-universal/#/example09) page.
25
-
26
- ### Usage
27
- Simply use pass the Service into the `backendServiceApi` Grid Option.
28
-
29
- ##### ViewModel
30
- ```ts
31
- import { GridOdataService, OdataServiceApi } from '@slickgrid-universal/odata';
32
-
33
- export class MyExample {
34
- initializeGrid {
35
- this.gridOptions = {
36
- backendServiceApi: {
37
- service: new GridOdataService(),
38
- options: {
39
- version: 4 // OData v4
40
- },
41
- preProcess: () => this.displaySpinner(true),
42
- process: (query) => this.getCustomerApiCall(query),
43
- postProcess: (response) => {
44
- this.displaySpinner(false);
45
- this.getCustomerCallback(response);
46
- }
47
- } as OdataServiceApi
48
- }
49
- }
50
- }
51
- ```
1
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
2
+ [![TypeScript](https://img.shields.io/badge/%3C%2F%3E-TypeScript-%230074c1.svg)](http://www.typescriptlang.org/)
3
+ [![lerna](https://img.shields.io/badge/maintained%20with-lerna-cc00ff.svg)](https://lerna.js.org/)
4
+ [![npm](https://img.shields.io/npm/v/@slickgrid-universal/odata.svg?color=forest)](https://www.npmjs.com/package/@slickgrid-universal/odata)
5
+ [![npm](https://img.shields.io/npm/dy/@slickgrid-universal/odata?color=forest)](https://www.npmjs.com/package/@slickgrid-universal/odata)
6
+
7
+ [![Actions Status](https://github.com/ghiscoding/slickgrid-universal/workflows/CI%20Build/badge.svg)](https://github.com/ghiscoding/slickgrid-universal/actions)
8
+ [![Cypress.io](https://img.shields.io/badge/tested%20with-Cypress-04C38E.svg)](https://www.cypress.io/)
9
+ [![jest](https://jestjs.io/img/jest-badge.svg)](https://github.com/facebook/jest)
10
+ [![codecov](https://codecov.io/gh/ghiscoding/slickgrid-universal/branch/master/graph/badge.svg)](https://codecov.io/gh/ghiscoding/slickgrid-universal)
11
+
12
+ ## Grid OData Service
13
+ #### @slickgrid-universal/odata
14
+
15
+ OData Service to sync a grid with an OData backend server, the service will consider any Filter/Sort and automatically build the necessary OData query string that is sent to your OData backend server.
16
+
17
+ ### Internal Dependencies
18
+ - [@slickgrid-universal/common](https://github.com/ghiscoding/slickgrid-universal/tree/master/packages/common)
19
+
20
+ ### External Dependencies
21
+ No external dependency
22
+
23
+ ### Installation
24
+ Follow the instruction provided in the main [README](https://github.com/ghiscoding/slickgrid-universal#installation), you can see a demo by looking at the [GitHub Demo](https://ghiscoding.github.io/slickgrid-universal/#/example09) page.
25
+
26
+ ### Usage
27
+ Simply use pass the Service into the `backendServiceApi` Grid Option.
28
+
29
+ ##### ViewModel
30
+ ```ts
31
+ import { GridOdataService, OdataServiceApi } from '@slickgrid-universal/odata';
32
+
33
+ export class MyExample {
34
+ initializeGrid {
35
+ this.gridOptions = {
36
+ backendServiceApi: {
37
+ service: new GridOdataService(),
38
+ options: {
39
+ version: 4 // OData v2 or v4
40
+ },
41
+ preProcess: () => this.displaySpinner(true),
42
+ process: (query) => this.getCustomerApiCall(query),
43
+ postProcess: (response) => {
44
+ this.displaySpinner(false);
45
+ this.getCustomerCallback(response);
46
+ }
47
+ } as OdataServiceApi
48
+ }
49
+ }
50
+ }
51
+ ```
@@ -4,6 +4,16 @@ export interface OdataOption extends BackendServiceOption {
4
4
  caseType: CaseType;
5
5
  /** Add the total count $inlinecount (OData v2) or $count (OData v4) to the OData query */
6
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;
7
17
  /** How many rows to pull? */
8
18
  top?: number;
9
19
  /** How many rows to skip on the pagination? */
@@ -20,4 +30,8 @@ export interface OdataOption extends BackendServiceOption {
20
30
  orderBy?: string | string[];
21
31
  /** OData (or any other) version number (the query string is different between versions) */
22
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;
23
37
  }
@@ -20,6 +20,7 @@ export declare class GridOdataService implements BackendService {
20
20
  constructor();
21
21
  init(serviceOptions?: Partial<OdataOption>, pagination?: Pagination, grid?: SlickGrid, sharedService?: SharedService): void;
22
22
  buildQuery(): string;
23
+ postProcess(processResult: any): void;
23
24
  clearFilters(): void;
24
25
  clearSorters(): void;
25
26
  updateOptions(serviceOptions?: Partial<OdataOption>): void;
@@ -55,10 +55,60 @@ class GridOdataService {
55
55
  const tmpColumnDefinitions = (_b = (_a = sharedService === null || sharedService === void 0 ? void 0 : sharedService.allColumns) !== null && _a !== void 0 ? _a : grid.getColumns()) !== null && _b !== void 0 ? _b : [];
56
56
  this._columnDefinitions = tmpColumnDefinitions.filter((column) => !column.excludeFromQuery);
57
57
  }
58
+ this._odataService.columnDefinitions = this._columnDefinitions;
59
+ this._odataService.datasetIdPropName = this._gridOptions.datasetIdPropertyName || 'id';
58
60
  }
59
61
  buildQuery() {
60
62
  return this._odataService.buildQuery();
61
63
  }
64
+ postProcess(processResult) {
65
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
66
+ const odataVersion = (_c = (_b = (_a = this._odataService) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.version) !== null && _c !== void 0 ? _c : 2;
67
+ if (this.pagination && ((_e = (_d = this._odataService) === null || _d === void 0 ? void 0 : _d.options) === null || _e === void 0 ? void 0 : _e.enableCount)) {
68
+ const countExtractor = ((_h = (_g = (_f = this._odataService) === null || _f === void 0 ? void 0 : _f.options) === null || _g === void 0 ? void 0 : _g.countExtractor) !== null && _h !== void 0 ? _h : odataVersion >= 4) ? (r) => r === null || r === void 0 ? void 0 : r['@odata.count'] :
69
+ odataVersion === 3 ? (r) => r === null || r === void 0 ? void 0 : r['__count'] :
70
+ (r) => { var _a; return (_a = r === null || r === void 0 ? void 0 : r.d) === null || _a === void 0 ? void 0 : _a['__count']; };
71
+ const count = countExtractor(processResult);
72
+ if (typeof count === 'number') {
73
+ this.pagination.totalItems = count;
74
+ }
75
+ }
76
+ if ((_k = (_j = this._odataService) === null || _j === void 0 ? void 0 : _j.options) === null || _k === void 0 ? void 0 : _k.enableExpand) {
77
+ const datasetExtractor = ((_o = (_m = (_l = this._odataService) === null || _l === void 0 ? void 0 : _l.options) === null || _m === void 0 ? void 0 : _m.datasetExtractor) !== null && _o !== void 0 ? _o : odataVersion >= 4) ? (r) => r === null || r === void 0 ? void 0 : r.value :
78
+ odataVersion === 3 ? (r) => r === null || r === void 0 ? void 0 : r.results :
79
+ (r) => { var _a; return (_a = r === null || r === void 0 ? void 0 : r.d) === null || _a === void 0 ? void 0 : _a.results; };
80
+ const dataset = datasetExtractor(processResult);
81
+ if (Array.isArray(dataset)) {
82
+ // Flatten navigation fields (fields containing /) in the dataset (regardless of enableExpand).
83
+ // E.g. given columndefinition 'product/name' and dataset [{id: 1,product:{'name':'flowers'}}], then flattens to [{id:1,'product/name':'flowers'}]
84
+ const navigationFields = new Set(this._columnDefinitions.flatMap(x => { var _a; return (_a = x.fields) !== null && _a !== void 0 ? _a : [x.field]; }).filter(x => x.includes('/')));
85
+ if (navigationFields.size > 0) {
86
+ const navigations = new Set();
87
+ for (const item of dataset) {
88
+ for (const field of navigationFields) {
89
+ const names = field.split('/');
90
+ const navigation = names[0];
91
+ navigations.add(navigation);
92
+ let val = item[navigation];
93
+ for (let i = 1; i < names.length; i++) {
94
+ const mappedName = names[i];
95
+ if (val && typeof val === 'object' && mappedName in val) {
96
+ val = val[mappedName];
97
+ }
98
+ }
99
+ item[field] = val;
100
+ }
101
+ // Remove navigation objects from the dataset to free memory and make sure we never work with them.
102
+ for (const navigation of navigations) {
103
+ if (typeof item[navigation] === 'object') {
104
+ delete item[navigation];
105
+ }
106
+ }
107
+ }
108
+ }
109
+ }
110
+ }
111
+ }
62
112
  clearFilters() {
63
113
  this._currentFilters = [];
64
114
  this.updateFilters([]);
@@ -172,7 +222,7 @@ class GridOdataService {
172
222
  * @param columnFilters
173
223
  */
174
224
  updateFilters(columnFilters, isUpdatedByPresetOrDynamically) {
175
- var _a, _b, _c, _d;
225
+ var _a, _b, _c, _d, _e;
176
226
  let searchBy = '';
177
227
  const searchByArray = [];
178
228
  const odataVersion = (_c = (_b = (_a = this._odataService) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.version) !== null && _c !== void 0 ? _c : 2;
@@ -217,8 +267,8 @@ class GridOdataService {
217
267
  continue;
218
268
  }
219
269
  if (Array.isArray(searchTerms) && searchTerms.length === 1 && typeof searchTerms[0] === 'string' && searchTerms[0].indexOf('..') >= 0) {
220
- if (!operator) {
221
- operator = this._gridOptions.defaultFilterRangeOperator;
270
+ if (operator !== common_1.OperatorType.rangeInclusive && operator !== common_1.OperatorType.rangeExclusive) {
271
+ operator = (_e = this._gridOptions.defaultFilterRangeOperator) !== null && _e !== void 0 ? _e : common_1.OperatorType.rangeInclusive;
222
272
  }
223
273
  searchTerms = searchTerms[0].split('..', 2);
224
274
  if (searchTerms[0] === '') {
@@ -1 +1 @@
1
- {"version":3,"file":"grid-odata.service.js","sourceRoot":"","sources":["../../../src/services/grid-odata.service.ts"],"names":[],"mappings":";;;AAAA,wDA8BqC;AACrC,2EAAuE;AAGvE,MAAM,sBAAsB,GAAG,EAAE,CAAC;AAClC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAE7B,MAAa,gBAAgB;IA8B3B;QA7BU,oBAAe,GAAoB,EAAE,CAAC;QACtC,uBAAkB,GAA6B,IAAI,CAAC;QACpD,oBAAe,GAAoB,EAAE,CAAC;QACtC,uBAAkB,GAAa,EAAE,CAAC;QAK5C,mBAAc,GAAgB;YAC5B,GAAG,EAAE,sBAAsB;YAC3B,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE,iBAAQ,CAAC,UAAU;SAC9B,CAAC;QAkBA,IAAI,CAAC,aAAa,GAAG,IAAI,oDAAwB,EAAE,CAAC;IACtD,CAAC;IAjBD,wCAAwC;IACxC,IAAI,iBAAiB;QACnB,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED,mCAAmC;IACnC,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,iEAAiE;IACjE,IAAc,YAAY;;QACxB,OAAO,CAAC,MAAA,IAAI,CAAC,KAAK,0CAAE,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,CAAC;IAMD,IAAI,CAAC,cAAqC,EAAE,UAAuB,EAAE,IAAgB,EAAE,aAA6B;;QAClH,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,MAAM,aAAa,GAAG,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,cAAc,EAAE,CAAC;QAEpE,6HAA6H;QAC7H,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE;YAC5D,2DAA2D;YAC3D,IAAI,CAAC,aAAa,CAAC,OAAO,GAAG,EAAE,GAAG,aAAa,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;YAClE,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;SAChC;aAAM;YACL,MAAM,SAAS,GAAG,CAAC,UAAU,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC;YACtG,IAAI,CAAC,aAAa,CAAC,OAAO,GAAG,EAAE,GAAG,aAAa,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;YAClE,IAAI,CAAC,kBAAkB,GAAG;gBACxB,UAAU,EAAE,CAAC;gBACb,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,IAAI,iBAAiB;aACzF,CAAC;SACH;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;QAC1C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAE7B,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,EAAE;YACpB,MAAM,oBAAoB,GAAG,MAAA,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,UAAU,mCAAI,IAAI,CAAC,UAAU,EAAE,mCAAI,EAAE,CAAC;YAClF,IAAI,CAAC,kBAAkB,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;SACrG;IACH,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;IACzC,CAAC;IAED,YAAY;QACV,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC;IAED,YAAY;QACV,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC;IAED,aAAa,CAAC,cAAqC;QACjD,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,cAAc,EAAE,CAAC;QACtD,IAAI,CAAC,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC5C,CAAC;IAED,kBAAkB,CAAC,SAAiB;QAClC,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACnD,CAAC;IAED,0DAA0D;IAC1D,iBAAiB;QACf,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,4DAA4D;IAC5D,oBAAoB;QAClB,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED,0DAA0D;IAC1D,iBAAiB;QACf,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED;;;;OAIG;IACH,gBAAgB,CAAC,QAAgB;QAC/B,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,QAAQ,QAAQ,EAAE;YAChB,KAAK,GAAG;gBACN,GAAG,GAAG,IAAI,CAAC;gBACX,MAAM;YACR,KAAK,IAAI;gBACP,GAAG,GAAG,IAAI,CAAC;gBACX,MAAM;YACR,KAAK,GAAG;gBACN,GAAG,GAAG,IAAI,CAAC;gBACX,MAAM;YACR,KAAK,IAAI;gBACP,GAAG,GAAG,IAAI,CAAC;gBACX,MAAM;YACR,KAAK,IAAI,CAAC;YACV,KAAK,IAAI;gBACP,GAAG,GAAG,IAAI,CAAC;gBACX,MAAM;YACR,KAAK,GAAG,CAAC;YACT,KAAK,IAAI,CAAC;YACV;gBACE,GAAG,GAAG,IAAI,CAAC;gBACX,MAAM;SACT;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;OAEG;IACH,sBAAsB;QACpB,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;YAC/B,IAAI,EAAE,CAAC;SACR,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB,CAAC,SAAiB,EAAE,KAAa,EAAE,KAAoB;QACrE,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,sBAAsB,CAAC,MAAyB,EAAE,IAAuB;QACvE,MAAM,WAAW,GAAe,IAAI,CAAC,YAAY,CAAC;QAClD,MAAM,UAAU,GAAG,WAAW,CAAC,iBAAiB,CAAC;QAEjD,IAAI,UAAU,KAAK,SAAS,EAAE;YAC5B,MAAM,IAAI,KAAK,CAAC,sFAAsF,CAAC,CAAC;SACzG;QAED,0HAA0H;QAC1H,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAE1E,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACvB,MAAM,IAAI,KAAK,CAAC,+GAA+G,CAAC,CAAC;SAClI;QAED,8DAA8D;QAC9D,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAEvC,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,0BAA0B,CAAC,MAAyB,EAAE,IAA2B;QAC/E,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACxG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAE9C,iEAAiE;QACjE,OAAO,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,oBAAoB,CAAC,MAAyB,EAAE,IAAwC;QACtF,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAE,IAAwB,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,EAAE,QAAQ,EAAG,IAAmB,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,EAAG,IAAmB,CAAC,OAAO,EAAE,OAAO,EAAG,IAAmB,CAAC,OAAO,EAAE,CAAC,CAAC;QAEzN,8DAA8D;QAC9D,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAEhC,iEAAiE;QACjE,OAAO,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;IACzC,CAAC;IAED;;;OAGG;IACH,aAAa,CAAC,aAA8C,EAAE,8BAAwC;;QACpG,IAAI,QAAQ,GAAG,EAAE,CAAC;QAClB,MAAM,aAAa,GAAa,EAAE,CAAC;QACnC,MAAM,YAAY,GAAG,MAAA,MAAA,MAAA,IAAI,CAAC,aAAa,0CAAE,OAAO,0CAAE,OAAO,mCAAI,CAAC,CAAC;QAE/D,yDAAyD;QACzD,IAAI,8BAA8B,EAAE;YAClC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,yBAAyB,CAAC,aAAa,CAAC,CAAC;SACtE;QAED,8CAA8C;QAC9C,KAAK,MAAM,QAAQ,IAAI,aAAa,EAAE;YACpC,IAAI,aAAa,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;gBAC1C,MAAM,YAAY,GAAI,aAAqB,CAAC,QAAQ,CAAC,CAAC;gBAEtD,uGAAuG;gBACvG,IAAI,SAA6B,CAAC;gBAClC,IAAI,8BAA8B,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE;oBAC5E,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,MAAc,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,YAAY,CAAC,QAAQ,CAAC,CAAC;iBACnG;qBAAM;oBACL,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC;iBACpC;gBACD,IAAI,CAAC,SAAS,EAAE;oBACd,MAAM,IAAI,KAAK,CAAC,2KAA2K,CAAC,CAAC;iBAC9L;gBAED,IAAI,SAAS,GAAG,CAAA,MAAA,SAAS,CAAC,MAAM,0CAAE,UAAU,KAAI,SAAS,CAAC,gBAAgB,IAAI,SAAS,CAAC,UAAU,IAAI,SAAS,CAAC,KAAK,IAAI,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC;gBAC9I,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,IAAI,kBAAS,CAAC,MAAM,CAAC;gBACrD,IAAI,WAAW,GAAG,CAAC,YAAY,IAAI,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC1G,IAAI,gBAAgB,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtG,IAAI,OAAO,gBAAgB,KAAK,WAAW,EAAE;oBAC3C,gBAAgB,GAAG,EAAE,CAAC;iBACvB;gBAED,IAAI,CAAC,SAAS,EAAE;oBACd,MAAM,IAAI,KAAK,CAAC,mLAAmL,CAAC,CAAC;iBACtM;gBAED,gBAAgB,GAAG,CAAC,gBAAgB,KAAK,SAAS,IAAI,gBAAgB,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,gBAAgB,EAAE,CAAC,CAAC,0BAA0B;gBACzI,MAAM,OAAO,GAAG,gBAAgB,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC,CAAC,0FAA0F;gBAC3K,IAAI,QAAQ,GAAG,YAAY,CAAC,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACtE,IAAI,WAAW,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChD,MAAM,aAAa,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,qBAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtH,MAAM,gBAAgB,GAAG,YAAY,CAAC,kBAAkB,IAAI,KAAK,CAAC;gBAElE,4CAA4C;gBAC5C,IAAI,SAAS,IAAI,WAAW,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,IAAI,CAAC,EAAE;oBAC9D,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;oBACnC,SAAS;iBACV;gBAED,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,WAAW,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;oBACrI,IAAI,CAAC,QAAQ,EAAE;wBACb,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,0BAA0B,CAAC;qBACzD;oBAED,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;oBAC5C,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE;wBACzB,QAAQ,GAAG,QAAQ,KAAK,qBAAY,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,KAAK,qBAAY,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;wBACvH,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;wBACnC,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;qBAC9B;yBAAM,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE;wBAChC,QAAQ,GAAG,QAAQ,KAAK,qBAAY,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,KAAK,qBAAY,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;wBACvH,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBACtC,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;qBAC9B;iBACF;gBAED,kIAAkI;gBAClI,kFAAkF;gBAClF,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAC,MAAM,EAAE;oBACjC,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC;iBACtC;gBAED,wEAAwE;gBACxE,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE;oBAC3G,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,0BAA0B,CAAC;iBACzD;gBAED,kEAAkE;gBAClE,IAAI,CAAC,QAAQ,KAAK,qBAAY,CAAC,cAAc,IAAI,qBAAY,CAAC,cAAc,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,SAAS,KAAK,kBAAS,CAAC,IAAI,EAAE;oBACvK,QAAQ,GAAG,qBAAY,CAAC,KAAK,CAAC;iBAC/B;gBAED,wFAAwF;gBACxF,IAAI,CAAC,QAAQ,EAAE;oBACb,QAAQ,GAAG,IAAA,+BAAsB,EAAC,SAAS,CAAC,CAAC;iBAC9C;gBAED,wBAAwB;gBACxB,IAAI,gBAAgB,EAAE;oBACpB,oDAAoD;oBACpD,IAAI,SAAS,EAAE;wBACb,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,gBAAgB,EAAE,WAAW,CAAC,CAAC;qBACjE;iBACF;qBAAM;oBACL,8BAA8B;oBAC9B,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;oBAC9E,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;wBAC9B,WAAW,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;4BACnC,WAAW,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,WAAW,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC,CAAC;wBAC9F,CAAC,CAAC,CAAC;qBACJ;oBAED,QAAQ,GAAG,EAAE,CAAC;oBAEd,8DAA8D;oBAC9D,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,KAAK,iBAAQ,CAAC,UAAU,EAAE;wBAC/D,SAAS,GAAG,IAAA,kBAAS,EAAC,SAAS,IAAI,EAAE,CAAC,CAAC;qBACxC;oBAED,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,KAAK,IAAI,QAAQ,KAAK,OAAO,IAAI,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,QAAQ,CAAC,EAAE;wBAChK,+FAA+F;wBAC/F,MAAM,cAAc,GAAa,EAAE,CAAC;wBACpC,IAAI,QAAQ,KAAK,IAAI,EAAE;4BACrB,uDAAuD;4BACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;gCACtD,cAAc,CAAC,IAAI,CAAC,GAAG,SAAS,OAAO,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;6BAC1D;4BACD,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;yBACxC;6BAAM;4BACL,wDAAwD;4BACxD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;gCACtD,cAAc,CAAC,IAAI,CAAC,GAAG,SAAS,OAAO,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;6BAC1D;4BACD,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBACzC;wBACD,IAAI,CAAC,CAAC,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,EAAE;4BACxF,QAAQ,GAAG,IAAI,QAAQ,GAAG,CAAC;yBAC5B;qBACF;yBAAM,IAAI,QAAQ,KAAK,GAAG,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,IAAI,IAAI,aAAa,KAAK,GAAG,IAAI,QAAQ,KAAK,qBAAY,CAAC,UAAU,IAAI,QAAQ,KAAK,qBAAY,CAAC,QAAQ,EAAE;wBAC5K,iEAAiE;wBACjE,QAAQ,GAAG,CAAC,QAAQ,KAAK,GAAG,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,qBAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,SAAS,KAAK,WAAW,GAAG,CAAC,CAAC,CAAC,cAAc,SAAS,KAAK,WAAW,GAAG,CAAC;qBAClL;yBAAM,IAAI,QAAQ,KAAK,qBAAY,CAAC,cAAc,IAAI,QAAQ,KAAK,qBAAY,CAAC,cAAc,EAAE;wBAC/F,+CAA+C;wBAC/C,QAAQ,GAAG,IAAI,CAAC,uBAAuB,CAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;qBAC3E;yBAAM,IAAI,CAAC,QAAQ,KAAK,EAAE,IAAI,QAAQ,KAAK,qBAAY,CAAC,QAAQ,IAAI,QAAQ,KAAK,qBAAY,CAAC,WAAW,CAAC;wBACzG,CAAC,SAAS,KAAK,kBAAS,CAAC,MAAM,IAAI,SAAS,KAAK,kBAAS,CAAC,IAAI,IAAI,SAAS,KAAK,kBAAS,CAAC,QAAQ,CAAC,EAAE;wBACtG,QAAQ,GAAG,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,SAAS,KAAK,WAAW,GAAG,CAAC,CAAC,CAAC,eAAe,WAAW,KAAK,SAAS,GAAG,CAAC;wBACtH,IAAI,QAAQ,KAAK,qBAAY,CAAC,WAAW,EAAE;4BACzC,QAAQ,GAAG,OAAO,QAAQ,EAAE,CAAC;yBAC9B;qBACF;yBAAM;wBACL,2CAA2C;wBAC3C,QAAQ,GAAG,GAAG,SAAS,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,WAAW,EAAE,CAAC;qBAC7E;oBAED,oDAAoD;oBACpD,IAAI,QAAQ,KAAK,EAAE,EAAE;wBACnB,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;wBACpC,IAAI,CAAC,gBAAgB,CAAC,SAAS,IAAI,EAAE,EAAE,gBAAgB,EAAE,WAAW,CAAC,CAAC;qBACvE;iBACF;aACF;SACF;QAED,6EAA6E;QAC7E,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;YAC/B,MAAM,EAAE,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE;YACrE,IAAI,EAAE,SAAS;SAChB,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,gBAAgB,CAAC,OAAe,EAAE,QAAgB;QAChD,IAAI,CAAC,kBAAkB,GAAG;YACxB,UAAU,EAAE,OAAO;YACnB,QAAQ;SACT,CAAC;QAEF,iHAAiH;QACjH,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,EAAE;YACtH,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;gBAC/B,GAAG,EAAE,QAAQ;gBACb,IAAI,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,QAAQ;aAC/B,CAAC,CAAC;SACJ;IACH,CAAC;IAED;;;OAGG;IACH,aAAa,CAAC,WAA0B,EAAE,aAA+B;QACvE,IAAI,cAAc,GAAoB,EAAE,CAAC;QACzC,MAAM,YAAY,GAAyB,EAAE,CAAC;QAE9C,IAAI,CAAC,WAAW,IAAI,aAAa,EAAE;YACjC,qGAAqG;YACrG,cAAc,GAAG,aAAa,CAAC;YAC/B,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,WAAW,EAAyB,CAAC,CAAC;YAE7G,mGAAmG;YACnG,MAAM,cAAc,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBACnD,MAAM,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,MAAc,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAElG,YAAY,CAAC,IAAI,CAAC;oBAChB,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,gBAAgB,IAAI,SAAS,CAAC,UAAU,IAAI,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,GAAG,EAAE,CAAC;oBAC1H,SAAS,EAAE,MAAM,CAAC,SAAS;iBAC5B,CAAC,CAAC;gBAEH,sEAAsE;gBACtE,IAAI,SAAS,EAAE;oBACb,OAAO;wBACL,QAAQ,EAAE,MAAM,CAAC,QAAQ;wBACzB,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,sBAAa,CAAC,GAAG;qBAC9D,CAAC;iBACH;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CAA8D,CAAC;YAEhE,8GAA8G;YAC9G,IAAI,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE;gBAC/C,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;aAC3C;SACF;aAAM,IAAI,WAAW,IAAI,CAAC,aAAa,EAAE;YACxC,8FAA8F;YAC9F,IAAI,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,MAAK,CAAC,EAAE;gBAC7B,qBAAqB;gBACrB,+FAA+F;aAChG;iBAAM;gBACL,IAAI,WAAW,EAAE;oBACf,KAAK,MAAM,SAAS,IAAI,WAAW,EAAE;wBACnC,IAAI,SAAS,CAAC,OAAO,EAAE;4BACrB,IAAI,SAAS,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,gBAAgB,IAAI,SAAS,CAAC,OAAO,CAAC,UAAU,IAAI,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;4BACrH,IAAI,eAAe,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;4BAC7E,IAAI,UAAU,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,gBAAgB,IAAI,SAAS,CAAC,OAAO,CAAC,UAAU,IAAI,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG,EAAE,CAAC;4BAC5H,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,KAAK,iBAAQ,CAAC,UAAU,EAAE;gCAC/D,SAAS,GAAG,IAAA,kBAAS,EAAC,SAAS,CAAC,CAAC;gCACjC,eAAe,GAAG,IAAA,kBAAS,EAAC,eAAe,CAAC,CAAC;gCAC7C,UAAU,GAAG,IAAA,kBAAS,EAAC,UAAU,CAAC,CAAC;6BACpC;4BAED,IAAI,eAAe,KAAK,EAAE,EAAE;gCAC1B,cAAc,CAAC,IAAI,CAAC;oCAClB,QAAQ,EAAE,eAAe;oCACzB,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;iCAC9C,CAAC,CAAC;6BACJ;4BAED,IAAI,UAAU,KAAK,EAAE,EAAE;gCACrB,YAAY,CAAC,IAAI,CAAC;oCAChB,KAAK,EAAE,UAAU;oCACjB,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,sBAAa,CAAC,GAAG,CAAC,CAAC,CAAC,sBAAa,CAAC,IAAI;iCACtE,CAAC,CAAC;6BACJ;yBACF;qBACF;iBACF;aACF;SACF;QAED,yDAAyD;QACzD,cAAc,GAAG,cAAc,IAAI,EAAqB,CAAC;QACzD,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YAC5C,IAAI,GAAG,GAAG,EAAE,CAAC;YACb,IAAI,MAAM,IAAI,MAAM,CAAC,KAAK,EAAE;gBAC1B,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,KAAK,iBAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAA,kBAAS,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBACzH,GAAG,GAAG,GAAG,SAAS,IAAI,MAAM,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC;aAC5F;YACD,OAAO,GAAG,CAAC;QACb,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEb,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;YAC/B,OAAO,EAAE,SAAS;SACnB,CAAC,CAAC;QAEH,2EAA2E;QAC3E,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;QAEtC,iEAAiE;QACjE,OAAO,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;IACzC,CAAC;IAED,EAAE;IACF,sBAAsB;IACtB,sBAAsB;IACtB;;;OAGG;IACO,yBAAyB,CAAC,aAA8C;QAChF,0HAA0H;QAC1H,MAAM,YAAY,GAAmB,CAAC,OAAO,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAE,aAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;QAE9J,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;YAChC,OAAO,EAAE,CAAC;SACX;QAED,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YACjC,MAAM,SAAS,GAAkB,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;YACrE,IAAI,MAAM,CAAC,QAAQ,EAAE;gBACnB,SAAS,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;aACtC;YACD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE;gBACrC,SAAS,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;aAC5C;YACD,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACO,uBAAuB,CAAC,SAAiB,EAAE,QAAuC,EAAE,WAAyB;QACrH,IAAI,KAAK,GAAG,EAAE,CAAC;QACf,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;YAC1D,IAAI,QAAQ,KAAK,qBAAY,CAAC,cAAc,EAAE;gBAC5C,+CAA+C;gBAC/C,KAAK,GAAG,IAAI,SAAS,OAAO,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7C,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE;oBACzB,KAAK,IAAI,QAAQ,SAAS,OAAO,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;iBACnD;gBACD,KAAK,IAAI,GAAG,CAAC;aACd;iBAAM,IAAI,QAAQ,KAAK,qBAAY,CAAC,cAAc,EAAE;gBACnD,6CAA6C;gBAC7C,KAAK,GAAG,IAAI,SAAS,OAAO,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7C,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE;oBACzB,KAAK,IAAI,QAAQ,SAAS,OAAO,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;iBACnD;gBACD,KAAK,IAAI,GAAG,CAAC;aACd;SACF;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACO,oBAAoB,CAAC,SAAmD,EAAE,WAAgB,EAAE,OAAe;QACnH,QAAQ,SAAS,EAAE;YACjB,KAAK,kBAAS,CAAC,IAAI;gBACjB,WAAW,GAAG,IAAA,qBAAY,EAAC,WAAqB,EAAE,IAAI,CAAC,CAAC;gBACxD,WAAW,GAAG,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,WAAW,GAAG,CAAC;gBACtE,MAAM;YACR,KAAK,kBAAS,CAAC,MAAM,CAAC;YACtB,KAAK,kBAAS,CAAC,IAAI,CAAC;YACpB,KAAK,kBAAS,CAAC,QAAQ;gBACrB,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;oBACnC,wCAAwC;oBACxC,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;oBAC9C,uCAAuC;oBACvC,WAAW,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;oBAC9C,6BAA6B;oBAC7B,WAAW,GAAG,IAAI,WAAW,GAAG,CAAC;iBAClC;gBACD,MAAM;YACR,KAAK,kBAAS,CAAC,OAAO,CAAC;YACvB,KAAK,kBAAS,CAAC,MAAM,CAAC;YACtB,KAAK,kBAAS,CAAC,KAAK;gBAClB,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;oBACnC,yCAAyC;oBAEzC,uCAAuC;oBACvC,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;oBAChD,wBAAwB;oBACxB,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;oBAC/C,8BAA8B;oBAC9B,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;oBACjD,mCAAmC;oBACnC,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;oBACrD,iEAAiE;oBACjE,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;oBAEzD,gCAAgC;oBAChC,IAAI,WAAW,KAAK,EAAE,IAAI,WAAW,KAAK,GAAG,EAAE;wBAC7C,WAAW,GAAG,GAAG,CAAC;qBACnB;iBACF;gBACD,MAAM;SACT;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;CACF;AAjkBD,4CAikBC"}
1
+ {"version":3,"file":"grid-odata.service.js","sourceRoot":"","sources":["../../../src/services/grid-odata.service.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,14 @@
1
+ import { Column } from '@slickgrid-universal/common';
1
2
  import { OdataOption } from '../interfaces/odataOption.interface';
2
3
  export declare class OdataQueryBuilderService {
3
4
  _columnFilters: any;
4
5
  _defaultSortBy: string;
5
6
  _filterCount: number;
6
7
  _odataOptions: Partial<OdataOption>;
8
+ protected _columnDefinitions: Column[];
9
+ set columnDefinitions(columnDefinitions: Column[]);
10
+ protected _datasetIdPropName: string;
11
+ set datasetIdPropName(datasetIdPropName: string);
7
12
  constructor();
8
13
  buildQuery(): string;
9
14
  getFilterCount(): number;
@@ -18,4 +23,6 @@ export declare class OdataQueryBuilderService {
18
23
  */
19
24
  updateOptions(options: Partial<OdataOption>): void;
20
25
  protected addToFilterQueueWhenNotExists(filterStr: string): void;
26
+ private buildSelectExpand;
27
+ private buildExpand;
21
28
  }
@@ -5,6 +5,8 @@ const common_1 = require("@slickgrid-universal/common");
5
5
  class OdataQueryBuilderService {
6
6
  constructor() {
7
7
  this._filterCount = 0;
8
+ this._columnDefinitions = [];
9
+ this._datasetIdPropName = 'id';
8
10
  this._odataOptions = {
9
11
  filterQueue: [],
10
12
  orderBy: ''
@@ -12,6 +14,12 @@ class OdataQueryBuilderService {
12
14
  this._defaultSortBy = '';
13
15
  this._columnFilters = {};
14
16
  }
17
+ set columnDefinitions(columnDefinitions) {
18
+ this._columnDefinitions = columnDefinitions;
19
+ }
20
+ set datasetIdPropName(datasetIdPropName) {
21
+ this._datasetIdPropName = datasetIdPropName;
22
+ }
15
23
  /*
16
24
  * Build the OData query string from all the options provided
17
25
  * @return string OData query
@@ -68,6 +76,19 @@ class OdataQueryBuilderService {
68
76
  this._odataOptions.filter = query; // overwrite with
69
77
  queryTmpArray.push(`$filter=${query}`);
70
78
  }
79
+ if (this._odataOptions.enableSelect || this._odataOptions.enableExpand) {
80
+ const fields = this._columnDefinitions.flatMap(x => { var _a; return (_a = x.fields) !== null && _a !== void 0 ? _a : [x.field]; });
81
+ fields.unshift(this._datasetIdPropName);
82
+ const selectExpand = this.buildSelectExpand([...new Set(fields)]);
83
+ if (this._odataOptions.enableSelect) {
84
+ const select = selectExpand.selectParts.join(',');
85
+ queryTmpArray.push(`$select=${select}`);
86
+ }
87
+ if (this._odataOptions.enableExpand) {
88
+ const expand = selectExpand.expandParts.join(',');
89
+ queryTmpArray.push(`$expand=${expand}`);
90
+ }
91
+ }
71
92
  // join all the odata functions by a '&'
72
93
  return queryTmpArray.join('&');
73
94
  }
@@ -131,6 +152,57 @@ class OdataQueryBuilderService {
131
152
  this._odataOptions.filterQueue.push(filterStr);
132
153
  }
133
154
  }
155
+ //
156
+ // private functions
157
+ // -------------------
158
+ buildSelectExpand(selectFields) {
159
+ const navigations = {};
160
+ const selectItems = new Set();
161
+ for (const field of selectFields) {
162
+ const splits = field.split('/');
163
+ if (splits.length === 1) {
164
+ selectItems.add(field);
165
+ }
166
+ else {
167
+ const navigation = splits[0];
168
+ const properties = splits.splice(1).join('/');
169
+ if (!navigations[navigation]) {
170
+ navigations[navigation] = [];
171
+ }
172
+ navigations[navigation].push(properties);
173
+ if (this._odataOptions.enableExpand && !(this._odataOptions.version && this._odataOptions.version >= 4)) {
174
+ selectItems.add(navigation);
175
+ }
176
+ }
177
+ }
178
+ return {
179
+ selectParts: [...selectItems],
180
+ expandParts: this._odataOptions.enableExpand ? this.buildExpand(navigations) : []
181
+ };
182
+ }
183
+ buildExpand(navigations) {
184
+ const expandParts = [];
185
+ for (const navigation of Object.keys(navigations)) {
186
+ if (this._odataOptions.enableSelect && this._odataOptions.version && this._odataOptions.version >= 4) {
187
+ const subSelectExpand = this.buildSelectExpand(navigations[navigation]);
188
+ let subSelect = subSelectExpand.selectParts.join(',');
189
+ if (subSelect.length > 0) {
190
+ subSelect = '$select=' + subSelect;
191
+ }
192
+ if (this._odataOptions.enableExpand && subSelectExpand.expandParts.length > 0) {
193
+ subSelect += (subSelect.length > 0 ? ';' : '') + '$expand=' + subSelectExpand.expandParts.join(',');
194
+ }
195
+ if (subSelect.length > 0) {
196
+ subSelect = '(' + subSelect + ')';
197
+ }
198
+ expandParts.push(navigation + subSelect);
199
+ }
200
+ else {
201
+ expandParts.push(navigation);
202
+ }
203
+ }
204
+ return expandParts;
205
+ }
134
206
  }
135
207
  exports.OdataQueryBuilderService = OdataQueryBuilderService;
136
208
  //# sourceMappingURL=odataQueryBuilder.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"odataQueryBuilder.service.js","sourceRoot":"","sources":["../../../src/services/odataQueryBuilder.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"odataQueryBuilder.service.js","sourceRoot":"","sources":["../../../src/services/odataQueryBuilder.service.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,16 @@ export interface OdataOption extends BackendServiceOption {
4
4
  caseType: CaseType;
5
5
  /** Add the total count $inlinecount (OData v2) or $count (OData v4) to the OData query */
6
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;
7
17
  /** How many rows to pull? */
8
18
  top?: number;
9
19
  /** How many rows to skip on the pagination? */
@@ -20,4 +30,8 @@ export interface OdataOption extends BackendServiceOption {
20
30
  orderBy?: string | string[];
21
31
  /** OData (or any other) version number (the query string is different between versions) */
22
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;
23
37
  }
@@ -20,6 +20,7 @@ export declare class GridOdataService implements BackendService {
20
20
  constructor();
21
21
  init(serviceOptions?: Partial<OdataOption>, pagination?: Pagination, grid?: SlickGrid, sharedService?: SharedService): void;
22
22
  buildQuery(): string;
23
+ postProcess(processResult: any): void;
23
24
  clearFilters(): void;
24
25
  clearSorters(): void;
25
26
  updateOptions(serviceOptions?: Partial<OdataOption>): void;
@@ -54,10 +54,60 @@ export class GridOdataService {
54
54
  const tmpColumnDefinitions = (_b = (_a = sharedService === null || sharedService === void 0 ? void 0 : sharedService.allColumns) !== null && _a !== void 0 ? _a : grid.getColumns()) !== null && _b !== void 0 ? _b : [];
55
55
  this._columnDefinitions = tmpColumnDefinitions.filter((column) => !column.excludeFromQuery);
56
56
  }
57
+ this._odataService.columnDefinitions = this._columnDefinitions;
58
+ this._odataService.datasetIdPropName = this._gridOptions.datasetIdPropertyName || 'id';
57
59
  }
58
60
  buildQuery() {
59
61
  return this._odataService.buildQuery();
60
62
  }
63
+ postProcess(processResult) {
64
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
65
+ const odataVersion = (_c = (_b = (_a = this._odataService) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.version) !== null && _c !== void 0 ? _c : 2;
66
+ if (this.pagination && ((_e = (_d = this._odataService) === null || _d === void 0 ? void 0 : _d.options) === null || _e === void 0 ? void 0 : _e.enableCount)) {
67
+ const countExtractor = ((_h = (_g = (_f = this._odataService) === null || _f === void 0 ? void 0 : _f.options) === null || _g === void 0 ? void 0 : _g.countExtractor) !== null && _h !== void 0 ? _h : odataVersion >= 4) ? (r) => r === null || r === void 0 ? void 0 : r['@odata.count'] :
68
+ odataVersion === 3 ? (r) => r === null || r === void 0 ? void 0 : r['__count'] :
69
+ (r) => { var _a; return (_a = r === null || r === void 0 ? void 0 : r.d) === null || _a === void 0 ? void 0 : _a['__count']; };
70
+ const count = countExtractor(processResult);
71
+ if (typeof count === 'number') {
72
+ this.pagination.totalItems = count;
73
+ }
74
+ }
75
+ if ((_k = (_j = this._odataService) === null || _j === void 0 ? void 0 : _j.options) === null || _k === void 0 ? void 0 : _k.enableExpand) {
76
+ const datasetExtractor = ((_o = (_m = (_l = this._odataService) === null || _l === void 0 ? void 0 : _l.options) === null || _m === void 0 ? void 0 : _m.datasetExtractor) !== null && _o !== void 0 ? _o : odataVersion >= 4) ? (r) => r === null || r === void 0 ? void 0 : r.value :
77
+ odataVersion === 3 ? (r) => r === null || r === void 0 ? void 0 : r.results :
78
+ (r) => { var _a; return (_a = r === null || r === void 0 ? void 0 : r.d) === null || _a === void 0 ? void 0 : _a.results; };
79
+ const dataset = datasetExtractor(processResult);
80
+ if (Array.isArray(dataset)) {
81
+ // Flatten navigation fields (fields containing /) in the dataset (regardless of enableExpand).
82
+ // E.g. given columndefinition 'product/name' and dataset [{id: 1,product:{'name':'flowers'}}], then flattens to [{id:1,'product/name':'flowers'}]
83
+ const navigationFields = new Set(this._columnDefinitions.flatMap(x => { var _a; return (_a = x.fields) !== null && _a !== void 0 ? _a : [x.field]; }).filter(x => x.includes('/')));
84
+ if (navigationFields.size > 0) {
85
+ const navigations = new Set();
86
+ for (const item of dataset) {
87
+ for (const field of navigationFields) {
88
+ const names = field.split('/');
89
+ const navigation = names[0];
90
+ navigations.add(navigation);
91
+ let val = item[navigation];
92
+ for (let i = 1; i < names.length; i++) {
93
+ const mappedName = names[i];
94
+ if (val && typeof val === 'object' && mappedName in val) {
95
+ val = val[mappedName];
96
+ }
97
+ }
98
+ item[field] = val;
99
+ }
100
+ // Remove navigation objects from the dataset to free memory and make sure we never work with them.
101
+ for (const navigation of navigations) {
102
+ if (typeof item[navigation] === 'object') {
103
+ delete item[navigation];
104
+ }
105
+ }
106
+ }
107
+ }
108
+ }
109
+ }
110
+ }
61
111
  clearFilters() {
62
112
  this._currentFilters = [];
63
113
  this.updateFilters([]);
@@ -171,7 +221,7 @@ export class GridOdataService {
171
221
  * @param columnFilters
172
222
  */
173
223
  updateFilters(columnFilters, isUpdatedByPresetOrDynamically) {
174
- var _a, _b, _c, _d;
224
+ var _a, _b, _c, _d, _e;
175
225
  let searchBy = '';
176
226
  const searchByArray = [];
177
227
  const odataVersion = (_c = (_b = (_a = this._odataService) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.version) !== null && _c !== void 0 ? _c : 2;
@@ -216,8 +266,8 @@ export class GridOdataService {
216
266
  continue;
217
267
  }
218
268
  if (Array.isArray(searchTerms) && searchTerms.length === 1 && typeof searchTerms[0] === 'string' && searchTerms[0].indexOf('..') >= 0) {
219
- if (!operator) {
220
- operator = this._gridOptions.defaultFilterRangeOperator;
269
+ if (operator !== OperatorType.rangeInclusive && operator !== OperatorType.rangeExclusive) {
270
+ operator = (_e = this._gridOptions.defaultFilterRangeOperator) !== null && _e !== void 0 ? _e : OperatorType.rangeInclusive;
221
271
  }
222
272
  searchTerms = searchTerms[0].split('..', 2);
223
273
  if (searchTerms[0] === '') {
@@ -1 +1 @@
1
- {"version":3,"file":"grid-odata.service.js","sourceRoot":"","sources":["../../../src/services/grid-odata.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grid-odata.service.js","sourceRoot":"","sources":["../../../src/services/grid-odata.service.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,14 @@
1
+ import { Column } from '@slickgrid-universal/common';
1
2
  import { OdataOption } from '../interfaces/odataOption.interface';
2
3
  export declare class OdataQueryBuilderService {
3
4
  _columnFilters: any;
4
5
  _defaultSortBy: string;
5
6
  _filterCount: number;
6
7
  _odataOptions: Partial<OdataOption>;
8
+ protected _columnDefinitions: Column[];
9
+ set columnDefinitions(columnDefinitions: Column[]);
10
+ protected _datasetIdPropName: string;
11
+ set datasetIdPropName(datasetIdPropName: string);
7
12
  constructor();
8
13
  buildQuery(): string;
9
14
  getFilterCount(): number;
@@ -18,4 +23,6 @@ export declare class OdataQueryBuilderService {
18
23
  */
19
24
  updateOptions(options: Partial<OdataOption>): void;
20
25
  protected addToFilterQueueWhenNotExists(filterStr: string): void;
26
+ private buildSelectExpand;
27
+ private buildExpand;
21
28
  }
@@ -2,6 +2,8 @@ import { CaseType, titleCase } from '@slickgrid-universal/common';
2
2
  export class OdataQueryBuilderService {
3
3
  constructor() {
4
4
  this._filterCount = 0;
5
+ this._columnDefinitions = [];
6
+ this._datasetIdPropName = 'id';
5
7
  this._odataOptions = {
6
8
  filterQueue: [],
7
9
  orderBy: ''
@@ -9,6 +11,12 @@ export class OdataQueryBuilderService {
9
11
  this._defaultSortBy = '';
10
12
  this._columnFilters = {};
11
13
  }
14
+ set columnDefinitions(columnDefinitions) {
15
+ this._columnDefinitions = columnDefinitions;
16
+ }
17
+ set datasetIdPropName(datasetIdPropName) {
18
+ this._datasetIdPropName = datasetIdPropName;
19
+ }
12
20
  /*
13
21
  * Build the OData query string from all the options provided
14
22
  * @return string OData query
@@ -65,6 +73,19 @@ export class OdataQueryBuilderService {
65
73
  this._odataOptions.filter = query; // overwrite with
66
74
  queryTmpArray.push(`$filter=${query}`);
67
75
  }
76
+ if (this._odataOptions.enableSelect || this._odataOptions.enableExpand) {
77
+ const fields = this._columnDefinitions.flatMap(x => { var _a; return (_a = x.fields) !== null && _a !== void 0 ? _a : [x.field]; });
78
+ fields.unshift(this._datasetIdPropName);
79
+ const selectExpand = this.buildSelectExpand([...new Set(fields)]);
80
+ if (this._odataOptions.enableSelect) {
81
+ const select = selectExpand.selectParts.join(',');
82
+ queryTmpArray.push(`$select=${select}`);
83
+ }
84
+ if (this._odataOptions.enableExpand) {
85
+ const expand = selectExpand.expandParts.join(',');
86
+ queryTmpArray.push(`$expand=${expand}`);
87
+ }
88
+ }
68
89
  // join all the odata functions by a '&'
69
90
  return queryTmpArray.join('&');
70
91
  }
@@ -128,5 +149,56 @@ export class OdataQueryBuilderService {
128
149
  this._odataOptions.filterQueue.push(filterStr);
129
150
  }
130
151
  }
152
+ //
153
+ // private functions
154
+ // -------------------
155
+ buildSelectExpand(selectFields) {
156
+ const navigations = {};
157
+ const selectItems = new Set();
158
+ for (const field of selectFields) {
159
+ const splits = field.split('/');
160
+ if (splits.length === 1) {
161
+ selectItems.add(field);
162
+ }
163
+ else {
164
+ const navigation = splits[0];
165
+ const properties = splits.splice(1).join('/');
166
+ if (!navigations[navigation]) {
167
+ navigations[navigation] = [];
168
+ }
169
+ navigations[navigation].push(properties);
170
+ if (this._odataOptions.enableExpand && !(this._odataOptions.version && this._odataOptions.version >= 4)) {
171
+ selectItems.add(navigation);
172
+ }
173
+ }
174
+ }
175
+ return {
176
+ selectParts: [...selectItems],
177
+ expandParts: this._odataOptions.enableExpand ? this.buildExpand(navigations) : []
178
+ };
179
+ }
180
+ buildExpand(navigations) {
181
+ const expandParts = [];
182
+ for (const navigation of Object.keys(navigations)) {
183
+ if (this._odataOptions.enableSelect && this._odataOptions.version && this._odataOptions.version >= 4) {
184
+ const subSelectExpand = this.buildSelectExpand(navigations[navigation]);
185
+ let subSelect = subSelectExpand.selectParts.join(',');
186
+ if (subSelect.length > 0) {
187
+ subSelect = '$select=' + subSelect;
188
+ }
189
+ if (this._odataOptions.enableExpand && subSelectExpand.expandParts.length > 0) {
190
+ subSelect += (subSelect.length > 0 ? ';' : '') + '$expand=' + subSelectExpand.expandParts.join(',');
191
+ }
192
+ if (subSelect.length > 0) {
193
+ subSelect = '(' + subSelect + ')';
194
+ }
195
+ expandParts.push(navigation + subSelect);
196
+ }
197
+ else {
198
+ expandParts.push(navigation);
199
+ }
200
+ }
201
+ return expandParts;
202
+ }
131
203
  }
132
204
  //# sourceMappingURL=odataQueryBuilder.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"odataQueryBuilder.service.js","sourceRoot":"","sources":["../../../src/services/odataQueryBuilder.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"odataQueryBuilder.service.js","sourceRoot":"","sources":["../../../src/services/odataQueryBuilder.service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@slickgrid-universal/odata",
3
- "version": "0.19.2",
3
+ "version": "1.2.1",
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",
@@ -47,7 +47,7 @@
47
47
  "not dead"
48
48
  ],
49
49
  "dependencies": {
50
- "@slickgrid-universal/common": "^0.19.2"
50
+ "@slickgrid-universal/common": "^1.2.1"
51
51
  },
52
- "gitHead": "ea7000e3c627584b9a3cc524e44235b2f8652884"
52
+ "gitHead": "11a05e9877ac0a42d53eaefb1edf95586dcd41b3"
53
53
  }