drizzle-orm 0.34.1-a345cb3 → 0.34.1-a88d6b6
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.
- package/aws-data-api/pg/driver.cjs +21 -1
- package/aws-data-api/pg/driver.cjs.map +1 -1
- package/aws-data-api/pg/driver.d.cts +20 -3
- package/aws-data-api/pg/driver.d.ts +20 -3
- package/aws-data-api/pg/driver.js +21 -1
- package/aws-data-api/pg/driver.js.map +1 -1
- package/better-sqlite3/driver.cjs +37 -1
- package/better-sqlite3/driver.cjs.map +1 -1
- package/better-sqlite3/driver.d.cts +24 -3
- package/better-sqlite3/driver.d.ts +24 -3
- package/better-sqlite3/driver.js +27 -1
- package/better-sqlite3/driver.js.map +1 -1
- package/bun-sqlite/driver.cjs +28 -1
- package/bun-sqlite/driver.cjs.map +1 -1
- package/bun-sqlite/driver.d.cts +46 -4
- package/bun-sqlite/driver.d.ts +46 -4
- package/bun-sqlite/driver.js +28 -1
- package/bun-sqlite/driver.js.map +1 -1
- package/entity.cjs +1 -1
- package/entity.cjs.map +1 -1
- package/entity.js +1 -1
- package/entity.js.map +1 -1
- package/libsql/driver.cjs +27 -1
- package/libsql/driver.cjs.map +1 -1
- package/libsql/driver.d.cts +22 -4
- package/libsql/driver.d.ts +22 -4
- package/libsql/driver.js +27 -1
- package/libsql/driver.js.map +1 -1
- package/mysql-core/dialect.cjs +17 -13
- package/mysql-core/dialect.cjs.map +1 -1
- package/mysql-core/dialect.d.cts +4 -2
- package/mysql-core/dialect.d.ts +4 -2
- package/mysql-core/dialect.js +17 -13
- package/mysql-core/dialect.js.map +1 -1
- package/mysql-core/query-builders/delete.cjs +22 -0
- package/mysql-core/query-builders/delete.cjs.map +1 -1
- package/mysql-core/query-builders/delete.d.cts +8 -1
- package/mysql-core/query-builders/delete.d.ts +8 -1
- package/mysql-core/query-builders/delete.js +22 -0
- package/mysql-core/query-builders/delete.js.map +1 -1
- package/mysql-core/query-builders/update.cjs +22 -0
- package/mysql-core/query-builders/update.cjs.map +1 -1
- package/mysql-core/query-builders/update.d.cts +8 -2
- package/mysql-core/query-builders/update.d.ts +8 -2
- package/mysql-core/query-builders/update.js +22 -0
- package/mysql-core/query-builders/update.js.map +1 -1
- package/mysql-core/utils.d.cts +0 -1
- package/mysql-core/utils.d.ts +0 -1
- package/mysql-core/view.cjs +0 -4
- package/mysql-core/view.cjs.map +1 -1
- package/mysql-core/view.d.cts +0 -2
- package/mysql-core/view.d.ts +0 -2
- package/mysql-core/view.js +0 -4
- package/mysql-core/view.js.map +1 -1
- package/mysql2/driver.cjs +27 -1
- package/mysql2/driver.cjs.map +1 -1
- package/mysql2/driver.d.cts +21 -3
- package/mysql2/driver.d.ts +21 -3
- package/mysql2/driver.js +27 -1
- package/mysql2/driver.js.map +1 -1
- package/neon-http/driver.cjs +26 -1
- package/neon-http/driver.cjs.map +1 -1
- package/neon-http/driver.d.cts +21 -3
- package/neon-http/driver.d.ts +21 -3
- package/neon-http/driver.js +27 -2
- package/neon-http/driver.js.map +1 -1
- package/neon-serverless/driver.cjs +32 -8
- package/neon-serverless/driver.cjs.map +1 -1
- package/neon-serverless/driver.d.cts +23 -3
- package/neon-serverless/driver.d.ts +23 -3
- package/neon-serverless/driver.js +33 -9
- package/neon-serverless/driver.js.map +1 -1
- package/neon-serverless/session.cjs +44 -2
- package/neon-serverless/session.cjs.map +1 -1
- package/neon-serverless/session.d.cts +2 -1
- package/neon-serverless/session.d.ts +2 -1
- package/neon-serverless/session.js +46 -3
- package/neon-serverless/session.js.map +1 -1
- package/node-postgres/driver.cjs +26 -9
- package/node-postgres/driver.cjs.map +1 -1
- package/node-postgres/driver.d.cts +21 -3
- package/node-postgres/driver.d.ts +21 -3
- package/node-postgres/driver.js +26 -9
- package/node-postgres/driver.js.map +1 -1
- package/node-postgres/session.cjs +39 -3
- package/node-postgres/session.cjs.map +1 -1
- package/node-postgres/session.js +39 -3
- package/node-postgres/session.js.map +1 -1
- package/package.json +1 -37
- package/pg-core/view.cjs +22 -2
- package/pg-core/view.cjs.map +1 -1
- package/pg-core/view.d.cts +25 -5
- package/pg-core/view.d.ts +25 -5
- package/pg-core/view.js +21 -3
- package/pg-core/view.js.map +1 -1
- package/pglite/driver.cjs +27 -1
- package/pglite/driver.cjs.map +1 -1
- package/pglite/driver.d.cts +24 -3
- package/pglite/driver.d.ts +24 -3
- package/pglite/driver.js +27 -1
- package/pglite/driver.js.map +1 -1
- package/planetscale-serverless/driver.cjs +25 -1
- package/planetscale-serverless/driver.cjs.map +1 -1
- package/planetscale-serverless/driver.d.cts +19 -3
- package/planetscale-serverless/driver.d.ts +19 -3
- package/planetscale-serverless/driver.js +25 -1
- package/planetscale-serverless/driver.js.map +1 -1
- package/postgres-js/driver.cjs +37 -1
- package/postgres-js/driver.cjs.map +1 -1
- package/postgres-js/driver.d.cts +24 -4
- package/postgres-js/driver.d.ts +24 -4
- package/postgres-js/driver.js +27 -1
- package/postgres-js/driver.js.map +1 -1
- package/sqlite-core/dialect.cjs +25 -15
- package/sqlite-core/dialect.cjs.map +1 -1
- package/sqlite-core/dialect.d.cts +4 -2
- package/sqlite-core/dialect.d.ts +4 -2
- package/sqlite-core/dialect.js +25 -15
- package/sqlite-core/dialect.js.map +1 -1
- package/sqlite-core/query-builders/delete.cjs +22 -0
- package/sqlite-core/query-builders/delete.cjs.map +1 -1
- package/sqlite-core/query-builders/delete.d.cts +8 -2
- package/sqlite-core/query-builders/delete.d.ts +8 -2
- package/sqlite-core/query-builders/delete.js +22 -0
- package/sqlite-core/query-builders/delete.js.map +1 -1
- package/sqlite-core/query-builders/update.cjs +22 -0
- package/sqlite-core/query-builders/update.cjs.map +1 -1
- package/sqlite-core/query-builders/update.d.cts +8 -2
- package/sqlite-core/query-builders/update.d.ts +8 -2
- package/sqlite-core/query-builders/update.js +26 -1
- package/sqlite-core/query-builders/update.js.map +1 -1
- package/sqlite-core/utils.cjs +2 -3
- package/sqlite-core/utils.cjs.map +1 -1
- package/sqlite-core/utils.d.cts +0 -4
- package/sqlite-core/utils.d.ts +0 -4
- package/sqlite-core/utils.js +2 -3
- package/sqlite-core/utils.js.map +1 -1
- package/sqlite-core/view.cjs +2 -8
- package/sqlite-core/view.cjs.map +1 -1
- package/sqlite-core/view.d.cts +1 -2
- package/sqlite-core/view.d.ts +1 -2
- package/sqlite-core/view.js +2 -8
- package/sqlite-core/view.js.map +1 -1
- package/tidb-serverless/driver.cjs +26 -1
- package/tidb-serverless/driver.cjs.map +1 -1
- package/tidb-serverless/driver.d.cts +22 -4
- package/tidb-serverless/driver.d.ts +22 -4
- package/tidb-serverless/driver.js +26 -1
- package/tidb-serverless/driver.js.map +1 -1
- package/utils.cjs.map +1 -1
- package/utils.d.cts +2 -0
- package/utils.d.ts +2 -0
- package/utils.js.map +1 -1
- package/vercel-postgres/driver.cjs +17 -8
- package/vercel-postgres/driver.cjs.map +1 -1
- package/vercel-postgres/driver.d.cts +23 -4
- package/vercel-postgres/driver.d.ts +23 -4
- package/vercel-postgres/driver.js +18 -9
- package/vercel-postgres/driver.js.map +1 -1
- package/vercel-postgres/session.cjs +38 -2
- package/vercel-postgres/session.cjs.map +1 -1
- package/vercel-postgres/session.js +39 -2
- package/vercel-postgres/session.js.map +1 -1
- package/version.cjs +1 -1
- package/version.d.cts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/connect.cjs +0 -25
- package/connect.cjs.map +0 -1
- package/connect.d.cts +0 -2
- package/connect.d.ts +0 -2
- package/connect.js +0 -3
- package/connect.js.map +0 -1
- package/monodriver.cjs +0 -283
- package/monodriver.cjs.map +0 -1
- package/monodriver.d.cts +0 -192
- package/monodriver.d.ts +0 -192
- package/monodriver.js +0 -249
- package/monodriver.js.map +0 -1
- package/monomigrator.cjs +0 -99
- package/monomigrator.cjs.map +0 -1
- package/monomigrator.d.cts +0 -16
- package/monomigrator.d.ts +0 -16
- package/monomigrator.js +0 -65
- package/monomigrator.js.map +0 -1
package/monodriver.d.cts
DELETED
|
@@ -1,192 +0,0 @@
|
|
|
1
|
-
import type { RDSDataClient, RDSDataClientConfig as RDSConfig } from '@aws-sdk/client-rds-data';
|
|
2
|
-
import type { PGlite, PGliteOptions } from '@electric-sql/pglite';
|
|
3
|
-
import type { Client as LibsqlClient, Config as LibsqlConfig } from '@libsql/client';
|
|
4
|
-
import type { HTTPTransactionOptions as NeonHttpConfig, NeonQueryFunction, Pool as NeonServerlessPool, PoolConfig as NeonServerlessConfig, QueryResult, QueryResultRow } from '@neondatabase/serverless';
|
|
5
|
-
import type { Client as PlanetscaleClient, Config as PlanetscaleConfig } from '@planetscale/database';
|
|
6
|
-
import type { Config as TiDBServerlessConfig, Connection as TiDBConnection } from '@tidbcloud/serverless';
|
|
7
|
-
import type { VercelPool } from '@vercel/postgres';
|
|
8
|
-
import type { Database as BetterSQLite3Database, Options as BetterSQLite3Options } from 'better-sqlite3';
|
|
9
|
-
import type { Database as BunDatabase } from 'bun:sqlite';
|
|
10
|
-
import type { Pool as Mysql2Pool, PoolOptions as Mysql2Config } from 'mysql2';
|
|
11
|
-
import type { Pool as NodePgPool, PoolConfig as NodePgPoolConfig } from 'pg';
|
|
12
|
-
import type { Options as PostgresJSOptions, PostgresType as PostgresJSPostgresType, Sql as PostgresJsClient } from 'postgres';
|
|
13
|
-
import type { AwsDataApiPgDatabase, DrizzleAwsDataApiPgConfig } from "./aws-data-api/pg/index.cjs";
|
|
14
|
-
import type { BetterSQLite3Database as DrizzleBetterSQLite3Database } from "./better-sqlite3/index.cjs";
|
|
15
|
-
import type { BunSQLiteDatabase } from "./bun-sqlite/index.cjs";
|
|
16
|
-
import type { AnyD1Database, DrizzleD1Database } from "./d1/index.cjs";
|
|
17
|
-
import type { LibSQLDatabase } from "./libsql/index.cjs";
|
|
18
|
-
import type { MySql2Database, MySql2DrizzleConfig } from "./mysql2/index.cjs";
|
|
19
|
-
import type { NeonHttpDatabase } from "./neon-http/index.cjs";
|
|
20
|
-
import type { NeonDatabase } from "./neon-serverless/index.cjs";
|
|
21
|
-
import type { NodePgDatabase } from "./node-postgres/driver.cjs";
|
|
22
|
-
import type { PgliteDatabase } from "./pglite/driver.cjs";
|
|
23
|
-
import type { PlanetScaleDatabase } from "./planetscale-serverless/index.cjs";
|
|
24
|
-
import type { PostgresJsDatabase } from "./postgres-js/index.cjs";
|
|
25
|
-
import type { TiDBServerlessDatabase } from "./tidb-serverless/index.cjs";
|
|
26
|
-
import type { DrizzleConfig, IfNotImported } from "./utils.cjs";
|
|
27
|
-
import type { VercelPgDatabase } from "./vercel-postgres/index.cjs";
|
|
28
|
-
type BunSqliteDatabaseOptions = {
|
|
29
|
-
/**
|
|
30
|
-
* Open the database as read-only (no write operations, no create).
|
|
31
|
-
*
|
|
32
|
-
* Equivalent to {@link constants.SQLITE_OPEN_READONLY}
|
|
33
|
-
*/
|
|
34
|
-
readonly?: boolean;
|
|
35
|
-
/**
|
|
36
|
-
* Allow creating a new database
|
|
37
|
-
*
|
|
38
|
-
* Equivalent to {@link constants.SQLITE_OPEN_CREATE}
|
|
39
|
-
*/
|
|
40
|
-
create?: boolean;
|
|
41
|
-
/**
|
|
42
|
-
* Open the database as read-write
|
|
43
|
-
*
|
|
44
|
-
* Equivalent to {@link constants.SQLITE_OPEN_READWRITE}
|
|
45
|
-
*/
|
|
46
|
-
readwrite?: boolean;
|
|
47
|
-
};
|
|
48
|
-
type BunSqliteDatabaseConfig = ({
|
|
49
|
-
source?: string;
|
|
50
|
-
} & BunSqliteDatabaseOptions) | string | undefined;
|
|
51
|
-
type BetterSQLite3DatabaseConfig = ({
|
|
52
|
-
source?: string | Buffer;
|
|
53
|
-
} & BetterSQLite3Options) | string | undefined;
|
|
54
|
-
type MonodriverNeonHttpConfig = ({
|
|
55
|
-
connectionString: string;
|
|
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' | 'pglite';
|
|
59
|
-
type ClientDrizzleInstanceMap<TSchema extends Record<string, any>> = {
|
|
60
|
-
'node-postgres': NodePgDatabase<TSchema>;
|
|
61
|
-
'postgres-js': PostgresJsDatabase<TSchema>;
|
|
62
|
-
'neon-websocket': NeonDatabase<TSchema>;
|
|
63
|
-
'neon-http': NeonHttpDatabase<TSchema>;
|
|
64
|
-
'vercel-postgres': VercelPgDatabase<TSchema>;
|
|
65
|
-
'aws-data-api-pg': AwsDataApiPgDatabase<TSchema>;
|
|
66
|
-
planetscale: PlanetScaleDatabase<TSchema>;
|
|
67
|
-
mysql2: MySql2Database<TSchema>;
|
|
68
|
-
'tidb-serverless': TiDBServerlessDatabase<TSchema>;
|
|
69
|
-
libsql: LibSQLDatabase<TSchema>;
|
|
70
|
-
turso: LibSQLDatabase<TSchema>;
|
|
71
|
-
d1: DrizzleD1Database<TSchema>;
|
|
72
|
-
'bun:sqlite': BunSQLiteDatabase<TSchema>;
|
|
73
|
-
'better-sqlite3': DrizzleBetterSQLite3Database<TSchema>;
|
|
74
|
-
pglite: PgliteDatabase<TSchema>;
|
|
75
|
-
};
|
|
76
|
-
type Primitive = string | number | boolean | undefined | null;
|
|
77
|
-
type ClientInstanceMap = {
|
|
78
|
-
'node-postgres': NodePgPool;
|
|
79
|
-
'postgres-js': PostgresJsClient;
|
|
80
|
-
'neon-websocket': NeonServerlessPool;
|
|
81
|
-
'neon-http': NeonQueryFunction<boolean, boolean>;
|
|
82
|
-
'vercel-postgres': VercelPool & (<O extends QueryResultRow>(strings: TemplateStringsArray, ...values: Primitive[]) => Promise<QueryResult<O>>);
|
|
83
|
-
'aws-data-api-pg': RDSDataClient;
|
|
84
|
-
planetscale: PlanetscaleClient;
|
|
85
|
-
mysql2: Mysql2Pool;
|
|
86
|
-
'tidb-serverless': TiDBConnection;
|
|
87
|
-
libsql: LibsqlClient;
|
|
88
|
-
turso: LibsqlClient;
|
|
89
|
-
d1: AnyD1Database;
|
|
90
|
-
'bun:sqlite': BunDatabase;
|
|
91
|
-
'better-sqlite3': BetterSQLite3Database;
|
|
92
|
-
pglite: PGlite;
|
|
93
|
-
};
|
|
94
|
-
type ClientTypeImportErrorMap = {
|
|
95
|
-
'node-postgres': 'pg`, `@types/pg';
|
|
96
|
-
'postgres-js': 'postgres';
|
|
97
|
-
'neon-websocket': '@neondatabase/serverless';
|
|
98
|
-
'neon-http': '@neondatabase/serverless';
|
|
99
|
-
'vercel-postgres': '@vercel/postgres';
|
|
100
|
-
'aws-data-api-pg': '@aws-sdk/client-rds-data';
|
|
101
|
-
planetscale: '@planetscale/database';
|
|
102
|
-
mysql2: 'mysql2';
|
|
103
|
-
'tidb-serverless': '@tidbcloud/serverless';
|
|
104
|
-
libsql: '@libsql/client';
|
|
105
|
-
turso: '@libsql/client';
|
|
106
|
-
d1: '@cloudflare/workers-types` or `@miniflare/d1';
|
|
107
|
-
'bun:sqlite': 'bun-types';
|
|
108
|
-
'better-sqlite3': 'better-sqlite3';
|
|
109
|
-
pglite: '@electric-sql/pglite';
|
|
110
|
-
};
|
|
111
|
-
type ImportTypeError<TClient extends DatabaseClient> = `Please install \`${ClientTypeImportErrorMap[TClient]}\`to allow Drizzle ORM to connect to the database`;
|
|
112
|
-
type InitializerParams = {
|
|
113
|
-
'node-postgres': {
|
|
114
|
-
connection: string | NodePgPoolConfig;
|
|
115
|
-
};
|
|
116
|
-
'postgres-js': {
|
|
117
|
-
connection: string | ({
|
|
118
|
-
url?: string;
|
|
119
|
-
} & PostgresJSOptions<Record<string, PostgresJSPostgresType>>);
|
|
120
|
-
};
|
|
121
|
-
'neon-websocket': {
|
|
122
|
-
connection: string | NeonServerlessConfig;
|
|
123
|
-
};
|
|
124
|
-
'neon-http': {
|
|
125
|
-
connection: MonodriverNeonHttpConfig;
|
|
126
|
-
};
|
|
127
|
-
'vercel-postgres': {};
|
|
128
|
-
'aws-data-api-pg': {
|
|
129
|
-
connection: AwsDataApiConnectionConfig;
|
|
130
|
-
};
|
|
131
|
-
planetscale: {
|
|
132
|
-
connection: PlanetscaleConfig | string;
|
|
133
|
-
};
|
|
134
|
-
mysql2: {
|
|
135
|
-
connection: Mysql2Config | string;
|
|
136
|
-
};
|
|
137
|
-
'tidb-serverless': {
|
|
138
|
-
connection: TiDBServerlessConfig | string;
|
|
139
|
-
};
|
|
140
|
-
libsql: {
|
|
141
|
-
connection: LibsqlConfig | string;
|
|
142
|
-
};
|
|
143
|
-
turso: {
|
|
144
|
-
connection: LibsqlConfig | string;
|
|
145
|
-
};
|
|
146
|
-
d1: {
|
|
147
|
-
connection: AnyD1Database;
|
|
148
|
-
};
|
|
149
|
-
'bun:sqlite': {
|
|
150
|
-
connection?: BunSqliteDatabaseConfig;
|
|
151
|
-
};
|
|
152
|
-
'better-sqlite3': {
|
|
153
|
-
connection?: BetterSQLite3DatabaseConfig;
|
|
154
|
-
};
|
|
155
|
-
pglite: {
|
|
156
|
-
connection?: (PGliteOptions & {
|
|
157
|
-
dataDir?: string;
|
|
158
|
-
}) | string;
|
|
159
|
-
};
|
|
160
|
-
};
|
|
161
|
-
type DetermineClient<TClient extends DatabaseClient, TSchema extends Record<string, unknown>> = ClientDrizzleInstanceMap<TSchema>[TClient] & {
|
|
162
|
-
$client: ClientInstanceMap[TClient];
|
|
163
|
-
};
|
|
164
|
-
export declare function drizzle<TClient extends DatabaseClient, TSchema extends Record<string, unknown> = Record<string, never>>(client: TClient, ...params: TClient extends 'bun:sqlite' | 'better-sqlite3' | 'pglite' ? ([
|
|
165
|
-
] | [
|
|
166
|
-
(IfNotImported<ClientInstanceMap[TClient], {
|
|
167
|
-
connection: ImportTypeError<TClient>;
|
|
168
|
-
}, InitializerParams[TClient]> & DrizzleConfig<TSchema>)
|
|
169
|
-
] | [string]) : TClient extends 'vercel-postgres' ? ([] | [
|
|
170
|
-
(IfNotImported<ClientInstanceMap[TClient], {
|
|
171
|
-
connection: ImportTypeError<TClient>;
|
|
172
|
-
}, InitializerParams[TClient]> & DrizzleConfig<TSchema>)
|
|
173
|
-
]) : TClient extends 'postgres-js' | 'tidb-serverless' | 'libsql' | 'turso' | 'planetscale' | 'neon-http' | 'node-postgres' ? ([
|
|
174
|
-
(IfNotImported<ClientInstanceMap[TClient], {
|
|
175
|
-
connection: ImportTypeError<TClient>;
|
|
176
|
-
}, InitializerParams[TClient]> & DrizzleConfig<TSchema>)
|
|
177
|
-
] | [string]) : TClient extends 'mysql2' ? ([
|
|
178
|
-
(IfNotImported<ClientInstanceMap[TClient], {
|
|
179
|
-
connection: ImportTypeError<TClient>;
|
|
180
|
-
}, InitializerParams[TClient]> & MySql2DrizzleConfig<TSchema>)
|
|
181
|
-
] | [string]) : TClient extends 'neon-websocket' ? ([
|
|
182
|
-
IfNotImported<ClientInstanceMap[TClient], {
|
|
183
|
-
connection: ImportTypeError<TClient>;
|
|
184
|
-
}, InitializerParams[TClient]> & DrizzleConfig<TSchema> & {
|
|
185
|
-
ws?: any;
|
|
186
|
-
}
|
|
187
|
-
] | [string]) : [
|
|
188
|
-
(IfNotImported<ClientInstanceMap[TClient], {
|
|
189
|
-
connection: ImportTypeError<TClient>;
|
|
190
|
-
}, InitializerParams[TClient]> & DrizzleConfig<TSchema>)
|
|
191
|
-
]): Promise<DetermineClient<TClient, TSchema>>;
|
|
192
|
-
export {};
|
package/monodriver.d.ts
DELETED
|
@@ -1,192 +0,0 @@
|
|
|
1
|
-
import type { RDSDataClient, RDSDataClientConfig as RDSConfig } from '@aws-sdk/client-rds-data';
|
|
2
|
-
import type { PGlite, PGliteOptions } from '@electric-sql/pglite';
|
|
3
|
-
import type { Client as LibsqlClient, Config as LibsqlConfig } from '@libsql/client';
|
|
4
|
-
import type { HTTPTransactionOptions as NeonHttpConfig, NeonQueryFunction, Pool as NeonServerlessPool, PoolConfig as NeonServerlessConfig, QueryResult, QueryResultRow } from '@neondatabase/serverless';
|
|
5
|
-
import type { Client as PlanetscaleClient, Config as PlanetscaleConfig } from '@planetscale/database';
|
|
6
|
-
import type { Config as TiDBServerlessConfig, Connection as TiDBConnection } from '@tidbcloud/serverless';
|
|
7
|
-
import type { VercelPool } from '@vercel/postgres';
|
|
8
|
-
import type { Database as BetterSQLite3Database, Options as BetterSQLite3Options } from 'better-sqlite3';
|
|
9
|
-
import type { Database as BunDatabase } from 'bun:sqlite';
|
|
10
|
-
import type { Pool as Mysql2Pool, PoolOptions as Mysql2Config } from 'mysql2';
|
|
11
|
-
import type { Pool as NodePgPool, PoolConfig as NodePgPoolConfig } from 'pg';
|
|
12
|
-
import type { Options as PostgresJSOptions, PostgresType as PostgresJSPostgresType, Sql as PostgresJsClient } from 'postgres';
|
|
13
|
-
import type { AwsDataApiPgDatabase, DrizzleAwsDataApiPgConfig } from "./aws-data-api/pg/index.js";
|
|
14
|
-
import type { BetterSQLite3Database as DrizzleBetterSQLite3Database } from "./better-sqlite3/index.js";
|
|
15
|
-
import type { BunSQLiteDatabase } from "./bun-sqlite/index.js";
|
|
16
|
-
import type { AnyD1Database, DrizzleD1Database } from "./d1/index.js";
|
|
17
|
-
import type { LibSQLDatabase } from "./libsql/index.js";
|
|
18
|
-
import type { MySql2Database, MySql2DrizzleConfig } from "./mysql2/index.js";
|
|
19
|
-
import type { NeonHttpDatabase } from "./neon-http/index.js";
|
|
20
|
-
import type { NeonDatabase } from "./neon-serverless/index.js";
|
|
21
|
-
import type { NodePgDatabase } from "./node-postgres/driver.js";
|
|
22
|
-
import type { PgliteDatabase } from "./pglite/driver.js";
|
|
23
|
-
import type { PlanetScaleDatabase } from "./planetscale-serverless/index.js";
|
|
24
|
-
import type { PostgresJsDatabase } from "./postgres-js/index.js";
|
|
25
|
-
import type { TiDBServerlessDatabase } from "./tidb-serverless/index.js";
|
|
26
|
-
import type { DrizzleConfig, IfNotImported } from "./utils.js";
|
|
27
|
-
import type { VercelPgDatabase } from "./vercel-postgres/index.js";
|
|
28
|
-
type BunSqliteDatabaseOptions = {
|
|
29
|
-
/**
|
|
30
|
-
* Open the database as read-only (no write operations, no create).
|
|
31
|
-
*
|
|
32
|
-
* Equivalent to {@link constants.SQLITE_OPEN_READONLY}
|
|
33
|
-
*/
|
|
34
|
-
readonly?: boolean;
|
|
35
|
-
/**
|
|
36
|
-
* Allow creating a new database
|
|
37
|
-
*
|
|
38
|
-
* Equivalent to {@link constants.SQLITE_OPEN_CREATE}
|
|
39
|
-
*/
|
|
40
|
-
create?: boolean;
|
|
41
|
-
/**
|
|
42
|
-
* Open the database as read-write
|
|
43
|
-
*
|
|
44
|
-
* Equivalent to {@link constants.SQLITE_OPEN_READWRITE}
|
|
45
|
-
*/
|
|
46
|
-
readwrite?: boolean;
|
|
47
|
-
};
|
|
48
|
-
type BunSqliteDatabaseConfig = ({
|
|
49
|
-
source?: string;
|
|
50
|
-
} & BunSqliteDatabaseOptions) | string | undefined;
|
|
51
|
-
type BetterSQLite3DatabaseConfig = ({
|
|
52
|
-
source?: string | Buffer;
|
|
53
|
-
} & BetterSQLite3Options) | string | undefined;
|
|
54
|
-
type MonodriverNeonHttpConfig = ({
|
|
55
|
-
connectionString: string;
|
|
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' | 'pglite';
|
|
59
|
-
type ClientDrizzleInstanceMap<TSchema extends Record<string, any>> = {
|
|
60
|
-
'node-postgres': NodePgDatabase<TSchema>;
|
|
61
|
-
'postgres-js': PostgresJsDatabase<TSchema>;
|
|
62
|
-
'neon-websocket': NeonDatabase<TSchema>;
|
|
63
|
-
'neon-http': NeonHttpDatabase<TSchema>;
|
|
64
|
-
'vercel-postgres': VercelPgDatabase<TSchema>;
|
|
65
|
-
'aws-data-api-pg': AwsDataApiPgDatabase<TSchema>;
|
|
66
|
-
planetscale: PlanetScaleDatabase<TSchema>;
|
|
67
|
-
mysql2: MySql2Database<TSchema>;
|
|
68
|
-
'tidb-serverless': TiDBServerlessDatabase<TSchema>;
|
|
69
|
-
libsql: LibSQLDatabase<TSchema>;
|
|
70
|
-
turso: LibSQLDatabase<TSchema>;
|
|
71
|
-
d1: DrizzleD1Database<TSchema>;
|
|
72
|
-
'bun:sqlite': BunSQLiteDatabase<TSchema>;
|
|
73
|
-
'better-sqlite3': DrizzleBetterSQLite3Database<TSchema>;
|
|
74
|
-
pglite: PgliteDatabase<TSchema>;
|
|
75
|
-
};
|
|
76
|
-
type Primitive = string | number | boolean | undefined | null;
|
|
77
|
-
type ClientInstanceMap = {
|
|
78
|
-
'node-postgres': NodePgPool;
|
|
79
|
-
'postgres-js': PostgresJsClient;
|
|
80
|
-
'neon-websocket': NeonServerlessPool;
|
|
81
|
-
'neon-http': NeonQueryFunction<boolean, boolean>;
|
|
82
|
-
'vercel-postgres': VercelPool & (<O extends QueryResultRow>(strings: TemplateStringsArray, ...values: Primitive[]) => Promise<QueryResult<O>>);
|
|
83
|
-
'aws-data-api-pg': RDSDataClient;
|
|
84
|
-
planetscale: PlanetscaleClient;
|
|
85
|
-
mysql2: Mysql2Pool;
|
|
86
|
-
'tidb-serverless': TiDBConnection;
|
|
87
|
-
libsql: LibsqlClient;
|
|
88
|
-
turso: LibsqlClient;
|
|
89
|
-
d1: AnyD1Database;
|
|
90
|
-
'bun:sqlite': BunDatabase;
|
|
91
|
-
'better-sqlite3': BetterSQLite3Database;
|
|
92
|
-
pglite: PGlite;
|
|
93
|
-
};
|
|
94
|
-
type ClientTypeImportErrorMap = {
|
|
95
|
-
'node-postgres': 'pg`, `@types/pg';
|
|
96
|
-
'postgres-js': 'postgres';
|
|
97
|
-
'neon-websocket': '@neondatabase/serverless';
|
|
98
|
-
'neon-http': '@neondatabase/serverless';
|
|
99
|
-
'vercel-postgres': '@vercel/postgres';
|
|
100
|
-
'aws-data-api-pg': '@aws-sdk/client-rds-data';
|
|
101
|
-
planetscale: '@planetscale/database';
|
|
102
|
-
mysql2: 'mysql2';
|
|
103
|
-
'tidb-serverless': '@tidbcloud/serverless';
|
|
104
|
-
libsql: '@libsql/client';
|
|
105
|
-
turso: '@libsql/client';
|
|
106
|
-
d1: '@cloudflare/workers-types` or `@miniflare/d1';
|
|
107
|
-
'bun:sqlite': 'bun-types';
|
|
108
|
-
'better-sqlite3': 'better-sqlite3';
|
|
109
|
-
pglite: '@electric-sql/pglite';
|
|
110
|
-
};
|
|
111
|
-
type ImportTypeError<TClient extends DatabaseClient> = `Please install \`${ClientTypeImportErrorMap[TClient]}\`to allow Drizzle ORM to connect to the database`;
|
|
112
|
-
type InitializerParams = {
|
|
113
|
-
'node-postgres': {
|
|
114
|
-
connection: string | NodePgPoolConfig;
|
|
115
|
-
};
|
|
116
|
-
'postgres-js': {
|
|
117
|
-
connection: string | ({
|
|
118
|
-
url?: string;
|
|
119
|
-
} & PostgresJSOptions<Record<string, PostgresJSPostgresType>>);
|
|
120
|
-
};
|
|
121
|
-
'neon-websocket': {
|
|
122
|
-
connection: string | NeonServerlessConfig;
|
|
123
|
-
};
|
|
124
|
-
'neon-http': {
|
|
125
|
-
connection: MonodriverNeonHttpConfig;
|
|
126
|
-
};
|
|
127
|
-
'vercel-postgres': {};
|
|
128
|
-
'aws-data-api-pg': {
|
|
129
|
-
connection: AwsDataApiConnectionConfig;
|
|
130
|
-
};
|
|
131
|
-
planetscale: {
|
|
132
|
-
connection: PlanetscaleConfig | string;
|
|
133
|
-
};
|
|
134
|
-
mysql2: {
|
|
135
|
-
connection: Mysql2Config | string;
|
|
136
|
-
};
|
|
137
|
-
'tidb-serverless': {
|
|
138
|
-
connection: TiDBServerlessConfig | string;
|
|
139
|
-
};
|
|
140
|
-
libsql: {
|
|
141
|
-
connection: LibsqlConfig | string;
|
|
142
|
-
};
|
|
143
|
-
turso: {
|
|
144
|
-
connection: LibsqlConfig | string;
|
|
145
|
-
};
|
|
146
|
-
d1: {
|
|
147
|
-
connection: AnyD1Database;
|
|
148
|
-
};
|
|
149
|
-
'bun:sqlite': {
|
|
150
|
-
connection?: BunSqliteDatabaseConfig;
|
|
151
|
-
};
|
|
152
|
-
'better-sqlite3': {
|
|
153
|
-
connection?: BetterSQLite3DatabaseConfig;
|
|
154
|
-
};
|
|
155
|
-
pglite: {
|
|
156
|
-
connection?: (PGliteOptions & {
|
|
157
|
-
dataDir?: string;
|
|
158
|
-
}) | string;
|
|
159
|
-
};
|
|
160
|
-
};
|
|
161
|
-
type DetermineClient<TClient extends DatabaseClient, TSchema extends Record<string, unknown>> = ClientDrizzleInstanceMap<TSchema>[TClient] & {
|
|
162
|
-
$client: ClientInstanceMap[TClient];
|
|
163
|
-
};
|
|
164
|
-
export declare function drizzle<TClient extends DatabaseClient, TSchema extends Record<string, unknown> = Record<string, never>>(client: TClient, ...params: TClient extends 'bun:sqlite' | 'better-sqlite3' | 'pglite' ? ([
|
|
165
|
-
] | [
|
|
166
|
-
(IfNotImported<ClientInstanceMap[TClient], {
|
|
167
|
-
connection: ImportTypeError<TClient>;
|
|
168
|
-
}, InitializerParams[TClient]> & DrizzleConfig<TSchema>)
|
|
169
|
-
] | [string]) : TClient extends 'vercel-postgres' ? ([] | [
|
|
170
|
-
(IfNotImported<ClientInstanceMap[TClient], {
|
|
171
|
-
connection: ImportTypeError<TClient>;
|
|
172
|
-
}, InitializerParams[TClient]> & DrizzleConfig<TSchema>)
|
|
173
|
-
]) : TClient extends 'postgres-js' | 'tidb-serverless' | 'libsql' | 'turso' | 'planetscale' | 'neon-http' | 'node-postgres' ? ([
|
|
174
|
-
(IfNotImported<ClientInstanceMap[TClient], {
|
|
175
|
-
connection: ImportTypeError<TClient>;
|
|
176
|
-
}, InitializerParams[TClient]> & DrizzleConfig<TSchema>)
|
|
177
|
-
] | [string]) : TClient extends 'mysql2' ? ([
|
|
178
|
-
(IfNotImported<ClientInstanceMap[TClient], {
|
|
179
|
-
connection: ImportTypeError<TClient>;
|
|
180
|
-
}, InitializerParams[TClient]> & MySql2DrizzleConfig<TSchema>)
|
|
181
|
-
] | [string]) : TClient extends 'neon-websocket' ? ([
|
|
182
|
-
IfNotImported<ClientInstanceMap[TClient], {
|
|
183
|
-
connection: ImportTypeError<TClient>;
|
|
184
|
-
}, InitializerParams[TClient]> & DrizzleConfig<TSchema> & {
|
|
185
|
-
ws?: any;
|
|
186
|
-
}
|
|
187
|
-
] | [string]) : [
|
|
188
|
-
(IfNotImported<ClientInstanceMap[TClient], {
|
|
189
|
-
connection: ImportTypeError<TClient>;
|
|
190
|
-
}, InitializerParams[TClient]> & DrizzleConfig<TSchema>)
|
|
191
|
-
]): Promise<DetermineClient<TClient, TSchema>>;
|
|
192
|
-
export {};
|
package/monodriver.js
DELETED
|
@@ -1,249 +0,0 @@
|
|
|
1
|
-
const importError = (libName) => {
|
|
2
|
-
throw new Error(
|
|
3
|
-
`Please install '${libName}' to allow Drizzle ORM to connect to the database`
|
|
4
|
-
);
|
|
5
|
-
};
|
|
6
|
-
function assertUnreachable(_) {
|
|
7
|
-
throw new Error("Didn't expect to get here");
|
|
8
|
-
}
|
|
9
|
-
async function drizzle(client, ...params) {
|
|
10
|
-
switch (client) {
|
|
11
|
-
case "node-postgres": {
|
|
12
|
-
const defpg = await import("pg").catch(() => importError("pg"));
|
|
13
|
-
const { drizzle: drizzle2 } = await import("./node-postgres/index.js");
|
|
14
|
-
if (typeof params[0] === "object") {
|
|
15
|
-
const { connection, ...drizzleConfig } = params[0];
|
|
16
|
-
const instance2 = typeof connection === "string" ? new defpg.default.Pool({
|
|
17
|
-
connectionString: connection
|
|
18
|
-
}) : new defpg.default.Pool(connection);
|
|
19
|
-
const db2 = drizzle2(instance2, drizzleConfig);
|
|
20
|
-
return db2;
|
|
21
|
-
}
|
|
22
|
-
const instance = typeof params[0] === "string" ? new defpg.default.Pool({
|
|
23
|
-
connectionString: params[0]
|
|
24
|
-
}) : new defpg.default.Pool(params[0]);
|
|
25
|
-
const db = drizzle2(instance);
|
|
26
|
-
return db;
|
|
27
|
-
}
|
|
28
|
-
case "aws-data-api-pg": {
|
|
29
|
-
const { connection, ...drizzleConfig } = params[0];
|
|
30
|
-
const { resourceArn, database, secretArn, ...rdsConfig } = connection;
|
|
31
|
-
const { RDSDataClient } = await import("@aws-sdk/client-rds-data").catch(
|
|
32
|
-
() => importError("@aws-sdk/client-rds-data")
|
|
33
|
-
);
|
|
34
|
-
const { drizzle: drizzle2 } = await import("./aws-data-api/pg/index.js");
|
|
35
|
-
const instance = new RDSDataClient(rdsConfig);
|
|
36
|
-
const db = drizzle2(instance, { resourceArn, database, secretArn, ...drizzleConfig });
|
|
37
|
-
return db;
|
|
38
|
-
}
|
|
39
|
-
case "better-sqlite3": {
|
|
40
|
-
const { default: Client } = await import("better-sqlite3").catch(() => importError("better-sqlite3"));
|
|
41
|
-
const { drizzle: drizzle2 } = await import("./better-sqlite3/index.js");
|
|
42
|
-
if (typeof params[0] === "object") {
|
|
43
|
-
const { connection, ...drizzleConfig } = params[0];
|
|
44
|
-
if (typeof connection === "object") {
|
|
45
|
-
const { source, ...options } = connection;
|
|
46
|
-
const instance3 = new Client(source, options);
|
|
47
|
-
const db3 = drizzle2(instance3, drizzleConfig);
|
|
48
|
-
return db3;
|
|
49
|
-
}
|
|
50
|
-
const instance2 = new Client(connection);
|
|
51
|
-
const db2 = drizzle2(instance2, drizzleConfig);
|
|
52
|
-
return db2;
|
|
53
|
-
}
|
|
54
|
-
const instance = new Client(params[0]);
|
|
55
|
-
const db = drizzle2(instance);
|
|
56
|
-
return db;
|
|
57
|
-
}
|
|
58
|
-
case "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
|
-
});
|
|
62
|
-
const { drizzle: drizzle2 } = await import("./bun-sqlite/index.js");
|
|
63
|
-
if (typeof params[0] === "object") {
|
|
64
|
-
const { connection, ...drizzleConfig } = params[0];
|
|
65
|
-
if (typeof connection === "object") {
|
|
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);
|
|
69
|
-
const db3 = drizzle2(instance3, drizzleConfig);
|
|
70
|
-
return db3;
|
|
71
|
-
}
|
|
72
|
-
const instance2 = new Client(connection);
|
|
73
|
-
const db2 = drizzle2(instance2, drizzleConfig);
|
|
74
|
-
return db2;
|
|
75
|
-
}
|
|
76
|
-
const instance = new Client(params[0]);
|
|
77
|
-
const db = drizzle2(instance);
|
|
78
|
-
return db;
|
|
79
|
-
}
|
|
80
|
-
case "d1": {
|
|
81
|
-
const { connection, ...drizzleConfig } = params[0];
|
|
82
|
-
const { drizzle: drizzle2 } = await import("./d1/index.js");
|
|
83
|
-
const db = drizzle2(connection, drizzleConfig);
|
|
84
|
-
return db;
|
|
85
|
-
}
|
|
86
|
-
case "libsql":
|
|
87
|
-
case "turso": {
|
|
88
|
-
const { createClient } = await import("@libsql/client").catch(() => importError("@libsql/client"));
|
|
89
|
-
const { drizzle: drizzle2 } = await import("./libsql/index.js");
|
|
90
|
-
if (typeof params[0] === "string") {
|
|
91
|
-
const instance2 = createClient({
|
|
92
|
-
url: params[0]
|
|
93
|
-
});
|
|
94
|
-
const db2 = drizzle2(instance2);
|
|
95
|
-
return db2;
|
|
96
|
-
}
|
|
97
|
-
const { connection, ...drizzleConfig } = params[0];
|
|
98
|
-
const instance = typeof connection === "string" ? createClient({ url: connection }) : createClient(connection);
|
|
99
|
-
const db = drizzle2(instance, drizzleConfig);
|
|
100
|
-
return db;
|
|
101
|
-
}
|
|
102
|
-
case "mysql2": {
|
|
103
|
-
const { createPool } = await import("mysql2/promise").catch(() => importError("mysql2"));
|
|
104
|
-
const { drizzle: drizzle2 } = await import("./mysql2/index.js");
|
|
105
|
-
if (typeof params[0] === "object") {
|
|
106
|
-
const { connection, ...drizzleConfig } = params[0];
|
|
107
|
-
const instance2 = createPool(connection);
|
|
108
|
-
const db2 = drizzle2(instance2, drizzleConfig);
|
|
109
|
-
return db2;
|
|
110
|
-
}
|
|
111
|
-
const connectionString = params[0];
|
|
112
|
-
const instance = createPool(connectionString);
|
|
113
|
-
const db = drizzle2(instance);
|
|
114
|
-
return db;
|
|
115
|
-
}
|
|
116
|
-
case "neon-http": {
|
|
117
|
-
const { neon } = await import("@neondatabase/serverless").catch(() => importError("@neondatabase/serverless"));
|
|
118
|
-
const { drizzle: drizzle2 } = await import("./neon-http/index.js");
|
|
119
|
-
if (typeof params[0] === "object") {
|
|
120
|
-
const { connection, ...drizzleConfig } = params[0];
|
|
121
|
-
if (typeof connection === "object") {
|
|
122
|
-
const { connectionString, ...options } = connection;
|
|
123
|
-
const instance3 = neon(connectionString, options);
|
|
124
|
-
const db3 = drizzle2(instance3, drizzleConfig);
|
|
125
|
-
return db3;
|
|
126
|
-
}
|
|
127
|
-
const instance2 = neon(connection);
|
|
128
|
-
const db2 = drizzle2(instance2, drizzleConfig);
|
|
129
|
-
return db2;
|
|
130
|
-
}
|
|
131
|
-
const instance = neon(params[0]);
|
|
132
|
-
const db = drizzle2(instance);
|
|
133
|
-
return db;
|
|
134
|
-
}
|
|
135
|
-
case "neon-websocket": {
|
|
136
|
-
const { Pool, neonConfig } = await import("@neondatabase/serverless").catch(
|
|
137
|
-
() => importError("@neondatabase/serverless")
|
|
138
|
-
);
|
|
139
|
-
const { drizzle: drizzle2 } = await import("./neon-serverless/index.js");
|
|
140
|
-
if (typeof params[0] === "string") {
|
|
141
|
-
const instance2 = new Pool({
|
|
142
|
-
connectionString: params[0]
|
|
143
|
-
});
|
|
144
|
-
const db2 = drizzle2(instance2);
|
|
145
|
-
return db2;
|
|
146
|
-
}
|
|
147
|
-
if (typeof params[0] === "object") {
|
|
148
|
-
const { connection, ws, ...drizzleConfig } = params[0];
|
|
149
|
-
if (ws) {
|
|
150
|
-
neonConfig.webSocketConstructor = ws;
|
|
151
|
-
}
|
|
152
|
-
const instance2 = typeof connection === "string" ? new Pool({
|
|
153
|
-
connectionString: connection
|
|
154
|
-
}) : new Pool(connection);
|
|
155
|
-
const db2 = drizzle2(instance2, drizzleConfig);
|
|
156
|
-
return db2;
|
|
157
|
-
}
|
|
158
|
-
const instance = new Pool();
|
|
159
|
-
const db = drizzle2(instance);
|
|
160
|
-
return db;
|
|
161
|
-
}
|
|
162
|
-
case "planetscale": {
|
|
163
|
-
const { Client } = await import("@planetscale/database").catch(() => importError("@planetscale/database"));
|
|
164
|
-
const { drizzle: drizzle2 } = await import("./planetscale-serverless/index.js");
|
|
165
|
-
if (typeof params[0] === "object") {
|
|
166
|
-
const { connection, ...drizzleConfig } = params[0];
|
|
167
|
-
const instance2 = typeof connection === "string" ? new Client({
|
|
168
|
-
url: connection
|
|
169
|
-
}) : new Client(
|
|
170
|
-
connection
|
|
171
|
-
);
|
|
172
|
-
const db2 = drizzle2(instance2, drizzleConfig);
|
|
173
|
-
return db2;
|
|
174
|
-
}
|
|
175
|
-
const instance = new Client({
|
|
176
|
-
url: params[0]
|
|
177
|
-
});
|
|
178
|
-
const db = drizzle2(instance);
|
|
179
|
-
return db;
|
|
180
|
-
}
|
|
181
|
-
case "postgres-js": {
|
|
182
|
-
const { default: client2 } = await import("postgres").catch(() => importError("postgres"));
|
|
183
|
-
const { drizzle: drizzle2 } = await import("./postgres-js/index.js");
|
|
184
|
-
if (typeof params[0] === "object") {
|
|
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
|
-
}
|
|
192
|
-
const instance2 = client2(connection);
|
|
193
|
-
const db2 = drizzle2(instance2, drizzleConfig);
|
|
194
|
-
return db2;
|
|
195
|
-
}
|
|
196
|
-
const instance = client2(params[0]);
|
|
197
|
-
const db = drizzle2(instance);
|
|
198
|
-
return db;
|
|
199
|
-
}
|
|
200
|
-
case "tidb-serverless": {
|
|
201
|
-
const { connect } = await import("@tidbcloud/serverless").catch(() => importError("@tidbcloud/serverless"));
|
|
202
|
-
const { drizzle: drizzle2 } = await import("./tidb-serverless/index.js");
|
|
203
|
-
if (typeof params[0] === "string") {
|
|
204
|
-
const instance2 = connect({
|
|
205
|
-
url: params[0]
|
|
206
|
-
});
|
|
207
|
-
const db2 = drizzle2(instance2);
|
|
208
|
-
return db2;
|
|
209
|
-
}
|
|
210
|
-
const { connection, ...drizzleConfig } = params[0];
|
|
211
|
-
const instance = typeof connection === "string" ? connect({
|
|
212
|
-
url: connection
|
|
213
|
-
}) : connect(connection);
|
|
214
|
-
const db = drizzle2(instance, drizzleConfig);
|
|
215
|
-
return db;
|
|
216
|
-
}
|
|
217
|
-
case "vercel-postgres": {
|
|
218
|
-
const drizzleConfig = params[0];
|
|
219
|
-
const { sql } = await import("@vercel/postgres").catch(() => importError("@vercel/postgres"));
|
|
220
|
-
const { drizzle: drizzle2 } = await import("./vercel-postgres/index.js");
|
|
221
|
-
const db = drizzle2(sql, drizzleConfig);
|
|
222
|
-
return db;
|
|
223
|
-
}
|
|
224
|
-
case "pglite": {
|
|
225
|
-
const { PGlite } = await import("@electric-sql/pglite").catch(() => importError("@electric-sql/pglite"));
|
|
226
|
-
const { drizzle: drizzle2 } = await import("./pglite/index.js");
|
|
227
|
-
if (typeof params[0] === "object") {
|
|
228
|
-
const { connection, ...drizzleConfig } = params[0];
|
|
229
|
-
if (typeof connection === "object") {
|
|
230
|
-
const { dataDir, ...options } = connection;
|
|
231
|
-
const instance3 = new PGlite(dataDir, options);
|
|
232
|
-
const db3 = drizzle2(instance3, drizzleConfig);
|
|
233
|
-
return db3;
|
|
234
|
-
}
|
|
235
|
-
const instance2 = new PGlite(connection);
|
|
236
|
-
const db2 = drizzle2(instance2, drizzleConfig);
|
|
237
|
-
return db2;
|
|
238
|
-
}
|
|
239
|
-
const instance = new PGlite(params[0]);
|
|
240
|
-
const db = drizzle2(instance);
|
|
241
|
-
return db;
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
assertUnreachable(client);
|
|
245
|
-
}
|
|
246
|
-
export {
|
|
247
|
-
drizzle
|
|
248
|
-
};
|
|
249
|
-
//# sourceMappingURL=monodriver.js.map
|