@restorecommerce/chassis-srv 1.7.9 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,37 @@
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.0](https://github.com/restorecommerce/chassis-srv/compare/@restorecommerce/chassis-srv@1.7.10...@restorecommerce/chassis-srv@1.8.0) (2026-02-06)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **chassis:** node._key conflicts with graph edge key ([e42c31b](https://github.com/restorecommerce/chassis-srv/commit/e42c31b95d9b661a906971f42123a01883de1a13))
12
+ * **resource-base-interface:** roleback to redis 4.7! ([f92809f](https://github.com/restorecommerce/chassis-srv/commit/f92809f459320797404815a95ce4c0e844ba9d35))
13
+
14
+
15
+ ### Features
16
+
17
+ * **facade:** performance upgrade via latent id buffering ([579d4b9](https://github.com/restorecommerce/chassis-srv/commit/579d4b947585848c48414989ca91446315d607b3))
18
+
19
+
20
+ ### Reverts
21
+
22
+ * Revert "chore(release): publish" ([d508e8a](https://github.com/restorecommerce/chassis-srv/commit/d508e8af9803a4a182d244f48172c5881b11ebd5))
23
+ * Revert "chore(release): publish" ([8db759f](https://github.com/restorecommerce/chassis-srv/commit/8db759fd05eef801dd6ae60727ef1b763f5baafb))
24
+
25
+
26
+
27
+
28
+
29
+ ## [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)
30
+
31
+ **Note:** Version bump only for package @restorecommerce/chassis-srv
32
+
33
+
34
+
35
+
36
+
6
37
  ## [1.7.9](https://github.com/restorecommerce/chassis-srv/compare/@restorecommerce/chassis-srv@1.7.8...@restorecommerce/chassis-srv@1.7.9) (2025-11-01)
7
38
 
8
39
 
@@ -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 {any} documents list of documents
40
+ * @param {ArangoDocument | ArangoDocument[]} documents list of documents
45
41
  * @param {string[]} idsArray list of document ids
46
- * @returns {Promise<any>} A list of documents including the document handlers
42
+ * @returns {Promise<ArangoDocument[]>} A list of documents including the document handlers
47
43
  */
48
- getDocumentHandlers(collectionName: string, collection: any, documents: any, idsArray?: string[]): Promise<any>;
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;AAMzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEtD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IAGb,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC;CAC1B;AACD;;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;IAiJ7E;;;;;;OAMG;IACG,QAAQ,CAAC,cAAc,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IA8B5E;;;;;;;;OAQG;IACG,mBAAmB,CAAC,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAC/E,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IAoBpC;;;;;OAKG;IACG,MAAM,CAAC,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAoDxE;;;;;;OAMG;IACG,MAAM,CAAC,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAsClE;;;;;;OAMG;IACG,MAAM,CAAC,cAAc,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IA0CjE;;;;;OAKG;IACG,KAAK,CAAC,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAmC9D;;;;;;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;IAoClE;;;;;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;IAQzC,iBAAiB,IAAI,KAAK,CAAC,GAAG,CAAC;IAIzB,qBAAqB,CAAC,UAAU,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAiEpG"}
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;IAgDxE;;;;;;OAMG;IACG,MAAM,CAAC,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAmClE;;;;;;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, isArray, merge, clone, forEach } from 'remeda';
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) || !isString(collectionName) ||
30
- isEmptyish(collectionName)) {
31
- this.logger?.error('invalid or missing collection argument for find operation');
32
- throw new Error('invalid or missing collection argument for find operation');
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
- let bindVars;
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?.error(`custom query ${query} not found`);
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 == 'query') {
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
- customFilter += ` ${customQuery.code} `;
53
+ customFilters.push(customQuery.code);
55
54
  }
56
55
  }
57
56
  }
58
- if (!isArray(filterQuery)) {
59
- filterQuery = [filterQuery];
60
- }
61
- if (isEmptyish(filterQuery[0])) {
57
+ if (isEmptyish(filterQuery)) {
62
58
  filterQuery = true;
63
59
  }
64
60
  else {
61
+ filterQuery = toArray(filterQuery);
65
62
  filterResult = buildFilter(filterQuery);
66
63
  filterQuery = filterResult.q;
67
64
  }
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';
75
- }
76
65
  // if search options are set build search query
77
- let searchQuery;
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
- if (this.collectionNameAnalyzerMap && this.collectionNameAnalyzerMap.get(collectionName)) {
81
- const searchFields = (options?.search?.fields?.length > 0) ? options.search.fields : this.collectionNameAnalyzerMap.get(collectionName).fields;
82
- const similarityThreshold = this.collectionNameAnalyzerMap.get(collectionName).similarityThreshold;
83
- const viewName = this.collectionNameAnalyzerMap.get(collectionName).viewName;
84
- const caseSensitive = options?.search?.case_sensitive;
85
- const analyzerOptions = this.collectionNameAnalyzerMap.get(collectionName).analyzerOptions;
86
- let analyzerName;
87
- if (caseSensitive) {
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
- let queryString = `FOR node in @@collection FILTER ${filterQuery}`;
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 = {};
78
+ // override collection name with view name
79
+ collectionName = viewName;
142
80
  }
143
81
  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);
162
- }
163
- else {
164
- res = await this.db.query(queryString, bindVars);
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(`FILTER ${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 => !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?.error('invalid or missing collection argument for findByID operation');
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?.error('invalid or missing ids argument for findByID operation');
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 in @@collection FILTER ${filterQuery} RETURN 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 {any} documents list of documents
155
+ * @param {ArangoDocument | ArangoDocument[]} documents list of documents
209
156
  * @param {string[]} idsArray list of document ids
210
- * @returns {Promise<any>} A list of documents including the document handlers
157
+ * @returns {Promise<ArangoDocument[]>} A list of documents including the document handlers
211
158
  */
212
159
  async getDocumentHandlers(collectionName, collection, documents, idsArray) {
213
- let ids = [];
214
- if (documents && !isArray(documents)) {
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;
@@ -239,22 +174,18 @@ export class Arango {
239
174
  const updateDocsResponse = [];
240
175
  if (isNullish(collectionName) ||
241
176
  !isString(collectionName) || isEmptyish(collectionName)) {
242
- this.logger?.error('invalid or missing collection argument for update operation');
243
- throw new Error('invalid or missing collection argument for update operation');
177
+ throw new LoggedError(this.logger, 'invalid or missing collection argument for update operation');
244
178
  }
245
179
  if (isNullish(documents)) {
246
- this.logger?.error('invalid or missing document argument for update operation');
247
- throw new Error('invalid or missing document argument for update operation');
180
+ throw new LoggedError(this.logger, 'invalid or missing document argument for update operation');
248
181
  }
249
182
  const collection = this.db.collection(collectionName);
250
183
  const collectionExists = await collection.exists();
251
184
  if (!collectionExists) {
252
- this.logger?.error(`Collection ${collectionName} does not exist for update operation`);
253
- throw new Error(`Collection ${collectionName} does not exist for update operation`);
185
+ throw new LoggedError(this.logger, `Collection ${collectionName} does not exist for update operation`);
254
186
  }
255
- if (!isArray(documents)) {
256
- this.logger?.error(`Documents should be list for update operation`);
257
- throw new Error(`Documents should be list for update operation`);
187
+ if (!Array.isArray(documents)) {
188
+ throw new LoggedError(this.logger, `Documents should be list for update operation`);
258
189
  }
259
190
  const docsWithHandlers = await this.getDocumentHandlers(collectionName, collection, documents);
260
191
  // update _key for the input documents
@@ -270,7 +201,7 @@ export class Arango {
270
201
  if (!foundInDB) {
271
202
  // if document is not found in DB use the id itself as _key
272
203
  // this key will return an array in response since it does not exist
273
- document._key = document.id;
204
+ document._key = idToKey(document.id);
274
205
  }
275
206
  }
276
207
  const updatedDocs = await collection.updateAll(documents, { returnNew: true });
@@ -294,15 +225,13 @@ export class Arango {
294
225
  async upsert(collectionName, documents) {
295
226
  if (isNullish(collectionName) ||
296
227
  !isString(collectionName) || isEmptyish(collectionName)) {
297
- this.logger?.error('invalid or missing collection argument for upsert operation');
298
- throw new Error('invalid or missing collection argument for upsert operation');
228
+ throw new LoggedError(this.logger, 'invalid or missing collection argument for upsert operation');
299
229
  }
300
230
  if (isNullish(documents)) {
301
- this.logger?.error('invalid or missing documents argument for upsert operation');
302
- throw new Error('invalid or missing documents argument for upsert operation');
231
+ throw new LoggedError(this.logger, 'invalid or missing documents argument for upsert operation');
303
232
  }
304
233
  let docs = clone(documents);
305
- if (!isArray(documents)) {
234
+ if (!Array.isArray(documents)) {
306
235
  docs = [documents];
307
236
  }
308
237
  forEach(docs, (document, i) => {
@@ -312,11 +241,10 @@ export class Arango {
312
241
  const collection = this.db.collection(collectionName);
313
242
  const collectionExists = await collection.exists();
314
243
  if (!collectionExists) {
315
- this.logger?.error(`Collection ${collectionName} does not exist for upsert operation`);
316
- throw new Error(`Collection ${collectionName} does not exist for upsert operation`);
244
+ throw new LoggedError(this.logger, `Collection ${collectionName} does not exist for upsert operation`);
317
245
  }
318
246
  let upsertedDocs = await collection.saveAll(docs, { returnNew: true, overwriteMode: 'update' });
319
- if (!isArray(upsertedDocs)) {
247
+ if (!Array.isArray(upsertedDocs)) {
320
248
  upsertedDocs = [upsertedDocs];
321
249
  }
322
250
  for (const doc of upsertedDocs) {
@@ -339,21 +267,18 @@ export class Arango {
339
267
  async delete(collectionName, ids) {
340
268
  if (isNullish(collectionName) ||
341
269
  !isString(collectionName) || isEmptyish(collectionName)) {
342
- this.logger?.error('invalid or missing collection argument');
343
- throw new Error('invalid or missing collection argument');
270
+ throw new LoggedError(this.logger, 'invalid or missing collection argument');
344
271
  }
345
272
  if (isNullish(ids) || isEmptyish(ids)) {
346
- this.logger?.error('invalid or missing document IDs argument for delete operation');
347
- throw new Error('invalid or missing document IDs argument for delete operation');
273
+ throw new LoggedError(this.logger, 'invalid or missing document IDs argument for delete operation');
348
274
  }
349
275
  const collection = this.db.collection(collectionName);
350
276
  const collectionExists = await collection.exists();
351
277
  if (!collectionExists) {
352
- this.logger?.error(`Collection ${collectionName} does not exist for delete operation`);
353
- throw new Error(`Collection ${collectionName} does not exist for delete operation`);
278
+ throw new LoggedError(this.logger, `Collection ${collectionName} does not exist for delete operation`);
354
279
  }
355
280
  // retreive _key for the give ids
356
- const docsWithHandlers = await this.getDocumentHandlers(collectionName, collection, null, ids);
281
+ const docsWithHandlers = await this.getDocumentHandlers(collectionName, collection, undefined, ids);
357
282
  for (const id of ids) {
358
283
  // check if given id is present in docsWithHandlers
359
284
  let foundDocInDB = false;
@@ -369,10 +294,7 @@ export class Arango {
369
294
  docsWithHandlers.push({ _key: id });
370
295
  }
371
296
  }
372
- const deleteHandlerIds = [];
373
- for (const doc of docsWithHandlers) {
374
- deleteHandlerIds.push(doc._key);
375
- }
297
+ const deleteHandlerIds = docsWithHandlers.map((doc) => doc._key);
376
298
  return collection.removeAll(deleteHandlerIds);
377
299
  }
378
300
  /**
@@ -384,12 +306,11 @@ export class Arango {
384
306
  async count(collectionName, filter) {
385
307
  if (isNullish(collectionName) ||
386
308
  !isString(collectionName) || isEmptyish(collectionName)) {
387
- this.logger?.error('invalid or missing collection argument for count operation');
388
- throw new Error('invalid or missing collection argument for count operation');
309
+ throw new LoggedError(this.logger, 'invalid or missing collection argument for count operation');
389
310
  }
390
311
  let filterQuery = filter || {};
391
312
  let filterResult;
392
- if (!isArray(filterQuery)) {
313
+ if (!Array.isArray(filterQuery)) {
393
314
  filterQuery = [filterQuery];
394
315
  }
395
316
  if (isEmptyish(filterQuery[0])) {
@@ -403,7 +324,7 @@ export class Arango {
403
324
  if (filterResult && filterResult.bindVarsMap) {
404
325
  varArgs = filterResult.bindVarsMap;
405
326
  }
406
- const queryString = `FOR node in @@collection FILTER ${filterQuery} COLLECT WITH COUNT
327
+ const queryString = `FOR node IN @@collection FILTER ${filterQuery} COLLECT WITH COUNT
407
328
  INTO length RETURN length`;
408
329
  const bindVars = Object.assign({
409
330
  '@collection': collectionName
@@ -486,15 +407,13 @@ export class Arango {
486
407
  */
487
408
  async insert(collectionName, documents) {
488
409
  if (isNullish(collectionName) || !isString(collectionName) || isEmptyish(collectionName)) {
489
- this.logger?.error('invalid or missing collection argument for insert operation');
490
- throw new Error('invalid or missing collection argument for insert operation');
410
+ throw new LoggedError(this.logger, 'invalid or missing collection argument for insert operation');
491
411
  }
492
412
  if (isNullish(documents)) {
493
- this.logger?.error('invalid or missing documents argument for insert operation');
494
- throw new Error('invalid or missing documents argument for insert operation');
413
+ throw new LoggedError(this.logger, 'invalid or missing documents argument for insert operation');
495
414
  }
496
415
  let docs = clone(documents);
497
- if (!isArray(documents)) {
416
+ if (!Array.isArray(documents)) {
498
417
  docs = [documents];
499
418
  }
500
419
  forEach(docs, (document, i) => {
@@ -507,7 +426,7 @@ export class Arango {
507
426
  }
508
427
  const insertResponse = [];
509
428
  let createdDocs = await collection.saveAll(docs, { returnNew: true });
510
- if (!isArray(createdDocs)) {
429
+ if (!Array.isArray(createdDocs)) {
511
430
  createdDocs = [createdDocs];
512
431
  }
513
432
  for (const doc of createdDocs) {
@@ -539,8 +458,7 @@ export class Arango {
539
458
  */
540
459
  unregisterCustomQuery(name) {
541
460
  if (!this.customQueries.has(name)) {
542
- this.logger?.error('custom function not found');
543
- throw new Error('custom function not found');
461
+ throw new LoggedError(this.logger, 'custom function not found');
544
462
  }
545
463
  this.customQueries.delete(name);
546
464
  }
@@ -549,12 +467,10 @@ export class Arango {
549
467
  }
550
468
  async createAnalyzerAndView(viewConfig, collectionName) {
551
469
  if (!viewConfig.view.viewName || !viewConfig?.view?.options) {
552
- this.logger?.error(`View name or view configuration missing for ${collectionName}`);
553
- throw new Error(`View name or view configuration missing for ${collectionName}`);
470
+ throw new LoggedError(this.logger, `View name or view configuration missing for ${collectionName}`);
554
471
  }
555
472
  if ((!viewConfig?.analyzers) || (viewConfig.analyzers.length === 0) || !(viewConfig.analyzerOptions)) {
556
- this.logger?.error(`Analyzer options or configuration missing for ${collectionName}`);
557
- throw new Error(`Analyzer options or configuration missing for ${collectionName}`);
473
+ throw new LoggedError(this.logger, `Analyzer options or configuration missing for ${collectionName}`);
558
474
  }
559
475
  // create analyzer if it does not exist
560
476
  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":"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"}
@@ -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
@@ -1 +1 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../src/database/provider/arango/common.ts"],"names":[],"mappings":"AAQA;;;;;;;GAOG;AACH,eAAO,MAAM,KAAK,GAAU,IAAI,GAAG,EAAE,gBAAgB,MAAM,EAAE,OAAO,MAAM,GAAG,GAAG,EAC9E,OAAO,MAAM,KAAG,OAAO,CAAC,GAAG,CAa5B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,OAAO,GAAI,IAAI,MAAM,KAAG,GAEpC,CAAC;AA6BF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAAI,UAAU,MAAM,KAAG,MAMvD,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,UAAU,GAAG,KAAG,GAGnD,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,GAAI,KAAK,GAAG,EAAE,QAAQ,GAAG,KAAG,GAKnD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,aAAa,GAAI,OAAO,GAAG,KAAG,GAoB1C,CAAC;AAEF;;;;;;;GAOG;AAEH,eAAO,MAAM,eAAe,GAAI,QAAQ,GAAG,EAAE,IAAI,MAAM,EAAE,OAAO,MAAM,EACpE,aAAa,GAAG,KAAG,GAmBpB,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,UAAU,GAAI,KAAK,GAAG,EAAE,OAAO,GAAG,EAAE,OAAO,MAAM,EAAE,aAAa,GAAG,KAAG,MAkFlF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,GAAI,QAAQ,GAAG,EAAE,QAAQ,MAAM,EAAE,cAAc,GAAG,KAAG,GA6D5E,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAI,SAAS,GAAG,KAAG,MAU3C,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,GAAI,SAAS,GAAG,EAAE,QAAQ,MAAM,EAAE,cAAc,GAAG,KAAG,GA4B7E,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,SAAS,GAAG,KAAG,GAoC1C,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,QAAQ,MAAM,wBAE3C,CAAC"}
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../src/database/provider/arango/common.ts"],"names":[],"mappings":"AAQA;;;;;;;GAOG;AACH,eAAO,MAAM,KAAK,GAChB,IAAI,GAAG,EACP,gBAAgB,MAAM,EACtB,OAAO,MAAM,GAAG,GAAG,EACnB,OAAO,MAAM,KACZ,OAAO,CAAC,GAAG,CAOb,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,OAAO,GAAI,IAAI,MAAM,KAAG,GAEpC,CAAC;AA6BF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAAI,UAAU,MAAM,KAAG,MAMvD,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,UAAU,GAAG,KAAG,GAGnD,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,GAAI,KAAK,GAAG,EAAE,QAAQ,GAAG,KAAG,GAQnD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,aAAa,GAAI,KAAK,MAAM,EAAE,OAAO,GAAG,KAAG,GAoBvD,CAAC;AAEF;;;;;;;GAOG;AAEH,eAAO,MAAM,eAAe,GAAI,QAAQ,GAAG,EAAE,IAAI,MAAM,EAAE,OAAO,MAAM,EACpE,aAAa,GAAG,KAAG,GAmBpB,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,UAAU,GAAI,KAAK,GAAG,EAAE,OAAO,GAAG,EAAE,OAAO,MAAM,EAAE,aAAa,GAAG,KAAG,MAkFlF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,GAAI,QAAQ,GAAG,EAAE,QAAQ,MAAM,EAAE,cAAc,GAAG,KAAG,GA6D5E,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAI,SAAS,GAAG,KAAG,MAU3C,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,GAAI,SAAS,GAAG,EAAE,QAAQ,MAAM,EAAE,cAAc,GAAG,KAAG,GAY7E,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,SAAS,GAAG,KAAG,GAoC1C,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,QAAQ,MAAM,wBAE3C,CAAC"}