@spinajs/orm 2.0.481 → 2.0.482
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/README.md +72 -3
- package/lib/cjs/bootstrap.js +10 -0
- package/lib/cjs/bootstrap.js.map +1 -1
- package/lib/cjs/builders.d.ts +115 -11
- package/lib/cjs/builders.d.ts.map +1 -1
- package/lib/cjs/builders.js +342 -283
- package/lib/cjs/builders.js.map +1 -1
- package/lib/cjs/converters.d.ts +9 -2
- package/lib/cjs/converters.d.ts.map +1 -1
- package/lib/cjs/converters.js +48 -8
- package/lib/cjs/converters.js.map +1 -1
- package/lib/cjs/decorators.d.ts +26 -3
- package/lib/cjs/decorators.d.ts.map +1 -1
- package/lib/cjs/decorators.js +95 -42
- package/lib/cjs/decorators.js.map +1 -1
- package/lib/cjs/dehydrators.js +1 -1
- package/lib/cjs/dehydrators.js.map +1 -1
- package/lib/cjs/descriptor.d.ts +1 -0
- package/lib/cjs/descriptor.d.ts.map +1 -1
- package/lib/cjs/descriptor.js +16 -40
- package/lib/cjs/descriptor.js.map +1 -1
- package/lib/cjs/driver.d.ts +136 -7
- package/lib/cjs/driver.d.ts.map +1 -1
- package/lib/cjs/driver.js +279 -0
- package/lib/cjs/driver.js.map +1 -1
- package/lib/cjs/existsRelationHandlers.d.ts +29 -0
- package/lib/cjs/existsRelationHandlers.d.ts.map +1 -0
- package/lib/cjs/existsRelationHandlers.js +104 -0
- package/lib/cjs/existsRelationHandlers.js.map +1 -0
- package/lib/cjs/fp.d.ts.map +1 -1
- package/lib/cjs/fp.js +10 -15
- package/lib/cjs/fp.js.map +1 -1
- package/lib/cjs/hydrators.d.ts.map +1 -1
- package/lib/cjs/hydrators.js +29 -2
- package/lib/cjs/hydrators.js.map +1 -1
- package/lib/cjs/identity-map.d.ts +60 -0
- package/lib/cjs/identity-map.d.ts.map +1 -0
- package/lib/cjs/identity-map.js +135 -0
- package/lib/cjs/identity-map.js.map +1 -0
- package/lib/cjs/index.d.ts +12 -0
- package/lib/cjs/index.d.ts.map +1 -1
- package/lib/cjs/index.js +12 -0
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/interfaces.d.ts +295 -9
- package/lib/cjs/interfaces.d.ts.map +1 -1
- package/lib/cjs/interfaces.js +54 -1
- package/lib/cjs/interfaces.js.map +1 -1
- package/lib/cjs/metadata.d.ts.map +1 -1
- package/lib/cjs/metadata.js +4 -1
- package/lib/cjs/metadata.js.map +1 -1
- package/lib/cjs/metrics.d.ts +53 -0
- package/lib/cjs/metrics.d.ts.map +1 -0
- package/lib/cjs/metrics.js +82 -0
- package/lib/cjs/metrics.js.map +1 -0
- package/lib/cjs/middlewares.d.ts +13 -1
- package/lib/cjs/middlewares.d.ts.map +1 -1
- package/lib/cjs/middlewares.js +55 -15
- package/lib/cjs/middlewares.js.map +1 -1
- package/lib/cjs/model.d.ts +129 -13
- package/lib/cjs/model.d.ts.map +1 -1
- package/lib/cjs/model.js +449 -93
- package/lib/cjs/model.js.map +1 -1
- package/lib/cjs/orm.d.ts.map +1 -1
- package/lib/cjs/orm.js +12 -3
- package/lib/cjs/orm.js.map +1 -1
- package/lib/cjs/orphan.d.ts +27 -0
- package/lib/cjs/orphan.d.ts.map +1 -0
- package/lib/cjs/orphan.js +55 -0
- package/lib/cjs/orphan.js.map +1 -0
- package/lib/cjs/primary-keys.d.ts +60 -0
- package/lib/cjs/primary-keys.d.ts.map +1 -0
- package/lib/cjs/primary-keys.js +243 -0
- package/lib/cjs/primary-keys.js.map +1 -0
- package/lib/cjs/relation-objects.d.ts +101 -9
- package/lib/cjs/relation-objects.d.ts.map +1 -1
- package/lib/cjs/relation-objects.js +194 -43
- package/lib/cjs/relation-objects.js.map +1 -1
- package/lib/cjs/relations.d.ts +7 -1
- package/lib/cjs/relations.d.ts.map +1 -1
- package/lib/cjs/relations.js +16 -1
- package/lib/cjs/relations.js.map +1 -1
- package/lib/cjs/resilience.d.ts +50 -0
- package/lib/cjs/resilience.d.ts.map +1 -0
- package/lib/cjs/resilience.js +70 -0
- package/lib/cjs/resilience.js.map +1 -0
- package/lib/cjs/snapshot.d.ts +58 -0
- package/lib/cjs/snapshot.d.ts.map +1 -0
- package/lib/cjs/snapshot.js +125 -0
- package/lib/cjs/snapshot.js.map +1 -0
- package/lib/cjs/statements.d.ts +11 -1
- package/lib/cjs/statements.d.ts.map +1 -1
- package/lib/cjs/statements.js +13 -2
- package/lib/cjs/statements.js.map +1 -1
- package/lib/cjs/subject-builder.d.ts +79 -0
- package/lib/cjs/subject-builder.d.ts.map +1 -0
- package/lib/cjs/subject-builder.js +296 -0
- package/lib/cjs/subject-builder.js.map +1 -0
- package/lib/cjs/subject-executor.d.ts +122 -0
- package/lib/cjs/subject-executor.d.ts.map +1 -0
- package/lib/cjs/subject-executor.js +319 -0
- package/lib/cjs/subject-executor.js.map +1 -0
- package/lib/cjs/subject-sorter.d.ts +70 -0
- package/lib/cjs/subject-sorter.d.ts.map +1 -0
- package/lib/cjs/subject-sorter.js +173 -0
- package/lib/cjs/subject-sorter.js.map +1 -0
- package/lib/cjs/subject.d.ts +100 -0
- package/lib/cjs/subject.d.ts.map +1 -0
- package/lib/cjs/subject.js +89 -0
- package/lib/cjs/subject.js.map +1 -0
- package/lib/cjs/unit-of-work.d.ts +52 -0
- package/lib/cjs/unit-of-work.d.ts.map +1 -0
- package/lib/cjs/unit-of-work.js +170 -0
- package/lib/cjs/unit-of-work.js.map +1 -0
- package/lib/mjs/bootstrap.js +10 -0
- package/lib/mjs/bootstrap.js.map +1 -1
- package/lib/mjs/builders.d.ts +115 -11
- package/lib/mjs/builders.d.ts.map +1 -1
- package/lib/mjs/builders.js +344 -285
- package/lib/mjs/builders.js.map +1 -1
- package/lib/mjs/converters.d.ts +9 -2
- package/lib/mjs/converters.d.ts.map +1 -1
- package/lib/mjs/converters.js +48 -8
- package/lib/mjs/converters.js.map +1 -1
- package/lib/mjs/decorators.d.ts +26 -3
- package/lib/mjs/decorators.d.ts.map +1 -1
- package/lib/mjs/decorators.js +96 -44
- package/lib/mjs/decorators.js.map +1 -1
- package/lib/mjs/dehydrators.js +1 -1
- package/lib/mjs/dehydrators.js.map +1 -1
- package/lib/mjs/descriptor.d.ts +1 -0
- package/lib/mjs/descriptor.d.ts.map +1 -1
- package/lib/mjs/descriptor.js +17 -39
- package/lib/mjs/descriptor.js.map +1 -1
- package/lib/mjs/driver.d.ts +136 -7
- package/lib/mjs/driver.d.ts.map +1 -1
- package/lib/mjs/driver.js +279 -0
- package/lib/mjs/driver.js.map +1 -1
- package/lib/mjs/existsRelationHandlers.d.ts +29 -0
- package/lib/mjs/existsRelationHandlers.d.ts.map +1 -0
- package/lib/mjs/existsRelationHandlers.js +100 -0
- package/lib/mjs/existsRelationHandlers.js.map +1 -0
- package/lib/mjs/fp.d.ts.map +1 -1
- package/lib/mjs/fp.js +10 -15
- package/lib/mjs/fp.js.map +1 -1
- package/lib/mjs/hydrators.d.ts.map +1 -1
- package/lib/mjs/hydrators.js +29 -2
- package/lib/mjs/hydrators.js.map +1 -1
- package/lib/mjs/identity-map.d.ts +60 -0
- package/lib/mjs/identity-map.d.ts.map +1 -0
- package/lib/mjs/identity-map.js +130 -0
- package/lib/mjs/identity-map.js.map +1 -0
- package/lib/mjs/index.d.ts +12 -0
- package/lib/mjs/index.d.ts.map +1 -1
- package/lib/mjs/index.js +12 -0
- package/lib/mjs/index.js.map +1 -1
- package/lib/mjs/interfaces.d.ts +295 -9
- package/lib/mjs/interfaces.d.ts.map +1 -1
- package/lib/mjs/interfaces.js +53 -0
- package/lib/mjs/interfaces.js.map +1 -1
- package/lib/mjs/metadata.d.ts.map +1 -1
- package/lib/mjs/metadata.js +4 -1
- package/lib/mjs/metadata.js.map +1 -1
- package/lib/mjs/metrics.d.ts +53 -0
- package/lib/mjs/metrics.d.ts.map +1 -0
- package/lib/mjs/metrics.js +76 -0
- package/lib/mjs/metrics.js.map +1 -0
- package/lib/mjs/middlewares.d.ts +13 -1
- package/lib/mjs/middlewares.d.ts.map +1 -1
- package/lib/mjs/middlewares.js +55 -15
- package/lib/mjs/middlewares.js.map +1 -1
- package/lib/mjs/model.d.ts +129 -13
- package/lib/mjs/model.d.ts.map +1 -1
- package/lib/mjs/model.js +451 -95
- package/lib/mjs/model.js.map +1 -1
- package/lib/mjs/orm.d.ts.map +1 -1
- package/lib/mjs/orm.js +12 -3
- package/lib/mjs/orm.js.map +1 -1
- package/lib/mjs/orphan.d.ts +27 -0
- package/lib/mjs/orphan.d.ts.map +1 -0
- package/lib/mjs/orphan.js +52 -0
- package/lib/mjs/orphan.js.map +1 -0
- package/lib/mjs/primary-keys.d.ts +60 -0
- package/lib/mjs/primary-keys.d.ts.map +1 -0
- package/lib/mjs/primary-keys.js +223 -0
- package/lib/mjs/primary-keys.js.map +1 -0
- package/lib/mjs/relation-objects.d.ts +101 -9
- package/lib/mjs/relation-objects.d.ts.map +1 -1
- package/lib/mjs/relation-objects.js +194 -43
- package/lib/mjs/relation-objects.js.map +1 -1
- package/lib/mjs/relations.d.ts +7 -1
- package/lib/mjs/relations.d.ts.map +1 -1
- package/lib/mjs/relations.js +16 -1
- package/lib/mjs/relations.js.map +1 -1
- package/lib/mjs/resilience.d.ts +50 -0
- package/lib/mjs/resilience.d.ts.map +1 -0
- package/lib/mjs/resilience.js +64 -0
- package/lib/mjs/resilience.js.map +1 -0
- package/lib/mjs/snapshot.d.ts +58 -0
- package/lib/mjs/snapshot.d.ts.map +1 -0
- package/lib/mjs/snapshot.js +115 -0
- package/lib/mjs/snapshot.js.map +1 -0
- package/lib/mjs/statements.d.ts +11 -1
- package/lib/mjs/statements.d.ts.map +1 -1
- package/lib/mjs/statements.js +14 -3
- package/lib/mjs/statements.js.map +1 -1
- package/lib/mjs/subject-builder.d.ts +79 -0
- package/lib/mjs/subject-builder.d.ts.map +1 -0
- package/lib/mjs/subject-builder.js +292 -0
- package/lib/mjs/subject-builder.js.map +1 -0
- package/lib/mjs/subject-executor.d.ts +122 -0
- package/lib/mjs/subject-executor.d.ts.map +1 -0
- package/lib/mjs/subject-executor.js +312 -0
- package/lib/mjs/subject-executor.js.map +1 -0
- package/lib/mjs/subject-sorter.d.ts +70 -0
- package/lib/mjs/subject-sorter.d.ts.map +1 -0
- package/lib/mjs/subject-sorter.js +168 -0
- package/lib/mjs/subject-sorter.js.map +1 -0
- package/lib/mjs/subject.d.ts +100 -0
- package/lib/mjs/subject.d.ts.map +1 -0
- package/lib/mjs/subject.js +84 -0
- package/lib/mjs/subject.js.map +1 -0
- package/lib/mjs/unit-of-work.d.ts +52 -0
- package/lib/mjs/unit-of-work.d.ts.map +1 -0
- package/lib/mjs/unit-of-work.js +166 -0
- package/lib/mjs/unit-of-work.js.map +1 -0
- package/lib/tsconfig.cjs.tsbuildinfo +1 -1
- package/lib/tsconfig.mjs.tsbuildinfo +1 -1
- package/package.json +9 -7
|
@@ -20,6 +20,21 @@ const builders_js_1 = require("./builders.js");
|
|
|
20
20
|
const orm_js_1 = require("./orm.js");
|
|
21
21
|
const lodash_1 = __importDefault(require("lodash"));
|
|
22
22
|
const descriptor_js_1 = require("./descriptor.js");
|
|
23
|
+
const primary_keys_js_1 = require("./primary-keys.js");
|
|
24
|
+
const exceptions_js_1 = require("./exceptions.js");
|
|
25
|
+
/**
|
|
26
|
+
* Builds a lodash iteratee for the given primary key columns. A single column stays a plain
|
|
27
|
+
* property name ( lodash's fast path ); a composite key becomes a function that flattens the
|
|
28
|
+
* tuple, because an array iteratee would be read as a property PATH — `_.differenceBy(a, b,
|
|
29
|
+
* ['TenantId','Code'])` resolves `obj['TenantId']['Code']`, undefined for every row, so every
|
|
30
|
+
* row would compare equal.
|
|
31
|
+
*/
|
|
32
|
+
function pkIteratee(pKey) {
|
|
33
|
+
if (pKey.length === 1) {
|
|
34
|
+
return pKey[0];
|
|
35
|
+
}
|
|
36
|
+
return (x) => (0, primary_keys_js_1.pkKeyStringFor)(x, pKey);
|
|
37
|
+
}
|
|
23
38
|
class Dataset {
|
|
24
39
|
/**
|
|
25
40
|
*
|
|
@@ -32,10 +47,11 @@ class Dataset {
|
|
|
32
47
|
return (datasetB, pKey) => {
|
|
33
48
|
// TODO: maybe refactor for speedup, this is not optimal
|
|
34
49
|
// two calls to _.difference is not optimal, but it is easy to implement
|
|
50
|
+
const iteratee = pkIteratee(pKey);
|
|
35
51
|
// calculate difference between this data in relation and dataset ( objects from this relation)
|
|
36
|
-
const result = callback ? lodash_1.default.differenceWith(dataset, [...datasetB], callback) : lodash_1.default.differenceBy(dataset, [...datasetB],
|
|
52
|
+
const result = callback ? lodash_1.default.differenceWith(dataset, [...datasetB], callback) : lodash_1.default.differenceBy(dataset, [...datasetB], iteratee);
|
|
37
53
|
// calculate difference between dataset and data in this relation ( objects from dataset )
|
|
38
|
-
const result2 = callback ? lodash_1.default.differenceWith([...datasetB], dataset, callback) : lodash_1.default.differenceBy([...datasetB], dataset,
|
|
54
|
+
const result2 = callback ? lodash_1.default.differenceWith([...datasetB], dataset, callback) : lodash_1.default.differenceBy([...datasetB], dataset, iteratee);
|
|
39
55
|
// combine difference from two sets
|
|
40
56
|
const finalDiff = [...result, ...result2];
|
|
41
57
|
return finalDiff;
|
|
@@ -51,7 +67,8 @@ class Dataset {
|
|
|
51
67
|
*/
|
|
52
68
|
static intersection(dataset, callback) {
|
|
53
69
|
return (datasetB, pKey) => {
|
|
54
|
-
|
|
70
|
+
const iteratee = pkIteratee(pKey);
|
|
71
|
+
return callback ? lodash_1.default.intersectionWith(dataset, [...datasetB], callback) : lodash_1.default.intersectionBy(dataset, [...datasetB], iteratee);
|
|
55
72
|
};
|
|
56
73
|
}
|
|
57
74
|
}
|
|
@@ -62,6 +79,20 @@ exports.Dataset = Dataset;
|
|
|
62
79
|
* It allows to add / remove objects to relation
|
|
63
80
|
*/
|
|
64
81
|
let Relation = class Relation extends Array {
|
|
82
|
+
/**
|
|
83
|
+
* Array methods that derive a new collection ( `splice`, `filter`, `slice`, `concat`, … )
|
|
84
|
+
* construct `new this.constructor[Symbol.species](len)` by default. That would call this
|
|
85
|
+
* class's constructor with no relation descriptor, and the very next line dereferences
|
|
86
|
+
* `this.Relation.TargetModel` — so `order.Items.splice(0, 1)` threw
|
|
87
|
+
* `Cannot read properties of undefined (reading 'TargetModel')`.
|
|
88
|
+
*
|
|
89
|
+
* Deriving plain arrays is also the right semantics: a slice of a relation is a list of
|
|
90
|
+
* models, not a relation with an owner. ( The hand-written `map()` below predates this and
|
|
91
|
+
* worked around the same thing for one method. )
|
|
92
|
+
*/
|
|
93
|
+
static get [Symbol.species]() {
|
|
94
|
+
return Array;
|
|
95
|
+
}
|
|
65
96
|
constructor(Owner, Relation, objects) {
|
|
66
97
|
super();
|
|
67
98
|
this.Owner = Owner;
|
|
@@ -77,6 +108,21 @@ let Relation = class Relation extends Array {
|
|
|
77
108
|
}
|
|
78
109
|
this.IsModelAForwardRef = !(0, di_1.isConstructor)(this.Model);
|
|
79
110
|
}
|
|
111
|
+
/**
|
|
112
|
+
* The owner-side value this relation joins on.
|
|
113
|
+
*
|
|
114
|
+
* A relation names exactly ONE source column (`IRelationDescriptor.PrimaryKey`), so a
|
|
115
|
+
* composite-key owner must contribute only that column's value. `Owner.PrimaryKeyValue`
|
|
116
|
+
* would be a tuple, which binds an array into a single `?` and fails with
|
|
117
|
+
* `SQLITE_RANGE: column index out of range`.
|
|
118
|
+
*
|
|
119
|
+
* For a single-column key `Relation.PrimaryKey` IS the model's key column, so this returns
|
|
120
|
+
* exactly what `Owner.PrimaryKeyValue` did.
|
|
121
|
+
*/
|
|
122
|
+
get OwnerJoinValue() {
|
|
123
|
+
const key = this.Relation?.PrimaryKey;
|
|
124
|
+
return key ? this.Owner[key] : this.Owner.PrimaryKeyValue;
|
|
125
|
+
}
|
|
80
126
|
map(callbackfn, thisArg) {
|
|
81
127
|
const result = [];
|
|
82
128
|
for (let index = 0; index < this.length; index++) {
|
|
@@ -113,34 +159,70 @@ let SingleRelation = class SingleRelation {
|
|
|
113
159
|
this.Orm = di_1.DI.get(orm_js_1.Orm);
|
|
114
160
|
this.Value = object;
|
|
115
161
|
}
|
|
162
|
+
/**
|
|
163
|
+
* Attaches `obj` and persists the owner. One transaction, so the attach and the owner
|
|
164
|
+
* update cannot half-apply. Nested inside a caller's transaction this takes a savepoint.
|
|
165
|
+
*/
|
|
116
166
|
async set(obj) {
|
|
117
|
-
this.
|
|
118
|
-
|
|
167
|
+
await this._owner.driver().transaction(async () => {
|
|
168
|
+
this.attach(obj);
|
|
169
|
+
await this._owner.update();
|
|
170
|
+
});
|
|
119
171
|
}
|
|
172
|
+
/**
|
|
173
|
+
* Points this relation at `obj` and records the owner's foreign key as changed.
|
|
174
|
+
*
|
|
175
|
+
* Uses the model's own `markDirty` rather than an `any` cast into the owner's private
|
|
176
|
+
* dirty-column list, which is what this used to do ( A6 ). `markDirty` de-duplicates and
|
|
177
|
+
* owns the `IsDirty` flag, so repeated attaches record the column once.
|
|
178
|
+
*
|
|
179
|
+
* @param obj - the related model, or null to clear the relation
|
|
180
|
+
*/
|
|
120
181
|
attach(obj) {
|
|
121
182
|
this.Value = obj;
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
183
|
+
const foreignKey = this.Relation?.ForeignKey;
|
|
184
|
+
if (foreignKey) {
|
|
185
|
+
this._owner.markDirty(foreignKey);
|
|
186
|
+
}
|
|
187
|
+
else {
|
|
188
|
+
// A query relation has no descriptor and therefore no foreign-key column, but the
|
|
189
|
+
// owner still changed.
|
|
190
|
+
this._owner.IsDirty = true;
|
|
191
|
+
}
|
|
125
192
|
}
|
|
126
193
|
detach() {
|
|
127
194
|
this.attach(null);
|
|
128
195
|
}
|
|
196
|
+
/**
|
|
197
|
+
* Deletes the related row and clears the owner's foreign key. One transaction: these used
|
|
198
|
+
* to be two independent statements, so a throw between them left the owner pointing at a
|
|
199
|
+
* row that no longer exists.
|
|
200
|
+
*/
|
|
129
201
|
async remove() {
|
|
130
|
-
this.
|
|
131
|
-
|
|
132
|
-
|
|
202
|
+
await this._owner.driver().transaction(async () => {
|
|
203
|
+
const val = this.Value;
|
|
204
|
+
this.detach();
|
|
205
|
+
await val?.destroy();
|
|
206
|
+
await this._owner.update();
|
|
207
|
+
});
|
|
133
208
|
}
|
|
209
|
+
/**
|
|
210
|
+
* Loads the model this relation points at.
|
|
211
|
+
*
|
|
212
|
+
* Queries the target table directly, filtered on the column the relation declares as its
|
|
213
|
+
* join key ( `Relation.PrimaryKey` ) — the same column `BelongsToRelation.compile()` joins
|
|
214
|
+
* on for the eager path. It is *not* the target model's own primary key: `@BelongsTo`
|
|
215
|
+
* accepts an explicit third argument for exactly this case, and the two only coincide
|
|
216
|
+
* because the decorator defaults one from the other, which is why filtering on the target
|
|
217
|
+
* PK went unnoticed.
|
|
218
|
+
*
|
|
219
|
+
* @param callback - optional callback applied to the target query
|
|
220
|
+
*/
|
|
134
221
|
async populate(callback) {
|
|
135
|
-
/**
|
|
136
|
-
* Do little cheat - we construct query that loads initial model with given relation.
|
|
137
|
-
* Then we only assign relation property.
|
|
138
|
-
*
|
|
139
|
-
* TODO: create only relation query without loading its owner.
|
|
140
|
-
*/
|
|
141
222
|
const query = (0, builders_js_1.createQuery)(this.Relation.TargetModel, (builders_js_1.SelectQueryBuilder)).query;
|
|
142
|
-
const
|
|
143
|
-
|
|
223
|
+
const targetDescriptor = (0, descriptor_js_1.extractModelDescriptor)(this.Relation.TargetModel);
|
|
224
|
+
const joinColumn = this.Relation.PrimaryKey || targetDescriptor.PrimaryKey[0];
|
|
225
|
+
query.where({ [joinColumn]: this._owner[this.Relation.ForeignKey] });
|
|
144
226
|
if (callback) {
|
|
145
227
|
callback.apply(query);
|
|
146
228
|
}
|
|
@@ -152,6 +234,7 @@ let SingleRelation = class SingleRelation {
|
|
|
152
234
|
this.Value = await query.firstOrFail();
|
|
153
235
|
}
|
|
154
236
|
this.Populated = true;
|
|
237
|
+
this._owner.snapshotRelation(this.Relation.Name);
|
|
155
238
|
}
|
|
156
239
|
};
|
|
157
240
|
exports.SingleRelation = SingleRelation;
|
|
@@ -205,14 +288,40 @@ let ManyToManyRelationList = class ManyToManyRelationList extends Relation {
|
|
|
205
288
|
this.junctionModelDescriptor = (0, descriptor_js_1.extractModelDescriptor)(this.Relation.JunctionModel);
|
|
206
289
|
}
|
|
207
290
|
}
|
|
208
|
-
|
|
209
|
-
|
|
291
|
+
/**
|
|
292
|
+
* Calculates intersection between data in this relation and provided dataset
|
|
293
|
+
*
|
|
294
|
+
* `[...this]` rather than `this`: these delegate into lodash, and `Relation extends Array`
|
|
295
|
+
* with a three-argument constructor, so anything that derives a new collection has to work
|
|
296
|
+
* on a plain array. ( `OneToManyRelationList` sidesteps the same problem by overriding
|
|
297
|
+
* `filter`/`map`; this class has no such overrides. )
|
|
298
|
+
*
|
|
299
|
+
* @param obj - dataset to compare with
|
|
300
|
+
* @param callback - compare function, if not set the target model's primary key is used
|
|
301
|
+
* @returns members present in both sets
|
|
302
|
+
*/
|
|
303
|
+
intersection(obj, callback) {
|
|
304
|
+
return Dataset.intersection(obj, callback)([...this], this.TargetModelDescriptor.PrimaryKey);
|
|
210
305
|
}
|
|
211
|
-
|
|
212
|
-
|
|
306
|
+
/**
|
|
307
|
+
* Appends `obj` to this relation. Shorthand for push — nothing is removed and nothing is
|
|
308
|
+
* written to the database until `sync()`, `update()` or `save()` runs.
|
|
309
|
+
*
|
|
310
|
+
* @param obj - members to add
|
|
311
|
+
*/
|
|
312
|
+
union(obj, _mode) {
|
|
313
|
+
this.push(...obj);
|
|
213
314
|
}
|
|
214
|
-
|
|
215
|
-
|
|
315
|
+
/**
|
|
316
|
+
* Calculates the symmetric difference between this relation and `dataset` — members of this
|
|
317
|
+
* relation that are not in the dataset, plus members of the dataset that are not in this
|
|
318
|
+
* relation.
|
|
319
|
+
*
|
|
320
|
+
* @param obj - dataset to compare with
|
|
321
|
+
* @param callback - compare function, if not set the target model's primary key is used
|
|
322
|
+
*/
|
|
323
|
+
diff(obj, callback) {
|
|
324
|
+
return Dataset.diff(obj, callback)([...this], this.TargetModelDescriptor.PrimaryKey);
|
|
216
325
|
}
|
|
217
326
|
/**
|
|
218
327
|
* Sets data in relation ( clear data and replace with new dataset )
|
|
@@ -220,7 +329,7 @@ let ManyToManyRelationList = class ManyToManyRelationList extends Relation {
|
|
|
220
329
|
* @param obj
|
|
221
330
|
*/
|
|
222
331
|
set(obj) {
|
|
223
|
-
const toPush = lodash_1.default.isFunction(obj) ? obj([...this], this.TargetModelDescriptor
|
|
332
|
+
const toPush = lodash_1.default.isFunction(obj) ? obj([...this], (0, primary_keys_js_1.pkColumns)(this.TargetModelDescriptor)) : obj;
|
|
224
333
|
this.empty();
|
|
225
334
|
this.push(...toPush);
|
|
226
335
|
}
|
|
@@ -238,7 +347,12 @@ let ManyToManyRelationList = class ManyToManyRelationList extends Relation {
|
|
|
238
347
|
* @returns
|
|
239
348
|
*/
|
|
240
349
|
async _dbDiff(data) {
|
|
241
|
-
|
|
350
|
+
// A junction table carries exactly ONE foreign key column per side, so it cannot address
|
|
351
|
+
// a composite target key. Fail loudly rather than delete the wrong rows.
|
|
352
|
+
if ((0, primary_keys_js_1.isCompositePk)(this.TargetModelDescriptor)) {
|
|
353
|
+
throw new exceptions_js_1.OrmException(`many-to-many relation ${this.Relation.Name} targets ${this.TargetModelDescriptor.Name}, which has a composite primary key; a junction table carries one foreign key column per side and cannot address it`);
|
|
354
|
+
}
|
|
355
|
+
const query = this.Driver.del().from(this.junctionModelDescriptor.TableName).where(this.Relation.JunctionModelSourceModelFKey_Name, this.OwnerJoinValue);
|
|
242
356
|
if (this.Driver.Options.Database) {
|
|
243
357
|
query.database(this.Driver.Options.Database);
|
|
244
358
|
}
|
|
@@ -255,10 +369,15 @@ let ManyToManyRelationList = class ManyToManyRelationList extends Relation {
|
|
|
255
369
|
* Sets foreign key to relational data
|
|
256
370
|
*
|
|
257
371
|
* Inserts or updates models that are dirty only.
|
|
372
|
+
*
|
|
373
|
+
* One transaction: the junction upserts and the orphan delete used to be independent
|
|
374
|
+
* statements. Nested inside a caller's transaction this takes a savepoint.
|
|
258
375
|
*/
|
|
259
376
|
async sync() {
|
|
260
|
-
await this.
|
|
261
|
-
|
|
377
|
+
await this.Driver.transaction(async () => {
|
|
378
|
+
await this._update();
|
|
379
|
+
await this._dbDiff(this);
|
|
380
|
+
});
|
|
262
381
|
}
|
|
263
382
|
/**
|
|
264
383
|
* Updates or ads data to relation
|
|
@@ -266,6 +385,12 @@ let ManyToManyRelationList = class ManyToManyRelationList extends Relation {
|
|
|
266
385
|
* Only dirty models are updated.
|
|
267
386
|
*/
|
|
268
387
|
async update() {
|
|
388
|
+
await this.Driver.transaction(async () => {
|
|
389
|
+
await this._update();
|
|
390
|
+
});
|
|
391
|
+
}
|
|
392
|
+
/** The write itself, without a transaction of its own, so `sync()` can share one. */
|
|
393
|
+
async _update() {
|
|
269
394
|
for (const f of this) {
|
|
270
395
|
const junctionEntry = new this.Relation.JunctionModel();
|
|
271
396
|
const desc = junctionEntry.ModelDescriptor;
|
|
@@ -284,7 +409,7 @@ let ManyToManyRelationList = class ManyToManyRelationList extends Relation {
|
|
|
284
409
|
}
|
|
285
410
|
}
|
|
286
411
|
async populate(callback) {
|
|
287
|
-
const query = this.Relation.JunctionModel.where(this.Relation.JunctionModelSourceModelFKey_Name, this.
|
|
412
|
+
const query = this.Relation.JunctionModel.where(this.Relation.JunctionModelSourceModelFKey_Name, this.OwnerJoinValue).populate(this.Relation.TargetModel, callback);
|
|
288
413
|
const result = await query;
|
|
289
414
|
if (result) {
|
|
290
415
|
this.length = 0;
|
|
@@ -293,6 +418,7 @@ let ManyToManyRelationList = class ManyToManyRelationList extends Relation {
|
|
|
293
418
|
}));
|
|
294
419
|
}
|
|
295
420
|
this.Populated = true;
|
|
421
|
+
this.Owner.snapshotRelation(this.Relation.Name);
|
|
296
422
|
}
|
|
297
423
|
};
|
|
298
424
|
exports.ManyToManyRelationList = ManyToManyRelationList;
|
|
@@ -308,14 +434,19 @@ let OneToManyRelationList = class OneToManyRelationList extends Relation {
|
|
|
308
434
|
* @returns
|
|
309
435
|
*/
|
|
310
436
|
async _dbDiff(data) {
|
|
311
|
-
const query = this.Driver.del().from(this.TargetModelDescriptor.TableName).where(this.Relation.ForeignKey, this.
|
|
437
|
+
const query = this.Driver.del().from(this.TargetModelDescriptor.TableName).where(this.Relation.ForeignKey, this.OwnerJoinValue);
|
|
312
438
|
if (this.Driver.Options.Database) {
|
|
313
439
|
query.database(this.Driver.Options.Database);
|
|
314
440
|
}
|
|
315
|
-
// if we have data in relation, we need to exclude them from delete query
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
441
|
+
// if we have data in relation, we need to exclude them from delete query.
|
|
442
|
+
// A composite key is a tuple and always truthy, so filter on the key COLUMNS being set
|
|
443
|
+
// rather than on the tuple itself.
|
|
444
|
+
const keys = (0, primary_keys_js_1.pkColumns)(this.TargetModelDescriptor);
|
|
445
|
+
const toDelete = data
|
|
446
|
+
.map((x) => (0, primary_keys_js_1.pkValueOf)(x, this.TargetModelDescriptor))
|
|
447
|
+
.filter((v) => (Array.isArray(v) ? v.every((p) => p !== null && p !== undefined) : v !== null && v !== undefined));
|
|
448
|
+
if (toDelete.length !== 0 && keys.length !== 0) {
|
|
449
|
+
(0, primary_keys_js_1.whereNotAnyPk)(query, this.TargetModelDescriptor, toDelete);
|
|
319
450
|
}
|
|
320
451
|
await query;
|
|
321
452
|
}
|
|
@@ -323,7 +454,7 @@ let OneToManyRelationList = class OneToManyRelationList extends Relation {
|
|
|
323
454
|
* Populates this relation ( loads all data related to owner of this relation)
|
|
324
455
|
*/
|
|
325
456
|
async populate(callback) {
|
|
326
|
-
const query = this.Relation.TargetModel.where(this.Relation.ForeignKey, this.
|
|
457
|
+
const query = this.Relation.TargetModel.where(this.Relation.ForeignKey, this.OwnerJoinValue);
|
|
327
458
|
if (callback) {
|
|
328
459
|
callback.apply(query);
|
|
329
460
|
}
|
|
@@ -335,6 +466,7 @@ let OneToManyRelationList = class OneToManyRelationList extends Relation {
|
|
|
335
466
|
});
|
|
336
467
|
}
|
|
337
468
|
this.Populated = true;
|
|
469
|
+
this.Owner.snapshotRelation(this.Relation.Name);
|
|
338
470
|
}
|
|
339
471
|
/**
|
|
340
472
|
* Synchronizes relation data to db
|
|
@@ -342,10 +474,17 @@ let OneToManyRelationList = class OneToManyRelationList extends Relation {
|
|
|
342
474
|
* Sets foreign key to relational data
|
|
343
475
|
*
|
|
344
476
|
* Inserts or updates models that are dirty only.
|
|
477
|
+
*
|
|
478
|
+
* The whole synchronization is one transaction: the orphan delete used to run as an
|
|
479
|
+
* independent statement, so a throw between it and the writes left the database
|
|
480
|
+
* inconsistent with the in-memory graph. Nested inside a caller's transaction this takes
|
|
481
|
+
* a savepoint rather than opening a second one.
|
|
345
482
|
*/
|
|
346
483
|
async sync() {
|
|
347
|
-
await this.
|
|
348
|
-
|
|
484
|
+
await this.Driver.transaction(async () => {
|
|
485
|
+
await this._update();
|
|
486
|
+
await this._dbDiff(this);
|
|
487
|
+
});
|
|
349
488
|
}
|
|
350
489
|
/**
|
|
351
490
|
* Updates or ads data to relation
|
|
@@ -353,10 +492,22 @@ let OneToManyRelationList = class OneToManyRelationList extends Relation {
|
|
|
353
492
|
* Only dirty models are updated.
|
|
354
493
|
*/
|
|
355
494
|
async update() {
|
|
356
|
-
|
|
495
|
+
await this.Driver.transaction(async () => {
|
|
496
|
+
await this._update();
|
|
497
|
+
});
|
|
498
|
+
}
|
|
499
|
+
/** The write itself, without a transaction of its own, so `sync()` can share one. */
|
|
500
|
+
async _update() {
|
|
501
|
+
// Assign foreign keys BEFORE computing the dirty set. A child re-parented to
|
|
502
|
+
// this owner needs its FK rewritten and persisted; if we snapshot `dirty`
|
|
503
|
+
// first, a previously-clean child keeps its old FK in the DB and a following
|
|
504
|
+
// sync() can delete it as "not belonging" to the new owner.
|
|
357
505
|
this.forEach((d) => {
|
|
358
|
-
d[this.Relation.ForeignKey] = this.
|
|
506
|
+
d[this.Relation.ForeignKey] = this.OwnerJoinValue;
|
|
359
507
|
});
|
|
508
|
+
// Fresh models have an undefined PK ( setDefaults uses the column default ),
|
|
509
|
+
// so treat undefined as "needs insert" alongside null and the dirty flag.
|
|
510
|
+
const dirty = this.filter((x) => x.IsDirty || x.PrimaryKeyValue === null || x.PrimaryKeyValue === undefined);
|
|
360
511
|
for (const f of dirty) {
|
|
361
512
|
await f.insert(interfaces_js_1.InsertBehaviour.InsertOrUpdate);
|
|
362
513
|
}
|
|
@@ -369,7 +520,7 @@ let OneToManyRelationList = class OneToManyRelationList extends Relation {
|
|
|
369
520
|
* @returns Difference between this relation and dataset
|
|
370
521
|
*/
|
|
371
522
|
diff(dataset, callback) {
|
|
372
|
-
return Dataset.diff(dataset, callback)([...this], this.TargetModelDescriptor
|
|
523
|
+
return Dataset.diff(dataset, callback)([...this], (0, primary_keys_js_1.pkColumns)(this.TargetModelDescriptor));
|
|
373
524
|
}
|
|
374
525
|
/**
|
|
375
526
|
* Sets data in relation ( clear data and replace with new dataset )
|
|
@@ -377,7 +528,7 @@ let OneToManyRelationList = class OneToManyRelationList extends Relation {
|
|
|
377
528
|
* @param obj
|
|
378
529
|
*/
|
|
379
530
|
set(obj) {
|
|
380
|
-
const toPush = lodash_1.default.isFunction(obj) ? obj([...this], this.TargetModelDescriptor
|
|
531
|
+
const toPush = lodash_1.default.isFunction(obj) ? obj([...this], (0, primary_keys_js_1.pkColumns)(this.TargetModelDescriptor)) : obj;
|
|
381
532
|
this.empty();
|
|
382
533
|
this.push(...toPush);
|
|
383
534
|
}
|
|
@@ -389,7 +540,7 @@ let OneToManyRelationList = class OneToManyRelationList extends Relation {
|
|
|
389
540
|
* @returns Data that are in both sets
|
|
390
541
|
*/
|
|
391
542
|
intersection(obj, callback) {
|
|
392
|
-
return Dataset.intersection(obj, callback)([...this], this.TargetModelDescriptor
|
|
543
|
+
return Dataset.intersection(obj, callback)([...this], (0, primary_keys_js_1.pkColumns)(this.TargetModelDescriptor));
|
|
393
544
|
}
|
|
394
545
|
/**
|
|
395
546
|
* Combines data with this relation and saves to db
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relation-objects.js","sourceRoot":"","sources":["../../src/relation-objects.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,sCAAsC;AACtC,mDAAyJ;AACzJ,oCAA0E;AAC1E,+CAAgE;AAEhE,qCAA+B;AAC/B,oDAAuB;AAEvB,mDAAyD;AAEzD,MAAa,OAAO;IAClB;;;;;;OAMG;IACI,MAAM,CAAC,IAAI,CAAI,OAAY,EAAE,QAAkC;QACpE,OAAO,CAAC,QAAa,EAAE,IAAY,EAAE,EAAE;YACrC,wDAAwD;YACxD,wEAAwE;YAExE,+FAA+F;YAC/F,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,gBAAC,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,GAAG,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,gBAAC,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,GAAG,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC;YAE5H,0FAA0F;YAC1F,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,gBAAC,CAAC,cAAc,CAAC,CAAC,GAAG,QAAQ,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,gBAAC,CAAC,YAAY,CAAC,CAAC,GAAG,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;YAE7H,mCAAmC;YACnC,MAAM,SAAS,GAAG,CAAC,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC;YAE1C,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACI,MAAM,CAAC,YAAY,CAAI,OAAY,EAAE,QAAkC;QAC5E,OAAO,CAAC,QAAa,EAAE,IAAY,EAAE,EAAE;YACrC,OAAO,QAAQ,CAAC,CAAC,CAAC,gBAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,GAAG,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,gBAAC,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,GAAG,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC;QAC1H,CAAC,CAAC;IACJ,CAAC;CACF;AAvCD,0BAuCC;AAED;;;;GAIG;AAEI,IAAe,QAAQ,GAAvB,MAAe,QAA8G,SAAQ,KAAQ;IAWlJ,YAAsB,KAAQ,EAAY,QAA6B,EAAE,OAAa;QACpF,KAAK,EAAE,CAAC;QADY,UAAK,GAAL,KAAK,CAAG;QAAY,aAAQ,GAAR,QAAQ,CAAqB;QARhE,cAAS,GAAY,KAAK,CAAC;QAWhC,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;QACxB,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAkB,CAAC,CAAC,oBAAoB;QACnE,IAAI,CAAC,qBAAqB,GAAG,IAAA,sCAAsB,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEhE,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,GAAG,OAAE,CAAC,OAAO,CAAY,eAAe,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,CAAC;QAChG,CAAC;QAED,IAAI,CAAC,kBAAkB,GAAG,CAAC,IAAA,kBAAa,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC;IAEM,GAAG,CAAI,UAAsD,EAAE,OAAa;QACjF,MAAM,MAAM,GAAQ,EAAE,CAAC;QACvB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;YACjD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;YAC5B,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;QAC9D,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAuBD;;OAEG;IACI,KAAK,CAAC,KAAK;QAChB,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED;;OAEG;IACI,KAAK;QACV,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAClB,CAAC;CAyDF,CAAA;AAhIqB,4BAAQ;mBAAR,QAAQ;IAD7B,IAAA,gBAAW,GAAE;;GACQ,QAAQ,CAgI7B;AAGM,IAAM,cAAc,GAApB,MAAM,cAAc;IASzB,YAAsB,MAAS,EAAY,KAAiD,EAAY,QAAoC,EAAE,MAAU;QAAlI,WAAM,GAAN,MAAM,CAAG;QAAY,UAAK,GAAL,KAAK,CAA4C;QAAY,aAAQ,GAAR,QAAQ,CAA4B;QAFrI,cAAS,GAAY,KAAK,CAAC;QAGhC,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC,CAAC,CAAC,IAAA,sCAAsB,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC1E,IAAI,CAAC,GAAG,GAAG,OAAE,CAAC,GAAG,CAAC,YAAG,CAAE,CAAC;QAExB,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;IACtB,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,GAAM;QACrB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjB,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IAC7B,CAAC;IAEM,MAAM,CAAC,GAAa;QACzB,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC;QACjB,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;QAE3B,4BAA4B;QAC3B,IAAI,CAAC,MAAc,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACvE,CAAC;IAEM,MAAM;QACX,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;IAEM,KAAK,CAAC,MAAM;QACjB,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,MAAM,IAAI,CAAC,KAAM,CAAC,OAAO,EAAE,CAAC;QAC5B,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IAC7B,CAAC;IAEM,KAAK,CAAC,QAAQ,CAAC,QAAmD;QACvE;;;;;WAKG;QAEH,MAAM,KAAK,GAAG,IAAA,yBAAW,EAAC,IAAI,CAAC,QAAS,CAAC,WAAW,EAAE,CAAA,gCAA6B,CAAA,CAAC,CAAC,KAAK,CAAC;QAC3F,MAAM,IAAI,GAAG,IAAA,sCAAsB,EAAC,IAAI,CAAC,QAAS,CAAC,WAAW,CAAC,CAAC;QAChE,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,IAAK,CAAC,UAAU,CAAC,EAAG,IAAI,CAAC,MAAc,CAAC,IAAI,CAAC,QAAS,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAErF,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,QAAS,CAAC,UAAU,CAAC,CAAC;QACzG,IAAI,SAAS,EAAE,QAAQ,EAAE,CAAC;YACxB,IAAI,CAAC,KAAK,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE,CAAC;QACzC,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB,CAAC;CACF,CAAA;AA/DY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,gBAAW,GAAE;;GACD,cAAc,CA+D1B;AAED,MAAa,qBAAgE,SAAQ,QAAmC;IAMtH,sCAAsC;IAC/B,MAAM,CAAC,IAAa;QACzB,MAAM,IAAI,KAAK,CAAC,8GAA8G,CAAC,CAAC;IAClI,CAAC;IACM,IAAI;QACT,MAAM,IAAI,KAAK,CAAC,6GAA6G,CAAC,CAAC;IACjI,CAAC;IACM,MAAM;QACX,MAAM,IAAI,KAAK,CAAC,8GAA8G,CAAC,CAAC;IAClI,CAAC;IACM,YAAY,CAAC,QAAa,EAAE,SAAmC;QACpE,MAAM,IAAI,KAAK,CAAC,kHAAkH,CAAC,CAAC;IACtI,CAAC;IACM,KAAK,CAAC,QAAa,EAAE,KAAuB;QACjD,MAAM,IAAI,KAAK,CAAC,8GAA8G,CAAC,CAAC;IAClI,CAAC;IACM,IAAI,CAAC,QAAa,EAAE,SAAmC;QAC5D,MAAM,IAAI,KAAK,CAAC,6GAA6G,CAAC,CAAC;IACjI,CAAC;IACM,GAAG,CAAC,IAA8C;QACvD,MAAM,IAAI,KAAK,CAAC,0GAA0G,CAAC,CAAC;IAC9H,CAAC;IACM,QAAQ,CAAC,SAAiE;QAC/E,MAAM,IAAI,KAAK,CAAC,gHAAgH,CAAC,CAAC;IACpI,CAAC;IACD,YAAY,KAAQ,EAAE,QAA6B,EAAE,OAAa;QAChE,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB,CAAC;CACF;AAnCD,sDAmCC;AAED,MAAa,mBAA0E,SAAQ,cAAoB;IACjH,YAAY,KAAQ,EAAE,MAAS;QAC7B,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAW,CAAC,CAAC;QACtC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB,CAAC;CACF;AALD,kDAKC;AAGM,IAAM,sBAAsB,GAA5B,MAAM,sBAAiE,SAAQ,QAAmC;IAIvH,YAAY,KAAQ,EAAE,QAA6B,EAAE,OAAa;QAChE,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAEhC,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC3B,IAAI,CAAC,uBAAuB,GAAG,IAAA,sCAAsB,EAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QACrF,CAAC;IACH,CAAC;IAEM,YAAY,CAAC,IAAS,EAAE,SAAmC;QAChE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IAEM,KAAK,CAAC,IAAS,EAAE,KAAuB;QAC7C,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IAEM,IAAI,CAAC,IAAS,EAAE,SAAmC;QACxD,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IAED;;;;KAIC;IACM,GAAG,CAAC,GAAiD;QAC1D,MAAM,MAAM,GAAG,gBAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,qBAAsB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAChG,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC;IACvB,CAAC;IA0BM,MAAM,CAAC,GAAkC;QAC9C,MAAM,QAAQ,GAAG,gBAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAEzF,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAChB,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;MAKE;IACQ,KAAK,CAAC,OAAO,CAAC,IAAS;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAwB,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,iCAAkC,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAElK,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACjC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC/C,CAAC;QAED,yEAAyE;QACzE,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;QAC1F,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,iCAAkC,EAAE,QAAQ,CAAC,CAAC;QAC/E,CAAC;QAED,MAAM,KAAK,CAAC;IACd,CAAC;IAED;;;;;;QAMI;IACG,KAAK,CAAC,IAAI;QACf,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,MAAM;QACjB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,MAAM,aAAa,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAc,EAAE,CAAC;YACzD,MAAM,IAAI,GAAG,aAAa,CAAC,eAAe,CAAC;YAC3C,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,IAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;YAC5D,MAAM,mBAAmB,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YACjG,MAAM,mBAAmB,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,WAAW,CAAC,CAAC;YAExF,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,4CAA4C,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,aAAa,CAAC,CAAC;YACxG,CAAC;YAED,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC,WAAW,CAAC,IAAI,aAAa,CAAC,CAAC;YAC/F,CAAC;YAEA,aAAqB,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YACnE,aAAqB,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;YAC3D,MAAM,aAAa,CAAC,MAAM,CAAC,+BAAe,CAAC,cAAc,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAGM,KAAK,CAAC,QAAQ,CAA6B,QAAuE;QACvH,MAAM,KAAK,GAAI,IAAI,CAAC,QAAQ,CAAC,aAAqB,CAAC,KAAK,CAAE,IAAY,CAAC,QAAQ,CAAC,iCAAiC,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,QAAQ,CACrJ,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CACpC,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC;QAE3B,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;YAEhB,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE;gBACjC,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC;YACjD,CAAC,CAAC,CAAC,CAAC;QACN,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB,CAAC;CAkBF,CAAA;AArKY,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,gBAAW,GAAE;;GACD,sBAAsB,CAqKlC;AAGM,IAAM,qBAAqB,GAA3B,MAAM,qBAAgE,SAAQ,QAAmC;IACtH;;;;;OAKG;IACO,KAAK,CAAC,OAAO,CAAC,IAAS;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAsB,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAExI,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACjC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC/C,CAAC;QAED,yEAAyE;QACzE,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;QACrF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,qBAAsB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QACrE,CAAC;QAED,MAAM,KAAK,CAAC;IACd,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,QAAQ,CAA6B,QAAuE;QACvH,MAAM,KAAK,GAAI,IAAI,CAAC,QAAQ,CAAC,WAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAC7G,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC;QAE3B,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;YAEhB,MAAM,CAAC,OAAO,CAAC,CAAC,CAAY,EAAE,EAAE;gBAC9B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,IAAI;QACf,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,MAAM;QACjB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC;QAE1E,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAChB,CAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC;QACpE,CAAC,CAAC,CAAC;QAEH,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,MAAM,CAAC,CAAC,MAAM,CAAC,+BAAe,CAAC,cAAc,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACI,IAAI,CAAC,OAAY,EAAE,QAAkC;QAC1D,OAAO,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,qBAAsB,CAAC,UAAU,CAAC,CAAC;IAC5F,CAAC;IAED;;;;OAIG;IACI,GAAG,CAAC,GAAiD;QAC1D,MAAM,MAAM,GAAG,gBAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,qBAAsB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAChG,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC;IACvB,CAAC;IAED;;;;;;OAMG;IACI,YAAY,CAAC,GAAQ,EAAE,QAAkC;QAC9D,OAAO,OAAO,CAAC,YAAY,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,qBAAsB,CAAC,UAAU,CAAC,CAAC;IAChG,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,GAAQ;QACnB,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;IACpB,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,SAA2D;QACvE,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC;IA0BM,MAAM,CAAC,GAAkC;QAC9C,MAAM,QAAQ,GAAG,gBAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAEzF,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAChB,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEM,OAAO,CAAI,QAAkD;QAClE,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAE7B,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAQ,CAAC;IAClC,CAAC;IAEM,GAAG,CAAI,QAAkD;QAC9D,MAAM,CAAC,GAAQ,EAAE,CAAC;QAClB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACrD,OAAO,CAAC,CAAC;IACX,CAAC;CACF,CAAA;AAxKY,sDAAqB;gCAArB,qBAAqB;IADjC,IAAA,gBAAW,GAAE;GACD,qBAAqB,CAwKjC"}
|
|
1
|
+
{"version":3,"file":"relation-objects.js","sourceRoot":"","sources":["../../src/relation-objects.ts"],"names":[],"mappings":"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"}
|
package/lib/cjs/relations.d.ts
CHANGED
|
@@ -28,6 +28,13 @@ export declare abstract class OrmRelation implements IOrmRelation {
|
|
|
28
28
|
protected _query: ISelectQueryBuilder;
|
|
29
29
|
protected _description: IRelationDescriptor;
|
|
30
30
|
parentRelation?: NativeOrmRelation | undefined;
|
|
31
|
+
/**
|
|
32
|
+
* Guards `compile()` against running twice. Relation compilation mutates the owning
|
|
33
|
+
* builder — it adds joins, merges columns and registers result middlewares — and
|
|
34
|
+
* `toDB()` calls it, so without this guard compiling the same query twice produced a
|
|
35
|
+
* different builder each time ( B19 ).
|
|
36
|
+
*/
|
|
37
|
+
protected _compiled: boolean;
|
|
31
38
|
get Name(): string;
|
|
32
39
|
get Descriptor(): IRelationDescriptor;
|
|
33
40
|
get Alias(): string;
|
|
@@ -46,7 +53,6 @@ export declare abstract class NativeOrmRelation extends OrmRelation {
|
|
|
46
53
|
protected _relationQuery: ISelectQueryBuilder;
|
|
47
54
|
protected _separator: string;
|
|
48
55
|
protected _driver: OrmDriver;
|
|
49
|
-
protected _compiled: boolean;
|
|
50
56
|
get Name(): string;
|
|
51
57
|
get Descriptor(): IRelationDescriptor;
|
|
52
58
|
get Alias(): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relations.d.ts","sourceRoot":"","sources":["../../src/relations.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAgB,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC/H,OAAO,EAAmB,WAAW,EAAU,SAAS,EAAE,MAAM,aAAa,CAAC;AAG9E,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAEpC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAKxC,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,mBAAmB,EAAE,QAAQ,EAAE,iBAAiB,KAAK,IAAI,GAAG,IAAI,CAAC;IAE3F,OAAO,IAAI,IAAI,CAAC;IAEhB;;;;OAIG;IACH,cAAc,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,mBAAmB,EAAE,QAAQ,EAAE,iBAAiB,KAAK,IAAI,GAAG,IAAI,CAAC;IAEjG;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb,UAAU,EAAE,mBAAmB,CAAC;CACjC;AAYD,8BAAsB,WAAY,YAAW,YAAY;
|
|
1
|
+
{"version":3,"file":"relations.d.ts","sourceRoot":"","sources":["../../src/relations.ts"],"names":[],"mappings":"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"}
|
package/lib/cjs/relations.js
CHANGED
|
@@ -41,6 +41,13 @@ class OrmRelation {
|
|
|
41
41
|
this._query = _query;
|
|
42
42
|
this._description = _description;
|
|
43
43
|
this.parentRelation = parentRelation;
|
|
44
|
+
/**
|
|
45
|
+
* Guards `compile()` against running twice. Relation compilation mutates the owning
|
|
46
|
+
* builder — it adds joins, merges columns and registers result middlewares — and
|
|
47
|
+
* `toDB()` calls it, so without this guard compiling the same query twice produced a
|
|
48
|
+
* different builder each time ( B19 ).
|
|
49
|
+
*/
|
|
50
|
+
this._compiled = false;
|
|
44
51
|
}
|
|
45
52
|
}
|
|
46
53
|
exports.OrmRelation = OrmRelation;
|
|
@@ -165,7 +172,11 @@ let QueryRelation = class QueryRelation extends OrmRelation {
|
|
|
165
172
|
}
|
|
166
173
|
}
|
|
167
174
|
compile() {
|
|
175
|
+
if (this._compiled) {
|
|
176
|
+
return;
|
|
177
|
+
}
|
|
168
178
|
this._query.middleware(new middlewares_js_1.QueryRelationMiddleware(this._description.Callback, this._description.Mapper, this._description));
|
|
179
|
+
this._compiled = true;
|
|
169
180
|
}
|
|
170
181
|
};
|
|
171
182
|
exports.QueryRelation = QueryRelation;
|
|
@@ -180,7 +191,11 @@ let VirtualRelation = class VirtualRelation extends OrmRelation {
|
|
|
180
191
|
executeOnQuery(_callback) {
|
|
181
192
|
}
|
|
182
193
|
compile() {
|
|
194
|
+
if (this._compiled) {
|
|
195
|
+
return;
|
|
196
|
+
}
|
|
183
197
|
this._query.middleware(new middlewares_js_1.VirtualRelationMiddleware(this._relationCallback, this._description.Callback, this._description.Mapper, this._description));
|
|
198
|
+
this._compiled = true;
|
|
184
199
|
}
|
|
185
200
|
};
|
|
186
201
|
exports.VirtualRelation = VirtualRelation;
|
|
@@ -272,7 +287,7 @@ let ManyToManyRelation = class ManyToManyRelation extends NativeOrmRelation {
|
|
|
272
287
|
// todo fix this cast
|
|
273
288
|
this._joinQuery.mergeBuilder(this._relationQuery);
|
|
274
289
|
this._joinQuery.mergeRelations(this._relationQuery);
|
|
275
|
-
this._query.middleware(new middlewares_js_1.HasManyToManyRelationMiddleware(this._joinQuery, joinRelationDescriptor, this._targetModelDescriptor));
|
|
290
|
+
this._query.middleware(new middlewares_js_1.HasManyToManyRelationMiddleware(this._joinQuery, joinRelationDescriptor, this._targetModelDescriptor, this._description));
|
|
276
291
|
this._compiled = true;
|
|
277
292
|
}
|
|
278
293
|
};
|
package/lib/cjs/relations.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relations.js","sourceRoot":"","sources":["../../src/relations.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"relations.js","sourceRoot":"","sources":["../../src/relations.ts"],"names":[],"mappings":"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"}
|