drizzle-orm 0.33.0-c6528ed → 0.33.0-cd0b1a2

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 (135) hide show
  1. package/aws-data-api/pg/driver.cjs +3 -1
  2. package/aws-data-api/pg/driver.cjs.map +1 -1
  3. package/aws-data-api/pg/driver.d.cts +4 -2
  4. package/aws-data-api/pg/driver.d.ts +4 -2
  5. package/aws-data-api/pg/driver.js +3 -1
  6. package/aws-data-api/pg/driver.js.map +1 -1
  7. package/better-sqlite3/driver.cjs +3 -1
  8. package/better-sqlite3/driver.cjs.map +1 -1
  9. package/better-sqlite3/driver.d.cts +3 -1
  10. package/better-sqlite3/driver.d.ts +3 -1
  11. package/better-sqlite3/driver.js +3 -1
  12. package/better-sqlite3/driver.js.map +1 -1
  13. package/bun-sqlite/driver.cjs +3 -1
  14. package/bun-sqlite/driver.cjs.map +1 -1
  15. package/bun-sqlite/driver.d.cts +3 -1
  16. package/bun-sqlite/driver.d.ts +3 -1
  17. package/bun-sqlite/driver.js +3 -1
  18. package/bun-sqlite/driver.js.map +1 -1
  19. package/d1/driver.cjs +3 -1
  20. package/d1/driver.cjs.map +1 -1
  21. package/d1/driver.d.cts +6 -2
  22. package/d1/driver.d.ts +6 -2
  23. package/d1/driver.js +3 -1
  24. package/d1/driver.js.map +1 -1
  25. package/expo-sqlite/driver.cjs +3 -1
  26. package/expo-sqlite/driver.cjs.map +1 -1
  27. package/expo-sqlite/driver.d.cts +3 -1
  28. package/expo-sqlite/driver.d.ts +3 -1
  29. package/expo-sqlite/driver.js +3 -1
  30. package/expo-sqlite/driver.js.map +1 -1
  31. package/libsql/driver.cjs +3 -1
  32. package/libsql/driver.cjs.map +1 -1
  33. package/libsql/driver.d.cts +3 -1
  34. package/libsql/driver.d.ts +3 -1
  35. package/libsql/driver.js +3 -1
  36. package/libsql/driver.js.map +1 -1
  37. package/monodriver.cjs +21 -38
  38. package/monodriver.cjs.map +1 -1
  39. package/monodriver.d.cts +65 -55
  40. package/monodriver.d.ts +65 -55
  41. package/monodriver.js +21 -38
  42. package/monodriver.js.map +1 -1
  43. package/mysql-core/db.cjs +2 -1
  44. package/mysql-core/db.cjs.map +1 -1
  45. package/mysql-core/db.d.cts +2 -2
  46. package/mysql-core/db.d.ts +2 -2
  47. package/mysql-core/db.js +2 -1
  48. package/mysql-core/db.js.map +1 -1
  49. package/mysql2/driver.cjs +5 -5
  50. package/mysql2/driver.cjs.map +1 -1
  51. package/mysql2/driver.d.cts +3 -1
  52. package/mysql2/driver.d.ts +3 -1
  53. package/mysql2/driver.js +5 -5
  54. package/mysql2/driver.js.map +1 -1
  55. package/neon-http/driver.cjs +3 -1
  56. package/neon-http/driver.cjs.map +1 -1
  57. package/neon-http/driver.d.cts +3 -1
  58. package/neon-http/driver.d.ts +3 -1
  59. package/neon-http/driver.js +3 -1
  60. package/neon-http/driver.js.map +1 -1
  61. package/neon-serverless/driver.cjs +3 -1
  62. package/neon-serverless/driver.cjs.map +1 -1
  63. package/neon-serverless/driver.d.cts +3 -1
  64. package/neon-serverless/driver.d.ts +3 -1
  65. package/neon-serverless/driver.js +3 -1
  66. package/neon-serverless/driver.js.map +1 -1
  67. package/node-postgres/driver.cjs +3 -1
  68. package/node-postgres/driver.cjs.map +1 -1
  69. package/node-postgres/driver.d.cts +3 -1
  70. package/node-postgres/driver.d.ts +3 -1
  71. package/node-postgres/driver.js +3 -1
  72. package/node-postgres/driver.js.map +1 -1
  73. package/op-sqlite/driver.cjs +3 -1
  74. package/op-sqlite/driver.cjs.map +1 -1
  75. package/op-sqlite/driver.d.cts +3 -1
  76. package/op-sqlite/driver.d.ts +3 -1
  77. package/op-sqlite/driver.js +3 -1
  78. package/op-sqlite/driver.js.map +1 -1
  79. package/package.json +2 -1
  80. package/pg-core/db.cjs +4 -3
  81. package/pg-core/db.cjs.map +1 -1
  82. package/pg-core/db.d.cts +2 -2
  83. package/pg-core/db.d.ts +2 -2
  84. package/pg-core/db.js +4 -3
  85. package/pg-core/db.js.map +1 -1
  86. package/pglite/driver.cjs +3 -1
  87. package/pglite/driver.cjs.map +1 -1
  88. package/pglite/driver.d.cts +3 -1
  89. package/pglite/driver.d.ts +3 -1
  90. package/pglite/driver.js +3 -1
  91. package/pglite/driver.js.map +1 -1
  92. package/planetscale-serverless/driver.cjs +3 -1
  93. package/planetscale-serverless/driver.cjs.map +1 -1
  94. package/planetscale-serverless/driver.d.cts +3 -1
  95. package/planetscale-serverless/driver.d.ts +3 -1
  96. package/planetscale-serverless/driver.js +3 -1
  97. package/planetscale-serverless/driver.js.map +1 -1
  98. package/postgres-js/driver.cjs +3 -1
  99. package/postgres-js/driver.cjs.map +1 -1
  100. package/postgres-js/driver.d.cts +3 -1
  101. package/postgres-js/driver.d.ts +3 -1
  102. package/postgres-js/driver.js +3 -1
  103. package/postgres-js/driver.js.map +1 -1
  104. package/sqlite-core/db.cjs +17 -16
  105. package/sqlite-core/db.cjs.map +1 -1
  106. package/sqlite-core/db.d.cts +5 -5
  107. package/sqlite-core/db.d.ts +5 -5
  108. package/sqlite-core/db.js +17 -16
  109. package/sqlite-core/db.js.map +1 -1
  110. package/tidb-serverless/driver.cjs +3 -1
  111. package/tidb-serverless/driver.cjs.map +1 -1
  112. package/tidb-serverless/driver.d.cts +3 -1
  113. package/tidb-serverless/driver.d.ts +3 -1
  114. package/tidb-serverless/driver.js +3 -1
  115. package/tidb-serverless/driver.js.map +1 -1
  116. package/utils.cjs.map +1 -1
  117. package/utils.d.cts +1 -0
  118. package/utils.d.ts +1 -0
  119. package/utils.js.map +1 -1
  120. package/vercel-postgres/driver.cjs +3 -1
  121. package/vercel-postgres/driver.cjs.map +1 -1
  122. package/vercel-postgres/driver.d.cts +3 -1
  123. package/vercel-postgres/driver.d.ts +3 -1
  124. package/vercel-postgres/driver.js +3 -1
  125. package/vercel-postgres/driver.js.map +1 -1
  126. package/version.cjs +1 -1
  127. package/version.d.cts +1 -1
  128. package/version.d.ts +1 -1
  129. package/version.js +1 -1
  130. package/xata-http/driver.cjs +3 -1
  131. package/xata-http/driver.cjs.map +1 -1
  132. package/xata-http/driver.d.cts +3 -1
  133. package/xata-http/driver.d.ts +3 -1
  134. package/xata-http/driver.js +3 -1
  135. package/xata-http/driver.js.map +1 -1
package/monodriver.d.ts CHANGED
@@ -1,6 +1,5 @@
1
- /// <reference types="@cloudflare/workers-types" />
2
- /// <reference types="node" />
3
1
  /// <reference types="bun-types" />
2
+ /// <reference types="node" />
4
3
  import type { RDSDataClient, RDSDataClientConfig as RDSConfig } from '@aws-sdk/client-rds-data';
5
4
  import type { Client as LibsqlClient, Config as LibsqlConfig } from '@libsql/client';
6
5
  import type { HTTPTransactionOptions as NeonHttpConfig, NeonQueryFunction, Pool as NeonServerlessPool, PoolConfig as NeonServerlessConfig, QueryResult, QueryResultRow } from '@neondatabase/serverless';
