@restorecommerce/chassis-srv 1.7.10 → 1.8.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 +34 -0
- package/lib/database/provider/arango/base.d.ts +4 -8
- package/lib/database/provider/arango/base.d.ts.map +1 -1
- package/lib/database/provider/arango/base.js +98 -180
- package/lib/database/provider/arango/base.js.map +1 -1
- package/lib/database/provider/arango/common.d.ts +1 -1
- package/lib/database/provider/arango/common.d.ts.map +1 -1
- package/lib/database/provider/arango/common.js +39 -61
- package/lib/database/provider/arango/common.js.map +1 -1
- package/lib/database/provider/arango/interface.d.ts +9 -0
- package/lib/database/provider/arango/interface.d.ts.map +1 -1
- package/lib/database/provider/arango/utils.d.ts +5 -0
- package/lib/database/provider/arango/utils.d.ts.map +1 -1
- package/lib/database/provider/arango/utils.js +20 -13
- package/lib/database/provider/arango/utils.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -5
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,40 @@
|
|
|
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
|
+
## [1.8.1](https://github.com/restorecommerce/chassis-srv/compare/@restorecommerce/chassis-srv@1.8.0...@restorecommerce/chassis-srv@1.8.1) (2026-02-09)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* **resource-base-interface:** make equal operator optional again ([4388e6d](https://github.com/restorecommerce/chassis-srv/commit/4388e6d610566f7023be91afb46f05ae96fada23))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
# [1.8.0](https://github.com/restorecommerce/chassis-srv/compare/@restorecommerce/chassis-srv@1.7.10...@restorecommerce/chassis-srv@1.8.0) (2026-02-06)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### Bug Fixes
|
|
21
|
+
|
|
22
|
+
* **chassis:** node._key conflicts with graph edge key ([e42c31b](https://github.com/restorecommerce/chassis-srv/commit/e42c31b95d9b661a906971f42123a01883de1a13))
|
|
23
|
+
* **resource-base-interface:** roleback to redis 4.7! ([f92809f](https://github.com/restorecommerce/chassis-srv/commit/f92809f459320797404815a95ce4c0e844ba9d35))
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
### Features
|
|
27
|
+
|
|
28
|
+
* **facade:** performance upgrade via latent id buffering ([579d4b9](https://github.com/restorecommerce/chassis-srv/commit/579d4b947585848c48414989ca91446315d607b3))
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
### Reverts
|
|
32
|
+
|
|
33
|
+
* Revert "chore(release): publish" ([d508e8a](https://github.com/restorecommerce/chassis-srv/commit/d508e8af9803a4a182d244f48172c5881b11ebd5))
|
|
34
|
+
* Revert "chore(release): publish" ([8db759f](https://github.com/restorecommerce/chassis-srv/commit/8db759fd05eef801dd6ae60727ef1b763f5baafb))
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
6
40
|
## [1.7.10](https://github.com/restorecommerce/chassis-srv/compare/@restorecommerce/chassis-srv@1.7.9...@restorecommerce/chassis-srv@1.7.10) (2025-11-11)
|
|
7
41
|
|
|
8
42
|
**Note:** Version bump only for package @restorecommerce/chassis-srv
|
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
import { Database } from 'arangojs';
|
|
2
2
|
import { DatabaseProvider } from '../../index.js';
|
|
3
|
-
import { ViewAnalyzerOptions, ViewMap } from './interface.js';
|
|
3
|
+
import { ArangoDocument, CustomQuery, ViewAnalyzerOptions, ViewMap } from './interface.js';
|
|
4
4
|
import { type Logger } from '@restorecommerce/logger';
|
|
5
|
-
export interface CustomQuery {
|
|
6
|
-
code: string;
|
|
7
|
-
type: 'filter' | 'query';
|
|
8
|
-
}
|
|
9
5
|
/**
|
|
10
6
|
* ArangoDB database provider.
|
|
11
7
|
*/
|
|
@@ -41,11 +37,11 @@ export declare class Arango implements DatabaseProvider {
|
|
|
41
37
|
*
|
|
42
38
|
* @param {String} collectionName Collection name
|
|
43
39
|
* @param {any} collection Collection Object
|
|
44
|
-
* @param {
|
|
40
|
+
* @param {ArangoDocument | ArangoDocument[]} documents list of documents
|
|
45
41
|
* @param {string[]} idsArray list of document ids
|
|
46
|
-
* @returns {Promise<
|
|
42
|
+
* @returns {Promise<ArangoDocument[]>} A list of documents including the document handlers
|
|
47
43
|
*/
|
|
48
|
-
getDocumentHandlers(collectionName: string, collection: any, documents:
|
|
44
|
+
getDocumentHandlers(collectionName: string, collection: any, documents: ArangoDocument | ArangoDocument[], idsArray?: string[]): Promise<ArangoDocument[]>;
|
|
49
45
|
/**
|
|
50
46
|
* Find documents by filter and updates them with document.
|
|
51
47
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/database/provider/arango/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAO,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/database/provider/arango/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAO,MAAM,UAAU,CAAC;AAOzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC3F,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAGtD;;GAEG;AACH,qBAAa,MAAO,YAAW,gBAAgB;aAQ3B,EAAE,EAAE,QAAQ;aACZ,MAAM,CAAC,EAAE,MAAM;IARjC,SAAgB,aAAa,2BAAkC;IAC/D,SAAgB,yBAAyB,uBAA8B;IACvE;;;OAGG;gBAEe,EAAE,EAAE,QAAQ,EACZ,MAAM,CAAC,EAAE,MAAM;IAGjC;;;;;;;OAOG;IACG,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAkG7E;;;;;;OAMG;IACG,QAAQ,CAAC,cAAc,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IA4B5E;;;;;;;;OAQG;IACG,mBAAmB,CACvB,cAAc,EAAE,MAAM,EACtB,UAAU,EAAE,GAAG,EACf,SAAS,EAAE,cAAc,GAAG,cAAc,EAAE,EAC5C,QAAQ,CAAC,EAAE,MAAM,EAAE,GAClB,OAAO,CAAC,cAAc,EAAE,CAAC;IAQ5B;;;;;OAKG;IACG,MAAM,CAAC,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAmDxE;;;;;;OAMG;IACG,MAAM,CAAC,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAqClE;;;;;;OAMG;IACG,MAAM,CAAC,cAAc,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IAmCjE;;;;;OAKG;IACG,KAAK,CAAC,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAkC9D;;;;;;OAMG;IACG,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAahD;;;OAGG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IAmBhD;;;OAGG;IACG,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IAmB1D;;;;;OAKG;IACG,MAAM,CAAC,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAkClE;;;;;OAKG;IAEH,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,GAAG,IAAI;IAOjF;;;OAGG;IACH,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAOzC,iBAAiB,IAAI,KAAK,CAAC,GAAG,CAAC;IAIzB,qBAAqB,CAAC,UAAU,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CA+DpG"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { aql } from 'arangojs';
|
|
2
|
-
import { isNullish, isEmptyish, isString,
|
|
3
|
-
import { buildFilter, buildSorter, buildLimiter, buildReturn, sanitizeInputFields, query, sanitizeOutputFields } from './common.js';
|
|
2
|
+
import { isNullish, isEmptyish, isString, clone, forEach } from 'remeda';
|
|
3
|
+
import { buildFilter, buildSorter, buildLimiter, buildReturn, sanitizeInputFields, query, sanitizeOutputFields, idToKey } from './common.js';
|
|
4
|
+
import { LoggedError, toArray } from './utils.js';
|
|
4
5
|
/**
|
|
5
6
|
* ArangoDB database provider.
|
|
6
7
|
*/
|
|
@@ -26,143 +27,91 @@ export class Arango {
|
|
|
26
27
|
* @return {Promise<any>} Promise for list of found documents.
|
|
27
28
|
*/
|
|
28
29
|
async find(collectionName, filter, options) {
|
|
29
|
-
if (isNullish(collectionName)
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
throw new
|
|
30
|
+
if (isNullish(collectionName)
|
|
31
|
+
|| !isString(collectionName)
|
|
32
|
+
|| isEmptyish(collectionName)) {
|
|
33
|
+
throw new LoggedError(this.logger, 'invalid or missing collection argument for find operation');
|
|
33
34
|
}
|
|
34
35
|
let filterQuery = filter ?? {};
|
|
35
36
|
const opts = options ?? {};
|
|
36
37
|
let filterResult;
|
|
37
|
-
|
|
38
|
-
let customFilter = '';
|
|
38
|
+
const customFilters = new Array();
|
|
39
39
|
// checking if a custom query should be used
|
|
40
40
|
if (!isEmptyish(opts.customQueries)) {
|
|
41
41
|
for (const queryName of opts.customQueries) {
|
|
42
42
|
if (!this.customQueries.has(queryName)) {
|
|
43
|
-
this.logger
|
|
44
|
-
throw new Error(`custom query ${query} not found`);
|
|
43
|
+
throw new LoggedError(this.logger, `custom query ${query} not found`);
|
|
45
44
|
}
|
|
46
45
|
const customQuery = this.customQueries.get(queryName);
|
|
47
|
-
if (customQuery.type
|
|
46
|
+
if (customQuery.type === 'query') {
|
|
48
47
|
// standalone query
|
|
49
48
|
const result = await query(this.db, collectionName, customQuery.code, opts.customArguments || {}); // Cursor object
|
|
50
49
|
return result.all(); // TODO: paginate
|
|
51
50
|
}
|
|
52
51
|
else {
|
|
53
52
|
// filter
|
|
54
|
-
|
|
53
|
+
customFilters.push(customQuery.code);
|
|
55
54
|
}
|
|
56
55
|
}
|
|
57
56
|
}
|
|
58
|
-
if (
|
|
59
|
-
filterQuery =
|
|
60
|
-
}
|
|
61
|
-
if (isEmptyish(filterQuery[0])) {
|
|
62
|
-
filterQuery = true;
|
|
57
|
+
if (isNullish(filterQuery) || isEmptyish(filterQuery)) {
|
|
58
|
+
filterQuery = '';
|
|
63
59
|
}
|
|
64
60
|
else {
|
|
61
|
+
filterQuery = toArray(filterQuery);
|
|
65
62
|
filterResult = buildFilter(filterQuery);
|
|
66
|
-
filterQuery = filterResult.q
|
|
67
|
-
}
|
|
68
|
-
let sortQuery = buildSorter(opts);
|
|
69
|
-
const limitQuery = buildLimiter(opts);
|
|
70
|
-
const returnResult = buildReturn(opts);
|
|
71
|
-
let returnQuery = returnResult.q;
|
|
72
|
-
// return complete node in case no specific fields are specified
|
|
73
|
-
if (isEmptyish(returnQuery)) {
|
|
74
|
-
returnQuery = 'RETURN node';
|
|
63
|
+
filterQuery = `FILTER ${filterResult.q}`;
|
|
75
64
|
}
|
|
76
65
|
// if search options are set build search query
|
|
77
|
-
|
|
78
|
-
if (opts?.search?.search) {
|
|
66
|
+
const searchQueries = new Array();
|
|
67
|
+
if (opts?.search?.search && this.collectionNameAnalyzerMap && this.collectionNameAnalyzerMap.get(collectionName)) {
|
|
79
68
|
const searchString = JSON.stringify(options.search.search);
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
// for casesensitive search use "ngram" analayzer type
|
|
89
|
-
analyzerOptions.forEach((optionObj) => {
|
|
90
|
-
const keyName = Object.keys(optionObj)[0];
|
|
91
|
-
if (optionObj[keyName].type === 'ngram') {
|
|
92
|
-
analyzerName = JSON.stringify(keyName);
|
|
93
|
-
}
|
|
94
|
-
});
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
// for case-insensitive search use "pipleline" type (ngram + norm)
|
|
98
|
-
analyzerOptions.forEach((optionObj) => {
|
|
99
|
-
const keyName = Object.keys(optionObj)[0];
|
|
100
|
-
if (optionObj[keyName].type === 'pipeline') {
|
|
101
|
-
analyzerName = JSON.stringify(keyName);
|
|
102
|
-
}
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
for (const field of searchFields) {
|
|
106
|
-
if (!searchQuery) {
|
|
107
|
-
searchQuery = `NGRAM_MATCH(node.${field}, ${searchString}, ${similarityThreshold}, ${analyzerName}) `;
|
|
108
|
-
}
|
|
109
|
-
else {
|
|
110
|
-
searchQuery = searchQuery + `OR NGRAM_MATCH(node.${field}, ${searchString}, ${similarityThreshold}, ${analyzerName}) `;
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
// override collection name with view name
|
|
114
|
-
collectionName = viewName;
|
|
115
|
-
// override sortQuery (to rank based on score for frequency search match - term frequency–inverse document frequency algorithm TF-IDF)
|
|
116
|
-
sortQuery = `SORT TFIDF(node) DESC`;
|
|
117
|
-
}
|
|
118
|
-
else {
|
|
119
|
-
this.logger?.info(`View and analyzer configuration data not set for ${collectionName} and hence ignoring search string`);
|
|
69
|
+
const searchFields = (options?.search?.fields?.length > 0) ? options.search.fields : this.collectionNameAnalyzerMap.get(collectionName).fields;
|
|
70
|
+
const similarityThreshold = this.collectionNameAnalyzerMap.get(collectionName).similarityThreshold;
|
|
71
|
+
const viewName = this.collectionNameAnalyzerMap.get(collectionName).viewName;
|
|
72
|
+
const caseSensitive = options?.search?.case_sensitive;
|
|
73
|
+
const analyzerOptions = this.collectionNameAnalyzerMap.get(collectionName).analyzerOptions;
|
|
74
|
+
const analyzerName = JSON.stringify(analyzerOptions.flatMap((opt) => Object.entries(opt)).find(([k, v]) => caseSensitive ? v?.type === 'ngram' : v?.type === 'pipeline')[0]);
|
|
75
|
+
for (const field of searchFields) {
|
|
76
|
+
searchQueries.push(`NGRAM_MATCH(node.${field}, ${searchString}, ${similarityThreshold}, ${analyzerName})`);
|
|
120
77
|
}
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
if (searchQuery) {
|
|
124
|
-
queryString = `FOR node in @@collection SEARCH ${searchQuery} FILTER ${filterQuery}`;
|
|
125
|
-
}
|
|
126
|
-
if (!isEmptyish(customFilter)) {
|
|
127
|
-
queryString += customFilter;
|
|
128
|
-
}
|
|
129
|
-
queryString += ` ${sortQuery}
|
|
130
|
-
${limitQuery} ${returnQuery}`;
|
|
131
|
-
let varArgs = {};
|
|
132
|
-
if (filterResult && filterResult.bindVarsMap) {
|
|
133
|
-
varArgs = filterResult.bindVarsMap;
|
|
134
|
-
}
|
|
135
|
-
let returnArgs = {};
|
|
136
|
-
if (returnResult && returnResult.bindVarsMap) {
|
|
137
|
-
returnArgs = returnResult.bindVarsMap;
|
|
138
|
-
}
|
|
139
|
-
let limitArgs;
|
|
140
|
-
if (isEmptyish(limitQuery)) {
|
|
141
|
-
limitArgs = {};
|
|
142
|
-
}
|
|
143
|
-
else {
|
|
144
|
-
if (!isNullish(opts.limit)) {
|
|
145
|
-
limitArgs = { limit: opts.limit };
|
|
146
|
-
if (!isNullish(opts.offset)) {
|
|
147
|
-
limitArgs = { offset: opts.offset, limit: opts.limit };
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
varArgs = merge(varArgs, limitArgs);
|
|
152
|
-
varArgs = merge(varArgs, returnArgs);
|
|
153
|
-
bindVars = merge({
|
|
154
|
-
'@collection': collectionName
|
|
155
|
-
}, varArgs);
|
|
156
|
-
if (!isEmptyish(customFilter) && opts.customArguments) {
|
|
157
|
-
bindVars = merge(bindVars, { customArguments: opts.customArguments });
|
|
158
|
-
}
|
|
159
|
-
let res;
|
|
160
|
-
if (!searchQuery) {
|
|
161
|
-
res = await query(this.db, collectionName, queryString, bindVars);
|
|
78
|
+
// override collection name with view name
|
|
79
|
+
collectionName = viewName;
|
|
162
80
|
}
|
|
163
81
|
else {
|
|
164
|
-
|
|
82
|
+
this.logger?.info(`View and analyzer configuration data not set for ${collectionName} and hence ignoring search string`);
|
|
165
83
|
}
|
|
84
|
+
// override sortQuery (to rank based on score for frequency search match - term frequency–inverse document frequency algorithm TF-IDF)
|
|
85
|
+
const sortQuery = isEmptyish(searchQueries) ? buildSorter(opts) : `SORT TFIDF(node) DESC`;
|
|
86
|
+
const limitQuery = buildLimiter(opts);
|
|
87
|
+
const returnResult = buildReturn(opts);
|
|
88
|
+
const returnQuery = isEmptyish(returnResult?.q) ? 'RETURN node' : returnResult.q;
|
|
89
|
+
const queryStrings = ['FOR node IN @@collection'];
|
|
90
|
+
if (!isEmptyish(searchQueries)) {
|
|
91
|
+
queryStrings.push(`SEARCH ${searchQueries.join(' OR ')}`);
|
|
92
|
+
}
|
|
93
|
+
queryStrings.push(filterQuery);
|
|
94
|
+
queryStrings.push(...customFilters);
|
|
95
|
+
queryStrings.push(sortQuery, limitQuery, returnQuery);
|
|
96
|
+
const bindVars = {
|
|
97
|
+
'@collection': collectionName,
|
|
98
|
+
...filterResult?.bindVarsMap,
|
|
99
|
+
...returnResult?.bindVarsMap,
|
|
100
|
+
};
|
|
101
|
+
if (!isNullish(opts.limit)) {
|
|
102
|
+
bindVars.limit = opts.limit;
|
|
103
|
+
}
|
|
104
|
+
if (!isNullish(opts.offset)) {
|
|
105
|
+
bindVars.offset = opts.offset;
|
|
106
|
+
}
|
|
107
|
+
if (!isEmptyish(customFilters) && opts.customArguments) {
|
|
108
|
+
bindVars.customArguments = opts.customArguments;
|
|
109
|
+
}
|
|
110
|
+
const queryString = queryStrings.filter(s => !isNullish(s) && !isEmptyish(s)).join(' ');
|
|
111
|
+
this.logger.info(queryString);
|
|
112
|
+
const res = searchQueries
|
|
113
|
+
? await this.db.query(queryString, bindVars)
|
|
114
|
+
: await query(this.db, collectionName, queryString, bindVars);
|
|
166
115
|
const docs = await res.all(); // TODO: paginate
|
|
167
116
|
return docs.map(sanitizeOutputFields);
|
|
168
117
|
}
|
|
@@ -176,12 +125,10 @@ export class Arango {
|
|
|
176
125
|
async findByID(collectionName, ids) {
|
|
177
126
|
if (isNullish(collectionName) || !isString(collectionName) ||
|
|
178
127
|
isEmptyish(collectionName)) {
|
|
179
|
-
this.logger
|
|
180
|
-
throw new Error('invalid or missing collection argument for findByID operation');
|
|
128
|
+
throw new LoggedError(this.logger, 'invalid or missing collection argument for findByID operation');
|
|
181
129
|
}
|
|
182
130
|
if (isNullish(ids)) {
|
|
183
|
-
this.logger
|
|
184
|
-
throw new Error('invalid or missing ids argument for findByID operation');
|
|
131
|
+
throw new LoggedError(this.logger, 'invalid or missing ids argument for findByID operation');
|
|
185
132
|
}
|
|
186
133
|
if (!Array.isArray(ids)) {
|
|
187
134
|
ids = [ids];
|
|
@@ -192,7 +139,7 @@ export class Arango {
|
|
|
192
139
|
const filterResult = buildFilter(filter);
|
|
193
140
|
const filterQuery = filterResult.q;
|
|
194
141
|
const varArgs = filterResult.bindVarsMap ?? {};
|
|
195
|
-
const queryString = `FOR node
|
|
142
|
+
const queryString = `FOR node IN @@collection FILTER ${filterQuery} RETURN node`;
|
|
196
143
|
const bindVars = Object.assign({
|
|
197
144
|
'@collection': collectionName
|
|
198
145
|
}, varArgs);
|
|
@@ -205,25 +152,13 @@ export class Arango {
|
|
|
205
152
|
*
|
|
206
153
|
* @param {String} collectionName Collection name
|
|
207
154
|
* @param {any} collection Collection Object
|
|
208
|
-
* @param {
|
|
155
|
+
* @param {ArangoDocument | ArangoDocument[]} documents list of documents
|
|
209
156
|
* @param {string[]} idsArray list of document ids
|
|
210
|
-
* @returns {Promise<
|
|
157
|
+
* @returns {Promise<ArangoDocument[]>} A list of documents including the document handlers
|
|
211
158
|
*/
|
|
212
159
|
async getDocumentHandlers(collectionName, collection, documents, idsArray) {
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
documents = [documents];
|
|
216
|
-
}
|
|
217
|
-
if (documents && documents.length > 0) {
|
|
218
|
-
for (const doc of documents) {
|
|
219
|
-
ids.push(doc.id);
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
if (!isEmptyish(idsArray) && isArray(idsArray)) {
|
|
223
|
-
ids = idsArray;
|
|
224
|
-
}
|
|
225
|
-
const queryString = aql `FOR node in ${collection}
|
|
226
|
-
FILTER node.id IN ${ids} return node`;
|
|
160
|
+
const ids = idsArray ?? toArray(documents)?.map(doc => doc.id);
|
|
161
|
+
const queryString = aql `FOR node IN ${collection} FILTER node.id IN ${ids} LIMIT ${ids.length} RETURN node`;
|
|
227
162
|
const res = await query(this.db, collectionName, queryString);
|
|
228
163
|
const docsWithSelector = await res.all();
|
|
229
164
|
return docsWithSelector;
|
|
@@ -237,24 +172,21 @@ export class Arango {
|
|
|
237
172
|
async update(collectionName, updateDocuments) {
|
|
238
173
|
const documents = clone(updateDocuments);
|
|
239
174
|
const updateDocsResponse = [];
|
|
240
|
-
if (isNullish(collectionName)
|
|
241
|
-
!isString(collectionName)
|
|
242
|
-
|
|
243
|
-
throw new
|
|
175
|
+
if (isNullish(collectionName)
|
|
176
|
+
|| !isString(collectionName)
|
|
177
|
+
|| isEmptyish(collectionName)) {
|
|
178
|
+
throw new LoggedError(this.logger, 'invalid or missing collection argument for update operation');
|
|
244
179
|
}
|
|
245
180
|
if (isNullish(documents)) {
|
|
246
|
-
this.logger
|
|
247
|
-
throw new Error('invalid or missing document argument for update operation');
|
|
181
|
+
throw new LoggedError(this.logger, 'invalid or missing document argument for update operation');
|
|
248
182
|
}
|
|
249
183
|
const collection = this.db.collection(collectionName);
|
|
250
184
|
const collectionExists = await collection.exists();
|
|
251
185
|
if (!collectionExists) {
|
|
252
|
-
this.logger
|
|
253
|
-
throw new Error(`Collection ${collectionName} does not exist for update operation`);
|
|
186
|
+
throw new LoggedError(this.logger, `Collection ${collectionName} does not exist for update operation`);
|
|
254
187
|
}
|
|
255
|
-
if (!isArray(documents)) {
|
|
256
|
-
this.logger
|
|
257
|
-
throw new Error(`Documents should be list for update operation`);
|
|
188
|
+
if (!Array.isArray(documents)) {
|
|
189
|
+
throw new LoggedError(this.logger, `Documents should be list for update operation`);
|
|
258
190
|
}
|
|
259
191
|
const docsWithHandlers = await this.getDocumentHandlers(collectionName, collection, documents);
|
|
260
192
|
// update _key for the input documents
|
|
@@ -270,7 +202,7 @@ export class Arango {
|
|
|
270
202
|
if (!foundInDB) {
|
|
271
203
|
// if document is not found in DB use the id itself as _key
|
|
272
204
|
// this key will return an array in response since it does not exist
|
|
273
|
-
document._key = document.id;
|
|
205
|
+
document._key = idToKey(document.id);
|
|
274
206
|
}
|
|
275
207
|
}
|
|
276
208
|
const updatedDocs = await collection.updateAll(documents, { returnNew: true });
|
|
@@ -292,17 +224,16 @@ export class Arango {
|
|
|
292
224
|
* @param {Object|Array.Object} documents
|
|
293
225
|
*/
|
|
294
226
|
async upsert(collectionName, documents) {
|
|
295
|
-
if (isNullish(collectionName)
|
|
296
|
-
!isString(collectionName)
|
|
297
|
-
|
|
298
|
-
throw new
|
|
227
|
+
if (isNullish(collectionName)
|
|
228
|
+
|| !isString(collectionName)
|
|
229
|
+
|| isEmptyish(collectionName)) {
|
|
230
|
+
throw new LoggedError(this.logger, 'invalid or missing collection argument for upsert operation');
|
|
299
231
|
}
|
|
300
232
|
if (isNullish(documents)) {
|
|
301
|
-
this.logger
|
|
302
|
-
throw new Error('invalid or missing documents argument for upsert operation');
|
|
233
|
+
throw new LoggedError(this.logger, 'invalid or missing documents argument for upsert operation');
|
|
303
234
|
}
|
|
304
235
|
let docs = clone(documents);
|
|
305
|
-
if (!isArray(documents)) {
|
|
236
|
+
if (!Array.isArray(documents)) {
|
|
306
237
|
docs = [documents];
|
|
307
238
|
}
|
|
308
239
|
forEach(docs, (document, i) => {
|
|
@@ -312,11 +243,10 @@ export class Arango {
|
|
|
312
243
|
const collection = this.db.collection(collectionName);
|
|
313
244
|
const collectionExists = await collection.exists();
|
|
314
245
|
if (!collectionExists) {
|
|
315
|
-
this.logger
|
|
316
|
-
throw new Error(`Collection ${collectionName} does not exist for upsert operation`);
|
|
246
|
+
throw new LoggedError(this.logger, `Collection ${collectionName} does not exist for upsert operation`);
|
|
317
247
|
}
|
|
318
248
|
let upsertedDocs = await collection.saveAll(docs, { returnNew: true, overwriteMode: 'update' });
|
|
319
|
-
if (!isArray(upsertedDocs)) {
|
|
249
|
+
if (!Array.isArray(upsertedDocs)) {
|
|
320
250
|
upsertedDocs = [upsertedDocs];
|
|
321
251
|
}
|
|
322
252
|
for (const doc of upsertedDocs) {
|
|
@@ -339,21 +269,18 @@ export class Arango {
|
|
|
339
269
|
async delete(collectionName, ids) {
|
|
340
270
|
if (isNullish(collectionName) ||
|
|
341
271
|
!isString(collectionName) || isEmptyish(collectionName)) {
|
|
342
|
-
this.logger
|
|
343
|
-
throw new Error('invalid or missing collection argument');
|
|
272
|
+
throw new LoggedError(this.logger, 'invalid or missing collection argument');
|
|
344
273
|
}
|
|
345
274
|
if (isNullish(ids) || isEmptyish(ids)) {
|
|
346
|
-
this.logger
|
|
347
|
-
throw new Error('invalid or missing document IDs argument for delete operation');
|
|
275
|
+
throw new LoggedError(this.logger, 'invalid or missing document IDs argument for delete operation');
|
|
348
276
|
}
|
|
349
277
|
const collection = this.db.collection(collectionName);
|
|
350
278
|
const collectionExists = await collection.exists();
|
|
351
279
|
if (!collectionExists) {
|
|
352
|
-
this.logger
|
|
353
|
-
throw new Error(`Collection ${collectionName} does not exist for delete operation`);
|
|
280
|
+
throw new LoggedError(this.logger, `Collection ${collectionName} does not exist for delete operation`);
|
|
354
281
|
}
|
|
355
282
|
// retreive _key for the give ids
|
|
356
|
-
const docsWithHandlers = await this.getDocumentHandlers(collectionName, collection,
|
|
283
|
+
const docsWithHandlers = await this.getDocumentHandlers(collectionName, collection, undefined, ids);
|
|
357
284
|
for (const id of ids) {
|
|
358
285
|
// check if given id is present in docsWithHandlers
|
|
359
286
|
let foundDocInDB = false;
|
|
@@ -369,10 +296,7 @@ export class Arango {
|
|
|
369
296
|
docsWithHandlers.push({ _key: id });
|
|
370
297
|
}
|
|
371
298
|
}
|
|
372
|
-
const deleteHandlerIds =
|
|
373
|
-
for (const doc of docsWithHandlers) {
|
|
374
|
-
deleteHandlerIds.push(doc._key);
|
|
375
|
-
}
|
|
299
|
+
const deleteHandlerIds = docsWithHandlers.map((doc) => doc._key);
|
|
376
300
|
return collection.removeAll(deleteHandlerIds);
|
|
377
301
|
}
|
|
378
302
|
/**
|
|
@@ -384,12 +308,11 @@ export class Arango {
|
|
|
384
308
|
async count(collectionName, filter) {
|
|
385
309
|
if (isNullish(collectionName) ||
|
|
386
310
|
!isString(collectionName) || isEmptyish(collectionName)) {
|
|
387
|
-
this.logger
|
|
388
|
-
throw new Error('invalid or missing collection argument for count operation');
|
|
311
|
+
throw new LoggedError(this.logger, 'invalid or missing collection argument for count operation');
|
|
389
312
|
}
|
|
390
313
|
let filterQuery = filter || {};
|
|
391
314
|
let filterResult;
|
|
392
|
-
if (!isArray(filterQuery)) {
|
|
315
|
+
if (!Array.isArray(filterQuery)) {
|
|
393
316
|
filterQuery = [filterQuery];
|
|
394
317
|
}
|
|
395
318
|
if (isEmptyish(filterQuery[0])) {
|
|
@@ -403,7 +326,7 @@ export class Arango {
|
|
|
403
326
|
if (filterResult && filterResult.bindVarsMap) {
|
|
404
327
|
varArgs = filterResult.bindVarsMap;
|
|
405
328
|
}
|
|
406
|
-
const queryString = `FOR node
|
|
329
|
+
const queryString = `FOR node IN @@collection FILTER ${filterQuery} COLLECT WITH COUNT
|
|
407
330
|
INTO length RETURN length`;
|
|
408
331
|
const bindVars = Object.assign({
|
|
409
332
|
'@collection': collectionName
|
|
@@ -486,15 +409,13 @@ export class Arango {
|
|
|
486
409
|
*/
|
|
487
410
|
async insert(collectionName, documents) {
|
|
488
411
|
if (isNullish(collectionName) || !isString(collectionName) || isEmptyish(collectionName)) {
|
|
489
|
-
this.logger
|
|
490
|
-
throw new Error('invalid or missing collection argument for insert operation');
|
|
412
|
+
throw new LoggedError(this.logger, 'invalid or missing collection argument for insert operation');
|
|
491
413
|
}
|
|
492
414
|
if (isNullish(documents)) {
|
|
493
|
-
this.logger
|
|
494
|
-
throw new Error('invalid or missing documents argument for insert operation');
|
|
415
|
+
throw new LoggedError(this.logger, 'invalid or missing documents argument for insert operation');
|
|
495
416
|
}
|
|
496
417
|
let docs = clone(documents);
|
|
497
|
-
if (!isArray(documents)) {
|
|
418
|
+
if (!Array.isArray(documents)) {
|
|
498
419
|
docs = [documents];
|
|
499
420
|
}
|
|
500
421
|
forEach(docs, (document, i) => {
|
|
@@ -507,7 +428,7 @@ export class Arango {
|
|
|
507
428
|
}
|
|
508
429
|
const insertResponse = [];
|
|
509
430
|
let createdDocs = await collection.saveAll(docs, { returnNew: true });
|
|
510
|
-
if (!isArray(createdDocs)) {
|
|
431
|
+
if (!Array.isArray(createdDocs)) {
|
|
511
432
|
createdDocs = [createdDocs];
|
|
512
433
|
}
|
|
513
434
|
for (const doc of createdDocs) {
|
|
@@ -539,8 +460,7 @@ export class Arango {
|
|
|
539
460
|
*/
|
|
540
461
|
unregisterCustomQuery(name) {
|
|
541
462
|
if (!this.customQueries.has(name)) {
|
|
542
|
-
this.logger
|
|
543
|
-
throw new Error('custom function not found');
|
|
463
|
+
throw new LoggedError(this.logger, 'custom function not found');
|
|
544
464
|
}
|
|
545
465
|
this.customQueries.delete(name);
|
|
546
466
|
}
|
|
@@ -549,12 +469,10 @@ export class Arango {
|
|
|
549
469
|
}
|
|
550
470
|
async createAnalyzerAndView(viewConfig, collectionName) {
|
|
551
471
|
if (!viewConfig.view.viewName || !viewConfig?.view?.options) {
|
|
552
|
-
this.logger
|
|
553
|
-
throw new Error(`View name or view configuration missing for ${collectionName}`);
|
|
472
|
+
throw new LoggedError(this.logger, `View name or view configuration missing for ${collectionName}`);
|
|
554
473
|
}
|
|
555
474
|
if ((!viewConfig?.analyzers) || (viewConfig.analyzers.length === 0) || !(viewConfig.analyzerOptions)) {
|
|
556
|
-
this.logger
|
|
557
|
-
throw new Error(`Analyzer options or configuration missing for ${collectionName}`);
|
|
475
|
+
throw new LoggedError(this.logger, `Analyzer options or configuration missing for ${collectionName}`);
|
|
558
476
|
}
|
|
559
477
|
// create analyzer if it does not exist
|
|
560
478
|
for (const analyzerName of viewConfig.analyzers) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/database/provider/arango/base.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/database/provider/arango/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,GAAG,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAS,KAAK,EAAE,OAAO,EAAC,MAAM,QAAQ,CAAC;AAC9E,OAAO,EACL,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EACnD,mBAAmB,EAAE,KAAK,EAAE,oBAAoB,EAChD,OAAO,EACR,MAAM,aAAa,CAAC;AAIrB,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAElD;;GAEG;AACH,MAAM,OAAO,MAAM;IAQC;IACA;IARF,aAAa,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC/C,yBAAyB,GAAG,IAAI,GAAG,EAAmB,CAAC;IACvE;;;OAGG;IACH,YACkB,EAAY,EACZ,MAAe;QADf,OAAE,GAAF,EAAE,CAAU;QACZ,WAAM,GAAN,MAAM,CAAS;IAC9B,CAAC;IAEJ;;;;;;;OAOG;IACH,KAAK,CAAC,IAAI,CAAC,cAAsB,EAAE,MAAY,EAAE,OAAa;QAC5D,IAAI,SAAS,CAAC,cAAc,CAAC;eACxB,CAAC,QAAQ,CAAC,cAAc,CAAC;eACzB,UAAU,CAAC,cAAc,CAAC,EAC7B,CAAC;YACD,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,2DAA2D,CAAC,CAAC;QAClG,CAAC;QAED,IAAI,WAAW,GAAQ,MAAM,IAAI,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,OAAO,IAAI,EAAE,CAAC;QAC3B,IAAI,YAAiB,CAAC;QAEtB,MAAM,aAAa,GAAG,IAAI,KAAK,EAAU,CAAC;QAC1C,4CAA4C;QAC5C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;YACpC,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC3C,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;oBACvC,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,gBAAgB,KAAK,YAAY,CAAC,CAAC;gBACxE,CAAC;gBACD,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBACtD,IAAI,WAAW,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBACjC,mBAAmB;oBACnB,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,EAAE,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,CAAC,gBAAgB;oBACnH,OAAO,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,iBAAiB;gBACxC,CAAC;qBAAM,CAAC;oBACN,SAAS;oBACT,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,SAAS,CAAC,WAAW,CAAC,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YACtD,WAAW,GAAG,EAAE,CAAC;QACnB,CAAC;aACI,CAAC;YACJ,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;YACnC,YAAY,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;YACxC,WAAW,GAAG,UAAU,YAAY,CAAC,CAAC,EAAE,CAAC;QAC3C,CAAC;QAED,+CAA+C;QAC/C,MAAM,aAAa,GAAG,IAAI,KAAK,EAAU,CAAC;QAC1C,IAAI,IAAI,EAAE,MAAM,EAAE,MAAM,IAAI,IAAI,CAAC,yBAAyB,IAAI,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;YACjH,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC3D,MAAM,YAAY,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC;YAC/I,MAAM,mBAAmB,GAAG,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,mBAAmB,CAAC;YACnG,MAAM,QAAQ,GAAG,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC;YAC7E,MAAM,aAAa,GAAG,OAAO,EAAE,MAAM,EAAE,cAAc,CAAC;YACtD,MAAM,eAAe,GAAU,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,eAAe,CAAC;YAClG,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,OAAO,CACzD,CAAC,GAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAM,GAAG,CAAC,CACvC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAErF,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;gBACjC,aAAa,CAAC,IAAI,CAAC,oBAAoB,KAAK,KAAK,YAAY,KAAK,mBAAmB,KAAK,YAAY,GAAG,CAAC,CAAC;YAC7G,CAAC;YACD,0CAA0C;YAC1C,cAAc,GAAG,QAAQ,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,oDAAoD,cAAc,mCAAmC,CAAC,CAAC;QAC3H,CAAC;QAED,sIAAsI;QACtI,MAAM,SAAS,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC;QAC1F,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QACtC,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,WAAW,GAAG,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;QACjF,MAAM,YAAY,GAAG,CAAC,0BAA0B,CAAC,CAAC;QAClD,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YAC/B,YAAY,CAAC,IAAI,CAAC,UAAU,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC5D,CAAC;QACD,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/B,YAAY,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;QACpC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;QAEtD,MAAM,QAAQ,GAAG;YACf,aAAa,EAAE,cAAc;YAC7B,GAAG,YAAY,EAAE,WAAW;YAC5B,GAAG,YAAY,EAAE,WAAW;SAC7B,CAAA;QACD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC9B,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5B,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAChC,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACvD,QAAQ,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QAClD,CAAC;QACD,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC9B,MAAM,GAAG,GAAG,aAAa;YACvB,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,QAAQ,CAAC;YAC5C,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QAChE,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,iBAAiB;QAC/C,OAAO,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,QAAQ,CAAC,cAAsB,EAAE,GAAsB;QAC3D,IAAI,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;YACxD,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,+DAA+D,CAAC,CAAC;QACtG,CAAC;QAED,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;YACnB,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,wDAAwD,CAAC,CAAC;QAC/F,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,GAAG,GAAG,CAAC,GAAa,CAAC,CAAC;QACxB,CAAC;QACD,MAAM,MAAM,GAAI,GAAgB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;YAC1C,OAAO,EAAE,EAAE,EAAE,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,IAAI,EAAE,CAAC;QAC/C,MAAM,WAAW,GAAG,mCAAmC,WAAW,cAAc,CAAC;QACjF,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC;YAC7B,aAAa,EAAE,cAAc;SAC9B,EAAE,OAAO,CAAC,CAAC;QACZ,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QACxE,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,GAAG,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,mBAAmB,CACvB,cAAsB,EACtB,UAAe,EACf,SAA4C,EAC5C,QAAmB;QAEnB,MAAM,GAAG,GAAG,QAAQ,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/D,MAAM,WAAW,GAAG,GAAG,CAAA,eAAe,UAAU,sBAAsB,GAAG,UAAU,GAAG,CAAC,MAAM,cAAc,CAAC;QAC5G,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;QAC9D,MAAM,gBAAgB,GAAG,MAAM,GAAG,CAAC,GAAG,EAAE,CAAC;QACzC,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CAAC,cAAsB,EAAE,eAAoB;QACvD,MAAM,SAAS,GAAG,KAAK,CAAC,eAAe,CAAmB,CAAC;QAC3D,MAAM,kBAAkB,GAAG,EAAE,CAAC;QAC9B,IACE,SAAS,CAAC,cAAc,CAAC;eACtB,CAAC,QAAQ,CAAC,cAAc,CAAC;eACzB,UAAU,CAAC,cAAc,CAAC,EAC7B,CAAC;YACD,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,6DAA6D,CAAC,CAAC;QACpG,CAAC;QACD,IAAI,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,2DAA2D,CAAC,CAAC;QAClG,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QACtD,MAAM,gBAAgB,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC;QACnD,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,cAAc,sCAAsC,CAAC,CAAC;QACzG,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,+CAA+C,CAAC,CAAC;QACtF,CAAC;QACD,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;QAE/F,sCAAsC;QACtC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,IAAI,SAAS,GAAG,KAAK,CAAC;YACtB,KAAK,MAAM,cAAc,IAAI,gBAAgB,EAAE,CAAC;gBAC9C,IAAI,cAAc,CAAC,EAAE,KAAK,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACtC,SAAS,GAAG,IAAI,CAAC;oBAChB,QAAgB,CAAC,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC;oBAC7C,MAAM;gBACR,CAAC;YACH,CAAC;YACD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,2DAA2D;gBAC3D,oEAAoE;gBACpE,QAAQ,CAAC,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,SAAgB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACtF,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;YAC9B,IAAI,KAAK,IAAI,GAAG,EAAE,CAAC;gBACjB,kBAAkB,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;YAC1D,CAAC;iBAAM,CAAC;gBACN,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;QACD,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,MAAM,CAAC,cAAsB,EAAE,SAAc;QACjD,IAAI,SAAS,CAAC,cAAc,CAAC;eACxB,CAAC,QAAQ,CAAC,cAAc,CAAC;eACzB,UAAU,CAAC,cAAc,CAAC,EAC7B,CAAC;YACD,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,6DAA6D,CAAC,CAAC;QACpG,CAAC;QACD,IAAI,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,4DAA4D,CAAC,CAAC;QACnG,CAAC;QACD,IAAI,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;QACrB,CAAC;QACD,OAAO,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE;YAC5B,IAAI,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QACH,MAAM,cAAc,GAAG,EAAE,CAAC;QAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QACtD,MAAM,gBAAgB,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC;QACnD,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,cAAc,sCAAsC,CAAC,CAAC;QACzG,CAAC;QACD,IAAI,YAAY,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC,CAAC;QAChG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;YACjC,YAAY,GAAG,CAAC,YAAY,CAAC,CAAC;QAChC,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;YAC/B,IAAI,KAAK,IAAI,GAAG,EAAE,CAAC;gBACjB,cAAc,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACN,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;QACD,OAAO,cAAc,CAAC;IACxB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,MAAM,CAAC,cAAsB,EAAE,GAAa;QAChD,IAAI,SAAS,CAAC,cAAc,CAAC;YAC3B,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YAC1D,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,wCAAwC,CAAC,CAAC;QAC/E,CAAC;QACD,IAAI,SAAS,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACtC,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,+DAA+D,CAAC,CAAC;QACtG,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QACtD,MAAM,gBAAgB,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC;QACnD,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,cAAc,sCAAsC,CAAC,CAAC;QACzG,CAAC;QAED,iCAAiC;QACjC,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;QACpG,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACrB,mDAAmD;YACnD,IAAI,YAAY,GAAG,KAAK,CAAC;YACzB,KAAK,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;gBACnC,IAAI,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;oBAClB,YAAY,GAAG,IAAI,CAAC;oBACpB,MAAM;gBACR,CAAC;YACH,CAAC;YACD,2DAA2D;YAC3D,oEAAoE;YACpE,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,gBAAgB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;QACD,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtE,OAAO,UAAU,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAChD,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,KAAK,CAAC,cAAsB,EAAE,MAAW;QAC7C,IAAI,SAAS,CAAC,cAAc,CAAC;YAC3B,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YAC1D,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,4DAA4D,CAAC,CAAC;QACnG,CAAC;QACD,IAAI,WAAW,GAAQ,MAAM,IAAI,EAAE,CAAC;QACpC,IAAI,YAAiB,CAAC;QACtB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YAChC,WAAW,GAAG,CAAC,WAAW,CAAC,CAAC;QAC9B,CAAC;QAED,IAAI,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/B,WAAW,GAAG,IAAI,CAAC;QACrB,CAAC;aACI,CAAC;YACJ,YAAY,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;YACxC,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC;QAC/B,CAAC;QAED,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,IAAI,YAAY,IAAI,YAAY,CAAC,WAAW,EAAE,CAAC;YAC7C,OAAO,GAAG,YAAY,CAAC,WAAW,CAAC;QACrC,CAAC;QACD,MAAM,WAAW,GAAG,mCAAmC,WAAW;gCACtC,CAAC;QAC7B,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC;YAC7B,aAAa,EAAE,cAAc;SAC9B,EAAE,OAAO,CAAC,CAAC;QAEZ,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QACxE,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,GAAG,EAAE,CAAC;QAC3B,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IACf,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,QAAQ,CAAC,UAAkB;QAC/B,IAAI,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;YAC1B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;YAChD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC/C,MAAM,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAClD,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;YACrB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YACzC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,QAAQ,CAAC,QAAkB;QAC/B,MAAM,gBAAgB,GAAG,EAAE,CAAC;QAC5B,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;gBAC5B,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;oBACjD,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,IAAI,uBAAuB,EAAE,QAAQ,CAAC,CAAC;oBACjE,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;wBACtB,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,IAAI,uBAAuB,EAAE,CAAC,CAAC;oBAC/F,CAAC;gBACH,CAAC;gBAAC,OAAO,GAAQ,EAAE,CAAC;oBAClB,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,uBAAuB,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC9G,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC5E,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,cAAc,CAAC,YAAsB;QACzC,MAAM,cAAc,GAAG,EAAE,CAAC;QAC1B,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,KAAK,MAAM,QAAQ,IAAI,YAAY,EAAE,CAAC;gBACpC,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;oBACzD,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,QAAQ,uBAAuB,EAAE,QAAQ,CAAC,CAAC;oBACzE,IAAI,QAAQ,CAAC,IAAI,KAAK,GAAG,IAAI,QAAQ,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;wBACtD,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,YAAY,QAAQ,uBAAuB,EAAE,CAAC,CAAC;oBACnH,CAAC;gBACH,CAAC;gBAAC,OAAO,GAAQ,EAAE,CAAC;oBAClB,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,2BAA2B,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;oBACtH,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC9E,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,cAAc,CAAC;IACxB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CAAC,cAAsB,EAAE,SAAc;QACjD,IAAI,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YACzF,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,6DAA6D,CAAC,CAAC;QACpG,CAAC;QACD,IAAI,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,4DAA4D,CAAC,CAAC;QACnG,CAAC;QACD,IAAI,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;QACrB,CAAC;QACD,OAAO,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE;YAC5B,IAAI,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QACtD,MAAM,gBAAgB,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC;QACnD,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC;QAC5B,CAAC;QACD,MAAM,cAAc,GAAG,EAAE,CAAC;QAC1B,IAAI,WAAW,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YAChC,WAAW,GAAG,CAAC,WAAW,CAAC,CAAC;QAC9B,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;YAC9B,IAAI,KAAK,IAAI,GAAG,EAAE,CAAC;gBACjB,cAAc,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACN,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;QACD,OAAO,cAAc,CAAC;IACxB,CAAC;IAED;;;;;OAKG;IACH,0BAA0B;IAC1B,mBAAmB,CAAC,IAAY,EAAE,MAAc,EAAE,IAAwB;QACxE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE;YAC3B,IAAI,EAAE,MAAM;YACZ,IAAI;SACL,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,qBAAqB,CAAC,IAAY;QAChC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,iBAAiB;QACf,OAAO,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,UAA+B,EAAE,cAAsB;QACjF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;YAC5D,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,+CAA+C,cAAc,EAAE,CAAC,CAAC;QACtG,CAAC;QACD,IAAI,CAAC,CAAC,UAAU,EAAE,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACrG,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,iDAAiD,cAAc,EAAE,CAAC,CAAC;QACxG,CAAC;QACD,uCAAuC;QACvC,KAAK,MAAM,YAAY,IAAI,UAAU,CAAC,SAAS,EAAE,CAAC;YAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;YAChD,IAAI,CAAC,CAAC,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;gBAC/B,IAAI,CAAC;oBACH,MAAM,WAAW,GAAG,UAAU,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC;oBACnH,IAAI,WAAW,EAAE,MAAM,KAAK,CAAC,EAAE,CAAC;wBAC9B,MAAM,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,YAAY,CAAQ,CAAC,CAAC;wBAC3D,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,YAAY,uBAAuB,CAAC,CAAC;oBACrE,CAAC;gBACH,CAAC;gBAAC,OAAO,GAAQ,EAAE,CAAC;oBAClB,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,2BAA2B,YAAY,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC5H,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,YAAY,iBAAiB,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;QAED,mDAAmD;QACnD,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QACtD,MAAM,gBAAgB,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC;QACnD,IAAI,CAAC;YACH,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC;gBAC1B,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,cAAc,uBAAuB,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;gBAC/D,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,6BAA6B,cAAc,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC9H,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;QAED,mCAAmC;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACvC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;gBAChF,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,UAAU,EAAE,IAAI,EAAE,QAAQ,uBAAuB,CAAC,CAAC;YAC/E,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,uBAAuB,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;YACtI,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,UAAU,EAAE,IAAI,EAAE,QAAQ,iBAAiB,CAAC,CAAC;QACzE,CAAC;QACD,qGAAqG;QACrG,uBAAuB;QACvB,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;QACxF,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,cAAc,EAAE;YACjD,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,QAAQ;YAClC,MAAM,EAAE,aAAa;YACrB,eAAe,EAAE,UAAU,CAAC,eAAe;YAC3C,mBAAmB,EAAE,UAAU,CAAC,IAAI,CAAC,mBAAmB;SACzD,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -34,7 +34,7 @@ export declare const autoCastKey: (key: any, value?: any) => any;
|
|
|
34
34
|
* @param {object} value - raw value
|
|
35
35
|
* @returns {any} interpreted value
|
|
36
36
|
*/
|
|
37
|
-
export declare const autoCastValue: (value: any) => any;
|
|
37
|
+
export declare const autoCastValue: (key: string, value: any) => any;
|
|
38
38
|
/**
|
|
39
39
|
* Links children of filter together via a comparision operator.
|
|
40
40
|
* @param {any} filter
|