drizzle-orm 0.40.0-bbf78ae → 0.40.0-f8a2f3c

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 (216) hide show
  1. package/aws-data-api/pg/driver.cjs +1 -5
  2. package/aws-data-api/pg/driver.cjs.map +1 -1
  3. package/aws-data-api/pg/driver.d.cts +0 -1
  4. package/aws-data-api/pg/driver.d.ts +0 -1
  5. package/aws-data-api/pg/driver.js +1 -5
  6. package/aws-data-api/pg/driver.js.map +1 -1
  7. package/aws-data-api/pg/session.cjs +4 -15
  8. package/aws-data-api/pg/session.cjs.map +1 -1
  9. package/aws-data-api/pg/session.d.cts +3 -13
  10. package/aws-data-api/pg/session.d.ts +3 -13
  11. package/aws-data-api/pg/session.js +4 -15
  12. package/aws-data-api/pg/session.js.map +1 -1
  13. package/bun-sql/driver.cjs +1 -5
  14. package/bun-sql/driver.cjs.map +1 -1
  15. package/bun-sql/driver.js +1 -5
  16. package/bun-sql/driver.js.map +1 -1
  17. package/bun-sql/session.cjs +9 -21
  18. package/bun-sql/session.cjs.map +1 -1
  19. package/bun-sql/session.d.cts +3 -12
  20. package/bun-sql/session.d.ts +3 -12
  21. package/bun-sql/session.js +9 -21
  22. package/bun-sql/session.js.map +1 -1
  23. package/neon-http/driver.cjs +2 -9
  24. package/neon-http/driver.cjs.map +1 -1
  25. package/neon-http/driver.d.cts +0 -2
  26. package/neon-http/driver.d.ts +0 -2
  27. package/neon-http/driver.js +2 -9
  28. package/neon-http/driver.js.map +1 -1
  29. package/neon-http/session.cjs +15 -25
  30. package/neon-http/session.cjs.map +1 -1
  31. package/neon-http/session.d.cts +3 -12
  32. package/neon-http/session.d.ts +3 -12
  33. package/neon-http/session.js +15 -25
  34. package/neon-http/session.js.map +1 -1
  35. package/neon-serverless/driver.cjs +2 -9
  36. package/neon-serverless/driver.cjs.map +1 -1
  37. package/neon-serverless/driver.d.cts +0 -2
  38. package/neon-serverless/driver.d.ts +0 -2
  39. package/neon-serverless/driver.js +2 -9
  40. package/neon-serverless/driver.js.map +1 -1
  41. package/neon-serverless/session.cjs +7 -21
  42. package/neon-serverless/session.cjs.map +1 -1
  43. package/neon-serverless/session.d.cts +3 -12
  44. package/neon-serverless/session.d.ts +3 -12
  45. package/neon-serverless/session.js +7 -21
  46. package/neon-serverless/session.js.map +1 -1
  47. package/node-postgres/driver.cjs +2 -9
  48. package/node-postgres/driver.cjs.map +1 -1
  49. package/node-postgres/driver.d.cts +0 -2
  50. package/node-postgres/driver.d.ts +0 -2
  51. package/node-postgres/driver.js +2 -9
  52. package/node-postgres/driver.js.map +1 -1
  53. package/node-postgres/session.cjs +6 -19
  54. package/node-postgres/session.cjs.map +1 -1
  55. package/node-postgres/session.d.cts +3 -13
  56. package/node-postgres/session.d.ts +3 -13
  57. package/node-postgres/session.js +6 -19
  58. package/node-postgres/session.js.map +1 -1
  59. package/package.json +135 -196
  60. package/pg-core/db.cjs +0 -1
  61. package/pg-core/db.cjs.map +1 -1
  62. package/pg-core/db.d.cts +0 -4
  63. package/pg-core/db.d.ts +0 -4
  64. package/pg-core/db.js +0 -1
  65. package/pg-core/db.js.map +1 -1
  66. package/pg-core/query-builders/delete.cjs +1 -6
  67. package/pg-core/query-builders/delete.cjs.map +1 -1
  68. package/pg-core/query-builders/delete.d.cts +1 -2
  69. package/pg-core/query-builders/delete.d.ts +1 -2
  70. package/pg-core/query-builders/delete.js +1 -6
  71. package/pg-core/query-builders/delete.js.map +1 -1
  72. package/pg-core/query-builders/insert.cjs +1 -6
  73. package/pg-core/query-builders/insert.cjs.map +1 -1
  74. package/pg-core/query-builders/insert.d.cts +1 -2
  75. package/pg-core/query-builders/insert.d.ts +1 -2
  76. package/pg-core/query-builders/insert.js +1 -6
  77. package/pg-core/query-builders/insert.js.map +1 -1
  78. package/pg-core/query-builders/select.cjs +5 -31
  79. package/pg-core/query-builders/select.cjs.map +1 -1
  80. package/pg-core/query-builders/select.d.cts +2 -11
  81. package/pg-core/query-builders/select.d.ts +2 -11
  82. package/pg-core/query-builders/select.js +5 -31
  83. package/pg-core/query-builders/select.js.map +1 -1
  84. package/pg-core/query-builders/select.types.cjs.map +1 -1
  85. package/pg-core/query-builders/select.types.d.cts +0 -7
  86. package/pg-core/query-builders/select.types.d.ts +0 -7
  87. package/pg-core/query-builders/update.cjs +1 -6
  88. package/pg-core/query-builders/update.cjs.map +1 -1
  89. package/pg-core/query-builders/update.d.cts +3 -4
  90. package/pg-core/query-builders/update.d.ts +3 -4
  91. package/pg-core/query-builders/update.js +1 -6
  92. package/pg-core/query-builders/update.js.map +1 -1
  93. package/pg-core/session.cjs +1 -58
  94. package/pg-core/session.cjs.map +1 -1
  95. package/pg-core/session.d.cts +3 -14
  96. package/pg-core/session.d.ts +3 -14
  97. package/pg-core/session.js +2 -59
  98. package/pg-core/session.js.map +1 -1
  99. package/pg-core/utils.cjs +0 -16
  100. package/pg-core/utils.cjs.map +1 -1
  101. package/pg-core/utils.d.cts +4 -8
  102. package/pg-core/utils.d.ts +4 -8
  103. package/pg-core/utils.js +1 -16
  104. package/pg-core/utils.js.map +1 -1
  105. package/pg-proxy/driver.cjs +2 -7
  106. package/pg-proxy/driver.cjs.map +1 -1
  107. package/pg-proxy/driver.js +2 -7
  108. package/pg-proxy/driver.js.map +1 -1
  109. package/pg-proxy/session.cjs +5 -15
  110. package/pg-proxy/session.cjs.map +1 -1
  111. package/pg-proxy/session.d.cts +3 -12
  112. package/pg-proxy/session.d.ts +3 -12
  113. package/pg-proxy/session.js +5 -15
  114. package/pg-proxy/session.js.map +1 -1
  115. package/pglite/driver.cjs +2 -9
  116. package/pglite/driver.cjs.map +1 -1
  117. package/pglite/driver.d.cts +0 -2
  118. package/pglite/driver.d.ts +0 -2
  119. package/pglite/driver.js +2 -9
  120. package/pglite/driver.js.map +1 -1
  121. package/pglite/session.cjs +7 -19
  122. package/pglite/session.cjs.map +1 -1
  123. package/pglite/session.d.cts +3 -12
  124. package/pglite/session.d.ts +3 -12
  125. package/pglite/session.js +7 -19
  126. package/pglite/session.js.map +1 -1
  127. package/postgres-js/driver.cjs +1 -5
  128. package/postgres-js/driver.cjs.map +1 -1
  129. package/postgres-js/driver.js +1 -5
  130. package/postgres-js/driver.js.map +1 -1
  131. package/postgres-js/session.cjs +6 -18
  132. package/postgres-js/session.cjs.map +1 -1
  133. package/postgres-js/session.d.cts +3 -12
  134. package/postgres-js/session.d.ts +3 -12
  135. package/postgres-js/session.js +6 -18
  136. package/postgres-js/session.js.map +1 -1
  137. package/prisma/pg/session.cjs +1 -1
  138. package/prisma/pg/session.cjs.map +1 -1
  139. package/prisma/pg/session.js +1 -1
  140. package/prisma/pg/session.js.map +1 -1
  141. package/query-builders/query-builder.cjs.map +1 -1
  142. package/query-builders/query-builder.d.cts +1 -2
  143. package/query-builders/query-builder.d.ts +1 -2
  144. package/query-builders/query-builder.js.map +1 -1
  145. package/sql/sql.cjs +0 -7
  146. package/sql/sql.cjs.map +1 -1
  147. package/sql/sql.js +0 -7
  148. package/sql/sql.js.map +1 -1
  149. package/subquery.cjs +3 -4
  150. package/subquery.cjs.map +1 -1
  151. package/subquery.d.cts +1 -2
  152. package/subquery.d.ts +1 -2
  153. package/subquery.js +3 -4
  154. package/subquery.js.map +1 -1
  155. package/utils.cjs.map +1 -1
  156. package/utils.d.cts +0 -2
  157. package/utils.d.ts +0 -2
  158. package/utils.js.map +1 -1
  159. package/vercel-postgres/driver.cjs +2 -9
  160. package/vercel-postgres/driver.cjs.map +1 -1
  161. package/vercel-postgres/driver.d.cts +0 -2
  162. package/vercel-postgres/driver.d.ts +0 -2
  163. package/vercel-postgres/driver.js +2 -9
  164. package/vercel-postgres/driver.js.map +1 -1
  165. package/vercel-postgres/session.cjs +7 -21
  166. package/vercel-postgres/session.cjs.map +1 -1
  167. package/vercel-postgres/session.d.cts +3 -12
  168. package/vercel-postgres/session.d.ts +3 -12
  169. package/vercel-postgres/session.js +7 -21
  170. package/vercel-postgres/session.js.map +1 -1
  171. package/version.cjs +1 -1
  172. package/version.d.cts +1 -1
  173. package/version.d.ts +1 -1
  174. package/version.js +1 -1
  175. package/xata-http/driver.cjs +2 -7
  176. package/xata-http/driver.cjs.map +1 -1
  177. package/xata-http/driver.d.cts +0 -2
  178. package/xata-http/driver.d.ts +0 -2
  179. package/xata-http/driver.js +2 -7
  180. package/xata-http/driver.js.map +1 -1
  181. package/xata-http/session.cjs +7 -21
  182. package/xata-http/session.cjs.map +1 -1
  183. package/xata-http/session.d.cts +3 -12
  184. package/xata-http/session.d.ts +3 -12
  185. package/xata-http/session.js +7 -21
  186. package/xata-http/session.js.map +1 -1
  187. package/cache/core/cache.cjs +0 -47
  188. package/cache/core/cache.cjs.map +0 -1
  189. package/cache/core/cache.d.cts +0 -35
  190. package/cache/core/cache.d.ts +0 -35
  191. package/cache/core/cache.js +0 -22
  192. package/cache/core/cache.js.map +0 -1
  193. package/cache/core/index.cjs +0 -23
  194. package/cache/core/index.cjs.map +0 -1
  195. package/cache/core/index.d.cts +0 -1
  196. package/cache/core/index.d.ts +0 -1
  197. package/cache/core/index.js +0 -2
  198. package/cache/core/index.js.map +0 -1
  199. package/cache/core/types.cjs +0 -17
  200. package/cache/core/types.cjs.map +0 -1
  201. package/cache/core/types.d.cts +0 -22
  202. package/cache/core/types.d.ts +0 -22
  203. package/cache/core/types.js +0 -1
  204. package/cache/core/types.js.map +0 -1
  205. package/cache/upstash/cache.cjs +0 -98
  206. package/cache/upstash/cache.cjs.map +0 -1
  207. package/cache/upstash/cache.d.cts +0 -23
  208. package/cache/upstash/cache.d.ts +0 -23
  209. package/cache/upstash/cache.js +0 -73
  210. package/cache/upstash/cache.js.map +0 -1
  211. package/cache/upstash/index.cjs +0 -23
  212. package/cache/upstash/index.cjs.map +0 -1
  213. package/cache/upstash/index.d.cts +0 -1
  214. package/cache/upstash/index.d.ts +0 -1
  215. package/cache/upstash/index.js +0 -2
  216. package/cache/upstash/index.js.map +0 -1
