joist-core 2.1.0 → 2.2.0-next.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/ConditionBuilder.d.ts +1 -22
- package/build/ConditionBuilder.d.ts.map +1 -1
- package/build/ConditionBuilder.js +6 -72
- package/build/ConditionBuilder.js.map +1 -1
- package/build/EntityFilter.d.ts +4 -2
- package/build/EntityFilter.d.ts.map +1 -1
- package/build/EntityGraphQLFilter.d.ts +2 -0
- package/build/EntityGraphQLFilter.d.ts.map +1 -1
- package/build/EntityGraphQLFilter.js.map +1 -1
- package/build/EntityManager.d.ts +25 -39
- package/build/EntityManager.d.ts.map +1 -1
- package/build/EntityManager.js +96 -44
- package/build/EntityManager.js.map +1 -1
- package/build/EntityMetadata.d.ts +2 -0
- package/build/EntityMetadata.d.ts.map +1 -1
- package/build/EntityMetadata.js.map +1 -1
- package/build/InstanceData.d.ts +7 -1
- package/build/InstanceData.d.ts.map +1 -1
- package/build/InstanceData.js +36 -7
- package/build/InstanceData.js.map +1 -1
- package/build/IsLoadedCache.d.ts +1 -1
- package/build/IsLoadedCache.d.ts.map +1 -1
- package/build/IsLoadedCache.js +6 -1
- package/build/IsLoadedCache.js.map +1 -1
- package/build/JoinRows.d.ts +1 -1
- package/build/JoinRows.js +6 -1
- package/build/JoinRows.js.map +1 -1
- package/build/PluginManager.d.ts +12 -0
- package/build/PluginManager.d.ts.map +1 -1
- package/build/PluginManager.js +18 -2
- package/build/PluginManager.js.map +1 -1
- package/build/QueryParser.collectionJoins.d.ts +27 -0
- package/build/QueryParser.collectionJoins.d.ts.map +1 -0
- package/build/QueryParser.collectionJoins.js +460 -0
- package/build/QueryParser.collectionJoins.js.map +1 -0
- package/build/QueryParser.collectionJoins.test.d.ts +2 -0
- package/build/QueryParser.collectionJoins.test.d.ts.map +1 -0
- package/build/QueryParser.collectionJoins.test.js +772 -0
- package/build/QueryParser.collectionJoins.test.js.map +1 -0
- package/build/QueryParser.d.ts +67 -9
- package/build/QueryParser.d.ts.map +1 -1
- package/build/QueryParser.js +39 -33
- package/build/QueryParser.js.map +1 -1
- package/build/QueryParser.pruning.d.ts +4 -2
- package/build/QueryParser.pruning.d.ts.map +1 -1
- package/build/QueryParser.pruning.js +80 -10
- package/build/QueryParser.pruning.js.map +1 -1
- package/build/QueryParser.pruning.test.d.ts +2 -0
- package/build/QueryParser.pruning.test.d.ts.map +1 -0
- package/build/QueryParser.pruning.test.js +106 -0
- package/build/QueryParser.pruning.test.js.map +1 -0
- package/build/QueryVisitor.d.ts.map +1 -1
- package/build/QueryVisitor.js +22 -0
- package/build/QueryVisitor.js.map +1 -1
- package/build/ReactionsManager.js +2 -2
- package/build/batchloaders/BatchLoader.d.ts.map +1 -1
- package/build/batchloaders/BatchLoader.js +4 -1
- package/build/batchloaders/BatchLoader.js.map +1 -1
- package/build/batchloaders/manyToManyBatchLoader.js +3 -1
- package/build/batchloaders/manyToManyBatchLoader.js.map +1 -1
- package/build/batchloaders/recursiveM2mBatchLoader.d.ts.map +1 -1
- package/build/batchloaders/recursiveM2mBatchLoader.js +3 -1
- package/build/batchloaders/recursiveM2mBatchLoader.js.map +1 -1
- package/build/changes.d.ts.map +1 -1
- package/build/changes.js +1 -4
- package/build/changes.js.map +1 -1
- package/build/config.d.ts.map +1 -1
- package/build/config.js +18 -10
- package/build/config.js.map +1 -1
- package/build/configure.js +2 -2
- package/build/dataloaders/findCountDataLoader.js +2 -2
- package/build/dataloaders/findCountDataLoader.js.map +1 -1
- package/build/dataloaders/findDataLoader.d.ts.map +1 -1
- package/build/dataloaders/findDataLoader.js +13 -18
- package/build/dataloaders/findDataLoader.js.map +1 -1
- package/build/dataloaders/findIdsDataLoader.js +2 -2
- package/build/dataloaders/findIdsDataLoader.js.map +1 -1
- package/build/dataloaders/findOrCreateDataLoader.d.ts.map +1 -1
- package/build/dataloaders/findOrCreateDataLoader.js +6 -1
- package/build/dataloaders/findOrCreateDataLoader.js.map +1 -1
- package/build/dataloaders/findPaginatedDataLoader.d.ts +8 -0
- package/build/dataloaders/findPaginatedDataLoader.d.ts.map +1 -0
- package/build/dataloaders/findPaginatedDataLoader.js +71 -0
- package/build/dataloaders/findPaginatedDataLoader.js.map +1 -0
- package/build/defaults.d.ts.map +1 -1
- package/build/defaults.js +49 -42
- package/build/defaults.js.map +1 -1
- package/build/drivers/buildRawQuery.d.ts +6 -4
- package/build/drivers/buildRawQuery.d.ts.map +1 -1
- package/build/drivers/buildRawQuery.js +6 -5
- package/build/drivers/buildRawQuery.js.map +1 -1
- package/build/drivers/buildUtils.d.ts +7 -2
- package/build/drivers/buildUtils.d.ts.map +1 -1
- package/build/drivers/buildUtils.js +14 -5
- package/build/drivers/buildUtils.js.map +1 -1
- package/build/fields.d.ts.map +1 -1
- package/build/fields.js +16 -7
- package/build/fields.js.map +1 -1
- package/build/index.d.ts +2 -1
- package/build/index.d.ts.map +1 -1
- package/build/index.js +7 -5
- package/build/index.js.map +1 -1
- package/build/json.d.ts +3 -3
- package/build/json.d.ts.map +1 -1
- package/build/json.js +4 -4
- package/build/json.js.map +1 -1
- package/build/loadHints.d.ts +4 -4
- package/build/loadHints.d.ts.map +1 -1
- package/build/loadLens.js +1 -1
- package/build/loadLens.js.map +1 -1
- package/build/preloading/JsonAggregatePreloader.js +6 -2
- package/build/preloading/JsonAggregatePreloader.js.map +1 -1
- package/build/reactiveHints.d.ts +24 -7
- package/build/reactiveHints.d.ts.map +1 -1
- package/build/reactiveHints.js +45 -28
- package/build/reactiveHints.js.map +1 -1
- package/build/relations/AbstractRelationImpl.d.ts +7 -2
- package/build/relations/AbstractRelationImpl.d.ts.map +1 -1
- package/build/relations/AbstractRelationImpl.js.map +1 -1
- package/build/relations/AsyncProperty.d.ts +36 -0
- package/build/relations/AsyncProperty.d.ts.map +1 -0
- package/build/relations/AsyncProperty.js +80 -0
- package/build/relations/AsyncProperty.js.map +1 -0
- package/build/relations/{ReactiveQueryField.d.ts → AsyncReactiveField.d.ts} +10 -10
- package/build/relations/AsyncReactiveField.d.ts.map +1 -0
- package/build/relations/{ReactiveQueryField.js → AsyncReactiveField.js} +19 -19
- package/build/relations/{ReactiveQueryField.js.map → AsyncReactiveField.js.map} +1 -1
- package/build/relations/ReactiveField.d.ts +7 -9
- package/build/relations/ReactiveField.d.ts.map +1 -1
- package/build/relations/ReactiveField.js +5 -10
- package/build/relations/ReactiveField.js.map +1 -1
- package/build/relations/ReactiveGetter.d.ts +5 -5
- package/build/relations/ReactiveGetter.d.ts.map +1 -1
- package/build/relations/ReactiveGetter.js +3 -3
- package/build/relations/ReactiveGetter.js.map +1 -1
- package/build/relations/ReactiveReference.d.ts +2 -2
- package/build/relations/ReactiveReference.d.ts.map +1 -1
- package/build/relations/ReactiveReference.js +100 -36
- package/build/relations/ReactiveReference.js.map +1 -1
- package/build/relations/{hasAsyncProperty.d.ts → hasProperty.d.ts} +12 -12
- package/build/relations/hasProperty.d.ts.map +1 -0
- package/build/relations/{hasAsyncProperty.js → hasProperty.js} +20 -20
- package/build/relations/hasProperty.js.map +1 -0
- package/build/relations/index.d.ts +3 -2
- package/build/relations/index.d.ts.map +1 -1
- package/build/relations/index.js +16 -11
- package/build/relations/index.js.map +1 -1
- package/build/resurrection.d.ts +10 -0
- package/build/resurrection.d.ts.map +1 -0
- package/build/resurrection.js +93 -0
- package/build/resurrection.js.map +1 -0
- package/build/rules.js +3 -3
- package/build/trusted.d.ts +1 -1
- package/build/trusted.d.ts.map +1 -1
- package/build/trusted.js +1 -1
- package/build/trusted.js.map +1 -1
- package/build/upsert.d.ts.map +1 -1
- package/build/upsert.js +26 -10
- package/build/upsert.js.map +1 -1
- package/build/withLoaded.js +5 -5
- package/build/withLoaded.js.map +1 -1
- package/package.json +9 -9
- package/build/relations/ReactiveQueryField.d.ts.map +0 -1
- package/build/relations/hasAsyncProperty.d.ts.map +0 -1
- package/build/relations/hasAsyncProperty.js.map +0 -1
package/build/defaults.js
CHANGED
|
@@ -13,49 +13,52 @@ const fields_1 = require("./fields");
|
|
|
13
13
|
const normalizeHints_1 = require("./normalizeHints");
|
|
14
14
|
const reactiveHints_1 = require("./reactiveHints");
|
|
15
15
|
const index_1 = require("./relations/index");
|
|
16
|
+
const trusted_1 = require("./trusted");
|
|
16
17
|
const utils_1 = require("./utils");
|
|
17
18
|
function hasDefaultValue(meta, fieldName) {
|
|
18
19
|
return (0, EntityMetadata_1.getBaseAndSelfMetas)(meta).some((m) => fieldName in m.config.__data.syncDefaults || fieldName in m.config.__data.asyncDefaults);
|
|
19
20
|
}
|
|
20
21
|
/** Run the sync defaults for `entity`. */
|
|
21
22
|
function setSyncDefaults(entity) {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
const
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
field.
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
(0, fields_1.setField)(entity, fieldName, value);
|
|
36
|
-
}
|
|
37
|
-
else if (!isRelation(field)) {
|
|
38
|
-
const hasBeenSet = fieldName in (0, BaseEntity_1.getInstanceData)(entity).data;
|
|
39
|
-
if (!hasBeenSet) {
|
|
23
|
+
return (0, trusted_1.runInTrustedContext)(() => {
|
|
24
|
+
const meta = (0, EntityMetadata_1.getMetadata)(entity);
|
|
25
|
+
// Allow subtypes to override base setDefaults
|
|
26
|
+
const syncDefaults = (0, EntityMetadata_1.getBaseAndSelfMetas)(meta).reduce((acc, m) => ({ ...acc, ...m.config.__data.syncDefaults }), {});
|
|
27
|
+
for (const [fieldName, maybeFn] of Object.entries(syncDefaults)) {
|
|
28
|
+
const field = meta.allFields[fieldName];
|
|
29
|
+
// Use allFields in case a subtype sets a default for one of its base fields
|
|
30
|
+
if ((field.kind === "primitive" || field.kind === "enum") &&
|
|
31
|
+
field.derived === "async") {
|
|
32
|
+
// If this is an AsyncReactiveField, we want to push in a default, but setOpts is called
|
|
33
|
+
// from the codegen constructor, so the user-defined `hasAsyncReactiveField` fields will
|
|
34
|
+
// not have been initialized yet (i.e. `entity[field]` will be undefined and not yet an
|
|
35
|
+
// `instanceof AsyncReactiveField`). Thankfully we can just use setField.
|
|
40
36
|
const value = maybeFn instanceof Function ? maybeFn(entity) : maybeFn;
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
37
|
+
(0, fields_1.setField)(entity, fieldName, value);
|
|
38
|
+
}
|
|
39
|
+
else if (!isRelation(field)) {
|
|
40
|
+
const hasBeenSet = fieldName in (0, BaseEntity_1.getInstanceData)(entity).data;
|
|
41
|
+
if (!hasBeenSet) {
|
|
42
|
+
const value = maybeFn instanceof Function ? maybeFn(entity) : maybeFn;
|
|
43
|
+
// If the value is undefined, leave it unset, so that a default invoked during
|
|
44
|
+
// the constructor being called (before any other opts are set) can be called
|
|
45
|
+
// again during `em.flush` and get an opportunity to observe other fields.
|
|
46
|
+
if (value !== undefined) {
|
|
47
|
+
entity[fieldName] = value;
|
|
48
|
+
}
|
|
46
49
|
}
|
|
47
50
|
}
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
51
|
+
else {
|
|
52
|
+
const value = entity[fieldName];
|
|
53
|
+
if ((0, index_1.isLoadedReference)(value) && !value.isSet && !value.hasBeenSet) {
|
|
54
|
+
// A sync default usually would never be for a reference, because reference defaults usually
|
|
55
|
+
// require a field hint (so would be async) to get "the other entity". However, something like:
|
|
56
|
+
// `config.setDefault("original", (self) => self);` is technically valid.
|
|
57
|
+
value.set(maybeFn instanceof Function ? maybeFn(entity) : maybeFn);
|
|
58
|
+
}
|
|
56
59
|
}
|
|
57
60
|
}
|
|
58
|
-
}
|
|
61
|
+
});
|
|
59
62
|
}
|
|
60
63
|
/** Runs the async defaults for all inserted entities in `todos`. */
|
|
61
64
|
async function setAsyncDefaults(suppressedTypeErrors, ctx,
|
|
@@ -63,19 +66,23 @@ async function setAsyncDefaults(suppressedTypeErrors, ctx,
|
|
|
63
66
|
// the subtype `setOnEntities(...all subtype entities...)` and `setOnEntities(...any base types...)`
|
|
64
67
|
// as bulk calls.
|
|
65
68
|
insertsBySubType) {
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
69
|
+
return (0, trusted_1.runInTrustedContext)(async () => {
|
|
70
|
+
const dt = new DependencyTracker(insertsBySubType);
|
|
71
|
+
const results = await Promise.allSettled([...insertsBySubType.entries()].flatMap(([meta, inserts]) => {
|
|
72
|
+
// configure will have copy/pasted base defaults into our config, so we can loop over it directly
|
|
73
|
+
return Object.values(meta.config.__data.asyncDefaults).map((df) => df.setOnEntities(ctx, dt, suppressedTypeErrors, meta, inserts));
|
|
74
|
+
}));
|
|
75
|
+
(0, utils_1.failIfAnyRejected)(results);
|
|
76
|
+
});
|
|
72
77
|
}
|
|
73
78
|
/** Sets async defaults *synchronously*, only safe for factories with `DeepNew` entities. */
|
|
74
79
|
function setAsyncDefaultsSynchronously(ctx, entity) {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
df.
|
|
78
|
-
|
|
80
|
+
return (0, trusted_1.runInTrustedContext)(() => {
|
|
81
|
+
// configure will have copy/pasted base defaults into our config, so we can loop over it directly
|
|
82
|
+
for (const df of Object.values((0, EntityMetadata_1.getMetadata)(entity).config.__data.asyncDefaults)) {
|
|
83
|
+
df.setOnFactoryEntity(ctx, entity);
|
|
84
|
+
}
|
|
85
|
+
});
|
|
79
86
|
}
|
|
80
87
|
/** Wraps the hint + lambda of an async `setDefault`. */
|
|
81
88
|
class AsyncDefault {
|
package/build/defaults.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import { ParsedCteClause, ParsedFindQuery } from "../QueryParser";
|
|
2
|
+
type QuerySettings = {
|
|
3
|
+
limit?: number;
|
|
4
|
+
offset?: number;
|
|
5
|
+
};
|
|
2
6
|
/**
|
|
3
7
|
* Transforms `ParsedFindQuery` into a raw SQL string.
|
|
4
8
|
*
|
|
5
9
|
* In theory this should be implemented within each Driver, but the logic will be largely
|
|
6
10
|
* the same for different dbs.
|
|
7
11
|
*/
|
|
8
|
-
export declare function buildRawQuery(parsed: ParsedFindQuery, settings: {
|
|
9
|
-
limit?: number;
|
|
10
|
-
offset?: number;
|
|
11
|
-
}): {
|
|
12
|
+
export declare function buildRawQuery(parsed: ParsedFindQuery, settings: QuerySettings): {
|
|
12
13
|
sql: string;
|
|
13
14
|
bindings: readonly any[];
|
|
14
15
|
};
|
|
@@ -17,4 +18,5 @@ export declare function buildCteSql(cte: ParsedCteClause): {
|
|
|
17
18
|
sql: string;
|
|
18
19
|
bindings: readonly any[];
|
|
19
20
|
};
|
|
21
|
+
export {};
|
|
20
22
|
//# sourceMappingURL=buildRawQuery.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildRawQuery.d.ts","sourceRoot":"","sources":["../../src/drivers/buildRawQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAe,MAAM,gBAAgB,CAAC;AAK/E
|
|
1
|
+
{"version":3,"file":"buildRawQuery.d.ts","sourceRoot":"","sources":["../../src/drivers/buildRawQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAe,MAAM,gBAAgB,CAAC;AAK/E,KAAK,aAAa,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzD;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE,aAAa,GACtB;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,SAAS,GAAG,EAAE,CAAA;CAAE,CAiH3C;AAWD,8DAA8D;AAC9D,wBAAgB,WAAW,CAAC,GAAG,EAAE,eAAe,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,SAAS,GAAG,EAAE,CAAA;CAAE,CAe3F"}
|
|
@@ -52,13 +52,14 @@ function buildRawQuery(parsed, settings) {
|
|
|
52
52
|
sql += " ";
|
|
53
53
|
}
|
|
54
54
|
sql += "SELECT ";
|
|
55
|
+
const subqueryRenderer = (q) => buildRawQuery(q, {});
|
|
55
56
|
parsed.selects.forEach((s, i) => {
|
|
56
57
|
const maybeDistinct = i === 0 && needsDistinct ? buildDistinctOn(parsed, primary) : "";
|
|
57
58
|
const maybeComma = i === parsed.selects.length - 1 ? "" : ", ";
|
|
58
59
|
if (typeof s === "string") {
|
|
59
60
|
sql += maybeDistinct + s + maybeComma;
|
|
60
61
|
}
|
|
61
|
-
else {
|
|
62
|
+
else if ("sql" in s) {
|
|
62
63
|
sql += maybeDistinct + s.sql + maybeComma;
|
|
63
64
|
bindings.push(...s.bindings);
|
|
64
65
|
}
|
|
@@ -83,7 +84,7 @@ function buildRawQuery(parsed, settings) {
|
|
|
83
84
|
// handled above
|
|
84
85
|
}
|
|
85
86
|
else if (t.join === "lateral") {
|
|
86
|
-
const { sql: subQ, bindings: subB } = buildRawQuery(t.query, {});
|
|
87
|
+
const { sql: subQ, bindings: subB } = buildRawQuery(t.query, t.settings ?? {});
|
|
87
88
|
sql += ` CROSS JOIN LATERAL (${subQ}) AS ${(0, keywords_1.kq)(t.alias)}`;
|
|
88
89
|
bindings.push(...subB);
|
|
89
90
|
}
|
|
@@ -95,7 +96,7 @@ function buildRawQuery(parsed, settings) {
|
|
|
95
96
|
}
|
|
96
97
|
}
|
|
97
98
|
if (parsed.condition) {
|
|
98
|
-
const where = (0, buildUtils_1.buildWhereClause)(parsed.condition, true);
|
|
99
|
+
const where = (0, buildUtils_1.buildWhereClause)(parsed.condition, true, subqueryRenderer);
|
|
99
100
|
if (where) {
|
|
100
101
|
sql += " WHERE " + where[0];
|
|
101
102
|
bindings.push(...where[1]);
|
|
@@ -107,11 +108,11 @@ function buildRawQuery(parsed, settings) {
|
|
|
107
108
|
if (parsed.orderBys.length > 0) {
|
|
108
109
|
sql += " ORDER BY " + parsed.orderBys.map((ob) => (0, keywords_1.kqDot)(ob.alias, ob.column) + " " + ob.order).join(", ");
|
|
109
110
|
}
|
|
110
|
-
if (limit) {
|
|
111
|
+
if (limit !== undefined) {
|
|
111
112
|
sql += ` LIMIT ?`;
|
|
112
113
|
bindings.push(limit);
|
|
113
114
|
}
|
|
114
|
-
if (offset) {
|
|
115
|
+
if (offset !== undefined) {
|
|
115
116
|
sql += ` OFFSET ?`;
|
|
116
117
|
bindings.push(offset);
|
|
117
118
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildRawQuery.js","sourceRoot":"","sources":["../../src/drivers/buildRawQuery.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"buildRawQuery.js","sourceRoot":"","sources":["../../src/drivers/buildRawQuery.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
import { ParsedExpressionFilter } from "../QueryParser";
|
|
1
|
+
import { type ParsedExpressionFilter, type ParsedFindQuery } from "../QueryParser";
|
|
2
|
+
/** Renders a ParsedFindQuery subquery to SQL — passed in to avoid circular imports with buildRawQuery. */
|
|
3
|
+
export type SubqueryRenderer = (q: ParsedFindQuery) => {
|
|
4
|
+
sql: string;
|
|
5
|
+
bindings: readonly any[];
|
|
6
|
+
};
|
|
2
7
|
/** Returns a tuple of `["cond AND (cond OR cond)", bindings]`. */
|
|
3
|
-
export declare function buildWhereClause(exp: ParsedExpressionFilter, topLevel?: boolean): [string, any[]] | undefined;
|
|
8
|
+
export declare function buildWhereClause(exp: ParsedExpressionFilter, topLevel?: boolean, renderSubquery?: SubqueryRenderer): [string, any[]] | undefined;
|
|
4
9
|
//# sourceMappingURL=buildUtils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildUtils.d.ts","sourceRoot":"","sources":["../../src/drivers/buildUtils.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"buildUtils.d.ts","sourceRoot":"","sources":["../../src/drivers/buildUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,sBAAsB,EAC3B,KAAK,eAAe,EAErB,MAAM,gBAAgB,CAAC;AAIxB,0GAA0G;AAC1G,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,EAAE,eAAe,KAAK;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,SAAS,GAAG,EAAE,CAAA;CAAE,CAAC;AAEjG,kEAAkE;AAClE,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,sBAAsB,EAC3B,QAAQ,UAAQ,EAChB,cAAc,CAAC,EAAE,gBAAgB,GAChC,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,SAAS,CAoB7B"}
|
|
@@ -6,16 +6,18 @@ const EntityManager_1 = require("../EntityManager");
|
|
|
6
6
|
const keywords_1 = require("../keywords");
|
|
7
7
|
const utils_1 = require("../utils");
|
|
8
8
|
/** Returns a tuple of `["cond AND (cond OR cond)", bindings]`. */
|
|
9
|
-
function buildWhereClause(exp, topLevel = false) {
|
|
9
|
+
function buildWhereClause(exp, topLevel = false, renderSubquery) {
|
|
10
10
|
const tuples = exp.conditions
|
|
11
11
|
.map((c) => {
|
|
12
12
|
return c.kind === "exp"
|
|
13
|
-
? buildWhereClause(c)
|
|
13
|
+
? buildWhereClause(c, false, renderSubquery)
|
|
14
14
|
: c.kind === "column"
|
|
15
15
|
? buildCondition(c)
|
|
16
16
|
: c.kind === "raw"
|
|
17
17
|
? buildRawCondition(c)
|
|
18
|
-
:
|
|
18
|
+
: c.kind === "exists"
|
|
19
|
+
? buildExistsCondition(c, renderSubquery)
|
|
20
|
+
: (0, utils_1.fail)(`Invalid condition ${c}`);
|
|
19
21
|
})
|
|
20
22
|
.filter(EntityManager_1.isDefined);
|
|
21
23
|
// If we don't have any conditions to combine, just return undefined;
|
|
@@ -54,12 +56,12 @@ function buildCondition(cc) {
|
|
|
54
56
|
case "contains":
|
|
55
57
|
case "containedBy":
|
|
56
58
|
case "overlaps": {
|
|
57
|
-
const fn = EntityGraphQLFilter_1.opToFn[cond.kind] ?? fail(`Invalid operator ${cond.kind}`);
|
|
59
|
+
const fn = EntityGraphQLFilter_1.opToFn[cond.kind] ?? (0, utils_1.fail)(`Invalid operator ${cond.kind}`);
|
|
58
60
|
return [`${columnName} ${fn} ?`, [cond.value]];
|
|
59
61
|
}
|
|
60
62
|
case "noverlaps":
|
|
61
63
|
case "ncontains": {
|
|
62
|
-
const fn = EntityGraphQLFilter_1.opToFn[cond.kind.substring(1)] ?? fail(`Invalid operator ${cond.kind}`);
|
|
64
|
+
const fn = EntityGraphQLFilter_1.opToFn[cond.kind.substring(1)] ?? (0, utils_1.fail)(`Invalid operator ${cond.kind}`);
|
|
63
65
|
return [`NOT (${columnName} ${fn} ?)`, [cond.value]];
|
|
64
66
|
}
|
|
65
67
|
case "is-null":
|
|
@@ -76,4 +78,11 @@ function buildCondition(cc) {
|
|
|
76
78
|
(0, utils_1.assertNever)(cond);
|
|
77
79
|
}
|
|
78
80
|
}
|
|
81
|
+
function buildExistsCondition(c, renderSubquery) {
|
|
82
|
+
if (!renderSubquery)
|
|
83
|
+
throw new Error("EXISTS condition requires a subquery renderer");
|
|
84
|
+
const { sql, bindings } = renderSubquery(c.subquery);
|
|
85
|
+
const prefix = c.negate ? "NOT EXISTS" : "EXISTS";
|
|
86
|
+
return [`${prefix} (${sql})`, [...bindings]];
|
|
87
|
+
}
|
|
79
88
|
//# sourceMappingURL=buildUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildUtils.js","sourceRoot":"","sources":["../../src/drivers/buildUtils.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"buildUtils.js","sourceRoot":"","sources":["../../src/drivers/buildUtils.ts"],"names":[],"mappings":"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"}
|
package/build/fields.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../src/fields.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAY,MAAM,UAAU,CAAC;AAO5C;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,GAAG,CAe/D;AAED,qFAAqF;AACrF,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAE5E;AAED,qFAAqF;AACrF,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAQrE;AAED;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,OAAO,
|
|
1
|
+
{"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../src/fields.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAY,MAAM,UAAU,CAAC;AAO5C;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,GAAG,CAe/D;AAED,qFAAqF;AACrF,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAE5E;AAED,qFAAqF;AACrF,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAQrE;AAED;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,OAAO,CAyFlF"}
|
package/build/fields.js
CHANGED
|
@@ -69,18 +69,23 @@ function setField(entity, fieldName, newValue) {
|
|
|
69
69
|
api.checkWritesAllowed();
|
|
70
70
|
// Tell any `#isLoaded` or `#value` caches that they might be stale
|
|
71
71
|
isLoadedCache.resetIsLoaded(entity, fieldName);
|
|
72
|
-
const
|
|
72
|
+
const instanceData = (0, BaseEntity_1.getInstanceData)(entity);
|
|
73
|
+
const { data, originalData, flushedData } = instanceData;
|
|
73
74
|
// Do string sanitization
|
|
74
75
|
const field = (0, EntityMetadata_1.getMetadata)(entity).allFields[fieldName];
|
|
75
76
|
if (field.kind === "primitive" && field.type === "string" && field.sanitize !== false) {
|
|
76
77
|
newValue = (0, index_1.cleanStringValue)(newValue);
|
|
77
78
|
}
|
|
78
|
-
|
|
79
|
+
const currentValue = getField(entity, fieldName);
|
|
80
|
+
const isReference = field.kind === "m2o" || field.kind === "poly";
|
|
81
|
+
// Remember every prior reference value so `followReverseHint` can rewalk both original and transient owners.
|
|
82
|
+
if (isReference && !equalOrSameEntity(currentValue, newValue)) {
|
|
83
|
+
instanceData.rememberReferenceValue(fieldName, currentValue);
|
|
84
|
+
}
|
|
85
|
+
// If a `set` occurs during the AsyncReactiveField-loop, copy the last-flushed value to flushedData.
|
|
79
86
|
// Then our `pendingOperation` logic can tell "do we need another micro-flush?" separately
|
|
80
87
|
// from our public-facing changed fields logic.
|
|
81
88
|
if (flushedData) {
|
|
82
|
-
// Get the currentValue, which is what we should have flushed to the db
|
|
83
|
-
const currentValue = getField(entity, fieldName);
|
|
84
89
|
if (fieldName in flushedData) {
|
|
85
90
|
// We've already copied the last-micro-flush value into flushedData,
|
|
86
91
|
// are we changing back to that? If so, we won't need another micro-flush.
|
|
@@ -101,18 +106,22 @@ function setField(entity, fieldName, newValue) {
|
|
|
101
106
|
// "Un-dirty" our originalData if newValue is reverting to originalData
|
|
102
107
|
if (fieldName in originalData) {
|
|
103
108
|
if (equalOrSameEntity(originalData[fieldName], newValue)) {
|
|
104
|
-
const currentValue = getField(entity, fieldName);
|
|
105
109
|
indexManager.maybeUpdateFieldIndex(entity, fieldName, currentValue, newValue);
|
|
106
110
|
pluginManager.beforeSetField(entity, fieldName, newValue);
|
|
107
111
|
data[fieldName] = newValue;
|
|
108
112
|
delete originalData[fieldName];
|
|
109
113
|
fieldLogger?.logSet(entity, fieldName, newValue);
|
|
110
|
-
|
|
114
|
+
if (isReference && instanceData.getReferenceHistory(fieldName).length > 0) {
|
|
115
|
+
rm.queueDownstreamReactables(entity, fieldName);
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
// For normal reverts, the field is clean again, so any pending downstream work can be removed.
|
|
119
|
+
rm.dequeueDownstreamReactables(entity, fieldName);
|
|
120
|
+
}
|
|
111
121
|
return true;
|
|
112
122
|
}
|
|
113
123
|
}
|
|
114
124
|
// Push this logic into a field serde type abstraction?
|
|
115
|
-
const currentValue = getField(entity, fieldName);
|
|
116
125
|
if (equalOrSameEntity(currentValue, newValue)) {
|
|
117
126
|
// If we're doing `entity.field = undefined`, we'll be equal, but mark ourselves as "set"
|
|
118
127
|
// so that defaults know to respect the intent of keeping this field undefined.
|
package/build/fields.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fields.js","sourceRoot":"","sources":["../src/fields.ts"],"names":[],"mappings":";;AAeA,4BAeC;AAGD,8CAEC;AAGD,gCAQC;AAWD,
|
|
1
|
+
{"version":3,"file":"fields.js","sourceRoot":"","sources":["../src/fields.ts"],"names":[],"mappings":"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"}
|
package/build/index.d.ts
CHANGED
|
@@ -34,6 +34,7 @@ export { JoinRow, JoinRowOperation, ManyToManyLike } from "./JoinRows";
|
|
|
34
34
|
export * from "./PendingChanges";
|
|
35
35
|
export { Plugin } from "./PluginManager";
|
|
36
36
|
export * from "./QueryParser";
|
|
37
|
+
export * from "./QueryParser.collectionJoins";
|
|
37
38
|
export { visitConditions } from "./QueryVisitor";
|
|
38
39
|
export { JoinRowTodo, Todo } from "./Todo";
|
|
39
40
|
export * from "./changes";
|
|
@@ -57,7 +58,7 @@ export { deepNormalizeHint, normalizeHint } from "./normalizeHints";
|
|
|
57
58
|
export { ImmutableEntitiesPlugin } from "./plugins/ImmutableEntitiesPlugin";
|
|
58
59
|
export { JoinResult, PreloadHydrator, PreloadPlugin } from "./plugins/PreloadPlugin";
|
|
59
60
|
export { JsonAggregatePreloader } from "./preloading/JsonAggregatePreloader";
|
|
60
|
-
export { convertToLoadHint, Reactable, Reacted, ReactiveHint, ReactiveTarget, reverseReactiveHint, } from "./reactiveHints";
|
|
61
|
+
export { convertToLoadHint, isTypeOrSubType, Reactable, Reacted, ReactiveHint, ReactiveTarget, reverseReactiveHint, } from "./reactiveHints";
|
|
61
62
|
export * from "./relations";
|
|
62
63
|
export { cannotBeChanged, cannotBeUpdated, GenericError, maxValueRule, minValueRule, mustBeSubType, newRequiredRule, rangeValueRule, ValidationCode, ValidationError, ValidationErrors, ValidationRule, ValidationRuleResult, } from "./rules";
|
|
63
64
|
export { getRuntimeConfig, setRuntimeConfig, type RuntimeConfig } from "./runtimeConfig";
|
package/build/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/build/index.js
CHANGED
|
@@ -15,7 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
exports.deepNormalizeHint = exports.testIndex = exports.setFactoryLogging = exports.noValue = exports.newTestInstance = exports.maybeNewPoly = exports.maybeNew = exports.maybeBranchValue = exports.isFactoryCreation = exports.getTestIndex = exports.factories = exports.defaultValue = exports.lazyField = exports.setReactionLogging = exports.ReactionLogger = exports.setFactoryWriter = exports.unsafeLoaded = exports.maybePopulateThen = exports.isNew = exports.isLoaded = exports.ensureLoaded = exports.assertLoaded = exports.kqStar = exports.kqDot = exports.kq = exports.setField = exports.isFieldSet = exports.isChangeableField = exports.getField = exports.driverApi = exports.maybeGetConstructorFromReference = exports.getMetadataForType = exports.getMetadataForTable = exports.getConstructorFromTaggedId = exports.configureMetadata = exports.resetBootFlag = exports.ConfigApi = exports.Todo = exports.visitConditions = exports.Plugin = exports.JoinRowOperation = exports.InstanceData = exports.isEntity = exports.ConditionBuilder = exports.getInstanceData = exports.BaseEntity = exports.AliasAssigner = exports.newPgConnectionConfig = exports.internals = exports.testing = void 0;
|
|
18
|
-
exports.NoIdError = exports.withLoaded = exports.StubbedRelation = exports.ensureWithLoaded = exports.zeroTo = exports.partition = exports.indexBy = exports.failIfAnyRejected = exports.fail = exports.cleanStringValue = exports.cleanSql = exports.assertNever = exports.asNew = exports.abbreviation = exports.upsert = exports.updatePartial = exports.ensureRectangularArraySizes = exports.buildUnnestCte = exports.runInTrustedContext = exports.isInTrustedContext = exports.setRuntimeConfig = exports.getRuntimeConfig = exports.ValidationErrors = exports.ValidationCode = exports.rangeValueRule = exports.newRequiredRule = exports.mustBeSubType = exports.minValueRule = exports.maxValueRule = exports.cannotBeUpdated = exports.cannotBeChanged = exports.reverseReactiveHint = exports.convertToLoadHint = exports.JsonAggregatePreloader = exports.ImmutableEntitiesPlugin = exports.normalizeHint = void 0;
|
|
18
|
+
exports.NoIdError = exports.withLoaded = exports.StubbedRelation = exports.ensureWithLoaded = exports.zeroTo = exports.partition = exports.indexBy = exports.failIfAnyRejected = exports.fail = exports.cleanStringValue = exports.cleanSql = exports.assertNever = exports.asNew = exports.abbreviation = exports.upsert = exports.updatePartial = exports.ensureRectangularArraySizes = exports.buildUnnestCte = exports.runInTrustedContext = exports.isInTrustedContext = exports.setRuntimeConfig = exports.getRuntimeConfig = exports.ValidationErrors = exports.ValidationCode = exports.rangeValueRule = exports.newRequiredRule = exports.mustBeSubType = exports.minValueRule = exports.maxValueRule = exports.cannotBeUpdated = exports.cannotBeChanged = exports.reverseReactiveHint = exports.isTypeOrSubType = exports.convertToLoadHint = exports.JsonAggregatePreloader = exports.ImmutableEntitiesPlugin = exports.normalizeHint = void 0;
|
|
19
19
|
exports.setOpts = setOpts;
|
|
20
20
|
exports.setOpt = setOpt;
|
|
21
21
|
exports.ensureNotDeleted = ensureNotDeleted;
|
|
@@ -37,7 +37,7 @@ const partitionHint_1 = require("./preloading/partitionHint");
|
|
|
37
37
|
const relations_1 = require("./relations");
|
|
38
38
|
const AbstractRelationImpl_1 = require("./relations/AbstractRelationImpl");
|
|
39
39
|
const ReactiveField_1 = require("./relations/ReactiveField");
|
|
40
|
-
const
|
|
40
|
+
const AsyncReactiveField_1 = require("./relations/AsyncReactiveField");
|
|
41
41
|
const utils_1 = require("./utils");
|
|
42
42
|
exports.testing = { isAllSqlPaths: loadLens_1.isAllSqlPaths, getDefaultDependencies: defaults_1.getDefaultDependencies, partitionHint: partitionHint_1.partitionHint };
|
|
43
43
|
exports.internals = { buildWhereClause: buildUtils_1.buildWhereClause };
|
|
@@ -66,6 +66,7 @@ __exportStar(require("./PendingChanges"), exports);
|
|
|
66
66
|
var PluginManager_1 = require("./PluginManager");
|
|
67
67
|
Object.defineProperty(exports, "Plugin", { enumerable: true, get: function () { return PluginManager_1.Plugin; } });
|
|
68
68
|
__exportStar(require("./QueryParser"), exports);
|
|
69
|
+
__exportStar(require("./QueryParser.collectionJoins"), exports);
|
|
69
70
|
var QueryVisitor_1 = require("./QueryVisitor");
|
|
70
71
|
Object.defineProperty(exports, "visitConditions", { enumerable: true, get: function () { return QueryVisitor_1.visitConditions; } });
|
|
71
72
|
var Todo_1 = require("./Todo");
|
|
@@ -132,6 +133,7 @@ var JsonAggregatePreloader_1 = require("./preloading/JsonAggregatePreloader");
|
|
|
132
133
|
Object.defineProperty(exports, "JsonAggregatePreloader", { enumerable: true, get: function () { return JsonAggregatePreloader_1.JsonAggregatePreloader; } });
|
|
133
134
|
var reactiveHints_1 = require("./reactiveHints");
|
|
134
135
|
Object.defineProperty(exports, "convertToLoadHint", { enumerable: true, get: function () { return reactiveHints_1.convertToLoadHint; } });
|
|
136
|
+
Object.defineProperty(exports, "isTypeOrSubType", { enumerable: true, get: function () { return reactiveHints_1.isTypeOrSubType; } });
|
|
135
137
|
Object.defineProperty(exports, "reverseReactiveHint", { enumerable: true, get: function () { return reactiveHints_1.reverseReactiveHint; } });
|
|
136
138
|
__exportStar(require("./relations"), exports);
|
|
137
139
|
var rules_1 = require("./rules");
|
|
@@ -234,15 +236,15 @@ function setOpt(meta, entity, key, _value, partial = false, calledFromConstructo
|
|
|
234
236
|
current.set(value);
|
|
235
237
|
}
|
|
236
238
|
}
|
|
237
|
-
else if ((0, relations_1.isAsyncProperty)(current) || (0, relations_1.isReactiveGetter)(current)) {
|
|
239
|
+
else if ((0, relations_1.isProperty)(current) || (0, relations_1.isAsyncProperty)(current) || (0, relations_1.isReactiveGetter)(current)) {
|
|
238
240
|
throw new Error(`Invalid argument, cannot set over ${key} ${current.constructor.name}`);
|
|
239
241
|
}
|
|
240
|
-
else if ((0, relations_1.isReactiveField)(current) || (0, relations_1.
|
|
242
|
+
else if ((0, relations_1.isReactiveField)(current) || (0, relations_1.isAsyncReactiveField)(current)) {
|
|
241
243
|
if (value instanceof newTestInstance_1.FactoryInitialValue) {
|
|
242
244
|
if (current instanceof ReactiveField_1.ReactiveFieldImpl) {
|
|
243
245
|
current.setFactoryValue(value.value);
|
|
244
246
|
}
|
|
245
|
-
else if (current instanceof
|
|
247
|
+
else if (current instanceof AsyncReactiveField_1.AsyncReactiveFieldImpl) {
|
|
246
248
|
current.setFactoryValue(value.value);
|
|
247
249
|
}
|
|
248
250
|
else {
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|