cruddl 3.2.0 → 3.2.2
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/.github/workflows/ci.yml +1 -12
- package/README.md +1 -0
- package/dist/core-exports.d.ts +1 -1
- package/dist/core-exports.js.map +1 -1
- package/dist/spec/model/implementation/flex-search-validation.spec.js +54 -0
- package/dist/spec/model/implementation/flex-search-validation.spec.js.map +1 -1
- package/dist/spec/regression/regression-suite.d.ts +1 -0
- package/dist/spec/regression/regression-suite.js +22 -0
- package/dist/spec/regression/regression-suite.js.map +1 -1
- package/dist/src/cruddl-version.js +1 -1
- package/dist/src/database/arangodb/aql-generator.d.ts +5 -1
- package/dist/src/database/arangodb/aql-generator.js +31 -1
- package/dist/src/database/arangodb/aql-generator.js.map +1 -1
- package/dist/src/database/arangodb/arangodb-adapter.js +1 -0
- package/dist/src/database/arangodb/arangodb-adapter.js.map +1 -1
- package/dist/src/database/inmemory/inmemory-adapter.d.ts +0 -1
- package/dist/src/database/inmemory/inmemory-adapter.js +7 -7
- package/dist/src/database/inmemory/inmemory-adapter.js.map +1 -1
- package/dist/src/database/inmemory/js-generator.d.ts +5 -1
- package/dist/src/database/inmemory/js-generator.js +38 -2
- package/dist/src/database/inmemory/js-generator.js.map +1 -1
- package/dist/src/execution/execution-options.d.ts +28 -0
- package/dist/src/execution/execution-options.js +11 -1
- package/dist/src/execution/execution-options.js.map +1 -1
- package/dist/src/execution/operation-resolver.js +4 -2
- package/dist/src/execution/operation-resolver.js.map +1 -1
- package/dist/src/model/implementation/field.d.ts +1 -0
- package/dist/src/model/implementation/field.js +38 -3
- package/dist/src/model/implementation/field.js.map +1 -1
- package/dist/src/query-tree/child-entities.d.ts +59 -0
- package/dist/src/query-tree/child-entities.js +27 -0
- package/dist/src/query-tree/child-entities.js.map +1 -0
- package/dist/src/query-tree/index.d.ts +1 -0
- package/dist/src/query-tree/index.js +1 -0
- package/dist/src/query-tree/index.js.map +1 -1
- package/dist/src/schema-generation/create-input-types/input-types.js +1 -2
- package/dist/src/schema-generation/create-input-types/input-types.js.map +1 -1
- package/dist/src/schema-generation/flex-search-generator.js +1 -1
- package/dist/src/schema-generation/flex-search-generator.js.map +1 -1
- package/dist/src/schema-generation/query-node-object-type/context.d.ts +12 -1
- package/dist/src/schema-generation/query-node-object-type/query-node-generator.js +2 -1
- package/dist/src/schema-generation/query-node-object-type/query-node-generator.js.map +1 -1
- package/dist/src/schema-generation/update-input-types/input-types.js +67 -26
- package/dist/src/schema-generation/update-input-types/input-types.js.map +1 -1
- package/docs/flexSearch.md +11 -6
- package/package.json +1 -1
package/.github/workflows/ci.yml
CHANGED
|
@@ -5,7 +5,7 @@ jobs:
|
|
|
5
5
|
runs-on: ubuntu-latest
|
|
6
6
|
strategy:
|
|
7
7
|
matrix:
|
|
8
|
-
arango-image: ['arangodb:3.8', 'arangodb:3.9', 'arangodb:3.10']
|
|
8
|
+
arango-image: ['arangodb:3.8', 'arangodb:3.9', 'arangodb:3.10', 'arangodb:3.11']
|
|
9
9
|
node-version: [14.x, 16.x, 18.x]
|
|
10
10
|
steps:
|
|
11
11
|
- uses: actions/checkout@v2
|
|
@@ -20,17 +20,6 @@ jobs:
|
|
|
20
20
|
- run: curl -L http://localhost:8529/_api/version
|
|
21
21
|
- run: npm ci
|
|
22
22
|
- run: npm test
|
|
23
|
-
audit:
|
|
24
|
-
runs-on: ubuntu-latest
|
|
25
|
-
continue-on-error: true
|
|
26
|
-
steps:
|
|
27
|
-
- uses: actions/checkout@v2
|
|
28
|
-
- name: Use Node.js ${{ matrix.node-version }}
|
|
29
|
-
uses: actions/setup-node@v1
|
|
30
|
-
with:
|
|
31
|
-
node-version: ${{ matrix.node-version }}
|
|
32
|
-
- run: npm ci
|
|
33
|
-
- run: npm audit
|
|
34
23
|
deploy:
|
|
35
24
|
if: startsWith(github.ref, 'refs/tags/v')
|
|
36
25
|
runs-on: ubuntu-latest
|
package/README.md
CHANGED
package/dist/core-exports.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ export { Project, ProjectConfig } from './src/project/project';
|
|
|
4
4
|
export { InvalidProjectError } from './src/project/invalid-project-error';
|
|
5
5
|
export { ProjectSource, SourceConfig, SourceType, SourceLike } from './src/project/source';
|
|
6
6
|
export { SchemaExecutor, SchemaExecutionArgs } from './src/execution/schema-executor';
|
|
7
|
-
export { ExecutionOptions, MutationMode, ExecutionOptionsCallbackArgs, } from './src/execution/execution-options';
|
|
7
|
+
export { ExecutionOptions, MutationMode, ExecutionOptionsCallbackArgs, Clock, IDGenerator, } from './src/execution/execution-options';
|
|
8
8
|
export { ExecutionResult } from './src/execution/execution-result';
|
|
9
9
|
export { ValidationMessage, Severity, MessageLocation, SourcePosition, ValidationResult, Model, } from './src/model';
|
|
10
10
|
export { DatabaseAdapter } from './src/database/database-adapter';
|
package/dist/core-exports.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-exports.js","sourceRoot":"","sources":["../core-exports.ts"],"names":[],"mappings":";;;;AAOA,iDAA+D;AAAtD,kGAAA,OAAO,OAAA;AAChB,6EAA0E;AAAjE,4HAAA,mBAAmB,OAAA;AAC5B,+CAA2F;AAAlF,uGAAA,aAAa,OAAA;AAAgB,oGAAA,UAAU,OAAA;AAChD,mEAAsF;AAA7E,iHAAA,cAAc,OAAA;
|
|
1
|
+
{"version":3,"file":"core-exports.js","sourceRoot":"","sources":["../core-exports.ts"],"names":[],"mappings":";;;;AAOA,iDAA+D;AAAtD,kGAAA,OAAO,OAAA;AAChB,6EAA0E;AAAjE,4HAAA,mBAAmB,OAAA;AAC5B,+CAA2F;AAAlF,uGAAA,aAAa,OAAA;AAAgB,oGAAA,UAAU,OAAA;AAChD,mEAAsF;AAA7E,iHAAA,cAAc,OAAA;AASvB,qCAOqB;AANjB,0GAAA,iBAAiB,OAAA;AACjB,iGAAA,QAAQ,OAAA;AACR,wGAAA,eAAe,OAAA;AACf,uGAAA,cAAc,OAAA;AACd,yGAAA,gBAAgB,OAAA;AAChB,8FAAA,KAAK,OAAA;AAGT,0DAAqE;AAA5D,0GAAA,UAAU,OAAA;AAAE,4GAAA,YAAY,OAAA;AAEjC,iEAAoG;AAA3F,2HAAA,yBAAyB,OAAA;AAAE,yHAAA,uBAAuB,OAAA;AAC3D,qEAA2C;AAC3C,6CAA8C;AAArC,kGAAA,QAAQ,OAAA;AACjB,qFAAqF;AAA5E,uIAAA,0BAA0B,OAAA;AACnC,uEAAqE;AAA5D,qHAAA,gBAAgB,OAAA;AACzB,iEAA+E;AAAtE,+HAAA,6BAA6B,OAAA"}
|
|
@@ -74,6 +74,60 @@ describe('FlexSearch', () => {
|
|
|
74
74
|
}
|
|
75
75
|
`, `At least one field on type "HandlingUnitInfo" must be annotated with @flexSearch or @flexSearchFulltext if @flexSearch is specified on the type declaration.`);
|
|
76
76
|
});
|
|
77
|
+
it('warns for includeInSearch on child without includeInSearch field', () => {
|
|
78
|
+
(0, helpers_1.assertValidatorWarns)(`
|
|
79
|
+
type HandlingUnit @rootEntity(flexSearch: true) {
|
|
80
|
+
someExtension: HandlingUnitInfo @flexSearch(includeInSearch: true)
|
|
81
|
+
}
|
|
82
|
+
type HandlingUnitInfo @entityExtension{
|
|
83
|
+
someString: String @flexSearch
|
|
84
|
+
}
|
|
85
|
+
`, `"includeInSearch: true" does not have an effect because none of the fields in type "HandlingUnitInfo" have "includeInSearch: true".`);
|
|
86
|
+
});
|
|
87
|
+
it('does not warn for includeInSearch on child with fulltext includeInSearch field', () => {
|
|
88
|
+
(0, helpers_1.assertValidatorAcceptsAndDoesNotWarn)(`
|
|
89
|
+
type HandlingUnit @rootEntity(flexSearch: true) {
|
|
90
|
+
someExtension: HandlingUnitInfo @flexSearch(includeInSearch: true)
|
|
91
|
+
}
|
|
92
|
+
type HandlingUnitInfo @entityExtension{
|
|
93
|
+
someString: String @flexSearchFulltext(includeInSearch: true)
|
|
94
|
+
}
|
|
95
|
+
`);
|
|
96
|
+
});
|
|
97
|
+
it('rejects nested-recursion of includeInSearch', () => {
|
|
98
|
+
const validationResult = (0, helpers_1.validate)(`
|
|
99
|
+
type Delivery @rootEntity(flexSearch: true) {
|
|
100
|
+
handlingUnits: [HandlingUnit] @flexSearch(includeInSearch: true)
|
|
101
|
+
}
|
|
102
|
+
type HandlingUnit @childEntity{
|
|
103
|
+
handlingUnitNumber: String @flexSearch(includeInSearch: true)
|
|
104
|
+
packingInfo: PackingInfo @flexSearch(includeInSearch: true)
|
|
105
|
+
}
|
|
106
|
+
type PackingInfo @entityExtension{
|
|
107
|
+
handlingUnitNumber: String @flexSearch(includeInSearch: true)
|
|
108
|
+
packedHandlingUnits: [HandlingUnit] @flexSearch(includeInSearch: true)
|
|
109
|
+
}
|
|
110
|
+
`);
|
|
111
|
+
(0, chai_1.expect)(validationResult.hasErrors()).to.be.true;
|
|
112
|
+
// The error appears on "Delivery.handlingUnits", "HandlingUnit.packingInfo" and "PackingInfo.packedHandlingUnits"
|
|
113
|
+
(0, chai_1.expect)(validationResult.getErrors().length, validationResult.toString()).to.equal(3);
|
|
114
|
+
(0, chai_1.expect)(validationResult.getErrors()[0].message, validationResult.toString()).to.equal(`"includeInSearch" cannot be used here because it would cause a recursion.`);
|
|
115
|
+
});
|
|
116
|
+
it('rejects self-recursion of includeInSearch', () => {
|
|
117
|
+
const validationResult = (0, helpers_1.validate)(`
|
|
118
|
+
type Delivery @rootEntity(flexSearch: true) {
|
|
119
|
+
handlingUnits: [HandlingUnit] @flexSearch(includeInSearch: true)
|
|
120
|
+
}
|
|
121
|
+
type HandlingUnit @childEntity{
|
|
122
|
+
handlingUnitNumber: String @flexSearch(includeInSearch: true)
|
|
123
|
+
childHandlingUnits: [HandlingUnit] @flexSearch(includeInSearch: true)
|
|
124
|
+
}
|
|
125
|
+
`);
|
|
126
|
+
(0, chai_1.expect)(validationResult.hasErrors()).to.be.true;
|
|
127
|
+
// The error appears on "Delivery.handlingUnits" and "HandlingUnit.childHandlingUnits"
|
|
128
|
+
(0, chai_1.expect)(validationResult.getErrors().length, validationResult.toString()).to.equal(2);
|
|
129
|
+
(0, chai_1.expect)(validationResult.getErrors()[0].message, validationResult.toString()).to.equal(`"includeInSearch" cannot be used here because it would cause a recursion.`);
|
|
130
|
+
});
|
|
77
131
|
it('rejects flexSearch includeInSearch for booleans', () => {
|
|
78
132
|
(0, helpers_1.assertValidatorRejects)(`
|
|
79
133
|
type HandlingUnit @rootEntity(flexSearch: true) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flex-search-validation.spec.js","sourceRoot":"","sources":["../../../../spec/model/implementation/flex-search-validation.spec.ts"],"names":[],"mappings":";;;AAAA,+BAA8B;AAE9B,sEAA8B;AAC9B,wDAAwE;AACxE,8CAAwD;AACxD,6DAGuC;AACvC,
|
|
1
|
+
{"version":3,"file":"flex-search-validation.spec.js","sourceRoot":"","sources":["../../../../spec/model/implementation/flex-search-validation.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,7 @@ export declare class RegressionSuite {
|
|
|
12
12
|
private _isSetUpClean;
|
|
13
13
|
private inMemoryDB;
|
|
14
14
|
private databaseSpecifier;
|
|
15
|
+
private readonly idGenerator;
|
|
15
16
|
private databaseVersion;
|
|
16
17
|
constructor(path: string, options?: RegressionSuiteOptions);
|
|
17
18
|
private get testsPath();
|
|
@@ -20,6 +20,7 @@ class RegressionSuite {
|
|
|
20
20
|
// TODO: this is ugly but provides a quick fix for things broken with the silentAdapter
|
|
21
21
|
// TODO: implement better regression test architecture for different db types
|
|
22
22
|
this.inMemoryDB = new inmemory_1.InMemoryDB();
|
|
23
|
+
this.idGenerator = new PredictableIDGenerator();
|
|
23
24
|
this.databaseSpecifier = options.database || 'arangodb';
|
|
24
25
|
}
|
|
25
26
|
get testsPath() {
|
|
@@ -31,6 +32,7 @@ class RegressionSuite {
|
|
|
31
32
|
? JSON.parse((0, strip_json_comments_1.default)((0, fs_1.readFileSync)(optionsPath, 'utf-8')))
|
|
32
33
|
: {};
|
|
33
34
|
this.inMemoryDB = new inmemory_1.InMemoryDB();
|
|
35
|
+
this.idGenerator.resetToPhase('init');
|
|
34
36
|
const generalOptions = {
|
|
35
37
|
processError: (e) => {
|
|
36
38
|
console.error(e.stack);
|
|
@@ -39,6 +41,8 @@ class RegressionSuite {
|
|
|
39
41
|
getExecutionOptions: ({ context }) => ({
|
|
40
42
|
authContext: { authRoles: context.authRoles, claims: context.claims },
|
|
41
43
|
flexSearchMaxFilterableAndSortableAmount: context.flexSearchMaxFilterableAndSortableAmount,
|
|
44
|
+
childEntityUpdatesViaDictStrategyThreshold: context.childEntityUpdatesViaDictStrategyThreshold,
|
|
45
|
+
idGenerator: this.idGenerator,
|
|
42
46
|
}),
|
|
43
47
|
modelOptions: {
|
|
44
48
|
forbiddenRootEntityNames: [],
|
|
@@ -114,6 +118,7 @@ class RegressionSuite {
|
|
|
114
118
|
if (!this._isSetUpClean) {
|
|
115
119
|
await this.setUp();
|
|
116
120
|
}
|
|
121
|
+
this.idGenerator.resetToPhase('test');
|
|
117
122
|
if (!this.testDataEnvironment || !this.schema) {
|
|
118
123
|
throw new Error(`Regression suite not set up correctly`);
|
|
119
124
|
}
|
|
@@ -203,4 +208,21 @@ class RegressionSuite {
|
|
|
203
208
|
}
|
|
204
209
|
}
|
|
205
210
|
exports.RegressionSuite = RegressionSuite;
|
|
211
|
+
class PredictableIDGenerator {
|
|
212
|
+
constructor() {
|
|
213
|
+
this.nextNumberPerTarget = new Map();
|
|
214
|
+
this.phase = 'init';
|
|
215
|
+
}
|
|
216
|
+
generateID({ target }) {
|
|
217
|
+
var _a;
|
|
218
|
+
const number = (_a = this.nextNumberPerTarget.get(target)) !== null && _a !== void 0 ? _a : 0;
|
|
219
|
+
this.nextNumberPerTarget.set(target, number + 1);
|
|
220
|
+
return `id_${this.phase}_${String(number).padStart(4, '0')}`;
|
|
221
|
+
}
|
|
222
|
+
resetToPhase(phase) {
|
|
223
|
+
// we have separate phases for init and test because we sometimes skip init
|
|
224
|
+
this.phase = phase;
|
|
225
|
+
this.nextNumberPerTarget = new Map();
|
|
226
|
+
}
|
|
227
|
+
}
|
|
206
228
|
//# sourceMappingURL=regression-suite.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"regression-suite.js","sourceRoot":"","sources":["../../../spec/regression/regression-suite.ts"],"names":[],"mappings":";;;;AAAA,2BAA0E;AAC1E,qCAAoG;AACpG,+BAA+B;AAC/B,sFAAoD;AACpD,0DAA8D;AAE9D,0DAA0E;AAE1E,uEAAuE;AACvE,8EAAyE;AACzE,qDAAyF;
|
|
1
|
+
{"version":3,"file":"regression-suite.js","sourceRoot":"","sources":["../../../spec/regression/regression-suite.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,5 +3,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.CRUDDL_VERSION = void 0;
|
|
4
4
|
// do not modify - this is parsed and changed by the build script
|
|
5
5
|
// explicitly annotating with "string" so typescript won't infer a string literal type
|
|
6
|
-
exports.CRUDDL_VERSION = '3.2.
|
|
6
|
+
exports.CRUDDL_VERSION = '3.2.2';
|
|
7
7
|
//# sourceMappingURL=cruddl-version.js.map
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import { QueryNode } from '../../query-tree';
|
|
2
2
|
import { FlexSearchTokenizable } from '../database-adapter';
|
|
3
3
|
import { AQLCompoundQuery, AQLFragment } from './aql';
|
|
4
|
-
import { Clock } from '../../execution/execution-options';
|
|
4
|
+
import { Clock, IDGenerator } from '../../execution/execution-options';
|
|
5
5
|
export interface QueryGenerationOptions {
|
|
6
6
|
/**
|
|
7
7
|
* An interface to determine the current date/time
|
|
8
8
|
*/
|
|
9
9
|
readonly clock: Clock;
|
|
10
|
+
/**
|
|
11
|
+
* An interface to generate IDs, e.g. for new child entities.
|
|
12
|
+
*/
|
|
13
|
+
readonly idGenerator: IDGenerator;
|
|
10
14
|
}
|
|
11
15
|
export declare function getAQLQuery(node: QueryNode, options?: Partial<QueryGenerationOptions>): AQLCompoundQuery;
|
|
12
16
|
export declare function generateTokenizationQuery(tokensFiltered: ReadonlyArray<FlexSearchTokenizable>): AQLFragment;
|
|
@@ -563,6 +563,35 @@ register(query_tree_1.AggregationQueryNode, (node, context) => {
|
|
|
563
563
|
? (0, aql_1.aql) `COLLECT ${aggregationVar} = ${itemFrag}`
|
|
564
564
|
: (0, aql_1.aql) ``, (0, aql_1.aql) `RETURN ${resultFragment}`);
|
|
565
565
|
});
|
|
566
|
+
register(query_tree_1.UpdateChildEntitiesQueryNode, (node, context) => {
|
|
567
|
+
const itemsVar = aql_1.aql.variable('items');
|
|
568
|
+
const itemsWithIndexVar = aql_1.aql.variable('itemsWithIndex');
|
|
569
|
+
const childContext = context.introduceVariable(node.dictionaryVar);
|
|
570
|
+
const dictVar = childContext.getVariable(node.dictionaryVar);
|
|
571
|
+
const updatedDictVar = aql_1.aql.variable('updatedDict');
|
|
572
|
+
const itemVar = aql_1.aql.variable('item');
|
|
573
|
+
const indexVar = aql_1.aql.variable('indexVar');
|
|
574
|
+
return aqlExt.parenthesizeList(
|
|
575
|
+
// could be a complex expression, and we're using it multiple times -> store in a variable
|
|
576
|
+
(0, aql_1.aql) `LET ${itemsVar} = ${processNode(node.originalList, context)}`,
|
|
577
|
+
// add a __index property to each item so we can sort by this later
|
|
578
|
+
// regular field names cannot start with an underscore, so we're safe to use __index as a
|
|
579
|
+
// temporary property to store the index of the child entity in the list
|
|
580
|
+
(0, aql_1.aql) `LET ${itemsWithIndexVar} = ${aqlExt.parenthesizeList((0, aql_1.aql) `FOR ${indexVar}`, (0, aql_1.aql) `IN 0..(LENGTH(${itemsVar}) - 1)`, (0, aql_1.aql) `RETURN MERGE(NTH(${itemsVar}, ${indexVar}), { __index: ${indexVar} })`)}`,
|
|
581
|
+
// convert the list into a dict object like { 'id1': { ...}, 'id2': { ... } }
|
|
582
|
+
// this allows us to efficiently look up individual objects (to avoid quadratic runtime)
|
|
583
|
+
(0, aql_1.aql) `LET ${dictVar} = ZIP(${itemsVar}[*].id, ${itemsWithIndexVar})`,
|
|
584
|
+
// merging the updated items into the dict to remove the old versions of the updated items
|
|
585
|
+
(0, aql_1.aql) `LET ${updatedDictVar} = MERGE(${dictVar}, {`, aql_1.aql.indent(aql_1.aql.join(node.updates.map((update) => {
|
|
586
|
+
const idFrag = processNode(update.idNode, childContext);
|
|
587
|
+
// we're expecting the newChildEntityNode to merge the untouched properties of
|
|
588
|
+
// the old item, including __index
|
|
589
|
+
const valueFrag = processNode(update.newChildEntityNode, childContext);
|
|
590
|
+
return (0, aql_1.aql) `${idFrag}: ${valueFrag}`;
|
|
591
|
+
}), (0, aql_1.aql) `,\n`)), (0, aql_1.aql) `})`,
|
|
592
|
+
// sort by the __index we stored, and unpack the dictionary into a list again
|
|
593
|
+
(0, aql_1.aql) `FOR ${itemVar}`, (0, aql_1.aql) `IN VALUES(${updatedDictVar})`, (0, aql_1.aql) `SORT ${itemVar}.__index`, (0, aql_1.aql) `RETURN UNSET(${itemVar}, '__index')`);
|
|
594
|
+
});
|
|
566
595
|
register(query_tree_1.MergeObjectsQueryNode, (node, context) => {
|
|
567
596
|
const objectList = node.objectNodes.map((node) => processNode(node, context));
|
|
568
597
|
const objectsFragment = aql_1.aql.join(objectList, (0, aql_1.aql) `, `);
|
|
@@ -1343,9 +1372,10 @@ function processNode(node, context) {
|
|
|
1343
1372
|
// TODO I think AQLCompoundQuery (AQL transaction node) should not be the exported type
|
|
1344
1373
|
// we should rather export AQLExecutableQuery[] (as AQL transaction) directly.
|
|
1345
1374
|
function getAQLQuery(node, options = {}) {
|
|
1346
|
-
var _a;
|
|
1375
|
+
var _a, _b;
|
|
1347
1376
|
return createAQLCompoundQuery(node, aql_1.aql.queryResultVariable('result'), undefined, new QueryContext({
|
|
1348
1377
|
clock: (_a = options.clock) !== null && _a !== void 0 ? _a : new execution_options_1.DefaultClock(),
|
|
1378
|
+
idGenerator: (_b = options.idGenerator) !== null && _b !== void 0 ? _b : new execution_options_1.UUIDGenerator(),
|
|
1349
1379
|
}));
|
|
1350
1380
|
}
|
|
1351
1381
|
exports.getAQLQuery = getAQLQuery;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aql-generator.js","sourceRoot":"","sources":["../../../../src/database/arangodb/aql-generator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"aql-generator.js","sourceRoot":"","sources":["../../../../src/database/arangodb/aql-generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -207,6 +207,7 @@ class ArangoDBAdapter {
|
|
|
207
207
|
//TODO Execute single statement AQL queries directly without "db.transaction"?
|
|
208
208
|
aqlQuery = (0, aql_generator_1.getAQLQuery)(queryTree, {
|
|
209
209
|
clock: options.clock,
|
|
210
|
+
idGenerator: options.idGenerator,
|
|
210
211
|
});
|
|
211
212
|
executableQueries = aqlQuery.getExecutableQueries();
|
|
212
213
|
}
|