@@ -1,11 +1,10 @@
1
1
  import type { Client, PoolClient, QueryResult, QueryResultRow } from 'pg';
2
2
  import pg from 'pg';
3
- import { type Cache } from "../cache/core/index.cjs";
4
3
  import { entityKind } from "../entity.cjs";
5
4
  import { type Logger } from "../logger.cjs";
6
5
  import type { PgDialect } from "../pg-core/dialect.cjs";
7
6
  import { PgTransaction } from "../pg-core/index.cjs";
8
- import type { SelectedFieldsOrdered, WithCacheConfig } from "../pg-core/query-builders/select.types.cjs";
7
+ import type { SelectedFieldsOrdered } from "../pg-core/query-builders/select.types.cjs";
9
8
  import type { PgQueryResultHKT, PgTransactionConfig, PreparedQueryConfig } from "../pg-core/session.cjs";
10
9
  import { PgPreparedQuery, PgSession } from "../pg-core/session.cjs";
11
10
  import type { RelationalSchemaConfig, TablesRelationalConfig } from "../relations.cjs";
@@ -14,7 +13,6 @@ import { type Assume } from "../utils.cjs";
14
13
  export type NodePgClient = pg.Pool | PoolClient | Client;
15
14
  export declare class NodePgPreparedQuery<T extends PreparedQueryConfig> extends PgPreparedQuery<T> {
16
15
  private client;
17
- private queryString;
18
16
  private params;
19
17
  private logger;
20
18
  private fields;
@@ -23,16 +21,12 @@ export declare class NodePgPreparedQuery<T extends PreparedQueryConfig> extends
23
21
  static readonly [entityKind]: string;
24
22
  private rawQueryConfig;
25
23
  private queryConfig;
26
- constructor(client: NodePgClient, queryString: string, params: unknown[], logger: Logger, cache: Cache, queryMetadata: {
27
- type: 'select' | 'update' | 'delete' | 'insert';
28
- tables: string[];
29
- } | undefined, cacheConfig: WithCacheConfig | undefined, fields: SelectedFieldsOrdered | undefined, name: string | undefined, _isResponseInArrayMode: boolean, customResultMapper?: ((rows: unknown[][]) => T["execute"]) | undefined);
24
+ constructor(client: NodePgClient, queryString: string, params: unknown[], logger: Logger, fields: SelectedFieldsOrdered | undefined, name: string | undefined, _isResponseInArrayMode: boolean, customResultMapper?: ((rows: unknown[][]) => T["execute"]) | undefined);
30
25
  execute(placeholderValues?: Record<string, unknown> | undefined): Promise<T['execute']>;
31
26
  all(placeholderValues?: Record<string, unknown> | undefined): Promise<T['all']>;
32
27
  }
