bundle browser packages too in order to easily consume them without bundlers

This commit is contained in:
Nikita Sivukhin
2025-09-12 15:27:40 +04:00
parent 1c38344f4f
commit 8c48a1dc47
14 changed files with 3531 additions and 1343 deletions

View File

@@ -0,0 +1,22 @@
import { DatabaseOpts, SqliteError, } from "@tursodatabase/database-common"
import { connect as promiseConnect, Database } from "./promise.js";
import { connect as nativeConnect, initThreadPool, MainWorker } from "./index-bundle.js";
/**
* Creates a new database connection asynchronously.
*
* @param {string} path - Path to the database file.
* @param {Object} opts - Options for database behavior.
* @returns {Promise<Database>} - A promise that resolves to a Database instance.
*/
async function connect(path: string, opts: DatabaseOpts = {}): Promise<Database> {
return await promiseConnect(path, opts, nativeConnect, async () => {
await initThreadPool();
if (MainWorker == null) {
throw new Error("panic: MainWorker is not initialized");
}
return MainWorker;
});
}
export { connect, Database, SqliteError }