@event-driven-io/dumbo 0.13.0-beta.2 → 0.13.0-beta.21
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/dist/chunk-65DKXURG.js +481 -0
- package/dist/chunk-65DKXURG.js.map +1 -0
- package/dist/chunk-7WEBHXZD.cjs +481 -0
- package/dist/chunk-7WEBHXZD.cjs.map +1 -0
- package/dist/chunk-AMACBMAZ.cjs +556 -0
- package/dist/chunk-AMACBMAZ.cjs.map +1 -0
- package/dist/chunk-FC4JR2R3.js +83 -0
- package/dist/chunk-FC4JR2R3.js.map +1 -0
- package/dist/chunk-H7ZKIJHB.cjs +83 -0
- package/dist/chunk-H7ZKIJHB.cjs.map +1 -0
- package/dist/chunk-IVJ3SNPJ.js +34 -0
- package/dist/chunk-IVJ3SNPJ.js.map +1 -0
- package/dist/chunk-R7P7CNMK.cjs +34 -0
- package/dist/chunk-R7P7CNMK.cjs.map +1 -0
- package/dist/{chunk-XVV3OOQX.js → chunk-T4A6BQRA.js} +209 -58
- package/dist/chunk-T4A6BQRA.js.map +1 -0
- package/dist/{chunk-N7RWT46K.js → chunk-XO5T5N5S.js} +2135 -1613
- package/dist/chunk-XO5T5N5S.js.map +1 -0
- package/dist/{chunk-OJ34O3Q2.cjs → chunk-XOQHZABK.cjs} +2161 -1639
- package/dist/chunk-XOQHZABK.cjs.map +1 -0
- package/dist/cloudflare.cjs +451 -0
- package/dist/cloudflare.cjs.map +1 -0
- package/dist/cloudflare.d.cts +92 -0
- package/dist/cloudflare.d.ts +92 -0
- package/dist/cloudflare.js +451 -0
- package/dist/cloudflare.js.map +1 -0
- package/dist/{columnProcessors-DMPpTPqM.d.ts → columnProcessors-C7fRa54L.d.ts} +1 -1
- package/dist/{columnProcessors-BX-sH7ah.d.cts → columnProcessors-Difrrk4c.d.cts} +1 -1
- package/dist/{connectionString-B1wm0TFc.d.cts → connectionString-oeg1LD5V.d.cts} +352 -137
- package/dist/{connectionString-B1wm0TFc.d.ts → connectionString-oeg1LD5V.d.ts} +352 -137
- package/dist/index.cjs +96 -4
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +23 -18
- package/dist/index.d.ts +23 -18
- package/dist/index.js +101 -9
- package/dist/index.js.map +1 -1
- package/dist/pg.cjs +382 -9
- package/dist/pg.cjs.map +1 -1
- package/dist/pg.d.cts +81 -105
- package/dist/pg.d.ts +81 -105
- package/dist/pg.js +434 -61
- package/dist/pg.js.map +1 -1
- package/dist/postgresql.cjs +50 -0
- package/dist/postgresql.cjs.map +1 -0
- package/dist/postgresql.d.cts +61 -0
- package/dist/postgresql.d.ts +61 -0
- package/dist/postgresql.js +50 -0
- package/dist/sqlite.cjs +56 -0
- package/dist/sqlite.cjs.map +1 -0
- package/dist/{index-C0h0c380.d.cts → sqlite.d.cts} +31 -10
- package/dist/{index-C2z_XBn6.d.ts → sqlite.d.ts} +31 -10
- package/dist/sqlite.js +56 -0
- package/dist/sqlite3.cjs +240 -11
- package/dist/sqlite3.cjs.map +1 -1
- package/dist/sqlite3.d.cts +39 -19
- package/dist/sqlite3.d.ts +39 -19
- package/dist/sqlite3.js +251 -22
- package/dist/sqlite3.js.map +1 -1
- package/package.json +69 -29
- package/dist/chunk-A7TC7IOP.cjs +0 -55
- package/dist/chunk-A7TC7IOP.cjs.map +0 -1
- package/dist/chunk-F7JQ7BX7.js +0 -240
- package/dist/chunk-F7JQ7BX7.js.map +0 -1
- package/dist/chunk-I34X53VL.js +0 -688
- package/dist/chunk-I34X53VL.js.map +0 -1
- package/dist/chunk-ISNF6USX.cjs +0 -688
- package/dist/chunk-ISNF6USX.cjs.map +0 -1
- package/dist/chunk-IYEHOE4S.cjs +0 -405
- package/dist/chunk-IYEHOE4S.cjs.map +0 -1
- package/dist/chunk-L2YZQAG3.cjs +0 -240
- package/dist/chunk-L2YZQAG3.cjs.map +0 -1
- package/dist/chunk-N7RWT46K.js.map +0 -1
- package/dist/chunk-OJ34O3Q2.cjs.map +0 -1
- package/dist/chunk-TXSETOGH.js +0 -55
- package/dist/chunk-TXSETOGH.js.map +0 -1
- package/dist/chunk-XVV3OOQX.js.map +0 -1
- package/dist/d1.cjs +0 -277
- package/dist/d1.cjs.map +0 -1
- package/dist/d1.d.cts +0 -72
- package/dist/d1.d.ts +0 -72
- package/dist/d1.js +0 -277
- package/dist/d1.js.map +0 -1
- package/dist/pg-3ACXFMU4.cjs +0 -59
- package/dist/pg-3ACXFMU4.cjs.map +0 -1
- package/dist/pg-GHOW3XSG.js +0 -59
- package/dist/sqlite3-EEIKQCJR.js +0 -25
- package/dist/sqlite3-SE4DDYZE.cjs +0 -25
- package/dist/sqlite3-SE4DDYZE.cjs.map +0 -1
- /package/dist/{pg-GHOW3XSG.js.map → postgresql.js.map} +0 -0
- /package/dist/{sqlite3-EEIKQCJR.js.map → sqlite.js.map} +0 -0
package/dist/chunk-L2YZQAG3.cjs
DELETED
|
@@ -1,240 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
var _chunkIYEHOE4Scjs = require('./chunk-IYEHOE4S.cjs');
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
var _chunkOJ34O3Q2cjs = require('./chunk-OJ34O3Q2.cjs');
|
|
15
|
-
|
|
16
|
-
// src/storage/sqlite/sqlite3/connections/connection.ts
|
|
17
|
-
var _sqlite3 = require('sqlite3'); var _sqlite32 = _interopRequireDefault(_sqlite3);
|
|
18
|
-
var SQLite3DriverType = "SQLite:sqlite3";
|
|
19
|
-
var sqlite3Client = (options) => {
|
|
20
|
-
let db;
|
|
21
|
-
let isClosed = false;
|
|
22
|
-
const connect = () => db ? Promise.resolve() : new Promise((resolve, reject) => {
|
|
23
|
-
try {
|
|
24
|
-
db = new _sqlite32.default.Database(
|
|
25
|
-
_nullishCoalesce(_nullishCoalesce(options.fileName, () => ( options.connectionString)), () => ( _chunkIYEHOE4Scjs.InMemorySQLiteDatabase)),
|
|
26
|
-
_sqlite32.default.OPEN_URI | _sqlite32.default.OPEN_READWRITE | _sqlite32.default.OPEN_CREATE,
|
|
27
|
-
(err) => {
|
|
28
|
-
if (err) {
|
|
29
|
-
reject(err);
|
|
30
|
-
return;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
);
|
|
34
|
-
db.run("PRAGMA journal_mode = WAL;", (err) => {
|
|
35
|
-
if (err) {
|
|
36
|
-
reject(err);
|
|
37
|
-
return;
|
|
38
|
-
}
|
|
39
|
-
resolve();
|
|
40
|
-
});
|
|
41
|
-
} catch (error) {
|
|
42
|
-
reject(error);
|
|
43
|
-
}
|
|
44
|
-
});
|
|
45
|
-
const executeQuery = (sql, params) => new Promise((resolve, reject) => {
|
|
46
|
-
try {
|
|
47
|
-
db.all(sql, _nullishCoalesce(params, () => ( [])), (err, result) => {
|
|
48
|
-
if (err) {
|
|
49
|
-
reject(err);
|
|
50
|
-
return;
|
|
51
|
-
}
|
|
52
|
-
resolve(result);
|
|
53
|
-
});
|
|
54
|
-
} catch (error) {
|
|
55
|
-
reject(error);
|
|
56
|
-
}
|
|
57
|
-
});
|
|
58
|
-
const executeCommand = (sql, params, options2) => new Promise((resolve, reject) => {
|
|
59
|
-
try {
|
|
60
|
-
if (_optionalChain([options2, 'optionalAccess', _ => _.ignoreChangesCount]) === true) {
|
|
61
|
-
db.run(
|
|
62
|
-
sql,
|
|
63
|
-
_nullishCoalesce(params, () => ( [])),
|
|
64
|
-
function(err, rows) {
|
|
65
|
-
if (err) {
|
|
66
|
-
reject(err);
|
|
67
|
-
return;
|
|
68
|
-
}
|
|
69
|
-
resolve({
|
|
70
|
-
rowCount: 0,
|
|
71
|
-
rows: _nullishCoalesce(rows, () => ( []))
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
);
|
|
75
|
-
}
|
|
76
|
-
db.serialize(() => {
|
|
77
|
-
db.all(sql, _nullishCoalesce(params, () => ( [])), (err, rows) => {
|
|
78
|
-
if (err) {
|
|
79
|
-
reject(err);
|
|
80
|
-
return;
|
|
81
|
-
}
|
|
82
|
-
db.get(
|
|
83
|
-
"SELECT changes() as changes",
|
|
84
|
-
(changesErr, row) => {
|
|
85
|
-
if (changesErr) {
|
|
86
|
-
reject(changesErr);
|
|
87
|
-
return;
|
|
88
|
-
}
|
|
89
|
-
resolve({
|
|
90
|
-
rowCount: _nullishCoalesce(_optionalChain([row, 'optionalAccess', _2 => _2.changes]), () => ( 0)),
|
|
91
|
-
rows: _nullishCoalesce(rows, () => ( []))
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
);
|
|
95
|
-
});
|
|
96
|
-
});
|
|
97
|
-
} catch (error) {
|
|
98
|
-
reject(error);
|
|
99
|
-
}
|
|
100
|
-
});
|
|
101
|
-
return {
|
|
102
|
-
connect,
|
|
103
|
-
close: () => {
|
|
104
|
-
if (isClosed) {
|
|
105
|
-
return Promise.resolve();
|
|
106
|
-
}
|
|
107
|
-
isClosed = true;
|
|
108
|
-
if (db)
|
|
109
|
-
return new Promise((resolve, reject) => {
|
|
110
|
-
db.close((err) => {
|
|
111
|
-
if (err) {
|
|
112
|
-
reject(err);
|
|
113
|
-
return;
|
|
114
|
-
}
|
|
115
|
-
resolve();
|
|
116
|
-
});
|
|
117
|
-
});
|
|
118
|
-
return Promise.resolve();
|
|
119
|
-
},
|
|
120
|
-
query: async (sql, _options) => {
|
|
121
|
-
const { query, params } = _chunkIYEHOE4Scjs.sqliteFormatter.format(sql);
|
|
122
|
-
const result = await executeQuery(
|
|
123
|
-
query,
|
|
124
|
-
params
|
|
125
|
-
);
|
|
126
|
-
return { rowCount: result.length, rows: result };
|
|
127
|
-
},
|
|
128
|
-
batchQuery: async (sqls, _options) => {
|
|
129
|
-
const results = [];
|
|
130
|
-
for (const sql of sqls) {
|
|
131
|
-
const { query, params } = _chunkIYEHOE4Scjs.sqliteFormatter.format(sql);
|
|
132
|
-
const result = await executeQuery(
|
|
133
|
-
query,
|
|
134
|
-
params
|
|
135
|
-
);
|
|
136
|
-
results.push({ rowCount: result.length, rows: result });
|
|
137
|
-
}
|
|
138
|
-
return results;
|
|
139
|
-
},
|
|
140
|
-
command: async (sql, options2) => {
|
|
141
|
-
const { query, params } = _chunkIYEHOE4Scjs.sqliteFormatter.format(sql);
|
|
142
|
-
return executeCommand(
|
|
143
|
-
query,
|
|
144
|
-
params,
|
|
145
|
-
options2
|
|
146
|
-
);
|
|
147
|
-
},
|
|
148
|
-
batchCommand: async (sqls, options2) => {
|
|
149
|
-
const results = [];
|
|
150
|
-
for (const sql of sqls) {
|
|
151
|
-
const { query, params } = _chunkIYEHOE4Scjs.sqliteFormatter.format(sql);
|
|
152
|
-
const result = await executeCommand(
|
|
153
|
-
query,
|
|
154
|
-
params,
|
|
155
|
-
options2
|
|
156
|
-
);
|
|
157
|
-
results.push(result);
|
|
158
|
-
}
|
|
159
|
-
return results;
|
|
160
|
-
}
|
|
161
|
-
};
|
|
162
|
-
};
|
|
163
|
-
var checkConnection = async (fileName) => {
|
|
164
|
-
const client = sqlite3Client({
|
|
165
|
-
fileName
|
|
166
|
-
});
|
|
167
|
-
try {
|
|
168
|
-
await client.query(_chunkOJ34O3Q2cjs.SQL`SELECT 1`);
|
|
169
|
-
return { successful: true };
|
|
170
|
-
} catch (error) {
|
|
171
|
-
const code = error instanceof Error && "code" in error && typeof error.code === "string" ? error.code : void 0;
|
|
172
|
-
return {
|
|
173
|
-
successful: false,
|
|
174
|
-
errorType: code === "SQLITE_CANTOPEN" ? "ConnectionRefused" : code === "SQLITE_AUTH" ? "Authentication" : "Unknown",
|
|
175
|
-
code,
|
|
176
|
-
error
|
|
177
|
-
};
|
|
178
|
-
} finally {
|
|
179
|
-
await client.close();
|
|
180
|
-
}
|
|
181
|
-
};
|
|
182
|
-
var sqlite3Connection = (options) => _chunkIYEHOE4Scjs.sqliteConnection.call(void 0, {
|
|
183
|
-
type: "Client",
|
|
184
|
-
driverType: SQLite3DriverType,
|
|
185
|
-
sqliteClientFactory: (connectionOptions) => {
|
|
186
|
-
if ("client" in connectionOptions && connectionOptions.client) {
|
|
187
|
-
return connectionOptions.client;
|
|
188
|
-
}
|
|
189
|
-
return sqlite3Client(connectionOptions);
|
|
190
|
-
},
|
|
191
|
-
connectionOptions: options
|
|
192
|
-
});
|
|
193
|
-
|
|
194
|
-
// src/storage/sqlite/sqlite3/index.ts
|
|
195
|
-
var sqlite3Pool = (options) => _chunkIYEHOE4Scjs.sqlitePool.call(void 0,
|
|
196
|
-
_chunkIYEHOE4Scjs.toSqlitePoolOptions.call(void 0, {
|
|
197
|
-
...options,
|
|
198
|
-
driverType: SQLite3DriverType,
|
|
199
|
-
..."connection" in options ? {} : {
|
|
200
|
-
connectionOptions: options,
|
|
201
|
-
sqliteConnectionFactory: (opts) => sqlite3Connection(opts)
|
|
202
|
-
}
|
|
203
|
-
})
|
|
204
|
-
);
|
|
205
|
-
var tryParseConnectionString = (connectionString) => {
|
|
206
|
-
try {
|
|
207
|
-
return _chunkIYEHOE4Scjs.SQLiteConnectionString.call(void 0, connectionString);
|
|
208
|
-
} catch (e) {
|
|
209
|
-
return null;
|
|
210
|
-
}
|
|
211
|
-
};
|
|
212
|
-
var sqlite3DatabaseDriver = {
|
|
213
|
-
driverType: SQLite3DriverType,
|
|
214
|
-
createPool: (options) => sqlite3Pool(options),
|
|
215
|
-
sqlFormatter: _chunkIYEHOE4Scjs.sqliteFormatter,
|
|
216
|
-
defaultMigratorOptions: _chunkIYEHOE4Scjs.DefaultSQLiteMigratorOptions,
|
|
217
|
-
getDatabaseNameOrDefault: () => _chunkIYEHOE4Scjs.InMemorySQLiteDatabase,
|
|
218
|
-
canHandle: _chunkOJ34O3Q2cjs.canHandleDriverWithConnectionString.call(void 0,
|
|
219
|
-
SQLite3DriverType,
|
|
220
|
-
tryParseConnectionString
|
|
221
|
-
)
|
|
222
|
-
};
|
|
223
|
-
var useSqlite3DatabaseDriver = () => {
|
|
224
|
-
_chunkOJ34O3Q2cjs.dumboDatabaseDriverRegistry.register(
|
|
225
|
-
SQLite3DriverType,
|
|
226
|
-
sqlite3DatabaseDriver
|
|
227
|
-
);
|
|
228
|
-
};
|
|
229
|
-
useSqlite3DatabaseDriver();
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
exports.SQLite3DriverType = SQLite3DriverType; exports.sqlite3Client = sqlite3Client; exports.checkConnection = checkConnection; exports.sqlite3Connection = sqlite3Connection; exports.sqlite3Pool = sqlite3Pool; exports.sqlite3DatabaseDriver = sqlite3DatabaseDriver; exports.useSqlite3DatabaseDriver = useSqlite3DatabaseDriver;
|
|
240
|
-
//# sourceMappingURL=chunk-L2YZQAG3.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/Pongo/Pongo/src/packages/dumbo/dist/chunk-L2YZQAG3.cjs","../src/storage/sqlite/sqlite3/connections/connection.ts","../src/storage/sqlite/sqlite3/index.ts"],"names":["options"],"mappings":"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","file":"/home/runner/work/Pongo/Pongo/src/packages/dumbo/dist/chunk-L2YZQAG3.cjs","sourcesContent":[null,"import sqlite3 from 'sqlite3';\nimport {\n SQL,\n type Connection,\n type DatabaseTransactionOptions,\n type QueryResult,\n type QueryResultRow,\n type SQLQueryOptions,\n} from '../../../../core';\nimport type {\n SQLiteClient,\n SQLiteClientOrPoolClient,\n SQLiteConnectionOptions,\n SQLiteDriverType,\n SQLiteFileNameOrConnectionString,\n SQLiteTransaction,\n} from '../../core';\nimport {\n InMemorySQLiteDatabase,\n sqliteConnection,\n type SQLiteClientOptions,\n type SQLiteCommandOptions,\n type SQLiteParameters,\n} from '../../core/connections';\nimport { sqliteFormatter } from '../../core/sql/formatter';\n\nexport type SQLite3DriverType = SQLiteDriverType<'sqlite3'>;\nexport const SQLite3DriverType: SQLite3DriverType = 'SQLite:sqlite3';\n\nexport type ConnectionCheckResult =\n | { successful: true }\n | {\n successful: false;\n code: string | undefined;\n errorType: 'ConnectionRefused' | 'Authentication' | 'Unknown';\n error: unknown;\n };\n\nexport type SQLite3ClientOptions = SQLiteClientOptions &\n SQLiteFileNameOrConnectionString;\n\nexport type SQLite3Client = SQLiteClientOrPoolClient;\n\nexport type SQLite3ConnectionOptions = SQLiteConnectionOptions &\n ((SQLite3ClientOptions & { client?: never }) | { client: SQLite3Client });\n\nexport type SQLite3Connection<\n ClientType extends SQLiteClientOrPoolClient = SQLiteClientOrPoolClient,\n> = Connection<\n SQLite3Connection,\n SQLite3DriverType,\n ClientType,\n SQLiteTransaction<SQLite3Connection>,\n DatabaseTransactionOptions\n>;\n\nexport const sqlite3Client = (options: SQLite3ClientOptions): SQLiteClient => {\n let db: sqlite3.Database;\n\n let isClosed = false;\n\n const connect: () => Promise<void> = () =>\n db\n ? Promise.resolve() // If db is already initialized, resolve immediately\n : new Promise((resolve, reject) => {\n try {\n db = new sqlite3.Database(\n options.fileName ??\n options.connectionString ??\n InMemorySQLiteDatabase,\n sqlite3.OPEN_URI | sqlite3.OPEN_READWRITE | sqlite3.OPEN_CREATE,\n (err) => {\n if (err) {\n reject(err);\n return;\n }\n },\n );\n db.run('PRAGMA journal_mode = WAL;', (err) => {\n if (err) {\n reject(err);\n return;\n }\n\n resolve();\n });\n } catch (error) {\n reject(error as Error);\n }\n });\n\n const executeQuery = <T>(\n sql: string,\n params?: SQLiteParameters[],\n ): Promise<T[]> =>\n new Promise((resolve, reject) => {\n try {\n db.all(sql, params ?? [], (err: Error | null, result: T[]) => {\n if (err) {\n reject(err);\n return;\n }\n\n resolve(result);\n });\n } catch (error) {\n reject(error as Error);\n }\n });\n\n const executeCommand = <Result extends QueryResultRow = QueryResultRow>(\n sql: string,\n params?: SQLiteParameters[],\n options?: SQLiteCommandOptions,\n ): Promise<QueryResult<Result>> =>\n new Promise((resolve, reject) => {\n try {\n if (options?.ignoreChangesCount === true) {\n db.run(\n sql,\n params ?? [],\n function (err: Error | null, rows: Result[]) {\n if (err) {\n reject(err);\n return;\n }\n resolve({\n rowCount: 0,\n rows: rows ?? [],\n });\n },\n );\n }\n // OD: 2026-01-21\n // This is needed as SQLite does not return changes count properly\n // We need to query it separately with SELECT changes()\n // This may be fixed eventually in sqlite3 library as Node.js team did here:\n // https://github.com/nodejs/node/issues/57344\n // But for now, we do it manually, as a workaround\n // We also serialize it to avoid race conditions\n db.serialize(() => {\n db.all(sql, params ?? [], (err: Error | null, rows: Result[]) => {\n if (err) {\n reject(err);\n return;\n }\n db.get(\n 'SELECT changes() as changes',\n (changesErr: Error | null, row: { changes: number } | null) => {\n if (changesErr) {\n reject(changesErr);\n return;\n }\n resolve({\n rowCount: row?.changes ?? 0,\n rows: rows ?? [],\n });\n },\n );\n });\n });\n } catch (error) {\n reject(error as Error);\n }\n });\n\n return {\n connect,\n close: (): Promise<void> => {\n if (isClosed) {\n return Promise.resolve();\n }\n isClosed = true;\n if (db)\n return new Promise((resolve, reject) => {\n db.close((err: Error | null) => {\n if (err) {\n reject(err);\n return;\n }\n\n resolve();\n });\n });\n return Promise.resolve();\n },\n query: async <Result extends QueryResultRow = QueryResultRow>(\n sql: SQL,\n _options?: SQLQueryOptions,\n ): Promise<QueryResult<Result>> => {\n const { query, params } = sqliteFormatter.format(sql);\n const result = await executeQuery<Result>(\n query,\n params as SQLiteParameters[],\n );\n return { rowCount: result.length, rows: result };\n },\n batchQuery: async <Result extends QueryResultRow = QueryResultRow>(\n sqls: SQL[],\n _options?: SQLQueryOptions,\n ): Promise<QueryResult<Result>[]> => {\n const results: QueryResult<Result>[] = [];\n for (const sql of sqls) {\n const { query, params } = sqliteFormatter.format(sql);\n const result = await executeQuery<Result>(\n query,\n params as SQLiteParameters[],\n );\n results.push({ rowCount: result.length, rows: result });\n }\n return results;\n },\n command: async <Result extends QueryResultRow = QueryResultRow>(\n sql: SQL,\n options?: SQLiteCommandOptions,\n ): Promise<QueryResult<Result>> => {\n const { query, params } = sqliteFormatter.format(sql);\n\n return executeCommand<Result>(\n query,\n params as SQLiteParameters[],\n options,\n );\n },\n batchCommand: async <Result extends QueryResultRow = QueryResultRow>(\n sqls: SQL[],\n options?: SQLiteCommandOptions,\n ): Promise<QueryResult<Result>[]> => {\n const results: QueryResult<Result>[] = [];\n\n for (const sql of sqls) {\n const { query, params } = sqliteFormatter.format(sql);\n const result = await executeCommand<Result>(\n query,\n params as SQLiteParameters[],\n options,\n );\n results.push(result);\n }\n return results;\n },\n };\n};\n\nexport const checkConnection = async (\n fileName: string,\n): Promise<ConnectionCheckResult> => {\n const client = sqlite3Client({\n fileName,\n });\n\n try {\n await client.query(SQL`SELECT 1`);\n return { successful: true };\n } catch (error) {\n const code =\n error instanceof Error &&\n 'code' in error &&\n typeof error.code === 'string'\n ? error.code\n : undefined;\n\n return {\n successful: false,\n errorType:\n code === 'SQLITE_CANTOPEN'\n ? 'ConnectionRefused'\n : code === 'SQLITE_AUTH'\n ? 'Authentication'\n : 'Unknown',\n code,\n error,\n };\n } finally {\n await client.close();\n }\n};\n\nexport const sqlite3Connection = (options: SQLite3ConnectionOptions) =>\n sqliteConnection<SQLite3Connection, SQLite3ConnectionOptions>({\n type: 'Client',\n driverType: SQLite3DriverType,\n sqliteClientFactory: (connectionOptions) => {\n if ('client' in connectionOptions && connectionOptions.client) {\n return connectionOptions.client;\n }\n return sqlite3Client(connectionOptions);\n },\n connectionOptions: options,\n });\n","export * from './connections';\nimport {\n canHandleDriverWithConnectionString,\n dumboDatabaseDriverRegistry,\n type DumboConnectionOptions,\n type DumboDatabaseDriver,\n} from '../../../core';\nimport {\n DefaultSQLiteMigratorOptions,\n InMemorySQLiteDatabase,\n SQLiteConnectionString,\n sqliteFormatter,\n sqlitePool,\n toSqlitePoolOptions,\n type SQLitePoolOptions,\n} from '../core';\nimport {\n sqlite3Client,\n sqlite3Connection,\n SQLite3DriverType,\n type SQLite3Connection,\n type SQLite3ConnectionOptions,\n} from './connections';\n\nexport type SQLite3DumboOptions = Omit<\n SQLitePoolOptions<SQLite3Connection, SQLite3ConnectionOptions>,\n 'driverType'\n> &\n SQLite3ConnectionOptions;\n\nexport const sqlite3Pool = (options: SQLite3DumboOptions) =>\n sqlitePool(\n toSqlitePoolOptions({\n ...options,\n driverType: SQLite3DriverType,\n ...('connection' in options\n ? {}\n : {\n connectionOptions: options as SQLite3ConnectionOptions,\n sqliteConnectionFactory: (opts: SQLite3ConnectionOptions) =>\n sqlite3Connection(opts),\n }),\n }),\n );\n\nconst tryParseConnectionString = (connectionString: string) => {\n try {\n return SQLiteConnectionString(connectionString);\n } catch {\n return null;\n }\n};\n\nexport const sqlite3DatabaseDriver = {\n driverType: SQLite3DriverType,\n createPool: (options) => sqlite3Pool(options as SQLite3DumboOptions),\n sqlFormatter: sqliteFormatter,\n defaultMigratorOptions: DefaultSQLiteMigratorOptions,\n getDatabaseNameOrDefault: () => InMemorySQLiteDatabase,\n canHandle: canHandleDriverWithConnectionString(\n SQLite3DriverType,\n tryParseConnectionString,\n ),\n} satisfies DumboDatabaseDriver<SQLite3Connection, SQLite3DumboOptions>;\n\nexport const useSqlite3DatabaseDriver = () => {\n dumboDatabaseDriverRegistry.register(\n SQLite3DriverType,\n sqlite3DatabaseDriver,\n );\n};\n\nexport type SQLite3DumboConnectionOptions = DumboConnectionOptions<\n typeof sqlite3DatabaseDriver\n> & { connectionString: string | SQLiteConnectionString };\n\nuseSqlite3DatabaseDriver();\n\nexport {\n sqlite3Pool as connectionPool,\n sqlite3DatabaseDriver as databaseDriver,\n sqlite3Client as sqliteClient,\n};\n\nexport * from './connections';\nexport * from './formatter';\nexport * from './transactions';\n"]}
|