neoorm 0.3.0 → 0.3.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.
Files changed (68) hide show
  1. package/dist/runtime/client.d.ts +11 -3
  2. package/dist/runtime/client.d.ts.map +1 -1
  3. package/dist/runtime/client.js +9 -2
  4. package/dist/runtime/client.js.map +1 -1
  5. package/dist/runtime/errors.d.ts +1 -1
  6. package/dist/runtime/errors.d.ts.map +1 -1
  7. package/dist/runtime/errors.js +1 -0
  8. package/dist/runtime/errors.js.map +1 -1
  9. package/dist/runtime/executor.d.ts +5 -0
  10. package/dist/runtime/executor.d.ts.map +1 -1
  11. package/dist/runtime/executor.js +14 -0
  12. package/dist/runtime/executor.js.map +1 -1
  13. package/dist/runtime/pg-error.d.ts +1 -1
  14. package/dist/runtime/pg-error.d.ts.map +1 -1
  15. package/dist/runtime/pg-error.js +6 -1
  16. package/dist/runtime/pg-error.js.map +1 -1
  17. package/dist/runtime/query/aggregate.js +1 -1
  18. package/dist/runtime/query/aggregate.js.map +1 -1
  19. package/dist/runtime/query/compile.d.ts +15 -2
  20. package/dist/runtime/query/compile.d.ts.map +1 -1
  21. package/dist/runtime/query/compile.js +102 -7
  22. package/dist/runtime/query/compile.js.map +1 -1
  23. package/dist/runtime/query/create.d.ts.map +1 -1
  24. package/dist/runtime/query/create.js +28 -2
  25. package/dist/runtime/query/create.js.map +1 -1
  26. package/dist/runtime/query/cursor.d.ts.map +1 -1
  27. package/dist/runtime/query/cursor.js +3 -1
  28. package/dist/runtime/query/cursor.js.map +1 -1
  29. package/dist/runtime/query/delete.d.ts +1 -1
  30. package/dist/runtime/query/delete.d.ts.map +1 -1
  31. package/dist/runtime/query/delete.js +12 -10
  32. package/dist/runtime/query/delete.js.map +1 -1
  33. package/dist/runtime/query/execute.d.ts +7 -1
  34. package/dist/runtime/query/execute.d.ts.map +1 -1
  35. package/dist/runtime/query/execute.js +15 -1
  36. package/dist/runtime/query/execute.js.map +1 -1
  37. package/dist/runtime/query/find-or-create.d.ts +17 -0
  38. package/dist/runtime/query/find-or-create.d.ts.map +1 -0
  39. package/dist/runtime/query/find-or-create.js +41 -0
  40. package/dist/runtime/query/find-or-create.js.map +1 -0
  41. package/dist/runtime/query/find.d.ts +1 -1
  42. package/dist/runtime/query/find.d.ts.map +1 -1
  43. package/dist/runtime/query/find.js +242 -15
  44. package/dist/runtime/query/find.js.map +1 -1
  45. package/dist/runtime/query/primary-key.d.ts +2 -1
  46. package/dist/runtime/query/primary-key.d.ts.map +1 -1
  47. package/dist/runtime/query/primary-key.js +24 -22
  48. package/dist/runtime/query/primary-key.js.map +1 -1
  49. package/dist/runtime/query/relation-writes.d.ts.map +1 -1
  50. package/dist/runtime/query/relation-writes.js +13 -31
  51. package/dist/runtime/query/relation-writes.js.map +1 -1
  52. package/dist/runtime/query/table-index.d.ts +13 -0
  53. package/dist/runtime/query/table-index.d.ts.map +1 -0
  54. package/dist/runtime/query/table-index.js +37 -0
  55. package/dist/runtime/query/table-index.js.map +1 -0
  56. package/dist/runtime/query/update.d.ts +1 -1
  57. package/dist/runtime/query/update.d.ts.map +1 -1
  58. package/dist/runtime/query/update.js +22 -9
  59. package/dist/runtime/query/update.js.map +1 -1
  60. package/dist/runtime/types.d.ts +8 -4
  61. package/dist/runtime/types.d.ts.map +1 -1
  62. package/dist/schema/index.d.ts +1 -1
  63. package/dist/schema/index.d.ts.map +1 -1
  64. package/dist/schema/relation-types.d.ts +1 -0
  65. package/dist/schema/relation-types.d.ts.map +1 -1
  66. package/dist/schema/types.d.ts +9 -0
  67. package/dist/schema/types.d.ts.map +1 -1
  68. package/package.json +1 -1
@@ -26,7 +26,7 @@ export type TableRepository = {
26
26
  where: Record<string, unknown>;
27
27
  with?: Record<string, WithInput>;
28
28
  }): Promise<Record<string, unknown> | null>;
