joist-orm 1.123.0 → 1.124.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/build/src/EntityManager.d.ts.map +1 -1
  2. package/build/src/EntityManager.js +5 -1
  3. package/build/src/EntityManager.js.map +1 -1
  4. package/build/src/QueryParser.d.ts +2 -12
  5. package/build/src/QueryParser.d.ts.map +1 -1
  6. package/build/src/QueryParser.js +77 -46
  7. package/build/src/QueryParser.js.map +1 -1
  8. package/build/src/QueryVisitor.d.ts +15 -0
  9. package/build/src/QueryVisitor.d.ts.map +1 -0
  10. package/build/src/QueryVisitor.js +30 -0
  11. package/build/src/QueryVisitor.js.map +1 -0
  12. package/build/src/ReactionsManager.d.ts +7 -0
  13. package/build/src/ReactionsManager.d.ts.map +1 -1
  14. package/build/src/ReactionsManager.js +31 -2
  15. package/build/src/ReactionsManager.js.map +1 -1
  16. package/build/src/Todo.d.ts +1 -1
  17. package/build/src/Todo.d.ts.map +1 -1
  18. package/build/src/Todo.js.map +1 -1
  19. package/build/src/dataloaders/findByUniqueDataLoader.js +1 -1
  20. package/build/src/dataloaders/findByUniqueDataLoader.js.map +1 -1
  21. package/build/src/dataloaders/findCountDataLoader.js +1 -1
  22. package/build/src/dataloaders/findCountDataLoader.js.map +1 -1
  23. package/build/src/dataloaders/findDataLoader.d.ts.map +1 -1
  24. package/build/src/dataloaders/findDataLoader.js +5 -19
  25. package/build/src/dataloaders/findDataLoader.js.map +1 -1
  26. package/build/src/dataloaders/lensDataLoader.js +1 -1
  27. package/build/src/dataloaders/lensDataLoader.js.map +1 -1
  28. package/build/src/dataloaders/loadDataLoader.d.ts.map +1 -1
  29. package/build/src/dataloaders/loadDataLoader.js +4 -1
  30. package/build/src/dataloaders/loadDataLoader.js.map +1 -1
  31. package/build/src/dataloaders/manyToManyDataLoader.js +13 -16
  32. package/build/src/dataloaders/manyToManyDataLoader.js.map +1 -1
  33. package/build/src/dataloaders/manyToManyFindDataLoader.js +29 -32
  34. package/build/src/dataloaders/manyToManyFindDataLoader.js.map +1 -1
  35. package/build/src/dataloaders/oneToManyDataLoader.d.ts.map +1 -1
  36. package/build/src/dataloaders/oneToManyDataLoader.js +6 -3
  37. package/build/src/dataloaders/oneToManyDataLoader.js.map +1 -1
  38. package/build/src/dataloaders/oneToManyFindDataLoader.d.ts.map +1 -1
  39. package/build/src/dataloaders/oneToManyFindDataLoader.js +29 -32
  40. package/build/src/dataloaders/oneToManyFindDataLoader.js.map +1 -1
  41. package/build/src/dataloaders/oneToOneDataLoader.d.ts.map +1 -1
  42. package/build/src/dataloaders/oneToOneDataLoader.js +6 -3
  43. package/build/src/dataloaders/oneToOneDataLoader.js.map +1 -1
  44. package/build/src/dataloaders/populateDataLoader.d.ts.map +1 -1
  45. package/build/src/dataloaders/populateDataLoader.js +4 -1
  46. package/build/src/dataloaders/populateDataLoader.js.map +1 -1
  47. package/build/src/drivers/buildKnexQuery.d.ts.map +1 -1
  48. package/build/src/drivers/buildKnexQuery.js +21 -34
  49. package/build/src/drivers/buildKnexQuery.js.map +1 -1
  50. package/build/src/index.d.ts +14 -2
  51. package/build/src/index.d.ts.map +1 -1
  52. package/build/src/index.js +22 -1
  53. package/build/src/index.js.map +1 -1
  54. package/build/src/relations/AbstractPropertyImpl.d.ts +7 -0
  55. package/build/src/relations/AbstractPropertyImpl.d.ts.map +1 -0
  56. package/build/src/relations/AbstractPropertyImpl.js +15 -0
  57. package/build/src/relations/AbstractPropertyImpl.js.map +1 -0
  58. package/build/src/relations/AbstractRelationImpl.d.ts +3 -1
  59. package/build/src/relations/AbstractRelationImpl.d.ts.map +1 -1
  60. package/build/src/relations/AbstractRelationImpl.js +5 -1
  61. package/build/src/relations/AbstractRelationImpl.js.map +1 -1
  62. package/build/src/relations/CustomCollection.d.ts +1 -2
  63. package/build/src/relations/CustomCollection.d.ts.map +1 -1
  64. package/build/src/relations/CustomCollection.js +12 -14
  65. package/build/src/relations/CustomCollection.js.map +1 -1
  66. package/build/src/relations/CustomReference.d.ts +1 -2
  67. package/build/src/relations/CustomReference.d.ts.map +1 -1
  68. package/build/src/relations/CustomReference.js +11 -13
  69. package/build/src/relations/CustomReference.js.map +1 -1
  70. package/build/src/relations/ManyToManyCollection.d.ts +1 -2
  71. package/build/src/relations/ManyToManyCollection.d.ts.map +1 -1
  72. package/build/src/relations/ManyToManyCollection.js +30 -35
  73. package/build/src/relations/ManyToManyCollection.js.map +1 -1
  74. package/build/src/relations/ManyToOneReference.d.ts +1 -1
  75. package/build/src/relations/ManyToOneReference.d.ts.map +1 -1
  76. package/build/src/relations/ManyToOneReference.js +32 -34
  77. package/build/src/relations/ManyToOneReference.js.map +1 -1
  78. package/build/src/relations/OneToManyCollection.d.ts +1 -2
  79. package/build/src/relations/OneToManyCollection.d.ts.map +1 -1
  80. package/build/src/relations/OneToManyCollection.js +26 -31
  81. package/build/src/relations/OneToManyCollection.js.map +1 -1
  82. package/build/src/relations/OneToOneReference.d.ts +1 -2
  83. package/build/src/relations/OneToOneReference.d.ts.map +1 -1
  84. package/build/src/relations/OneToOneReference.js +17 -22
  85. package/build/src/relations/OneToOneReference.js.map +1 -1
  86. package/build/src/relations/PersistedAsyncProperty.d.ts +2 -1
  87. package/build/src/relations/PersistedAsyncProperty.d.ts.map +1 -1
  88. package/build/src/relations/PersistedAsyncProperty.js +12 -12
  89. package/build/src/relations/PersistedAsyncProperty.js.map +1 -1
  90. package/build/src/relations/PersistedAsyncReference.d.ts +1 -1
  91. package/build/src/relations/PersistedAsyncReference.d.ts.map +1 -1
  92. package/build/src/relations/PersistedAsyncReference.js +22 -24
  93. package/build/src/relations/PersistedAsyncReference.js.map +1 -1
  94. package/build/src/relations/PolymorphicReference.d.ts +1 -2
  95. package/build/src/relations/PolymorphicReference.d.ts.map +1 -1
  96. package/build/src/relations/PolymorphicReference.js +1 -3
  97. package/build/src/relations/PolymorphicReference.js.map +1 -1
  98. package/build/tsconfig.tsbuildinfo +1 -1
  99. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"EntityManager.d.ts","sourceRoot":"","sources":["../../src/EntityManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EntityManager.d.ts","sourceRoot":"","sources":["../../src/EntityManager.ts"],"names":[],"mappings":"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"}