33
28
  export interface NodePgSessionOptions {
34
29
  logger?: Logger;
35
- cache?: Cache;
36
30
  }
37
31
  export declare class NodePgSession<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends PgSession<NodePgQueryResultHKT, TFullSchema, TSchema> {
38
32
  private client;
@@ -40,12 +34,8 @@ export declare class NodePgSession<TFullSchema extends Record<string, unknown>,
40
34
  private options;
41
35
  static readonly [entityKind]: string;
42
36
  private logger;
43
- private cache;
44
37
  constructor(client: NodePgClient, dialect: PgDialect, schema: RelationalSchemaConfig<TSchema> | undefined, options?: NodePgSessionOptions);
45
- prepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, name: string | undefined, isResponseInArrayMode: boolean, customResultMapper?: (rows: unknown[][]) => T['execute'], queryMetadata?: {
46
- type: 'select' | 'update' | 'delete' | 'insert';
47
- tables: string[];
48
- }, cacheConfig?: WithCacheConfig): PgPreparedQuery<T>;
38
+ prepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, name: string | undefined, isResponseInArrayMode: boolean, customResultMapper?: (rows: unknown[][]) => T['execute']): PgPreparedQuery<T>;
49
39
  transaction<T>(transaction: (tx: NodePgTransaction<TFullSchema, TSchema>) => Promise<T>, config?: PgTransactionConfig | undefined): Promise<T>;
50
40
  count(sql: SQL): Promise<number>;
51
41
  }
@@ -1,11 +1,10 @@
1
1
  import type { Client, PoolClient, QueryResult, QueryResultRow } from 'pg';
2
2
  import pg from 'pg';
3
- import { type Cache } from "../cache/core/index.js";
4
3
  import { entityKind } from "../entity.js";
5
4
  import { type Logger } from "../logger.js";
6
5
  import type { PgDialect } from "../pg-core/dialect.js";
7
6
  import { PgTransaction } from "../pg-core/index.js";
8
- import type { SelectedFieldsOrdered, WithCacheConfig } from "../pg-core/query-builders/select.types.js";
7
+ import type { SelectedFieldsOrdered } from "../pg-core/query-builders/select.types.js";
9
8
  import type { PgQueryResultHKT, PgTransactionConfig, PreparedQueryConfig } from "../pg-core/session.js";
10
9
  import { PgPreparedQuery, PgSession } from "../pg-core/session.js";
11
10
  import type { RelationalSchemaConfig, TablesRelationalConfig } from "../relations.js";
@@ -14,7 +13,6 @@ import { type Assume } from "../utils.js";
14
13
  export type NodePgClient = pg.Pool | PoolClient | Client;
15
14
  export declare class NodePgPreparedQuery<T extends PreparedQueryConfig> extends PgPreparedQuery<T> {
16
15
  private client;
17
- private queryString;
18
16
  private params;
19
17
  private logger;
20
18
  private fields;
@@ -23,16 +21,12 @@ export declare class NodePgPreparedQuery<T extends PreparedQueryConfig> extends
23
21
  static readonly [entityKind]: string;
24
22
  private rawQueryConfig;
25
23
  private queryConfig;
26
- constructor(client: NodePgClient, queryString: string, params: unknown[], logger: Logger, cache: Cache, queryMetadata: {
27
- type: 'select' | 'update' | 'delete' | 'insert';
28
- tables: string[];
29
- } | undefined, cacheConfig: WithCacheConfig | undefined, fields: SelectedFieldsOrdered | undefined, name: string | undefined, _isResponseInArrayMode: boolean, customResultMapper?: ((rows: unknown[][]) => T["execute"]) | undefined);
24
+ constructor(client: NodePgClient, queryString: string, params: unknown[], logger: Logger, fields: SelectedFieldsOrdered | undefined, name: string | undefined, _isResponseInArrayMode: boolean, customResultMapper?: ((rows: unknown[][]) => T["execute"]) | undefined);
30
25
  execute(placeholderValues?: Record<string, unknown> | undefined): Promise<T['execute']>;
31
26
  all(placeholderValues?: Record<string, unknown> | undefined): Promise<T['all']>;
32
27
  }
33
28
  export interface NodePgSessionOptions {
34
29
  logger?: Logger;
35
- cache?: Cache;
36
30
  }
37
31
  export declare class NodePgSession<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends PgSession<NodePgQueryResultHKT, TFullSchema, TSchema> {
38
32
  private client;
@@ -40,12 +34,8 @@ export declare class NodePgSession<TFullSchema extends Record<string, unknown>,
40
34
  private options;
41
35
  static readonly [entityKind]: string;
42
36
  private logger;
43
- private cache;
44
37
  constructor(client: NodePgClient, dialect: PgDialect, schema: RelationalSchemaConfig<TSchema> | undefined, options?: NodePgSessionOptions);
45
- prepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, name: string | undefined, isResponseInArrayMode: boolean, customResultMapper?: (rows: unknown[][]) => T['execute'], queryMetadata?: {
46
- type: 'select' | 'update' | 'delete' | 'insert';
47
- tables: string[];
48
- }, cacheConfig?: WithCacheConfig): PgPreparedQuery<T>;
38
+ prepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, name: string | undefined, isResponseInArrayMode: boolean, customResultMapper?: (rows: unknown[][]) => T['execute']): PgPreparedQuery<T>;
49
39
  transaction<T>(transaction: (tx: NodePgTransaction<TFullSchema, TSchema>) => Promise<T>, config?: PgTransactionConfig | undefined): Promise<T>;
50
40
  count(sql: SQL): Promise<number>;
51
41
  }
@@ -1,5 +1,4 @@
1
1
  import pg from "pg";
2
- import { NoopCache } from "../cache/core/index.js";
3
2
  import { entityKind } from "../entity.js";
4
3
  import { NoopLogger } from "../logger.js";
5
4
  import { PgTransaction } from "../pg-core/index.js";
@@ -9,10 +8,9 @@ import { tracer } from "../tracing.js";
9
8
  import { mapResultRow } from "../utils.js";
10
9
  const { Pool, types } = pg;
