From fd4ba78b152660e2cfae0065e5609f48cbcf1abb Mon Sep 17 00:00:00 2001 From: Jure Rotar Date: Thu, 12 Mar 2026 09:37:50 +0100 Subject: [PATCH 1/3] fix: fixed worker1Promiser types, replaced interfaces with types, added stricter tsconfig options, updated worker1Promiser example --- README.md | 21 ++- package-lock.json | 346 ++++++++++++++++++++++++---------------------- package.json | 6 +- src/index.d.ts | 112 +++++++-------- src/index.js | 11 +- src/node.js | 4 +- tsconfig.json | 24 +++- 7 files changed, 273 insertions(+), 251 deletions(-) diff --git a/README.md b/README.md index 78cedcb..605d0bf 100644 --- a/README.md +++ b/README.md @@ -49,8 +49,11 @@ storage back-end. > > `Cross-Origin-Embedder-Policy: require-corp` -```js -import { sqlite3Worker1Promiser } from '@sqlite.org/sqlite-wasm'; +```ts +import { + sqlite3Worker1Promiser, + type Worker1Promiser, +} from '@sqlite.org/sqlite-wasm'; const log = console.log; const error = console.error; @@ -59,15 +62,15 @@ const initializeSQLite = async () => { try { log('Loading and initializing SQLite3 module...'); - const promiser = await new Promise((resolve) => { - const _promiser = sqlite3Worker1Promiser({ - onready: () => resolve(_promiser), + const promiser = await new Promise((resolve) => { + sqlite3Worker1Promiser({ + onready: resolve, }); }); log('Done initializing. Running demo...'); - const configResponse = await promiser('config-get', {}); + const configResponse = await promiser('config-get'); log('Running SQLite3 version', configResponse.result.version.libVersion); const openResponse = await promiser('open', { @@ -87,9 +90,13 @@ const initializeSQLite = async () => { } }; -initializeSQLite(); +await initializeSQLite(); ``` +For `config-get`, `promiser('config-get')` is the preferred form. For backward +compatibility, `promiser('config-get', undefined)` and +`promiser('config-get', {})` are also supported. + The `promiser` object above implements the [Worker1 API](https://sqlite.org/wasm/doc/trunk/api-worker1.md#worker1-methods). diff --git a/package-lock.json b/package-lock.json index 35e24e7..42aa2b5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,17 +10,17 @@ "license": "Apache-2.0", "devDependencies": { "@types/node": "^25.4.0", - "@typescript/native-preview": "^7.0.0-dev.20260309.1", + "@typescript/native-preview": "^7.0.0-dev.20260312.1", "@vitest/browser": "^4.0.18", "@vitest/browser-playwright": "^4.0.18", "happy-dom": "^20.8.3", "http-server": "github:vapier/http-server", - "lefthook": "2.1.3", + "lefthook": "2.1.4", "playwright": "^1.58.2", "prettier": "^3.8.1", "prettier-plugin-jsdoc": "^1.8.0", "publint": "^0.3.18", - "tsdown": "^0.21.1", + "tsdown": "^0.21.2", "typescript": "^5.9.3", "vitest": "^4.0.18" }, @@ -672,9 +672,9 @@ } }, "node_modules/@rolldown/binding-android-arm64": { - "version": "1.0.0-rc.8", - "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-rc.8.tgz", - "integrity": "sha512-5bcmMQDWEfWUq3m79Mcf/kbO6e5Jr6YjKSsA1RnpXR6k73hQ9z1B17+4h93jXpzHvS18p7bQHM1HN/fSd+9zog==", + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-rc.9.tgz", + "integrity": "sha512-lcJL0bN5hpgJfSIz/8PIf02irmyL43P+j1pTCfbD1DbLkmGRuFIA4DD3B3ZOvGqG0XiVvRznbKtN0COQVaKUTg==", "cpu": [ "arm64" ], @@ -689,9 +689,9 @@ } }, "node_modules/@rolldown/binding-darwin-arm64": { - "version": "1.0.0-rc.8", - "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-rc.8.tgz", - "integrity": "sha512-dcHPd5N4g9w2iiPRJmAvO0fsIWzF2JPr9oSuTjxLL56qu+oML5aMbBMNwWbk58Mt3pc7vYs9CCScwLxdXPdRsg==", + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-rc.9.tgz", + "integrity": "sha512-J7Zk3kLYFsLtuH6U+F4pS2sYVzac0qkjcO5QxHS7OS7yZu2LRs+IXo+uvJ/mvpyUljDJ3LROZPoQfgBIpCMhdQ==", "cpu": [ "arm64" ], @@ -706,9 +706,9 @@ } }, "node_modules/@rolldown/binding-darwin-x64": { - "version": "1.0.0-rc.8", - "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-rc.8.tgz", - "integrity": "sha512-mw0VzDvoj8AuR761QwpdCFN0sc/jspuc7eRYJetpLWd+XyansUrH3C7IgNw6swBOgQT9zBHNKsVCjzpfGJlhUA==", + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-rc.9.tgz", + "integrity": "sha512-iwtmmghy8nhfRGeNAIltcNXzD0QMNaaA5U/NyZc1Ia4bxrzFByNMDoppoC+hl7cDiUq5/1CnFthpT9n+UtfFyg==", "cpu": [ "x64" ], @@ -723,9 +723,9 @@ } }, "node_modules/@rolldown/binding-freebsd-x64": { - "version": "1.0.0-rc.8", - "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-rc.8.tgz", - "integrity": "sha512-xNrRa6mQ9NmMIJBdJtPMPG8Mso0OhM526pDzc/EKnRrIrrkHD1E0Z6tONZRmUeJElfsQ6h44lQQCcDilSNIvSQ==", + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-rc.9.tgz", + "integrity": "sha512-DLFYI78SCiZr5VvdEplsVC2Vx53lnA4/Ga5C65iyldMVaErr86aiqCoNBLl92PXPfDtUYjUh+xFFor40ueNs4Q==", "cpu": [ "x64" ], @@ -740,9 +740,9 @@ } }, "node_modules/@rolldown/binding-linux-arm-gnueabihf": { - "version": "1.0.0-rc.8", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-rc.8.tgz", - "integrity": "sha512-WgCKoO6O/rRUwimWfEJDeztwJJmuuX0N2bYLLRxmXDTtCwjToTOqk7Pashl/QpQn3H/jHjx0b5yCMbcTVYVpNg==", + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-rc.9.tgz", + "integrity": "sha512-CsjTmTwd0Hri6iTw/DRMK7kOZ7FwAkrO4h8YWKoX/kcj833e4coqo2wzIFywtch/8Eb5enQ/lwLM7w6JX1W5RQ==", "cpu": [ "arm" ], @@ -757,13 +757,16 @@ } }, "node_modules/@rolldown/binding-linux-arm64-gnu": { - "version": "1.0.0-rc.8", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-rc.8.tgz", - "integrity": "sha512-tOHgTOQa8G4Z3ULj4G3NYOGGJEsqPHR91dT72u63OtVsZ7B6wFJKOx+ZKv+pvwzxWz92/I2ycaqi2/Ll4l+rlg==", + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-rc.9.tgz", + "integrity": "sha512-2x9O2JbSPxpxMDhP9Z74mahAStibTlrBMW0520+epJH5sac7/LwZW5Bmg/E6CXuEF53JJFW509uP+lSedaUNxg==", "cpu": [ "arm64" ], "dev": true, + "libc": [ + "glibc" + ], "license": "MIT", "optional": true, "os": [ @@ -774,13 +777,16 @@ } }, "node_modules/@rolldown/binding-linux-arm64-musl": { - "version": "1.0.0-rc.8", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-rc.8.tgz", - "integrity": "sha512-oRbxcgDujCi2Yp1GTxoUFsIFlZsuPHU4OV4AzNc3/6aUmR4lfm9FK0uwQu82PJsuUwnF2jFdop3Ep5c1uK7Uxg==", + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-rc.9.tgz", + "integrity": "sha512-JA1QRW31ogheAIRhIg9tjMfsYbglXXYGNPLdPEYrwFxdbkQCAzvpSCSHCDWNl4hTtrol8WeboCSEpjdZK8qrCg==", "cpu": [ "arm64" ], "dev": true, + "libc": [ + "musl" + ], "license": "MIT", "optional": true, "os": [ @@ -791,13 +797,16 @@ } }, "node_modules/@rolldown/binding-linux-ppc64-gnu": { - "version": "1.0.0-rc.8", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.0.0-rc.8.tgz", - "integrity": "sha512-oaLRyUHw8kQE5M89RqrDJZ10GdmGJcMeCo8tvaE4ukOofqgjV84AbqBSH6tTPjeT2BHv+xlKj678GBuIb47lKA==", + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.0.0-rc.9.tgz", + "integrity": "sha512-aOKU9dJheda8Kj8Y3w9gnt9QFOO+qKPAl8SWd7JPHP+Cu0EuDAE5wokQubLzIDQWg2myXq2XhTpOVS07qqvT+w==", "cpu": [ "ppc64" ], "dev": true, + "libc": [ + "glibc" + ], "license": "MIT", "optional": true, "os": [ @@ -808,13 +817,16 @@ } }, "node_modules/@rolldown/binding-linux-s390x-gnu": { - "version": "1.0.0-rc.8", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.0.0-rc.8.tgz", - "integrity": "sha512-1hjSKFrod5MwBBdLOOA0zpUuSfSDkYIY+QqcMcIU1WOtswZtZdUkcFcZza9b2HcAb0bnpmmyo0LZcaxLb2ov1g==", + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.0.0-rc.9.tgz", + "integrity": "sha512-OalO94fqj7IWRn3VdXWty75jC5dk4C197AWEuMhIpvVv2lw9fiPhud0+bW2ctCxb3YoBZor71QHbY+9/WToadA==", "cpu": [ "s390x" ], "dev": true, + "libc": [ + "glibc" + ], "license": "MIT", "optional": true, "os": [ @@ -825,13 +837,16 @@ } }, "node_modules/@rolldown/binding-linux-x64-gnu": { - "version": "1.0.0-rc.8", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-rc.8.tgz", - "integrity": "sha512-a1+F0aV4Wy9tT3o+cHl3XhOy6aFV+B8Ll+/JFj98oGkb6lGk3BNgrxd+80RwYRVd23oLGvj3LwluKYzlv1PEuw==", + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-rc.9.tgz", + "integrity": "sha512-cVEl1vZtBsBZna3YMjGXNvnYYrOJ7RzuWvZU0ffvJUexWkukMaDuGhUXn0rjnV0ptzGVkvc+vW9Yqy6h8YX4pg==", "cpu": [ "x64" ], "dev": true, + "libc": [ + "glibc" + ], "license": "MIT", "optional": true, "os": [ @@ -842,13 +857,16 @@ } }, "node_modules/@rolldown/binding-linux-x64-musl": { - "version": "1.0.0-rc.8", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-rc.8.tgz", - "integrity": "sha512-bGyXCFU11seFrf7z8PcHSwGEiFVkZ9vs+auLacVOQrVsI8PFHJzzJROF3P6b0ODDmXr0m6Tj5FlDhcXVk0Jp8w==", + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-rc.9.tgz", + "integrity": "sha512-UzYnKCIIc4heAKgI4PZ3dfBGUZefGCJ1TPDuLHoCzgrMYPb5Rv6TLFuYtyM4rWyHM7hymNdsg5ik2C+UD9VDbA==", "cpu": [ "x64" ], "dev": true, + "libc": [ + "musl" + ], "license": "MIT", "optional": true, "os": [ @@ -859,9 +877,9 @@ } }, "node_modules/@rolldown/binding-openharmony-arm64": { - "version": "1.0.0-rc.8", - "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-rc.8.tgz", - "integrity": "sha512-n8d+L2bKgf9G3+AM0bhHFWdlz9vYKNim39ujRTieukdRek0RAo2TfG2uEnV9spa4r4oHUfL9IjcY3M9SlqN1gw==", + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-rc.9.tgz", + "integrity": "sha512-+6zoiF+RRyf5cdlFQP7nm58mq7+/2PFaY2DNQeD4B87N36JzfF/l9mdBkkmTvSYcYPE8tMh/o3cRlsx1ldLfog==", "cpu": [ "arm64" ], @@ -876,9 +894,9 @@ } }, "node_modules/@rolldown/binding-wasm32-wasi": { - "version": "1.0.0-rc.8", - "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-rc.8.tgz", - "integrity": "sha512-4R4iJDIk7BrJdteAbEAICXPoA7vZoY/M0OBfcRlQxzQvUYMcEp2GbC/C8UOgQJhu2TjGTpX1H8vVO1xHWcRqQA==", + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-rc.9.tgz", + "integrity": "sha512-rgFN6sA/dyebil3YTlL2evvi/M+ivhfnyxec7AccTpRPccno/rPoNlqybEZQBkcbZu8Hy+eqNJCqfBR8P7Pg8g==", "cpu": [ "wasm32" ], @@ -893,9 +911,9 @@ } }, "node_modules/@rolldown/binding-win32-arm64-msvc": { - "version": "1.0.0-rc.8", - "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-rc.8.tgz", - "integrity": "sha512-3lwnklba9qQOpFnQ7EW+A1m4bZTWXZE4jtehsZ0YOl2ivW1FQqp5gY7X2DLuKITggesyuLwcmqS11fA7NtrmrA==", + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-rc.9.tgz", + "integrity": "sha512-lHVNUG/8nlF1IQk1C0Ci574qKYyty2goMiPlRqkC5R+3LkXDkL5Dhx8ytbxq35m+pkHVIvIxviD+TWLdfeuadA==", "cpu": [ "arm64" ], @@ -910,9 +928,9 @@ } }, "node_modules/@rolldown/binding-win32-x64-msvc": { - "version": "1.0.0-rc.8", - "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-rc.8.tgz", - "integrity": "sha512-VGjCx9Ha1P/r3tXGDZyG0Fcq7Q0Afnk64aaKzr1m40vbn1FL8R3W0V1ELDvPgzLXaaqK/9PnsqSaLWXfn6JtGQ==", + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-rc.9.tgz", + "integrity": "sha512-G0oA4+w1iY5AGi5HcDTxWsoxF509hrFIPB2rduV5aDqS9FtDg1CAfa7V34qImbjfhIcA8C+RekocJZA96EarwQ==", "cpu": [ "x64" ], @@ -927,9 +945,9 @@ } }, "node_modules/@rolldown/pluginutils": { - "version": "1.0.0-rc.8", - "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.8.tgz", - "integrity": "sha512-wzJwL82/arVfeSP3BLr1oTy40XddjtEdrdgtJ4lLRBu06mP3q/8HGM6K0JRlQuTA3XB0pNJx2so/nmpY4xyOew==", + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.9.tgz", + "integrity": "sha512-w6oiRWgEBl04QkFZgmW+jnU1EC9b57Oihi2ot3HNWIQRqgHp5PnYDia5iZ5FF7rpa4EQdiqMDXjlqKGXBhsoXw==", "dev": true, "license": "MIT" }, @@ -1395,29 +1413,28 @@ } }, "node_modules/@typescript/native-preview": { - "version": "7.0.0-dev.20260309.1", - "resolved": "https://registry.npmjs.org/@typescript/native-preview/-/native-preview-7.0.0-dev.20260309.1.tgz", - "integrity": "sha512-ZK+ExK7scBzUCAXCTtAwUm6QENJ+l3tCDQXNCly4WcGUvbIAWdaiNns4brganGN9nrxxRkC9Rx0CrxvIsn9zHA==", + "version": "7.0.0-dev.20260312.1", + "resolved": "https://registry.npmjs.org/@typescript/native-preview/-/native-preview-7.0.0-dev.20260312.1.tgz", + "integrity": "sha512-FwhlXG/yG0d7b2UmooBYyszLMpICRYdYGE6v65ZlMnH7cWKQyyFpMFgH9suRf3Np4QCbN+7qisj+F23kQOidVw==", "dev": true, "license": "Apache-2.0", - "peer": true, "bin": { "tsgo": "bin/tsgo.js" }, "optionalDependencies": { - "@typescript/native-preview-darwin-arm64": "7.0.0-dev.20260309.1", - "@typescript/native-preview-darwin-x64": "7.0.0-dev.20260309.1", - "@typescript/native-preview-linux-arm": "7.0.0-dev.20260309.1", - "@typescript/native-preview-linux-arm64": "7.0.0-dev.20260309.1", - "@typescript/native-preview-linux-x64": "7.0.0-dev.20260309.1", - "@typescript/native-preview-win32-arm64": "7.0.0-dev.20260309.1", - "@typescript/native-preview-win32-x64": "7.0.0-dev.20260309.1" + "@typescript/native-preview-darwin-arm64": "7.0.0-dev.20260312.1", + "@typescript/native-preview-darwin-x64": "7.0.0-dev.20260312.1", + "@typescript/native-preview-linux-arm": "7.0.0-dev.20260312.1", + "@typescript/native-preview-linux-arm64": "7.0.0-dev.20260312.1", + "@typescript/native-preview-linux-x64": "7.0.0-dev.20260312.1", + "@typescript/native-preview-win32-arm64": "7.0.0-dev.20260312.1", + "@typescript/native-preview-win32-x64": "7.0.0-dev.20260312.1" } }, "node_modules/@typescript/native-preview-darwin-arm64": { - "version": "7.0.0-dev.20260309.1", - "resolved": "https://registry.npmjs.org/@typescript/native-preview-darwin-arm64/-/native-preview-darwin-arm64-7.0.0-dev.20260309.1.tgz", - "integrity": "sha512-Vszk6vbONyyT47mUTEFNAXk+bJisM8F0pI+MyNPM8i2oorex7Gbp7ivFUGzdZHRFPDXMrlw6AXmgx1U2tZxiHw==", + "version": "7.0.0-dev.20260312.1", + "resolved": "https://registry.npmjs.org/@typescript/native-preview-darwin-arm64/-/native-preview-darwin-arm64-7.0.0-dev.20260312.1.tgz", + "integrity": "sha512-AhPdPuVe4osxWoeImS21jVhc0VJ2QnzLUZtEFMakY0Rf70C0b6il/m7hwRf9wkr9xXZLVOVJ1kYrpvQRuHFE0Q==", "cpu": [ "arm64" ], @@ -1429,9 +1446,9 @@ ] }, "node_modules/@typescript/native-preview-darwin-x64": { - "version": "7.0.0-dev.20260309.1", - "resolved": "https://registry.npmjs.org/@typescript/native-preview-darwin-x64/-/native-preview-darwin-x64-7.0.0-dev.20260309.1.tgz", - "integrity": "sha512-UmmW/L1fW6URMILx5HqxcL2kElOyTYbY6M8yRMQK7gmBzsbkGj37JYN+WZgPkz/PQCVsxwIFcot6WmKRRXeBxQ==", + "version": "7.0.0-dev.20260312.1", + "resolved": "https://registry.npmjs.org/@typescript/native-preview-darwin-x64/-/native-preview-darwin-x64-7.0.0-dev.20260312.1.tgz", + "integrity": "sha512-9I0P1/c/mQ6UVcQq7SYY/FJD23IN5T2y4GbSFOKQvzNVASV0tMnX4YV8YNf6b5jcwCzrVcrGNKKgWCj8xEFf8Q==", "cpu": [ "x64" ], @@ -1443,9 +1460,9 @@ ] }, "node_modules/@typescript/native-preview-linux-arm": { - "version": "7.0.0-dev.20260309.1", - "resolved": "https://registry.npmjs.org/@typescript/native-preview-linux-arm/-/native-preview-linux-arm-7.0.0-dev.20260309.1.tgz", - "integrity": "sha512-G5zgoOZP2NjZ1kga9mend2in1e3C+Mm3XufelVZ9RwWRka744s6KxAsen853LizCrxBh58foj9pPVnH6gKUJvg==", + "version": "7.0.0-dev.20260312.1", + "resolved": "https://registry.npmjs.org/@typescript/native-preview-linux-arm/-/native-preview-linux-arm-7.0.0-dev.20260312.1.tgz", + "integrity": "sha512-/nAOhSLTxMJfHY+2cKdUxi2wYadf3g1GtC3VzgPfZMNxA28dJ8x75T26aSLaFYluh7cCSAwuGesCImijQDS2Lw==", "cpu": [ "arm" ], @@ -1457,9 +1474,9 @@ ] }, "node_modules/@typescript/native-preview-linux-arm64": { - "version": "7.0.0-dev.20260309.1", - "resolved": "https://registry.npmjs.org/@typescript/native-preview-linux-arm64/-/native-preview-linux-arm64-7.0.0-dev.20260309.1.tgz", - "integrity": "sha512-sN5rQRvqre8JHUISJhybUQ1e4a+mb/Ifa+uWHJawJ2tojTXWkU1rJTZBnAN3/XeoIJgeSdaZQAZRDlW9B7zbvw==", + "version": "7.0.0-dev.20260312.1", + "resolved": "https://registry.npmjs.org/@typescript/native-preview-linux-arm64/-/native-preview-linux-arm64-7.0.0-dev.20260312.1.tgz", + "integrity": "sha512-xwoMywagcvx9F2ocM+ybeg7eH9PHDpx1FBGOrloL1/xkGC4BCrn/RcaAe0AhzXzoJfHHmg7Sz9VzYmTR4N1Kqw==", "cpu": [ "arm64" ], @@ -1471,9 +1488,9 @@ ] }, "node_modules/@typescript/native-preview-linux-x64": { - "version": "7.0.0-dev.20260309.1", - "resolved": "https://registry.npmjs.org/@typescript/native-preview-linux-x64/-/native-preview-linux-x64-7.0.0-dev.20260309.1.tgz", - "integrity": "sha512-ZuHu9Sg4/akGSrO49hKLNKwrFXx7AZ2CS3PcTd85cC4nKudqB1aGD9rHxZZZyClj++e0qcNQ+4eTMn1sxDA9VQ==", + "version": "7.0.0-dev.20260312.1", + "resolved": "https://registry.npmjs.org/@typescript/native-preview-linux-x64/-/native-preview-linux-x64-7.0.0-dev.20260312.1.tgz", + "integrity": "sha512-vZs0LLpZw50Ac0TCmF9ND7KphJBhOfp9fxLhC+hFWaUU1iCQRjv1MtvroitF5OJKb21qFPJxkU+kfhlCRxLfqg==", "cpu": [ "x64" ], @@ -1485,9 +1502,9 @@ ] }, "node_modules/@typescript/native-preview-win32-arm64": { - "version": "7.0.0-dev.20260309.1", - "resolved": "https://registry.npmjs.org/@typescript/native-preview-win32-arm64/-/native-preview-win32-arm64-7.0.0-dev.20260309.1.tgz", - "integrity": "sha512-RNIidoGPsRaALc1znXiWfNARkGptm9e55qYnaz11YPvMrqbRKP9Y6Ipx4Oh/diIeF7y9UYiikeyk7EsyKe//sw==", + "version": "7.0.0-dev.20260312.1", + "resolved": "https://registry.npmjs.org/@typescript/native-preview-win32-arm64/-/native-preview-win32-arm64-7.0.0-dev.20260312.1.tgz", + "integrity": "sha512-4LY/gd9cj1xDY2nEthB7WDW4j/fIYJ9wp9H71nOLd0wNNtkfqRXWSkQEeb+RByhV+dIb/n6kWbQQMeNfk7q4VQ==", "cpu": [ "arm64" ], @@ -1499,9 +1516,9 @@ ] }, "node_modules/@typescript/native-preview-win32-x64": { - "version": "7.0.0-dev.20260309.1", - "resolved": "https://registry.npmjs.org/@typescript/native-preview-win32-x64/-/native-preview-win32-x64-7.0.0-dev.20260309.1.tgz", - "integrity": "sha512-/rEvAKowcoEdL2VeNju8apkGHEmbat10jIn1Sncny1zIaWvaMFw6bhmny+kKwX+9deitMfo9ihLlo5GCPJuMPQ==", + "version": "7.0.0-dev.20260312.1", + "resolved": "https://registry.npmjs.org/@typescript/native-preview-win32-x64/-/native-preview-win32-x64-7.0.0-dev.20260312.1.tgz", + "integrity": "sha512-EP2JPo9s9EPUwXSX83qTImlDHhgkLeBbJ2MMdj+XrfBltHAvHKktzeSS73UhP77s/TnTkJR6BTWHENKKvLRbGQ==", "cpu": [ "x64" ], @@ -1541,7 +1558,6 @@ "integrity": "sha512-gfajTHVCiwpxRj1qh0Sh/5bbGLG4F/ZH/V9xvFVoFddpITfMta9YGow0W6ZpTTORv2vdJuz9TnrNSmjKvpOf4g==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@vitest/browser": "4.0.18", "@vitest/mocker": "4.0.18", @@ -2232,7 +2248,6 @@ "integrity": "sha512-lMHQRRwIPyJ70HV0kkFT7jH/gXzSI7yDkQFe07E2flwmNDFoWUTRMKpW2sglsnpeA7b6S2TJPp98EbQxai8eaQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@types/node": ">=20.0.0", "@types/whatwg-mimetype": "^3.0.2", @@ -2388,9 +2403,9 @@ } }, "node_modules/lefthook": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/lefthook/-/lefthook-2.1.3.tgz", - "integrity": "sha512-2W8PP/EGCvyS/x+Xza0Lgvn/EM3FKnr6m6xkfzpl6RKHl8TwPvs9iYZFQL99CnWTTvO+1mtQvIxGE/bD05038Q==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/lefthook/-/lefthook-2.1.4.tgz", + "integrity": "sha512-JNfJ5gAn0KADvJ1I6/xMcx70+/6TL6U9gqGkKvPw5RNMfatC7jIg0Evl97HN846xmfz959BV70l8r3QsBJk30w==", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -2398,22 +2413,22 @@ "lefthook": "bin/index.js" }, "optionalDependencies": { - "lefthook-darwin-arm64": "2.1.3", - "lefthook-darwin-x64": "2.1.3", - "lefthook-freebsd-arm64": "2.1.3", - "lefthook-freebsd-x64": "2.1.3", - "lefthook-linux-arm64": "2.1.3", - "lefthook-linux-x64": "2.1.3", - "lefthook-openbsd-arm64": "2.1.3", - "lefthook-openbsd-x64": "2.1.3", - "lefthook-windows-arm64": "2.1.3", - "lefthook-windows-x64": "2.1.3" + "lefthook-darwin-arm64": "2.1.4", + "lefthook-darwin-x64": "2.1.4", + "lefthook-freebsd-arm64": "2.1.4", + "lefthook-freebsd-x64": "2.1.4", + "lefthook-linux-arm64": "2.1.4", + "lefthook-linux-x64": "2.1.4", + "lefthook-openbsd-arm64": "2.1.4", + "lefthook-openbsd-x64": "2.1.4", + "lefthook-windows-arm64": "2.1.4", + "lefthook-windows-x64": "2.1.4" } }, "node_modules/lefthook-darwin-arm64": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/lefthook-darwin-arm64/-/lefthook-darwin-arm64-2.1.3.tgz", - "integrity": "sha512-VMSQK5ZUh66mKrEpHt5U81BxOg5xAXLoLZIK6e++4uc28tj8zGBqV9+tZqSRElXXzlnHbfdDVCMaKlTuqUy0Rg==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/lefthook-darwin-arm64/-/lefthook-darwin-arm64-2.1.4.tgz", + "integrity": "sha512-BUAAE9+rUrjr39a+wH/1zHmGrDdwUQ2Yq/z6BQbM/yUb9qtXBRcQ5eOXxApqWW177VhGBpX31aqIlfAZ5Q7wzw==", "cpu": [ "arm64" ], @@ -2425,9 +2440,9 @@ ] }, "node_modules/lefthook-darwin-x64": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/lefthook-darwin-x64/-/lefthook-darwin-x64-2.1.3.tgz", - "integrity": "sha512-4QhepF4cf+fa7sDow29IEuCfm/6LuV+oVyQGpnr5it1DEZIEEoa6vdH/x4tutYhAg/HH7I2jHq6FGz96HRiJEQ==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/lefthook-darwin-x64/-/lefthook-darwin-x64-2.1.4.tgz", + "integrity": "sha512-K1ncIMEe84fe+ss1hQNO7rIvqiKy2TJvTFpkypvqFodT7mJXZn7GLKYTIXdIuyPAYthRa9DwFnx5uMoHwD2F1Q==", "cpu": [ "x64" ], @@ -2439,9 +2454,9 @@ ] }, "node_modules/lefthook-freebsd-arm64": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/lefthook-freebsd-arm64/-/lefthook-freebsd-arm64-2.1.3.tgz", - "integrity": "sha512-kysx/9pjifOgcTZOj1bR0i74FAbMv3BDfrpZDKniBOo4Dp0hXhyOtUmRn4nWKL0bN+cqc4ZePAq4Qdm4fxWafA==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/lefthook-freebsd-arm64/-/lefthook-freebsd-arm64-2.1.4.tgz", + "integrity": "sha512-PVUhjOhVN71YaYsVdQyNbFZ4a2jFB2Tg5hKrrn9kaWpx64aLz/XivLjwr8sEuTaP1GRlEWBpW6Bhrcsyo39qFw==", "cpu": [ "arm64" ], @@ -2453,9 +2468,9 @@ ] }, "node_modules/lefthook-freebsd-x64": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/lefthook-freebsd-x64/-/lefthook-freebsd-x64-2.1.3.tgz", - "integrity": "sha512-TLuPHQNg6iihShchrh5DrHvoCZO8FajZBMAEwLIKWlm6bkCcXbYNxy4dBaVK8lzHtS/Kv1bnH0D3BcK65iZFVQ==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/lefthook-freebsd-x64/-/lefthook-freebsd-x64-2.1.4.tgz", + "integrity": "sha512-ZWV9o/LeyWNEBoVO+BhLqxH3rGTba05nkm5NvMjEFSj7LbUNUDbQmupZwtHl1OMGJO66eZP0CalzRfUH6GhBxQ==", "cpu": [ "x64" ], @@ -2467,9 +2482,9 @@ ] }, "node_modules/lefthook-linux-arm64": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/lefthook-linux-arm64/-/lefthook-linux-arm64-2.1.3.tgz", - "integrity": "sha512-e5x4pq1aZAXc0C642V4HaUoKtcHVmGW1HBIDNfWUhtsThBKjhZBXPspecaAHIRA/8VtsXS3RnJ4VhQpgfrCbww==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/lefthook-linux-arm64/-/lefthook-linux-arm64-2.1.4.tgz", + "integrity": "sha512-iWN0pGnTjrIvNIcSI1vQBJXUbybTqJ5CLMniPA0olabMXQfPDrdMKVQe+mgdwHK+E3/Y0H0ZNL3lnOj6Sk6szA==", "cpu": [ "arm64" ], @@ -2481,9 +2496,9 @@ ] }, "node_modules/lefthook-linux-x64": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/lefthook-linux-x64/-/lefthook-linux-x64-2.1.3.tgz", - "integrity": "sha512-yeVAiV5hoE6Qq8dQDB4XC14x4N9mhn+FetxzqDu5LVci0/sOPqyPq2b0YUtNwJ1ZUKawTz4I/oqnUsHkQrGH0w==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/lefthook-linux-x64/-/lefthook-linux-x64-2.1.4.tgz", + "integrity": "sha512-96bTBE/JdYgqWYAJDh+/e/0MaxJ25XTOAk7iy/fKoZ1ugf6S0W9bEFbnCFNooXOcxNVTan5xWKfcjJmPIKtsJA==", "cpu": [ "x64" ], @@ -2495,9 +2510,9 @@ ] }, "node_modules/lefthook-openbsd-arm64": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/lefthook-openbsd-arm64/-/lefthook-openbsd-arm64-2.1.3.tgz", - "integrity": "sha512-8QVvRxIosV6NL2XrbifOPGVhMFE43h02BUNEHYhZhyad7BredfAakg9dA9J/NO0I3eMdvCYU50ubFyDGIqUJog==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/lefthook-openbsd-arm64/-/lefthook-openbsd-arm64-2.1.4.tgz", + "integrity": "sha512-oYUoK6AIJNEr9lUSpIMj6g7sWzotvtc3ryw7yoOyQM6uqmEduw73URV/qGoUcm4nqqmR93ZalZwR2r3Gd61zvw==", "cpu": [ "arm64" ], @@ -2509,9 +2524,9 @@ ] }, "node_modules/lefthook-openbsd-x64": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/lefthook-openbsd-x64/-/lefthook-openbsd-x64-2.1.3.tgz", - "integrity": "sha512-YTS9qeW9PzzKg9Rk55mQprLIl1OdAIIjeOH8DF+MPWoAPkRqeUyq8Q2Bdlf3+Swy+kJOjoiU1pKvpjjc8upv9Q==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/lefthook-openbsd-x64/-/lefthook-openbsd-x64-2.1.4.tgz", + "integrity": "sha512-i/Dv9Jcm68y9cggr1PhyUhOabBGP9+hzQPoiyOhKks7y9qrJl79A8XfG6LHekSuYc2VpiSu5wdnnrE1cj2nfTg==", "cpu": [ "x64" ], @@ -2523,9 +2538,9 @@ ] }, "node_modules/lefthook-windows-arm64": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/lefthook-windows-arm64/-/lefthook-windows-arm64-2.1.3.tgz", - "integrity": "sha512-Nlp80pWyF67GmxgM5NQmL7JTTccbJAvCNtS5QwHmKq3pJ9Xi0UegP9pGME520n06Rhp+gX7H4boXhm2D5hAghg==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/lefthook-windows-arm64/-/lefthook-windows-arm64-2.1.4.tgz", + "integrity": "sha512-hSww7z+QX4YMnw2lK7DMrs3+w7NtxksuMKOkCKGyxUAC/0m1LAICo0ZbtdDtZ7agxRQQQ/SEbzFRhU5ysNcbjA==", "cpu": [ "arm64" ], @@ -2537,9 +2552,9 @@ ] }, "node_modules/lefthook-windows-x64": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/lefthook-windows-x64/-/lefthook-windows-x64-2.1.3.tgz", - "integrity": "sha512-KByBhvqgUNhjO/03Mr0y66D9B1ZnII7AB0x17cumwHMOYoDaPJh/AlgmEduqUpatqli3lnFzWD0DUkAY6pq/SA==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/lefthook-windows-x64/-/lefthook-windows-x64-2.1.4.tgz", + "integrity": "sha512-eE68LwnogxwcPgGsbVGPGxmghyMGmU9SdGwcc+uhGnUxPz1jL89oECMWJNc36zjVK24umNeDAzB5KA3lw1MuWw==", "cpu": [ "x64" ], @@ -3260,7 +3275,6 @@ "integrity": "sha512-vA30H8Nvkq/cPBnNw4Q8TWz1EJyqgpuinBcHET0YVJVFldr8JDNiU9LaWAE1KqSkRYazuaBhTpB5ZzShOezQ6A==", "dev": true, "license": "Apache-2.0", - "peer": true, "dependencies": { "playwright-core": "1.58.2" }, @@ -3346,7 +3360,6 @@ "integrity": "sha512-UOnG6LftzbdaHZcKoPFtOcCKztrQ57WkHDeRD9t/PTQtmT0NHSeWWepj6pS0z/N7+08BHFDQVUrfmfMRcZwbMg==", "dev": true, "license": "MIT", - "peer": true, "bin": { "prettier": "bin/prettier.cjs" }, @@ -3381,7 +3394,6 @@ "integrity": "sha512-JRJFeBTrfx4qLwEuGFPk+haJOJN97KnPuK01yj+4k/Wj5BgoOK5uNsivporiqBjk2JDaslg7qJOhGRnpltGeog==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@publint/pack": "^0.1.4", "package-manager-detector": "^1.6.0", @@ -3448,15 +3460,14 @@ } }, "node_modules/rolldown": { - "version": "1.0.0-rc.8", - "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.0-rc.8.tgz", - "integrity": "sha512-RGOL7mz/aoQpy/y+/XS9iePBfeNRDUdozrhCEJxdpJyimW8v6yp4c30q6OviUU5AnUJVLRL9GP//HUs6N3ALrQ==", + "version": "1.0.0-rc.9", + "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.0-rc.9.tgz", + "integrity": "sha512-9EbgWge7ZH+yqb4d2EnELAntgPTWbfL8ajiTW+SyhJEC4qhBbkCKbqFV4Ge4zmu5ziQuVbWxb/XwLZ+RIO7E8Q==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@oxc-project/types": "=0.115.0", - "@rolldown/pluginutils": "1.0.0-rc.8" + "@rolldown/pluginutils": "1.0.0-rc.9" }, "bin": { "rolldown": "bin/cli.mjs" @@ -3465,27 +3476,27 @@ "node": "^20.19.0 || >=22.12.0" }, "optionalDependencies": { - "@rolldown/binding-android-arm64": "1.0.0-rc.8", - "@rolldown/binding-darwin-arm64": "1.0.0-rc.8", - "@rolldown/binding-darwin-x64": "1.0.0-rc.8", - "@rolldown/binding-freebsd-x64": "1.0.0-rc.8", - "@rolldown/binding-linux-arm-gnueabihf": "1.0.0-rc.8", - "@rolldown/binding-linux-arm64-gnu": "1.0.0-rc.8", - "@rolldown/binding-linux-arm64-musl": "1.0.0-rc.8", - "@rolldown/binding-linux-ppc64-gnu": "1.0.0-rc.8", - "@rolldown/binding-linux-s390x-gnu": "1.0.0-rc.8", - "@rolldown/binding-linux-x64-gnu": "1.0.0-rc.8", - "@rolldown/binding-linux-x64-musl": "1.0.0-rc.8", - "@rolldown/binding-openharmony-arm64": "1.0.0-rc.8", - "@rolldown/binding-wasm32-wasi": "1.0.0-rc.8", - "@rolldown/binding-win32-arm64-msvc": "1.0.0-rc.8", - "@rolldown/binding-win32-x64-msvc": "1.0.0-rc.8" + "@rolldown/binding-android-arm64": "1.0.0-rc.9", + "@rolldown/binding-darwin-arm64": "1.0.0-rc.9", + "@rolldown/binding-darwin-x64": "1.0.0-rc.9", + "@rolldown/binding-freebsd-x64": "1.0.0-rc.9", + "@rolldown/binding-linux-arm-gnueabihf": "1.0.0-rc.9", + "@rolldown/binding-linux-arm64-gnu": "1.0.0-rc.9", + "@rolldown/binding-linux-arm64-musl": "1.0.0-rc.9", + "@rolldown/binding-linux-ppc64-gnu": "1.0.0-rc.9", + "@rolldown/binding-linux-s390x-gnu": "1.0.0-rc.9", + "@rolldown/binding-linux-x64-gnu": "1.0.0-rc.9", + "@rolldown/binding-linux-x64-musl": "1.0.0-rc.9", + "@rolldown/binding-openharmony-arm64": "1.0.0-rc.9", + "@rolldown/binding-wasm32-wasi": "1.0.0-rc.9", + "@rolldown/binding-win32-arm64-msvc": "1.0.0-rc.9", + "@rolldown/binding-win32-x64-msvc": "1.0.0-rc.9" } }, "node_modules/rolldown-plugin-dts": { - "version": "0.22.4", - "resolved": "https://registry.npmjs.org/rolldown-plugin-dts/-/rolldown-plugin-dts-0.22.4.tgz", - "integrity": "sha512-pueqTPyN1N6lWYivyDGad+j+GO3DT67pzpct8s8e6KGVIezvnrDjejuw1AXFeyDRas3xTq4Ja6Lj5R5/04C5GQ==", + "version": "0.22.5", + "resolved": "https://registry.npmjs.org/rolldown-plugin-dts/-/rolldown-plugin-dts-0.22.5.tgz", + "integrity": "sha512-M/HXfM4cboo+jONx9Z0X+CUf3B5tCi7ni+kR5fUW50Fp9AlZk0oVLesibGWgCXDKFp5lpgQ9yhKoImUFjl3VZw==", "dev": true, "license": "MIT", "dependencies": { @@ -3814,9 +3825,9 @@ } }, "node_modules/tsdown": { - "version": "0.21.1", - "resolved": "https://registry.npmjs.org/tsdown/-/tsdown-0.21.1.tgz", - "integrity": "sha512-2Qgm5Pztm1ZOBr6AfJ4pAlspuufa5SlnBgnUx7a0QSm0a73FrBETiRB422gHtMKbgWf1oUtjBL/eK+po7OXwKw==", + "version": "0.21.2", + "resolved": "https://registry.npmjs.org/tsdown/-/tsdown-0.21.2.tgz", + "integrity": "sha512-pP8eAcd1XAWjl5gjosuJs0BAuVoheUe3V8VDHx31QK7YOgXjcCMsBSyFWO3CMh/CSUkjRUzR96JtGH3WJFTExQ==", "dev": true, "license": "MIT", "dependencies": { @@ -3828,14 +3839,14 @@ "import-without-cache": "^0.2.5", "obug": "^2.1.1", "picomatch": "^4.0.3", - "rolldown": "1.0.0-rc.8", - "rolldown-plugin-dts": "^0.22.4", + "rolldown": "1.0.0-rc.9", + "rolldown-plugin-dts": "^0.22.5", "semver": "^7.7.4", "tinyexec": "^1.0.2", "tinyglobby": "^0.2.15", "tree-kill": "^1.2.2", "unconfig-core": "^7.5.0", - "unrun": "^0.2.31" + "unrun": "^0.2.32" }, "bin": { "tsdown": "dist/run.mjs" @@ -3848,8 +3859,8 @@ }, "peerDependencies": { "@arethetypeswrong/core": "^0.18.1", - "@tsdown/css": "0.21.1", - "@tsdown/exe": "0.21.1", + "@tsdown/css": "0.21.2", + "@tsdown/exe": "0.21.2", "@vitejs/devtools": "*", "publint": "^0.3.0", "typescript": "^5.0.0", @@ -3893,7 +3904,6 @@ "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", "dev": true, "license": "Apache-2.0", - "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -3950,13 +3960,13 @@ } }, "node_modules/unrun": { - "version": "0.2.31", - "resolved": "https://registry.npmjs.org/unrun/-/unrun-0.2.31.tgz", - "integrity": "sha512-qltXRUeKQSrIgVS4NbH6PXEFqq+dru2ivH9QINfB+TinSlslgQvursJEV56QzaX8VaDCV5KfbROwKTQf/APJFA==", + "version": "0.2.32", + "resolved": "https://registry.npmjs.org/unrun/-/unrun-0.2.32.tgz", + "integrity": "sha512-opd3z6791rf281JdByf0RdRQrpcc7WyzqittqIXodM/5meNWdTwrVxeyzbaCp4/Rgls/um14oUaif1gomO8YGg==", "dev": true, "license": "MIT", "dependencies": { - "rolldown": "1.0.0-rc.8" + "rolldown": "1.0.0-rc.9" }, "bin": { "unrun": "dist/cli.mjs" @@ -3988,7 +3998,6 @@ "integrity": "sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "esbuild": "^0.27.0", "fdir": "^6.5.0", @@ -4079,7 +4088,6 @@ "integrity": "sha512-hOQuK7h0FGKgBAas7v0mSAsnvrIgAvWmRFjmzpJ7SwFHH3g1k2u37JtYwOwmEKhK6ZO3v9ggDBBm0La1LCK4uQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@vitest/expect": "4.0.18", "@vitest/mocker": "4.0.18", diff --git a/package.json b/package.json index fd1c4ab..b3aac32 100644 --- a/package.json +++ b/package.json @@ -64,17 +64,17 @@ }, "devDependencies": { "@types/node": "^25.4.0", - "@typescript/native-preview": "^7.0.0-dev.20260309.1", + "@typescript/native-preview": "^7.0.0-dev.20260312.1", "@vitest/browser": "^4.0.18", "@vitest/browser-playwright": "^4.0.18", "happy-dom": "^20.8.3", "http-server": "github:vapier/http-server", - "lefthook": "2.1.3", + "lefthook": "2.1.4", "playwright": "^1.58.2", "prettier": "^3.8.1", "prettier-plugin-jsdoc": "^1.8.0", "publint": "^0.3.18", - "tsdown": "^0.21.1", + "tsdown": "^0.21.2", "typescript": "^5.9.3", "vitest": "^4.0.18" } diff --git a/src/index.d.ts b/src/index.d.ts index ed3b0d0..9aa24f4 100644 --- a/src/index.d.ts +++ b/src/index.d.ts @@ -1573,7 +1573,7 @@ export type WasmPointer = number; export type NullPointer = 0 | null | undefined; /** Common envelope for all Worker API #1 messages. */ -interface Worker1MessageBusEnvelope { +type Worker1MessageBusEnvelope = { /** One of: 'open', 'close', 'exec', 'export', 'config-get' */ type: string; @@ -1589,33 +1589,33 @@ interface Worker1MessageBusEnvelope { * used. */ dbId?: string; -} +}; /** Worker API #1 input message envelope. */ -interface Worker1InputEnvelope< +type Worker1InputEnvelope< T extends string, Args = unknown, -> extends Worker1MessageBusEnvelope { +> = Worker1MessageBusEnvelope & { type: T; args?: Args; /** Timestamp set by the promiser before posting a message. */ departureTime?: number; -} +}; /** Worker API #1 output message envelope. */ -interface Worker1OutputEnvelope< +type Worker1OutputEnvelope< T extends string, Result = unknown, -> extends Worker1MessageBusEnvelope { +> = Worker1MessageBusEnvelope & { type: T; result: Result; -} +}; /** * Worker API #1 per-row callback payload for promiser `exec()` callback * functions. */ -interface Worker1ExecRowMessage { +type Worker1ExecRowMessage = { /** Internally synthesized callback message type. */ type: `${string}:row`; /** Current row value in the shape implied by `rowMode`. */ @@ -1624,7 +1624,7 @@ interface Worker1ExecRowMessage { rowNumber: number | null; /** Column names populated when requested by options. */ columnNames?: string[]; -} +}; /** Worker API #1 exec options accepted by the promiser wrapper. */ type Worker1ExecArgs = Omit & { @@ -1635,36 +1635,16 @@ type Worker1ExecArgs = Omit & { callback?: (row: Worker1ExecRowMessage) => void; }; -/** Worker API #1 error response result. */ -interface Worker1ErrorResult { - /** Type of the triggering operation: 'open', 'close', ... */ - operation: string; - /** Error message text */ - message: string; - /** The ErrorClass.name property from the thrown exception. */ - errorClass: string; - /** The message object which triggered the error. */ - input: Worker1InputEnvelope; - /** If available, a stack trace array. */ - stack?: string[]; -} - -/** Worker API #1 error response envelope. */ -interface Worker1ErrorEnvelope extends Worker1MessageBusEnvelope { - type: 'error'; - result: Worker1ErrorResult; -} - /** Worker API #1 'open' arguments. */ -interface Worker1OpenArgs { +type Worker1OpenArgs = { /** The db filename. */ filename?: string; /** Sqlite3_vfs name. */ vfs?: string; -} +}; /** Worker API #1 'open' result. */ -interface Worker1OpenResult { +type Worker1OpenResult = { /** Db filename, possibly differing from the input. */ filename: string; /** Opaque ID value for the opened db. */ @@ -1673,40 +1653,40 @@ interface Worker1OpenResult { persistent: boolean; /** Name of the VFS the "main" db is using. */ vfs: string; -} +}; /** Worker API #1 'close' arguments. */ -interface Worker1CloseArgs { +type Worker1CloseArgs = { /** If truthy, the database will be unlinked (deleted) after closing it. */ unlink?: boolean; -} +}; /** Worker API #1 'close' result. */ -interface Worker1CloseResult { +type Worker1CloseResult = { /** Filename of closed db, or undefined if no db was closed. */ filename?: string; -} +}; /** Worker API #1 'exec' result. */ -interface Worker1ExecResult extends ExecOptions { +type Worker1ExecResult = ExecOptions & { /** Number of changes made by the SQL. (v3.43+) */ changeCount?: number | bigint; /** Result of sqlite3_last_insert_rowid(). (v3.50.0+) */ lastInsertRowId?: bigint; -} +}; /** Worker API #1 'export' result. */ -interface Worker1ExportResult { +type Worker1ExportResult = { /** The exported database as a byte array. */ byteArray: Uint8Array; /** The db filename. */ filename: string; /** "application/x-sqlite3" */ mimetype: string; -} +}; /** Worker API #1 'config-get' result. */ -interface Worker1ConfigGetResult { +type Worker1ConfigGetResult = { /** Sqlite3.version object */ version: { libVersion: string; @@ -1718,37 +1698,55 @@ interface Worker1ConfigGetResult { bigIntEnabled: boolean; /** Result of sqlite3.capi.sqlite3_js_vfs_list() */ vfsList: string[]; -} +}; /** Map of Worker API #1 operation types to their argument types. */ -interface Worker1ArgsMap { +type Worker1ArgsMap = { open: Worker1OpenArgs; close: Worker1CloseArgs | undefined; exec: Worker1ExecArgs | string; export: undefined; - 'config-get': undefined; -} + 'config-get': undefined | Record; +}; + +type Worker1OptionalArgsOp = { + [K in keyof Worker1ArgsMap]: undefined extends Worker1ArgsMap[K] ? K : never; +}[keyof Worker1ArgsMap]; + +type Worker1RequiredArgsOp = Exclude< + keyof Worker1ArgsMap, + Worker1OptionalArgsOp +>; /** Map of Worker API #1 operation types to their result types. */ -interface Worker1ResultMap { +type Worker1ResultMap = { open: Worker1OpenResult; close: Worker1CloseResult; exec: Worker1ExecResult; export: Worker1ExportResult; 'config-get': Worker1ConfigGetResult; -} +}; /** Function type returned by Worker1PromiserFactory. */ -interface Worker1Promiser { +export type Worker1Promiser = { /** * Sends a message to the worker and returns a Promise which resolves to the * response message. */ - ( + ( type: T, args: Worker1ArgsMap[T], ): Promise>; + /** + * Sends a message to the worker and returns a Promise which resolves to the + * response message. + */ + ( + type: T, + args?: Worker1ArgsMap[T], + ): Promise>; + /** * Sends a message to the worker and returns a Promise which resolves to the * response message. @@ -1756,10 +1754,10 @@ interface Worker1Promiser { ( msg: Worker1InputEnvelope, ): Promise>; -} +}; /** Configuration for Worker1PromiserFactory. */ -interface Worker1PromiserConfig { +type Worker1PromiserConfig = { /** A Worker instance or a function which returns one. */ worker?: Worker | (() => Worker); @@ -1777,10 +1775,10 @@ interface Worker1PromiserConfig { /** Optional error logging function (undocumented). */ onerror?: (...args: unknown[]) => void; -} +}; /** Factory for creating Worker1Promiser instances. */ -interface Worker1PromiserFactory { +type Worker1PromiserFactory = { /** Creates a Worker1Promiser. */ (config?: Worker1PromiserConfig): Worker1Promiser; @@ -1796,7 +1794,7 @@ interface Worker1PromiserFactory { (onready: (promiser: Worker1Promiser) => void): Promise; defaultConfig: Worker1PromiserConfig; }; -} +}; export type StructPtrMapper = { StructType: T; @@ -2636,6 +2634,8 @@ export type Sqlite3Static = { */ export default function init(): Promise; +export const sqlite3Worker1Promiser: Worker1PromiserFactory; + export type ListLike = { length: number; forEach: (cb: (val: T) => void) => void; diff --git a/src/index.js b/src/index.js index 30f0075..1641386 100644 --- a/src/index.js +++ b/src/index.js @@ -1,9 +1,2 @@ -import { default as sqlite3InitModule } from './bin/sqlite3-bundler-friendly.mjs'; -import { default as sqlite3Worker1Promiser } from './bin/sqlite3-worker1-promiser.mjs'; - -/** @type {import('./index.d.ts').Worker1PromiserFactory} */ -const typedWorker1Promiser = sqlite3Worker1Promiser; - -export default sqlite3InitModule; - -export { typedWorker1Promiser as sqlite3Worker1Promiser }; +export { default as sqlite3Worker1Promiser } from './bin/sqlite3-worker1-promiser.mjs'; +export default './bin/sqlite3-bundler-friendly.mjs'; diff --git a/src/node.js b/src/node.js index 00f5a23..8633f27 100644 --- a/src/node.js +++ b/src/node.js @@ -1,3 +1 @@ -import { default as sqlite3InitModule } from './bin/sqlite3-node.mjs'; - -export default sqlite3InitModule; +export default './bin/sqlite3-node.mjs'; diff --git a/tsconfig.json b/tsconfig.json index 2c80cf6..5045a34 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,11 +1,27 @@ { "compilerOptions": { - "target": "es2023", + "outDir": "dist", + "target": "ES2023", + "lib": ["ESNext", "DOM"], + "types": ["vitest"], + "allowJs": false, + "declaration": true, + "forceConsistentCasingInFileNames": true, + "allowSyntheticDefaultImports": true, + "esModuleInterop": true, + "isolatedModules": true, + "resolveJsonModule": true, + "verbatimModuleSyntax": true, + "erasableSyntaxOnly": true, + "isolatedDeclarations": true, + "strictPropertyInitialization": true, + "noUnusedParameters": true, + "noImplicitReturns": true, + "moduleResolution": "bundler", "noEmit": true, "strict": true, "skipLibCheck": true, - "moduleResolution": "nodenext", - "module": "NodeNext" + "module": "ESNext" }, - "include": ["tsdown.config.ts"] + "include": ["src"] } From 740c4a6ec36f19215dd08b2404a3781af4b70f1f Mon Sep 17 00:00:00 2001 From: Jure Rotar Date: Thu, 12 Mar 2026 09:38:42 +0100 Subject: [PATCH 2/3] chore: bumped version --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 42aa2b5..e54771a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@sqlite.org/sqlite-wasm", - "version": "3.51.2-build7", + "version": "3.51.2-build8", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@sqlite.org/sqlite-wasm", - "version": "3.51.2-build7", + "version": "3.51.2-build8", "license": "Apache-2.0", "devDependencies": { "@types/node": "^25.4.0", diff --git a/package.json b/package.json index b3aac32..e725bae 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@sqlite.org/sqlite-wasm", - "version": "3.51.2-build7", + "version": "3.51.2-build8", "description": "SQLite Wasm conveniently wrapped as an ES Module.", "type": "module", "repository": { From 935f392d04bb59c0e7542143b0cb4188b642ed9e Mon Sep 17 00:00:00 2001 From: Jure Rotar Date: Thu, 12 Mar 2026 09:49:31 +0100 Subject: [PATCH 3/3] fix: fixed incorrect default export --- src/index.js | 2 +- src/node.js | 2 +- tsconfig.json | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/index.js b/src/index.js index 1641386..e71aab8 100644 --- a/src/index.js +++ b/src/index.js @@ -1,2 +1,2 @@ export { default as sqlite3Worker1Promiser } from './bin/sqlite3-worker1-promiser.mjs'; -export default './bin/sqlite3-bundler-friendly.mjs'; +export { default } from './bin/sqlite3-bundler-friendly.mjs'; diff --git a/src/node.js b/src/node.js index 8633f27..9375739 100644 --- a/src/node.js +++ b/src/node.js @@ -1 +1 @@ -export default './bin/sqlite3-node.mjs'; +export { default } from './bin/sqlite3-node.mjs'; diff --git a/tsconfig.json b/tsconfig.json index 5045a34..61ba9f8 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -3,7 +3,7 @@ "outDir": "dist", "target": "ES2023", "lib": ["ESNext", "DOM"], - "types": ["vitest"], + "types": ["vitest", "node"], "allowJs": false, "declaration": true, "forceConsistentCasingInFileNames": true, @@ -17,11 +17,11 @@ "strictPropertyInitialization": true, "noUnusedParameters": true, "noImplicitReturns": true, - "moduleResolution": "bundler", + "moduleResolution": "nodenext", "noEmit": true, "strict": true, "skipLibCheck": true, - "module": "ESNext" + "module": "NodeNext" }, - "include": ["src"] + "include": ["tsdown.config.ts", "src"] }