joist-orm 1.62.0 → 1.63.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.
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=driver.js.map
3
+ //# sourceMappingURL=Driver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Driver.js","sourceRoot":"","sources":["../../../src/drivers/Driver.ts"],"names":[],"mappings":""}
@@ -3,10 +3,11 @@ import { Entity } from "../Entity";
3
3
  import { FilterAndSettings } from "../EntityFilter";
4
4
  import { EntityConstructor, EntityManager } from "../EntityManager";
5
5
  import { EntityMetadata } from "../EntityMetadata";
6
+ import { ParsedFindQuery } from "../QueryParser";
6
7
  import { ManyToManyCollection, OneToManyCollection, OneToOneReferenceImpl } from "../relations";
7
8
  import { JoinRow } from "../relations/ManyToManyCollection";
8
9
  import { JoinRowTodo, Todo } from "../Todo";
9
- import { Driver } from "./driver";
10
+ import { Driver } from "./Driver";
10
11
  export declare class InMemoryDriver implements Driver {
11
12
  private data;
12
13
  private onQuery;
@@ -17,6 +18,10 @@ export declare class InMemoryDriver implements Driver {
17
18
  delete(tableName: string, id: number): void;
18
19
  clear(): void;
19
20
  find<T extends Entity>(em: EntityManager, type: EntityConstructor<T>, queries: readonly FilterAndSettings<T>[]): Promise<unknown[][]>;
21
+ executeFind(em: EntityManager, parsed: ParsedFindQuery, settings: {
22
+ limit?: number;
23
+ offset?: number;
24
+ }): Promise<any[]>;
20
25
  assignNewIds(em: EntityManager, todos: Record<string, Todo>): Promise<void>;
21
26
  flushEntities(em: EntityManager, todos: Record<string, Todo>): Promise<void>;
22
27
  flushJoinTables(em: EntityManager, joinRows: Record<string, JoinRowTodo>): Promise<void>;
@@ -56,6 +56,9 @@ class InMemoryDriver {
56
56
  return ensureUnderLimit(sorted.slice(offset, offset + (limit ?? sorted.length)));
57
57
  });
58
58
  }