11
10
  class NodePgPreparedQuery extends PgPreparedQuery {
12
- constructor(client, queryString, params, logger, cache, queryMetadata, cacheConfig, fields, name, _isResponseInArrayMode, customResultMapper) {
13
- super({ sql: queryString, params }, cache, queryMetadata, cacheConfig);
11
+ constructor(client, queryString, params, logger, fields, name, _isResponseInArrayMode, customResultMapper) {
12
+ super({ sql: queryString, params });
14
13
  this.client = client;
15
- this.queryString = queryString;
16
14
  this.params = params;
17
15
  this.logger = logger;
18
16
  this.fields = fields;
@@ -79,9 +77,7 @@ class NodePgPreparedQuery extends PgPreparedQuery {
79
77
  "drizzle.query.text": rawQuery.text,
80
78
  "drizzle.query.params": JSON.stringify(params)
81
79
  });
82
- return this.queryWithCache(rawQuery.text, params, async () => {
83
- return await client.query(rawQuery, params);
84
- });
80
+ return client.query(rawQuery, params);
85
81
  });
86
82
  }
87
83
  const result = await tracer.startActiveSpan("drizzle.driver.execute", (span) => {
@@ -90,9 +86,7 @@ class NodePgPreparedQuery extends PgPreparedQuery {
90
86
  "drizzle.query.text": query.text,
91
87
  "drizzle.query.params": JSON.stringify(params)
92
88
  });
93
- return this.queryWithCache(query.text, params, async () => {
94
- return await client.query(query, params);
95
- });
89
+ return client.query(query, params);
96
90
  });
97
91
  return tracer.startActiveSpan("drizzle.mapResponse", () => {
98
92
  return customResultMapper ? customResultMapper(result.rows) : result.rows.map((row) => mapResultRow(fields, row, joinsNotNullableMap));
@@ -109,9 +103,7 @@ class NodePgPreparedQuery extends PgPreparedQuery {
109
103
  "drizzle.query.text": this.rawQueryConfig.text,
110
104
  "drizzle.query.params": JSON.stringify(params)
111
105
  });
112
- return this.queryWithCache(this.rawQueryConfig.text, params, async () => {
113
- return this.client.query(this.rawQueryConfig, params);
114
- }).then((result) => result.rows);
106
+ return this.client.query(this.rawQueryConfig, params).then((result) => result.rows);
115
107
  });
116
108
  });
117
109
  }
@@ -127,20 +119,15 @@ class NodePgSession extends PgSession {
127
119
  this.schema = schema;
128
120
  this.options = options;
129
121
  this.logger = options.logger ?? new NoopLogger();
130
- this.cache = options.cache ?? new NoopCache();
131
122
  }
132
123
  static [entityKind] = "NodePgSession";
133
124
  logger;
