{"_id":"@aiao/rxdb-adapter-wa-sqlite","_rev":"7-5521b4dd92cafcf9e61664f3e28897a4","name":"@aiao/rxdb-adapter-wa-sqlite","dist-tags":{"latest":"0.0.26"},"versions":{"0.0.20":{"name":"@aiao/rxdb-adapter-wa-sqlite","version":"0.0.20","_id":"@aiao/rxdb-adapter-wa-sqlite@0.0.20","maintainers":[{"name":"aiao","email":"hero63418@gmail.com"}],"nx":{"name":"rxdb-adapter-wa-sqlite","tags":["js-lib"]},"dist":{"shasum":"b6d166274d0a28a67b6348e3ddfc1ce8116f830b","tarball":"https://registry.npmjs.org/@aiao/rxdb-adapter-wa-sqlite/-/rxdb-adapter-wa-sqlite-0.0.20.tgz","fileCount":23,"integrity":"sha512-5uMsvtfNVInHocH+ffAts8iFjqrJ+vFDpqkiahMLdRA9Zgj/BOJZZC3Hn/ImkdigT7eKffKBJ3GX/cQQy1EseA==","signatures":[{"sig":"MEUCIQCuK5UTXjiY9uJ+TKb1txNXKhy+qZKDH1FxSI6wza+tQgIgDtjy9ZNuL6B/C2Sv+3+t91ZYjimYvvGmmYHZbMHEHVw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":155647},"main":"./dist/index.js","type":"module","_from":"file:aiao-rxdb-adapter-wa-sqlite-0.0.20.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","@aiao/source":"./src/index.ts"},"./package.json":"./package.json"},"_npmUser":{"name":"aiao","email":"hero63418@gmail.com"},"_resolved":"/private/var/folders/1s/1sk5kvms7jj4z6glj40__v300000gn/T/9e0f35835c205c1c327de4cb47dbb781/aiao-rxdb-adapter-wa-sqlite-0.0.20.tgz","_integrity":"sha512-5uMsvtfNVInHocH+ffAts8iFjqrJ+vFDpqkiahMLdRA9Zgj/BOJZZC3Hn/ImkdigT7eKffKBJ3GX/cQQy1EseA==","_npmVersion":"11.9.0","description":"RxDB 适配器，使用 wa-sqlite 在浏览器中运行 SQLite。","directories":{},"_nodeVersion":"24.14.0","dependencies":{"comlink":"^4.4.2","wa-sqlite":"https://codeload.github.com/rhashimoto/wa-sqlite/tar.gz/refs/tags/v1.1.0","@aiao/rxdb":"0.0.20","@aiao/utils":"0.0.20","@aiao/rxdb-adapter-sqlite-core":"0.0.20"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ms":"^2.1.3","@aiao/rxdb-test":"0.0.20"},"_npmOperationalInternal":{"tmp":"tmp/rxdb-adapter-wa-sqlite_0.0.20_1779246549648_0.6054031977287195","host":"s3://npm-registry-packages-npm-production"}},"0.0.21":{"name":"@aiao/rxdb-adapter-wa-sqlite","version":"0.0.21","_id":"@aiao/rxdb-adapter-wa-sqlite@0.0.21","maintainers":[{"name":"aiao","email":"hero63418@gmail.com"}],"nx":{"name":"rxdb-adapter-wa-sqlite","tags":["js-lib"]},"dist":{"shasum":"45aad937eddc01babcb45a95a2ebe04580d3801b","tarball":"https://registry.npmjs.org/@aiao/rxdb-adapter-wa-sqlite/-/rxdb-adapter-wa-sqlite-0.0.21.tgz","fileCount":20,"integrity":"sha512-bhOYigs6ZhnLp60Bd50DDX3v2por8Y4fU58m2RR5Vrunfz0dg+SjBQ/OgQpL6LIcNaaqMa8teUw+Ya6299Fqtg==","signatures":[{"sig":"MEYCIQCNcjnHa9g8DUT1C4TnhaIwkUHCaD4E9/+QPVdArldCTgIhAPzNVKfU6u22ey+xzJJl+H0o0+y1Mdrz5KYykKchtH8U","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":26924},"main":"./dist/index.js","type":"module","_from":"file:aiao-rxdb-adapter-wa-sqlite-0.0.21.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","@aiao/source":"./src/index.ts"},"./package.json":"./package.json"},"_npmUser":{"name":"aiao","email":"hero63418@gmail.com"},"_resolved":"/private/var/folders/1s/1sk5kvms7jj4z6glj40__v300000gn/T/e2a0f11568ed76883f5426defcf89d15/aiao-rxdb-adapter-wa-sqlite-0.0.21.tgz","_integrity":"sha512-bhOYigs6ZhnLp60Bd50DDX3v2por8Y4fU58m2RR5Vrunfz0dg+SjBQ/OgQpL6LIcNaaqMa8teUw+Ya6299Fqtg==","_npmVersion":"11.16.0","description":"RxDB 适配器，使用 wa-sqlite 在浏览器中运行 SQLite。","directories":{},"_nodeVersion":"24.18.0","dependencies":{"comlink":"^4.4.2","wa-sqlite":"https://codeload.github.com/rhashimoto/wa-sqlite/tar.gz/refs/tags/v1.1.1","@aiao/rxdb":"0.0.21","@aiao/utils":"0.0.21","@aiao/rxdb-adapter-sqlite-core":"0.0.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ms":"^2.1.3","@aiao/rxdb-test":"0.0.21"},"_npmOperationalInternal":{"tmp":"tmp/rxdb-adapter-wa-sqlite_0.0.21_1784362935326_0.16863275980313985","host":"s3://npm-registry-packages-npm-production"}},"0.0.22":{"name":"@aiao/rxdb-adapter-wa-sqlite","version":"0.0.22","_id":"@aiao/rxdb-adapter-wa-sqlite@0.0.22","maintainers":[{"name":"aiao","email":"hero63418@gmail.com"}],"nx":{"name":"rxdb-adapter-wa-sqlite","tags":["js-lib"]},"dist":{"shasum":"8a8900066fc38dc3b99387df9fdbd27cef3e41dc","tarball":"https://registry.npmjs.org/@aiao/rxdb-adapter-wa-sqlite/-/rxdb-adapter-wa-sqlite-0.0.22.tgz","fileCount":20,"integrity":"sha512-oToPe5ev2lm+z6meVpMy/Lu3tAOzoE3PWiNj2enJWUQX9feOwp2nHJguWxauBOWKfgg4A6bbqGcKaWEWH8zHiQ==","signatures":[{"sig":"MEYCIQCc3KTCLGkm5JTPQUTd8NkShjX5DEGoAKTfDFdcawru6wIhAI5w60YbrVv7JwNfD38hdZtnp664d7B/+88UtBebqDvO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":26924},"main":"./dist/index.js","type":"module","_from":"file:aiao-rxdb-adapter-wa-sqlite-0.0.22.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","@aiao/source":"./src/index.ts"},"./package.json":"./package.json"},"_npmUser":{"name":"aiao","email":"hero63418@gmail.com"},"_resolved":"/private/var/folders/1s/1sk5kvms7jj4z6glj40__v300000gn/T/ddbc19fd614b8bb1df7a011424dbc508/aiao-rxdb-adapter-wa-sqlite-0.0.22.tgz","_integrity":"sha512-oToPe5ev2lm+z6meVpMy/Lu3tAOzoE3PWiNj2enJWUQX9feOwp2nHJguWxauBOWKfgg4A6bbqGcKaWEWH8zHiQ==","_npmVersion":"10.9.2","description":"RxDB 适配器，使用 wa-sqlite 在浏览器中运行 SQLite。","directories":{},"_nodeVersion":"22.14.0","dependencies":{"comlink":"^4.4.2","wa-sqlite":"https://codeload.github.com/rhashimoto/wa-sqlite/tar.gz/refs/tags/v1.1.1","@aiao/rxdb":"0.0.22","@aiao/utils":"0.0.22","@aiao/rxdb-adapter-sqlite-core":"0.0.22"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ms":"^2.1.3","@aiao/rxdb-test":"0.0.22"},"_npmOperationalInternal":{"tmp":"tmp/rxdb-adapter-wa-sqlite_0.0.22_1785482806875_0.1337811925777148","host":"s3://npm-registry-packages-npm-production"}},"0.0.23":{"name":"@aiao/rxdb-adapter-wa-sqlite","version":"0.0.23","_id":"@aiao/rxdb-adapter-wa-sqlite@0.0.23","maintainers":[{"name":"aiao","email":"hero63418@gmail.com"}],"nx":{"name":"rxdb-adapter-wa-sqlite","tags":["js-lib"]},"dist":{"shasum":"0ac33701eaf92c76755cd7bc6d0713c0bc252862","tarball":"https://registry.npmjs.org/@aiao/rxdb-adapter-wa-sqlite/-/rxdb-adapter-wa-sqlite-0.0.23.tgz","fileCount":20,"integrity":"sha512-XTqrgR8ewPaa29c4z5PeQ0UiiUaEaxRS9x9dttlOCSuTerZGY0PHL1F1dMzHERJ6ngSjOQprHxyxKqZ/rTmfPQ==","signatures":[{"sig":"MEQCIBG8n0y4b5VM2R4N5B6us4xaCA7C4oCduwJHiSaH6SkXAiBJ2yeh3DRcqwJfRJdVhwoUWh/syhHS7NeMpvuMFTgYDQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":26924},"main":"./dist/index.js","type":"module","_from":"file:aiao-rxdb-adapter-wa-sqlite-0.0.23.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","@aiao/source":"./src/index.ts"},"./package.json":"./package.json"},"_npmUser":{"name":"aiao","email":"hero63418@gmail.com"},"_resolved":"/private/var/folders/1s/1sk5kvms7jj4z6glj40__v300000gn/T/3f333d024d97884030c9c9407306d433/aiao-rxdb-adapter-wa-sqlite-0.0.23.tgz","_integrity":"sha512-XTqrgR8ewPaa29c4z5PeQ0UiiUaEaxRS9x9dttlOCSuTerZGY0PHL1F1dMzHERJ6ngSjOQprHxyxKqZ/rTmfPQ==","_npmVersion":"10.9.2","description":"RxDB 适配器，使用 wa-sqlite 在浏览器中运行 SQLite。","directories":{},"_nodeVersion":"22.14.0","dependencies":{"comlink":"^4.4.2","wa-sqlite":"https://codeload.github.com/rhashimoto/wa-sqlite/tar.gz/refs/tags/v1.1.1","@aiao/rxdb":"0.0.23","@aiao/utils":"0.0.23","@aiao/rxdb-adapter-sqlite-core":"0.0.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ms":"^2.1.3","@aiao/rxdb-test":"0.0.23"},"_npmOperationalInternal":{"tmp":"tmp/rxdb-adapter-wa-sqlite_0.0.23_1785736181761_0.32736338366755247","host":"s3://npm-registry-packages-npm-production"}},"0.0.24":{"name":"@aiao/rxdb-adapter-wa-sqlite","version":"0.0.24","license":"MIT","_id":"@aiao/rxdb-adapter-wa-sqlite@0.0.24","maintainers":[{"name":"aiao","email":"hero63418@gmail.com"}],"nx":{"name":"rxdb-adapter-wa-sqlite","tags":["js-lib"]},"dist":{"shasum":"bc5ad134fd89eaa715ea47d0559b5e9b551ee7c1","tarball":"https://registry.npmjs.org/@aiao/rxdb-adapter-wa-sqlite/-/rxdb-adapter-wa-sqlite-0.0.24.tgz","fileCount":35,"integrity":"sha512-UEC72e0rraPhFYKv35/bud4DX2uzjQA8gA/q9erSPn6KbTji+B8nUFLRbQrISS0JXGV0mTqACx5xpz50ugutyw==","signatures":[{"sig":"MEUCIQCsgUZRwxf8xxjBHQnVzdgqBUQx3v0spUm/I8SMpZqDgAIgb1DHJT0R+yQAIw6d2P/TESNLlV3esZBINGy3tymACyw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":88725},"main":"./dist/index.js","type":"module","_from":"file:aiao-rxdb-adapter-wa-sqlite-0.0.24.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./client":{"types":"./dist/WaSqliteClientBase.d.ts","import":"./dist/client.js","default":"./dist/client.js","@aiao/source":"./src/WaSqliteClientBase.ts"},"./package.json":"./package.json"},"_npmUser":{"name":"aiao","email":"hero63418@gmail.com"},"_resolved":"/private/var/folders/1s/1sk5kvms7jj4z6glj40__v300000gn/T/83d940551da23019a0b20326695a68c8/aiao-rxdb-adapter-wa-sqlite-0.0.24.tgz","_integrity":"sha512-UEC72e0rraPhFYKv35/bud4DX2uzjQA8gA/q9erSPn6KbTji+B8nUFLRbQrISS0JXGV0mTqACx5xpz50ugutyw==","_npmVersion":"11.19.0","description":"RxDB 适配器，使用 wa-sqlite 在浏览器中运行 SQLite。","directories":{},"_nodeVersion":"26.7.0","dependencies":{"wa-sqlite":"https://codeload.github.com/rhashimoto/wa-sqlite/tar.gz/b9ddadce32480857cde28e7b1512cf45fa08ab73","@aiao/rxdb":"0.0.24","@aiao/utils":"0.0.24","@aiao/rxdb-adapter-sqlite-core":"0.0.24"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ms":"^2.1.3","@aiao/rxdb-test":"0.0.24"},"_npmOperationalInternal":{"tmp":"tmp/rxdb-adapter-wa-sqlite_0.0.24_1786439110059_0.7836568884070685","host":"s3://npm-registry-packages-npm-production"}},"0.0.25":{"name":"@aiao/rxdb-adapter-wa-sqlite","version":"0.0.25","license":"MIT","_id":"@aiao/rxdb-adapter-wa-sqlite@0.0.25","maintainers":[{"name":"aiao","email":"hero63418@gmail.com"}],"homepage":"https://github.com/aiao-io/rxdb#readme","bugs":{"url":"https://github.com/aiao-io/rxdb/issues"},"nx":{"name":"rxdb-adapter-wa-sqlite","tags":["js-lib"]},"dist":{"shasum":"cec93d42f3e73c37447cebdebd6bda0431712ae5","tarball":"https://registry.npmjs.org/@aiao/rxdb-adapter-wa-sqlite/-/rxdb-adapter-wa-sqlite-0.0.25.tgz","fileCount":35,"integrity":"sha512-bx118jGCsUJGB9edKX2acgLnMtvPdvJ75jVPqlinb77vOcO/c83fUkwQ6A/bL8WfbVqn0b+9jWBpLZ6Xh105qQ==","signatures":[{"sig":"MEQCIBYaGg0Qd8uZklKyetBy3+Kxz8CJ9IOZ78NoI/81G3nlAiA0VFXGC5P7RrWNjO6B3v2RNIDqJNvn+DUXT8/r4KqU6Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aiao%2frxdb-adapter-wa-sqlite@0.0.25","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":88980},"main":"./dist/index.js","type":"module","_from":"file:aiao-rxdb-adapter-wa-sqlite-0.0.25.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./client":{"types":"./dist/WaSqliteClientBase.d.ts","import":"./dist/client.js","default":"./dist/client.js","@aiao/source":"./src/WaSqliteClientBase.ts"},"./package.json":"./package.json"},"_npmUser":{"name":"aiao","email":"hero63418@gmail.com"},"_resolved":"/tmp/83e55c1f44ac5bdbedc183b4a163b151/aiao-rxdb-adapter-wa-sqlite-0.0.25.tgz","_integrity":"sha512-bx118jGCsUJGB9edKX2acgLnMtvPdvJ75jVPqlinb77vOcO/c83fUkwQ6A/bL8WfbVqn0b+9jWBpLZ6Xh105qQ==","repository":{"url":"git+https://github.com/aiao-io/rxdb.git","type":"git","directory":"packages/rxdb-adapter-wa-sqlite"},"_npmVersion":"11.19.0","description":"RxDB 适配器，使用 wa-sqlite 在浏览器中运行 SQLite。","directories":{},"_nodeVersion":"26.7.0","dependencies":{"wa-sqlite":"https://codeload.github.com/rhashimoto/wa-sqlite/tar.gz/2bf1c59d89eb6497535a4217bc62fec68a0bb994","@aiao/rxdb":"0.0.25","@aiao/utils":"0.0.25","@aiao/rxdb-adapter-sqlite-core":"0.0.25"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ms":"^2.1.3","@aiao/rxdb-test":"0.0.25"},"_npmOperationalInternal":{"tmp":"tmp/rxdb-adapter-wa-sqlite_0.0.25_1786694774940_0.3196446156626278","host":"s3://npm-registry-packages-npm-production"}},"0.0.26":{"nx":{"name":"rxdb-adapter-wa-sqlite","tags":["js-lib"]},"_id":"@aiao/rxdb-adapter-wa-sqlite@0.0.26","bugs":{"url":"https://github.com/aiao-io/rxdb/issues"},"dist":{"shasum":"1960c3b7db13871d8abf28b94b9bf7f87710fca0","tarball":"https://registry.npmjs.org/@aiao/rxdb-adapter-wa-sqlite/-/rxdb-adapter-wa-sqlite-0.0.26.tgz","fileCount":40,"integrity":"sha512-MDV/jahpkO6Cg1ZwwJLZPNl423+5DSFnnuz1/bMy32kQTFDyJx5R8UkjzzBqlrGM1a7HMcaYJ5jw8VjGpKP0sw==","signatures":[{"sig":"MEYCIQDijQFTnoKxGTISvEpdGt3vDF7YQ9NjxwgP6nDDhzzLawIhAPf6azt9c6FzUu0YmuOOMCdnKaAKZ2taxPGaMWL1FieM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIH7K3ba5NQ1RGWEPMbt7HLGyd/GqO2MwViUGB0ruU1vKAiAL3fN4paYlvsH+I9kE/HOPa/9rARRa83jaLlUNJLUeLw=="}],"unpackedSize":1819096},"main":"./dist/index.js","name":"@aiao/rxdb-adapter-wa-sqlite","type":"module","_from":"file:aiao-rxdb-adapter-wa-sqlite-0.0.26.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./client":{"types":"./dist/WaSqliteClientBase.d.ts","import":"./dist/client.js","default":"./dist/client.js","@aiao/source":"./src/WaSqliteClientBase.ts"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","default":"./dist/testing.js","@aiao/source":"./src/testing.ts"},"./package.json":"./package.json"},"license":"MIT","version":"0.0.26","_npmUser":{"name":"aiao","email":"hero63418@gmail.com"},"homepage":"https://rxdb.netlify.app/docs/adapters","keywords":["aiao","rxdb","wa-sqlite","sqlite","wasm","opfs"],"_resolved":"/private/tmp/pack-0.0.26/aiao-rxdb-adapter-wa-sqlite-0.0.26.tgz","_integrity":"sha512-MDV/jahpkO6Cg1ZwwJLZPNl423+5DSFnnuz1/bMy32kQTFDyJx5R8UkjzzBqlrGM1a7HMcaYJ5jw8VjGpKP0sw==","repository":{"url":"git+https://github.com/aiao-io/rxdb.git","type":"git","directory":"packages/rxdb-adapter-wa-sqlite"},"_npmVersion":"12.0.2","description":"wa-sqlite adapter for browser-local SQLite storage.","directories":{},"maintainers":[{"name":"aiao","email":"hero63418@gmail.com"}],"sideEffects":false,"_nodeVersion":"26.7.0","dependencies":{"wa-sqlite":"https://codeload.github.com/rhashimoto/wa-sqlite/tar.gz/2bf1c59d89eb6497535a4217bc62fec68a0bb994","@aiao/rxdb":"0.0.26","@aiao/utils":"0.0.26","@aiao/rxdb-adapter-sqlite-core":"0.0.26"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ms":"^2.1.3","@aiao/rxdb-test":"0.0.26","@aiao/rxdb-plugin-history":"0.0.26"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/rxdb-adapter-wa-sqlite_0.0.26_1790793542481_0.45829561457174806"}}},"time":{"created":"2026-05-20T03:09:09.533Z","modified":"2026-09-30T18:39:02.739Z","0.0.20":"2026-05-20T03:09:09.784Z","0.0.21":"2026-07-18T08:22:15.470Z","0.0.22":"2026-07-31T07:26:47.007Z","0.0.23":"2026-08-03T05:49:41.922Z","0.0.24":"2026-08-11T09:05:10.191Z","0.0.25":"2026-08-14T08:06:15.077Z","0.0.26":"2026-09-30T18:39:02.591Z"},"bugs":{"url":"https://github.com/aiao-io/rxdb/issues"},"license":"MIT","homepage":"https://rxdb.netlify.app/docs/adapters","repository":{"url":"git+https://github.com/aiao-io/rxdb.git","type":"git","directory":"packages/rxdb-adapter-wa-sqlite"},"description":"wa-sqlite adapter for browser-local SQLite storage.","maintainers":[{"name":"aiao","email":"hero63418@gmail.com"}],"readme":"# @aiao/rxdb-adapter-wa-sqlite\n\nRxDB 适配器，使用 wa-sqlite 在浏览器中运行 SQLite。\n\n## 功能特性\n\n- **本地优先**: 在浏览器中通过 WebAssembly 运行完整 SQLite\n- **零服务器**: 无需后端服务器，数据存储在本地\n- **SQLite 兼容**: 支持标准 SQLite 语法和功能\n- **响应式**: 数据变化自动触发更新\n- **高性能**: 使用 Web Worker 避免阻塞主线程\n\n## 何时使用\n\n- 需要轻量级本地数据库（WASM 体积小）\n- 需要 SQLite 生态兼容性\n- 需要 FTS5 全文搜索\n- 对启动速度和内存占用敏感的应用\n\n## 与其他适配器对比\n\n| 特性       | wa-sqlite                | sqlite-wasm | PGlite     |\n| ---------- | ------------------------ | ----------- | ---------- |\n| 数据库引擎 | SQLite                   | SQLite      | PostgreSQL |\n| WASM 大小  | ~500KB                   | ~800KB      | ~3MB       |\n| 全文搜索   | FTS5                     | FTS5        | tsvector   |\n| VFS 选项   | 多种（IDB/OPFS）         | 标准        | 固定       |\n| 成熟度     | 适配器稳定，VFS 分级支持 | 官方支持    | 较新       |\n\n## 安装\n\n```bash\nnpm install @aiao/rxdb @aiao/rxdb-adapter-wa-sqlite\n# 或\npnpm add @aiao/rxdb @aiao/rxdb-adapter-wa-sqlite\n```\n\n## 使用\n\n```typescript\nimport { RxDB, SyncType } from '@aiao/rxdb';\nimport { RxDBAdapterWaSqlite } from '@aiao/rxdb-adapter-wa-sqlite';\n\nconst rxdb = new RxDB({\n  dbName: 'app',\n  context: { userId: 'current-user' },\n  entities: [],\n  sync: {\n    local: { adapter: 'wa-sqlite' },\n    type: SyncType.None\n  }\n});\n\nrxdb.adapter(\n  'wa-sqlite',\n  db =>\n    new RxDBAdapterWaSqlite(db, {\n      vfs: 'IDBBatchAtomicVFS',\n      async: true,\n      wasmPath: '/wa-sqlite/wa-sqlite-async.wasm'\n    })\n);\n\nawait rxdb.connect('wa-sqlite');\n```\n\n## VFS 选项\n\n这些 VFS 来自 wa-sqlite 的 `src/examples/*`，上游未把它们声明为稳定生产 API。本包只把\n`IDBBatchAtomicVFS` 作为默认且受支持的生产后端；其它实现必须按下表评估后显式选择。\n\n| VFS                   | 支持等级 | 约束                                                                |\n| --------------------- | -------- | ------------------------------------------------------------------- |\n| `IDBBatchAtomicVFS`   | 生产支持 | 默认选项；IndexedDB 持久化，覆盖原子写入与多连接回归                |\n| `MemoryVFS`           | 仅测试   | 同步、非持久化                                                      |\n| `MemoryAsyncVFS`      | 仅测试   | asyncify、非持久化                                                  |\n| `IDBMirrorVFS`        | 实验性   | IndexedDB 镜像实现，升级前需重新跑持久化回归                        |\n| `AccessHandlePoolVFS` | 实验性   | 仅 dedicated Worker；依赖 OPFS sync access handle                   |\n| `OPFSAdaptiveVFS`     | 实验性   | 仅 dedicated Worker                                                 |\n| `OPFSAnyContextVFS`   | 实验性   | 支持 Window、dedicated Worker、SharedWorker；只建议只读或近只读负载 |\n| `OPFSCoopSyncVFS`     | 实验性   | 仅 dedicated Worker；不要求 SharedArrayBuffer                       |\n| `OPFSWriteAheadVFS`   | 实验性   | 仅 dedicated Worker；升级前需重新验证恢复与并发行为                 |\n\n`worker` 必须与 `workerInstance` 成对提供，`sharedWorker` 必须与 `sharedWorkerInstance` 成对提供，\n两种 transport 互斥。Worker/SharedWorker 由调用方创建并持有；适配器不会替调用方 `terminate()`。\n\n```typescript\nconst worker = new Worker(new URL('./wa-sqlite.worker.js', import.meta.url), { type: 'module' });\n\nnew RxDBAdapterWaSqlite(db, {\n  vfs: 'OPFSCoopSyncVFS',\n  async: false,\n  worker: true,\n  workerInstance: worker,\n  wasmPath: '/wa-sqlite/wa-sqlite.wasm'\n});\n```\n\n公开的 `WA_SQLITE_VFS_LIST` 是深冻结的能力表，不能用作自定义 VFS 注册入口。\n\n## wa-sqlite 供应链\n\nnpm registry 没有本包所需的 wa-sqlite，因此依赖固定到上游不可变 commit\n`2bf1c59d89eb6497535a4217bc62fec68a0bb994`（上游 `v1.1.2` release；其 `package.json`\n的 `version` 字段仍写作 `1.1.1`，上游未随 tag 升位），`pnpm-lock.yaml` 同时固定归档 SHA-512。\n`pnpm audit:wa-sqlite` 会校验所有直接消费者、commit URL 与 lockfile integrity；升级 commit 时必须\n重新审计 `src/examples/*` 的 9 个 VFS 内部路径和能力矩阵。\n\n## 完整示例\n\n参考 [dev-rxdb-angular](https://github.com/aiao-io/rxdb/tree/main/apps/dev-rxdb-angular) 中的集成示例。\n","readmeFilename":"README.md","keywords":["aiao","rxdb","wa-sqlite","sqlite","wasm","opfs"]}