29
- findById(id: string, args?: {
29
+ findById(id: string | Record<string, unknown>, args?: {
30
30
  with?: Record<string, WithInput>;
31
31
  }): Promise<Record<string, unknown> | null>;
32
32
  create(args: {
@@ -45,6 +45,14 @@ export type TableRepository = {
45
45
  update: Record<string, unknown>;
46
46
  with?: Record<string, WithInput>;
47
47
  }): Promise<Record<string, unknown>>;
48
+ findOrCreate(args: {
49
+ where: Record<string, unknown>;
50
+ create: Record<string, unknown>;
51
+ with?: Record<string, WithInput>;
52
+ }): Promise<{
53
+ record: Record<string, unknown>;
54
+ created: boolean;
55
+ }>;
48
56
  update(args: {
49
57
  where: Record<string, unknown>;
50
58
  data: Record<string, unknown>;
@@ -54,7 +62,7 @@ export type TableRepository = {
54
62
  where?: Record<string, unknown>;
55
63
  data: Record<string, unknown>;
56
64
  }): Promise<number>;
57
- updateById(id: string, args: {
65
+ updateById(id: string | Record<string, unknown>, args: {
58
66
  data: Record<string, unknown>;
59
67
  with?: Record<string, WithInput>;
60
68
  }): Promise<Record<string, unknown> | null>;
@@ -76,7 +84,7 @@ export type TableRepository = {
76
84
  _min?: Record<string, true>;
77
85
  _max?: Record<string, true>;
78
86
  }): Promise<Record<string, unknown>>;
79
- deleteById(id: string): Promise<Record<string, unknown> | null>;
87
+ deleteById(id: string | Record<string, unknown>): Promise<Record<string, unknown> | null>;
80
88
  paginate(args: {
81
89
  where?: Record<string, unknown>;
82
90
  orderBy: Record<string, string>;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/runtime/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/runtime/client.ts"],"names":[],"mappings":"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"}
@@ -6,10 +6,12 @@ import { aggregateRecords } from "./query/aggregate.js";
6
6
  import { countRecords, findUnique } from "./query/count.js";
7
7
  import { createManyAndReturnRecords, createManyRecords, createRecord, } from "./query/create.js";
8
8
  import { deleteById, deleteManyRecords, deleteRecord } from "./query/delete.js";
9
+ import { buildManifestIndex } from "./query/table-index.js";
9
10
  import { runQuery } from "./query/execute.js";
10
11
  import { findById, findFirst, findMany } from "./query/find.js";
11
12
  import { paginateRecords } from "./query/paginate.js";
12
13
  import { updateById, updateManyRecords, updateRecord } from "./query/update.js";
14
+ import { findOrCreateRecord } from "./query/find-or-create.js";
13
15
  import { upsertRecord } from "./query/upsert.js";
14
16
  function createTableRepository(executor, runtime, accessor) {
15
17
  return {
@@ -21,6 +23,7 @@ function createTableRepository(executor, runtime, accessor) {
21
23
  createMany: (args) => createManyRecords(executor, runtime, accessor, args),
22
24
  createManyAndReturn: (args) => createManyAndReturnRecords(executor, runtime, accessor, args),
23
25
  upsert: (args) => upsertRecord(executor, runtime, accessor, args),
26
+ findOrCreate: (args) => findOrCreateRecord(executor, runtime, accessor, args),
24
27
  update: (args) => updateRecord(executor, runtime, accessor, args),
25
28
  updateMany: (args) => updateManyRecords(executor, runtime, accessor, args),
26
29
  updateById: (id, args) => updateById(executor, runtime, accessor, id, args),
@@ -83,8 +86,10 @@ export function createNeoOrmClient(manifest, connectionStringOrOptions) {
83
86
  const pool = new Pool({ connectionString: url });
84
87
  const schema = resolvePgSchemaName(options.schema);
85
88
  const executor = createExecutor(pool);
89
+ const appliedManifest = applySchemaToManifest(manifest, schema);
86
90
  const runtime = {
87
- manifest: applySchemaToManifest(manifest, schema),
91
+ manifest: appliedManifest,
92
+ tableIndex: buildManifestIndex(appliedManifest),
88
93
  schema,
89
94
  pool,
90
95
  ...(options.migrationsDir !== undefined
@@ -99,8 +104,10 @@ export function createNeoOrmClientFromPool(manifest, pool, options) {
99
104
  ensurePlugins(manifest);
100
105
  const schema = resolvePgSchemaName(options?.schema);
101
106
  const executor = createExecutor(pool);
107
+ const appliedManifest = applySchemaToManifest(manifest, schema);
102
108
  const runtime = {
103
- manifest: applySchemaToManifest(manifest, schema),
109
+ manifest: appliedManifest,
110
+ tableIndex: buildManifestIndex(appliedManifest),
104
111
  schema,
105
112
  pool,
106
113
  ...(options?.migrationsDir !== undefined
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/runtime/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/runtime/client.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export type QueryOperation = "select" | "insert" | "update" | "delete" | "upsert" | "raw";
1
+ export type QueryOperation = "select" | "insert" | "update" | "delete" | "upsert" | "findOrCreate" | "raw";
2
2
  export type QueryErrorContext = {
3
3
  operation: QueryOperation;
4
4
  tableAccessor?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/runtime/errors.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GACvB,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,KAAK,CAAC;AAET,MAAM,MAAM,iBAAiB,GAAG;IAC/B,SAAS,EAAE,cAAc,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAqBF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,CA+CnE;AAED,qBAAa,gBAAiB,SAAQ,KAAK;IAC1C,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACpC,SAAkB,KAAK,EAAE,OAAO,CAAC;gBAErB,OAAO,EAAE,iBAAiB,EAAE,KAAK,CAAC,EAAE,OAAO;CAMvD"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/runtime/errors.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GACvB,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,cAAc,GACd,KAAK,CAAC;AAET,MAAM,MAAM,iBAAiB,GAAG;IAC/B,SAAS,EAAE,cAAc,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAsBF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,CA+CnE;AAED,qBAAa,gBAAiB,SAAQ,KAAK;IAC1C,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACpC,SAAkB,KAAK,EAAE,OAAO,CAAC;gBAErB,OAAO,EAAE,iBAAiB,EAAE,KAAK,CAAC,EAAE,OAAO;CAMvD"}
@@ -4,6 +4,7 @@ const OPERATION_LABEL = {
4
4
  update: "Update",
5
5
  delete: "Delete",
6
6
  upsert: "Upsert",
7
+ findOrCreate: "Find or create",
7
8
  raw: "Query",
8
9
  };
9
10
  function operationTarget(context) {
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/runtime/errors.ts"],"names":[],"mappings":"AAqBA,MAAM,eAAe,GAAmC;IACvD,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,OAAO;CACZ,CAAC;AAEF,SAAS,eAAe,CAAC,OAA0B;IAClD,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;QAC3B,OAAO,IAAI,OAAO,CAAC,aAAa,GAAG,CAAC;IACrC,CAAC;IACD,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QAC1B,OAAO,IAAI,OAAO,CAAC,YAAY,GAAG,CAAC;IACpC,CAAC;IACD,OAAO,OAAO,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,OAA0B;IAC1D,MAAM,KAAK,GAAG,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,gBAAgB,CAAC;IAClD,MAAM,KAAK,GAAG,CAAC,GAAG,KAAK,OAAO,MAAM,YAAY,MAAM,EAAE,CAAC,CAAC;IAE1D,IAAI,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QACnD,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,OAAO,CAAC,aAAa;YACxB,KAAK,CAAC,IAAI,CAAC,aAAa,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;QAClD,IAAI,OAAO,CAAC,YAAY;YAAE,KAAK,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,YAAY,GAAG,CAAC,CAAC;QACvE,KAAK,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;QACnD,IACC,OAAO,CAAC,YAAY;YACpB,OAAO,CAAC,aAAa;YACrB,OAAO,CAAC,YAAY,KAAK,OAAO,CAAC,aAAa,EAC7C,CAAC;YACF,KAAK,CAAC,IAAI,CACT,aAAa,OAAO,CAAC,YAAY,WAAW,OAAO,CAAC,aAAa,IAAI,CACrE,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YACjC,KAAK,CAAC,IAAI,CAAC,aAAa,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;QACjD,CAAC;aAAM,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,mBAAmB,OAAO,CAAC,aAAa,GAAG,CAAC,CAAC;QACzD,CAAC;IACF,CAAC;IAED,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,iBAAiB,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,sBAAsB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QACjB,KAAK,CAAC,IAAI,CAAC,UAAU,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,gBAAgB,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC;AAED,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IACjC,OAAO,CAAoB;IAClB,KAAK,CAAU;IAEjC,YAAY,OAA0B,EAAE,KAAe;QACtD,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;QACjC,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACpB,CAAC;CACD"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/runtime/errors.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,15 @@
1
1
  import type { Pool } from "pg";
2
2
  import type { CompiledQuery } from "../dialect/types.js";
3
3
  import type { TransactionOptions } from "./types.js";
4
+ export type ExecuteResult<T = Record<string, unknown>> = {
5
+ rows: T[];
6
+ rowCount: number;
7
+ };
4
8
  export type Executor = {
5
9
  readonly inTransaction?: boolean;
6
10
  query<T = Record<string, unknown>>(text: string, params?: unknown[]): Promise<T[]>;
7
11
  queryOne<T = Record<string, unknown>>(text: string, params?: unknown[]): Promise<T | null>;
12
+ execute<T = Record<string, unknown>>(text: string, params?: unknown[]): Promise<ExecuteResult<T>>;
8
13
  transaction<T>(fn: (tx: Executor) => Promise<T>, options?: TransactionOptions): Promise<T>;
9
14
  };
10
15
  export declare function buildBeginSql(options?: TransactionOptions): string;
@@ -1 +1 @@
1
- {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/runtime/executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAA2B,MAAM,IAAI,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD,MAAM,MAAM,QAAQ,GAAG;IACtB,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,OAAO,EAAE,GAChB,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IAChB,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,OAAO,EAAE,GAChB,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACrB,WAAW,CAAC,CAAC,EACZ,EAAE,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,EAChC,OAAO,CAAC,EAAE,kBAAkB,GAC1B,OAAO,CAAC,CAAC,CAAC,CAAC;CACd,CAAC;AAYF,wBAAgB,aAAa,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAclE;AAWD,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAErD;AAaD,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,QAAQ,CAuCnD;AAgDD,wBAAgB,YAAY,CAC3B,KAAK,EAAE,oBAAoB,EAC3B,MAAM,EAAE,OAAO,EAAE,GACf,aAAa,CAaf"}
1
+ {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/runtime/executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAA2B,MAAM,IAAI,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI;IACxD,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,QAAQ,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACtB,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,OAAO,EAAE,GAChB,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IAChB,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,OAAO,EAAE,GAChB,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACrB,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,OAAO,EAAE,GAChB,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7B,WAAW,CAAC,CAAC,EACZ,EAAE,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,EAChC,OAAO,CAAC,EAAE,kBAAkB,GAC1B,OAAO,CAAC,CAAC,CAAC,CAAC;CACd,CAAC;AAYF,wBAAgB,aAAa,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAclE;AAoBD,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAErD;AAaD,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,QAAQ,CA+CnD;AAwDD,wBAAgB,YAAY,CAC3B,KAAK,EAAE,oBAAoB,EAC3B,MAAM,EAAE,OAAO,EAAE,GACf,aAAa,CAaf"}
@@ -17,6 +17,12 @@ export function buildBeginSql(options) {
17
17
  function rowsFromResult(result) {
18
18
  return result.rows;
19
19
  }
20
+ function executeFromResult(result) {
21
+ return {
22
+ rows: rowsFromResult(result),
23
+ rowCount: result.rowCount ?? 0,
24
+ };
25
+ }
20
26
  export function buildSavepointName(id) {
21
27
  return `neoorm_sp_${id}`;
22
28
  }
@@ -37,6 +43,10 @@ export function createExecutor(pool) {
37
43
  const rows = rowsFromResult(result);
38
44
  return rows[0] ?? null;
39
45
  },
46
+ async execute(text, params = []) {
47
+ const result = await pool.query(text, params);
48
+ return executeFromResult(result);
49
+ },
40
50
  async transaction(fn, options) {
41
51
  const client = await pool.connect();
42
52
  try {
@@ -70,6 +80,10 @@ function createClientExecutor(state) {
70
80
  const rows = rowsFromResult(result);
71
81
  return rows[0] ?? null;
72
82
  },
83
+ async execute(text, params = []) {
84
+ const result = await client.query(text, params);
85
+ return executeFromResult(result);
86
+ },
73
87
  async transaction(fn, options) {
74
88
  assertNoSavepointOptions(options);
75
89
  const savepointId = ++state.savepointCounter;
@@ -1 +1 @@
1
- {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../src/runtime/executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../src/runtime/executor.ts"],"names":[],"mappings":"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"}
@@ -15,5 +15,5 @@ export declare function isSchemaDriftPgCode(code: string | undefined): boolean;
15
15
  export declare function enrichPgError(err: PgErrorLike, manifest: Manifest, base: Pick<QueryErrorContext, "operation" | "sql"> & {
16
16
  tableAccessor?: string;
17
17
  }): QueryErrorContext;
18
- export declare function emptyReturningContext(operation: Extract<QueryOperation, "insert" | "upsert">, manifest: Manifest, tableAccessor: string, sql: string): QueryErrorContext;
18
+ export declare function emptyReturningContext(operation: Extract<QueryOperation, "insert" | "upsert" | "findOrCreate">, manifest: Manifest, tableAccessor: string, sql: string): QueryErrorContext;
19
19
  //# sourceMappingURL=pg-error.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pg-error.d.ts","sourceRoot":"","sources":["../../src/runtime/pg-error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAiB,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAErE,MAAM,MAAM,WAAW,GAAG;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,WAAW,CAO1D;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,SAAM,GAAG,MAAM,CAM7D;AAiED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAErE;AAED,wBAAgB,aAAa,CAC5B,GAAG,EAAE,WAAW,EAChB,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,IAAI,CAAC,iBAAiB,EAAE,WAAW,GAAG,KAAK,CAAC,GAAG;IACpD,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB,GACC,iBAAiB,CA6CnB;AAED,wBAAgB,qBAAqB,CACpC,SAAS,EAAE,OAAO,CAAC,cAAc,EAAE,QAAQ,GAAG,QAAQ,CAAC,EACvD,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,MAAM,EACrB,GAAG,EAAE,MAAM,GACT,iBAAiB,CAYnB"}
1
+ {"version":3,"file":"pg-error.d.ts","sourceRoot":"","sources":["../../src/runtime/pg-error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAiB,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAErE,MAAM,MAAM,WAAW,GAAG;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,WAAW,CAO1D;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,SAAM,GAAG,MAAM,CAM7D;AAiED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAErE;AAED,wBAAgB,aAAa,CAC5B,GAAG,EAAE,WAAW,EAChB,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,IAAI,CAAC,iBAAiB,EAAE,WAAW,GAAG,KAAK,CAAC,GAAG;IACpD,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB,GACC,iBAAiB,CA6CnB;AAED,wBAAgB,qBAAqB,CACpC,SAAS,EAAE,OAAO,CAAC,cAAc,EAAE,QAAQ,GAAG,QAAQ,GAAG,cAAc,CAAC,EACxE,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,MAAM,EACrB,GAAG,EAAE,MAAM,GACT,iBAAiB,CAkBnB"}
@@ -98,11 +98,16 @@ export function enrichPgError(err, manifest, base) {
98
98
  }
99
99
  export function emptyReturningContext(operation, manifest, tableAccessor, sql) {
100
100
  const table = manifest.tables[tableAccessor];
101
+ const operationLabel = operation === "insert"
102
+ ? "INSERT"
103
+ : operation === "upsert"
104
+ ? "UPSERT"
105
+ : "FIND OR CREATE";
101
106
  const context = {
102
107
  operation,
103
108
  tableAccessor,
104
109
  sql: truncateSql(sql),
105
- detail: `${operation === "insert" ? "INSERT" : "UPSERT"} … RETURNING returned no row`,
110
+ detail: `${operationLabel} … RETURNING returned no row`,
106
111
  };
107
112
  if (table?.sqlName !== undefined) {
108
113
  context.tableSqlName = table.sqlName;
@@ -1 +1 @@
1
- {"version":3,"file":"pg-error.js","sourceRoot":"","sources":["../../src/runtime/pg-error.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pg-error.js","sourceRoot":"","sources":["../../src/runtime/pg-error.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import { runQueryOne } from "./execute.js";
4
4
  function parseAggregateRow(row, selectors) {
5
5
  const result = {};
6
6
  if (selectors._count) {
7
- result["_count"] = row["_count"] ?? 0;
7
+ result["_count"] = row["__count"] ?? 0;
8
8
  }
9
9
  for (const key of ["_avg", "_sum", "_min", "_max"]) {
10
10
  const fieldMap = selectors[key];
@@ -1 +1 @@
1
- {"version":3,"file":"aggregate.js","sourceRoot":"","sources":["../../../src/runtime/query/aggregate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EAEN,mBAAmB,EACnB,YAAY,GACZ,MAAM,cAAc,CAAC;AACtB,OAAO,EAAqB,WAAW,EAAE,MAAM,cAAc,CAAC;AAE9D,SAAS,iBAAiB,CACzB,GAA4B,EAC5B,SAA6B;IAE7B,MAAM,MAAM,GAA4B,EAAE,CAAC;IAE3C,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;QACtB,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAU,EAAE,CAAC;QAC7D,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,CAAC,QAAQ;YAAE,SAAS;QACxB,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7C,MAAM,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,IAAI,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC;QACpD,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;QACtB,CAAC;IACF,CAAC;IAED,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACrC,QAAkB,EAClB,OAAqB,EACrB,aAAqB,EACrB,IAOC;IAED,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAC7B,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC7C,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,aAAa,EAAE,CAAC,CAAC;IAE/D,MAAM,SAAS,GAAuB,EAAE,CAAC;IACzC,IAAI,IAAI,CAAC,MAAM;QAAE,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC;IACzC,IAAI,IAAI,CAAC,IAAI;QAAE,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IAC1C,IAAI,IAAI,CAAC,IAAI;QAAE,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IAC1C,IAAI,IAAI,CAAC,IAAI;QAAE,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IAC1C,IAAI,IAAI,CAAC,IAAI;QAAE,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IAE1C,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,YAAY,CAC7C,QAAQ,EACR,KAAK,EACL,IAAI,CAAC,KAAK,EACV,eAAe,CACf,CAAC;IACF,MAAM,KAAK,GAAG,mBAAmB,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC9D,MAAM,GAAG,GAAG,MAAM,WAAW,CAC5B,QAAQ,EACR,OAAO,EACP,EAAE,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE,EACtC,KAAK,EACL,MAAM,CACN,CAAC;IAEF,OAAO,iBAAiB,CAAC,GAAG,IAAI,EAAE,EAAE,SAAS,CAAC,CAAC;AAChD,CAAC"}
1
+ {"version":3,"file":"aggregate.js","sourceRoot":"","sources":["../../../src/runtime/query/aggregate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EAEN,mBAAmB,EACnB,YAAY,GACZ,MAAM,cAAc,CAAC;AACtB,OAAO,EAAqB,WAAW,EAAE,MAAM,cAAc,CAAC;AAE9D,SAAS,iBAAiB,CACzB,GAA4B,EAC5B,SAA6B;IAE7B,MAAM,MAAM,GAA4B,EAAE,CAAC;IAE3C,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;QACtB,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAU,EAAE,CAAC;QAC7D,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,CAAC,QAAQ;YAAE,SAAS;QACxB,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7C,MAAM,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,IAAI,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC;QACpD,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;QACtB,CAAC;IACF,CAAC;IAED,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACrC,QAAkB,EAClB,OAAqB,EACrB,aAAqB,EACrB,IAOC;IAED,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAC7B,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC7C,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,aAAa,EAAE,CAAC,CAAC;IAE/D,MAAM,SAAS,GAAuB,EAAE,CAAC;IACzC,IAAI,IAAI,CAAC,MAAM;QAAE,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC;IACzC,IAAI,IAAI,CAAC,IAAI;QAAE,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IAC1C,IAAI,IAAI,CAAC,IAAI;QAAE,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IAC1C,IAAI,IAAI,CAAC,IAAI;QAAE,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IAC1C,IAAI,IAAI,CAAC,IAAI;QAAE,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IAE1C,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,YAAY,CAC7C,QAAQ,EACR,KAAK,EACL,IAAI,CAAC,KAAK,EACV,eAAe,CACf,CAAC;IACF,MAAM,KAAK,GAAG,mBAAmB,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC9D,MAAM,GAAG,GAAG,MAAM,WAAW,CAC5B,QAAQ,EACR,OAAO,EACP,EAAE,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE,EACtC,KAAK,EACL,MAAM,CACN,CAAC;IAEF,OAAO,iBAAiB,CAAC,GAAG,IAAI,EAAE,EAAE,SAAS,CAAC,CAAC;AAChD,CAAC"}
@@ -2,14 +2,19 @@ import type { Dialect, Manifest, ManifestColumn, ManifestTable } from "../../dia
2
2
  export type WhereClause = {
3
3
  sql: string;
4
4
  params: unknown[];
5
+ impossible?: boolean;
5
6
  };
6
7
  export declare function serializeColumnValue(col: ManifestColumn, value: unknown): unknown;
7
8
  export declare function compileWhere(manifest: Manifest, table: ManifestTable, where: Record<string, unknown> | undefined, dialect: Dialect, startParamIndex?: number): WhereClause;
8
- export declare function compileOrderBy(table: ManifestTable, orderBy: Record<string, string> | undefined): string;
9
+ export declare function isImpossibleWhereSql(sql: string): boolean;
10
+ export declare function isImpossibleWhere(whereSql: string): boolean;
11
+ export declare function compileOrderBy(table: ManifestTable, orderBy: Record<string, string> | undefined, tableAlias?: string): string;
9
12
  export declare function normalizeSelectColumns(select?: readonly string[] | Record<string, boolean | undefined>): readonly string[] | undefined;
10
13
  export declare function buildSelectColumns(table: ManifestTable, select?: readonly string[]): string;
14
+ export declare function buildQualifiedSelectColumns(table: ManifestTable, select?: readonly string[]): string;
11
15
  export declare function buildFindByIdQuery(table: ManifestTable): string;
12
- export declare function buildFindManyQuery(table: ManifestTable, whereSql: string, orderSql: string, limit?: number, offset?: number, distinctOn?: readonly string[]): string;
16
+ export declare function buildFindAllQuery(table: ManifestTable): string;
17
+ export declare function buildFindManyQuery(table: ManifestTable, whereSql: string, orderSql: string, limit?: number, offset?: number, distinctOn?: readonly string[], extraSelectCols?: string[], joinClauses?: string[]): string;
13
18
  export declare function buildPaginateQuery(table: ManifestTable, whereSql: string, orderSql: string, take: number): string;
14
19
  export declare function buildCountQuery(table: ManifestTable, whereSql: string): string;
15
20
  export type AggregateSelectors = {
@@ -21,6 +26,8 @@ export type AggregateSelectors = {
21
26
  };
22
27
  export declare function buildAggregateQuery(table: ManifestTable, selectors: AggregateSelectors, whereSql: string): string;
23
28
  export declare function buildUpsertQuery(table: ManifestTable, insertKeys: string[], updateKeys: string[], conflictSqlColumns: readonly string[], exprSets?: string[]): string;
29
+ export declare const FIND_OR_CREATE_FLAG = "__neoorm_created";
30
+ export declare function buildFindOrCreateQuery(table: ManifestTable, insertKeys: string[], conflictSqlColumns: readonly string[], fallbackWhereBody: string): string;
24
31
  export declare function buildInsertQuery(table: ManifestTable, dataKeys: string[]): string;
25
32
  export declare function buildInsertManyValueRows(table: ManifestTable, dataKeys: string[], rows: Array<Array<unknown | undefined>>): {
26
33
  valueRows: string[];
@@ -38,5 +45,11 @@ export declare function dataToSqlValues(table: ManifestTable, data: Record<strin
38
45
  values: unknown[];
39
46
  };
40
47
  export declare function rowToTs(table: ManifestTable, row: Record<string, unknown>): Record<string, unknown>;
48
+ export declare function rowToTsIndexed(index: {
49
+ deserializeColumns: ManifestColumn[];
50
+ }, table: ManifestTable, row: Record<string, unknown>): Record<string, unknown>;
51
+ export declare function rowsToTsIndexed(index: {
52
+ deserializeColumns: ManifestColumn[];
53
+ }, table: ManifestTable, rows: Record<string, unknown>[]): Record<string, unknown>[];
41
54
  export declare function rowsToTs(table: ManifestTable, rows: Record<string, unknown>[]): Record<string, unknown>[];
42
55
  //# sourceMappingURL=compile.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../../src/runtime/query/compile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../../src/runtime/query/compile.ts"],"names":[],"mappings":"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"}
@@ -77,6 +77,15 @@ function compileColumnCondition(col, rawValue, dialect, paramIndex, columnRef) {
77
77
  conditions.push(dialect.whereOperators[operator](sqlCol, nextParamIndex));
78
78
  continue;
79
79
  }
80
+ if (Array.isArray(value) && value.length === 0) {
81
+ if (operator === "in") {
82
+ conditions.push("1=0");
83
+ }
84
+ else if (operator === "notIn") {
85
+ conditions.push("1=1");
86
+ }
87
+ continue;
88
+ }
80
89
  const transform = operatorParamTransform[operator];
81
90
  const paramValue = operator === "in" || operator === "notIn"
82
91
  ? Array.isArray(value)
@@ -266,11 +275,23 @@ export function compileWhere(manifest, table, where, dialect, startParamIndex =
266
275
  return { sql: "", params: [] };
267
276
  }
268
277
  const result = compileWhereNode(manifest, table, where, dialect, startParamIndex);
278
+ const impossible = isImpossibleWhereSql(result.sql);
269
279
  return {
270
280
  sql: result.sql ? `WHERE ${result.sql}` : "",
271
281
  params: result.params,
282
+ ...(impossible ? { impossible: true } : {}),
272
283
  };
273
284
  }
285
+ export function isImpossibleWhereSql(sql) {
286
+ if (!sql)
287
+ return false;
288
+ return /\b1\s*=\s*0\b/.test(sql);
289
+ }
290
+ export function isImpossibleWhere(whereSql) {
291
+ if (!whereSql)
292
+ return false;
293
+ return isImpossibleWhereSql(whereSql.replace(/^WHERE\s+/i, ""));
294
+ }
274
295
  function buildValuePlaceholder(col, paramIndex) {
275
296
  if (!col || col.kind === "fk")
276
297
  return `$${paramIndex}`;
@@ -284,16 +305,17 @@ function buildSetExpression(col, paramIndex) {
284
305
  const sqlCol = quoteIdentifier(col?.sqlName ?? "");
285
306
  return `${sqlCol} = ${buildValuePlaceholder(col, paramIndex)}`;
286
307
  }
287
- export function compileOrderBy(table, orderBy) {
308
+ export function compileOrderBy(table, orderBy, tableAlias) {
288
309
  if (!orderBy || Object.keys(orderBy).length === 0)
289
310
  return "";
311
+ const prefix = tableAlias ? `${quoteIdentifier(tableAlias)}.` : "";
290
312
  const parts = [];
291
313
  for (const [tsKey, direction] of Object.entries(orderBy)) {
292
314
  const col = table.columns.find((c) => c.tsName === tsKey);
293
315
  if (!col)
294
316
  continue;
295
317
  const dir = direction.toUpperCase() === "DESC" ? "DESC" : "ASC";
296
- parts.push(`${quoteIdentifier(col.sqlName)} ${dir}`);
318
+ parts.push(`${prefix}${quoteIdentifier(col.sqlName)} ${dir}`);
297
319
  }
298
320
  return parts.length > 0 ? `ORDER BY ${parts.join(", ")}` : "";
299
321
  }
@@ -322,24 +344,46 @@ export function buildSelectColumns(table, select) {
322
344
  : table.columns;
323
345
  return cols.map((c) => selectExpression(c)).join(", ");
324
346
  }
347
+ export function buildQualifiedSelectColumns(table, select) {
348
+ const ref = tableRef(table);
349
+ const cols = select && select.length > 0
350
+ ? table.columns.filter((c) => select.includes(c.tsName))
351
+ : table.columns;
352
+ return cols.map((c) => `${ref}.${selectExpression(c)}`).join(", ");
353
+ }
325
354
  export function buildFindByIdQuery(table) {
326
355
  const { sqlName } = requireScalarPrimaryKey(table);
327
356
  const sqlCol = quoteIdentifier(sqlName);
328
357
  const selectCols = buildSelectColumns(table);
329
358
  return `SELECT ${selectCols} FROM ${tableRef(table)} WHERE ${sqlCol} = $1`;
330
359
  }
331
- export function buildFindManyQuery(table, whereSql, orderSql, limit, offset, distinctOn) {
332
- const selectCols = buildSelectColumns(table);
360
+ export function buildFindAllQuery(table) {
361
+ return `SELECT ${buildSelectColumns(table)} FROM ${tableRef(table)}`;
362
+ }
363
+ export function buildFindManyQuery(table, whereSql, orderSql, limit, offset, distinctOn, extraSelectCols, joinClauses) {
364
+ const hasJoins = Boolean(joinClauses && joinClauses.length > 0);
365
+ const selectCols = hasJoins
366
+ ? buildQualifiedSelectColumns(table)
367
+ : buildSelectColumns(table);
333
368
  let sql = "SELECT ";
334
369
  if (distinctOn && distinctOn.length > 0) {
335
370
  const distinctCols = distinctOn
336
371
  .map((tsName) => table.columns.find((c) => c.tsName === tsName))
337
372
  .filter((col) => col !== undefined)
338
- .map((col) => quoteIdentifier(col.sqlName))
373
+ .map((col) => hasJoins
374
+ ? `${tableRef(table)}.${quoteIdentifier(col.sqlName)}`
375
+ : quoteIdentifier(col.sqlName))
339
376
  .join(", ");
340
377
  sql += `DISTINCT ON (${distinctCols}) `;
341
378
  }
342
- sql += `${selectCols} FROM ${tableRef(table)}`;
379
+ sql += selectCols;
380
+ if (extraSelectCols && extraSelectCols.length > 0) {
381
+ sql += `, ${extraSelectCols.join(", ")}`;
382
+ }
383
+ sql += ` FROM ${tableRef(table)}`;
384
+ if (joinClauses && joinClauses.length > 0) {
385
+ sql += ` ${joinClauses.join(" ")}`;
386
+ }
343
387
  if (whereSql)
344
388
  sql += ` ${whereSql}`;
345
389
  if (orderSql)
@@ -371,7 +415,7 @@ function aggregateSqlCol(table, tsName) {
371
415
  export function buildAggregateQuery(table, selectors, whereSql) {
372
416
  const parts = [];
373
417
  if (selectors._count) {
374
- parts.push('COUNT(*)::int AS "_count"');
418
+ parts.push('COUNT(*)::int AS "__count"');
375
419
  }
376
420
  for (const colName of Object.keys(selectors._avg ?? {})) {
377
421
  const sqlCol = aggregateSqlCol(table, colName);
@@ -431,6 +475,37 @@ export function buildUpsertQuery(table, insertKeys, updateKeys, conflictSqlColum
431
475
  const allUpdateSets = [...updateSets, ...exprSets];
432
476
  return `INSERT INTO ${tableRef(table)} (${insertCols.join(", ")}) VALUES (${insertPlaceholders}) ON CONFLICT (${conflictCols}) DO UPDATE SET ${allUpdateSets.join(", ")} RETURNING ${selectCols}`;
433
477
  }
478
+ export const FIND_OR_CREATE_FLAG = "__neoorm_created";
479
+ export function buildFindOrCreateQuery(table, insertKeys, conflictSqlColumns, fallbackWhereBody) {
480
+ const insertCols = insertKeys.map((k) => {
481
+ const col = table.columns.find((c) => c.tsName === k);
482
+ return quoteIdentifier(col?.sqlName ?? k);
483
+ });
484
+ const insertPlaceholders = insertKeys
485
+ .map((k, i) => {
486
+ const col = table.columns.find((c) => c.tsName === k);
487
+ return buildValuePlaceholder(col, i + 1);
488
+ })
489
+ .join(", ");
490
+ const selectCols = buildSelectColumns(table);
491
+ const conflictCols = conflictSqlColumns
492
+ .map((c) => quoteIdentifier(c))
493
+ .join(", ");
494
+ const tableSql = tableRef(table);
495
+ const fallbackClause = fallbackWhereBody
496
+ ? ` AND (${fallbackWhereBody})`
497
+ : "";
498
+ return `WITH ins AS (
499
+ INSERT INTO ${tableSql} (${insertCols.join(", ")}) VALUES (${insertPlaceholders})
500
+ ON CONFLICT (${conflictCols}) DO NOTHING
501
+ RETURNING ${selectCols}
502
+ )
503
+ SELECT ${selectCols}, true AS "${FIND_OR_CREATE_FLAG}" FROM ins
504
+ UNION ALL
505
+ SELECT ${selectCols}, false AS "${FIND_OR_CREATE_FLAG}" FROM ${tableSql} t
506
+ WHERE NOT EXISTS (SELECT 1 FROM ins)${fallbackClause}
507
+ LIMIT 1`;
508
+ }
434
509
  export function buildInsertQuery(table, dataKeys) {
435
510
  if (dataKeys.length === 0) {
436
511
  throw new Error("Cannot build INSERT query with no columns");
@@ -569,6 +644,26 @@ export function rowToTs(table, row) {
569
644
  }
570
645
  return result;
571
646
  }
647
+ export function rowToTsIndexed(index, table, row) {
648
+ const result = {};
649
+ for (const col of table.columns) {
650
+ if (col.sqlName in row) {
651
+ result[col.tsName] = row[col.sqlName];
652
+ }
653
+ }
654
+ for (const col of index.deserializeColumns) {
655
+ if (col.sqlName in row) {
656
+ const plugin = getColumnType(col.kind);
657
+ if (plugin?.deserializeValue) {
658
+ result[col.tsName] = plugin.deserializeValue(col, row[col.sqlName]);
659
+ }
660
+ }
661
+ }
662
+ return result;
663
+ }
664
+ export function rowsToTsIndexed(index, table, rows) {
665
+ return rows.map((row) => rowToTsIndexed(index, table, row));
666
+ }
572
667
  export function rowsToTs(table, rows) {
573
668
  return rows.map((row) => rowToTs(table, row));
574
669
  }