diff --git a/.github/workflows/build-wasm.yml b/.github/workflows/build-wasm.yml
index ed635d8..c66bdb9 100644
--- a/.github/workflows/build-wasm.yml
+++ b/.github/workflows/build-wasm.yml
@@ -101,19 +101,15 @@ jobs:
fi
- name: Create Pull Request
- if:
- steps.check-branch.outputs.skip != 'true' &&
- steps.git-check.outputs.changes == 'true'
+ if: steps.check-branch.outputs.skip != 'true' && steps.git-check.outputs.changes == 'true'
uses: peter-evans/create-pull-request@v6
with:
token: ${{ secrets.GITHUB_TOKEN }}
commit-message:
- 'chore: update SQLite Wasm binaries from ${{
- steps.resolve-ref.outputs.sqlite_ref }} (${{
- steps.resolve-ref.outputs.sqlite_sha }})'
+ 'chore: update SQLite Wasm binaries from ${{ steps.resolve-ref.outputs.sqlite_ref }}
+ (${{ steps.resolve-ref.outputs.sqlite_sha }})'
title:
- 'chore: update SQLite Wasm binaries from ${{
- steps.resolve-ref.outputs.sqlite_ref }}'
+ 'chore: update SQLite Wasm binaries from ${{ steps.resolve-ref.outputs.sqlite_ref }}'
body: |
This PR updates the SQLite Wasm binaries in `src/bin` by building them from SQLite reference `${{ steps.resolve-ref.outputs.sqlite_ref }}` (commit `${{ steps.resolve-ref.outputs.sqlite_sha }}`).
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 14d8286..31b1e26 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -47,7 +47,7 @@ jobs:
uses: ./.github/actions/node-setup
- name: Run format check
- run: npx prettier . --check
+ run: npx oxfmt . --check
test-browser:
name: Run browser tests
@@ -74,8 +74,7 @@ jobs:
with:
path: ~/.cache/ms-playwright
key:
- ${{ runner.os }}-playwright-${{
- steps.playwright-version.outputs.PLAYWRIGHT_VERSION }}
+ ${{ runner.os }}-playwright-${{ steps.playwright-version.outputs.PLAYWRIGHT_VERSION }}
restore-keys: |
${{ runner.os }}-playwright-
diff --git a/.gitignore b/.gitignore
index e18f1e0..b26da1b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -38,6 +38,6 @@ testem.log
.DS_Store
Thumbs.db
-node_modules/*
+node_modules
dist/
-bundle
\ No newline at end of file
+bundle
diff --git a/.oxfmtrc.json b/.oxfmtrc.json
new file mode 100644
index 0000000..49c1123
--- /dev/null
+++ b/.oxfmtrc.json
@@ -0,0 +1,11 @@
+{
+ "$schema": "./node_modules/oxfmt/configuration_schema.json",
+ "insertPragma": false,
+ "printWidth": 100,
+ "proseWrap": "always",
+ "requirePragma": false,
+ "singleQuote": true,
+ "tabWidth": 2,
+ "trailingComma": "all",
+ "ignorePatterns": ["/src/bin", "/dist", "/node_modules", "package.json"]
+}
diff --git a/.prettierignore b/.prettierignore
deleted file mode 100644
index 7c67fbf..0000000
--- a/.prettierignore
+++ /dev/null
@@ -1,3 +0,0 @@
-/src/bin
-/dist
-/node_modules
diff --git a/.prettierrc.json b/.prettierrc.json
deleted file mode 100644
index cdb0130..0000000
--- a/.prettierrc.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
- "$schema": "https://www.schemastore.org/prettierrc.json",
- "arrowParens": "always",
- "bracketSpacing": true,
- "embeddedLanguageFormatting": "auto",
- "htmlWhitespaceSensitivity": "css",
- "insertPragma": false,
- "bracketSameLine": false,
- "jsxSingleQuote": false,
- "printWidth": 80,
- "proseWrap": "always",
- "quoteProps": "as-needed",
- "requirePragma": false,
- "semi": true,
- "singleQuote": true,
- "tabWidth": 2,
- "trailingComma": "all",
- "useTabs": false,
- "vueIndentScriptAndStyle": false,
- "plugins": ["prettier-plugin-jsdoc"]
-}
diff --git a/README.md b/README.md
index b5358dd..74e703e 100644
--- a/README.md
+++ b/README.md
@@ -12,20 +12,17 @@ npm install @sqlite.org/sqlite-wasm
> [!Warning]
>
-> This project wraps the code of
-> [SQLite Wasm](https://sqlite.org/wasm/doc/trunk/index.md) with _no_ changes,
-> apart from added TypeScript types. Please do _not_ file issues or feature
-> requests regarding the underlying SQLite Wasm code here. Instead, please
-> follow the
-> [SQLite bug filing instructions](https://www.sqlite.org/src/wiki?name=Bug+Reports).
-> Filing TypeScript type related issues and feature requests is fine.
+> This project wraps the code of [SQLite Wasm](https://sqlite.org/wasm/doc/trunk/index.md) with _no_
+> changes, apart from added TypeScript types. Please do _not_ file issues or feature requests
+> regarding the underlying SQLite Wasm code here. Instead, please follow the
+> [SQLite bug filing instructions](https://www.sqlite.org/src/wiki?name=Bug+Reports). Filing
+> TypeScript type related issues and feature requests is fine.
## Node.js support
> [!Warning]
>
-> Node.js is currently only supported for in-memory databases without
-> persistence.
+> Node.js is currently only supported for in-memory databases without persistence.
## Usage
@@ -34,8 +31,7 @@ There are two ways to use SQLite Wasm:
- [in a worker](#in-a-worker-with-opfs-if-available)
- [in the main thread](#in-the-main-thread-without-opfs)
-Only the worker versions allow you to use the origin private file system (OPFS)
-storage back-end.
+Only the worker versions allow you to use the origin private file system (OPFS) storage back-end.
### In a worker (with OPFS if available):
@@ -116,8 +112,8 @@ The `db` object above implements the
## Usage with vite
-If you are using [vite](https://vitejs.dev/), you need to add the following
-config option in `vite.config.js`:
+If you are using [vite](https://vitejs.dev/), you need to add the following config option in
+`vite.config.js`:
```js
import { defineConfig } from 'vite';
@@ -135,38 +131,33 @@ export default defineConfig({
});
```
-Check out a
-[sample project](https://stackblitz.com/edit/vitejs-vite-ttrbwh?file=main.js)
-that shows this in action.
+Check out a [sample project](https://stackblitz.com/edit/vitejs-vite-ttrbwh?file=main.js) that shows
+this in action.
## Demo
-See the [demo](https://github.com/sqlite/sqlite-wasm/tree/main/demo) folder for
-examples of how to use this in the main thread and in a worker. (Note that the
-worker variant requires special HTTP headers, so it can't be hosted on GitHub
-Pages.) An example that shows how to use this with vite is available on
-[StackBlitz](https://stackblitz.com/edit/vitejs-vite-ttrbwh?file=main.js).
+See the [demo](https://github.com/sqlite/sqlite-wasm/tree/main/demo) folder for examples of how to
+use this in the main thread and in a worker. (Note that the worker variant requires special HTTP
+headers, so it can't be hosted on GitHub Pages.) An example that shows how to use this with vite is
+available on [StackBlitz](https://stackblitz.com/edit/vitejs-vite-ttrbwh?file=main.js).
## Projects using this package
-See the list of
-[npm dependents](https://www.npmjs.com/browse/depended/@sqlite.org/sqlite-wasm)
-for this package.
+See the list of [npm dependents](https://www.npmjs.com/browse/depended/@sqlite.org/sqlite-wasm) for
+this package.
## Deploying a new version
(These steps can only be executed by maintainers.)
-1. Manually trigger the
- [GitHub Actions workflow](../../actions/workflows/build-wasm.yml). By
- default, it uses the latest SQLite tag. This pull request will contain the
- latest `sqlite3.wasm` and related bindings.
+1. Manually trigger the [GitHub Actions workflow](../../actions/workflows/build-wasm.yml). By
+ default, it uses the latest SQLite tag. This pull request will contain the latest `sqlite3.wasm`
+ and related bindings.
-2. Once the above pull request is validated and merged, update the version
- number in `package.json`, reflecting the current
- [SQLite version number](https://sqlite.org/download.html) and add a build
- identifier suffix like `-build1`. The complete version number should read
- something like `3.41.2-build1`.
+2. Once the above pull request is validated and merged, update the version number in `package.json`,
+ reflecting the current [SQLite version number](https://sqlite.org/download.html) and add a build
+ identifier suffix like `-build1`. The complete version number should read something like
+ `3.41.2-build1`.
## Building the SQLite Wasm locally
@@ -210,9 +201,9 @@ for this package.
## Running tests
-The test suite consists of Node.js tests and browser-based tests (using Vitest
-Browser Mode). Tests aim to sanity-check the exported scripts. We test for
-correct exports and **very** basic functionality.
+The test suite consists of Node.js tests and browser-based tests (using Vitest Browser Mode). Tests
+aim to sanity-check the exported scripts. We test for correct exports and **very** basic
+functionality.
1. Install dependencies:
@@ -234,11 +225,10 @@ correct exports and **very** basic functionality.
## Deprecations
-The Worker1 and Promiser1 APIs are, as of 2026-04-15, deprecated. They _will not
-be removed_, but they also will not be extended further. It is their author's
-considered opinion that they are too fragile, too imperformant, and too limited
-for any non-toy software, and their use is _actively discouraged_. The "correct"
-way to use this library is documented in [Usage](#usage) section above.
+The Worker1 and Promiser1 APIs are, as of 2026-04-15, deprecated. They _will not be removed_, but
+they also will not be extended further. It is their author's considered opinion that they are too
+fragile, too imperformant, and too limited for any non-toy software, and their use is _actively
+discouraged_. The "correct" way to use this library is documented in [Usage](#usage) section above.
## License
@@ -246,6 +236,6 @@ Apache 2.0.
## Acknowledgements
-This project is based on [SQLite Wasm](https://sqlite.org/wasm), which it
-conveniently wraps as an ES Module and publishes to npm as
+This project is based on [SQLite Wasm](https://sqlite.org/wasm), which it conveniently wraps as an
+ES Module and publishes to npm as
[`@sqlite.org/sqlite-wasm`](https://www.npmjs.com/package/@sqlite.org/sqlite-wasm).
diff --git a/demo/index.html b/demo/index.html
deleted file mode 100644
index 52c4242..0000000
--- a/demo/index.html
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
-
- SQLite Wasm Demo
-
-
-
-
-
- SQLite Wasm Demo
- Wrapped Worker
-
- Worker
-
- Main thread
-
-
-
diff --git a/demo/main-thread.js b/demo/main-thread.js
deleted file mode 100644
index c717c73..0000000
--- a/demo/main-thread.js
+++ /dev/null
@@ -1,53 +0,0 @@
-import sqlite3InitModule from '../src/index.js';
-
-const container = document.querySelector('.main-thread');
-
-const logHtml = function (cssClass, ...args) {
- const div = document.createElement('div');
- if (cssClass) div.classList.add(cssClass);
- div.append(document.createTextNode(args.join(' ')));
- container.append(div);
-};
-
-const log = (...args) => logHtml('', ...args);
-const error = (...args) => logHtml('error', ...args);
-
-const start = function (sqlite3) {
- log('Running SQLite3 version', sqlite3.version.libVersion);
- const db = new sqlite3.oo1.DB('/mydb.sqlite3', 'ct');
- log('Created transient database', db.filename);
-
- try {
- log('Creating a table...');
- db.exec('CREATE TABLE IF NOT EXISTS t(a,b)');
- log('Insert some data using exec()...');
- for (let i = 20; i <= 25; ++i) {
- db.exec({
- sql: 'INSERT INTO t(a,b) VALUES (?,?)',
- bind: [i, i * 2],
- });
- }
- log('Query data with exec()...');
- db.exec({
- sql: 'SELECT a FROM t ORDER BY a LIMIT 3',
- callback: (row) => {
- log(row);
- },
- });
- } finally {
- db.close();
- }
-};
-
-log('Loading and initializing SQLite3 module...');
-sqlite3InitModule({
- print: log,
- printErr: error,
-}).then((sqlite3) => {
- log('Done initializing. Running demo...');
- try {
- start(sqlite3);
- } catch (err) {
- error(err.name, err.message);
- }
-});
diff --git a/demo/node.mjs b/demo/node.mjs
deleted file mode 100644
index 4e30b5f..0000000
--- a/demo/node.mjs
+++ /dev/null
@@ -1,45 +0,0 @@
-import { readFileSync } from 'node:fs';
-import sqlite3InitModule from '../src/node.js';
-
-const log = (...args) => console.log(...args);
-const error = (...args) => console.error(...args);
-
-const start = function (sqlite3) {
- log('Running SQLite3 version', sqlite3.version.libVersion);
-
- const db = new sqlite3.oo1.DB(':memory:');
-
- try {
- log('Creating a table...');
- db.exec('CREATE TABLE IF NOT EXISTS t(a,b)');
- log('Insert some data using exec()...');
- for (let i = 20; i <= 25; ++i) {
- db.exec({
- sql: 'INSERT INTO t(a,b) VALUES (?,?)',
- bind: [i, i * 2],
- });
- }
- log('Query data with exec()...');
- db.exec({
- sql: 'SELECT a FROM t ORDER BY a LIMIT 3',
- callback: (row) => {
- log(row);
- },
- });
- } finally {
- db.close();
- }
-};
-
-log('Loading and initializing SQLite3 module...');
-sqlite3InitModule({
- print: log,
- printErr: error,
-}).then((sqlite3) => {
- log('Done initializing. Running demo...');
- try {
- start(sqlite3);
- } catch (err) {
- error(err.name, err.message);
- }
-});
diff --git a/demo/script.js b/demo/script.js
deleted file mode 100644
index f6d294f..0000000
--- a/demo/script.js
+++ /dev/null
@@ -1,24 +0,0 @@
-const container = document.querySelector('.worker');
-
-const logHtml = (cssClass, ...args) => {
- const div = document.createElement('div');
- if (cssClass) div.classList.add(cssClass);
- div.append(document.createTextNode(args.join(' ')));
- container.append(div);
-};
-
-(async () => {
- const worker = new Worker('/demo/worker.js', {
- type: 'module',
- });
-
- worker.addEventListener('message', ({ data }) => {
- switch (data.type) {
- case 'log':
- logHtml(data.payload.cssClass, ...data.payload.args);
- break;
- default:
- logHtml('error', 'Unhandled message:', data.type);
- }
- });
-})();
diff --git a/demo/worker.js b/demo/worker.js
deleted file mode 100644
index 2e0a37d..0000000
--- a/demo/worker.js
+++ /dev/null
@@ -1,56 +0,0 @@
-import sqlite3InitModule from '../src/bin/sqlite3.mjs';
-
-const logHtml = function (cssClass, ...args) {
- postMessage({
- type: 'log',
- payload: { cssClass, args },
- });
-};
-
-const log = (...args) => logHtml('', ...args);
-const error = (...args) => logHtml('error', ...args);
-
-const start = function (sqlite3) {
- log('Running SQLite3 version', sqlite3.version.libVersion);
- let db;
- if ('opfs' in sqlite3) {
- db = new sqlite3.oo1.OpfsDb('/mydb.sqlite3');
- log('OPFS is available, created persisted database at', db.filename);
- } else {
- db = new sqlite3.oo1.DB('/mydb.sqlite3', 'ct');
- log('OPFS is not available, created transient database', db.filename);
- }
- try {
- log('Creating a table...');
- db.exec('CREATE TABLE IF NOT EXISTS t(a,b)');
- log('Insert some data using exec()...');
- for (let i = 20; i <= 25; ++i) {
- db.exec({
- sql: 'INSERT INTO t(a,b) VALUES (?,?)',
- bind: [i, i * 2],
- });
- }
- log('Query data with exec()...');
- db.exec({
- sql: 'SELECT a FROM t ORDER BY a LIMIT 3',
- callback: (row) => {
- log(row);
- },
- });
- } finally {
- db.close();
- }
-};
-
-log('Loading and initializing SQLite3 module...');
-sqlite3InitModule({
- print: log,
- printErr: error,
-}).then((sqlite3) => {
- log('Done initializing. Running demo...');
- try {
- start(sqlite3);
- } catch (err) {
- error(err.name, err.message);
- }
-});
diff --git a/demo/wrapped-worker.js b/demo/wrapped-worker.js
deleted file mode 100644
index 95ff64b..0000000
--- a/demo/wrapped-worker.js
+++ /dev/null
@@ -1,72 +0,0 @@
-import { sqlite3Worker1Promiser } from '../src/index.js';
-
-(async () => {
- const container = document.querySelector('.worker-promiser');
-
- const logHtml = function (cssClass, ...args) {
- const div = document.createElement('div');
- if (cssClass) div.classList.add(cssClass);
- div.append(document.createTextNode(args.join(' ')));
- container.append(div);
- };
-
- try {
- logHtml('', 'Loading and initializing SQLite3 module...');
-
- const promiser = await new Promise((resolve) => {
- const _promiser = sqlite3Worker1Promiser({
- onready: () => {
- resolve(_promiser);
- },
- });
- });
-
- logHtml('', 'Done initializing. Running demo...');
-
- let response;
-
- response = await promiser('config-get', {});
- logHtml('', 'Running SQLite3 version', response.result.version.libVersion);
-
- response = await promiser('open', {
- filename: 'file:worker-promiser.sqlite3?vfs=opfs',
- });
- const { dbId } = response;
- logHtml(
- '',
- 'OPFS is available, created persisted database at',
- response.result.filename.replace(/^file:(.*?)\?vfs=opfs/, '$1'),
- );
-
- await promiser('exec', { dbId, sql: 'CREATE TABLE IF NOT EXISTS t(a,b)' });
- logHtml('', 'Creating a table...');
-
- logHtml('', 'Insert some data using exec()...');
- for (let i = 20; i <= 25; ++i) {
- await promiser('exec', {
- dbId,
- sql: 'INSERT INTO t(a,b) VALUES (?,?)',
- bind: [i, i * 2],
- });
- }
-
- logHtml('', 'Query data with exec()');
- await promiser('exec', {
- dbId,
- sql: 'SELECT a FROM t ORDER BY a LIMIT 3',
- callback: (result) => {
- if (!result.row) {
- return;
- }
- logHtml('', result.row);
- },
- });
-
- await promiser('close', { dbId });
- } catch (err) {
- if (!(err instanceof Error)) {
- err = new Error(err.result.message);
- }
- console.error(err.name, err.message);
- }
-})();
diff --git a/demos/in-worker-demo/index.html b/demos/in-worker-demo/index.html
new file mode 100644
index 0000000..6b74d5e
--- /dev/null
+++ b/demos/in-worker-demo/index.html
@@ -0,0 +1,12 @@
+
+
+
+
+
+ In Worker Demo
+
+
+
+
+
+
diff --git a/demos/in-worker-demo/package.json b/demos/in-worker-demo/package.json
new file mode 100644
index 0000000..e0b4861
--- /dev/null
+++ b/demos/in-worker-demo/package.json
@@ -0,0 +1,12 @@
+{
+ "name": "@sqlite.org/in-worker-demo",
+ "type": "module",
+ "scripts": {
+ "dev": "vite",
+ "build": "vite build",
+ "preview": "vite preview"
+ },
+ "devDependencies": {
+ "vite": "^8.0.8"
+ }
+}
diff --git a/demos/in-worker-demo/src/main.ts b/demos/in-worker-demo/src/main.ts
new file mode 100644
index 0000000..fc4955d
--- /dev/null
+++ b/demos/in-worker-demo/src/main.ts
@@ -0,0 +1,21 @@
+const worker = new Worker(new URL('./workers/worker.ts', import.meta.url), {
+ type: 'module',
+});
+
+worker.onmessage = (e) => {
+ if (e.data.type === 'success') {
+ const rows = e.data.rows;
+ const app = document.getElementById('app');
+ if (app) {
+ const ul = document.createElement('ul');
+ rows.forEach((row: any) => {
+ const li = document.createElement('li');
+ li.textContent = `${row.id}: ${row.name}`;
+ ul.appendChild(li);
+ });
+ app.appendChild(ul);
+ }
+ }
+};
+
+worker.postMessage({ type: 'start' });
diff --git a/demos/in-worker-demo/src/workers/worker.ts b/demos/in-worker-demo/src/workers/worker.ts
new file mode 100644
index 0000000..ef45504
--- /dev/null
+++ b/demos/in-worker-demo/src/workers/worker.ts
@@ -0,0 +1,24 @@
+import sqlite3InitModule from '../../../../src/index.js';
+
+self.onmessage = async (e) => {
+ if (e.data.type === 'start') {
+ try {
+ const sqlite3 = await sqlite3InitModule();
+ const db = new sqlite3.oo1.DB(':memory:');
+
+ db.exec('CREATE TABLE test (id INTEGER PRIMARY KEY, name TEXT)');
+ db.exec({
+ sql: 'INSERT INTO test (name) VALUES (?), (?)',
+ bind: ['InWorker 1', 'InWorker 2'],
+ });
+
+ const rows = db.selectObjects('SELECT * FROM test');
+
+ db.close();
+
+ self.postMessage({ type: 'success', rows });
+ } catch (err: any) {
+ self.postMessage({ type: 'error', message: err.message });
+ }
+ }
+};
diff --git a/demos/in-worker-demo/tsconfig.json b/demos/in-worker-demo/tsconfig.json
new file mode 100644
index 0000000..596e2cf
--- /dev/null
+++ b/demos/in-worker-demo/tsconfig.json
@@ -0,0 +1,4 @@
+{
+ "extends": "../../tsconfig.json",
+ "include": ["src"]
+}
diff --git a/demos/in-worker-demo/vite.config.ts b/demos/in-worker-demo/vite.config.ts
new file mode 100644
index 0000000..8a8bcb6
--- /dev/null
+++ b/demos/in-worker-demo/vite.config.ts
@@ -0,0 +1,9 @@
+import { defineConfig, type UserConfig } from 'vite';
+
+const viteConfig: UserConfig = defineConfig({
+ server: {
+ port: 5173,
+ },
+});
+
+export default viteConfig;
diff --git a/demos/main-thread-demo/index.html b/demos/main-thread-demo/index.html
new file mode 100644
index 0000000..362a7d2
--- /dev/null
+++ b/demos/main-thread-demo/index.html
@@ -0,0 +1,12 @@
+
+
+
+
+
+ Main Thread Demo
+
+
+
+
+
+
diff --git a/demos/main-thread-demo/package.json b/demos/main-thread-demo/package.json
new file mode 100644
index 0000000..9517334
--- /dev/null
+++ b/demos/main-thread-demo/package.json
@@ -0,0 +1,12 @@
+{
+ "name": "@sqlite.org/main-thread-demo",
+ "type": "module",
+ "scripts": {
+ "dev": "vite",
+ "build": "vite build",
+ "preview": "vite preview"
+ },
+ "devDependencies": {
+ "vite": "^8.0.8"
+ }
+}
diff --git a/demos/main-thread-demo/src/main.ts b/demos/main-thread-demo/src/main.ts
new file mode 100644
index 0000000..b55fb5e
--- /dev/null
+++ b/demos/main-thread-demo/src/main.ts
@@ -0,0 +1,35 @@
+import sqlite3InitModule from '../../../src/index.js';
+
+const runDemo = async () => {
+ const sqlite3 = await sqlite3InitModule();
+
+ // 1. Create a database
+ const db = new sqlite3.oo1.DB(':memory:');
+
+ // 2. Create a table
+ db.exec('CREATE TABLE test (id INTEGER PRIMARY KEY, name TEXT)');
+
+ // 3. Insert data
+ db.exec({
+ sql: 'INSERT INTO test (name) VALUES (?), (?)',
+ bind: ['Alice', 'Bob'],
+ });
+
+ // 4. Query data
+ const rows = db.selectObjects('SELECT * FROM test ORDER BY id');
+
+ const app = document.getElementById('app');
+ if (app) {
+ const ul = document.createElement('ul');
+ rows.forEach((row: any) => {
+ const li = document.createElement('li');
+ li.textContent = `${row.id}: ${row.name}`;
+ ul.appendChild(li);
+ });
+ app.appendChild(ul);
+ }
+
+ db.close();
+};
+
+runDemo().catch(console.error);
diff --git a/demos/main-thread-demo/tsconfig.json b/demos/main-thread-demo/tsconfig.json
new file mode 100644
index 0000000..596e2cf
--- /dev/null
+++ b/demos/main-thread-demo/tsconfig.json
@@ -0,0 +1,4 @@
+{
+ "extends": "../../tsconfig.json",
+ "include": ["src"]
+}
diff --git a/demos/main-thread-demo/vite.config.ts b/demos/main-thread-demo/vite.config.ts
new file mode 100644
index 0000000..bcd854c
--- /dev/null
+++ b/demos/main-thread-demo/vite.config.ts
@@ -0,0 +1,9 @@
+import { defineConfig, type UserConfig } from 'vite';
+
+const viteConfig: UserConfig = defineConfig({
+ server: {
+ port: 5174,
+ },
+});
+
+export default viteConfig;
diff --git a/demos/sahpool-demo/index.html b/demos/sahpool-demo/index.html
new file mode 100644
index 0000000..4f62dca
--- /dev/null
+++ b/demos/sahpool-demo/index.html
@@ -0,0 +1,12 @@
+
+
+
+
+
+ SAHPOOL Demo
+
+
+
+
+
+
diff --git a/demos/sahpool-demo/package.json b/demos/sahpool-demo/package.json
new file mode 100644
index 0000000..6d143b6
--- /dev/null
+++ b/demos/sahpool-demo/package.json
@@ -0,0 +1,12 @@
+{
+ "name": "@sqlite.org/sahpool-demo",
+ "type": "module",
+ "scripts": {
+ "dev": "vite",
+ "build": "vite build",
+ "preview": "vite preview"
+ },
+ "devDependencies": {
+ "vite": "^8.0.8"
+ }
+}
diff --git a/demos/sahpool-demo/src/main.ts b/demos/sahpool-demo/src/main.ts
new file mode 100644
index 0000000..fc4955d
--- /dev/null
+++ b/demos/sahpool-demo/src/main.ts
@@ -0,0 +1,21 @@
+const worker = new Worker(new URL('./workers/worker.ts', import.meta.url), {
+ type: 'module',
+});
+
+worker.onmessage = (e) => {
+ if (e.data.type === 'success') {
+ const rows = e.data.rows;
+ const app = document.getElementById('app');
+ if (app) {
+ const ul = document.createElement('ul');
+ rows.forEach((row: any) => {
+ const li = document.createElement('li');
+ li.textContent = `${row.id}: ${row.name}`;
+ ul.appendChild(li);
+ });
+ app.appendChild(ul);
+ }
+ }
+};
+
+worker.postMessage({ type: 'start' });
diff --git a/demos/sahpool-demo/src/workers/worker.ts b/demos/sahpool-demo/src/workers/worker.ts
new file mode 100644
index 0000000..3f0579b
--- /dev/null
+++ b/demos/sahpool-demo/src/workers/worker.ts
@@ -0,0 +1,29 @@
+import sqlite3InitModule from '../../../../src/index.js';
+
+self.onmessage = async (e) => {
+ if (e.data.type === 'start') {
+ try {
+ const sqlite3 = await sqlite3InitModule();
+ const opfsSahPool = await sqlite3.installOpfsSAHPoolVfs({
+ directory: '/sqlite-wasm-sahpool-demo',
+ });
+
+ const db = new opfsSahPool.OpfsSAHPoolDb('/test-sahpool-worker.sqlite3');
+
+ // 1. Basic CRUD
+ db.exec('CREATE TABLE test (id INTEGER PRIMARY KEY, name TEXT)');
+ db.exec({
+ sql: 'INSERT INTO test (name) VALUES (?), (?)',
+ bind: ['Alice', 'Bob'],
+ });
+
+ const rows = db.selectObjects('SELECT * FROM test ORDER BY id');
+
+ db.close();
+
+ self.postMessage({ type: 'success', rows });
+ } catch (err: any) {
+ self.postMessage({ type: 'error', message: err.message });
+ }
+ }
+};
diff --git a/demos/sahpool-demo/tsconfig.json b/demos/sahpool-demo/tsconfig.json
new file mode 100644
index 0000000..596e2cf
--- /dev/null
+++ b/demos/sahpool-demo/tsconfig.json
@@ -0,0 +1,4 @@
+{
+ "extends": "../../tsconfig.json",
+ "include": ["src"]
+}
diff --git a/demos/sahpool-demo/vite.config.ts b/demos/sahpool-demo/vite.config.ts
new file mode 100644
index 0000000..0152081
--- /dev/null
+++ b/demos/sahpool-demo/vite.config.ts
@@ -0,0 +1,9 @@
+import { defineConfig, type UserConfig } from 'vite';
+
+const viteConfig: UserConfig = defineConfig({
+ server: {
+ port: 5175,
+ },
+});
+
+export default viteConfig;
diff --git a/lefthook.yml b/lefthook.yml
index d509d2f..d3ac379 100644
--- a/lefthook.yml
+++ b/lefthook.yml
@@ -4,6 +4,6 @@ output: false
pre-commit:
commands:
- prettier:
+ oxfmt:
stage_fixed: true
- run: npx prettier . --write
+ run: npx oxfmt .
diff --git a/package-lock.json b/package-lock.json
index e5084ca..dee0a90 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -8,6 +8,9 @@
"name": "@sqlite.org/sqlite-wasm",
"version": "3.51.2-build9",
"license": "Apache-2.0",
+ "workspaces": [
+ "demos/*"
+ ],
"devDependencies": {
"@types/node": "^25.6.0",
"@typescript/native-preview": "^7.0.0-dev.20260414.1",
@@ -16,9 +19,8 @@
"happy-dom": "20.9.0",
"http-server": "^14.1.1",
"lefthook": "2.1.5",
+ "oxfmt": "^0.45.0",
"playwright": "^1.59.1",
- "prettier": "^3.8.2",
- "prettier-plugin-jsdoc": "^1.8.0",
"publint": "^0.3.18",
"tsdown": "^0.21.8",
"typescript": "^6.0.2",
@@ -28,6 +30,24 @@
"node": ">=22"
}
},
+ "demos/in-worker-demo": {
+ "name": "@sqlite.org/in-worker-demo",
+ "devDependencies": {
+ "vite": "^8.0.8"
+ }
+ },
+ "demos/main-thread-demo": {
+ "name": "@sqlite.org/main-thread-demo",
+ "devDependencies": {
+ "vite": "^8.0.8"
+ }
+ },
+ "demos/sahpool-demo": {
+ "name": "@sqlite.org/sahpool-demo",
+ "devDependencies": {
+ "vite": "^8.0.8"
+ }
+ },
"node_modules/@babel/generator": {
"version": "8.0.0-rc.3",
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-8.0.0-rc.3.tgz",
@@ -205,43 +225,27 @@
"url": "https://github.com/sponsors/Boshen"
}
},
- "node_modules/@polka/url": {
- "version": "1.0.0-next.29",
- "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.29.tgz",
- "integrity": "sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@publint/pack": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/@publint/pack/-/pack-0.1.4.tgz",
- "integrity": "sha512-HDVTWq3H0uTXiU0eeSQntcVUTPP3GamzeXI41+x7uU9J65JgWQh3qWZHblR1i0npXfFtF+mxBiU2nJH8znxWnQ==",
+ "node_modules/@oxfmt/binding-android-arm-eabi": {
+ "version": "0.45.0",
+ "resolved": "https://registry.npmjs.org/@oxfmt/binding-android-arm-eabi/-/binding-android-arm-eabi-0.45.0.tgz",
+ "integrity": "sha512-A/UMxFob1fefCuMeGxQBulGfFE38g2Gm23ynr3u6b+b7fY7/ajGbNsa3ikMIkGMLJW/TRoQaMoP1kME7S+815w==",
+ "cpu": [
+ "arm"
+ ],
"dev": true,
"license": "MIT",
+ "optional": true,
+ "os": [
+ "android"
+ ],
"engines": {
- "node": ">=18"
- },
- "funding": {
- "url": "https://bjornlu.com/sponsor"
- }
- },
- "node_modules/@quansync/fs": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/@quansync/fs/-/fs-1.0.0.tgz",
- "integrity": "sha512-4TJ3DFtlf1L5LDMaM6CanJ/0lckGNtJcMjQ1NAV6zDmA0tEHKZtxNKin8EgPaVX1YzljbxckyT2tJrpQKAtngQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "quansync": "^1.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sxzz"
+ "node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@rolldown/binding-android-arm64": {
- "version": "1.0.0-rc.15",
- "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-rc.15.tgz",
- "integrity": "sha512-YYe6aWruPZDtHNpwu7+qAHEMbQ/yRl6atqb/AhznLTnD3UY99Q1jE7ihLSahNWkF4EqRPVC4SiR4O0UkLK02tA==",
+ "node_modules/@oxfmt/binding-android-arm64": {
+ "version": "0.45.0",
+ "resolved": "https://registry.npmjs.org/@oxfmt/binding-android-arm64/-/binding-android-arm64-0.45.0.tgz",
+ "integrity": "sha512-L63z4uZmHjgvvqvMJD7mwff8aSBkM0+X4uFr6l6U5t6+Qc9DCLVZWIunJ7Gm4fn4zHPdSq6FFQnhu9yqqobxIg==",
"cpu": [
"arm64"
],
@@ -255,10 +259,10 @@
"node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@rolldown/binding-darwin-arm64": {
- "version": "1.0.0-rc.15",
- "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-rc.15.tgz",
- "integrity": "sha512-oArR/ig8wNTPYsXL+Mzhs0oxhxfuHRfG7Ikw7jXsw8mYOtk71W0OkF2VEVh699pdmzjPQsTjlD1JIOoHkLP1Fg==",
+ "node_modules/@oxfmt/binding-darwin-arm64": {
+ "version": "0.45.0",
+ "resolved": "https://registry.npmjs.org/@oxfmt/binding-darwin-arm64/-/binding-darwin-arm64-0.45.0.tgz",
+ "integrity": "sha512-UV34dd623FzqT+outIGndsCA/RBB+qgB3XVQhgmmJ9PJwa37NzPC9qzgKeOhPKxVk2HW+JKldQrVL54zs4Noww==",
"cpu": [
"arm64"
],
@@ -272,10 +276,10 @@
"node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@rolldown/binding-darwin-x64": {
- "version": "1.0.0-rc.15",
- "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-rc.15.tgz",
- "integrity": "sha512-YzeVqOqjPYvUbJSWJ4EDL8ahbmsIXQpgL3JVipmN+MX0XnXMeWomLN3Fb+nwCmP/jfyqte5I3XRSm7OfQrbyxw==",
+ "node_modules/@oxfmt/binding-darwin-x64": {
+ "version": "0.45.0",
+ "resolved": "https://registry.npmjs.org/@oxfmt/binding-darwin-x64/-/binding-darwin-x64-0.45.0.tgz",
+ "integrity": "sha512-pMNJv0CMa1pDefVPeNbuQxibh8ITpWDFEhMC/IBB9Zlu76EbgzYwrzI4Cb11mqX2+rIYN70UTrh3z06TM59ptQ==",
"cpu": [
"x64"
],
@@ -289,10 +293,10 @@
"node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@rolldown/binding-freebsd-x64": {
- "version": "1.0.0-rc.15",
- "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-rc.15.tgz",
- "integrity": "sha512-9Erhx956jeQ0nNTyif1+QWAXDRD38ZNjr//bSHrt6wDwB+QkAfl2q6Mn1k6OBPerznjRmbM10lgRb1Pli4xZPw==",
+ "node_modules/@oxfmt/binding-freebsd-x64": {
+ "version": "0.45.0",
+ "resolved": "https://registry.npmjs.org/@oxfmt/binding-freebsd-x64/-/binding-freebsd-x64-0.45.0.tgz",
+ "integrity": "sha512-xTcRoxbbo61sW2+ZRPeH+vp/o9G8gkdhiVumFU+TpneiPm14c79l6GFlxPXlCE9bNWikigbsrvJw46zCVAQFfg==",
"cpu": [
"x64"
],
@@ -306,10 +310,10 @@
"node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@rolldown/binding-linux-arm-gnueabihf": {
- "version": "1.0.0-rc.15",
- "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-rc.15.tgz",
- "integrity": "sha512-cVwk0w8QbZJGTnP/AHQBs5yNwmpgGYStL88t4UIaqcvYJWBfS0s3oqVLZPwsPU6M0zlW4GqjP0Zq5MnAGwFeGA==",
+ "node_modules/@oxfmt/binding-linux-arm-gnueabihf": {
+ "version": "0.45.0",
+ "resolved": "https://registry.npmjs.org/@oxfmt/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.45.0.tgz",
+ "integrity": "sha512-hWL8Hdni+3U1mPFx1UtWeGp3tNb6EhBAUHRMbKUxVkOp3WwoJbpVO2bfUVbS4PfpledviXXNHSTl1veTa6FhkQ==",
"cpu": [
"arm"
],
@@ -323,10 +327,27 @@
"node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@rolldown/binding-linux-arm64-gnu": {
- "version": "1.0.0-rc.15",
- "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-rc.15.tgz",
- "integrity": "sha512-eBZ/u8iAK9SoHGanqe/jrPnY0JvBN6iXbVOsbO38mbz+ZJsaobExAm1Iu+rxa4S1l2FjG0qEZn4Rc6X8n+9M+w==",
+ "node_modules/@oxfmt/binding-linux-arm-musleabihf": {
+ "version": "0.45.0",
+ "resolved": "https://registry.npmjs.org/@oxfmt/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.45.0.tgz",
+ "integrity": "sha512-6Blt/0OBT7vvfQpqYuYbpbFLPqSiaYpEJzUUWhinPEuADypDbtV1+LdjM0vYBNGPvnj85ex7lTerEX6JGcPt9w==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@oxfmt/binding-linux-arm64-gnu": {
+ "version": "0.45.0",
+ "resolved": "https://registry.npmjs.org/@oxfmt/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.45.0.tgz",
+ "integrity": "sha512-jLjoLfe+hGfjhA8hNBSdw85yCA8ePKq7ME4T+g6P9caQXvmt6IhE2X7iVjnVdkmYUWEzZrxlh4p6RkDmAMJY/A==",
"cpu": [
"arm64"
],
@@ -343,10 +364,10 @@
"node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@rolldown/binding-linux-arm64-musl": {
- "version": "1.0.0-rc.15",
- "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-rc.15.tgz",
- "integrity": "sha512-ZvRYMGrAklV9PEkgt4LQM6MjQX2P58HPAuecwYObY2DhS2t35R0I810bKi0wmaYORt6m/2Sm+Z+nFgb0WhXNcQ==",
+ "node_modules/@oxfmt/binding-linux-arm64-musl": {
+ "version": "0.45.0",
+ "resolved": "https://registry.npmjs.org/@oxfmt/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.45.0.tgz",
+ "integrity": "sha512-XQKXZIKYJC3GQJ8FnD3iMntpw69Wd9kDDK/Xt79p6xnFYlGGxSNv2vIBvRTDg5CKByWFWWZLCRDOXoP/m6YN4g==",
"cpu": [
"arm64"
],
@@ -363,10 +384,10 @@
"node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@rolldown/binding-linux-ppc64-gnu": {
- "version": "1.0.0-rc.15",
- "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.0.0-rc.15.tgz",
- "integrity": "sha512-VDpgGBzgfg5hLg+uBpCLoFG5kVvEyafmfxGUV0UHLcL5irxAK7PKNeC2MwClgk6ZAiNhmo9FLhRYgvMmedLtnQ==",
+ "node_modules/@oxfmt/binding-linux-ppc64-gnu": {
+ "version": "0.45.0",
+ "resolved": "https://registry.npmjs.org/@oxfmt/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-0.45.0.tgz",
+ "integrity": "sha512-+g5RiG+xOkdrCWkKodv407nTvMq4vYM18Uox2MhZBm/YoqFxxJpWKsloskFFG5NU13HGPw1wzYjjOVcyd9moCA==",
"cpu": [
"ppc64"
],
@@ -383,10 +404,50 @@
"node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@rolldown/binding-linux-s390x-gnu": {
- "version": "1.0.0-rc.15",
- "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.0.0-rc.15.tgz",
- "integrity": "sha512-y1uXY3qQWCzcPgRJATPSOUP4tCemh4uBdY7e3EZbVwCJTY3gLJWnQABgeUetvED+bt1FQ01OeZwvhLS2bpNrAQ==",
+ "node_modules/@oxfmt/binding-linux-riscv64-gnu": {
+ "version": "0.45.0",
+ "resolved": "https://registry.npmjs.org/@oxfmt/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.45.0.tgz",
+ "integrity": "sha512-V7dXKoSyEbWAkkSF4JJNtF+NJZDmJoSarSoP30WCsB3X636Rehd3CvxBj49FIJxEBFWhvcUjGSHVeU8Erck1bQ==",
+ "cpu": [
+ "riscv64"
+ ],
+ "dev": true,
+ "libc": [
+ "glibc"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@oxfmt/binding-linux-riscv64-musl": {
+ "version": "0.45.0",
+ "resolved": "https://registry.npmjs.org/@oxfmt/binding-linux-riscv64-musl/-/binding-linux-riscv64-musl-0.45.0.tgz",
+ "integrity": "sha512-Vdelft1sAEYojVGgcODEFXSWYQYlIvoyIGWebKCuUibd1tvS1TjTx413xG2ZLuHpYj45CkN/ztMLMX6jrgqpgg==",
+ "cpu": [
+ "riscv64"
+ ],
+ "dev": true,
+ "libc": [
+ "musl"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@oxfmt/binding-linux-s390x-gnu": {
+ "version": "0.45.0",
+ "resolved": "https://registry.npmjs.org/@oxfmt/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.45.0.tgz",
+ "integrity": "sha512-RR7xKgNpqwENnK0aYCGYg0JycY2n93J0reNjHyes+I9Gq52dH95x+CBlnlAQHCPfz6FGnKA9HirgUl14WO6o7w==",
"cpu": [
"s390x"
],
@@ -403,10 +464,10 @@
"node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@rolldown/binding-linux-x64-gnu": {
- "version": "1.0.0-rc.15",
- "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-rc.15.tgz",
- "integrity": "sha512-023bTPBod7J3Y/4fzAN6QtpkSABR0rigtrwaP+qSEabUh5zf6ELr9Nc7GujaROuPY3uwdSIXWrvhn1KxOvurWA==",
+ "node_modules/@oxfmt/binding-linux-x64-gnu": {
+ "version": "0.45.0",
+ "resolved": "https://registry.npmjs.org/@oxfmt/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.45.0.tgz",
+ "integrity": "sha512-U/QQ0+BQNSHxjuXR/utvXnQ50Vu5kUuqEomZvQ1/3mhgbBiMc2WU9q5kZ5WwLp3gnFIx9ibkveoRSe2EZubkqg==",
"cpu": [
"x64"
],
@@ -423,10 +484,10 @@
"node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@rolldown/binding-linux-x64-musl": {
- "version": "1.0.0-rc.15",
- "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-rc.15.tgz",
- "integrity": "sha512-witB2O0/hU4CgfOOKUoeFgQ4GktPi1eEbAhaLAIpgD6+ZnhcPkUtPsoKKHRzmOoWPZue46IThdSgdo4XneOLYw==",
+ "node_modules/@oxfmt/binding-linux-x64-musl": {
+ "version": "0.45.0",
+ "resolved": "https://registry.npmjs.org/@oxfmt/binding-linux-x64-musl/-/binding-linux-x64-musl-0.45.0.tgz",
+ "integrity": "sha512-o5TLOUCF0RWQjsIS06yVC+kFgp092/yLe6qBGSUvtnmTVw9gxjpdQSXc3VN5Cnive4K11HNstEZF8ROKHfDFSw==",
"cpu": [
"x64"
],
@@ -443,10 +504,10 @@
"node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@rolldown/binding-openharmony-arm64": {
- "version": "1.0.0-rc.15",
- "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-rc.15.tgz",
- "integrity": "sha512-UCL68NJ0Ud5zRipXZE9dF5PmirzJE4E4BCIOOssEnM7wLDsxjc6Qb0sGDxTNRTP53I6MZpygyCpY8Aa8sPfKPg==",
+ "node_modules/@oxfmt/binding-openharmony-arm64": {
+ "version": "0.45.0",
+ "resolved": "https://registry.npmjs.org/@oxfmt/binding-openharmony-arm64/-/binding-openharmony-arm64-0.45.0.tgz",
+ "integrity": "sha512-RnGcV3HgPuOjsGx/k9oyRNKmOp+NBLGzZTdPDYbc19r7NGeYPplnUU/BfU35bX2Y/O4ejvHxcfkvW2WoYL/gsg==",
"cpu": [
"arm64"
],
@@ -460,31 +521,29 @@
"node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@rolldown/binding-wasm32-wasi": {
- "version": "1.0.0-rc.15",
- "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-rc.15.tgz",
- "integrity": "sha512-ApLruZq/ig+nhaE7OJm4lDjayUnOHVUa77zGeqnqZ9pn0ovdVbbNPerVibLXDmWeUZXjIYIT8V3xkT58Rm9u5Q==",
+ "node_modules/@oxfmt/binding-win32-arm64-msvc": {
+ "version": "0.45.0",
+ "resolved": "https://registry.npmjs.org/@oxfmt/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.45.0.tgz",
+ "integrity": "sha512-v3Vj7iKKsUFwt9w5hsqIIoErKVoENC6LoqfDlteOQ5QMDCXihlqLoxpmviUhXnNncg4zV6U9BPwlBbwa+qm4wg==",
"cpu": [
- "wasm32"
+ "arm64"
],
"dev": true,
"license": "MIT",
"optional": true,
- "dependencies": {
- "@emnapi/core": "1.9.2",
- "@emnapi/runtime": "1.9.2",
- "@napi-rs/wasm-runtime": "^1.1.3"
- },
+ "os": [
+ "win32"
+ ],
"engines": {
- "node": ">=14.0.0"
+ "node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@rolldown/binding-win32-arm64-msvc": {
- "version": "1.0.0-rc.15",
- "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-rc.15.tgz",
- "integrity": "sha512-KmoUoU7HnN+Si5YWJigfTws1jz1bKBYDQKdbLspz0UaqjjFkddHsqorgiW1mxcAj88lYUE6NC/zJNwT+SloqtA==",
+ "node_modules/@oxfmt/binding-win32-ia32-msvc": {
+ "version": "0.45.0",
+ "resolved": "https://registry.npmjs.org/@oxfmt/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-0.45.0.tgz",
+ "integrity": "sha512-N8yotPBX6ph0H3toF4AEpdCeVPrdcSetj+8eGiZGsrLsng3bs/Q5HPu4bbSxip5GBPx5hGbGHrZwH4+rcrjhHA==",
"cpu": [
- "arm64"
+ "ia32"
],
"dev": true,
"license": "MIT",
@@ -496,10 +555,10 @@
"node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@rolldown/binding-win32-x64-msvc": {
- "version": "1.0.0-rc.15",
- "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-rc.15.tgz",
- "integrity": "sha512-3P2A8L+x75qavWLe/Dll3EYBJLQmtkJN8rfh+U/eR3MqMgL/h98PhYI+JFfXuDPgPeCB7iZAKiqii5vqOvnA0g==",
+ "node_modules/@oxfmt/binding-win32-x64-msvc": {
+ "version": "0.45.0",
+ "resolved": "https://registry.npmjs.org/@oxfmt/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.45.0.tgz",
+ "integrity": "sha512-w5MMTRCK1dpQeRA+HHqXQXyN33DlG/N2LOYxJmaT4fJjcmZrbNnqw7SmIk7I2/a2493PPLZ+2E/Ar6t2iKVMug==",
"cpu": [
"x64"
],
@@ -513,87 +572,380 @@
"node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@rolldown/pluginutils": {
- "version": "1.0.0-rc.15",
- "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.15.tgz",
- "integrity": "sha512-UromN0peaE53IaBRe9W7CjrZgXl90fqGpK+mIZbA3qSTeYqg3pqpROBdIPvOG3F5ereDHNwoHBI2e50n1BDr1g==",
+ "node_modules/@polka/url": {
+ "version": "1.0.0-next.29",
+ "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.29.tgz",
+ "integrity": "sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==",
"dev": true,
"license": "MIT"
},
- "node_modules/@standard-schema/spec": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.1.0.tgz",
- "integrity": "sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==",
+ "node_modules/@publint/pack": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/@publint/pack/-/pack-0.1.4.tgz",
+ "integrity": "sha512-HDVTWq3H0uTXiU0eeSQntcVUTPP3GamzeXI41+x7uU9J65JgWQh3qWZHblR1i0npXfFtF+mxBiU2nJH8znxWnQ==",
"dev": true,
- "license": "MIT"
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://bjornlu.com/sponsor"
+ }
},
- "node_modules/@tybys/wasm-util": {
- "version": "0.10.1",
- "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz",
- "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==",
+ "node_modules/@quansync/fs": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/@quansync/fs/-/fs-1.0.0.tgz",
+ "integrity": "sha512-4TJ3DFtlf1L5LDMaM6CanJ/0lckGNtJcMjQ1NAV6zDmA0tEHKZtxNKin8EgPaVX1YzljbxckyT2tJrpQKAtngQ==",
"dev": true,
"license": "MIT",
- "optional": true,
"dependencies": {
- "tslib": "^2.4.0"
+ "quansync": "^1.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sxzz"
}
},
- "node_modules/@types/chai": {
- "version": "5.2.3",
- "resolved": "https://registry.npmjs.org/@types/chai/-/chai-5.2.3.tgz",
- "integrity": "sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==",
+ "node_modules/@rolldown/binding-android-arm64": {
+ "version": "1.0.0-rc.15",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-rc.15.tgz",
+ "integrity": "sha512-YYe6aWruPZDtHNpwu7+qAHEMbQ/yRl6atqb/AhznLTnD3UY99Q1jE7ihLSahNWkF4EqRPVC4SiR4O0UkLK02tA==",
+ "cpu": [
+ "arm64"
+ ],
"dev": true,
"license": "MIT",
- "dependencies": {
- "@types/deep-eql": "*",
- "assertion-error": "^2.0.1"
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@types/debug": {
- "version": "4.1.12",
- "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz",
- "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==",
+ "node_modules/@rolldown/binding-darwin-arm64": {
+ "version": "1.0.0-rc.15",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-rc.15.tgz",
+ "integrity": "sha512-oArR/ig8wNTPYsXL+Mzhs0oxhxfuHRfG7Ikw7jXsw8mYOtk71W0OkF2VEVh699pdmzjPQsTjlD1JIOoHkLP1Fg==",
+ "cpu": [
+ "arm64"
+ ],
"dev": true,
"license": "MIT",
- "dependencies": {
- "@types/ms": "*"
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
}
},
- "node_modules/@types/deep-eql": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/@types/deep-eql/-/deep-eql-4.0.2.tgz",
- "integrity": "sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==",
+ "node_modules/@rolldown/binding-darwin-x64": {
+ "version": "1.0.0-rc.15",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-rc.15.tgz",
+ "integrity": "sha512-YzeVqOqjPYvUbJSWJ4EDL8ahbmsIXQpgL3JVipmN+MX0XnXMeWomLN3Fb+nwCmP/jfyqte5I3XRSm7OfQrbyxw==",
+ "cpu": [
+ "x64"
+ ],
"dev": true,
- "license": "MIT"
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
},
- "node_modules/@types/estree": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz",
- "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==",
+ "node_modules/@rolldown/binding-freebsd-x64": {
+ "version": "1.0.0-rc.15",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-rc.15.tgz",
+ "integrity": "sha512-9Erhx956jeQ0nNTyif1+QWAXDRD38ZNjr//bSHrt6wDwB+QkAfl2q6Mn1k6OBPerznjRmbM10lgRb1Pli4xZPw==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-linux-arm-gnueabihf": {
+ "version": "1.0.0-rc.15",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-rc.15.tgz",
+ "integrity": "sha512-cVwk0w8QbZJGTnP/AHQBs5yNwmpgGYStL88t4UIaqcvYJWBfS0s3oqVLZPwsPU6M0zlW4GqjP0Zq5MnAGwFeGA==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-linux-arm64-gnu": {
+ "version": "1.0.0-rc.15",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-rc.15.tgz",
+ "integrity": "sha512-eBZ/u8iAK9SoHGanqe/jrPnY0JvBN6iXbVOsbO38mbz+ZJsaobExAm1Iu+rxa4S1l2FjG0qEZn4Rc6X8n+9M+w==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "libc": [
+ "glibc"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-linux-arm64-musl": {
+ "version": "1.0.0-rc.15",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-rc.15.tgz",
+ "integrity": "sha512-ZvRYMGrAklV9PEkgt4LQM6MjQX2P58HPAuecwYObY2DhS2t35R0I810bKi0wmaYORt6m/2Sm+Z+nFgb0WhXNcQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "libc": [
+ "musl"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-linux-ppc64-gnu": {
+ "version": "1.0.0-rc.15",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.0.0-rc.15.tgz",
+ "integrity": "sha512-VDpgGBzgfg5hLg+uBpCLoFG5kVvEyafmfxGUV0UHLcL5irxAK7PKNeC2MwClgk6ZAiNhmo9FLhRYgvMmedLtnQ==",
+ "cpu": [
+ "ppc64"
+ ],
+ "dev": true,
+ "libc": [
+ "glibc"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-linux-s390x-gnu": {
+ "version": "1.0.0-rc.15",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.0.0-rc.15.tgz",
+ "integrity": "sha512-y1uXY3qQWCzcPgRJATPSOUP4tCemh4uBdY7e3EZbVwCJTY3gLJWnQABgeUetvED+bt1FQ01OeZwvhLS2bpNrAQ==",
+ "cpu": [
+ "s390x"
+ ],
+ "dev": true,
+ "libc": [
+ "glibc"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-linux-x64-gnu": {
+ "version": "1.0.0-rc.15",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-rc.15.tgz",
+ "integrity": "sha512-023bTPBod7J3Y/4fzAN6QtpkSABR0rigtrwaP+qSEabUh5zf6ELr9Nc7GujaROuPY3uwdSIXWrvhn1KxOvurWA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "libc": [
+ "glibc"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-linux-x64-musl": {
+ "version": "1.0.0-rc.15",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-rc.15.tgz",
+ "integrity": "sha512-witB2O0/hU4CgfOOKUoeFgQ4GktPi1eEbAhaLAIpgD6+ZnhcPkUtPsoKKHRzmOoWPZue46IThdSgdo4XneOLYw==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "libc": [
+ "musl"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-openharmony-arm64": {
+ "version": "1.0.0-rc.15",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-rc.15.tgz",
+ "integrity": "sha512-UCL68NJ0Ud5zRipXZE9dF5PmirzJE4E4BCIOOssEnM7wLDsxjc6Qb0sGDxTNRTP53I6MZpygyCpY8Aa8sPfKPg==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "openharmony"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-wasm32-wasi": {
+ "version": "1.0.0-rc.15",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-rc.15.tgz",
+ "integrity": "sha512-ApLruZq/ig+nhaE7OJm4lDjayUnOHVUa77zGeqnqZ9pn0ovdVbbNPerVibLXDmWeUZXjIYIT8V3xkT58Rm9u5Q==",
+ "cpu": [
+ "wasm32"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@emnapi/core": "1.9.2",
+ "@emnapi/runtime": "1.9.2",
+ "@napi-rs/wasm-runtime": "^1.1.3"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@rolldown/binding-win32-arm64-msvc": {
+ "version": "1.0.0-rc.15",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-rc.15.tgz",
+ "integrity": "sha512-KmoUoU7HnN+Si5YWJigfTws1jz1bKBYDQKdbLspz0UaqjjFkddHsqorgiW1mxcAj88lYUE6NC/zJNwT+SloqtA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-win32-x64-msvc": {
+ "version": "1.0.0-rc.15",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-rc.15.tgz",
+ "integrity": "sha512-3P2A8L+x75qavWLe/Dll3EYBJLQmtkJN8rfh+U/eR3MqMgL/h98PhYI+JFfXuDPgPeCB7iZAKiqii5vqOvnA0g==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/pluginutils": {
+ "version": "1.0.0-rc.15",
+ "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.15.tgz",
+ "integrity": "sha512-UromN0peaE53IaBRe9W7CjrZgXl90fqGpK+mIZbA3qSTeYqg3pqpROBdIPvOG3F5ereDHNwoHBI2e50n1BDr1g==",
"dev": true,
"license": "MIT"
},
- "node_modules/@types/jsesc": {
- "version": "2.5.1",
- "resolved": "https://registry.npmjs.org/@types/jsesc/-/jsesc-2.5.1.tgz",
- "integrity": "sha512-9VN+6yxLOPLOav+7PwjZbxiID2bVaeq0ED4qSQmdQTdjnXJSaCVKTR58t15oqH1H5t8Ng2ZX1SabJVoN9Q34bw==",
+ "node_modules/@sqlite.org/in-worker-demo": {
+ "resolved": "demos/in-worker-demo",
+ "link": true
+ },
+ "node_modules/@sqlite.org/main-thread-demo": {
+ "resolved": "demos/main-thread-demo",
+ "link": true
+ },
+ "node_modules/@sqlite.org/sahpool-demo": {
+ "resolved": "demos/sahpool-demo",
+ "link": true
+ },
+ "node_modules/@standard-schema/spec": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.1.0.tgz",
+ "integrity": "sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==",
"dev": true,
"license": "MIT"
},
- "node_modules/@types/mdast": {
- "version": "4.0.4",
- "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz",
- "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==",
+ "node_modules/@tybys/wasm-util": {
+ "version": "0.10.1",
+ "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz",
+ "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==",
"dev": true,
"license": "MIT",
+ "optional": true,
"dependencies": {
- "@types/unist": "*"
+ "tslib": "^2.4.0"
}
},
- "node_modules/@types/ms": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz",
- "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==",
+ "node_modules/@types/chai": {
+ "version": "5.2.3",
+ "resolved": "https://registry.npmjs.org/@types/chai/-/chai-5.2.3.tgz",
+ "integrity": "sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/deep-eql": "*",
+ "assertion-error": "^2.0.1"
+ }
+ },
+ "node_modules/@types/deep-eql": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@types/deep-eql/-/deep-eql-4.0.2.tgz",
+ "integrity": "sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/estree": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz",
+ "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/jsesc": {
+ "version": "2.5.1",
+ "resolved": "https://registry.npmjs.org/@types/jsesc/-/jsesc-2.5.1.tgz",
+ "integrity": "sha512-9VN+6yxLOPLOav+7PwjZbxiID2bVaeq0ED4qSQmdQTdjnXJSaCVKTR58t15oqH1H5t8Ng2ZX1SabJVoN9Q34bw==",
"dev": true,
"license": "MIT"
},
@@ -607,13 +959,6 @@
"undici-types": "~7.19.0"
}
},
- "node_modules/@types/unist": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz",
- "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/@types/whatwg-mimetype": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/@types/whatwg-mimetype/-/whatwg-mimetype-3.0.2.tgz",
@@ -982,13 +1327,6 @@
"node": ">= 0.8"
}
},
- "node_modules/binary-searching": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/binary-searching/-/binary-searching-2.0.5.tgz",
- "integrity": "sha512-v4N2l3RxL+m4zDxyxz3Ne2aTmiPn8ZUpKFpdPtO+ItW1NcTCXA7JeHG5GMBSvoKSkQZ9ycS+EouDVxYB9ufKWA==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/birpc": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/birpc/-/birpc-4.0.0.tgz",
@@ -1066,17 +1404,6 @@
"url": "https://github.com/chalk/chalk?sponsor=1"
}
},
- "node_modules/character-entities": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz",
- "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==",
- "dev": true,
- "license": "MIT",
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/wooorm"
- }
- },
"node_modules/color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
@@ -1095,16 +1422,6 @@
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true
},
- "node_modules/comment-parser": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz",
- "integrity": "sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 12.0.0"
- }
- },
"node_modules/convert-source-map": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
@@ -1130,20 +1447,6 @@
"ms": "^2.1.1"
}
},
- "node_modules/decode-named-character-reference": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.2.0.tgz",
- "integrity": "sha512-c6fcElNV6ShtZXmsgNgFFV5tVX2PaV4g+MOAkb8eXHvn6sryJBrZa9r0zV6+dtTyoCKxtDy5tyQ5ZwQuidtd+Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "character-entities": "^2.0.0"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/wooorm"
- }
- },
"node_modules/defu": {
"version": "6.1.7",
"resolved": "https://registry.npmjs.org/defu/-/defu-6.1.7.tgz",
@@ -1151,16 +1454,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/dequal": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz",
- "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/detect-libc": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz",
@@ -1171,20 +1464,6 @@
"node": ">=8"
}
},
- "node_modules/devlop": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz",
- "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "dequal": "^2.0.0"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/wooorm"
- }
- },
"node_modules/dts-resolver": {
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/dts-resolver/-/dts-resolver-2.1.3.tgz",
@@ -1767,176 +2046,44 @@
"version": "1.32.0",
"resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.32.0.tgz",
"integrity": "sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==",
- "dev": true,
- "license": "MPL-2.0",
- "dependencies": {
- "detect-libc": "^2.0.3"
- },
- "engines": {
- "node": ">= 12.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/parcel"
- },
- "optionalDependencies": {
- "lightningcss-android-arm64": "1.32.0",
- "lightningcss-darwin-arm64": "1.32.0",
- "lightningcss-darwin-x64": "1.32.0",
- "lightningcss-freebsd-x64": "1.32.0",
- "lightningcss-linux-arm-gnueabihf": "1.32.0",
- "lightningcss-linux-arm64-gnu": "1.32.0",
- "lightningcss-linux-arm64-musl": "1.32.0",
- "lightningcss-linux-x64-gnu": "1.32.0",
- "lightningcss-linux-x64-musl": "1.32.0",
- "lightningcss-win32-arm64-msvc": "1.32.0",
- "lightningcss-win32-x64-msvc": "1.32.0"
- }
- },
- "node_modules/lightningcss-android-arm64": {
- "version": "1.32.0",
- "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.32.0.tgz",
- "integrity": "sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "license": "MPL-2.0",
- "optional": true,
- "os": [
- "android"
- ],
- "engines": {
- "node": ">= 12.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/parcel"
- }
- },
- "node_modules/lightningcss-darwin-arm64": {
- "version": "1.32.0",
- "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.32.0.tgz",
- "integrity": "sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "license": "MPL-2.0",
- "optional": true,
- "os": [
- "darwin"
- ],
- "engines": {
- "node": ">= 12.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/parcel"
- }
- },
- "node_modules/lightningcss-darwin-x64": {
- "version": "1.32.0",
- "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.32.0.tgz",
- "integrity": "sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "license": "MPL-2.0",
- "optional": true,
- "os": [
- "darwin"
- ],
- "engines": {
- "node": ">= 12.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/parcel"
- }
- },
- "node_modules/lightningcss-freebsd-x64": {
- "version": "1.32.0",
- "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.32.0.tgz",
- "integrity": "sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "license": "MPL-2.0",
- "optional": true,
- "os": [
- "freebsd"
- ],
- "engines": {
- "node": ">= 12.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/parcel"
- }
- },
- "node_modules/lightningcss-linux-arm-gnueabihf": {
- "version": "1.32.0",
- "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.32.0.tgz",
- "integrity": "sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==",
- "cpu": [
- "arm"
- ],
- "dev": true,
- "license": "MPL-2.0",
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">= 12.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/parcel"
- }
- },
- "node_modules/lightningcss-linux-arm64-gnu": {
- "version": "1.32.0",
- "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.32.0.tgz",
- "integrity": "sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "libc": [
- "glibc"
- ],
+ "dev": true,
"license": "MPL-2.0",
- "optional": true,
- "os": [
- "linux"
- ],
+ "dependencies": {
+ "detect-libc": "^2.0.3"
+ },
"engines": {
"node": ">= 12.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
+ },
+ "optionalDependencies": {
+ "lightningcss-android-arm64": "1.32.0",
+ "lightningcss-darwin-arm64": "1.32.0",
+ "lightningcss-darwin-x64": "1.32.0",
+ "lightningcss-freebsd-x64": "1.32.0",
+ "lightningcss-linux-arm-gnueabihf": "1.32.0",
+ "lightningcss-linux-arm64-gnu": "1.32.0",
+ "lightningcss-linux-arm64-musl": "1.32.0",
+ "lightningcss-linux-x64-gnu": "1.32.0",
+ "lightningcss-linux-x64-musl": "1.32.0",
+ "lightningcss-win32-arm64-msvc": "1.32.0",
+ "lightningcss-win32-x64-msvc": "1.32.0"
}
},
- "node_modules/lightningcss-linux-arm64-musl": {
+ "node_modules/lightningcss-android-arm64": {
"version": "1.32.0",
- "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.32.0.tgz",
- "integrity": "sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==",
+ "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.32.0.tgz",
+ "integrity": "sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==",
"cpu": [
"arm64"
],
"dev": true,
- "libc": [
- "musl"
- ],
"license": "MPL-2.0",
"optional": true,
"os": [
- "linux"
+ "android"
],
"engines": {
"node": ">= 12.0.0"
@@ -1946,21 +2093,18 @@
"url": "https://opencollective.com/parcel"
}
},
- "node_modules/lightningcss-linux-x64-gnu": {
+ "node_modules/lightningcss-darwin-arm64": {
"version": "1.32.0",
- "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.32.0.tgz",
- "integrity": "sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==",
+ "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.32.0.tgz",
+ "integrity": "sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==",
"cpu": [
- "x64"
+ "arm64"
],
"dev": true,
- "libc": [
- "glibc"
- ],
"license": "MPL-2.0",
"optional": true,
"os": [
- "linux"
+ "darwin"
],
"engines": {
"node": ">= 12.0.0"
@@ -1970,21 +2114,18 @@
"url": "https://opencollective.com/parcel"
}
},
- "node_modules/lightningcss-linux-x64-musl": {
+ "node_modules/lightningcss-darwin-x64": {
"version": "1.32.0",
- "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.32.0.tgz",
- "integrity": "sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==",
+ "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.32.0.tgz",
+ "integrity": "sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==",
"cpu": [
"x64"
],
"dev": true,
- "libc": [
- "musl"
- ],
"license": "MPL-2.0",
"optional": true,
"os": [
- "linux"
+ "darwin"
],
"engines": {
"node": ">= 12.0.0"
@@ -1994,18 +2135,18 @@
"url": "https://opencollective.com/parcel"
}
},
- "node_modules/lightningcss-win32-arm64-msvc": {
+ "node_modules/lightningcss-freebsd-x64": {
"version": "1.32.0",
- "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.32.0.tgz",
- "integrity": "sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==",
+ "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.32.0.tgz",
+ "integrity": "sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==",
"cpu": [
- "arm64"
+ "x64"
],
"dev": true,
"license": "MPL-2.0",
"optional": true,
"os": [
- "win32"
+ "freebsd"
],
"engines": {
"node": ">= 12.0.0"
@@ -2015,18 +2156,18 @@
"url": "https://opencollective.com/parcel"
}
},
- "node_modules/lightningcss-win32-x64-msvc": {
+ "node_modules/lightningcss-linux-arm-gnueabihf": {
"version": "1.32.0",
- "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.32.0.tgz",
- "integrity": "sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==",
+ "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.32.0.tgz",
+ "integrity": "sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==",
"cpu": [
- "x64"
+ "arm"
],
"dev": true,
"license": "MPL-2.0",
"optional": true,
"os": [
- "win32"
+ "linux"
],
"engines": {
"node": ">= 12.0.0"
@@ -2036,551 +2177,169 @@
"url": "https://opencollective.com/parcel"
}
},
- "node_modules/lodash": {
- "version": "4.18.1",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.18.1.tgz",
- "integrity": "sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/magic-string": {
- "version": "0.30.21",
- "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz",
- "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jridgewell/sourcemap-codec": "^1.5.5"
- }
- },
- "node_modules/math-intrinsics": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
- "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/mdast-util-from-markdown": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.2.tgz",
- "integrity": "sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@types/mdast": "^4.0.0",
- "@types/unist": "^3.0.0",
- "decode-named-character-reference": "^1.0.0",
- "devlop": "^1.0.0",
- "mdast-util-to-string": "^4.0.0",
- "micromark": "^4.0.0",
- "micromark-util-decode-numeric-character-reference": "^2.0.0",
- "micromark-util-decode-string": "^2.0.0",
- "micromark-util-normalize-identifier": "^2.0.0",
- "micromark-util-symbol": "^2.0.0",
- "micromark-util-types": "^2.0.0",
- "unist-util-stringify-position": "^4.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/unified"
- }
- },
- "node_modules/mdast-util-to-string": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz",
- "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@types/mdast": "^4.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/unified"
- }
- },
- "node_modules/micromark": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.2.tgz",
- "integrity": "sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==",
- "dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
- ],
- "license": "MIT",
- "dependencies": {
- "@types/debug": "^4.0.0",
- "debug": "^4.0.0",
- "decode-named-character-reference": "^1.0.0",
- "devlop": "^1.0.0",
- "micromark-core-commonmark": "^2.0.0",
- "micromark-factory-space": "^2.0.0",
- "micromark-util-character": "^2.0.0",
- "micromark-util-chunked": "^2.0.0",
- "micromark-util-combine-extensions": "^2.0.0",
- "micromark-util-decode-numeric-character-reference": "^2.0.0",
- "micromark-util-encode": "^2.0.0",
- "micromark-util-normalize-identifier": "^2.0.0",
- "micromark-util-resolve-all": "^2.0.0",
- "micromark-util-sanitize-uri": "^2.0.0",
- "micromark-util-subtokenize": "^2.0.0",
- "micromark-util-symbol": "^2.0.0",
- "micromark-util-types": "^2.0.0"
- }
- },
- "node_modules/micromark-core-commonmark": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.3.tgz",
- "integrity": "sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==",
- "dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
- ],
- "license": "MIT",
- "dependencies": {
- "decode-named-character-reference": "^1.0.0",
- "devlop": "^1.0.0",
- "micromark-factory-destination": "^2.0.0",
- "micromark-factory-label": "^2.0.0",
- "micromark-factory-space": "^2.0.0",
- "micromark-factory-title": "^2.0.0",
- "micromark-factory-whitespace": "^2.0.0",
- "micromark-util-character": "^2.0.0",
- "micromark-util-chunked": "^2.0.0",
- "micromark-util-classify-character": "^2.0.0",
- "micromark-util-html-tag-name": "^2.0.0",
- "micromark-util-normalize-identifier": "^2.0.0",
- "micromark-util-resolve-all": "^2.0.0",
- "micromark-util-subtokenize": "^2.0.0",
- "micromark-util-symbol": "^2.0.0",
- "micromark-util-types": "^2.0.0"
- }
- },
- "node_modules/micromark-factory-destination": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.1.tgz",
- "integrity": "sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==",
- "dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
- ],
- "license": "MIT",
- "dependencies": {
- "micromark-util-character": "^2.0.0",
- "micromark-util-symbol": "^2.0.0",
- "micromark-util-types": "^2.0.0"
- }
- },
- "node_modules/micromark-factory-label": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.1.tgz",
- "integrity": "sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==",
- "dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
- ],
- "license": "MIT",
- "dependencies": {
- "devlop": "^1.0.0",
- "micromark-util-character": "^2.0.0",
- "micromark-util-symbol": "^2.0.0",
- "micromark-util-types": "^2.0.0"
- }
- },
- "node_modules/micromark-factory-space": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.1.tgz",
- "integrity": "sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==",
- "dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
- ],
- "license": "MIT",
- "dependencies": {
- "micromark-util-character": "^2.0.0",
- "micromark-util-types": "^2.0.0"
- }
- },
- "node_modules/micromark-factory-title": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.1.tgz",
- "integrity": "sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==",
- "dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
- ],
- "license": "MIT",
- "dependencies": {
- "micromark-factory-space": "^2.0.0",
- "micromark-util-character": "^2.0.0",
- "micromark-util-symbol": "^2.0.0",
- "micromark-util-types": "^2.0.0"
- }
- },
- "node_modules/micromark-factory-whitespace": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.1.tgz",
- "integrity": "sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==",
- "dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
- ],
- "license": "MIT",
- "dependencies": {
- "micromark-factory-space": "^2.0.0",
- "micromark-util-character": "^2.0.0",
- "micromark-util-symbol": "^2.0.0",
- "micromark-util-types": "^2.0.0"
- }
- },
- "node_modules/micromark-util-character": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.1.tgz",
- "integrity": "sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==",
- "dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
- ],
- "license": "MIT",
- "dependencies": {
- "micromark-util-symbol": "^2.0.0",
- "micromark-util-types": "^2.0.0"
- }
- },
- "node_modules/micromark-util-chunked": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.1.tgz",
- "integrity": "sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==",
- "dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
+ "node_modules/lightningcss-linux-arm64-gnu": {
+ "version": "1.32.0",
+ "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.32.0.tgz",
+ "integrity": "sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==",
+ "cpu": [
+ "arm64"
],
- "license": "MIT",
- "dependencies": {
- "micromark-util-symbol": "^2.0.0"
- }
- },
- "node_modules/micromark-util-classify-character": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.1.tgz",
- "integrity": "sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==",
"dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
+ "libc": [
+ "glibc"
],
- "license": "MIT",
- "dependencies": {
- "micromark-util-character": "^2.0.0",
- "micromark-util-symbol": "^2.0.0",
- "micromark-util-types": "^2.0.0"
- }
- },
- "node_modules/micromark-util-combine-extensions": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.1.tgz",
- "integrity": "sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==",
- "dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "linux"
],
- "license": "MIT",
- "dependencies": {
- "micromark-util-chunked": "^2.0.0",
- "micromark-util-types": "^2.0.0"
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
}
},
- "node_modules/micromark-util-decode-numeric-character-reference": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.2.tgz",
- "integrity": "sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==",
- "dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
+ "node_modules/lightningcss-linux-arm64-musl": {
+ "version": "1.32.0",
+ "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.32.0.tgz",
+ "integrity": "sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==",
+ "cpu": [
+ "arm64"
],
- "license": "MIT",
- "dependencies": {
- "micromark-util-symbol": "^2.0.0"
- }
- },
- "node_modules/micromark-util-decode-string": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.1.tgz",
- "integrity": "sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==",
"dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
+ "libc": [
+ "musl"
],
- "license": "MIT",
- "dependencies": {
- "decode-named-character-reference": "^1.0.0",
- "micromark-util-character": "^2.0.0",
- "micromark-util-decode-numeric-character-reference": "^2.0.0",
- "micromark-util-symbol": "^2.0.0"
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
}
},
- "node_modules/micromark-util-encode": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz",
- "integrity": "sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==",
- "dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
+ "node_modules/lightningcss-linux-x64-gnu": {
+ "version": "1.32.0",
+ "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.32.0.tgz",
+ "integrity": "sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==",
+ "cpu": [
+ "x64"
],
- "license": "MIT"
- },
- "node_modules/micromark-util-html-tag-name": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.1.tgz",
- "integrity": "sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==",
"dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
+ "libc": [
+ "glibc"
],
- "license": "MIT"
- },
- "node_modules/micromark-util-normalize-identifier": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.1.tgz",
- "integrity": "sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==",
- "dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "linux"
],
- "license": "MIT",
- "dependencies": {
- "micromark-util-symbol": "^2.0.0"
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
}
},
- "node_modules/micromark-util-resolve-all": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.1.tgz",
- "integrity": "sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==",
+ "node_modules/lightningcss-linux-x64-musl": {
+ "version": "1.32.0",
+ "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.32.0.tgz",
+ "integrity": "sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==",
+ "cpu": [
+ "x64"
+ ],
"dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
+ "libc": [
+ "musl"
],
- "license": "MIT",
- "dependencies": {
- "micromark-util-types": "^2.0.0"
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
}
},
- "node_modules/micromark-util-sanitize-uri": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz",
- "integrity": "sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==",
+ "node_modules/lightningcss-win32-arm64-msvc": {
+ "version": "1.32.0",
+ "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.32.0.tgz",
+ "integrity": "sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==",
+ "cpu": [
+ "arm64"
+ ],
"dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "win32"
],
- "license": "MIT",
- "dependencies": {
- "micromark-util-character": "^2.0.0",
- "micromark-util-encode": "^2.0.0",
- "micromark-util-symbol": "^2.0.0"
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
}
},
- "node_modules/micromark-util-subtokenize": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.1.0.tgz",
- "integrity": "sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==",
+ "node_modules/lightningcss-win32-x64-msvc": {
+ "version": "1.32.0",
+ "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.32.0.tgz",
+ "integrity": "sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==",
+ "cpu": [
+ "x64"
+ ],
"dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "win32"
],
- "license": "MIT",
- "dependencies": {
- "devlop": "^1.0.0",
- "micromark-util-chunked": "^2.0.0",
- "micromark-util-symbol": "^2.0.0",
- "micromark-util-types": "^2.0.0"
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
}
},
- "node_modules/micromark-util-symbol": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz",
- "integrity": "sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==",
+ "node_modules/lodash": {
+ "version": "4.18.1",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.18.1.tgz",
+ "integrity": "sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==",
"dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
- ],
"license": "MIT"
},
- "node_modules/micromark-util-types": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.2.tgz",
- "integrity": "sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==",
+ "node_modules/magic-string": {
+ "version": "0.30.21",
+ "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz",
+ "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==",
"dev": true,
- "funding": [
- {
- "type": "GitHub Sponsors",
- "url": "https://github.com/sponsors/unifiedjs"
- },
- {
- "type": "OpenCollective",
- "url": "https://opencollective.com/unified"
- }
- ],
- "license": "MIT"
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/sourcemap-codec": "^1.5.5"
+ }
},
- "node_modules/micromark/node_modules/debug": {
- "version": "4.4.3",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
- "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
+ "node_modules/math-intrinsics": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
+ "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "ms": "^2.1.3"
- },
"engines": {
- "node": ">=6.0"
- },
- "peerDependenciesMeta": {
- "supports-color": {
- "optional": true
- }
+ "node": ">= 0.4"
}
},
"node_modules/mime": {
@@ -2693,6 +2452,46 @@
"opener": "bin/opener-bin.js"
}
},
+ "node_modules/oxfmt": {
+ "version": "0.45.0",
+ "resolved": "https://registry.npmjs.org/oxfmt/-/oxfmt-0.45.0.tgz",
+ "integrity": "sha512-0o/COoN9fY50bjVeM7PQsNgbhndKurBIeTIcspW033OumksjJJmIVDKjAk5HMwU/GHTxSOdGDdhJ6BRzGPmsHg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "tinypool": "2.1.0"
+ },
+ "bin": {
+ "oxfmt": "bin/oxfmt"
+ },
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/Boshen"
+ },
+ "optionalDependencies": {
+ "@oxfmt/binding-android-arm-eabi": "0.45.0",
+ "@oxfmt/binding-android-arm64": "0.45.0",
+ "@oxfmt/binding-darwin-arm64": "0.45.0",
+ "@oxfmt/binding-darwin-x64": "0.45.0",
+ "@oxfmt/binding-freebsd-x64": "0.45.0",
+ "@oxfmt/binding-linux-arm-gnueabihf": "0.45.0",
+ "@oxfmt/binding-linux-arm-musleabihf": "0.45.0",
+ "@oxfmt/binding-linux-arm64-gnu": "0.45.0",
+ "@oxfmt/binding-linux-arm64-musl": "0.45.0",
+ "@oxfmt/binding-linux-ppc64-gnu": "0.45.0",
+ "@oxfmt/binding-linux-riscv64-gnu": "0.45.0",
+ "@oxfmt/binding-linux-riscv64-musl": "0.45.0",
+ "@oxfmt/binding-linux-s390x-gnu": "0.45.0",
+ "@oxfmt/binding-linux-x64-gnu": "0.45.0",
+ "@oxfmt/binding-linux-x64-musl": "0.45.0",
+ "@oxfmt/binding-openharmony-arm64": "0.45.0",
+ "@oxfmt/binding-win32-arm64-msvc": "0.45.0",
+ "@oxfmt/binding-win32-ia32-msvc": "0.45.0",
+ "@oxfmt/binding-win32-x64-msvc": "0.45.0"
+ }
+ },
"node_modules/package-manager-detector": {
"version": "1.6.0",
"resolved": "https://registry.npmjs.org/package-manager-detector/-/package-manager-detector-1.6.0.tgz",
@@ -2812,40 +2611,6 @@
"node": "^10 || ^12 || >=14"
}
},
- "node_modules/prettier": {
- "version": "3.8.2",
- "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.8.2.tgz",
- "integrity": "sha512-8c3mgTe0ASwWAJK+78dpviD+A8EqhndQPUBpNUIPt6+xWlIigCwfN01lWr9MAede4uqXGTEKeQWTvzb3vjia0Q==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "prettier": "bin/prettier.cjs"
- },
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/prettier/prettier?sponsor=1"
- }
- },
- "node_modules/prettier-plugin-jsdoc": {
- "version": "1.8.0",
- "resolved": "https://registry.npmjs.org/prettier-plugin-jsdoc/-/prettier-plugin-jsdoc-1.8.0.tgz",
- "integrity": "sha512-byW8EBZ1DSA3CPdDGBXfcdqqhh2eq0+HlIOPTGZ6rf9O2p/AwBmtS0e49ot5ZeOdcszj81FyzbyHr/VS0eYpCg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "binary-searching": "^2.0.5",
- "comment-parser": "^1.4.0",
- "mdast-util-from-markdown": "^2.0.0"
- },
- "engines": {
- "node": ">=14.13.1 || >=16.0.0"
- },
- "peerDependencies": {
- "prettier": "^3.0.0"
- }
- },
"node_modules/publint": {
"version": "0.3.18",
"resolved": "https://registry.npmjs.org/publint/-/publint-0.3.18.tgz",
@@ -3162,6 +2927,16 @@
"url": "https://github.com/sponsors/SuperchupuDev"
}
},
+ "node_modules/tinypool": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-2.1.0.tgz",
+ "integrity": "sha512-Pugqs6M0m7Lv1I7FtxN4aoyToKg1C4tu+/381vH35y8oENM/Ai7f7C4StcoK4/+BSw9ebcS8jRiVrORFKCALLw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^20.0.0 || >=22.0.0"
+ }
+ },
"node_modules/tinyrainbow": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-3.1.0.tgz",
@@ -3359,20 +3134,6 @@
"node": ">= 0.8.0"
}
},
- "node_modules/unist-util-stringify-position": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz",
- "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@types/unist": "^3.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/unified"
- }
- },
"node_modules/unrun": {
"version": "0.2.35",
"resolved": "https://registry.npmjs.org/unrun/-/unrun-0.2.35.tgz",
diff --git a/package.json b/package.json
index 62314d6..946b798 100644
--- a/package.json
+++ b/package.json
@@ -41,6 +41,9 @@
"./package.json": "./package.json",
"./sqlite3.wasm": "./dist/sqlite3.wasm"
},
+ "workspaces": [
+ "demos/*"
+ ],
"files": [
"dist",
"README.md"
@@ -52,11 +55,15 @@
"publint": "npx publint",
"check-types": "tsgo",
"build": "tsdown",
+ "dev:sahpool": "npm run dev -w demos/sahpool-demo",
+ "dev:main-thread": "npm run dev -w demos/main-thread-demo",
+ "dev:in-worker": "npm run dev -w demos/in-worker-demo",
"start": "npx http-server --coop",
"start:node": "cd demo && node node.mjs",
- "fix": "npx prettier . --write",
+ "format": "oxfmt",
+ "format:check": "oxfmt --check",
"prepare": "lefthook install",
- "prepublishOnly": "npm run build && npm run fix && npm run publint && npm run check-types",
+ "prepublishOnly": "npm run build && npm run format && npm run publint && npm run check-types",
"deploy": "npm run prepublishOnly && git add . && git commit -am 'New release' && git push && npm publish --tag=latest"
},
"engines": {
@@ -70,9 +77,8 @@
"happy-dom": "20.9.0",
"http-server": "^14.1.1",
"lefthook": "2.1.5",
+ "oxfmt": "^0.45.0",
"playwright": "^1.59.1",
- "prettier": "^3.8.2",
- "prettier-plugin-jsdoc": "^1.8.0",
"publint": "^0.3.18",
"tsdown": "^0.21.8",
"typescript": "^6.0.2",
diff --git a/src/__tests__/bundler-compatibility.test.js b/src/__tests__/bundler-compatibility.test.js
index 4f80b20..51bebcb 100644
--- a/src/__tests__/bundler-compatibility.test.js
+++ b/src/__tests__/bundler-compatibility.test.js
@@ -22,24 +22,17 @@ describe('Vite bundler compatibility', () => {
// 1. Check if hashed WASM file exists in dist/assets
const assetsDir = path.resolve(distDir, 'assets');
const files = fs.readdirSync(assetsDir);
- const wasmFile = files.find(
- (f) => f.startsWith('sqlite3-') && f.endsWith('.wasm'),
- );
+ const wasmFile = files.find((f) => f.startsWith('sqlite3-') && f.endsWith('.wasm'));
expect(wasmFile).toBeDefined();
// 2. Check if the JS bundle contains the hashed WASM filename
const assetsDirJs = path.resolve(distDir, 'assets');
- const jsFiles = fs
- .readdirSync(assetsDirJs)
- .filter((f) => f.endsWith('.js'));
+ const jsFiles = fs.readdirSync(assetsDirJs).filter((f) => f.endsWith('.js'));
const mainBundle = jsFiles.find((f) => f.startsWith('index-'));
expect(mainBundle).toBeDefined();
- const bundleContent = fs.readFileSync(
- path.resolve(assetsDirJs, mainBundle),
- 'utf8',
- );
+ const bundleContent = fs.readFileSync(path.resolve(assetsDirJs, mainBundle), 'utf8');
// It should contain something like: new URL("/assets/sqlite3-hash.wasm", import.meta.url)
expect(bundleContent).toContain(wasmFile);
diff --git a/src/__tests__/sqlite3-node.test.js b/src/__tests__/sqlite3-node.test.js
index 88f50d3..c864b30 100644
--- a/src/__tests__/sqlite3-node.test.js
+++ b/src/__tests__/sqlite3-node.test.js
@@ -38,12 +38,8 @@ test('Node.js build sanity check', async () => {
expect(rowsAfterDelete[0][0]).toBe(1);
// 6. Joins
- db.exec(
- 'CREATE TABLE orders (id INTEGER PRIMARY KEY, user_id INTEGER, product TEXT)',
- );
- db.exec(
- "INSERT INTO orders (user_id, product) VALUES (2, 'Laptop'), (2, 'Mouse')",
- );
+ db.exec('CREATE TABLE orders (id INTEGER PRIMARY KEY, user_id INTEGER, product TEXT)');
+ db.exec("INSERT INTO orders (user_id, product) VALUES (2, 'Laptop'), (2, 'Mouse')");
const joinedRows = [];
db.exec({
@@ -78,9 +74,7 @@ test('Node.js build sanity check', async () => {
db.exec(
"INSERT INTO documents (content) VALUES ('The quick brown fox'), ('Jumped over the lazy dog')",
);
- const ftsRows = db.selectArrays(
- "SELECT content FROM documents WHERE documents MATCH 'fox'",
- );
+ const ftsRows = db.selectArrays("SELECT content FROM documents WHERE documents MATCH 'fox'");
expect(ftsRows).toHaveLength(1);
expect(ftsRows[0][0]).toBe('The quick brown fox');
@@ -88,13 +82,9 @@ test('Node.js build sanity check', async () => {
db.transaction(() => {
db.exec("INSERT INTO test (name) VALUES ('Charlie')");
// Verify inside transaction
- expect(
- db.selectValue("SELECT count(*) FROM test WHERE name = 'Charlie'"),
- ).toBe(1);
+ expect(db.selectValue("SELECT count(*) FROM test WHERE name = 'Charlie'")).toBe(1);
});
- expect(
- db.selectValue("SELECT count(*) FROM test WHERE name = 'Charlie'"),
- ).toBe(1);
+ expect(db.selectValue("SELECT count(*) FROM test WHERE name = 'Charlie'")).toBe(1);
// 10. Subqueries
const subqueryResult = db.selectValue(`
@@ -108,12 +98,8 @@ test('Node.js build sanity check', async () => {
expect(db.selectValue('SELECT log2(8)')).toBe(3);
// Percentile
- db.exec(
- 'CREATE TABLE p_percentile(x); INSERT INTO p_percentile VALUES (1),(2),(3),(4),(5);',
- );
- expect(db.selectValue('SELECT percentile(x, 50) FROM p_percentile')).toBe(
- 3,
- );
+ db.exec('CREATE TABLE p_percentile(x); INSERT INTO p_percentile VALUES (1),(2),(3),(4),(5);');
+ expect(db.selectValue('SELECT percentile(x, 50) FROM p_percentile')).toBe(3);
// DQS=0
expect(() => {
@@ -121,20 +107,14 @@ test('Node.js build sanity check', async () => {
}).toThrow(/no such column/);
// Virtual Tables and special functions
- expect(
- db.selectArrays('SELECT * FROM sqlite_dbpage LIMIT 1').length,
- ).toBeGreaterThanOrEqual(0);
+ expect(db.selectArrays('SELECT * FROM sqlite_dbpage LIMIT 1').length).toBeGreaterThanOrEqual(0);
- db.exec(
- 'CREATE VIRTUAL TABLE rtree_test USING rtree(id, minX, maxX, minY, maxY)',
- );
+ db.exec('CREATE VIRTUAL TABLE rtree_test USING rtree(id, minX, maxX, minY, maxY)');
db.exec('INSERT INTO rtree_test VALUES (1, 0, 10, 0, 10)');
expect(db.selectValue('SELECT id FROM rtree_test')).toBe(1);
db.exec('CREATE TABLE off_test(id); INSERT INTO off_test VALUES (1);');
- expect(
- typeof db.selectValue('SELECT sqlite_offset(id) FROM off_test'),
- ).toBe('number');
+ expect(typeof db.selectValue('SELECT sqlite_offset(id) FROM off_test')).toBe('number');
// 13. Blobs
const blobData = new Uint8Array([0x00, 0xff, 0xaa, 0x55]);
diff --git a/src/__tests__/sqlite3-oo1.browser.test.js b/src/__tests__/sqlite3-oo1.browser.test.js
index c636bb3..0ba233c 100644
--- a/src/__tests__/sqlite3-oo1.browser.test.js
+++ b/src/__tests__/sqlite3-oo1.browser.test.js
@@ -38,12 +38,8 @@ test('Bundler-friendly OO1 API sanity check (browser)', async () => {
expect(rowsAfterDelete[0][0]).toBe(1);
// 6. Joins
- db.exec(
- 'CREATE TABLE orders (id INTEGER PRIMARY KEY, user_id INTEGER, product TEXT)',
- );
- db.exec(
- "INSERT INTO orders (user_id, product) VALUES (2, 'Laptop'), (2, 'Mouse')",
- );
+ db.exec('CREATE TABLE orders (id INTEGER PRIMARY KEY, user_id INTEGER, product TEXT)');
+ db.exec("INSERT INTO orders (user_id, product) VALUES (2, 'Laptop'), (2, 'Mouse')");
const joinedRows = [];
db.exec({
@@ -78,9 +74,7 @@ test('Bundler-friendly OO1 API sanity check (browser)', async () => {
db.exec(
"INSERT INTO documents (content) VALUES ('The quick brown fox'), ('Jumped over the lazy dog')",
);
- const ftsRows = db.selectArrays(
- "SELECT content FROM documents WHERE documents MATCH 'fox'",
- );
+ const ftsRows = db.selectArrays("SELECT content FROM documents WHERE documents MATCH 'fox'");
expect(ftsRows).toHaveLength(1);
expect(ftsRows[0][0]).toBe('The quick brown fox');
@@ -88,13 +82,9 @@ test('Bundler-friendly OO1 API sanity check (browser)', async () => {
db.transaction(() => {
db.exec("INSERT INTO test (name) VALUES ('Charlie')");
// Verify inside transaction
- expect(
- db.selectValue("SELECT count(*) FROM test WHERE name = 'Charlie'"),
- ).toBe(1);
+ expect(db.selectValue("SELECT count(*) FROM test WHERE name = 'Charlie'")).toBe(1);
});
- expect(
- db.selectValue("SELECT count(*) FROM test WHERE name = 'Charlie'"),
- ).toBe(1);
+ expect(db.selectValue("SELECT count(*) FROM test WHERE name = 'Charlie'")).toBe(1);
// 10. Subqueries
const subqueryResult = db.selectValue(`
@@ -108,12 +98,8 @@ test('Bundler-friendly OO1 API sanity check (browser)', async () => {
expect(db.selectValue('SELECT log2(8)')).toBe(3);
// Percentile
- db.exec(
- 'CREATE TABLE p_percentile(x); INSERT INTO p_percentile VALUES (1),(2),(3),(4),(5);',
- );
- expect(db.selectValue('SELECT percentile(x, 50) FROM p_percentile')).toBe(
- 3,
- );
+ db.exec('CREATE TABLE p_percentile(x); INSERT INTO p_percentile VALUES (1),(2),(3),(4),(5);');
+ expect(db.selectValue('SELECT percentile(x, 50) FROM p_percentile')).toBe(3);
// DQS=0
expect(() => {
@@ -121,20 +107,14 @@ test('Bundler-friendly OO1 API sanity check (browser)', async () => {
}).toThrow(/no such column/);
// Virtual Tables and special functions
- expect(
- db.selectArrays('SELECT * FROM sqlite_dbpage LIMIT 1').length,
- ).toBeGreaterThanOrEqual(0);
+ expect(db.selectArrays('SELECT * FROM sqlite_dbpage LIMIT 1').length).toBeGreaterThanOrEqual(0);
- db.exec(
- 'CREATE VIRTUAL TABLE rtree_test USING rtree(id, minX, maxX, minY, maxY)',
- );
+ db.exec('CREATE VIRTUAL TABLE rtree_test USING rtree(id, minX, maxX, minY, maxY)');
db.exec('INSERT INTO rtree_test VALUES (1, 0, 10, 0, 10)');
expect(db.selectValue('SELECT id FROM rtree_test')).toBe(1);
db.exec('CREATE TABLE off_test(id); INSERT INTO off_test VALUES (1);');
- expect(
- typeof db.selectValue('SELECT sqlite_offset(id) FROM off_test'),
- ).toBe('number');
+ expect(typeof db.selectValue('SELECT sqlite_offset(id) FROM off_test')).toBe('number');
// 13. Blobs
const blobData = new Uint8Array([0x00, 0xff, 0xaa, 0x55]);
diff --git a/src/__tests__/sqlite3-sahpool-vfs.browser.test.js b/src/__tests__/sqlite3-sahpool-vfs.browser.test.js
index 4d944e0..e0148b2 100644
--- a/src/__tests__/sqlite3-sahpool-vfs.browser.test.js
+++ b/src/__tests__/sqlite3-sahpool-vfs.browser.test.js
@@ -1,12 +1,9 @@
import { expect, test } from 'vitest';
test('OpfsSAHPoolVfs sanity check in Worker (browser)', async () => {
- const worker = new Worker(
- new URL('./workers/sqlite3-sahpool.worker.js', import.meta.url),
- {
- type: 'module',
- },
- );
+ const worker = new Worker(new URL('./workers/sqlite3-sahpool.worker.js', import.meta.url), {
+ type: 'module',
+ });
const result = await new Promise((resolve, reject) => {
worker.onmessage = (e) => {
diff --git a/src/__tests__/workers/sqlite3-sahpool.worker.js b/src/__tests__/workers/sqlite3-sahpool.worker.js
index 251f919..97fbb31 100644
--- a/src/__tests__/workers/sqlite3-sahpool.worker.js
+++ b/src/__tests__/workers/sqlite3-sahpool.worker.js
@@ -21,11 +21,7 @@ self.onmessage = async () => {
callback: (row) => rows.push(row),
});
- if (
- rows.length !== 2 ||
- rows[0].name !== 'Alice' ||
- rows[1].name !== 'Bob'
- ) {
+ if (rows.length !== 2 || rows[0].name !== 'Alice' || rows[1].name !== 'Bob') {
throw new Error('CRUD check failed');
}
@@ -39,12 +35,8 @@ self.onmessage = async () => {
}
// 2. Joins
- db.exec(
- 'CREATE TABLE orders (id INTEGER PRIMARY KEY, user_id INTEGER, product TEXT)',
- );
- db.exec(
- "INSERT INTO orders (user_id, product) VALUES (2, 'Laptop'), (2, 'Mouse')",
- );
+ db.exec('CREATE TABLE orders (id INTEGER PRIMARY KEY, user_id INTEGER, product TEXT)');
+ db.exec("INSERT INTO orders (user_id, product) VALUES (2, 'Laptop'), (2, 'Mouse')");
const joinedRows = [];
db.exec({
sql: 'SELECT test.name, orders.product FROM test INNER JOIN orders ON test.id = orders.user_id',
@@ -66,9 +58,7 @@ self.onmessage = async () => {
// 4. FTS5
db.exec('CREATE VIRTUAL TABLE docs USING fts5(content)');
db.exec("INSERT INTO docs (content) VALUES ('sqlite is great')");
- const ftsResult = db.selectValue(
- "SELECT content FROM docs WHERE docs MATCH 'sqlite'",
- );
+ const ftsResult = db.selectValue("SELECT content FROM docs WHERE docs MATCH 'sqlite'");
if (ftsResult !== 'sqlite is great') {
throw new Error('FTS5 check failed');
}
@@ -121,9 +111,7 @@ self.onmessage = async () => {
throw new Error('pauseVfs should have failed with open DB handles');
} catch (e) {
if (!e.message.includes('Cannot pause VFS')) {
- throw new Error(
- 'pauseVfs failed with unexpected error: ' + e.message,
- );
+ throw new Error('pauseVfs failed with unexpected error: ' + e.message);
}
}
db.close();
diff --git a/src/index.d.ts b/src/index.d.ts
index e28b540..d860abe 100644
--- a/src/index.d.ts
+++ b/src/index.d.ts
@@ -1,12 +1,5 @@
/** Types of values that can be passed to/retrieved from SQLite. */
-export type SqlValue =
- | string
- | number
- | null
- | bigint
- | Uint8Array
- | Int8Array
- | ArrayBuffer;
+export type SqlValue = string | number | null | bigint | Uint8Array | Int8Array | ArrayBuffer;
/** A PreparedStatement or a WASM pointer to one. */
export type StmtPtr = PreparedStatement | WasmPointer;
@@ -216,9 +209,7 @@ export class PreparedStatement {
* the value. Index can be the index number (**ACHTUNG**: 1-based!) or the
* string corresponding to a named parameter.
*/
- bindAsBlob(
- value: string | null | undefined | Uint8Array | Int8Array | ArrayBuffer,
- ): this;
+ bindAsBlob(value: string | null | undefined | Uint8Array | Int8Array | ArrayBuffer): this;
bindAsBlob(
idx: number | string,
value: string | null | undefined | Uint8Array | Int8Array | ArrayBuffer,
@@ -485,11 +476,7 @@ export type ExecOptions = {
*/
callback?:
| ((
- row:
- | SqlValue[]
- | Record
- | PreparedStatement
- | SqlValue,
+ row: SqlValue[] | Record | PreparedStatement | SqlValue,
stmt: PreparedStatement,
) => void | false)
| string;
@@ -855,16 +842,12 @@ export class Database {
*/
exec(
sql: FlexibleString,
- opts?: (ExecBaseOptions &
- ExecRowModeArrayOptions &
- ExecReturnThisOptions) & {
+ opts?: (ExecBaseOptions & ExecRowModeArrayOptions & ExecReturnThisOptions) & {
sql?: undefined;
},
): this;
exec(
- opts: (ExecBaseOptions &
- ExecRowModeArrayOptions &
- ExecReturnThisOptions) & {
+ opts: (ExecBaseOptions & ExecRowModeArrayOptions & ExecReturnThisOptions) & {
sql: FlexibleString;
},
): this;
@@ -1101,10 +1084,7 @@ export class Database {
* Creating an aggregate or window function requires the options-object form,
* as described below.
*/
- createFunction(
- name: string,
- func: (ctxPtr: number, ...values: SqlValue[]) => SqlValue,
- ): this;
+ createFunction(name: string, func: (ctxPtr: number, ...values: SqlValue[]) => SqlValue): this;
createFunction(
name: string,
func: (ctxPtr: number, ...values: SqlValue[]) => void,
@@ -1112,17 +1092,10 @@ export class Database {
): this;
createFunction(
name: string,
- options:
- | ScalarFunctionOptions
- | AggregateFunctionOptions
- | WindowFunctionOptions,
+ options: ScalarFunctionOptions | AggregateFunctionOptions | WindowFunctionOptions,
): this;
createFunction(
- options: (
- | ScalarFunctionOptions
- | AggregateFunctionOptions
- | WindowFunctionOptions
- ) & {
+ options: (ScalarFunctionOptions | AggregateFunctionOptions | WindowFunctionOptions) & {
name: string;
},
): this;
@@ -1155,20 +1128,14 @@ export class Database {
* treated like an argument to Stmt.bind(), so may be any type supported by
* that function. Throws on error.
*/
- selectObject(
- sql: FlexibleString,
- bind?: BindingSpec,
- ): Record | undefined;
+ selectObject(sql: FlexibleString, bind?: BindingSpec): Record | undefined;
/**
* Works identically to {@link Database#selectArrays} except that each value in
* the returned array is an object, as per the `"object"` rowMode option to
* {@link Database#exec}.
*/
- selectObjects(
- sql: FlexibleString,
- bind?: BindingSpec,
- ): Record[];
+ selectObjects(sql: FlexibleString, bind?: BindingSpec): Record[];
/**
* Prepares the given SQL, `step()`s the resulting {@link PreparedStatement}
@@ -1212,11 +1179,7 @@ export class Database {
* argument is desired but no bind data are needed, pass `undefined` for the
* 2nd argument. If there are no result rows, an empty array is returned.
*/
- selectValues(
- sql: FlexibleString,
- bind?: BindingSpec,
- asType?: SQLiteDataType,
- ): SqlValue[];
+ selectValues(sql: FlexibleString, bind?: BindingSpec, asType?: SQLiteDataType): SqlValue[];
/**
* Returns the number of currently-opened {@link PreparedStatement} handles for
@@ -1272,10 +1235,7 @@ export class Database {
* expected. If it does not throw, it returns its `db` argument (`this`, if
* called as a member function).
*/
- static checkRc: (
- db: Database | number | null,
- resultCode: number,
- ) => Database;
+ static checkRc: (db: Database | number | null, resultCode: number) => Database;
/** Instance method version of {@link checkRc()}. */
checkRc: (resultCode: number) => this;
@@ -1592,10 +1552,7 @@ type Worker1MessageBusEnvelope = {
};
/** Worker API #1 input message envelope. */
-type Worker1InputEnvelope<
- T extends string,
- Args = unknown,
-> = Worker1MessageBusEnvelope & {
+type Worker1InputEnvelope = Worker1MessageBusEnvelope & {
type: T;
args?: Args;
/** Timestamp set by the promiser before posting a message. */
@@ -1603,10 +1560,7 @@ type Worker1InputEnvelope<
};
/** Worker API #1 output message envelope. */
-type Worker1OutputEnvelope<
- T extends string,
- Result = unknown,
-> = Worker1MessageBusEnvelope & {
+type Worker1OutputEnvelope = Worker1MessageBusEnvelope & {
type: T;
result: Result;
};
@@ -1902,9 +1856,7 @@ export class SQLiteStruct {
* Any exceptions thrown by ondispose callbacks are ignored but may induce a
* warning in the console.
*/
- ondispose?:
- | (() => void)
- | ((() => void) | SQLiteStruct | WasmPointer | string)[];
+ ondispose?: (() => void) | ((() => void) | SQLiteStruct | WasmPointer | string)[];
/**
* Client code may call `aStructInstance.addOnDispose()` to push one or more
@@ -1977,10 +1929,7 @@ export class SQLiteStruct {
): (name: string, func: Function | WasmPointer) => this;
/** Behaves exactly like {@link SQLiteStruct#installMethods}. */
- installMethod(
- methodsObject: Record,
- applyArgcCheck?: boolean,
- ): this;
+ installMethod(methodsObject: Record, applyArgcCheck?: boolean): this;
/**
* Installs methods into this StructType-type instance. Each entry in the
@@ -1997,10 +1946,7 @@ export class SQLiteStruct {
*
* On success, returns this object. Throws on error.
*/
- installMethods(
- methodsObject: Record,
- applyArgcCheck?: boolean,
- ): this;
+ installMethods(methodsObject: Record, applyArgcCheck?: boolean): this;
}
export class sqlite3_vfs extends SQLiteStruct {
@@ -2019,11 +1965,7 @@ export class sqlite3_vfs extends SQLiteStruct {
flags: number,
pOutputFlags: WasmPointer,
) => Sqlite3Result;
- xDelete: (
- vfsPtr: WasmPointer,
- zName: WasmPointer,
- syncDir: number,
- ) => Sqlite3Result;
+ xDelete: (vfsPtr: WasmPointer, zName: WasmPointer, syncDir: number) => Sqlite3Result;
xAccess: (
vfsPtr: WasmPointer,
zName: WasmPointer,
@@ -2038,34 +1980,15 @@ export class sqlite3_vfs extends SQLiteStruct {
) => Sqlite3Result;
xDlOpen: (vfsPtr: WasmPointer, zFilename: WasmPointer) => WasmPointer;
xDlError: (vfsPtr: WasmPointer, nByte: number, zErrMsg: WasmPointer) => void;
- xDlSym: (
- vfsPtr: WasmPointer,
- pHandle: WasmPointer,
- zSymbol: WasmPointer,
- ) => WasmPointer;
+ xDlSym: (vfsPtr: WasmPointer, pHandle: WasmPointer, zSymbol: WasmPointer) => WasmPointer;
xDlClose: (vfsPtr: WasmPointer, pHandle: WasmPointer) => void;
- xRandomness: (
- vfsPtr: WasmPointer,
- nByte: number,
- zOut: WasmPointer,
- ) => Sqlite3Result;
+ xRandomness: (vfsPtr: WasmPointer, nByte: number, zOut: WasmPointer) => Sqlite3Result;
xSleep: (vfsPtr: WasmPointer, microseconds: number) => Sqlite3Result;
xCurrentTime: (vfsPtr: WasmPointer, pTimeOut: WasmPointer) => Sqlite3Result;
xGetLastError: (vfsPtr: WasmPointer, nBuf: number, zBuf: WasmPointer) => void;
- xCurrentTimeInt64: (
- vfsPtr: WasmPointer,
- pTimeOut: WasmPointer,
- ) => Sqlite3Result;
- xSetSystemCall: (
- vfsPtr: WasmPointer,
- zName: WasmPointer,
- pCall: WasmPointer,
- ) => Sqlite3Result;
- xGetSystemCall: (
- vfsPtr: WasmPointer,
- zName: WasmPointer,
- pCall: WasmPointer,
- ) => WasmPointer;
+ xCurrentTimeInt64: (vfsPtr: WasmPointer, pTimeOut: WasmPointer) => Sqlite3Result;
+ xSetSystemCall: (vfsPtr: WasmPointer, zName: WasmPointer, pCall: WasmPointer) => Sqlite3Result;
+ xGetSystemCall: (vfsPtr: WasmPointer, zName: WasmPointer, pCall: WasmPointer) => WasmPointer;
xNextSystemCall: (vfsPtr: WasmPointer, zName: WasmPointer) => WasmPointer;
}
@@ -2074,32 +1997,15 @@ export class sqlite3_io_methods extends SQLiteStruct {
constructor(pointer?: WasmPointer);
xClose: (file: WasmPointer) => Sqlite3Result;
- xRead: (
- file: WasmPointer,
- buf: WasmPointer,
- iAmt: number,
- iOfst: number,
- ) => Sqlite3Result;
- xWrite: (
- file: WasmPointer,
- buf: WasmPointer,
- iAmt: number,
- iOfst: number,
- ) => Sqlite3Result;
+ xRead: (file: WasmPointer, buf: WasmPointer, iAmt: number, iOfst: number) => Sqlite3Result;
+ xWrite: (file: WasmPointer, buf: WasmPointer, iAmt: number, iOfst: number) => Sqlite3Result;
xTruncate: (file: WasmPointer, size: number) => Sqlite3Result;
xSync: (file: WasmPointer, flags: number) => Sqlite3Result;
xFileSize: (file: WasmPointer, pSize: WasmPointer) => Sqlite3Result;
xLock: (file: WasmPointer, lockType: number) => Sqlite3Result;
xUnlock: (file: WasmPointer, lockType: number) => Sqlite3Result;
- xCheckReservedLock: (
- file: WasmPointer,
- pResOut: WasmPointer,
- ) => Sqlite3Result;
- xFileControl: (
- file: WasmPointer,
- op: number,
- pArg: WasmPointer,
- ) => Sqlite3Result;
+ xCheckReservedLock: (file: WasmPointer, pResOut: WasmPointer) => Sqlite3Result;
+ xFileControl: (file: WasmPointer, op: number, pArg: WasmPointer) => Sqlite3Result;
xSectorSize: (file: WasmPointer) => Sqlite3Result;
xDeviceCharacteristics: (file: WasmPointer) => Sqlite3Result;
xShmMap: (
@@ -2109,20 +2015,10 @@ export class sqlite3_io_methods extends SQLiteStruct {
bExtend: number,
pp: WasmPointer,
) => Sqlite3Result;
- xShmLock: (
- file: WasmPointer,
- offset: number,
- n: number,
- flags: number,
- ) => Sqlite3Result;
+ xShmLock: (file: WasmPointer, offset: number, n: number, flags: number) => Sqlite3Result;
xShmBarrier: (file: WasmPointer) => void;
xShmUnmap: (file: WasmPointer, deleteFlag: number) => Sqlite3Result;
- xFetch: (
- file: WasmPointer,
- iOfst: number,
- iAmt: number,
- pp: WasmPointer,
- ) => Sqlite3Result;
+ xFetch: (file: WasmPointer, iOfst: number, iAmt: number, pp: WasmPointer) => Sqlite3Result;
xUnfetch: (file: WasmPointer, iOfst: number, p: WasmPointer) => Sqlite3Result;
}
@@ -2199,11 +2095,7 @@ export class sqlite3_module extends SQLiteStruct {
) => Sqlite3Result;
xNext: (pCursor: WasmPointer) => Sqlite3Result;
xEof: (pCursor: WasmPointer) => Sqlite3Result;
- xColumn: (
- pCursor: WasmPointer,
- pContext: WasmPointer,
- i: number,
- ) => Sqlite3Result;
+ xColumn: (pCursor: WasmPointer, pContext: WasmPointer, i: number) => Sqlite3Result;
xRowid: (pCursor: WasmPointer, pRowid: WasmPointer) => Sqlite3Result;
xUpdate: (
pVtab: WasmPointer,
@@ -2448,9 +2340,7 @@ export type Sqlite3Static = {
vfs?: {
struct: sqlite3_vfs;
methods: {
- [K in keyof sqlite3_vfs as K extends `x${string}`
- ? K
- : never]?: sqlite3_vfs[K];
+ [K in keyof sqlite3_vfs as K extends `x${string}` ? K : never]?: sqlite3_vfs[K];
};
applyArgcCheck?: boolean;
name?: string;
@@ -2699,14 +2589,8 @@ export type WASM_API = {
* returns `[ptr,n]`, where `ptr` is the C-string's pointer and n is its
* cstrlen().
*/
- allocCString(
- jsString: string,
- returnPtrAndLength: undefined | false,
- ): WasmPointer;
- allocCString(
- jsString: string,
- returnPtrAndLength: true,
- ): [WasmPointer, number];
+ allocCString(jsString: string, returnPtrAndLength: undefined | false): WasmPointer;
+ allocCString(jsString: string, returnPtrAndLength: true): [WasmPointer, number];
/**
* Creates a C-style array, using `alloc()`, suitable for passing to a C-level
@@ -2798,17 +2682,7 @@ export type WASM_API = {
* instead of an integer.
*/
sizeofIR: (
- irStr:
- | 'i8'
- | 'i16'
- | 'i32'
- | 'f32'
- | 'float'
- | 'i64'
- | 'f64'
- | 'double'
- | '_'
- | string,
+ irStr: 'i8' | 'i16' | 'i32' | 'f32' | 'float' | 'i64' | 'f64' | 'double' | '_' | string,
) => Sqlite3Result;
/* --------------------------------------------------------------------------
@@ -2886,14 +2760,8 @@ export type WASM_API = {
* Works just like `allocCString()` but stores the result of the allocation in
* the current scope.
*/
- scopedAllocCString(
- jsString: string,
- returnWithLength: undefined | false,
- ): WasmPointer;
- scopedAllocCString(
- jsString: string,
- returnPtrAndLength: true,
- ): [WasmPointer, number];
+ scopedAllocCString(jsString: string, returnWithLength: undefined | false): WasmPointer;
+ scopedAllocCString(jsString: string, returnPtrAndLength: true): [WasmPointer, number];
/**
* Works just like `allocPtr()` but stores the result of the allocation in the
@@ -3231,10 +3099,7 @@ export type WASM_API = {
* To be clear, the expected C-style arguments to be passed to this function
* are `(int, char **)` (optionally const-qualified).
*/
- cArgvToJs: (
- argc: number,
- pArgv: WasmPointer,
- ) => (string | null)[] | undefined;
+ cArgvToJs: (argc: number, pArgv: WasmPointer) => (string | null)[] | undefined;
/**
* Expects its argument to be a pointer into the WASM heap memory which refers
@@ -3276,11 +3141,7 @@ export type WASM_API = {
* copy partial multibyte characters this way, and converting such strings
* back to JS strings will have undefined results.
*/
- cstrncpy: (
- tgtPtr: WasmPointer,
- srcPtr: WasmPointer,
- n: number,
- ) => Sqlite3Result;
+ cstrncpy: (tgtPtr: WasmPointer, srcPtr: WasmPointer, n: number) => Sqlite3Result;
/**
* Forewarning: this API is somewhat complicated and is, in practice, never
@@ -3357,9 +3218,7 @@ export type WASM_API = {
* sets it to the value 0. Even in such cases, calls must behave as if the
* allocated memory has exactly `srcTypedArray.byteLength` usable bytes.
*/
- allocFromTypedArray: (
- srcTypedArray: Uint8Array | Int8Array | ArrayBuffer,
- ) => WasmPointer;
+ allocFromTypedArray: (srcTypedArray: Uint8Array | Int8Array | ArrayBuffer) => WasmPointer;
/* ==========================================================================
* Bridging JS/WASM Functions
@@ -3936,15 +3795,8 @@ export type CAPI = {
| CAPI['SQLITE_CONFIG_URI'],
arg: number,
): Sqlite3Result;
- sqlite3_config(
- op: CAPI['SQLITE_CONFIG_LOOKASIDE'],
- arg1: number,
- arg2: number,
- ): Sqlite3Result;
- sqlite3_config(
- op: CAPI['SQLITE_CONFIG_MEMDB_MAXSIZE'],
- arg: bigint,
- ): Sqlite3Result;
+ sqlite3_config(op: CAPI['SQLITE_CONFIG_LOOKASIDE'], arg1: number, arg2: number): Sqlite3Result;
+ sqlite3_config(op: CAPI['SQLITE_CONFIG_MEMDB_MAXSIZE'], arg: bigint): Sqlite3Result;
/**
* Used to make configuration changes to a database connection. The interface
@@ -4332,12 +4184,7 @@ export type CAPI = {
sqlite3_trace_v2: (
db: DbPtr,
mask: number,
- xCallback: (
- reason: number,
- cbArg: WasmPointer,
- arg1: WasmPointer,
- arg2: WasmPointer,
- ) => number,
+ xCallback: (reason: number, cbArg: WasmPointer, arg1: WasmPointer, arg2: WasmPointer) => number,
) => Sqlite3Result;
/**
@@ -4371,10 +4218,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/c3ref/open.html
*/
- sqlite3_open: (
- filename: string | WasmPointer,
- ppDb: WasmPointer,
- ) => Sqlite3Result;
+ sqlite3_open: (filename: string | WasmPointer, ppDb: WasmPointer) => Sqlite3Result;
/**
* Open an SQLite database file as specified by the `filename` argument
@@ -4407,10 +4251,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/c3ref/uri_parameter.html
*/
- sqlite3_uri_parameter: (
- uri: string | WasmPointer,
- param: string | WasmPointer,
- ) => string | null;
+ sqlite3_uri_parameter: (uri: string | WasmPointer, param: string | WasmPointer) => string | null;
/**
* Assumes that `param` is a boolean parameter and returns true (1) or false
@@ -4732,13 +4573,7 @@ export type CAPI = {
sqlite3_bind_blob: (
stmt: StmtPtr,
idx: number,
- blob:
- | WasmPointer
- | string
- | readonly string[]
- | Int8Array
- | Uint8Array
- | ArrayBuffer,
+ blob: WasmPointer | string | readonly string[] | Int8Array | Uint8Array | ArrayBuffer,
n: number,
dtor: DtorType,
) => Sqlite3Result;
@@ -4753,11 +4588,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/c3ref/bind_blob.html
*/
- sqlite3_bind_double: (
- stmt: StmtPtr,
- idx: number,
- value: number,
- ) => Sqlite3Result;
+ sqlite3_bind_double: (stmt: StmtPtr, idx: number, value: number) => Sqlite3Result;
/**
* Bind an integer number to a parameter in a prepared statement.
@@ -4768,11 +4599,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/c3ref/bind_blob.html
*/
- sqlite3_bind_int: (
- stmt: StmtPtr,
- idx: number,
- value: number,
- ) => Sqlite3Result;
+ sqlite3_bind_int: (stmt: StmtPtr, idx: number, value: number) => Sqlite3Result;
/**
* Bind a 64-bit integer number to a parameter in a prepared statement.
@@ -4783,11 +4610,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/c3ref/bind_blob.html
*/
- sqlite3_bind_int64: (
- stmt: StmtPtr,
- idx: number,
- value: bigint,
- ) => Sqlite3Result;
+ sqlite3_bind_int64: (stmt: StmtPtr, idx: number, value: bigint) => Sqlite3Result;
/**
* Bind a `NULL` value to a parameter in a prepared statement.
@@ -4819,13 +4642,7 @@ export type CAPI = {
sqlite3_bind_text: (
stmt: StmtPtr,
idx: number,
- text:
- | string
- | WasmPointer
- | readonly string[]
- | Int8Array
- | Uint8Array
- | ArrayBuffer,
+ text: string | WasmPointer | readonly string[] | Int8Array | Uint8Array | ArrayBuffer,
n: number,
dtor: DtorType,
) => Sqlite3Result;
@@ -4888,10 +4705,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/c3ref/bind_parameter_index.html
*/
- sqlite3_bind_parameter_index: (
- stmt: StmtPtr,
- name: string | WasmPointer,
- ) => Sqlite3Result;
+ sqlite3_bind_parameter_index: (stmt: StmtPtr, name: string | WasmPointer) => Sqlite3Result;
/**
* The sqlite3_bind_parameter_name(P,N) interface returns the name of the N-th
@@ -5178,9 +4992,7 @@ export type CAPI = {
nArg: number,
eTextRep: CAPI['SQLITE_UTF8'],
pApp: WasmPointer,
- xFunc:
- | ((ctx: WasmPointer, ...values: SqlValue[]) => SqlValue)
- | WasmPointer,
+ xFunc: ((ctx: WasmPointer, ...values: SqlValue[]) => SqlValue) | WasmPointer,
xStep: ((ctx: WasmPointer, ...values: SqlValue[]) => void) | WasmPointer,
xFinal: ((ctx: WasmPointer) => SqlValue) | WasmPointer,
) => Sqlite3Result;
@@ -5211,9 +5023,7 @@ export type CAPI = {
nArg: number,
eTextRep: CAPI['SQLITE_UTF8'],
pApp: WasmPointer,
- xFunc:
- | ((ctx: WasmPointer, ...values: SqlValue[]) => SqlValue)
- | WasmPointer,
+ xFunc: ((ctx: WasmPointer, ...values: SqlValue[]) => SqlValue) | WasmPointer,
xStep: ((ctx: WasmPointer, ...values: SqlValue[]) => void) | WasmPointer,
xFinal: ((ctx: WasmPointer) => SqlValue) | WasmPointer,
xDestroy: (() => void) | WasmPointer,
@@ -5246,9 +5056,7 @@ export type CAPI = {
nArg: number,
eTextRep: CAPI['SQLITE_UTF8'],
pApp: WasmPointer,
- xStep:
- | ((ctx: WasmPointer, ...values: SqlValue[]) => SqlValue)
- | WasmPointer,
+ xStep: ((ctx: WasmPointer, ...values: SqlValue[]) => SqlValue) | WasmPointer,
xFinal: ((ctx: WasmPointer) => SqlValue) | WasmPointer,
xValue: ((ctx: WasmPointer) => void) | WasmPointer,
xInverse: ((ctx: WasmPointer, ...values: SqlValue[]) => void) | WasmPointer,
@@ -5313,10 +5121,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/c3ref/value_blob.html
*/
- sqlite3_value_pointer: (
- sqliteValue: WasmPointer,
- type: string | WasmPointer,
- ) => WasmPointer;
+ sqlite3_value_pointer: (sqliteValue: WasmPointer, type: string | WasmPointer) => WasmPointer;
/**
* Extract a `TEXT` value from a protected `sqlite3_value` object.
@@ -5463,10 +5268,7 @@ export type CAPI = {
* See
* https://sqlite.org/wasm/doc/trunk/api-c-style.md#sqlite3_js_aggregate_context
*/
- sqlite3_js_aggregate_context: (
- ctx: WasmPointer,
- nBytes: number,
- ) => WasmPointer;
+ sqlite3_js_aggregate_context: (ctx: WasmPointer, nBytes: number) => WasmPointer;
/**
* Returns a copy of the pointer that was the `pUserData` parameter (the 5th
@@ -5548,11 +5350,7 @@ export type CAPI = {
* Sqlite3_set_errmsg() is a WASM-internal-use-only function which is like
* sqlite3_result_error() but targets a database connection's error state.
*/
- sqlite3_set_errmsg: (
- db: DbPtr,
- errCode: number,
- msg: string | WasmPointer,
- ) => Sqlite3Result;
+ sqlite3_set_errmsg: (db: DbPtr, errCode: number, msg: string | WasmPointer) => Sqlite3Result;
/**
* Sets the result from an application-defined function to be the `BLOB` whose
@@ -5606,11 +5404,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/c3ref/result_blob.html
*/
- sqlite3_result_error: (
- ctx: WasmPointer,
- msg: string | WasmPointer,
- msgLen: number,
- ) => void;
+ sqlite3_result_error: (ctx: WasmPointer, msg: string | WasmPointer, msgLen: number) => void;
/**
* Causes SQLite to throw an error indicating that a string or BLOB is too
@@ -5804,16 +5598,7 @@ export type CAPI = {
*/
sqlite3_result_js: (
ctx: WasmPointer,
- val:
- | Error
- | null
- | boolean
- | number
- | bigint
- | string
- | Uint8Array
- | Int8Array
- | undefined,
+ val: Error | null | boolean | number | bigint | string | Uint8Array | Int8Array | undefined,
) => void;
/**
@@ -5900,12 +5685,7 @@ export type CAPI = {
db: DbPtr,
cbArg: WasmPointer,
callback:
- | ((
- cbArg: WasmPointer,
- db: DbPtr,
- eTextRep: number,
- name: string | WasmPointer,
- ) => void)
+ | ((cbArg: WasmPointer, db: DbPtr, eTextRep: number, name: string | WasmPointer) => void)
| WasmPointer,
) => Sqlite3Result;
@@ -5971,11 +5751,7 @@ export type CAPI = {
sqlite3_txn_state: (
db: DbPtr,
schema: string | WasmPointer,
- ) =>
- | CAPI['SQLITE_TXN_NONE']
- | CAPI['SQLITE_TXN_READ']
- | CAPI['SQLITE_TXN_WRITE']
- | -1;
+ ) => CAPI['SQLITE_TXN_NONE'] | CAPI['SQLITE_TXN_READ'] | CAPI['SQLITE_TXN_WRITE'] | -1;
/**
* Registers a callback function to be invoked whenever a transaction is
@@ -6112,9 +5888,7 @@ export type CAPI = {
* See https://www.sqlite.org/c3ref/auto_extension.html
*/
sqlite3_auto_extension: (
- xEntryPoint:
- | ((db: DbPtr, pzErrMsg: WasmPointer, pThunk: WasmPointer) => number)
- | WasmPointer,
+ xEntryPoint: ((db: DbPtr, pzErrMsg: WasmPointer, pThunk: WasmPointer) => number) | WasmPointer,
) => Sqlite3Result;
/**
@@ -6252,11 +6026,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/c3ref/overload_function.html
*/
- sqlite3_overload_function: (
- db: DbPtr,
- funcName: string,
- nArgs: number,
- ) => Sqlite3Result;
+ sqlite3_overload_function: (db: DbPtr, funcName: string, nArgs: number) => Sqlite3Result;
/**
* Returns a pointer to a VFS given its name. Names are case-sensitive.
@@ -6293,9 +6063,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/c3ref/vfs_find.html
*/
- sqlite3_vfs_unregister: (
- vfs: sqlite3_vfs | WasmPointer | string,
- ) => Sqlite3Result;
+ sqlite3_vfs_unregister: (vfs: sqlite3_vfs | WasmPointer | string) => Sqlite3Result;
/**
* Low-Level Control Of Database Files
@@ -6386,11 +6154,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/c3ref/keyword_count.html
*/
- sqlite3_keyword_name: (
- i: number,
- pOut: WasmPointer,
- pOutLen: WasmPointer,
- ) => Sqlite3Result;
+ sqlite3_keyword_name: (i: number, pOut: WasmPointer, pOutLen: WasmPointer) => Sqlite3Result;
/**
* Checks to see whether or not the `n`-byte UTF8 identifier that `name`
@@ -6402,10 +6166,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/c3ref/keyword_count.html
*/
- sqlite3_keyword_check: (
- name: string | WasmPointer,
- n: number,
- ) => Sqlite3Result;
+ sqlite3_keyword_check: (name: string | WasmPointer, n: number) => Sqlite3Result;
/**
* Used to retrieve runtime status information about the performance of
@@ -6570,10 +6331,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/c3ref/stricmp.html
*/
- sqlite3_stricmp: (
- str1: string | WasmPointer,
- str2: string | WasmPointer,
- ) => Sqlite3Result;
+ sqlite3_stricmp: (str1: string | WasmPointer, str2: string | WasmPointer) => Sqlite3Result;
/**
* Compare the contents of two buffers containing UTF-8 strings in a
@@ -6604,10 +6362,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/c3ref/strglob.html
*/
- sqlite3_strglob: (
- glob: string | WasmPointer,
- str: string | WasmPointer,
- ) => Sqlite3Result;
+ sqlite3_strglob: (glob: string | WasmPointer, str: string | WasmPointer) => Sqlite3Result;
/**
* Returns zero if and only if string `str` matches the `LIKE` pattern
@@ -6704,9 +6459,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/c3ref/vtab_distinct.html
*/
- sqlite3_vtab_distinct: (
- indexInfo: sqlite3_index_info | WasmPointer,
- ) => Sqlite3Result;
+ sqlite3_vtab_distinct: (indexInfo: sqlite3_index_info | WasmPointer) => Sqlite3Result;
/**
* Identify and handle `IN` constraints in `xBestIndex`.
@@ -6743,10 +6496,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/c3ref/vtab_in_first.html
*/
- sqlite3_vtab_in_first: (
- sqlValue: WasmPointer,
- ppOut: WasmPointer,
- ) => Sqlite3Result;
+ sqlite3_vtab_in_first: (sqlValue: WasmPointer, ppOut: WasmPointer) => Sqlite3Result;
/**
* Find all elements on the right-hand side of an IN constraint.
@@ -6764,10 +6514,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/c3ref/vtab_in_first.html
*/
- sqlite3_vtab_in_next: (
- sqlValue: WasmPointer,
- ppOut: WasmPointer,
- ) => Sqlite3Result;
+ sqlite3_vtab_in_next: (sqlValue: WasmPointer, ppOut: WasmPointer) => Sqlite3Result;
/**
* Constraint values in `xBestIndex()`
@@ -6846,11 +6593,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/c3ref/preupdate_hook.html
*/
- sqlite3_preupdate_old: (
- db: DbPtr,
- colIdx: number,
- sqlValue: WasmPointer,
- ) => Sqlite3Result;
+ sqlite3_preupdate_old: (db: DbPtr, colIdx: number, sqlValue: WasmPointer) => Sqlite3Result;
/**
* Thin wrapper around `sqlite3_preupdate_old()` , which fetch the
@@ -6904,11 +6647,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/c3ref/preupdate_hook.html
*/
- sqlite3_preupdate_new: (
- db: DbPtr,
- colIdx: number,
- sqlValues: WasmPointer,
- ) => Sqlite3Result;
+ sqlite3_preupdate_new: (db: DbPtr, colIdx: number, sqlValues: WasmPointer) => Sqlite3Result;
/**
* Thin wrapper around `sqlite3_preupdate_new()` , which fetch the
@@ -7019,11 +6758,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/session/sqlite3session_create.html
*/
- sqlite3session_create: (
- db: DbPtr,
- dbName: string,
- ppSession: WasmPointer,
- ) => Sqlite3Result;
+ sqlite3session_create: (db: DbPtr, dbName: string, ppSession: WasmPointer) => Sqlite3Result;
/**
* Delete a session object previously allocated using
@@ -7050,10 +6785,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/session/sqlite3session_object_config.html
*/
- sqlite3session_object_config: (
- pSession: WasmPointer,
- op: number,
- ) => Sqlite3Result;
+ sqlite3session_object_config: (pSession: WasmPointer, op: number) => Sqlite3Result;
/**
* Enable or disable the recording of changes by a session object. When
@@ -7066,10 +6798,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/session/sqlite3session_enable.html
*/
- sqlite3session_enable: (
- pSession: WasmPointer,
- bEnable: number,
- ) => Sqlite3Result;
+ sqlite3session_enable: (pSession: WasmPointer, bEnable: number) => Sqlite3Result;
/**
* Set Or Clear the Indirect Change Flag
@@ -7098,10 +6827,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/session/sqlite3session_indirect.html
*/
- sqlite3session_indirect: (
- pSession: WasmPointer,
- bIndirect: number,
- ) => Sqlite3Result;
+ sqlite3session_indirect: (pSession: WasmPointer, bIndirect: number) => Sqlite3Result;
/**
* Attach A Table To A Session Object
@@ -7121,10 +6847,7 @@ export type CAPI = {
*
* See https://www.sqlite.org/session/sqlite3session_attach.html
*/
- sqlite3session_attach: (
- pSession: WasmPointer,
- tableName: string | NullPointer,
- ) => Sqlite3Result;
+ sqlite3session_attach: (pSession: WasmPointer, tableName: string | NullPointer) => Sqlite3Result;
/**
* Set a table filter on a Session Object.
@@ -7429,11 +7152,7 @@ export type CAPI = {
* @param colNum Column number
* @param ppValue OUT: Old value (or NULL pointer)
*/
- sqlite3changeset_old: (
- pIter: WasmPointer,
- colNum: number,
- ppValue: WasmPointer,
- ) => Sqlite3Result;
+ sqlite3changeset_old: (pIter: WasmPointer, colNum: number, ppValue: WasmPointer) => Sqlite3Result;
/**
* Thin wrapper around `sqlite3changeset_old()`, which fetches the
@@ -7443,10 +7162,7 @@ export type CAPI = {
*
* See https://sqlite.org/wasm/doc/trunk/api-c-style.md#session-api-ext
*/
- sqlite3changeset_old_js: (
- pChangeSetIter: WasmPointer,
- colIdx: number,
- ) => SqlValue;
+ sqlite3changeset_old_js: (pChangeSetIter: WasmPointer, colIdx: number) => SqlValue;
/**
* Obtain new.* Values From A Changeset Iterator
@@ -7465,11 +7181,7 @@ export type CAPI = {
* @param colNum Column number
* @param ppValue OUT: New value (or NULL pointer)
*/
- sqlite3changeset_new: (
- pIter: WasmPointer,
- colNum: number,
- ppValue: WasmPointer,
- ) => Sqlite3Result;
+ sqlite3changeset_new: (pIter: WasmPointer, colNum: number, ppValue: WasmPointer) => Sqlite3Result;
/**
* Thin wrapper around `sqlite3changeset_new()`, which fetches the
@@ -7482,10 +7194,7 @@ export type CAPI = {
*
* See https://sqlite.org/wasm/doc/trunk/api-c-style.md#session-api-ext
*/
- sqlite3changeset_new_js: (
- pChangeSetIter: WasmPointer,
- colIdx: number,
- ) => SqlValue | undefined;
+ sqlite3changeset_new_js: (pChangeSetIter: WasmPointer, colIdx: number) => SqlValue | undefined;
/**
* Obtain Conflicting Row Values From A Changeset Iterator
@@ -7525,10 +7234,7 @@ export type CAPI = {
* @param pIter Changeset iterator
* @param pnOut OUT: Number of FK constraint violations
*/
- sqlite3changeset_fk_conflicts: (
- pIter: WasmPointer,
- pnOut: WasmPointer,
- ) => Sqlite3Result;
+ sqlite3changeset_fk_conflicts: (pIter: WasmPointer, pnOut: WasmPointer) => Sqlite3Result;
/**
* This function is used to finalize an iterator allocated with
@@ -7878,9 +7584,7 @@ export type CAPI = {
*/
sqlite3changeset_apply_strm: (
db: DbPtr,
- xInput:
- | ((pIn: WasmPointer, pData: WasmPointer, pnData: WasmPointer) => number)
- | WasmPointer,
+ xInput: ((pIn: WasmPointer, pData: WasmPointer, pnData: WasmPointer) => number) | WasmPointer,
pIn: WasmPointer,
xFilter: ((pCtx: WasmPointer, tableName: string) => number) | WasmPointer,
xConflict:
@@ -7928,9 +7632,7 @@ export type CAPI = {
*/
sqlite3changeset_apply_v2_strm: (
db: DbPtr,
- xInput:
- | ((pIn: WasmPointer, pData: WasmPointer, pnData: WasmPointer) => number)
- | WasmPointer,
+ xInput: ((pIn: WasmPointer, pData: WasmPointer, pnData: WasmPointer) => number) | WasmPointer,
pIn: WasmPointer,
xFilter: ((pCtx: WasmPointer, tableName: string) => number) | WasmPointer,
xConflict:
@@ -7970,9 +7672,7 @@ export type CAPI = {
*/
sqlite3changeset_apply_v3_strm: (
db: DbPtr,
- xInput:
- | ((pIn: WasmPointer, pData: WasmPointer, pnData: WasmPointer) => number)
- | WasmPointer,
+ xInput: ((pIn: WasmPointer, pData: WasmPointer, pnData: WasmPointer) => number) | WasmPointer,
pIn: WasmPointer,
xFilter: ((pCtx: WasmPointer, pIter: WasmPointer) => number) | WasmPointer,
xConflict:
@@ -8009,17 +7709,11 @@ export type CAPI = {
* See https://www.sqlite.org/session/sqlite3changegroup_add_strm.html
*/
sqlite3changeset_concat_strm: (
- xInputA:
- | ((pIn: WasmPointer, pData: WasmPointer, pnData: WasmPointer) => number)
- | WasmPointer,
+ xInputA: ((pIn: WasmPointer, pData: WasmPointer, pnData: WasmPointer) => number) | WasmPointer,
pInA: WasmPointer,
- xInputB:
- | ((pIn: WasmPointer, pData: WasmPointer, pnData: WasmPointer) => number)
- | WasmPointer,
+ xInputB: ((pIn: WasmPointer, pData: WasmPointer, pnData: WasmPointer) => number) | WasmPointer,
pInB: WasmPointer,
- xOutput:
- | ((pOut: WasmPointer, pData: WasmPointer, nData: number) => number)
- | WasmPointer,
+ xOutput: ((pOut: WasmPointer, pData: WasmPointer, nData: number) => number) | WasmPointer,
pOut: WasmPointer,
) => Sqlite3Result;
@@ -8038,13 +7732,9 @@ export type CAPI = {
* See https://www.sqlite.org/session/sqlite3changegroup_add_strm.html
*/
sqlite3changeset_invert_strm: (
- xInput:
- | ((pIn: WasmPointer, pData: WasmPointer, pnData: WasmPointer) => number)
- | WasmPointer,
+ xInput: ((pIn: WasmPointer, pData: WasmPointer, pnData: WasmPointer) => number) | WasmPointer,
pIn: WasmPointer,
- xOutput:
- | ((pOut: WasmPointer, pData: WasmPointer, nData: number) => number)
- | WasmPointer,
+ xOutput: ((pOut: WasmPointer, pData: WasmPointer, nData: number) => number) | WasmPointer,
pOut: WasmPointer,
) => Sqlite3Result;
@@ -8063,9 +7753,7 @@ export type CAPI = {
*/
sqlite3changeset_start_strm: (
ppIter: WasmPointer,
- xInput:
- | ((pIn: WasmPointer, pData: WasmPointer, pnData: WasmPointer) => number)
- | WasmPointer,
+ xInput: ((pIn: WasmPointer, pData: WasmPointer, pnData: WasmPointer) => number) | WasmPointer,
pIn: WasmPointer,
) => Sqlite3Result;
@@ -8085,9 +7773,7 @@ export type CAPI = {
*/
sqlite3changeset_start_v2_strm: (
ppIter: WasmPointer,
- xInput:
- | ((pIn: WasmPointer, pData: WasmPointer, pnData: WasmPointer) => number)
- | WasmPointer,
+ xInput: ((pIn: WasmPointer, pData: WasmPointer, pnData: WasmPointer) => number) | WasmPointer,
pIn: WasmPointer,
flags: number,
) => Sqlite3Result;
@@ -8107,9 +7793,7 @@ export type CAPI = {
*/
sqlite3session_changeset_strm: (
pSession: WasmPointer,
- xOutput:
- | ((pOut: WasmPointer, pData: WasmPointer, nData: number) => number)
- | WasmPointer,
+ xOutput: ((pOut: WasmPointer, pData: WasmPointer, nData: number) => number) | WasmPointer,
pOut: WasmPointer,
) => Sqlite3Result;
@@ -8128,9 +7812,7 @@ export type CAPI = {
*/
sqlite3session_patchset_strm: (
pSession: WasmPointer,
- xOutput:
- | ((pOut: WasmPointer, pData: WasmPointer, nData: number) => number)
- | WasmPointer,
+ xOutput: ((pOut: WasmPointer, pData: WasmPointer, nData: number) => number) | WasmPointer,
pOut: WasmPointer,
) => Sqlite3Result;
@@ -8149,11 +7831,7 @@ export type CAPI = {
*/
sqlite3changegroup_add_strm: (
changeGrp: WasmPointer,
- xInput: (
- pIn: WasmPointer,
- pData: WasmPointer,
- pnData: WasmPointer,
- ) => number,
+ xInput: (pIn: WasmPointer, pData: WasmPointer, pnData: WasmPointer) => number,
pIn: WasmPointer,
) => Sqlite3Result;
@@ -8224,11 +7902,7 @@ export type CAPI = {
*
* See https://sqlite.org/wasm/doc/trunk/api-c-style.md#sqlite3_js_db_uses_vfs
*/
- sqlite3_js_db_uses_vfs: (
- db: DbPtr,
- vfsName: string,
- dbName: string,
- ) => boolean;
+ sqlite3_js_db_uses_vfs: (db: DbPtr, vfsName: string, dbName: string) => boolean;
/** Returns an array of the names of all currently-registered sqlite3 VFSes. */
sqlite3_js_vfs_list: () => string[];
@@ -8245,10 +7919,7 @@ export type CAPI = {
* returned.
* @throws A description of the problem.
*/
- sqlite3_js_db_export: (
- db: DbPtr,
- schema?: string | WasmPointer,
- ) => Uint8Array;
+ sqlite3_js_db_export: (db: DbPtr, schema?: string | WasmPointer) => Uint8Array;
/**
* Given a `sqlite3*` and a database name (JS string or WASM C-string pointer,
@@ -8321,14 +7992,8 @@ export type CAPI = {
* results in the undefined value. It always throws a WasmAllocError if
* allocating memory for a conversion fails.
*/
- sqlite3_value_to_js(
- sqliteValue: WasmPointer,
- throwIfCannotConvert?: true,
- ): SqlValue;
- sqlite3_value_to_js(
- sqliteValue: WasmPointer,
- throwIfCannotConvert: false,
- ): SqlValue | undefined;
+ sqlite3_value_to_js(sqliteValue: WasmPointer, throwIfCannotConvert?: true): SqlValue;
+ sqlite3_value_to_js(sqliteValue: WasmPointer, throwIfCannotConvert: false): SqlValue | undefined;
/**
* Requires a C-style array of `sqlite3_value*` objects and the number of
diff --git a/tsdown.config.ts b/tsdown.config.ts
index 48749e5..e71e14f 100644
--- a/tsdown.config.ts
+++ b/tsdown.config.ts
@@ -4,12 +4,7 @@ import { copyFileSync, rmSync } from 'node:fs';
const tsdownConfig: UserConfig[] = [
defineConfig({
target: 'es2023',
- entry: [
- 'src/index.js',
- 'src/node.js',
- 'src/index.d.ts',
- 'src/bin/sqlite3-worker1.mjs',
- ],
+ entry: ['src/index.js', 'src/node.js', 'src/index.d.ts', 'src/bin/sqlite3-worker1.mjs'],
format: ['esm'],
minify: 'dce-only',
outputOptions: {
@@ -19,10 +14,7 @@ const tsdownConfig: UserConfig[] = [
},
onSuccess: () => {
copyFileSync('./src/bin/sqlite3.wasm', './dist/sqlite3.wasm');
- copyFileSync(
- './dist/bin/sqlite3-worker1.mjs',
- './dist/sqlite3-worker1.mjs',
- );
+ copyFileSync('./dist/bin/sqlite3-worker1.mjs', './dist/sqlite3-worker1.mjs');
},
}),
defineConfig({
@@ -36,10 +28,7 @@ const tsdownConfig: UserConfig[] = [
},
},
onSuccess: () => {
- copyFileSync(
- './dist/sqlite3-opfs-async-proxy.iife.js',
- './dist/sqlite3-opfs-async-proxy.js',
- );
+ copyFileSync('./dist/sqlite3-opfs-async-proxy.iife.js', './dist/sqlite3-opfs-async-proxy.js');
rmSync('./dist/sqlite3-opfs-async-proxy.iife.js');
rmSync('./dist/bin', { recursive: true, force: true });
},