@@ -15,7 +14,7 @@ import type { Options as PostgresJSOptions, PostgresType as PostgresJSPostgresTy
15
14
  import type { AwsDataApiPgDatabase, DrizzleAwsDataApiPgConfig } from "./aws-data-api/pg/index.js";
16
15
  import type { BetterSQLite3Database as DrizzleBetterSQLite3Database } from "./better-sqlite3/index.js";
17
16
  import type { BunSQLiteDatabase } from "./bun-sqlite/index.js";
18
- import type { DrizzleD1Database } from "./d1/index.js";
17
+ import type { AnyD1Database, DrizzleD1Database } from "./d1/index.js";
19
18
  import type { LibSQLDatabase } from "./libsql/index.js";
20
19
  import type { MySql2Database, MySql2DrizzleConfig } from "./mysql2/index.js";
21
20
  import type { NeonHttpDatabase } from "./neon-http/index.js";
@@ -24,9 +23,9 @@ import type { NodePgDatabase } from "./node-postgres/driver.js";
24
23
  import type { PlanetScaleDatabase } from "./planetscale-serverless/index.js";
25
24
  import type { PostgresJsDatabase } from "./postgres-js/index.js";
26
25
  import type { TiDBServerlessDatabase } from "./tidb-serverless/index.js";
27
- import type { DrizzleConfig } from "./utils.js";
26
+ import type { DrizzleConfig, IfNotImported } from "./utils.js";
28
27
  import type { VercelPgDatabase } from "./vercel-postgres/index.js";
29
- type BunSqliteDatabaseOptions = number | {
28
+ type BunSqliteDatabaseOptions = {
30
29
  /**
31
30
  * Open the database as read-only (no write operations, no create).
32
31
  *
@@ -46,23 +45,21 @@ type BunSqliteDatabaseOptions = number | {
46
45
  */
47
46
  readwrite?: boolean;
48
47
  };
49
- type BunSqliteDatabaseConfig = {
50
- filename?: ':memory:' | (string & {});
51
- options?: BunSqliteDatabaseOptions;
52
- } | ':memory:' | (string & {}) | undefined;
53
- type BetterSQLite3DatabaseConfig = {
54
- filename?: ':memory:' | (string & {}) | Buffer;
55
- options?: BetterSQLite3Options;
56
- } | ':memory:' | (string & {}) | undefined;
57
- type MonodriverNeonHttpConfig = {
48
+ type BunSqliteDatabaseConfig = ({
49
+ source?: string;
50
+ } & BunSqliteDatabaseOptions) | string | undefined;
51
+ type BetterSQLite3DatabaseConfig = ({
52
+ source?: string | Buffer;
53
+ } & BetterSQLite3Options) | string | undefined;
54
+ type MonodriverNeonHttpConfig = ({
58
55
  connectionString: string;
59
- options?: NeonHttpConfig<boolean, boolean>;
60
- } | string;
61
- type DatabaseClient = 'node-postgres' | 'postgres-js' | 'neon-serverless' | 'neon-http' | 'vercel-postgres' | 'aws-data-api-pg' | 'planetscale' | 'mysql2' | 'tidb-serverless' | 'libsql' | 'turso' | 'd1' | 'bun:sqlite' | 'better-sqlite3';
56
+ } & NeonHttpConfig<boolean, boolean>) | string;
57
+ type AwsDataApiConnectionConfig = RDSConfig & Omit<DrizzleAwsDataApiPgConfig, keyof DrizzleConfig>;
58
+ type DatabaseClient = 'node-postgres' | 'postgres-js' | 'neon-websocket' | 'neon-http' | 'vercel-postgres' | 'aws-data-api-pg' | 'planetscale' | 'mysql2' | 'tidb-serverless' | 'libsql' | 'turso' | 'd1' | 'bun:sqlite' | 'better-sqlite3';
62
59
  type ClientDrizzleInstanceMap<TSchema extends Record<string, any>> = {
63
60
  'node-postgres': NodePgDatabase<TSchema>;
64
61
  'postgres-js': PostgresJsDatabase<TSchema>;
65
- 'neon-serverless': NeonDatabase<TSchema>;
62
+ 'neon-websocket': NeonDatabase<TSchema>;
66
63
  'neon-http': NeonHttpDatabase<TSchema>;
67
64
  'vercel-postgres': VercelPgDatabase<TSchema>;
68
65
  'aws-data-api-pg': AwsDataApiPgDatabase<TSchema>;
@@ -79,7 +76,7 @@ type Primitive = string | number | boolean | undefined | null;
79
76
  type ClientInstanceMap = {
80
77
  'node-postgres': NodePgPool;
81
78
  'postgres-js': PostgresJsClient;
82
- 'neon-serverless': NeonServerlessPool;
79
+ 'neon-websocket': NeonServerlessPool;
83
80
  'neon-http': NeonQueryFunction<boolean, boolean>;
84
81
  'vercel-postgres': VercelPool & (<O extends QueryResultRow>(strings: TemplateStringsArray, ...values: Primitive[]) => Promise<QueryResult<O>>);
85
82
  'aws-data-api-pg': RDSDataClient;
@@ -88,26 +85,45 @@ type ClientInstanceMap = {
88
85
  'tidb-serverless': TiDBConnection;
89
86
  libsql: LibsqlClient;
90
87
  turso: LibsqlClient;
91
- d1: D1Database;
88
+ d1: AnyD1Database;
92
89
  'bun:sqlite': BunDatabase;
93
90
  'better-sqlite3': BetterSQLite3Database;
94
91
  };
92
+ type ClientTypeImportErrorMap = {
93
+ 'node-postgres': 'pg`, `@types/pg';
94
+ 'postgres-js': 'postgres';
95
+ 'neon-websocket': '@neondatabase/serverless';
96
+ 'neon-http': '@neondatabase/serverless';
97
+ 'vercel-postgres': '@vercel/postgres';
98
+ 'aws-data-api-pg': '@aws-sdk/client-rds-data';
99
+ planetscale: '@planetscale/database';
100
+ mysql2: 'mysql2';
101
+ 'tidb-serverless': '@tidbcloud/serverless';
102
+ libsql: '@libsql/client';
103
+ turso: '@libsql/client';
104
+ d1: '@cloudflare/workers-types` or `@miniflare/d1';
105
+ 'bun:sqlite': 'bun-types';
106
+ 'better-sqlite3': 'better-sqlite3';
107
+ };
108
+ type ImportTypeError<TClient extends DatabaseClient> = `Please install \`${ClientTypeImportErrorMap[TClient]}\` for Drizzle ORM to connect to database`;
95
109
  type InitializerParams = {
96
110
  'node-postgres': {
97
- connection?: string | NodePgPoolConfig;
111
+ connection: string | NodePgPoolConfig;
98
112
  };
99
113
  'postgres-js': {
100
- connection: string | PostgresJSOptions<Record<string, PostgresJSPostgresType>>;
114
+ connection: string | ({
115
+ url?: string;
116
+ } & PostgresJSOptions<Record<string, PostgresJSPostgresType>>);
101
117
  };
102
- 'neon-serverless': {
103
- connection?: string | NeonServerlessConfig;
118
+ 'neon-websocket': {
119
+ connection: string | NeonServerlessConfig;
104
120
  };
105
121
  'neon-http': {
106
122
  connection: MonodriverNeonHttpConfig;
107
123
  };
108
124
  'vercel-postgres': {};
109
125
  'aws-data-api-pg': {
110
- connection?: RDSConfig;
126
+ connection: AwsDataApiConnectionConfig;
111
127
  };
112
128
  planetscale: {
113
129
  connection: PlanetscaleConfig | string;
@@ -125,7 +141,7 @@ type InitializerParams = {
125
141
  connection: LibsqlConfig | string;
126
142
  };
127
143
  d1: {
128
- connection: D1Database;
144
+ connection: AnyD1Database;
129
145
  };
130
146
  'bun:sqlite': {
131
147
  connection?: BunSqliteDatabaseConfig;
@@ -139,36 +155,30 @@ type DetermineClient<TClient extends DatabaseClient, TSchema extends Record<stri
139
155
  };
140
156
  export declare function drizzle<TClient extends DatabaseClient, TSchema extends Record<string, unknown> = Record<string, never>>(client: TClient, ...params: TClient extends 'bun:sqlite' | 'better-sqlite3' ? ([
141
157
  ] | [
142
- (InitializerParams[TClient] & DrizzleConfig<TSchema>)
143
- ] | [
144
- ':memory:'
145
- ] | [
146
- (string & {})
147
- ]) : TClient extends 'vercel-postgres' ? ([] | [
148
- (InitializerParams[TClient] & DrizzleConfig<TSchema>)
149
- ]) : TClient extends 'node-postgres' ? ([
150
- (InitializerParams[TClient] & DrizzleConfig<TSchema>)
151
- ] | [
152
- string
153
- ]) : TClient extends 'postgres-js' | 'tidb-serverless' | 'libsql' | 'turso' | 'planetscale' ? ([
154
- (InitializerParams[TClient] & DrizzleConfig<TSchema>)
155
- ] | [
156
- string
157
- ]) : TClient extends 'mysql2' ? ([
158
- (InitializerParams[TClient] & MySql2DrizzleConfig<TSchema>)
159
- ] | [
160
- string
161
- ]) : TClient extends 'aws-data-api-pg' ? [
162
- InitializerParams[TClient] & DrizzleAwsDataApiPgConfig<TSchema>
163
- ] : TClient extends 'neon-serverless' ? ([
164
- InitializerParams[TClient] & DrizzleConfig<TSchema> & {
158
+ (IfNotImported<ClientInstanceMap[TClient], {
159
+ connection: ImportTypeError<TClient>;
160
+ }, InitializerParams[TClient]> & DrizzleConfig<TSchema>)
161
+ ] | [string]) : TClient extends 'vercel-postgres' ? ([] | [
162
+ (IfNotImported<ClientInstanceMap[TClient], {
163
+ connection: ImportTypeError<TClient>;
164
+ }, InitializerParams[TClient]> & DrizzleConfig<TSchema>)
165
+ ]) : TClient extends 'postgres-js' | 'tidb-serverless' | 'libsql' | 'turso' | 'planetscale' | 'neon-http' | 'node-postgres' ? ([
166
+ (IfNotImported<ClientInstanceMap[TClient], {
167
+ connection: ImportTypeError<TClient>;
168
+ }, InitializerParams[TClient]> & DrizzleConfig<TSchema>)
169
+ ] | [string]) : TClient extends 'mysql2' ? ([
170
+ (IfNotImported<ClientInstanceMap[TClient], {
171
+ connection: ImportTypeError<TClient>;
172
+ }, InitializerParams[TClient]> & MySql2DrizzleConfig<TSchema>)
173
+ ] | [string]) : TClient extends 'neon-websocket' ? ([
174
+ IfNotImported<ClientInstanceMap[TClient], {
175
+ connection: ImportTypeError<TClient>;
176
+ }, InitializerParams[TClient]> & DrizzleConfig<TSchema> & {
165
177
  ws?: any;
166
178
  }
167
- ] | [string] | []) : TClient extends 'neon-http' ? ([
168
- InitializerParams[TClient] & DrizzleConfig<TSchema>
169
- ] | [
170
- string
171
- ]) : [
172
- (InitializerParams[TClient] & DrizzleConfig<TSchema>)
179
+ ] | [string]) : [
180
+ (IfNotImported<ClientInstanceMap[TClient], {
181
+ connection: ImportTypeError<TClient>;
182
+ }, InitializerParams[TClient]> & DrizzleConfig<TSchema>)
173
183
  ]): Promise<DetermineClient<TClient, TSchema>>;
174
184
  export {};
package/monodriver.js CHANGED
@@ -9,7 +9,7 @@ function assertUnreachable(_) {
9
9
  async function drizzle(client, ...params) {
10
10
  switch (client) {
11
11
  case "node-postgres": {
12
- const defpg = await import("pg");
12
+ const defpg = await import("pg").catch(() => importError("pg"));
13
13
  const { drizzle: drizzle2 } = await import("./node-postgres");
14
14
  if (typeof params[0] === "object") {
15
15
  const { connection, ...drizzleConfig } = params[0];
@@ -17,25 +17,23 @@ async function drizzle(client, ...params) {
17
17
  connectionString: connection
18
18
  }) : new defpg.default.Pool(connection);
19
19
  const db2 = drizzle2(instance2, drizzleConfig);
20
- db2.$client = instance2;
21
20
  return db2;
22
21
  }
23
22
  const instance = typeof params[0] === "string" ? new defpg.default.Pool({
24
23
  connectionString: params[0]
25
24
  }) : new defpg.default.Pool(params[0]);
26
25
  const db = drizzle2(instance);
27
- db.$client = instance;
28
26
  return db;
29
27
  }
30
28
  case "aws-data-api-pg": {
31
29
  const { connection, ...drizzleConfig } = params[0];
30
+ const { resourceArn, database, secretArn, ...rdsConfig } = connection;
32
31
  const { RDSDataClient } = await import("@aws-sdk/client-rds-data").catch(
33
32
  () => importError("@aws-sdk/client-rds-data")
34
33
  );
35
34
  const { drizzle: drizzle2 } = await import("./aws-data-api/pg");
36
- const instance = connection ? new RDSDataClient(connection) : new RDSDataClient();
37
- const db = drizzle2(instance, drizzleConfig);
38
- db.$client = instance;
35
+ const instance = new RDSDataClient(rdsConfig);
36
+ const db = drizzle2(instance, { resourceArn, database, secretArn, ...drizzleConfig });
39
37
  return db;
40
38
  }
41
39
  case "better-sqlite3": {
@@ -44,49 +42,45 @@ async function drizzle(client, ...params) {
44
42
  if (typeof params[0] === "object") {
45
43
  const { connection, ...drizzleConfig } = params[0];
46
44
  if (typeof connection === "object") {
47
- const { filename, options } = connection;
48
- const instance3 = new Client(filename, options);
45
+ const { source, ...options } = connection;
46
+ const instance3 = new Client(source, options);
49
47
  const db3 = drizzle2(instance3, drizzleConfig);
50
- db3.$client = instance3;
51
48
  return db3;
52
49
  }
53
50
  const instance2 = new Client(connection);
54
51
  const db2 = drizzle2(instance2, drizzleConfig);
55
- db2.$client = instance2;
56
52
  return db2;
57
53
  }
58
54
  const instance = new Client(params[0]);
59
55
  const db = drizzle2(instance);
60
- db.$client = instance;
61
56
  return db;
62
57
  }
63
58
  case "bun:sqlite": {
64
- const { Database: Client } = await import("bun:sqlite").catch(() => importError("bun:sqlite"));
59
+ const { Database: Client } = await import("bun:sqlite").catch(() => {
60
+ throw new Error(`Please use bun to use 'bun:sqlite' for Drizzle ORM to connect to database`);
61
+ });
65
62
  const { drizzle: drizzle2 } = await import("./bun-sqlite");
66
63
  if (typeof params[0] === "object") {
67
64
  const { connection, ...drizzleConfig } = params[0];
68
65
  if (typeof connection === "object") {
69
- const { filename, options } = connection;
70
- const instance3 = new Client(filename, options);
66
+ const { source, ...opts } = connection;
67
+ const options = Object.values(opts).filter((v) => v !== void 0).length ? opts : void 0;
68
+ const instance3 = new Client(source, options);
71
69
  const db3 = drizzle2(instance3, drizzleConfig);
72
- db3.$client = instance3;
73
70
  return db3;
74
71
  }
75
72
  const instance2 = new Client(connection);
76
73
  const db2 = drizzle2(instance2, drizzleConfig);
77
- db2.$client = instance2;
78
74
  return db2;
79
75
  }
80
76
  const instance = new Client(params[0]);
81
77
  const db = drizzle2(instance);
82
- db.$client = instance;
83
78
  return db;
84
79
  }
85
80
  case "d1": {
86
81
  const { connection, ...drizzleConfig } = params[0];
87
82
  const { drizzle: drizzle2 } = await import("./d1");
88
83
  const db = drizzle2(connection, drizzleConfig);
89
- db.$client = connection;
90
84
  return db;
91
85
  }
92
86
  case "libsql":
@@ -98,29 +92,25 @@ async function drizzle(client, ...params) {
98
92
  url: params[0]
99
93
  });
100
94
  const db2 = drizzle2(instance2);
101
- db2.$client = instance2;
102
95
  return db2;
103
96
  }
104
97
  const { connection, ...drizzleConfig } = params[0];
105
98
  const instance = typeof connection === "string" ? createClient({ url: connection }) : createClient(connection);
106
99
  const db = drizzle2(instance, drizzleConfig);
107
- db.$client = instance;
108
100
  return db;
109
101
  }
110
102
  case "mysql2": {
111
- const { createPool } = await import("mysql2/promise").catch(() => importError("mysql2/promise"));
103
+ const { createPool } = await import("mysql2/promise").catch(() => importError("mysql2"));
112
104
  const { drizzle: drizzle2 } = await import("./mysql2");
113
105
  if (typeof params[0] === "object") {
114
106
  const { connection, ...drizzleConfig } = params[0];
115
107
  const instance2 = createPool(connection);
116
108
  const db2 = drizzle2(instance2, drizzleConfig);
117
- db2.$client = instance2;
118
109
  return db2;
119
110
  }
120
111
  const connectionString = params[0];
121
112
  const instance = createPool(connectionString);
122
113
  const db = drizzle2(instance);
123
- db.$client = instance;
124
114
  return db;
125
115
  }
126
116
  case "neon-http": {
@@ -129,23 +119,20 @@ async function drizzle(client, ...params) {
129
119
  if (typeof params[0] === "object") {
130
120
  const { connection, ...drizzleConfig } = params[0];
131
121
  if (typeof connection === "object") {
132
- const { connectionString, options } = connection;
122
+ const { connectionString, ...options } = connection;
133
123
  const instance3 = neon(connectionString, options);
134
124
  const db3 = drizzle2(instance3, drizzleConfig);
135
- db3.$client = instance3;
136
125
  return db3;
137
126
  }
138
127
  const instance2 = neon(connection);
139
128
  const db2 = drizzle2(instance2, drizzleConfig);
140
- db2.$client = instance2;
141
129
  return db2;
142
130
  }
143
131
  const instance = neon(params[0]);
144
132
  const db = drizzle2(instance);
145
- db.$client = instance;
146
133
  return db;
147
134
  }
148
- case "neon-serverless": {
135
+ case "neon-websocket": {
149
136
  const { Pool, neonConfig } = await import("@neondatabase/serverless").catch(
150
137
  () => importError("@neondatabase/serverless")
151
138
  );
@@ -155,7 +142,6 @@ async function drizzle(client, ...params) {
155
142
  connectionString: params[0]
156
143
  });
157
144
  const db2 = drizzle2(instance2);
158
- db2.$client = instance2;
159
145
  return db2;
160
146
  }
161
147
  if (typeof params[0] === "object") {
@@ -167,12 +153,10 @@ async function drizzle(client, ...params) {
167
153
  connectionString: connection
168
154
  }) : new Pool(connection);
169
155
  const db2 = drizzle2(instance2, drizzleConfig);
170
- db2.$client = instance2;
171
156
  return db2;
172
157
  }
173
158
  const instance = new Pool();
174
159
  const db = drizzle2(instance);
175
- db.$client = instance;
176
160
  return db;
177
161
  }
178
162
  case "planetscale": {
@@ -186,14 +170,12 @@ async function drizzle(client, ...params) {
186
170
  connection
187
171
  );
188
172
  const db2 = drizzle2(instance2, drizzleConfig);
189
- db2.$client = instance2;
190
173
  return db2;
191
174
  }
192
175
  const instance = new Client({
193
176
  url: params[0]
194
177
  });
195
178
  const db = drizzle2(instance);
196
- db.$client = instance;
197
179
  return db;
198
180
  }
199
181
  case "postgres-js": {
@@ -201,14 +183,18 @@ async function drizzle(client, ...params) {
201
183
  const { drizzle: drizzle2 } = await import("./postgres-js");
202
184
  if (typeof params[0] === "object") {
203
185
  const { connection, ...drizzleConfig } = params[0];
186
+ if (typeof connection === "object" && connection.url !== void 0) {
187
+ const { url, ...config } = connection;
188
+ const instance3 = client2(url, config);
189
+ const db3 = drizzle2(instance3, drizzleConfig);
190
+ return db3;
191
+ }
204
192
  const instance2 = client2(connection);
205
193
  const db2 = drizzle2(instance2, drizzleConfig);
206
- db2.$client = instance2;
207
194
  return db2;
208
195
  }
209
196
  const instance = client2(params[0]);
210
197
  const db = drizzle2(instance);
211
- db.$client = instance;
212
198
  return db;
213
199
  }
214
200
  case "tidb-serverless": {
@@ -219,7 +205,6 @@ async function drizzle(client, ...params) {
219
205
  url: params[0]
220
206
  });
221
207
  const db2 = drizzle2(instance2);
222
- db2.$client = instance2;
223
208
  return db2;
224
209
  }
225
210
  const { connection, ...drizzleConfig } = params[0];
@@ -227,7 +212,6 @@ async function drizzle(client, ...params) {
227
212
  url: connection
228
213
  }) : connect(connection);
229
214
  const db = drizzle2(instance, drizzleConfig);
230
- db.$client = instance;
231
215
  return db;
232
216
  }
233
217
  case "vercel-postgres": {
@@ -235,7 +219,6 @@ async function drizzle(client, ...params) {
235
219
  const { sql } = await import("@vercel/postgres").catch(() => importError("@vercel/postgres"));
236
220
  const { drizzle: drizzle2 } = await import("./vercel-postgres");
237
221
  const db = drizzle2(sql, drizzleConfig);
238
- db.$client = sql;
239
222
  return db;
240
223
  }
241
224
  }
package/monodriver.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/monodriver.ts"],"sourcesContent":["/* eslint-disable import/extensions */\nimport type { RDSDataClient, RDSDataClientConfig, RDSDataClientConfig as RDSConfig } from '@aws-sdk/client-rds-data';\nimport type { Client as LibsqlClient, Config as LibsqlConfig } from '@libsql/client';\nimport type {\n\tHTTPTransactionOptions as NeonHttpConfig,\n\tNeonQueryFunction,\n\tPool as NeonServerlessPool,\n\tPoolConfig as NeonServerlessConfig,\n\tQueryResult,\n\tQueryResultRow,\n} from '@neondatabase/serverless';\nimport type { Client as PlanetscaleClient, Config as PlanetscaleConfig } from '@planetscale/database';\nimport type { Config as TiDBServerlessConfig, Connection as TiDBConnection } from '@tidbcloud/serverless';\nimport type { VercelPool } from '@vercel/postgres';\nimport type { Database as BetterSQLite3Database, Options as BetterSQLite3Options } from 'better-sqlite3';\nimport type { Database as BunDatabase } from 'bun:sqlite';\nimport type { Pool as Mysql2Pool, PoolOptions as Mysql2Config } from 'mysql2';\nimport type { Pool as NodePgPool, PoolConfig as NodePgPoolConfig } from 'pg';\nimport type {\n\tOptions as PostgresJSOptions,\n\tPostgresType as PostgresJSPostgresType,\n\tSql as PostgresJsClient,\n} from 'postgres';\nimport type { AwsDataApiPgDatabase, DrizzleAwsDataApiPgConfig } from './aws-data-api/pg/index.ts';\nimport type { BetterSQLite3Database as DrizzleBetterSQLite3Database } from './better-sqlite3/index.ts';\nimport type { BunSQLiteDatabase } from './bun-sqlite/index.ts';\nimport type { DrizzleD1Database } from './d1/index.ts';\nimport type { LibSQLDatabase } from './libsql/index.ts';\nimport type { MySql2Database, MySql2DrizzleConfig } from './mysql2/index.ts';\nimport type { NeonHttpDatabase } from './neon-http/index.ts';\nimport type { NeonDatabase } from './neon-serverless/index.ts';\nimport type { NodePgDatabase } from './node-postgres/driver.ts';\nimport type { PlanetScaleDatabase } from './planetscale-serverless/index.ts';\nimport type { PostgresJsDatabase } from './postgres-js/index.ts';\nimport type { TiDBServerlessDatabase } from './tidb-serverless/index.ts';\nimport type { DrizzleConfig } from './utils.ts';\nimport type { VercelPgDatabase } from './vercel-postgres/index.ts';\n\ntype BunSqliteDatabaseOptions =\n\t| number\n\t| {\n\t\t/**\n\t\t * Open the database as read-only (no write operations, no create).\n\t\t *\n\t\t * Equivalent to {@link constants.SQLITE_OPEN_READONLY}\n\t\t */\n\t\treadonly?: boolean;\n\t\t/**\n\t\t * Allow creating a new database\n\t\t *\n\t\t * Equivalent to {@link constants.SQLITE_OPEN_CREATE}\n\t\t */\n\t\tcreate?: boolean;\n\t\t/**\n\t\t * Open the database as read-write\n\t\t *\n\t\t * Equivalent to {@link constants.SQLITE_OPEN_READWRITE}\n\t\t */\n\t\treadwrite?: boolean;\n\t};\n\ntype BunSqliteDatabaseConfig =\n\t| {\n\t\tfilename?: ':memory:' | (string & {});\n\t\toptions?: BunSqliteDatabaseOptions;\n\t}\n\t| ':memory:'\n\t| (string & {})\n\t| undefined;\n\ntype BetterSQLite3DatabaseConfig =\n\t| {\n\t\tfilename?:\n\t\t\t| ':memory:'\n\t\t\t| (string & {})\n\t\t\t| Buffer;\n\t\toptions?: BetterSQLite3Options;\n\t}\n\t| ':memory:'\n\t| (string & {})\n\t| undefined;\n\ntype MonodriverNeonHttpConfig = {\n\tconnectionString: string;\n\toptions?: NeonHttpConfig<boolean, boolean>;\n} | string;\n\ntype DatabaseClient =\n\t| 'node-postgres'\n\t| 'postgres-js'\n\t| 'neon-serverless'\n\t| 'neon-http'\n\t| 'vercel-postgres'\n\t| 'aws-data-api-pg'\n\t| 'planetscale'\n\t| 'mysql2'\n\t| 'tidb-serverless'\n\t| 'libsql'\n\t| 'turso'\n\t| 'd1'\n\t| 'bun:sqlite'\n\t| 'better-sqlite3';\n\ntype ClientDrizzleInstanceMap<TSchema extends Record<string, any>> = {\n\t'node-postgres': NodePgDatabase<TSchema>;\n\t'postgres-js': PostgresJsDatabase<TSchema>;\n\t'neon-serverless': NeonDatabase<TSchema>;\n\t'neon-http': NeonHttpDatabase<TSchema>;\n\t'vercel-postgres': VercelPgDatabase<TSchema>;\n\t'aws-data-api-pg': AwsDataApiPgDatabase<TSchema>;\n\tplanetscale: PlanetScaleDatabase<TSchema>;\n\tmysql2: MySql2Database<TSchema>;\n\t'tidb-serverless': TiDBServerlessDatabase<TSchema>;\n\tlibsql: LibSQLDatabase<TSchema>;\n\tturso: LibSQLDatabase<TSchema>;\n\td1: DrizzleD1Database<TSchema>;\n\t'bun:sqlite': BunSQLiteDatabase<TSchema>;\n\t'better-sqlite3': DrizzleBetterSQLite3Database<TSchema>;\n};\n\ntype Primitive = string | number | boolean | undefined | null;\n\ntype ClientInstanceMap = {\n\t'node-postgres': NodePgPool;\n\t'postgres-js': PostgresJsClient;\n\t'neon-serverless': NeonServerlessPool;\n\t'neon-http': NeonQueryFunction<boolean, boolean>;\n\t'vercel-postgres':\n\t\t& VercelPool\n\t\t& (<O extends QueryResultRow>(strings: TemplateStringsArray, ...values: Primitive[]) => Promise<QueryResult<O>>);\n\t'aws-data-api-pg': RDSDataClient;\n\tplanetscale: PlanetscaleClient;\n\tmysql2: Mysql2Pool;\n\t'tidb-serverless': TiDBConnection;\n\tlibsql: LibsqlClient;\n\tturso: LibsqlClient;\n\td1: D1Database;\n\t'bun:sqlite': BunDatabase;\n\t'better-sqlite3': BetterSQLite3Database;\n};\n\ntype InitializerParams = {\n\t'node-postgres': {\n\t\tconnection?: string | NodePgPoolConfig;\n\t};\n\t'postgres-js': {\n\t\tconnection: string | PostgresJSOptions<Record<string, PostgresJSPostgresType>>;\n\t};\n\t'neon-serverless': {\n\t\tconnection?: string | NeonServerlessConfig;\n\t};\n\t'neon-http': {\n\t\tconnection: MonodriverNeonHttpConfig;\n\t};\n\t'vercel-postgres': {};\n\t'aws-data-api-pg': {\n\t\tconnection?: RDSConfig;\n\t};\n\tplanetscale: {\n\t\tconnection: PlanetscaleConfig | string;\n\t};\n\tmysql2: {\n\t\tconnection: Mysql2Config | string;\n\t};\n\t'tidb-serverless': {\n\t\tconnection: TiDBServerlessConfig | string;\n\t};\n\tlibsql: {\n\t\tconnection: LibsqlConfig | string;\n\t};\n\tturso: {\n\t\tconnection: LibsqlConfig | string;\n\t};\n\td1: {\n\t\tconnection: D1Database;\n\t};\n\t'bun:sqlite': {\n\t\tconnection?: BunSqliteDatabaseConfig;\n\t};\n\t'better-sqlite3': {\n\t\tconnection?: BetterSQLite3DatabaseConfig;\n\t};\n};\n\ntype DetermineClient<\n\tTClient extends DatabaseClient,\n\tTSchema extends Record<string, unknown>,\n> =\n\t& ClientDrizzleInstanceMap<\n\t\tTSchema\n\t>[TClient]\n\t& {\n\t\t$client: ClientInstanceMap[TClient];\n\t};\n\nconst importError = (libName: string) => {\n\tthrow new Error(\n\t\t`Please install '${libName}' for Drizzle ORM to connect to database`,\n\t);\n};\n\nfunction assertUnreachable(_: never | undefined): never {\n\tthrow new Error(\"Didn't expect to get here\");\n}\n\nexport async function drizzle<\n\tTClient extends DatabaseClient,\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n>(\n\tclient: TClient,\n\t...params: TClient extends 'bun:sqlite' | 'better-sqlite3' ? (\n\t\t\t[] | [\n\t\t\t\t(\n\t\t\t\t\t& InitializerParams[TClient]\n\t\t\t\t\t& DrizzleConfig<TSchema>\n\t\t\t\t),\n\t\t\t] | [\n\t\t\t\t':memory:',\n\t\t\t] | [\n\t\t\t\t(string & {}),\n\t\t\t]\n\t\t)\n\t\t: TClient extends 'vercel-postgres' ? ([] | [\n\t\t\t\t(\n\t\t\t\t\t& InitializerParams[TClient]\n\t\t\t\t\t& DrizzleConfig<TSchema>\n\t\t\t\t),\n\t\t\t])\n\t\t: TClient extends 'node-postgres' ? (\n\t\t\t\t[\n\t\t\t\t\t(\n\t\t\t\t\t\t& InitializerParams[TClient]\n\t\t\t\t\t\t& DrizzleConfig<TSchema>\n\t\t\t\t\t),\n\t\t\t\t] | [\n\t\t\t\t\tstring,\n\t\t\t\t]\n\t\t\t)\n\t\t: TClient extends 'postgres-js' | 'tidb-serverless' | 'libsql' | 'turso' | 'planetscale' ? (\n\t\t\t\t[\n\t\t\t\t\t(\n\t\t\t\t\t\t& InitializerParams[TClient]\n\t\t\t\t\t\t& DrizzleConfig<TSchema>\n\t\t\t\t\t),\n\t\t\t\t] | [\n\t\t\t\t\tstring,\n\t\t\t\t]\n\t\t\t)\n\t\t: TClient extends 'mysql2' ? (\n\t\t\t\t[\n\t\t\t\t\t(\n\t\t\t\t\t\t& InitializerParams[TClient]\n\t\t\t\t\t\t& MySql2DrizzleConfig<TSchema>\n\t\t\t\t\t),\n\t\t\t\t] | [\n\t\t\t\t\tstring,\n\t\t\t\t]\n\t\t\t)\n\t\t: TClient extends 'aws-data-api-pg' ? [\n\t\t\t\tInitializerParams[TClient] & DrizzleAwsDataApiPgConfig<TSchema>,\n\t\t\t]\n\t\t: TClient extends 'neon-serverless' ? (\n\t\t\t\t| [\n\t\t\t\t\tInitializerParams[TClient] & DrizzleConfig<TSchema> & {\n\t\t\t\t\t\tws?: any;\n\t\t\t\t\t},\n\t\t\t\t]\n\t\t\t\t| [string]\n\t\t\t\t| []\n\t\t\t)\n\t\t: TClient extends 'neon-http' ? ([\n\t\t\t\tInitializerParams[TClient] & DrizzleConfig<TSchema>,\n\t\t\t] | [\n\t\t\t\tstring,\n\t\t\t])\n\t\t: [\n\t\t\t(\n\t\t\t\t& InitializerParams[TClient]\n\t\t\t\t& DrizzleConfig<TSchema>\n\t\t\t),\n\t\t]\n): Promise<DetermineClient<TClient, TSchema>> {\n\tswitch (client) {\n\t\tcase 'node-postgres': {\n\t\t\tconst defpg = await import('pg');\n\t\t\tconst { drizzle } = await import('./node-postgres');\n\n\t\t\tif (typeof params[0] === 'object') {\n\t\t\t\tconst { connection, ...drizzleConfig } = params[0] as\n\t\t\t\t\t& { connection: NodePgPoolConfig | string }\n\t\t\t\t\t& DrizzleConfig;\n\n\t\t\t\tconst instance = typeof connection === 'string'\n\t\t\t\t\t? new defpg.default.Pool({\n\t\t\t\t\t\tconnectionString: connection,\n\t\t\t\t\t})\n\t\t\t\t\t: new defpg.default.Pool(connection);\n\t\t\t\tconst db = drizzle(instance, drizzleConfig) as any;\n\t\t\t\tdb.$client = instance;\n\n\t\t\t\treturn db;\n\t\t\t}\n\n\t\t\tconst instance = typeof params[0] === 'string'\n\t\t\t\t? new defpg.default.Pool({\n\t\t\t\t\tconnectionString: params[0],\n\t\t\t\t})\n\t\t\t\t: new defpg.default.Pool(params[0]);\n\t\t\tconst db = drizzle(instance) as any;\n\t\t\tdb.$client = instance;\n\n\t\t\treturn db;\n\t\t}\n\t\tcase 'aws-data-api-pg': {\n\t\t\tconst { connection, ...drizzleConfig } = params[0] as\n\t\t\t\t& { connection: RDSDataClientConfig | undefined }\n\t\t\t\t& DrizzleAwsDataApiPgConfig;\n\n\t\t\tconst { RDSDataClient } = await import('@aws-sdk/client-rds-data').catch(() =>\n\t\t\t\timportError('@aws-sdk/client-rds-data')\n\t\t\t);\n\t\t\tconst { drizzle } = await import('./aws-data-api/pg');\n\n\t\t\tconst instance = connection ? new RDSDataClient(connection) : new RDSDataClient();\n\t\t\tconst db = drizzle(instance, drizzleConfig) as any;\n\t\t\tdb.$client = instance;\n\n\t\t\treturn db;\n\t\t}\n\t\tcase 'better-sqlite3': {\n\t\t\tconst { default: Client } = await import('better-sqlite3').catch(() => importError('better-sqlite3'));\n\t\t\tconst { drizzle } = await import('./better-sqlite3');\n\n\t\t\tif (typeof params[0] === 'object') {\n\t\t\t\tconst { connection, ...drizzleConfig } = params[0] as {\n\t\t\t\t\tconnection: BetterSQLite3DatabaseConfig;\n\t\t\t\t} & DrizzleConfig;\n\n\t\t\t\tif (typeof connection === 'object') {\n\t\t\t\t\tconst { filename, options } = connection;\n\n\t\t\t\t\tconst instance = new Client(filename, options);\n\t\t\t\t\tconst db = drizzle(instance, drizzleConfig) as any;\n\t\t\t\t\tdb.$client = instance;\n\n\t\t\t\t\treturn db;\n\t\t\t\t}\n\n\t\t\t\tconst instance = new Client(connection);\n\t\t\t\tconst db = drizzle(instance, drizzleConfig) as any;\n\t\t\t\tdb.$client = instance;\n\n\t\t\t\treturn db;\n\t\t\t}\n\n\t\t\tconst instance = new Client(params[0]);\n\t\t\tconst db = drizzle(instance) as any;\n\t\t\tdb.$client = instance;\n\n\t\t\treturn db;\n\t\t}\n\t\tcase 'bun:sqlite': {\n\t\t\tconst { Database: Client } = await import('bun:sqlite').catch(() => importError('bun:sqlite'));\n\t\t\tconst { drizzle } = await import('./bun-sqlite');\n\n\t\t\tif (typeof params[0] === 'object') {\n\t\t\t\tconst { connection, ...drizzleConfig } = params[0] as {\n\t\t\t\t\tconnection: BunSqliteDatabaseConfig | string | undefined;\n\t\t\t\t} & DrizzleConfig;\n\n\t\t\t\tif (typeof connection === 'object') {\n\t\t\t\t\tconst { filename, options } = connection;\n\n\t\t\t\t\tconst instance = new Client(filename, options);\n\t\t\t\t\tconst db = drizzle(instance, drizzleConfig) as any;\n\t\t\t\t\tdb.$client = instance;\n\n\t\t\t\t\treturn db;\n\t\t\t\t}\n\n\t\t\t\tconst instance = new Client(connection);\n\t\t\t\tconst db = drizzle(instance, drizzleConfig) as any;\n\t\t\t\tdb.$client = instance;\n\n\t\t\t\treturn db;\n\t\t\t}\n\n\t\t\tconst instance = new Client(params[0]);\n\t\t\tconst db = drizzle(instance) as any;\n\t\t\tdb.$client = instance;\n\n\t\t\treturn db;\n\t\t}\n\t\tcase 'd1': {\n\t\t\tconst { connection, ...drizzleConfig } = params[0] as { connection: D1Database } & DrizzleConfig;\n\n\t\t\tconst { drizzle } = await import('./d1');\n\n\t\t\tconst db = drizzle(connection, drizzleConfig) as any;\n\t\t\tdb.$client = connection;\n\n\t\t\treturn db;\n\t\t}\n\t\tcase 'libsql':\n\t\tcase 'turso': {\n\t\t\tconst { createClient } = await import('@libsql/client').catch(() => importError('@libsql/client'));\n\t\t\tconst { drizzle } = await import('./libsql');\n\n\t\t\tif (typeof params[0] === 'string') {\n\t\t\t\tconst instance = createClient({\n\t\t\t\t\turl: params[0],\n\t\t\t\t});\n\t\t\t\tconst db = drizzle(instance) as any;\n\t\t\t\tdb.$client = instance;\n\n\t\t\t\treturn db;\n\t\t\t}\n\n\t\t\tconst { connection, ...drizzleConfig } = params[0] as any as { connection: LibsqlConfig } & DrizzleConfig;\n\n\t\t\tconst instance = typeof connection === 'string' ? createClient({ url: connection }) : createClient(connection);\n\t\t\tconst db = drizzle(instance, drizzleConfig) as any;\n\t\t\tdb.$client = instance;\n\n\t\t\treturn db;\n\t\t}\n\t\tcase 'mysql2': {\n\t\t\tconst { createPool } = await import('mysql2/promise').catch(() => importError('mysql2/promise'));\n\t\t\tconst { drizzle } = await import('./mysql2');\n\n\t\t\tif (typeof params[0] === 'object') {\n\t\t\t\tconst { connection, ...drizzleConfig } = params[0] as\n\t\t\t\t\t& { connection: Mysql2Config | string }\n\t\t\t\t\t& MySql2DrizzleConfig;\n\n\t\t\t\tconst instance = createPool(connection as Mysql2Config);\n\t\t\t\tconst db = drizzle(instance, drizzleConfig) as any;\n\t\t\t\tdb.$client = instance;\n\n\t\t\t\treturn db;\n\t\t\t}\n\n\t\t\tconst connectionString = params[0]!;\n\t\t\tconst instance = createPool(connectionString);\n\n\t\t\tconst db = drizzle(instance) as any;\n\t\t\tdb.$client = instance;\n\n\t\t\treturn db;\n\t\t}\n\t\tcase 'neon-http': {\n\t\t\tconst { neon } = await import('@neondatabase/serverless').catch(() => importError('@neondatabase/serverless'));\n\t\t\tconst { drizzle } = await import('./neon-http');\n\n\t\t\tif (typeof params[0] === 'object') {\n\t\t\t\tconst { connection, ...drizzleConfig } = params[0] as { connection: MonodriverNeonHttpConfig } & DrizzleConfig;\n\n\t\t\t\tif (typeof connection === 'object') {\n\t\t\t\t\tconst { connectionString, options } = connection;\n\n\t\t\t\t\tconst instance = neon(connectionString, options);\n\t\t\t\t\tconst db = drizzle(instance, drizzleConfig) as any;\n\t\t\t\t\tdb.$client = instance;\n\n\t\t\t\t\treturn db;\n\t\t\t\t}\n\n\t\t\t\tconst instance = neon(connection);\n\t\t\t\tconst db = drizzle(instance, drizzleConfig) as any;\n\t\t\t\tdb.$client = instance;\n\n\t\t\t\treturn db;\n\t\t\t}\n\n\t\t\tconst instance = neon(params[0]!);\n\t\t\tconst db = drizzle(instance) as any;\n\t\t\tdb.$client = instance;\n\n\t\t\treturn db;\n\t\t}\n\t\tcase 'neon-serverless': {\n\t\t\tconst { Pool, neonConfig } = await import('@neondatabase/serverless').catch(() =>\n\t\t\t\timportError('@neondatabase/serverless')\n\t\t\t);\n\t\t\tconst { drizzle } = await import('./neon-serverless');\n\t\t\tif (typeof params[0] === 'string') {\n\t\t\t\tconst instance = new Pool({\n\t\t\t\t\tconnectionString: params[0],\n\t\t\t\t});\n\n\t\t\t\tconst db = drizzle(instance) as any;\n\t\t\t\tdb.$client = instance;\n\n\t\t\t\treturn db;\n\t\t\t}\n\n\t\t\tif (typeof params[0] === 'object') {\n\t\t\t\tconst { connection, ws, ...drizzleConfig } = params[0] as {\n\t\t\t\t\tconnection?: NeonServerlessConfig | string;\n\t\t\t\t\tws?: any;\n\t\t\t\t} & DrizzleConfig;\n\n\t\t\t\tif (ws) {\n\t\t\t\t\tneonConfig.webSocketConstructor = ws;\n\t\t\t\t}\n\n\t\t\t\tconst instance = typeof connection === 'string'\n\t\t\t\t\t? new Pool({\n\t\t\t\t\t\tconnectionString: connection,\n\t\t\t\t\t})\n\t\t\t\t\t: new Pool(connection);\n\n\t\t\t\tconst db = drizzle(instance, drizzleConfig) as any;\n\t\t\t\tdb.$client = instance;\n\n\t\t\t\treturn db;\n\t\t\t}\n\n\t\t\tconst instance = new Pool();\n\t\t\tconst db = drizzle(instance) as any;\n\t\t\tdb.$client = instance;\n\n\t\t\treturn db;\n\t\t}\n\t\tcase 'planetscale': {\n\t\t\tconst { Client } = await import('@planetscale/database').catch(() => importError('@planetscale/database'));\n\t\t\tconst { drizzle } = await import('./planetscale-serverless');\n\n\t\t\tif (typeof params[0] === 'object') {\n\t\t\t\tconst { connection, ...drizzleConfig } = params[0] as\n\t\t\t\t\t& { connection: PlanetscaleConfig | string }\n\t\t\t\t\t& DrizzleConfig;\n\n\t\t\t\tconst instance = typeof connection === 'string'\n\t\t\t\t\t? new Client({\n\t\t\t\t\t\turl: connection,\n\t\t\t\t\t})\n\t\t\t\t\t: new Client(\n\t\t\t\t\t\tconnection,\n\t\t\t\t\t);\n\t\t\t\tconst db = drizzle(instance, drizzleConfig) as any;\n\t\t\t\tdb.$client = instance;\n\n\t\t\t\treturn db;\n\t\t\t}\n\n\t\t\tconst instance = new Client({\n\t\t\t\turl: params[0],\n\t\t\t});\n\t\t\tconst db = drizzle(instance) as any;\n\t\t\tdb.$client = instance;\n\n\t\t\treturn db;\n\t\t}\n\t\tcase 'postgres-js': {\n\t\t\tconst { default: client } = await import('postgres').catch(() => importError('postgres'));\n\t\t\tconst { drizzle } = await import('./postgres-js');\n\n\t\t\tif (typeof params[0] === 'object') {\n\t\t\t\tconst { connection, ...drizzleConfig } = params[0] as {\n\t\t\t\t\tconnection: PostgresJSOptions<Record<string, PostgresJSPostgresType>>;\n\t\t\t\t} & DrizzleConfig;\n\n\t\t\t\tconst instance = client(connection);\n\n\t\t\t\tconst db = drizzle(instance, drizzleConfig) as any;\n\t\t\t\tdb.$client = instance;\n\n\t\t\t\treturn db;\n\t\t\t}\n\n\t\t\tconst instance = client(params[0]!);\n\t\t\tconst db = drizzle(instance) as any;\n\t\t\tdb.$client = instance;\n\n\t\t\treturn db;\n\t\t}\n\t\tcase 'tidb-serverless': {\n\t\t\tconst { connect } = await import('@tidbcloud/serverless').catch(() => importError('@tidbcloud/serverless'));\n\t\t\tconst { drizzle } = await import('./tidb-serverless');\n\n\t\t\tif (typeof params[0] === 'string') {\n\t\t\t\tconst instance = connect({\n\t\t\t\t\turl: params[0],\n\t\t\t\t});\n\t\t\t\tconst db = drizzle(instance) as any;\n\t\t\t\tdb.$client = instance;\n\n\t\t\t\treturn db;\n\t\t\t}\n\n\t\t\tconst { connection, ...drizzleConfig } = params[0] as\n\t\t\t\t& { connection: TiDBServerlessConfig | string }\n\t\t\t\t& DrizzleConfig;\n\n\t\t\tconst instance = typeof connection === 'string'\n\t\t\t\t? connect({\n\t\t\t\t\turl: connection,\n\t\t\t\t})\n\t\t\t\t: connect(connection);\n\t\t\tconst db = drizzle(instance, drizzleConfig) as any;\n\t\t\tdb.$client = instance;\n\n\t\t\treturn db;\n\t\t}\n\t\tcase 'vercel-postgres': {\n\t\t\tconst drizzleConfig = params[0] as DrizzleConfig | undefined;\n\t\t\tconst { sql } = await import('@vercel/postgres').catch(() => importError('@vercel/postgres'));\n\t\t\tconst { drizzle } = await import('./vercel-postgres');\n\n\t\t\tconst db = drizzle(sql, drizzleConfig) as any;\n\t\t\tdb.$client = sql;\n\n\t\t\treturn db;\n\t\t}\n\t}\n\n\tassertUnreachable(client);\n}\n"],"mappings":"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","names":["drizzle","instance","db","client"]}
1
+ {"version":3,"sources":["../src/monodriver.ts"],"sourcesContent":["/* eslint-disable import/extensions */\nimport type { RDSDataClient, RDSDataClientConfig as RDSConfig } from '@aws-sdk/client-rds-data';\nimport type { Client as LibsqlClient, Config as LibsqlConfig } from '@libsql/client';\nimport type {\n\tHTTPTransactionOptions as NeonHttpConfig,\n\tNeonQueryFunction,\n\tPool as NeonServerlessPool,\n\tPoolConfig as NeonServerlessConfig,\n\tQueryResult,\n\tQueryResultRow,\n} from '@neondatabase/serverless';\nimport type { Client as PlanetscaleClient, Config as PlanetscaleConfig } from '@planetscale/database';\nimport type { Config as TiDBServerlessConfig, Connection as TiDBConnection } from '@tidbcloud/serverless';\nimport type { VercelPool } from '@vercel/postgres';\nimport type { Database as BetterSQLite3Database, Options as BetterSQLite3Options } from 'better-sqlite3';\nimport type { Database as BunDatabase } from 'bun:sqlite';\nimport type { Pool as Mysql2Pool, PoolOptions as Mysql2Config } from 'mysql2';\nimport type { Pool as NodePgPool, PoolConfig as NodePgPoolConfig } from 'pg';\nimport type {\n\tOptions as PostgresJSOptions,\n\tPostgresType as PostgresJSPostgresType,\n\tSql as PostgresJsClient,\n} from 'postgres';\nimport type { AwsDataApiPgDatabase, DrizzleAwsDataApiPgConfig } from './aws-data-api/pg/index.ts';\nimport type { BetterSQLite3Database as DrizzleBetterSQLite3Database } from './better-sqlite3/index.ts';\nimport type { BunSQLiteDatabase } from './bun-sqlite/index.ts';\nimport type { AnyD1Database, DrizzleD1Database } from './d1/index.ts';\nimport type { LibSQLDatabase } from './libsql/index.ts';\nimport type { MySql2Database, MySql2DrizzleConfig } from './mysql2/index.ts';\nimport type { NeonHttpDatabase } from './neon-http/index.ts';\nimport type { NeonDatabase } from './neon-serverless/index.ts';\nimport type { NodePgDatabase } from './node-postgres/driver.ts';\nimport type { PlanetScaleDatabase } from './planetscale-serverless/index.ts';\nimport type { PostgresJsDatabase } from './postgres-js/index.ts';\nimport type { TiDBServerlessDatabase } from './tidb-serverless/index.ts';\nimport type { DrizzleConfig, IfNotImported } from './utils.ts';\nimport type { VercelPgDatabase } from './vercel-postgres/index.ts';\n\ntype BunSqliteDatabaseOptions = {\n\t/**\n\t * Open the database as read-only (no write operations, no create).\n\t *\n\t * Equivalent to {@link constants.SQLITE_OPEN_READONLY}\n\t */\n\treadonly?: boolean;\n\t/**\n\t * Allow creating a new database\n\t *\n\t * Equivalent to {@link constants.SQLITE_OPEN_CREATE}\n\t */\n\tcreate?: boolean;\n\t/**\n\t * Open the database as read-write\n\t *\n\t * Equivalent to {@link constants.SQLITE_OPEN_READWRITE}\n\t */\n\treadwrite?: boolean;\n};\n\ntype BunSqliteDatabaseConfig =\n\t| ({\n\t\tsource?: string;\n\t} & BunSqliteDatabaseOptions)\n\t| string\n\t| undefined;\n\ntype BetterSQLite3DatabaseConfig =\n\t| ({\n\t\tsource?:\n\t\t\t| string\n\t\t\t| Buffer;\n\t} & BetterSQLite3Options)\n\t| string\n\t| undefined;\n\ntype MonodriverNeonHttpConfig =\n\t| ({\n\t\tconnectionString: string;\n\t} & NeonHttpConfig<boolean, boolean>)\n\t| string;\n\ntype AwsDataApiConnectionConfig = RDSConfig & Omit<DrizzleAwsDataApiPgConfig, keyof DrizzleConfig>;\n\ntype DatabaseClient =\n\t| 'node-postgres'\n\t| 'postgres-js'\n\t| 'neon-websocket'\n\t| 'neon-http'\n\t| 'vercel-postgres'\n\t| 'aws-data-api-pg'\n\t| 'planetscale'\n\t| 'mysql2'\n\t| 'tidb-serverless'\n\t| 'libsql'\n\t| 'turso'\n\t| 'd1'\n\t| 'bun:sqlite'\n\t| 'better-sqlite3';\n\ntype ClientDrizzleInstanceMap<TSchema extends Record<string, any>> = {\n\t'node-postgres': NodePgDatabase<TSchema>;\n\t'postgres-js': PostgresJsDatabase<TSchema>;\n\t'neon-websocket': NeonDatabase<TSchema>;\n\t'neon-http': NeonHttpDatabase<TSchema>;\n\t'vercel-postgres': VercelPgDatabase<TSchema>;\n\t'aws-data-api-pg': AwsDataApiPgDatabase<TSchema>;\n\tplanetscale: PlanetScaleDatabase<TSchema>;\n\tmysql2: MySql2Database<TSchema>;\n\t'tidb-serverless': TiDBServerlessDatabase<TSchema>;\n\tlibsql: LibSQLDatabase<TSchema>;\n\tturso: LibSQLDatabase<TSchema>;\n\td1: DrizzleD1Database<TSchema>;\n\t'bun:sqlite': BunSQLiteDatabase<TSchema>;\n\t'better-sqlite3': DrizzleBetterSQLite3Database<TSchema>;\n};\n\ntype Primitive = string | number | boolean | undefined | null;\n\ntype ClientInstanceMap = {\n\t'node-postgres': NodePgPool;\n\t'postgres-js': PostgresJsClient;\n\t'neon-websocket': NeonServerlessPool;\n\t'neon-http': NeonQueryFunction<boolean, boolean>;\n\t'vercel-postgres':\n\t\t& VercelPool\n\t\t& (<O extends QueryResultRow>(strings: TemplateStringsArray, ...values: Primitive[]) => Promise<QueryResult<O>>);\n\t'aws-data-api-pg': RDSDataClient;\n\tplanetscale: PlanetscaleClient;\n\tmysql2: Mysql2Pool;\n\t'tidb-serverless': TiDBConnection;\n\tlibsql: LibsqlClient;\n\tturso: LibsqlClient;\n\td1: AnyD1Database;\n\t'bun:sqlite': BunDatabase;\n\t'better-sqlite3': BetterSQLite3Database;\n};\n\ntype ClientTypeImportErrorMap = {\n\t'node-postgres': 'pg`, `@types/pg';\n\t'postgres-js': 'postgres';\n\t'neon-websocket': '@neondatabase/serverless';\n\t'neon-http': '@neondatabase/serverless';\n\t'vercel-postgres': '@vercel/postgres';\n\t'aws-data-api-pg': '@aws-sdk/client-rds-data';\n\tplanetscale: '@planetscale/database';\n\tmysql2: 'mysql2';\n\t'tidb-serverless': '@tidbcloud/serverless';\n\tlibsql: '@libsql/client';\n\tturso: '@libsql/client';\n\td1: '@cloudflare/workers-types` or `@miniflare/d1';\n\t'bun:sqlite': 'bun-types';\n\t'better-sqlite3': 'better-sqlite3';\n};\n\ntype ImportTypeError<TClient extends DatabaseClient> =\n\t`Please install \\`${ClientTypeImportErrorMap[TClient]}\\` for Drizzle ORM to connect to database`;\n\ntype InitializerParams = {\n\t'node-postgres': {\n\t\tconnection: string | NodePgPoolConfig;\n\t};\n\t'postgres-js': {\n\t\tconnection: string | ({ url?: string } & PostgresJSOptions<Record<string, PostgresJSPostgresType>>);\n\t};\n\t'neon-websocket': {\n\t\tconnection: string | NeonServerlessConfig;\n\t};\n\t'neon-http': {\n\t\tconnection: MonodriverNeonHttpConfig;\n\t};\n\t'vercel-postgres': {};\n\t'aws-data-api-pg': {\n\t\tconnection: AwsDataApiConnectionConfig;\n\t};\n\tplanetscale: {\n\t\tconnection: PlanetscaleConfig | string;\n\t};\n\tmysql2: {\n\t\tconnection: Mysql2Config | string;\n\t};\n\t'tidb-serverless': {\n\t\tconnection: TiDBServerlessConfig | string;\n\t};\n\tlibsql: {\n\t\tconnection: LibsqlConfig | string;\n\t};\n\tturso: {\n\t\tconnection: LibsqlConfig | string;\n\t};\n\td1: {\n\t\tconnection: AnyD1Database;\n\t};\n\t'bun:sqlite': {\n\t\tconnection?: BunSqliteDatabaseConfig;\n\t};\n\t'better-sqlite3': {\n\t\tconnection?: BetterSQLite3DatabaseConfig;\n\t};\n};\n\ntype DetermineClient<\n\tTClient extends DatabaseClient,\n\tTSchema extends Record<string, unknown>,\n> =\n\t& ClientDrizzleInstanceMap<\n\t\tTSchema\n\t>[TClient]\n\t& {\n\t\t$client: ClientInstanceMap[TClient];\n\t};\n\nconst importError = (libName: string) => {\n\tthrow new Error(\n\t\t`Please install '${libName}' for Drizzle ORM to connect to database`,\n\t);\n};\n\nfunction assertUnreachable(_: never | undefined): never {\n\tthrow new Error(\"Didn't expect to get here\");\n}\n\nexport async function drizzle<\n\tTClient extends DatabaseClient,\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n>(\n\tclient: TClient,\n\t...params: TClient extends 'bun:sqlite' | 'better-sqlite3' ? (\n\t\t\t[] | [\n\t\t\t\t(\n\t\t\t\t\t& IfNotImported<\n\t\t\t\t\t\tClientInstanceMap[TClient],\n\t\t\t\t\t\t{ connection: ImportTypeError<TClient> },\n\t\t\t\t\t\tInitializerParams[TClient]\n\t\t\t\t\t>\n\t\t\t\t\t& DrizzleConfig<TSchema>\n\t\t\t\t),\n\t\t\t] | [string]\n\t\t)\n\t\t: TClient extends 'vercel-postgres' ? ([] | [\n\t\t\t\t(\n\t\t\t\t\t& IfNotImported<\n\t\t\t\t\t\tClientInstanceMap[TClient],\n\t\t\t\t\t\t{ connection: ImportTypeError<TClient> },\n\t\t\t\t\t\tInitializerParams[TClient]\n\t\t\t\t\t>\n\t\t\t\t\t& DrizzleConfig<TSchema>\n\t\t\t\t),\n\t\t\t])\n\t\t: TClient extends\n\t\t\t'postgres-js' | 'tidb-serverless' | 'libsql' | 'turso' | 'planetscale' | 'neon-http' | 'node-postgres' ? (\n\t\t\t\t[\n\t\t\t\t\t(\n\t\t\t\t\t\t& IfNotImported<\n\t\t\t\t\t\t\tClientInstanceMap[TClient],\n\t\t\t\t\t\t\t{ connection: ImportTypeError<TClient> },\n\t\t\t\t\t\t\tInitializerParams[TClient]\n\t\t\t\t\t\t>\n\t\t\t\t\t\t& DrizzleConfig<TSchema>\n\t\t\t\t\t),\n\t\t\t\t] | [string]\n\t\t\t)\n\t\t: TClient extends 'mysql2' ? (\n\t\t\t\t[\n\t\t\t\t\t(\n\t\t\t\t\t\t& IfNotImported<\n\t\t\t\t\t\t\tClientInstanceMap[TClient],\n\t\t\t\t\t\t\t{ connection: ImportTypeError<TClient> },\n\t\t\t\t\t\t\tInitializerParams[TClient]\n\t\t\t\t\t\t>\n\t\t\t\t\t\t& MySql2DrizzleConfig<TSchema>\n\t\t\t\t\t),\n\t\t\t\t] | [string]\n\t\t\t)\n\t\t: TClient extends 'neon-websocket' ? (\n\t\t\t\t| [\n\t\t\t\t\t& IfNotImported<\n\t\t\t\t\t\tClientInstanceMap[TClient],\n\t\t\t\t\t\t{ connection: ImportTypeError<TClient> },\n\t\t\t\t\t\tInitializerParams[TClient]\n\t\t\t\t\t>\n\t\t\t\t\t& DrizzleConfig<TSchema>\n\t\t\t\t\t& {\n\t\t\t\t\t\tws?: any;\n\t\t\t\t\t},\n\t\t\t\t]\n\t\t\t\t| [string]\n\t\t\t)\n\t\t: [\n\t\t\t(\n\t\t\t\t& IfNotImported<\n\t\t\t\t\tClientInstanceMap[TClient],\n\t\t\t\t\t{ connection: ImportTypeError<TClient> },\n\t\t\t\t\tInitializerParams[TClient]\n\t\t\t\t>\n\t\t\t\t& DrizzleConfig<TSchema>\n\t\t\t),\n\t\t]\n): Promise<DetermineClient<TClient, TSchema>> {\n\tswitch (client) {\n\t\tcase 'node-postgres': {\n\t\t\tconst defpg = await import('pg').catch(() => importError('pg'));\n\t\t\tconst { drizzle } = await import('./node-postgres');\n\n\t\t\tif (typeof params[0] === 'object') {\n\t\t\t\tconst { connection, ...drizzleConfig } = params[0] as\n\t\t\t\t\t& { connection: NodePgPoolConfig | string }\n\t\t\t\t\t& DrizzleConfig;\n\n\t\t\t\tconst instance = typeof connection === 'string'\n\t\t\t\t\t? new defpg.default.Pool({\n\t\t\t\t\t\tconnectionString: connection,\n\t\t\t\t\t})\n\t\t\t\t\t: new defpg.default.Pool(connection);\n\t\t\t\tconst db = drizzle(instance, drizzleConfig);\n\n\t\t\t\treturn db as any;\n\t\t\t}\n\n\t\t\tconst instance = typeof params[0] === 'string'\n\t\t\t\t? new defpg.default.Pool({\n\t\t\t\t\tconnectionString: params[0],\n\t\t\t\t})\n\t\t\t\t: new defpg.default.Pool(params[0]);\n\t\t\tconst db = drizzle(instance);\n\n\t\t\treturn db as any;\n\t\t}\n\t\tcase 'aws-data-api-pg': {\n\t\t\tconst { connection, ...drizzleConfig } = params[0] as {\n\t\t\t\tconnection: AwsDataApiConnectionConfig;\n\t\t\t} & DrizzleConfig<TSchema>;\n\t\t\tconst { resourceArn, database, secretArn, ...rdsConfig } = connection;\n\n\t\t\tconst { RDSDataClient } = await import('@aws-sdk/client-rds-data').catch(() =>\n\t\t\t\timportError('@aws-sdk/client-rds-data')\n\t\t\t);\n\t\t\tconst { drizzle } = await import('./aws-data-api/pg');\n\n\t\t\tconst instance = new RDSDataClient(rdsConfig);\n\t\t\tconst db = drizzle(instance, { resourceArn, database, secretArn, ...drizzleConfig });\n\n\t\t\treturn db as any;\n\t\t}\n\t\tcase 'better-sqlite3': {\n\t\t\tconst { default: Client } = await import('better-sqlite3').catch(() => importError('better-sqlite3'));\n\t\t\tconst { drizzle } = await import('./better-sqlite3');\n\n\t\t\tif (typeof params[0] === 'object') {\n\t\t\t\tconst { connection, ...drizzleConfig } = params[0] as {\n\t\t\t\t\tconnection: BetterSQLite3DatabaseConfig;\n\t\t\t\t} & DrizzleConfig;\n\n\t\t\t\tif (typeof connection === 'object') {\n\t\t\t\t\tconst { source, ...options } = connection;\n\n\t\t\t\t\tconst instance = new Client(source, options);\n\t\t\t\t\tconst db = drizzle(instance, drizzleConfig);\n\n\t\t\t\t\treturn db as any;\n\t\t\t\t}\n\n\t\t\t\tconst instance = new Client(connection);\n\t\t\t\tconst db = drizzle(instance, drizzleConfig);\n\n\t\t\t\treturn db as any;\n\t\t\t}\n\n\t\t\tconst instance = new Client(params[0]);\n\t\t\tconst db = drizzle(instance);\n\n\t\t\treturn db as any;\n\t\t}\n\t\tcase 'bun:sqlite': {\n\t\t\tconst { Database: Client } = await import('bun:sqlite').catch(() => {\n\t\t\t\tthrow new Error(`Please use bun to use 'bun:sqlite' for Drizzle ORM to connect to database`);\n\t\t\t});\n\t\t\tconst { drizzle } = await import('./bun-sqlite');\n\n\t\t\tif (typeof params[0] === 'object') {\n\t\t\t\tconst { connection, ...drizzleConfig } = params[0] as {\n\t\t\t\t\tconnection: BunSqliteDatabaseConfig | string | undefined;\n\t\t\t\t} & DrizzleConfig;\n\n\t\t\t\tif (typeof connection === 'object') {\n\t\t\t\t\tconst { source, ...opts } = connection;\n\n\t\t\t\t\tconst options = Object.values(opts).filter((v) => v !== undefined).length ? opts : undefined;\n\n\t\t\t\t\tconst instance = new Client(source, options);\n\t\t\t\t\tconst db = drizzle(instance, drizzleConfig);\n\n\t\t\t\t\treturn db as any;\n\t\t\t\t}\n\n\t\t\t\tconst instance = new Client(connection);\n\t\t\t\tconst db = drizzle(instance, drizzleConfig);\n\n\t\t\t\treturn db as any;\n\t\t\t}\n\n\t\t\tconst instance = new Client(params[0]);\n\t\t\tconst db = drizzle(instance);\n\n\t\t\treturn db as any;\n\t\t}\n\t\tcase 'd1': {\n\t\t\tconst { connection, ...drizzleConfig } = params[0] as { connection: AnyD1Database } & DrizzleConfig;\n\n\t\t\tconst { drizzle } = await import('./d1');\n\n\t\t\tconst db = drizzle(connection, drizzleConfig);\n\n\t\t\treturn db as any;\n\t\t}\n\t\tcase 'libsql':\n\t\tcase 'turso': {\n\t\t\tconst { createClient } = await import('@libsql/client').catch(() => importError('@libsql/client'));\n\t\t\tconst { drizzle } = await import('./libsql');\n\n\t\t\tif (typeof params[0] === 'string') {\n\t\t\t\tconst instance = createClient({\n\t\t\t\t\turl: params[0],\n\t\t\t\t});\n\t\t\t\tconst db = drizzle(instance);\n\n\t\t\t\treturn db as any;\n\t\t\t}\n\n\t\t\tconst { connection, ...drizzleConfig } = params[0] as any as { connection: LibsqlConfig } & DrizzleConfig;\n\n\t\t\tconst instance = typeof connection === 'string' ? createClient({ url: connection }) : createClient(connection);\n\t\t\tconst db = drizzle(instance, drizzleConfig);\n\n\t\t\treturn db as any;\n\t\t}\n\t\tcase 'mysql2': {\n\t\t\tconst { createPool } = await import('mysql2/promise').catch(() => importError('mysql2'));\n\t\t\tconst { drizzle } = await import('./mysql2');\n\n\t\t\tif (typeof params[0] === 'object') {\n\t\t\t\tconst { connection, ...drizzleConfig } = params[0] as\n\t\t\t\t\t& { connection: Mysql2Config | string }\n\t\t\t\t\t& MySql2DrizzleConfig;\n\n\t\t\t\tconst instance = createPool(connection as Mysql2Config);\n\t\t\t\tconst db = drizzle(instance, drizzleConfig);\n\n\t\t\t\treturn db as any;\n\t\t\t}\n\n\t\t\tconst connectionString = params[0]!;\n\t\t\tconst instance = createPool(connectionString);\n\n\t\t\tconst db = drizzle(instance);\n\n\t\t\treturn db as any;\n\t\t}\n\t\tcase 'neon-http': {\n\t\t\tconst { neon } = await import('@neondatabase/serverless').catch(() => importError('@neondatabase/serverless'));\n\t\t\tconst { drizzle } = await import('./neon-http');\n\n\t\t\tif (typeof params[0] === 'object') {\n\t\t\t\tconst { connection, ...drizzleConfig } = params[0] as { connection: MonodriverNeonHttpConfig } & DrizzleConfig;\n\n\t\t\t\tif (typeof connection === 'object') {\n\t\t\t\t\tconst { connectionString, ...options } = connection;\n\n\t\t\t\t\tconst instance = neon(connectionString, options);\n\t\t\t\t\tconst db = drizzle(instance, drizzleConfig);\n\n\t\t\t\t\treturn db as any;\n\t\t\t\t}\n\n\t\t\t\tconst instance = neon(connection);\n\t\t\t\tconst db = drizzle(instance, drizzleConfig);\n\n\t\t\t\treturn db as any;\n\t\t\t}\n\n\t\t\tconst instance = neon(params[0]!);\n\t\t\tconst db = drizzle(instance);\n\n\t\t\treturn db as any;\n\t\t}\n\t\tcase 'neon-websocket': {\n\t\t\tconst { Pool, neonConfig } = await import('@neondatabase/serverless').catch(() =>\n\t\t\t\timportError('@neondatabase/serverless')\n\t\t\t);\n\t\t\tconst { drizzle } = await import('./neon-serverless');\n\t\t\tif (typeof params[0] === 'string') {\n\t\t\t\tconst instance = new Pool({\n\t\t\t\t\tconnectionString: params[0],\n\t\t\t\t});\n\n\t\t\t\tconst db = drizzle(instance);\n\n\t\t\t\treturn db as any;\n\t\t\t}\n\n\t\t\tif (typeof params[0] === 'object') {\n\t\t\t\tconst { connection, ws, ...drizzleConfig } = params[0] as {\n\t\t\t\t\tconnection?: NeonServerlessConfig | string;\n\t\t\t\t\tws?: any;\n\t\t\t\t} & DrizzleConfig;\n\n\t\t\t\tif (ws) {\n\t\t\t\t\tneonConfig.webSocketConstructor = ws;\n\t\t\t\t}\n\n\t\t\t\tconst instance = typeof connection === 'string'\n\t\t\t\t\t? new Pool({\n\t\t\t\t\t\tconnectionString: connection,\n\t\t\t\t\t})\n\t\t\t\t\t: new Pool(connection);\n\n\t\t\t\tconst db = drizzle(instance, drizzleConfig);\n\n\t\t\t\treturn db as any;\n\t\t\t}\n\n\t\t\tconst instance = new Pool();\n\t\t\tconst db = drizzle(instance);\n\n\t\t\treturn db as any;\n\t\t}\n\t\tcase 'planetscale': {\n\t\t\tconst { Client } = await import('@planetscale/database').catch(() => importError('@planetscale/database'));\n\t\t\tconst { drizzle } = await import('./planetscale-serverless');\n\n\t\t\tif (typeof params[0] === 'object') {\n\t\t\t\tconst { connection, ...drizzleConfig } = params[0] as\n\t\t\t\t\t& { connection: PlanetscaleConfig | string }\n\t\t\t\t\t& DrizzleConfig;\n\n\t\t\t\tconst instance = typeof connection === 'string'\n\t\t\t\t\t? new Client({\n\t\t\t\t\t\turl: connection,\n\t\t\t\t\t})\n\t\t\t\t\t: new Client(\n\t\t\t\t\t\tconnection,\n\t\t\t\t\t);\n\t\t\t\tconst db = drizzle(instance, drizzleConfig);\n\t\t\t\treturn db as any;\n\t\t\t}\n\n\t\t\tconst instance = new Client({\n\t\t\t\turl: params[0],\n\t\t\t});\n\t\t\tconst db = drizzle(instance);\n\n\t\t\treturn db as any;\n\t\t}\n\t\tcase 'postgres-js': {\n\t\t\tconst { default: client } = await import('postgres').catch(() => importError('postgres'));\n\t\t\tconst { drizzle } = await import('./postgres-js');\n\n\t\t\tif (typeof params[0] === 'object') {\n\t\t\t\tconst { connection, ...drizzleConfig } = params[0] as {\n\t\t\t\t\tconnection: { url?: string } & PostgresJSOptions<Record<string, PostgresJSPostgresType>>;\n\t\t\t\t} & DrizzleConfig;\n\n\t\t\t\tif (typeof connection === 'object' && connection.url !== undefined) {\n\t\t\t\t\tconst { url, ...config } = connection;\n\n\t\t\t\t\tconst instance = client(url, config);\n\t\t\t\t\tconst db = drizzle(instance, drizzleConfig);\n\n\t\t\t\t\treturn db as any;\n\t\t\t\t}\n\n\t\t\t\tconst instance = client(connection);\n\t\t\t\tconst db = drizzle(instance, drizzleConfig);\n\n\t\t\t\treturn db as any;\n\t\t\t}\n\n\t\t\tconst instance = client(params[0]!);\n\t\t\tconst db = drizzle(instance);\n\n\t\t\treturn db as any;\n\t\t}\n\t\tcase 'tidb-serverless': {\n\t\t\tconst { connect } = await import('@tidbcloud/serverless').catch(() => importError('@tidbcloud/serverless'));\n\t\t\tconst { drizzle } = await import('./tidb-serverless');\n\n\t\t\tif (typeof params[0] === 'string') {\n\t\t\t\tconst instance = connect({\n\t\t\t\t\turl: params[0],\n\t\t\t\t});\n\t\t\t\tconst db = drizzle(instance);\n\n\t\t\t\treturn db as any;\n\t\t\t}\n\n\t\t\tconst { connection, ...drizzleConfig } = params[0] as\n\t\t\t\t& { connection: TiDBServerlessConfig | string }\n\t\t\t\t& DrizzleConfig;\n\n\t\t\tconst instance = typeof connection === 'string'\n\t\t\t\t? connect({\n\t\t\t\t\turl: connection,\n\t\t\t\t})\n\t\t\t\t: connect(connection);\n\t\t\tconst db = drizzle(instance, drizzleConfig);\n\n\t\t\treturn db as any;\n\t\t}\n\t\tcase 'vercel-postgres': {\n\t\t\tconst drizzleConfig = params[0] as DrizzleConfig | undefined;\n\t\t\tconst { sql } = await import('@vercel/postgres').catch(() => importError('@vercel/postgres'));\n\t\t\tconst { drizzle } = await import('./vercel-postgres');\n\n\t\t\tconst db = drizzle(sql, drizzleConfig);\n\n\t\t\treturn db as any;\n\t\t}\n\t}\n\n\tassertUnreachable(client);\n}\n"],"mappings":"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","names":["drizzle","instance","db","client"]}
package/mysql-core/db.cjs CHANGED
@@ -24,6 +24,7 @@ __export(db_exports, {
24
24
  module.exports = __toCommonJS(db_exports);
25
25
  var import_entity = require("../entity.cjs");
26
26
  var import_selection_proxy = require("../selection-proxy.cjs");
27
+ var import_sql = require("../sql/sql.cjs");
27
28
  var import_subquery = require("../subquery.cjs");
28
29
  var import_count = require("./query-builders/count.cjs");
29
30
  var import_query_builders = require("./query-builders/index.cjs");
@@ -234,7 +235,7 @@ class MySqlDatabase {
234
235
  return new import_query_builders.MySqlDeleteBase(table, this.session, this.dialect);
235
236
  }
236
237
  execute(query) {
237
- return this.session.execute(query.getSQL());
238
+ return this.session.execute(typeof query === "string" ? import_sql.sql.raw(query) : query.getSQL());
238
239
  }
239
240
  transaction(transaction, config) {
240
241
  return this.session.transaction(transaction, config);