59
+ async executeFind(em, parsed, settings) {
60
+ throw new Error("Not implemented");
61
+ }
59
62
  async assignNewIds(em, todos) {
60
63
  // do our version of assign ids
61
64
  Object.entries(todos).forEach(([_, todo]) => {
@@ -1 +1 @@
1
- {"version":3,"file":"InMemoryDriver.js","sourceRoot":"","sources":["../../../src/drivers/InMemoryDriver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InMemoryDriver.js","sourceRoot":"","sources":["../../../src/drivers/InMemoryDriver.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { Knex } from "knex";
2
- import { Entity, EntityConstructor, EntityManager, EntityMetadata, FilterAndSettings, OneToManyCollection } from "../index";
2
+ import { Entity, EntityConstructor, EntityManager, EntityMetadata, FilterAndSettings, OneToManyCollection, ParsedFindQuery } from "../index";
3
3
  import { ManyToManyCollection, OneToOneReferenceImpl } from "../relations";
4
4
  import { JoinRow } from "../relations/ManyToManyCollection";
5
5
  import { JoinRowTodo, Todo } from "../Todo";
6
- import { Driver } from "./driver";
6
+ import { Driver } from "./Driver";
7
7
  import { IdAssigner } from "./IdAssigner";
8
8
  export interface PostgresDriverOpts {
9
9
  idAssigner?: IdAssigner;
@@ -33,6 +33,10 @@ export declare class PostgresDriver implements Driver {
33
33
  findOneToMany<T extends Entity, U extends Entity>(em: EntityManager, collection: OneToManyCollection<T, U>, keys: readonly string[]): Promise<U[]>;
34
34
  loadOneToOne<T extends Entity, U extends Entity>(em: EntityManager, reference: OneToOneReferenceImpl<T, U>, untaggedIds: readonly string[]): Promise<unknown[]>;
35
35
  find<T extends Entity>(em: EntityManager, type: EntityConstructor<T>, queries: FilterAndSettings<T>[]): Promise<unknown[][]>;
36
+ executeFind(em: EntityManager, parsed: ParsedFindQuery, settings: {
37
+ limit?: number;
38
+ offset?: number;
39
+ }): Promise<any[]>;
36
40
  transaction<T>(em: EntityManager, fn: (txn: Knex.Transaction) => Promise<T>, isolationLevel?: "serializable"): Promise<T>;
37
41
  assignNewIds(em: EntityManager, todos: Record<string, Todo>): Promise<void>;
38
42
  flushEntities(em: EntityManager, todos: Record<string, Todo>): Promise<void>;
@@ -4,6 +4,7 @@ exports.needsClassPerTableJoins = exports.PostgresDriver = void 0;
4
4
  const findDataLoader_1 = require("../dataloaders/findDataLoader");
5
5
  const index_1 = require("../index");
6
6
  const utils_1 = require("../utils");
7
+ const buildKnexQuery_1 = require("./buildKnexQuery");
7
8
  const IdAssigner_1 = require("./IdAssigner");
8
9
  let lastNow = new Date();
9
10
  /**
@@ -182,6 +183,10 @@ class PostgresDriver {
182
183
  });
183
184
  return result;
184
185
  }
186
+ async executeFind(em, parsed, settings) {
187
+ const knex = this.getMaybeInTxnKnex(em);
188
+ return (0, buildKnexQuery_1.buildKnexQuery)(knex, parsed, settings);
189
+ }
185
190
  async transaction(em, fn, isolationLevel) {
186
191
  const knex = this.getMaybeInTxnKnex(em);
187
192
  const alreadyInTxn = "commit" in knex;
@@ -473,6 +478,7 @@ function groupEntitiesByTable(entities) {
473
478
  });
474
479
  return [...entitiesByType.entries()];
475
480
  }
481
+ // We should eventually delete this and have all callers use `ParsedFindQuery`
476
482
  function addTablePerClassJoinsAndClassTag(knex, meta, q, mainAlias = "b") {
477
483
  // When `.load(Publisher)` is called, join in sub-tables like `SmallPublisher` and `LargePublisher`
478
484
  meta.subTypes.forEach((st, i) => {
@@ -1 +1 @@
1
- {"version":3,"file":"PostgresDriver.js","sourceRoot":"","sources":["../../../src/drivers/PostgresDriver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PostgresDriver.js","sourceRoot":"","sources":["../../../src/drivers/PostgresDriver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { Knex } from "knex";
2
+ import { ParsedFindQuery } from "../QueryParser";
3
+ import QueryBuilder = Knex.QueryBuilder;
4
+ /**
5
+ * Transforms `ParsedFindQuery` into a Knex query.
6
+ *
7
+ * In theory this should be implemented within each Driver, because it's generally
8
+ * a private API, but:
9
+ *
10
+ * a) Multiple drivers will likely be based on Knex, and
11
+ * b) We've already leaked the `QueryBuilder.ts` `buildQuery` API for letting Joist
12
+ * do the boilerplate joins/conditions, and then letting the user had more as needed.
13
+ */
14
+ export declare function buildKnexQuery(knex: Knex, parsed: ParsedFindQuery, settings: {
15
+ limit?: number;
16
+ offset?: number;
17
+ }): QueryBuilder<{}, unknown[]>;
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildKnexQuery = void 0;
4
+ const EntityGraphQLFilter_1 = require("../EntityGraphQLFilter");
5
+ const EntityManager_1 = require("../EntityManager");
6
+ const utils_1 = require("../utils");
7
+ /**
8
+ * Transforms `ParsedFindQuery` into a Knex query.
9
+ *
10
+ * In theory this should be implemented within each Driver, because it's generally
11
+ * a private API, but:
12
+ *
13
+ * a) Multiple drivers will likely be based on Knex, and
14
+ * b) We've already leaked the `QueryBuilder.ts` `buildQuery` API for letting Joist
15
+ * do the boilerplate joins/conditions, and then letting the user had more as needed.
16
+ */
17
+ function buildKnexQuery(knex, parsed, settings) {
18
+ const { limit, offset } = settings;
19
+ // If we're doing o2m joins, add a `DISTINCT` clause to avoid duplicates
20
+ const needsDistinct = parsed.tables.some((t) => t.join === "outer" && t.distinct !== false);
21
+ const primary = parsed.tables.find((t) => t.join === "primary");
22
+ let query = knex.from(`${primary.table} AS ${primary.alias}`);
23
+ parsed.selects.forEach((s, i) => {
24
+ const maybeDistinct = i === 0 && needsDistinct ? "distinct " : "";
25
+ query.select(knex.raw(`${maybeDistinct}${s}`));
26
+ });
27
+ parsed.tables.forEach((t) => {
28
+ switch (t.join) {
29
+ case "inner":
30
+ query.join(`${t.table} AS ${t.alias}`, t.col1, t.col2);
31
+ break;
32
+ case "outer":
33
+ query.leftOuterJoin(`${t.table} AS ${t.alias}`, t.col1, t.col2);
34
+ break;
35
+ case "primary":
36
+ // ignore
37
+ break;
38
+ default:
39
+ (0, utils_1.assertNever)(t);
40
+ }
41
+ });
42
+ parsed.conditions.forEach((c) => {
43
+ addColumnCondition(query, c);
44
+ });
45
+ parsed.complexConditions &&
46
+ parsed.complexConditions.forEach((c) => {
47
+ addComplexCondition(query, c);
48
+ });
49
+ parsed.orderBys &&
50
+ parsed.orderBys.forEach(({ alias, column, order }) => {
51
+ // If we're doing "select distinct" for o2m joins, then all order bys must be selects
52
+ if (needsDistinct) {
53
+ query.select(`${alias}.${column}`);
54
+ }
55
+ query.orderBy(`${alias}.${column}`, order);
56
+ });
57
+ // Even if they already added orders, add id as the last one to get deterministic output
58
+ query.orderBy(`${primary.alias}.id`);
59
+ query.limit(limit || EntityManager_1.entityLimit);
60
+ if (offset) {
61
+ query.offset(offset);
62
+ }
63
+ return query;
64
+ }
65
+ exports.buildKnexQuery = buildKnexQuery;
66
+ function addComplexCondition(query, complex) {
67
+ query.where((q) => {
68
+ const op = complex.op === "and" ? "andWhere" : "orWhere";
69
+ complex.conditions.forEach((c) => {
70
+ if ("op" in c) {
71
+ q[op]((q) => addComplexCondition(q, c));
72
+ }
73
+ else {
74
+ q[op]((q) => addColumnCondition(q, c));
75
+ }
76
+ });
77
+ });
78
+ }
79
+ function addColumnCondition(query, cc) {
80
+ const { alias, column, cond } = cc;
81
+ const columnName = `${alias}.${column}`;
82
+ switch (cond.kind) {
83
+ case "eq":
84
+ case "ne":
85
+ case "gte":
86
+ case "gt":
87
+ case "lte":
88
+ case "lt":
89
+ case "like":
90
+ case "ilike":
91
+ const fn = EntityGraphQLFilter_1.opToFn[cond.kind] ?? (0, utils_1.fail)(`Invalid operator ${cond.kind}`);
92
+ query.where(columnName, fn, cond.value);
93
+ break;
94
+ case "is-null":
95
+ query.whereNull(columnName);
96
+ break;
97
+ case "not-null":
98
+ query.whereNotNull(columnName);
99
+ break;
100
+ case "in":
101
+ query.whereIn(columnName, cond.value);
102
+ break;
103
+ case "nin":
104
+ query.whereNotIn(columnName, cond.value);
105
+ break;
106
+ case "@>":
107
+ query.where(columnName, "@>", cond.value);
108
+ break;
109
+ case "between":
110
+ const [min, max] = cond.value;
111
+ query.where(columnName, ">=", min);
112
+ query.where(columnName, "<=", max);
113
+ break;
114
+ default:
115
+ (0, utils_1.assertNever)(cond);
116
+ }
117
+ }
118
+ //# sourceMappingURL=buildKnexQuery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildKnexQuery.js","sourceRoot":"","sources":["../../../src/drivers/buildKnexQuery.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export * from "./driver";
1
+ export * from "./Driver";
2
2
  export * from "./IdAssigner";
3
3
  export * from "./InMemoryDriver";
4
4
  export * from "./PostgresDriver";
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./driver"), exports);
17
+ __exportStar(require("./Driver"), exports);
18
18
  __exportStar(require("./IdAssigner"), exports);
19
19
  __exportStar(require("./InMemoryDriver"), exports);
20
20
  __exportStar(require("./PostgresDriver"), exports);