134
- cache;
135
- prepareQuery(query, fields, name, isResponseInArrayMode, customResultMapper, queryMetadata, cacheConfig) {
125
+ prepareQuery(query, fields, name, isResponseInArrayMode, customResultMapper) {
136
126
  return new NodePgPreparedQuery(
137
127
  this.client,
138
128
  query.sql,
139
129
  query.params,
140
130
  this.logger,
141
- this.cache,
142
- queryMetadata,
143
- cacheConfig,
144
131
  fields,
145
132
  name,
146
133
  isResponseInArrayMode,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/node-postgres/session.ts"],"sourcesContent":["import type { Client, PoolClient, QueryArrayConfig, QueryConfig, QueryResult, QueryResultRow } from 'pg';\nimport pg from 'pg';\nimport { type Cache, NoopCache } from '~/cache/core/index.ts';\nimport { entityKind } from '~/entity.ts';\nimport { type Logger, NoopLogger } from '~/logger.ts';\nimport type { PgDialect } from '~/pg-core/dialect.ts';\nimport { PgTransaction } from '~/pg-core/index.ts';\nimport type { SelectedFieldsOrdered, WithCacheConfig } from '~/pg-core/query-builders/select.types.ts';\nimport type { PgQueryResultHKT, PgTransactionConfig, PreparedQueryConfig } from '~/pg-core/session.ts';\nimport { PgPreparedQuery, PgSession } from '~/pg-core/session.ts';\nimport type { RelationalSchemaConfig, TablesRelationalConfig } from '~/relations.ts';\nimport { fillPlaceholders, type Query, type SQL, sql } from '~/sql/sql.ts';\nimport { tracer } from '~/tracing.ts';\nimport { type Assume, mapResultRow } from '~/utils.ts';\n\nconst { Pool, types } = pg;\n\nexport type NodePgClient = pg.Pool | PoolClient | Client;\n\nexport class NodePgPreparedQuery<T extends PreparedQueryConfig> extends PgPreparedQuery<T> {\n\tstatic override readonly [entityKind]: string = 'NodePgPreparedQuery';\n\n\tprivate rawQueryConfig: QueryConfig;\n\tprivate queryConfig: QueryArrayConfig;\n\n\tconstructor(\n\t\tprivate client: NodePgClient,\n\t\tprivate queryString: string,\n\t\tprivate params: unknown[],\n\t\tprivate logger: Logger,\n\t\tcache: Cache,\n\t\tqueryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\tcacheConfig: WithCacheConfig | undefined,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (rows: unknown[][]) => T['execute'],\n\t) {\n\t\tsuper({ sql: queryString, params }, cache, queryMetadata, cacheConfig);\n\t\tthis.rawQueryConfig = {\n\t\t\tname,\n\t\t\ttext: queryString,\n\t\t\ttypes: {\n\t\t\t\t// @ts-ignore\n\t\t\t\tgetTypeParser: (typeId, format) => {\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMPTZ) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMP) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.DATE) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.INTERVAL) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// @ts-ignore\n\t\t\t\t\treturn types.getTypeParser(typeId, format);\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t\tthis.queryConfig = {\n\t\t\tname,\n\t\t\ttext: queryString,\n\t\t\trowMode: 'array',\n\t\t\ttypes: {\n\t\t\t\t// @ts-ignore\n\t\t\t\tgetTypeParser: (typeId, format) => {\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMPTZ) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMP) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.DATE) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.INTERVAL) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// @ts-ignore\n\t\t\t\t\treturn types.getTypeParser(typeId, format);\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['execute']> {\n\t\treturn tracer.startActiveSpan('drizzle.execute', async () => {\n\t\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\t\tthis.logger.logQuery(this.rawQueryConfig.text, params);\n\n\t\t\tconst { fields, rawQueryConfig: rawQuery, client, queryConfig: query, joinsNotNullableMap, customResultMapper } =\n\t\t\t\tthis;\n\t\t\tif (!fields && !customResultMapper) {\n\t\t\t\treturn tracer.startActiveSpan('drizzle.driver.execute', async (span) => {\n\t\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t\t'drizzle.query.name': rawQuery.name,\n\t\t\t\t\t\t'drizzle.query.text': rawQuery.text,\n\t\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t\t});\n\t\t\t\t\treturn this.queryWithCache(rawQuery.text, params, async () => {\n\t\t\t\t\t\treturn await client.query(rawQuery, params);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tconst result = await tracer.startActiveSpan('drizzle.driver.execute', (span) => {\n\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t'drizzle.query.name': query.name,\n\t\t\t\t\t'drizzle.query.text': query.text,\n\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t});\n\t\t\t\treturn this.queryWithCache(query.text, params, async () => {\n\t\t\t\t\treturn await client.query(query, params);\n\t\t\t\t});\n\t\t\t});\n\n\t\t\treturn tracer.startActiveSpan('drizzle.mapResponse', () => {\n\t\t\t\treturn customResultMapper\n\t\t\t\t\t? customResultMapper(result.rows)\n\t\t\t\t\t: result.rows.map((row) => mapResultRow<T['execute']>(fields!, row, joinsNotNullableMap));\n\t\t\t});\n\t\t});\n\t}\n\n\tall(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['all']> {\n\t\treturn tracer.startActiveSpan('drizzle.execute', () => {\n\t\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\t\t\tthis.logger.logQuery(this.rawQueryConfig.text, params);\n\t\t\treturn tracer.startActiveSpan('drizzle.driver.execute', (span) => {\n\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t'drizzle.query.name': this.rawQueryConfig.name,\n\t\t\t\t\t'drizzle.query.text': this.rawQueryConfig.text,\n\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t});\n\t\t\t\treturn this.queryWithCache(this.rawQueryConfig.text, params, async () => {\n\t\t\t\t\treturn this.client.query(this.rawQueryConfig, params);\n\t\t\t\t}).then((result) => result.rows);\n\t\t\t});\n\t\t});\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n\nexport interface NodePgSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\nexport class NodePgSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends PgSession<NodePgQueryResultHKT, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'NodePgSession';\n\n\tprivate logger: Logger;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\tprivate client: NodePgClient,\n\t\tdialect: PgDialect,\n\t\tprivate schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: NodePgSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t\tthis.cache = options.cache ?? new NoopCache();\n\t}\n\n\tprepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): PgPreparedQuery<T> {\n\t\treturn new NodePgPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tqueryMetadata,\n\t\t\tcacheConfig,\n\t\t\tfields,\n\t\t\tname,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: NodePgTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t\tconfig?: PgTransactionConfig | undefined,\n\t): Promise<T> {\n\t\tconst session = this.client instanceof Pool // eslint-disable-line no-instanceof/no-instanceof\n\t\t\t? new NodePgSession(await this.client.connect(), this.dialect, this.schema, this.options)\n\t\t\t: this;\n\t\tconst tx = new NodePgTransaction<TFullSchema, TSchema>(this.dialect, session, this.schema);\n\t\tawait tx.execute(sql`begin${config ? sql` ${tx.getTransactionConfigSQL(config)}` : undefined}`);\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait tx.execute(sql`commit`);\n\t\t\treturn result;\n\t\t} catch (error) {\n\t\t\tawait tx.execute(sql`rollback`);\n\t\t\tthrow error;\n\t\t} finally {\n\t\t\tif (this.client instanceof Pool) { // eslint-disable-line no-instanceof/no-instanceof\n\t\t\t\t(session.client as PoolClient).release();\n\t\t\t}\n\t\t}\n\t}\n\n\toverride async count(sql: SQL): Promise<number> {\n\t\tconst res = await this.execute<{ rows: [{ count: string }] }>(sql);\n\t\treturn Number(\n\t\t\tres['rows'][0]['count'],\n\t\t);\n\t}\n}\n\nexport class NodePgTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends PgTransaction<NodePgQueryResultHKT, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'NodePgTransaction';\n\n\toverride async transaction<T>(transaction: (tx: NodePgTransaction<TFullSchema, TSchema>) => Promise<T>): Promise<T> {\n\t\tconst savepointName = `sp${this.nestedIndex + 1}`;\n\t\tconst tx = new NodePgTransaction<TFullSchema, TSchema>(\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tthis.schema,\n\t\t\tthis.nestedIndex + 1,\n\t\t);\n\t\tawait tx.execute(sql.raw(`savepoint ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait tx.execute(sql.raw(`release savepoint ${savepointName}`));\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait tx.execute(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport interface NodePgQueryResultHKT extends PgQueryResultHKT {\n\ttype: QueryResult<Assume<this['row'], QueryResultRow>>;\n}\n"],"mappings":"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","names":["sql"]}
1
+ {"version":3,"sources":["../../src/node-postgres/session.ts"],"sourcesContent":["import type { Client, PoolClient, QueryArrayConfig, QueryConfig, QueryResult, QueryResultRow } from 'pg';\nimport pg from 'pg';\nimport { entityKind } from '~/entity.ts';\nimport { type Logger, NoopLogger } from '~/logger.ts';\nimport type { PgDialect } from '~/pg-core/dialect.ts';\nimport { PgTransaction } from '~/pg-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/pg-core/query-builders/select.types.ts';\nimport type { PgQueryResultHKT, PgTransactionConfig, PreparedQueryConfig } from '~/pg-core/session.ts';\nimport { PgPreparedQuery, PgSession } from '~/pg-core/session.ts';\nimport type { RelationalSchemaConfig, TablesRelationalConfig } from '~/relations.ts';\nimport { fillPlaceholders, type Query, type SQL, sql } from '~/sql/sql.ts';\nimport { tracer } from '~/tracing.ts';\nimport { type Assume, mapResultRow } from '~/utils.ts';\n\nconst { Pool, types } = pg;\n\nexport type NodePgClient = pg.Pool | PoolClient | Client;\n\nexport class NodePgPreparedQuery<T extends PreparedQueryConfig> extends PgPreparedQuery<T> {\n\tstatic override readonly [entityKind]: string = 'NodePgPreparedQuery';\n\n\tprivate rawQueryConfig: QueryConfig;\n\tprivate queryConfig: QueryArrayConfig;\n\n\tconstructor(\n\t\tprivate client: NodePgClient,\n\t\tqueryString: string,\n\t\tprivate params: unknown[],\n\t\tprivate logger: Logger,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (rows: unknown[][]) => T['execute'],\n\t) {\n\t\tsuper({ sql: queryString, params });\n\t\tthis.rawQueryConfig = {\n\t\t\tname,\n\t\t\ttext: queryString,\n\t\t\ttypes: {\n\t\t\t\t// @ts-ignore\n\t\t\t\tgetTypeParser: (typeId, format) => {\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMPTZ) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMP) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.DATE) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.INTERVAL) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// @ts-ignore\n\t\t\t\t\treturn types.getTypeParser(typeId, format);\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t\tthis.queryConfig = {\n\t\t\tname,\n\t\t\ttext: queryString,\n\t\t\trowMode: 'array',\n\t\t\ttypes: {\n\t\t\t\t// @ts-ignore\n\t\t\t\tgetTypeParser: (typeId, format) => {\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMPTZ) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMP) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.DATE) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.INTERVAL) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// @ts-ignore\n\t\t\t\t\treturn types.getTypeParser(typeId, format);\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['execute']> {\n\t\treturn tracer.startActiveSpan('drizzle.execute', async () => {\n\t\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\t\tthis.logger.logQuery(this.rawQueryConfig.text, params);\n\n\t\t\tconst { fields, rawQueryConfig: rawQuery, client, queryConfig: query, joinsNotNullableMap, customResultMapper } =\n\t\t\t\tthis;\n\t\t\tif (!fields && !customResultMapper) {\n\t\t\t\treturn tracer.startActiveSpan('drizzle.driver.execute', async (span) => {\n\t\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t\t'drizzle.query.name': rawQuery.name,\n\t\t\t\t\t\t'drizzle.query.text': rawQuery.text,\n\t\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t\t});\n\t\t\t\t\treturn client.query(rawQuery, params);\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tconst result = await tracer.startActiveSpan('drizzle.driver.execute', (span) => {\n\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t'drizzle.query.name': query.name,\n\t\t\t\t\t'drizzle.query.text': query.text,\n\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t});\n\t\t\t\treturn client.query(query, params);\n\t\t\t});\n\n\t\t\treturn tracer.startActiveSpan('drizzle.mapResponse', () => {\n\t\t\t\treturn customResultMapper\n\t\t\t\t\t? customResultMapper(result.rows)\n\t\t\t\t\t: result.rows.map((row) => mapResultRow<T['execute']>(fields!, row, joinsNotNullableMap));\n\t\t\t});\n\t\t});\n\t}\n\n\tall(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['all']> {\n\t\treturn tracer.startActiveSpan('drizzle.execute', () => {\n\t\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\t\t\tthis.logger.logQuery(this.rawQueryConfig.text, params);\n\t\t\treturn tracer.startActiveSpan('drizzle.driver.execute', (span) => {\n\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t'drizzle.query.name': this.rawQueryConfig.name,\n\t\t\t\t\t'drizzle.query.text': this.rawQueryConfig.text,\n\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t});\n\t\t\t\treturn this.client.query(this.rawQueryConfig, params).then((result) => result.rows);\n\t\t\t});\n\t\t});\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n\nexport interface NodePgSessionOptions {\n\tlogger?: Logger;\n}\n\nexport class NodePgSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends PgSession<NodePgQueryResultHKT, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'NodePgSession';\n\n\tprivate logger: Logger;\n\n\tconstructor(\n\t\tprivate client: NodePgClient,\n\t\tdialect: PgDialect,\n\t\tprivate schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: NodePgSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t}\n\n\tprepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t): PgPreparedQuery<T> {\n\t\treturn new NodePgPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\tname,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: NodePgTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t\tconfig?: PgTransactionConfig | undefined,\n\t): Promise<T> {\n\t\tconst session = this.client instanceof Pool // eslint-disable-line no-instanceof/no-instanceof\n\t\t\t? new NodePgSession(await this.client.connect(), this.dialect, this.schema, this.options)\n\t\t\t: this;\n\t\tconst tx = new NodePgTransaction<TFullSchema, TSchema>(this.dialect, session, this.schema);\n\t\tawait tx.execute(sql`begin${config ? sql` ${tx.getTransactionConfigSQL(config)}` : undefined}`);\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait tx.execute(sql`commit`);\n\t\t\treturn result;\n\t\t} catch (error) {\n\t\t\tawait tx.execute(sql`rollback`);\n\t\t\tthrow error;\n\t\t} finally {\n\t\t\tif (this.client instanceof Pool) { // eslint-disable-line no-instanceof/no-instanceof\n\t\t\t\t(session.client as PoolClient).release();\n\t\t\t}\n\t\t}\n\t}\n\n\toverride async count(sql: SQL): Promise<number> {\n\t\tconst res = await this.execute<{ rows: [{ count: string }] }>(sql);\n\t\treturn Number(\n\t\t\tres['rows'][0]['count'],\n\t\t);\n\t}\n}\n\nexport class NodePgTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends PgTransaction<NodePgQueryResultHKT, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'NodePgTransaction';\n\n\toverride async transaction<T>(transaction: (tx: NodePgTransaction<TFullSchema, TSchema>) => Promise<T>): Promise<T> {\n\t\tconst savepointName = `sp${this.nestedIndex + 1}`;\n\t\tconst tx = new NodePgTransaction<TFullSchema, TSchema>(\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tthis.schema,\n\t\t\tthis.nestedIndex + 1,\n\t\t);\n\t\tawait tx.execute(sql.raw(`savepoint ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait tx.execute(sql.raw(`release savepoint ${savepointName}`));\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait tx.execute(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport interface NodePgQueryResultHKT extends PgQueryResultHKT {\n\ttype: QueryResult<Assume<this['row'], QueryResultRow>>;\n}\n"],"mappings":"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","names":["sql"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "drizzle-orm",
3
- "version": "0.40.0-bbf78ae",
3
+ "version": "0.40.0-f8a2f3c",
4
4
  "description": "Drizzle ORM package for SQL databases",
5
5
  "type": "module",
6
6
  "scripts": {
@@ -173,15 +173,14 @@
173
173
  "@planetscale/database": "^1.16.0",
174
174
  "@prisma/client": "5.14.0",
175
175
  "@tidbcloud/serverless": "^0.1.1",
176
- "@types/better-sqlite3": "^7.6.12",
176
+ "@types/better-sqlite3": "^7.6.4",
177
177
  "@types/node": "^20.2.5",
178
178
  "@types/pg": "^8.10.1",
179
179
  "@types/react": "^18.2.45",
180
180
  "@types/sql.js": "^1.4.4",
181
- "@upstash/redis": "^1.34.3",
182
181
  "@vercel/postgres": "^0.8.0",
183
182
  "@xata.io/client": "^0.29.3",
184
- "better-sqlite3": "^11.8.1",
183
+ "better-sqlite3": "^8.4.0",
185
184
  "bun-types": "^1.2.0",
186
185
  "cpy": "^10.1.0",
187
186
  "expo-sqlite": "^14.0.0",
@@ -3047,66 +3046,6 @@
3047
3046
  "types": "./aws-data-api/pg/session.d.ts",
3048
3047
  "default": "./aws-data-api/pg/session.js"
3049
3048
  },
3050
- "./cache/core/cache": {
3051
- "import": {
3052
- "types": "./cache/core/cache.d.ts",
3053
- "default": "./cache/core/cache.js"
3054
- },
3055
- "require": {
3056
- "types": "./cache/core/cache.d.cts",
3057
- "default": "./cache/core/cache.cjs"
3058
- },
3059
- "types": "./cache/core/cache.d.ts",
3060
- "default": "./cache/core/cache.js"
3061
- },
3062
- "./cache/core": {
3063
- "import": {
3064
- "types": "./cache/core/index.d.ts",
3065
- "default": "./cache/core/index.js"
3066
- },
3067
- "require": {
3068
- "types": "./cache/core/index.d.cts",
3069
- "default": "./cache/core/index.cjs"
3070
- },
3071
- "types": "./cache/core/index.d.ts",
3072
- "default": "./cache/core/index.js"
3073
- },
3074
- "./cache/core/types": {
3075
- "import": {
3076
- "types": "./cache/core/types.d.ts",
3077
- "default": "./cache/core/types.js"
3078
- },
3079
- "require": {
3080
- "types": "./cache/core/types.d.cts",
3081
- "default": "./cache/core/types.cjs"
3082
- },
3083
- "types": "./cache/core/types.d.ts",
3084
- "default": "./cache/core/types.js"
3085
- },
3086
- "./cache/upstash/cache": {
3087
- "import": {
3088
- "types": "./cache/upstash/cache.d.ts",
3089
- "default": "./cache/upstash/cache.js"
3090
- },
3091
- "require": {
3092
- "types": "./cache/upstash/cache.d.cts",
3093
- "default": "./cache/upstash/cache.cjs"
3094
- },
3095
- "types": "./cache/upstash/cache.d.ts",
3096
- "default": "./cache/upstash/cache.js"
3097
- },
3098
- "./cache/upstash": {
3099
- "import": {
3100
- "types": "./cache/upstash/index.d.ts",
3101
- "default": "./cache/upstash/index.js"
3102
- },
3103
- "require": {
3104
- "types": "./cache/upstash/index.d.cts",
3105
- "default": "./cache/upstash/index.cjs"
3106
- },
3107
- "types": "./cache/upstash/index.d.ts",
3108
- "default": "./cache/upstash/index.js"
3109
- },
3110
3049
  "./gel-core/columns/all": {
3111
3050
  "import": {
3112
3051
  "types": "./gel-core/columns/all.d.ts",
@@ -4055,6 +3994,138 @@
4055
3994
  "types": "./mysql-core/query-builders/update.d.ts",
4056
3995
  "default": "./mysql-core/query-builders/update.js"
4057
3996
  },
3997
+ "./pg-core/query-builders/count": {
3998
+ "import": {
3999
+ "types": "./pg-core/query-builders/count.d.ts",
4000
+ "default": "./pg-core/query-builders/count.js"
4001
+ },
4002
+ "require": {
4003
+ "types": "./pg-core/query-builders/count.d.cts",
4004
+ "default": "./pg-core/query-builders/count.cjs"
4005
+ },
4006
+ "types": "./pg-core/query-builders/count.d.ts",
4007
+ "default": "./pg-core/query-builders/count.js"
4008
+ },
4009
+ "./pg-core/query-builders/delete": {
4010
+ "import": {
4011
+ "types": "./pg-core/query-builders/delete.d.ts",
4012
+ "default": "./pg-core/query-builders/delete.js"
4013
+ },
4014
+ "require": {
4015
+ "types": "./pg-core/query-builders/delete.d.cts",
4016
+ "default": "./pg-core/query-builders/delete.cjs"
4017
+ },
4018
+ "types": "./pg-core/query-builders/delete.d.ts",
4019
+ "default": "./pg-core/query-builders/delete.js"
4020
+ },
4021
+ "./pg-core/query-builders": {
4022
+ "import": {
4023
+ "types": "./pg-core/query-builders/index.d.ts",
4024
+ "default": "./pg-core/query-builders/index.js"
4025
+ },
4026
+ "require": {
4027
+ "types": "./pg-core/query-builders/index.d.cts",
4028
+ "default": "./pg-core/query-builders/index.cjs"
4029
+ },
4030
+ "types": "./pg-core/query-builders/index.d.ts",
4031
+ "default": "./pg-core/query-builders/index.js"
4032
+ },
4033
+ "./pg-core/query-builders/insert": {
4034
+ "import": {
4035
+ "types": "./pg-core/query-builders/insert.d.ts",
4036
+ "default": "./pg-core/query-builders/insert.js"
4037
+ },
4038
+ "require": {
4039
+ "types": "./pg-core/query-builders/insert.d.cts",
4040
+ "default": "./pg-core/query-builders/insert.cjs"
4041
+ },
4042
+ "types": "./pg-core/query-builders/insert.d.ts",
4043
+ "default": "./pg-core/query-builders/insert.js"
4044
+ },
4045
+ "./pg-core/query-builders/query-builder": {
4046
+ "import": {
4047
+ "types": "./pg-core/query-builders/query-builder.d.ts",
4048
+ "default": "./pg-core/query-builders/query-builder.js"
4049
+ },
4050
+ "require": {
4051
+ "types": "./pg-core/query-builders/query-builder.d.cts",
4052
+ "default": "./pg-core/query-builders/query-builder.cjs"
4053
+ },
4054
+ "types": "./pg-core/query-builders/query-builder.d.ts",
4055
+ "default": "./pg-core/query-builders/query-builder.js"
4056
+ },
4057
+ "./pg-core/query-builders/query": {
4058
+ "import": {
4059
+ "types": "./pg-core/query-builders/query.d.ts",
4060
+ "default": "./pg-core/query-builders/query.js"
4061
+ },
4062
+ "require": {
4063
+ "types": "./pg-core/query-builders/query.d.cts",
4064
+ "default": "./pg-core/query-builders/query.cjs"
4065
+ },
4066
+ "types": "./pg-core/query-builders/query.d.ts",
4067
+ "default": "./pg-core/query-builders/query.js"
4068
+ },
4069
+ "./pg-core/query-builders/raw": {
4070
+ "import": {
4071
+ "types": "./pg-core/query-builders/raw.d.ts",
4072
+ "default": "./pg-core/query-builders/raw.js"
4073
+ },
4074
+ "require": {
4075
+ "types": "./pg-core/query-builders/raw.d.cts",
4076
+ "default": "./pg-core/query-builders/raw.cjs"
4077
+ },
4078
+ "types": "./pg-core/query-builders/raw.d.ts",
4079
+ "default": "./pg-core/query-builders/raw.js"
4080
+ },
4081
+ "./pg-core/query-builders/refresh-materialized-view": {
4082
+ "import": {
4083
+ "types": "./pg-core/query-builders/refresh-materialized-view.d.ts",
4084
+ "default": "./pg-core/query-builders/refresh-materialized-view.js"
4085
+ },
4086
+ "require": {
4087
+ "types": "./pg-core/query-builders/refresh-materialized-view.d.cts",
4088
+ "default": "./pg-core/query-builders/refresh-materialized-view.cjs"
4089
+ },
4090
+ "types": "./pg-core/query-builders/refresh-materialized-view.d.ts",
4091
+ "default": "./pg-core/query-builders/refresh-materialized-view.js"
4092
+ },
4093
+ "./pg-core/query-builders/select": {
4094
+ "import": {
4095
+ "types": "./pg-core/query-builders/select.d.ts",
4096
+ "default": "./pg-core/query-builders/select.js"
4097
+ },
4098
+ "require": {
4099
+ "types": "./pg-core/query-builders/select.d.cts",
4100
+ "default": "./pg-core/query-builders/select.cjs"
4101
+ },
4102
+ "types": "./pg-core/query-builders/select.d.ts",
4103
+ "default": "./pg-core/query-builders/select.js"
4104
+ },
4105
+ "./pg-core/query-builders/select.types": {
4106
+ "import": {
4107
+ "types": "./pg-core/query-builders/select.types.d.ts",
4108
+ "default": "./pg-core/query-builders/select.types.js"
4109
+ },
4110
+ "require": {
4111
+ "types": "./pg-core/query-builders/select.types.d.cts",
4112
+ "default": "./pg-core/query-builders/select.types.cjs"
4113
+ },
4114
+ "types": "./pg-core/query-builders/select.types.d.ts",
4115
+ "default": "./pg-core/query-builders/select.types.js"
4116
+ },
4117
+ "./pg-core/query-builders/update": {
4118
+ "import": {
4119
+ "types": "./pg-core/query-builders/update.d.ts",
4120
+ "default": "./pg-core/query-builders/update.js"
4121
+ },
4122
+ "require": {
4123
+ "types": "./pg-core/query-builders/update.d.cts",
4124
+ "default": "./pg-core/query-builders/update.cjs"
4125
+ },
4126
+ "types": "./pg-core/query-builders/update.d.ts",
4127
+ "default": "./pg-core/query-builders/update.js"
4128
+ },
4058
4129
  "./pg-core/columns/all": {
4059
4130
  "import": {
4060
4131
  "types": "./pg-core/columns/all.d.ts",
@@ -4451,138 +4522,6 @@
4451
4522
  "types": "./pg-core/columns/varchar.d.ts",
4452
4523
  "default": "./pg-core/columns/varchar.js"
4453
4524
  },
4454
- "./pg-core/query-builders/count": {
4455
- "import": {
4456
- "types": "./pg-core/query-builders/count.d.ts",
4457
- "default": "./pg-core/query-builders/count.js"
4458
- },
4459
- "require": {
4460
- "types": "./pg-core/query-builders/count.d.cts",
4461
- "default": "./pg-core/query-builders/count.cjs"
4462
- },
4463
- "types": "./pg-core/query-builders/count.d.ts",
4464
- "default": "./pg-core/query-builders/count.js"
4465
- },
4466
- "./pg-core/query-builders/delete": {
4467
- "import": {
4468
- "types": "./pg-core/query-builders/delete.d.ts",
4469
- "default": "./pg-core/query-builders/delete.js"
4470
- },
4471
- "require": {
4472
- "types": "./pg-core/query-builders/delete.d.cts",
4473
- "default": "./pg-core/query-builders/delete.cjs"
4474
- },
4475
- "types": "./pg-core/query-builders/delete.d.ts",
4476
- "default": "./pg-core/query-builders/delete.js"
4477
- },
4478
- "./pg-core/query-builders": {
4479
- "import": {
4480
- "types": "./pg-core/query-builders/index.d.ts",
4481
- "default": "./pg-core/query-builders/index.js"
4482
- },
4483
- "require": {
4484
- "types": "./pg-core/query-builders/index.d.cts",
4485
- "default": "./pg-core/query-builders/index.cjs"
4486
- },
4487
- "types": "./pg-core/query-builders/index.d.ts",
4488
- "default": "./pg-core/query-builders/index.js"
4489
- },
4490
- "./pg-core/query-builders/insert": {
4491
- "import": {
4492
- "types": "./pg-core/query-builders/insert.d.ts",
4493
- "default": "./pg-core/query-builders/insert.js"
4494
- },
4495
- "require": {
4496
- "types": "./pg-core/query-builders/insert.d.cts",
4497
- "default": "./pg-core/query-builders/insert.cjs"
4498
- },
4499
- "types": "./pg-core/query-builders/insert.d.ts",
4500
- "default": "./pg-core/query-builders/insert.js"
4501
- },
4502
- "./pg-core/query-builders/query-builder": {
4503
- "import": {
4504
- "types": "./pg-core/query-builders/query-builder.d.ts",
4505
- "default": "./pg-core/query-builders/query-builder.js"
4506
- },
4507
- "require": {
4508
- "types": "./pg-core/query-builders/query-builder.d.cts",
4509
- "default": "./pg-core/query-builders/query-builder.cjs"
4510
- },
4511
- "types": "./pg-core/query-builders/query-builder.d.ts",
4512
- "default": "./pg-core/query-builders/query-builder.js"
4513
- },
4514
- "./pg-core/query-builders/query": {
4515
- "import": {
4516
- "types": "./pg-core/query-builders/query.d.ts",
4517
- "default": "./pg-core/query-builders/query.js"
4518
- },
4519
- "require": {
4520
- "types": "./pg-core/query-builders/query.d.cts",
4521
- "default": "./pg-core/query-builders/query.cjs"
4522
- },
4523
- "types": "./pg-core/query-builders/query.d.ts",
4524
- "default": "./pg-core/query-builders/query.js"
4525
- },
4526
- "./pg-core/query-builders/raw": {
4527
- "import": {
4528
- "types": "./pg-core/query-builders/raw.d.ts",
4529
- "default": "./pg-core/query-builders/raw.js"
4530
- },
4531
- "require": {
4532
- "types": "./pg-core/query-builders/raw.d.cts",
4533
- "default": "./pg-core/query-builders/raw.cjs"
4534
- },
4535
- "types": "./pg-core/query-builders/raw.d.ts",
4536
- "default": "./pg-core/query-builders/raw.js"
4537
- },
4538
- "./pg-core/query-builders/refresh-materialized-view": {
4539
- "import": {
4540
- "types": "./pg-core/query-builders/refresh-materialized-view.d.ts",
4541
- "default": "./pg-core/query-builders/refresh-materialized-view.js"
4542
- },
4543
- "require": {
4544
- "types": "./pg-core/query-builders/refresh-materialized-view.d.cts",
4545
- "default": "./pg-core/query-builders/refresh-materialized-view.cjs"
4546
- },
4547
- "types": "./pg-core/query-builders/refresh-materialized-view.d.ts",
4548
- "default": "./pg-core/query-builders/refresh-materialized-view.js"
4549
- },
4550
- "./pg-core/query-builders/select": {
4551
- "import": {
4552
- "types": "./pg-core/query-builders/select.d.ts",
4553
- "default": "./pg-core/query-builders/select.js"
4554
- },
4555
- "require": {
4556
- "types": "./pg-core/query-builders/select.d.cts",
4557
- "default": "./pg-core/query-builders/select.cjs"
4558
- },
4559
- "types": "./pg-core/query-builders/select.d.ts",
4560
- "default": "./pg-core/query-builders/select.js"
4561
- },
4562
- "./pg-core/query-builders/select.types": {
4563
- "import": {
4564
- "types": "./pg-core/query-builders/select.types.d.ts",
4565
- "default": "./pg-core/query-builders/select.types.js"
4566
- },
4567
- "require": {
4568
- "types": "./pg-core/query-builders/select.types.d.cts",
4569
- "default": "./pg-core/query-builders/select.types.cjs"
4570
- },
4571
- "types": "./pg-core/query-builders/select.types.d.ts",
4572
- "default": "./pg-core/query-builders/select.types.js"
4573
- },
4574
- "./pg-core/query-builders/update": {
4575
- "import": {
4576
- "types": "./pg-core/query-builders/update.d.ts",
4577
- "default": "./pg-core/query-builders/update.js"
4578
- },
4579
- "require": {
4580
- "types": "./pg-core/query-builders/update.d.cts",
4581
- "default": "./pg-core/query-builders/update.cjs"
4582
- },
4583
- "types": "./pg-core/query-builders/update.d.ts",
4584
- "default": "./pg-core/query-builders/update.js"
4585
- },
4586
4525
  "./pg-core/utils/array": {
4587
4526
  "import": {
4588
4527
  "types": "./pg-core/utils/array.d.ts",
package/pg-core/db.cjs CHANGED
@@ -116,7 +116,6 @@ class PgDatabase {
116
116
  $count(source, filters) {
117
117
  return new import_count.PgCountBuilder({ source, filters, session: this.session });
118
118
  }
119
- $cache;
120
119
  /**
121
120
  * Incorporates a previously defined CTE (using `$with`) into the main query.
122
121
  *