@@ -515,7 +515,7 @@ class EntityManager {
515
515
  async assignNewIds() {
516
516
  let pendingEntities = this.entities.filter((e) => e.isNewEntity && !e.isDeletedEntity && !e.idTaggedMaybe);
517
517
  await this.getLoader("assign-new-ids", "global", async (entities) => {
518
- let todos = (0, Todo_1.createTodos)([...entities]);
518
+ let todos = (0, Todo_1.createTodos)(entities);
519
519
  await this.driver.assignNewIds(this, todos);
520
520
  return entities;
521
521
  }).loadMany(pendingEntities);
@@ -569,6 +569,10 @@ class EntityManager {
569
569
  await this.cascadeDeletes();
570
570
  // The hooks could have changed fields, so recalc again.
571
571
  await this.#rm.recalcPendingDerivedValues();
572
+ if (this.#rm.hasFieldsPendingAssignedIds) {
573
+ await this.assignNewIds();
574
+ await this.#rm.recalcRelationsPendingAssignedIds();
575
+ }
572
576
  for (const e of pendingEntities)
573
577
  hooksInvoked.add(e);
574
578
  pendingEntities = this.entities.filter((e) => e.isPendingFlush && !hooksInvoked.has(e));
@@ -1 +1 @@
1
- {"version":3,"file":"EntityManager.js","sourceRoot":"","sources":["../../src/EntityManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EntityManager.js","sourceRoot":"","sources":["../../src/EntityManager.ts"],"names":[],"mappings":"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"}
@@ -47,10 +47,8 @@ export interface ParsedFindQuery {
47
47
  joins: string[];
48
48
  bindings: any[];
49
49
  };
50
- /** Simple conditions that are ANDd together. */
51
- conditions: ColumnCondition[];
52
- /** Any optional complex conditions that will be ANDd with the simple conditions. */
53
- complexConditions?: ParsedExpressionFilter[];
50
+ /** The query's conditions. */
51
+ condition?: ParsedExpressionFilter;
54
52
  /** Any optional orders to add before the default 'order by id'. */
55
53
  orderBys: ParsedOrderBy[];
56
54
  }
@@ -137,14 +135,6 @@ export declare function mapToDb(column: Column, filter: ParsedValueFilter<any>):
137
135
  export declare function maybeAddOrderBy(query: ParsedFindQuery, meta: EntityMetadata, alias: string): void;
138
136
  export declare function addTablePerClassJoinsAndClassTag(query: ParsedFindQuery, meta: EntityMetadata, alias: string, isPrimary: boolean): void;
139
137
  export declare function maybeAddNotSoftDeleted(conditions: ColumnCondition[], meta: EntityMetadata, alias: string, softDeletes: "include" | "exclude"): void;
140
- /**
141
- * Combines the simple & complex compressions of `query` into a single `ParsedExpressionFilter`.
142
- *
143
- * The two `query.conditions` and `query.complexConditions` separated generally for historical
144
- * reasons in the `parseFindQuery` implementation, but are effectively a single expression of
145
- * `AND`-ing the conditions with the complex conditions.
146
- */
147
- export declare function combineConditions(query: ParsedFindQuery): ParsedExpressionFilter;
148
138
  export declare function getTables(query: ParsedFindQuery): [PrimaryTable, JoinTable[]];
149
139
  export declare function joinKeywords(join: JoinTable): string;
150
140
  export declare function joinClause(join: JoinTable): string;
@@ -1 +1 @@
1
- {"version":3,"file":"QueryParser.d.ts","sourceRoot":"","sources":["../../src/QueryParser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueryParser.d.ts","sourceRoot":"","sources":["../../src/QueryParser.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.joinClauses = exports.joinClause = exports.joinKeywords = exports.getTables = exports.combineConditions = exports.maybeAddNotSoftDeleted = exports.addTablePerClassJoinsAndClassTag = exports.maybeAddOrderBy = exports.mapToDb = exports.parseValueFilter = exports.parseEntityFilter = exports.parseFindQuery = exports.skipCondition = void 0;
3
+ exports.joinClauses = exports.joinClause = exports.joinKeywords = exports.getTables = exports.maybeAddNotSoftDeleted = exports.addTablePerClassJoinsAndClassTag = exports.maybeAddOrderBy = exports.mapToDb = exports.parseValueFilter = exports.parseEntityFilter = exports.parseFindQuery = exports.skipCondition = void 0;
4
4
  const is_plain_object_1 = require("is-plain-object");
5
5
  const joist_utils_1 = require("joist-utils");
6
6
  const Aliases_1 = require("./Aliases");
7
7
  const Entity_1 = require("./Entity");
8
8
  const QueryBuilder_1 = require("./QueryBuilder");
9
+ const QueryVisitor_1 = require("./QueryVisitor");
9
10
  const index_1 = require("./index");
10
11
  const keywords_1 = require("./keywords");
11
12
  const utils_1 = require("./utils");
@@ -20,11 +21,11 @@ exports.skipCondition = {
20
21
  function parseFindQuery(meta, filter, opts = {}) {
21
22
  const selects = [];
22
23
  const tables = [];
23
- const conditions = [];
24
24
  const orderBys = [];
25
- const query = { selects, tables, conditions, orderBys };
26
- const complexConditions = [];
27
- const { orderBy = undefined, conditions: expression = undefined, softDeletes = "exclude", pruneJoins = true, keepAliases = [], } = opts;
25
+ const query = { selects, tables, orderBys };
26
+ const { orderBy = undefined, conditions: optsExpression = undefined, softDeletes = "exclude", pruneJoins = true, keepAliases = [], } = opts;
27
+ const inlineConditions = [];
28
+ const inlineExpressions = [];
28
29
  const aliases = {};
29
30
  function getAlias(tableName) {
30
31
  const abbrev = (0, QueryBuilder_1.abbreviation)(tableName);
@@ -38,7 +39,7 @@ function parseFindQuery(meta, filter, opts = {}) {
38
39
  function maybeAddNotSoftDeleted(meta, alias) {
39
40
  if (filterSoftDeletes(meta)) {
40
41
  const column = meta.allFields[meta.timestampFields.deletedAt].serde?.columns[0];
41
- conditions.push({
42
+ inlineConditions.push({
42
43
  alias,
43
44
  column: column.columnName,
44
45
  dbType: column.dbType,
@@ -85,7 +86,7 @@ function parseFindQuery(meta, filter, opts = {}) {
85
86
  if (field.kind === "primitive" || field.kind === "primaryKey" || field.kind === "enum") {
86
87
  const column = field.serde.columns[0];
87
88
  parseValueFilter(ef.subFilter[key]).forEach((filter) => {
88
- conditions.push({
89
+ inlineConditions.push({
89
90
  alias: fa,
90
91
  column: column.columnName,
91
92
  dbType: column.dbType,
@@ -111,7 +112,7 @@ function parseFindQuery(meta, filter, opts = {}) {
111
112
  addTable(field.otherMetadata(), a, joinKind, (0, keywords_1.kqDot)(fa, column.columnName), (0, keywords_1.kqDot)(a, "id"), sub);
112
113
  }
113
114
  else {
114
- conditions.push({
115
+ inlineConditions.push({
115
116
  alias: fa,
116
117
  column: column.columnName,
117
118
  dbType: column.dbType,
@@ -133,7 +134,7 @@ function parseFindQuery(meta, filter, opts = {}) {
133
134
  if (f.kind === "eq" || f.kind === "ne") {
134
135
  const comp = field.components.find((p) => p.otherMetadata().cstr === (0, index_1.getConstructorFromTaggedId)(f.value)) || (0, utils_1.fail)(`Could not find component for ${f.value}`);
135
136
  const column = field.serde.columns.find((c) => c.columnName === comp.columnName);
136
- conditions.push({
137
+ inlineConditions.push({
137
138
  alias: fa,
138
139
  column: comp.columnName,
139
140
  dbType: column.dbType,
@@ -144,7 +145,7 @@ function parseFindQuery(meta, filter, opts = {}) {
144
145
  // Add a condition for every component--these can be AND-d with the rest of the simple/inline conditions
145
146
  field.components.forEach((comp) => {
146
147
  const column = field.serde.columns.find((c) => c.columnName === comp.columnName);
147
- conditions.push({
148
+ inlineConditions.push({
148
149
  alias: fa,
149
150
  column: comp.columnName,
150
151
  dbType: column.dbType,
@@ -165,7 +166,7 @@ function parseFindQuery(meta, filter, opts = {}) {
165
166
  cond: mapToDb(column, { kind: "in", value: ids }),
166
167
  };
167
168
  });
168
- complexConditions.push({ op: "or", conditions });
169
+ inlineExpressions.push({ op: "or", conditions });
169
170
  }
170
171
  else {
171
172
  throw new Error(`Filters on polys for ${f.kind} are not supported`);
@@ -223,7 +224,7 @@ function parseFindQuery(meta, filter, opts = {}) {
223
224
  return value === null ? value : (0, index_1.keyToNumber)(meta, (0, index_1.maybeResolveReferenceToId)(value));
224
225
  },
225
226
  };
226
- conditions.push({
227
+ inlineConditions.push({
227
228
  alias: ja,
228
229
  column: field.columnNames[1],
229
230
  dbType: meta.idDbType,
@@ -238,7 +239,7 @@ function parseFindQuery(meta, filter, opts = {}) {
238
239
  }
239
240
  else if (ef) {
240
241
  const column = meta.fields["id"].serde.columns[0];
241
- conditions.push({ alias, column: "id", dbType: meta.idDbType, cond: mapToDb(column, ef) });
242
+ inlineConditions.push({ alias, column: "id", dbType: meta.idDbType, cond: mapToDb(column, ef) });
242
243
  }
243
244
  }
244
245
  function addOrderBy(meta, alias, orderBy) {
@@ -288,34 +289,76 @@ function parseFindQuery(meta, filter, opts = {}) {
288
289
  const alias = getAlias(meta.tableName);
289
290
  selects.push(`${(0, keywords_1.kq)(alias)}.*`);
290
291
  addTable(meta, alias, "primary", "n/a", "n/a", filter);
291
- if (expression) {
292
- const parsed = parseExpression(expression);
293
- if (parsed) {
294
- complexConditions.push(parsed);
295
- }
292
+ // If they passed extra `conditions: ...`, parse that
293
+ if (optsExpression) {
294
+ const parsed = parseExpression(optsExpression);
295
+ if (parsed)
296
+ inlineExpressions.push(parsed);
297
+ }
298
+ if (inlineConditions.length === 0 && inlineExpressions.length === 1) {
299
+ // If no inline conditions, and just 1 opt expression, just use that
300
+ Object.assign(query, { condition: inlineExpressions[0] });
301
+ }
302
+ else if (inlineConditions.length > 0 || inlineExpressions.length > 0) {
303
+ // Combine the conditions within the `em.find` join literal & the `conditions` as ANDs
304
+ Object.assign(query, {
305
+ condition: { op: "and", conditions: [...inlineConditions, ...inlineExpressions] },
306
+ });
307
+ }
308
+ if (query.tables.some((t) => t.join === "outer")) {
309
+ maybeAddIdNotNulls(query);
296
310
  }
297
311
  if (orderBy) {
298
312
  addOrderBy(meta, alias, orderBy);
299
313
  }
300
314
  maybeAddOrderBy(query, meta, alias);
301
- if (complexConditions.length > 0) {
302
- Object.assign(query, { complexConditions });
303
- }
304
315
  if (pruneJoins) {
305
316
  pruneUnusedJoins(query, keepAliases);
306
317
  }
307
318
  return query;
308
319
  }
309
320
  exports.parseFindQuery = parseFindQuery;
321
+ /**
322
+ * Look for conditions doing `some_column IS NULL` in an outer join that
323
+ * need an `id IS NOT NULL` to make sure they don't match inadvertently on
324
+ * the child row simply not existing.
325
+ *
326
+ * Note: Instead of injecting an extra `id IS NOT NULL` condition, I had tried
327
+ * using all INNER JOINs and flipping joins to OUTER only if the user explicit
328
+ * had `id IS NULL` in their filter, but that didn't work for queries that wanted
329
+ * to do an `OR` across two different children (which queries both children being
330
+ * OUTER JOINs, and detecting that case seemed complicated).
331
+ */
332
+ function maybeAddIdNotNulls(query) {
333
+ (0, QueryVisitor_1.visitConditions)(query, {
334
+ visitCond(c) {
335
+ // Check `c.prunable` to make sure we don't catch our injected `deleted_at is null` conditions
336
+ if (c.cond.kind !== "is-null" || c.column === "id" || c.pruneable) {
337
+ return c;
338
+ }
339
+ // This is an `some_column IS NULL`, is it in an outer join?
340
+ const table = query.tables.find((t) => t.alias === c.alias);
341
+ if (table && table.join === "outer") {
342
+ const meta = (0, index_1.getMetadataForTable)(table.table);
343
+ return {
344
+ op: "and",
345
+ conditions: [c, { alias: c.alias, column: "id", dbType: meta.idDbType, cond: { kind: "not-null" } }],
346
+ };
347
+ }
348
+ return c;
349
+ },
350
+ });
351
+ }
310
352
  // Remove any joins that are not used in the select or conditions
311
353
  function pruneUnusedJoins(parsed, keepAliases) {
312
354
  // Mark all terminal usages
313
355
  const used = new Set();
314
356
  parsed.selects.forEach((s) => used.add(parseAlias(s)));
315
- parsed.conditions.filter((c) => !c.pruneable).forEach((c) => used.add(c.alias));
316
357
  parsed.orderBys.forEach((o) => used.add(o.alias));
317
358
  keepAliases.forEach((a) => used.add(a));
318
- flattenComplexConditions(parsed.complexConditions).forEach((c) => used.add(c.alias));
359
+ flattenComplexConditions(parsed.condition)
360
+ .filter((c) => !c.pruneable)
361
+ .forEach((c) => used.add(c.alias));
319
362
  // Mark all usages via joins
320
363
  for (let i = 0; i < parsed.tables.length; i++) {
321
364
  const t = parsed.tables[i];
@@ -332,14 +375,18 @@ function pruneUnusedJoins(parsed, keepAliases) {
332
375
  }
333
376
  // Now remove any unused joins
334
377
  parsed.tables = parsed.tables.filter((t) => used.has(t.alias));
335
- // And then remove any soft-delete conditions we don't need anymore
336
- parsed.conditions = parsed.conditions.filter((c) => {
337
- const prune = c.pruneable && !parsed.tables.some((t) => t.alias === c.alias);
338
- return !prune;
339
- });
378
+ // And then remove any inline soft-delete conditions we don't need anymore
379
+ if (parsed.condition && parsed.condition.op === "and") {
380
+ parsed.condition.conditions = parsed.condition.conditions.filter((c) => {
381
+ if ("op" in c)
382
+ return c;
383
+ const prune = c.pruneable && !parsed.tables.some((t) => t.alias === c.alias);
384
+ return !prune;
385
+ });
386
+ }
340
387
  }
341
- function flattenComplexConditions(conditions) {
342
- const todo = conditions ? [...conditions] : [];
388
+ function flattenComplexConditions(condition) {
389
+ const todo = condition ? [condition] : [];
343
390
  const result = [];
344
391
  while (todo.length !== 0) {
345
392
  const cc = todo.pop();
@@ -687,22 +734,6 @@ function parseExpression(expression) {
687
734
  }
688
735
  return { op, conditions: valid.filter(index_1.isDefined) };
689
736
  }
690
- /**
691
- * Combines the simple & complex compressions of `query` into a single `ParsedExpressionFilter`.
692
- *
693
- * The two `query.conditions` and `query.complexConditions` separated generally for historical
694
- * reasons in the `parseFindQuery` implementation, but are effectively a single expression of
695
- * `AND`-ing the conditions with the complex conditions.
696
- */
697
- function combineConditions(query) {
698
- if (query.complexConditions) {
699
- return { op: "and", conditions: [...query.conditions, ...query.complexConditions] };
700
- }
701
- else {
702
- return { op: "and", conditions: query.conditions };
703
- }
704
- }
705
- exports.combineConditions = combineConditions;
706
737
  function getTables(query) {
707
738
  let primary;
708
739
  const joins = [];