{"_id":"@odla-ai/db","_rev":"37-dd5cafc01c577b9deeeb08e8486bb24a","name":"@odla-ai/db","dist-tags":{"latest":"0.14.0"},"versions":{"0.1.0":{"name":"@odla-ai/db","version":"0.1.0","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.1.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"dist":{"shasum":"e3145ba955865c1e0234c09f97b7a046bf30d2a9","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.1.0.tgz","fileCount":8,"integrity":"sha512-TrGEcBFIBs+x0aOUAilnfGpu3E2bkRqnYIEYtQ8/z6yHb1vx0wl2nXETHUEOdrMpKJa9bCippVOQWIwX+r1jNA==","signatures":[{"sig":"MEUCIQCL8bF8xoX4ZWVV0oCEhE1kSK359H//kXUyRrxVSgX7cQIgAkfFb0xHnlIQ8dVjIYIQbveb8nee+y0CmTOmJ7tb/jM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":108790},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"463c6a45d4376fc3637a59c9001081fc7bdbf63d","scripts":{"test":"npm run build && node test/smoke.mjs","build":"tsup","clean":"rm -rf dist","prepublishOnly":"npm run build"},"_npmUser":{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"},"_npmVersion":"11.6.2","description":"Official client for odla-db — read and write the realtime graph database over HTTP, build transactions, and author schemas. Isomorphic: Node, Cloudflare Workers, and the browser.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^5.7.2","@odla/admin":"*","@odla/schema":"*","@odla/protocol":"*"},"_npmOperationalInternal":{"tmp":"tmp/db_0.1.0_1783030955517_0.7100147811733475","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@odla-ai/db","version":"0.2.0","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.2.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"dist":{"shasum":"ba7b6fa3116c6140f9eda68347df9b1e01fe0e95","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.2.0.tgz","fileCount":8,"integrity":"sha512-tEWNpe26GmYIhQIly5CXIB9Lopw3ZM3rze8BBtlVUqczmgXUq+vZ74DV/f/MO+USyF3LINo2QYOHYXxYODcY/w==","signatures":[{"sig":"MEUCIQD6SiqXNg6tJXzesIFd79+A+VCKsaVSGQlfP+S8xdCrFQIgf9BffUgoCEkglLpPKzzrDvCp9HWriLToFnIkncTJxco=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":132406},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"133528c6469a2279bb4951f4d1e21b6aa0723995","scripts":{"test":"npm run build && node test/smoke.mjs","build":"tsup","clean":"rm -rf dist","prepublishOnly":"npm run build"},"_npmUser":{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"},"_npmVersion":"11.6.2","description":"Official client for odla-db — read and write the realtime graph database over HTTP, build transactions, and author schemas. Isomorphic: Node, Cloudflare Workers, and the browser.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/schema":"*","@odla/protocol":"*"},"_npmOperationalInternal":{"tmp":"tmp/db_0.2.0_1783045594911_0.8845815413795515","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@odla-ai/db","version":"0.2.1","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.2.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"dist":{"shasum":"36997979dc9a385e7b2cbc0a598c9ed8b49314d8","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.2.1.tgz","fileCount":8,"integrity":"sha512-x1mWhUxOprWh86f8coGe/zZ3ycOGQwuHb4UMaen0Kv/jDAK4r+lX2Jin0hNzQevfvuYsoz+GNXUari9ssg0VNg==","signatures":[{"sig":"MEUCIQC70SWU6G9ZAJdAmk/VzVx9/Q1/i+4ULzCQkhlyClIGkgIgWJR2DQI9mdRpXf4PSy7+u1w0kyRAimNCjc0FmvK/hyU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":132406},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"d4eb6ff50a13d06634486bce0c5f334796711f00","scripts":{"test":"npm run build && node test/smoke.mjs","build":"tsup","clean":"rm -rf dist","prepublishOnly":"npm run build"},"_npmUser":{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"},"_npmVersion":"11.6.2","description":"Official client for odla-db — read and write the realtime graph database over HTTP, build transactions, and author schemas. Isomorphic: Node, Cloudflare Workers, and the browser.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/schema":"*","@odla/protocol":"*"},"_npmOperationalInternal":{"tmp":"tmp/db_0.2.1_1783046214557_0.6350958367308244","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@odla-ai/db","version":"0.2.2","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.2.2","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"dist":{"shasum":"11af2a8a2a6d310d9be68b100d9ea497627b4def","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.2.2.tgz","fileCount":9,"integrity":"sha512-g+vSlOIGSgkBQnTLNHchYBLYlErjCvoJKToyfstTNzDqTO+GNGlSwWXg32cT0eX+iGzAy7ROZ6MfL1Nd4TjjCQ==","signatures":[{"sig":"MEUCIQDBfj7hHBZSLvNw8TXZq1VNn8jsVrdKR1aPf/XG4UZUrgIgfCUXAuBmgYOQdZhXxD+BZHLiSAVnM2HN1sw5503e9Jo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":140220},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"26fb2a923a6ac454542eb86a36f65cff4642be00","scripts":{"test":"npm run build && node test/smoke.mjs","build":"tsup","clean":"rm -rf dist","gen:llms":"node ../../scripts/gen-llms.mjs","prepublishOnly":"npm run build && npm run gen:llms"},"_npmUser":{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"},"_npmVersion":"11.6.2","description":"Official client for odla-db — read and write the realtime graph database over HTTP, build transactions, and author schemas. Isomorphic: Node, Cloudflare Workers, and the browser.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/schema":"*","@odla/protocol":"*"},"_npmOperationalInternal":{"tmp":"tmp/db_0.2.2_1783111153923_0.23558355268272146","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@odla-ai/db","version":"0.3.0","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.3.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"dist":{"shasum":"ed59d8116c31a5fce69eefd3cf60f0db1202dfb2","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.3.0.tgz","fileCount":9,"integrity":"sha512-mlG1jAD06HuhHxpXBNGa9llNV9WKb13cSUtqNEcrXckdx3xOwSz9iZqKSHfqUJDacAp0gxOfbhmeWXeTnlRBsw==","signatures":[{"sig":"MEUCIAFTJkW5AHThv2Ay9jEITUMebF9wZ90NzfoUp/n+jn0ZAiEApt1T6M9uWHiwyciP6rG1IbxDqb92vAFsndaGEHlH4kM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":140894},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"524f4ff7b77f05c1735d285ab52a3eeb8fe9f8ad","scripts":{"test":"npm run build && node test/smoke.mjs","build":"tsup","clean":"rm -rf dist","gen:llms":"node ../../scripts/gen-llms.mjs","prepublishOnly":"npm run build && npm run gen:llms"},"_npmUser":{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"},"_npmVersion":"11.6.2","description":"Official client for odla-db — read and write the realtime graph database over HTTP, build transactions, and author schemas. Isomorphic: Node, Cloudflare Workers, and the browser.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/schema":"*","@odla/protocol":"*"},"_npmOperationalInternal":{"tmp":"tmp/db_0.3.0_1783176853409_0.0948338834435074","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@odla-ai/db","version":"0.4.0","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.4.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"dist":{"shasum":"7984e2d5e6d714509337ca5717bbc5cc8eedb1ac","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.4.0.tgz","fileCount":9,"integrity":"sha512-Py2+NqxK03XmpuvZweVFS/1q7H+bPaa2ZcooPVQY50w2FFnVpQJHSzAHVEzc/TVlIgVGaM2vGtQFxXgUPzCZQg==","signatures":[{"sig":"MEUCIENyyDVFYMSoZezROxHtrcAOa8xvKSufhkmPEnrn6ZOyAiEAkta1a5kmbnD3pgULIg74CvbREEAJUSjKKOmSqpiV2LI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":151705},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"355032a5006f08a0e664a7256c2ffdb811754440","scripts":{"test":"npm run build && node test/smoke.mjs","build":"tsup","clean":"rm -rf dist","gen:llms":"node ../../scripts/gen-llms.mjs","prepublishOnly":"npm run build && npm run gen:llms"},"_npmUser":{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"},"_npmVersion":"11.6.2","description":"Official client for odla-db — read and write the realtime graph database over HTTP, build transactions, and author schemas. Isomorphic: Node, Cloudflare Workers, and the browser.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/schema":"*","@odla/protocol":"*"},"_npmOperationalInternal":{"tmp":"tmp/db_0.4.0_1783190140642_0.024745624133461375","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@odla-ai/db","version":"0.5.0","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.5.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"dist":{"shasum":"9232676e81c2edebe2bda72d56fe83b1e6d19f66","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.5.0.tgz","fileCount":9,"integrity":"sha512-qrvWRWJySs5kJziYSxGGNh0OFbIEiZ0neJgZamxk6WgjSznKv6A60N9Xj7gIZNbjq8XcsYOOKYj+wqAbd2jkiQ==","signatures":[{"sig":"MEQCIAz1S4IfApDB/sYdOU661XO3SVGA77vhGO490HswTp/UAiB0W2zl2UOOjrfjupk+ffAb6Bf4Ziz54yZi9n4M/JMW9Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":160677},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"ce234d2eca38f749e89d1b5bfaff4afcefd2d598","scripts":{"test":"npm run build && node test/smoke.mjs","build":"tsup","clean":"rm -rf dist","gen:llms":"node ../../scripts/gen-llms.mjs","prepublishOnly":"npm run build && npm run gen:llms"},"_npmUser":{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"},"_npmVersion":"11.6.2","description":"Official client for odla-db — read and write the realtime graph database over HTTP, build transactions, and author schemas. Isomorphic: Node, Cloudflare Workers, and the browser.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/schema":"*","@odla/protocol":"*"},"_npmOperationalInternal":{"tmp":"tmp/db_0.5.0_1783204573758_0.24113566713752133","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"@odla-ai/db","version":"0.5.1","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.5.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"dist":{"shasum":"a0157175d07afb92153274865a7b7724bcdbd957","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.5.1.tgz","fileCount":10,"integrity":"sha512-5oHySnmSufZe7GfdFT/hu1v6eD6HlRwlH8pVwYlabhcTd6PO5Y5WmV4Pn4MxgF1F0CdB5iEZqofr21eL7S4WaQ==","signatures":[{"sig":"MEQCIEvsNIjTsBSv+iD5K4lwBC2TCCiONELFr3plhCThIYASAiBbvSnQDQ3vgelS6I8iyF8h5iLZpWq4Llo24MX0G6uKTQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":104388},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"d28d64caafa145e5b47377ab60aca233d2dd9d3d","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","gen:llms":"node ../../scripts/gen-llms.mjs","prepublishOnly":"npm run build && npm run gen:llms && npm run smoke"},"_npmUser":{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"},"_npmVersion":"11.6.2","description":"Official client for odla-db — read and write the realtime graph database over HTTP, build transactions, and author schemas. Isomorphic: Node, Cloudflare Workers, and the browser.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/schema":"*","@odla/protocol":"*"},"_npmOperationalInternal":{"tmp":"tmp/db_0.5.1_1783221815773_0.24420150256847117","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@odla-ai/db","version":"0.6.0","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.6.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"0d8978b4c4b3d754345eca777ba1fcaa5f20a771","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.6.0.tgz","fileCount":31,"integrity":"sha512-/+nSb2vHWsLGYSByhPoSPj+4HQQm9IdbyHLvhJwvi50Y1ffl0KGd9gpdgZqcV29l6X/xsHR26AVMhV7qh4lSfg==","signatures":[{"sig":"MEUCIEEd717UYO3t3Od1oM/qOmp2BE1U+XUdiHPNPP22gVEvAiEA10qXPy2h+Ddl+1MXM50fcKwS24iu2FftOUqkwfqGeHM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":411026},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/react.d.ts","import":"./dist/react.js","require":"./dist/react.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"}},"gitHead":"25655934e6ca0ab7220dd6cca06faa92fc524b63","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","gen:llms":"node ../../scripts/gen-llms.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run gen:llms && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.16.0","description":"Official odla-db admin, realtime, and React clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.6.0_1783705100584_0.5818470540461713","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"@odla-ai/db","version":"0.6.1","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.6.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"a0aef93ea210028961dedebb5cbd375e8965bed3","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.6.1.tgz","fileCount":31,"integrity":"sha512-Gh9EAFYhmT/Onf02dpYSmUsHzaKIuxlALpYs7IhLKHCGAsJchBpkkl1CDKMpk0elh0daVipljIQH45qAB1T65A==","signatures":[{"sig":"MEQCICtjBgTV+f6llXN5m/7ozh7g1tDlaNUrlxXnIY3zYYc6AiA0bwBvcJ6ImvgKKWfbg2CnW+x2aZlrORJvMSteVsdrXA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":413267},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/react.d.ts","import":"./dist/react.js","require":"./dist/react.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"}},"gitHead":"5b6b6265aa320e910400bb301aa5d5768698d18a","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","gen:llms":"node ../../scripts/gen-llms.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run gen:llms && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.16.0","description":"Official odla-db admin, realtime, and React clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.6.1_1783721081724_0.9721107970288616","host":"s3://npm-registry-packages-npm-production"}},"0.6.2":{"name":"@odla-ai/db","version":"0.6.2","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.6.2","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"637268af323f83af4fa34422a7cd0608bc4ea9c4","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.6.2.tgz","fileCount":31,"integrity":"sha512-vRtP+QfrmCUXLFMYOZWQUhl1BM+iHdW6/9vbfsP4w1y/KrbwIwDgVZfgvYd6S2IvNZcW1Rnl5FQXsbyMEVx4yg==","signatures":[{"sig":"MEQCIG07VmUXrwo9rWZUXuCGb9RTG9TLDjFNl3obANiFip8UAiACtg6+aWLNs6LGG6NQCVNuMRwZpNBBvI7j01I1Yqxiow==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":413277},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/react.d.ts","import":"./dist/react.js","require":"./dist/react.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"}},"gitHead":"007933e122c6c72dff4a7d670462c24532273841","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","gen:llms":"node ../../scripts/gen-llms.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run gen:llms && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.16.0","description":"Official odla-db admin, realtime, and React clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.6.2_1783733035407_0.8623028131641999","host":"s3://npm-registry-packages-npm-production"}},"0.6.3":{"name":"@odla-ai/db","version":"0.6.3","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.6.3","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"b6fc255d26388c5953e41c4214f34fd763aec2b2","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.6.3.tgz","fileCount":31,"integrity":"sha512-cm9Ke08i4zRZrx01+0W73J2OClcLWXKnV5t/Wyx3ObrWEVdTU+jGJhmY/uCGpWtpVR/a49sHvk0ql73RTHpuMg==","signatures":[{"sig":"MEYCIQDWukuQnnq25vslO+UsXc1zm8AX0Qj6AwdfQLM84URN2QIhAI3/H0Y/LzlXUwo6aF2Gq5NH5iX1pceP2irgSRvKjlwv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":419602},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/react.d.ts","import":"./dist/react.js","require":"./dist/react.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"}},"gitHead":"cdcb45183e9fbccdefa5f8672671ff4104681592","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","gen:llms":"node ../../scripts/gen-llms.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run gen:llms && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and React clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.6.3_1783869969487_0.4832601204356919","host":"s3://npm-registry-packages-npm-production"}},"0.6.4":{"name":"@odla-ai/db","version":"0.6.4","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.6.4","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"aa0d107062765c31fb1073433d001f437cd4f5fb","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.6.4.tgz","fileCount":30,"integrity":"sha512-TP9703wHN02Pq+zFpzyfxVl81QRVf/bjLaANPSyNlHvsIkmcbBXR/Qy5WrYCAx7s3sViw9vntNq+EjPhirzPFQ==","signatures":[{"sig":"MEUCIAf2HjlDjkEEplf7HxRYvWIT2fPhga2wXzs5bj05pIhAAiEAj8L6O8DnVgKci7yrORkNAfrj1BDuCijpC02uHTWpyQw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":381908},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/react.d.ts","import":"./dist/react.js","require":"./dist/react.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"}},"gitHead":"1bca268f65a091cbfa7d04fd9f8e3393a8aa47a3","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and React clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.6.4_1783872443092_0.04061580800018327","host":"s3://npm-registry-packages-npm-production"}},"0.6.5":{"name":"@odla-ai/db","version":"0.6.5","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.6.5","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"a7e4b6f86d723c1e4232e98e907fc6e4eccc0888","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.6.5.tgz","fileCount":30,"integrity":"sha512-Tus1DPngTCTCquOV1Idfml+hzqzer6ucIudMeLEVey6py3ggeiGYn0II1oWW3TfqP4uxVPwC5vniXlT+c3H8lw==","signatures":[{"sig":"MEQCICdZGnp4p663xrGfPkcOaneRzsLzURjLdB8bzYS8DLkfAiAw/xSXUBpX8ztnSS7r4mRkZSmgNnWosytKCl9o3Miobw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":447065},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/react.d.ts","import":"./dist/react.js","require":"./dist/react.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"}},"gitHead":"66b68a922dede6da456d2d8fddb476d29ad3eca7","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.16.0","description":"Official odla-db admin, realtime, and React clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.6.5_1784241989014_0.010470968573623507","host":"s3://npm-registry-packages-npm-production"}},"0.6.6":{"name":"@odla-ai/db","version":"0.6.6","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.6.6","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"42c52a5f696aca0f1c0929b7e88350b76ba40b1d","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.6.6.tgz","fileCount":30,"integrity":"sha512-GXDVMGuABn/BnLemKwXLXSMMMz+eB47HJx6t+PCMB/pCmU3TG0Oiurkpear12ISmE7mYg4MXvlZQV8bSmb/Zmg==","signatures":[{"sig":"MEUCIQDtSLrNdZ/mKyuUyJ+jxUBd0Weis3CY+fIrHxKzd9F1eAIgZ8qQEmjC46JTDezM1aJPCqPCmtQz3DY8UopdSk3KgOM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":455473},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/react.d.ts","import":"./dist/react.js","require":"./dist/react.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"}},"gitHead":"75b4c4d0c81974bf6a8ccc7c10a5d5162801f545","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.16.0","description":"Official odla-db admin, realtime, and React clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.6.6_1784281558471_0.20332726460880557","host":"s3://npm-registry-packages-npm-production"}},"0.6.7":{"name":"@odla-ai/db","version":"0.6.7","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.6.7","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"f81c7228c8c460d026e8a7fc5020c746b894054f","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.6.7.tgz","fileCount":40,"integrity":"sha512-dU7YcdEckV0j7UzBAK8iw2cp9CT1HxRSt7WtlpnujNnKtdF0Uv1ZunhbikT7g522RwZcFDOB1XKVLV+KA7yLrg==","signatures":[{"sig":"MEUCIDZO4tGQWhMSR5VPybMZQnBBj0b4LAu6f4kh9t+e2QGpAiEArSsf6usC7IBOdepWQT3kcsdzssvW8h9NEXAX5OzTmwY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":535105},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"}},"gitHead":"27a50dfb5b18c4502cf51978e61f1dd4915fec90","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.6.7_1784927266559_0.882827841010601","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@odla-ai/db","version":"0.7.0","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.7.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"8d94096d0fa8610a1230b436cb3478a523135914","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.7.0.tgz","fileCount":40,"integrity":"sha512-foAb7P6N/5TDGfG/+MWGAKbaVDzi4sGEsIeJgkZIeNX3LW+mh9L+dex6mxN+JQ3WO1LUkSV0HRfWOSjOU1RcwA==","signatures":[{"sig":"MEUCIQD5BcN8K05j+6ZXHh+aERhRSkM6QuzPoXsK1GUBAQfJHQIgb8PgfQGtidZQE6SzkGS1Rc+onR04c8ZxZAJ0OvGR8vE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":544733},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"}},"gitHead":"4cad9c80938c912321abdabd2ef21573ff3677ea","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.7.0_1785123982130_0.906013351622823","host":"s3://npm-registry-packages-npm-production"}},"0.7.2":{"name":"@odla-ai/db","version":"0.7.2","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.7.2","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"8ffe0aba5964b75ac7471880f6723cc40ad71fa6","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.7.2.tgz","fileCount":40,"integrity":"sha512-Et9DlYm0l5tYG9XQlXTKqL65Wl6aTuO85Y8cWwSj44+YJEO+AlbQakd9TjqLCsEPDmMrPm+Zp2nWGwMRNBic1g==","signatures":[{"sig":"MEYCIQCb1JoZ3UyeDEL32NgIaNjsbmzRIrBr6pUKb5UnueALUQIhAPT+L5noL6n5xhyoRB7kTuGHV9D9rMQcTqHTrrPBNNJ1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":654118},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"}},"gitHead":"b90b0781e41c4c55e232d161608ae777a25b4bfd","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.7.2_1785236177292_0.16367884793673282","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@odla-ai/db","version":"0.8.0","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.8.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"39f6d2757e6dadfca4ee1e14ddf0273ef0a1b269","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.8.0.tgz","fileCount":40,"integrity":"sha512-gDwu8QbiK5kud3EapHInBwX6VpZxSEJFR90/i9QF+/mHlHnil7pxdskz/iBv1jtXzh5xT7W3QJabc06ZuKzs3A==","signatures":[{"sig":"MEYCIQCrIhgcgsRp45P4wOg6OJj14RLYBDHJiCBQY6B0UuJxIwIhAJp8TgmywiEsSTh3Pv0m29xBJ43ifPnk5xfZGpW90OVT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":708976},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"}},"gitHead":"81b462a7822d7654b5971b1a8e56a5014cf240f0","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.8.0_1785351906458_0.9513605292453937","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"@odla-ai/db","version":"0.8.1","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.8.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"572cfd5a78e8bb7b463f889f3a27afb6818a103a","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.8.1.tgz","fileCount":40,"integrity":"sha512-0C1q0YWKOrOb3LNM5e97IxMhV7xqtbQAT5j3FXAyM/h2ZltOX72IRxXcGrinmOTjBRN7qbJa1OvaqMQbjLejTA==","signatures":[{"sig":"MEYCIQDiyfatKRvEWoIBgkyLefPiVju+Fy25D5ft62vDD9apgwIhAM888hClN/0WlL/kKXUGKQfOnCD3IGMJS2B9BmuFeroD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":709836},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"}},"gitHead":"cfc460628d984b20f826bf652f29ef81fd55d962","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.8.1_1785365816913_0.8973641414235953","host":"s3://npm-registry-packages-npm-production"}},"0.8.2":{"name":"@odla-ai/db","version":"0.8.2","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.8.2","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"98197c1b2caf491e20bfdefc450146525c69fd2a","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.8.2.tgz","fileCount":40,"integrity":"sha512-Uq/v5FxSmJAgLj+FqipAEsrbXMK3Zz5KanY+qTVqnF9dxLcfEzWyNxAQIt+imH0riNyVNMFzcpEskUS4kTx+Ng==","signatures":[{"sig":"MEQCIG0hZPMENx/YKOerQfWQdSQosc+rzeBt8jCFH4MQt7T7AiBTBFn/cm/9tONV16JM8lv8JhDnNacR/w+XIWeM+QFYIw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":713793},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"}},"gitHead":"e86fa0a5117ef6bd41d62a35af026c5861e63f71","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.8.2_1785431816894_0.6344636453994013","host":"s3://npm-registry-packages-npm-production"}},"0.8.3":{"name":"@odla-ai/db","version":"0.8.3","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.8.3","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"71877a5749a68e526a8aa4fa90c581fab2d17d34","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.8.3.tgz","fileCount":40,"integrity":"sha512-9b67v/KOEYZTKtYQAQWKmDBBbzQJg1sa0ShLX7eE0MR5xqaXWGmILJWOP7FS9RzPDHBQBUaB2hxvojEJ+jnWXA==","signatures":[{"sig":"MEQCICXsEnluYaC7otYy4IjD2Gv72koZRk1Qzo4OaWdVKLcTAiBo4GTtdsByfF1JPlmznzdpwbwzbTCtJYbR9E7bWwMf1Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":720991},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"}},"gitHead":"4b89b920d496e68099393d4447a9ca6edc265cd7","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.8.3_1785440411165_0.8588799123331281","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"@odla-ai/db","version":"0.9.0","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.9.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"4d207fdfe9edcceaa0eddbe15d01cd9655faaa7d","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.9.0.tgz","fileCount":48,"integrity":"sha512-J9dV3d01NO1dzL4ID1QaL3d9mgJk5T8P0FXNVEZUjem6gLc8kuF6KKWMiCeMl7PmdAyaO0puE3NedzJ9rlMgFw==","signatures":[{"sig":"MEQCIEOsUI2iXDJcC9tBfaEUKebX7YworkLHCl0EXmtROIp8AiAzpJm5EkNxW8KeB+900wMBERlMbDbnF3DFobmbb7bP6Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":795359},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./federation":{"types":"./dist/federation.d.ts","import":"./dist/federation.js","require":"./dist/federation.cjs"}},"gitHead":"1958856a623fb01aa836c18dd29aacde8eb3b089","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.9.0_1785441308392_0.35747816348440664","host":"s3://npm-registry-packages-npm-production"}},"0.9.1":{"name":"@odla-ai/db","version":"0.9.1","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.9.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"7b7df21d18aa2d4b344b6eda11e54122b1a5fcf7","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.9.1.tgz","fileCount":48,"integrity":"sha512-t6L3zvx0LUtE1O8TfQkadzWNifwJMqOJ2aYWOe1FW/SWsOSW0wMMG/W/wqLFy6tFMGJyecd7weG9tBZCFLdt9w==","signatures":[{"sig":"MEYCIQC32vKqVQNi5gs0/Wrlk2RnohQrOKeLjCjxAnMJu8HPyAIhAOEpv2PTwfyh86NPQl7TUtUT5Ih7c3KSk0fotNahS13s","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":780963},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./federation":{"types":"./dist/federation.d.ts","import":"./dist/federation.js","require":"./dist/federation.cjs"}},"gitHead":"bc731b64137c28f155c57b884738408ab4cd3042","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.9.1_1785464968321_0.7665378905482092","host":"s3://npm-registry-packages-npm-production"}},"0.9.2":{"name":"@odla-ai/db","version":"0.9.2","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.9.2","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"1690c4b80db8ab56e657d5a979086aec5b6045f2","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.9.2.tgz","fileCount":48,"integrity":"sha512-lmdoTxlqhvVbbjHRQDUttCRQsepON/T+G5qRKYfRY9aKLy+0C0LaIpW5NWoX2tfuaW2DWcVxIig3P10VmwB9vA==","signatures":[{"sig":"MEYCIQCoV3nR846rK1LaHxlH2snjWzyyG9Cbq72ZnCvZbpzzNwIhAJjbMM3bkSjPCmaNUwQwDiNXlVgGPZ+OkwO6gqv/euKh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":782743},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./federation":{"types":"./dist/federation.d.ts","import":"./dist/federation.js","require":"./dist/federation.cjs"}},"gitHead":"d2d3b92f4521c12c7dd492d51896de1726b9d375","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.9.2_1785532183179_0.21144348911728184","host":"s3://npm-registry-packages-npm-production"}},"0.9.3":{"name":"@odla-ai/db","version":"0.9.3","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.9.3","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"975ec43a60fea75fe623735a5ce796972e65ee39","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.9.3.tgz","fileCount":48,"integrity":"sha512-Yf4NgWvS4dbwtyUTnJKk7BNhQRpUlWISBWGfzyzZytyojWDsJKaSIRgVn9sdNbF64hiJ245Q3B/ET33jA6ibng==","signatures":[{"sig":"MEUCIBY9CKoJkDlqx6ebfqdkBA5PzSAaSuEScfFrBFH5K2ujAiEAmGge6TQSEhxgLFQyG8d2ZBfmZGZ5u8md7LZ5d9X5Y78=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":785391},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./federation":{"types":"./dist/federation.d.ts","import":"./dist/federation.js","require":"./dist/federation.cjs"}},"gitHead":"9349eb48b0fed47829f2ba41c42881f63163f1b3","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.9.3_1785599017219_0.4272767417355412","host":"s3://npm-registry-packages-npm-production"}},"0.9.4":{"name":"@odla-ai/db","version":"0.9.4","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.9.4","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"164199580fc47e6fc1b384cf0ce8732153f599cf","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.9.4.tgz","fileCount":48,"integrity":"sha512-IVdJVrzKukkBAod1tLNc5ijvDg3ZlXo1szNN2rzc1IEvXFG6+jCqU3maT5FbchKf16+9UwQS1Ol1F9cmhPYUOw==","signatures":[{"sig":"MEQCIHC7uI86yf/eHBu8ihETwJIKTSA6k3fgyj7tk26a88FAAiAyacCfXpp3DB22vnM9ZwBYEtPDuOOr8KNpLhpgP2EhLQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":785743},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./federation":{"types":"./dist/federation.d.ts","import":"./dist/federation.js","require":"./dist/federation.cjs"}},"gitHead":"b49904aef2137997db117ebba30015d01b845e3f","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.9.4_1785648327503_0.02195220694167621","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@odla-ai/db","version":"0.10.0","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.10.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"2420b85222b961108b46e9812db630f8ce1d03f2","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.10.0.tgz","fileCount":48,"integrity":"sha512-klMYg3D7zKWFq0WPfX2XslZmjWEj3FTzExGwUbI2BaAvdfLcMdqjm0ZsElA4o+4jZulxpT6mjO3hrHyi5L55Xg==","signatures":[{"sig":"MEUCIAbHBEl9XakkYfQktMc6U/5xeHrgoC1TShXngOo6fSOsAiEAo8K7GczbDC3ev94psBBirQvtgwroLfTHld6COal96WQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":786720},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./federation":{"types":"./dist/federation.d.ts","import":"./dist/federation.js","require":"./dist/federation.cjs"}},"gitHead":"b520c4dc0cabfa00cb72110b2d4b2da48a1c664e","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.10.0_1785654635314_0.3020222453689372","host":"s3://npm-registry-packages-npm-production"}},"0.10.1":{"name":"@odla-ai/db","version":"0.10.1","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.10.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"585eb3a1ced9e20f9fca81b4d1e2f1d2ef17faa7","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.10.1.tgz","fileCount":48,"integrity":"sha512-0y4JO8QK9Tb3SwL7vH1tdSnbFgVAkaPR8OzH05K012OD97WU6mdwb55gGxEV+Hegi5VX/X4LYCOWrehHeddhTQ==","signatures":[{"sig":"MEYCIQCjg85COcb01Um2Ow+Xbgs4s1tLlSmdt5bDCs/x6WyNkgIhAKEJSToBkbrye467NZEwXrVh1LlpnTjzH4BC4YgTntsz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":786888},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./federation":{"types":"./dist/federation.d.ts","import":"./dist/federation.js","require":"./dist/federation.cjs"}},"gitHead":"8a5c0da3448fb78c55c2ed8b034a6d9537243ffe","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.10.1_1785658320073_0.06129507119340727","host":"s3://npm-registry-packages-npm-production"}},"0.10.2":{"name":"@odla-ai/db","version":"0.10.2","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.10.2","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"b6a88b197d8119f115ef9ff8d702323ac640721a","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.10.2.tgz","fileCount":48,"integrity":"sha512-wto86BAxUwWWQuycUTPjy9hoqIc8e1qGyOFhlujjjcBdsxkEBkVaOETxSJa3Umicof+/c0cohcNhqUIDIVAs9Q==","signatures":[{"sig":"MEYCIQCGy3IfeQxkeC6dIXhj2tNqs0Kto4X4ZgR8RN71NAwKJQIhAOjyOEhVKTcdy+clCz1sb3g2UW6+C+0QU6rR0HMB4r5O","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":788350},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./federation":{"types":"./dist/federation.d.ts","import":"./dist/federation.js","require":"./dist/federation.cjs"}},"scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.10.2_1786035714516_0.5847733594341415","host":"s3://npm-registry-packages-npm-production"}},"0.10.3":{"name":"@odla-ai/db","version":"0.10.3","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.10.3","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"0c8288a109b01722186fd7c2503aa2cba9d516a6","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.10.3.tgz","fileCount":48,"integrity":"sha512-PytXkR8FzrEW1oHxLSTLrIZautGycUjlLCDrHtkXux3x9xE0RgBBQ/fIS8mvZwwy4DUYJWIBXc55rxMrg0QaDw==","signatures":[{"sig":"MEUCIQD6yhahy/pI7gxK32N+Crf/B6j82Am87HiNyPCV5QKQ2QIgcASRgHdW5ocMon1487oPABjGwOtGwp5/9EYVQLU+dM4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":789973},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./federation":{"types":"./dist/federation.d.ts","import":"./dist/federation.js","require":"./dist/federation.cjs"}},"gitHead":"cfd24fe366c39f3f32ae6920b8ad4a47ecfb4402","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.10.3_1786061937907_0.8798567826533772","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"@odla-ai/db","version":"0.11.0","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.11.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"51199b86c303cd1fc6092e3d9176fc6912d761cf","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.11.0.tgz","fileCount":48,"integrity":"sha512-PISq5og41Za+yX51zF3Xi6o9Jf9xEyvrJ/y3X6hWDa2qYqDbuuG8a3sy9WzDuPVg0MyP2kSCB1y1w0YUzx++NQ==","signatures":[{"sig":"MEUCIQD8Paf2SnAE/m5KmgYeVfVRayyXNnuNkpxf9XM0A7DCXAIgZ+Buw1ydV0dnCkdQ7iSmJxciTuhJ/F8T3RbOQn7HPsc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":791693},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./federation":{"types":"./dist/federation.d.ts","import":"./dist/federation.js","require":"./dist/federation.cjs"}},"gitHead":"f1f3bcd4284f25d218818356c2fdf04e5852257c","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.11.0_1786203424876_0.17180959214207592","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"@odla-ai/db","version":"0.12.0","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.12.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"e121a8ff45ee2f65c789e91cc1cb83d889281501","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.12.0.tgz","fileCount":48,"integrity":"sha512-Ntui38eOwib2urxraIt+1hjuFbdnld2P4w2XNpeP2WE0vGOlNybIpTFjXRuhqN4u1TYSsuRIPk9hHIekKjk9PA==","signatures":[{"sig":"MEYCIQCAc8+qgp11tmjg30CNTd0gSKOYqN8gdnwxy8yIe4FpQgIhAPHidtJ+0SWLtweo6JCeXh/Sb11UtGJYV9gTTXCL9HQA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":801340},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./federation":{"types":"./dist/federation.d.ts","import":"./dist/federation.js","require":"./dist/federation.cjs"}},"gitHead":"5af3f174a5b4e87ba692416a6664e61b1f7d723a","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.12.0_1786563369390_0.7502092082807699","host":"s3://npm-registry-packages-npm-production"}},"0.12.1":{"name":"@odla-ai/db","version":"0.12.1","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.12.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"55142247a041900c0587c6a857710180d8c3a7df","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.12.1.tgz","fileCount":48,"integrity":"sha512-XlgQYzMdcyIsgF6Ftij3aMNqGdvSTw8OF2H1/+8R82RKtXqQs42R1PTdP2tcGwBz0EKr8tbokqlKlVJ+zuOjfA==","signatures":[{"sig":"MEQCIAqcqwgOmVOjVGL+rkBRdISYyKy34UNMzUoS1TzeYDOLAiApjIEbwFsG3llPILqpXFZO2oahqpRJ5VvapM0+ufxorg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":803980},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./federation":{"types":"./dist/federation.d.ts","import":"./dist/federation.js","require":"./dist/federation.cjs"}},"gitHead":"1eb71a130a6e394c1954f2fff3390ed4949818a7","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.12.1_1786922895379_0.30390048755003396","host":"s3://npm-registry-packages-npm-production"}},"0.12.2":{"name":"@odla-ai/db","version":"0.12.2","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.12.2","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"96209e5b7665f9e0c35f028d76221ef1d5c1c0d3","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.12.2.tgz","fileCount":48,"integrity":"sha512-wdkitQ1N+HH9p1z4Plb/IyGr4vzkzuP4rASbgetPH01b4+REaxBLEnJT2oaQPatzVxjbzmc2I3Ouj03SKvNczA==","signatures":[{"sig":"MEUCIQD6ujXF+Xz5Ke0FBKshXgsFGt0+JEzcWsRL7qKElKJZzwIgR0kmpDc4BNrEirE08bzM0NxVVoUyKN7VIlRG0uhLO6E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":804106},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./federation":{"types":"./dist/federation.d.ts","import":"./dist/federation.js","require":"./dist/federation.cjs"}},"gitHead":"c90f2974bb8ea299af817d54bdf1afd4c1e67de4","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.12.2_1787138766222_0.3994707103323203","host":"s3://npm-registry-packages-npm-production"}},"0.13.0":{"name":"@odla-ai/db","version":"0.13.0","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"license":"MIT","_id":"@odla-ai/db@0.13.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/db","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"1f5397f87b400c539b8ba15b6a565f64c47f76b2","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.13.0.tgz","fileCount":48,"integrity":"sha512-ZEr7lRmT1lIme5NU69yQTcHNuEDwyWwBS5Q0CjXwb0zKA3j1AJu2WNXQlzZ+yJ1fWdDrpag+W5TaYTSed77x4w==","signatures":[{"sig":"MEUCIQDW3TLFd5uR8kkwEIjFnSP8DsEs7AJ+hfqVoEFL5PNoMgIgcCx8azTsKUrdufrI40jO9J4PlQy2ClP2ML4WOCvM6dA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":886771},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./federation":{"types":"./dist/federation.d.ts","import":"./dist/federation.js","require":"./dist/federation.cjs"}},"gitHead":"00b449695d863094d2ee05db032300d79df7260f","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","smoke":"npm run build && node test/smoke.mjs","coverage":"vitest run --coverage --coverage.include=src/**","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:01cae24c-7cc9-4fd2-8f45-4f64ff8ab085"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/db"},"_npmVersion":"11.6.2","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","@odla/core":"*","typescript":"^6.0.3","@odla/admin":"*","@odla/preact":"*","@odla/schema":"*","@odla/protocol":"*"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/db_0.13.0_1787422128768_0.8303322015064252","host":"s3://npm-registry-packages-npm-production"}},"0.14.0":{"name":"@odla-ai/db","version":"0.14.0","description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","license":"MIT","homepage":"https://odla.ai/docs/packages/db","repository":{"type":"git","url":"git+https://github.com/cory/odla-ai.git","directory":"packages/db"},"type":"module","main":"./dist/index.cjs","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","require":"./dist/client.cjs"},"./preact":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./react":{"types":"./dist/preact.d.ts","import":"./dist/preact.js","require":"./dist/preact.cjs"},"./import":{"types":"./dist/import.d.ts","import":"./dist/import.js","require":"./dist/import.cjs"},"./federation":{"types":"./dist/federation.d.ts","import":"./dist/federation.js","require":"./dist/federation.cjs"}},"sideEffects":false,"publishConfig":{"access":"public","provenance":false},"keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"scripts":{"build":"tsup","clean":"rm -rf dist","test":"vitest run","typecheck":"tsc --noEmit","coverage":"vitest run --coverage --coverage.include=src/**","smoke":"npm run build && node test/smoke.mjs","check:packed-types":"npm run build && node scripts/check-packed-consumer.mjs","prepublishOnly":"npm run build && npm run smoke && node scripts/check-packed-consumer.mjs"},"devDependencies":{"@odla/admin":"*","@odla/core":"*","@odla/preact":"*","@odla/protocol":"*","@odla/schema":"*","tsup":"^8.3.0","typescript":"^6.0.3"},"peerDependencies":{"preact":">=10.29.7 <11"},"peerDependenciesMeta":{"preact":{"optional":true}},"gitHead":"fddafa18a72bfe451382a8290191aae68d58b66c","_id":"@odla-ai/db@0.14.0","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"_nodeVersion":"24.13.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-glKuEOhcYilRI4ccGPqqDmiFthy2r4LmK9waoKAwcxWSSEQ/mJJh2i+wzo3ty50ZNSAf8xM8JfdtcWUzWpAWrQ==","shasum":"f79539762d63d10f7440c946b363a1d7675e5851","tarball":"https://registry.npmjs.org/@odla-ai/db/-/db-0.14.0.tgz","fileCount":48,"unpackedSize":886973,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIFAmfIShAmfUgsAsIF9hFu8boXa1agDVwhofRbUqr75rAiBAikTRuKTVhQAunggpIf9k9pNSc1Gl22mBJDNQ2oPTOg=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:483ee54d-032c-426d-ab31-1e1d7e0069fa"}},"directories":{},"maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/db_0.14.0_1788376102838_0.8673063886235728"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-02T22:22:35.283Z","modified":"2026-09-02T19:08:23.181Z","0.1.0":"2026-07-02T22:22:35.698Z","0.2.0":"2026-07-03T02:26:35.052Z","0.2.1":"2026-07-03T02:36:54.692Z","0.2.2":"2026-07-03T20:39:14.053Z","0.3.0":"2026-07-04T14:54:13.589Z","0.4.0":"2026-07-04T18:35:40.770Z","0.5.0":"2026-07-04T22:36:13.890Z","0.5.1":"2026-07-05T03:23:35.915Z","0.6.0":"2026-07-10T17:38:20.710Z","0.6.1":"2026-07-10T22:04:41.892Z","0.6.2":"2026-07-11T01:23:55.547Z","0.6.3":"2026-07-12T15:26:09.632Z","0.6.4":"2026-07-12T16:07:23.227Z","0.6.5":"2026-07-16T22:46:29.173Z","0.6.6":"2026-07-17T09:45:58.648Z","0.6.7":"2026-07-24T21:07:46.779Z","0.7.0":"2026-07-27T03:46:22.307Z","0.7.2":"2026-07-28T10:56:17.570Z","0.8.0":"2026-07-29T19:05:06.604Z","0.8.1":"2026-07-29T22:56:57.094Z","0.8.2":"2026-07-30T17:16:57.070Z","0.8.3":"2026-07-30T19:40:11.369Z","0.9.0":"2026-07-30T19:55:08.614Z","0.9.1":"2026-07-31T02:29:28.495Z","0.9.2":"2026-07-31T21:09:43.317Z","0.9.3":"2026-08-01T15:43:37.364Z","0.9.4":"2026-08-02T05:25:27.660Z","0.10.0":"2026-08-02T07:10:35.502Z","0.10.1":"2026-08-02T08:12:00.224Z","0.10.2":"2026-08-06T17:01:54.646Z","0.10.3":"2026-08-07T00:18:58.160Z","0.11.0":"2026-08-08T15:37:05.060Z","0.12.0":"2026-08-12T19:36:09.593Z","0.12.1":"2026-08-16T23:28:15.526Z","0.12.2":"2026-08-19T11:26:06.358Z","0.13.0":"2026-08-22T18:08:48.920Z","0.14.0":"2026-09-02T19:08:22.978Z"},"bugs":{"url":"https://github.com/cory/odla-ai/issues"},"license":"MIT","homepage":"https://odla.ai/docs/packages/db","keywords":["odla","odla-db","database","graph","realtime","instaql","cloudflare","durable-objects"],"repository":{"type":"git","url":"git+https://github.com/cory/odla-ai.git","directory":"packages/db"},"description":"Official odla-db admin, realtime, and Preact clients with transaction and schema tooling.","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"readme":"# @odla-ai/db\n\n> ⚠️ **Early access — pre-1.0.** Agents work from bounded runbooks; humans\n> approve credentials, production changes, releases, and merges. APIs and exact\n> package availability can change. Review the documented guarantees and\n> limitations; this software is MIT-licensed and provided without warranty.\n\nThe official clients for **odla-db** — a realtime, graph-shaped database on\nCloudflare. The package has separate entry points for trusted administration,\npermission-governed realtime applications, and Preact bindings:\n\n- `@odla-ai/db` — backend/admin HTTP client and schema tooling.\n- `@odla-ai/db/client` — WebSocket subscriptions, optimistic writes, presence,\n  and end-user authentication.\n- `@odla-ai/db/preact` — `OdlaProvider`, `useQuery`, and `useTransact`.\n  The old `/react` subpath is a deprecated alias to this same Preact build.\n\n- **Isomorphic transport** — runs in Node 20+, Cloudflare Workers, and the\n  browser. The root admin entry still belongs only in trusted backends because\n  its full application key bypasses rules.\n- **Self-contained** — zero runtime dependencies; the wire protocol, the `tx`\n  builder, and the schema builder are bundled in.\n- **Graph-native** — entities are nodes, typed `link`s are edges, and `Lookup`\n  refs give you upsert-by-natural-key (`MERGE`) for re-ingestion-safe writes.\n- **Default-deny permissions** — end-users (and rules-scoped credentials) can't\n  read or write a namespace until its CEL rules are set; a missing namespace or\n  action means \"no\". Full app API keys bypass rules (trusted backends only).\n- **Provenance on every node** — the server maintains `$createdAt` / `$createdBy`\n  / `$updatedAt` / `$updatedBy` from the *verified* writer identity. `$`-prefixed\n  attrs are reserved: client writes to them are rejected.\n- **Runtime-neutral federation signing** — `@odla-ai/db/federation` signs and\n  verifies one app-to-app HTTP request with Web Crypto. The envelope binds the\n  asserted sender, timestamp, nonce, method, path/query, and exact body digest;\n  callers exchange neither browser sessions nor database application keys.\n\n> **Ask the runbooks first.** odla's operational procedures live in a database,\n> not in this file: `npx @odla-ai/cli runbook ask \"<question>\"` returns the current\n> steps, and unlike anything written here it cannot be out of date. Use it before\n> searching the web or working from memory. This README and the JSDoc in the\n> shipped `.d.ts` are the version-matched **API** reference; a runbook is the\n> **procedure**. Most tasks need an answer from both.\n\n## Install\n\n```bash\nnpm i @odla-ai/db\n```\n\n## Use\n\n```ts\nimport { initAdmin, tx } from \"@odla-ai/db\";\n\nconst db = initAdmin({\n  appId: \"myapp\",\n  adminToken: process.env.ODLA_SK!,          // an app API key: odla_sk_...\n  endpoint: process.env.ODLA_URL!,           // your odla-db worker, e.g. https://<worker>.workers.dev\n});\n\n// write\nawait db.transact(\n  tx.notes[crypto.randomUUID()].update({ text: \"hi\", createdAt: Date.now() }),\n);\n\n// read\nconst { notes } = await db.query({ notes: { $: { order: { createdAt: \"desc\" } } } });\n```\n\nEvery query node returns at most 100 rows unless it sets `limit`; the maximum is\n1,000. Queries are also bounded to six relation levels, 32 nodes, 100 where\nnodes, a 512-character search string, and a 10,000-row candidate scan. Add an\nindexed filter and paginate instead of relying on an unbounded materialization.\nEncoded results and aggregate/query materialization are capped at 1 MB;\naggregates have the same 10,000-row scan guard. `$like` is deliberately\nindexable and case-sensitive: use an exact literal (`\"Ada\"`) or one trailing\nwildcard (`\"Ada%\"`). Leading/interior `%` and `_` patterns are rejected; use\nfull-text `search` for substring/token search. Per-entity full-text documents\nindex at most 1 MB of text fields in attribute-name order.\n\nFor a direct browser or end-user connection, use a signed-in user token. Never\nexpose an `odla_sk_` application key:\n\n```ts\nimport { init } from \"@odla-ai/db/client\";\n\nconst db = init({\n  appId: \"myapp\",\n  endpoint: \"wss://db.odla.ai\",\n  getToken: () => auth.getToken(),\n});\n\nconst unsubscribe = db.subscribeQuery({ notes: {} }, ({ notes }) => render(notes));\n```\n\nThat direct connection is safe when the browser presents a signed-in user's\nJWT and the app's default-deny CEL rules intentionally grant that user the\nrequested rows. It is not a reason to put an `odla_sk_` application key in the\nbrowser: a full app key bypasses rules and belongs only in a trusted backend.\n\n### Worker-authorized realtime without a browser database token\n\nAn app that keeps authorization in its Cloudflare Worker can expose a\nsame-origin WebSocket route with `AdminDb.realtime.proxy()`. The Worker first\nauthenticates its own application session, then grants that connection an exact\nlist of read queries. The app key stays inside the Worker. After the handshake,\nthe database AppDO owns the hibernatable socket to the browser; the Worker does\nnot need to keep a relay socket or invocation alive.\n\n```ts\nimport { initAdmin } from \"@odla-ai/db\";\n\nexport default {\n  async fetch(request: Request, env: Env): Promise<Response> {\n    const url = new URL(request.url);\n    const livePath = `/db/app/${env.ODLA_APP_ID}/connect`;\n    if (url.pathname !== livePath) return new Response(\"Not found\", { status: 404 });\n\n    // Use your app's normal cookie/session verifier before authorizing data.\n    const session = await appAuth.verifyRequest(request, env);\n    if (!session) return new Response(\"Unauthorized\", { status: 401 });\n\n    const db = initAdmin({\n      appId: env.ODLA_APP_ID,\n      adminToken: env.ODLA_ADMIN_TOKEN,\n      endpoint: env.ODLA_DB_URL,\n    });\n    const ownNotes = {\n      notes: {\n        $: {\n          where: { ownerId: session.userId },\n          order: { createdAt: \"desc\" },\n        },\n      },\n    } as const;\n\n    return db.realtime.proxy(request, {\n      allowedOrigins: [\"https://app.example.com\"],\n      queries: [ownNotes],\n      expiresInSeconds: 300,\n    });\n  },\n};\n```\n\nThe helper requires the request's `Origin` to be an exact member of\n`allowedOrigins`; wildcards and a missing `Origin` are rejected. It ignores the\nincoming path, query string, and route `appId` when choosing a database, and\nalways targets the app configured on that `AdminDb`. Keep the Worker route\nexact as an additional boundary. One grant may contain at most 16 exact queries\nwith an approximately 4 KiB serialized allow-list, and at least one query is\nrequired. `expiresInSeconds` may be 1–300 seconds and defaults to 300.\nBecause the Worker leaves the frame path after the `101` upgrade, that TTL is\nalso the maximum delay before an app-session or app-key revocation takes effect;\nchoose a shorter value for especially sensitive data.\n\nThe browser uses the ordinary reactive client against the same origin and does\nnot provide `getToken`:\n\n```ts\nimport { init } from \"@odla-ai/db/client\";\n\nconst ownNotes = {\n  notes: {\n    $: {\n      where: { ownerId: currentUser.id },\n      order: { createdAt: \"desc\" },\n    },\n  },\n} as const;\n\nconst db = init({\n  appId: \"myapp\",\n  endpoint: `${location.origin.replace(/^http/, \"ws\")}/db`,\n  // No getToken: the same-origin Worker authorizes the WebSocket handshake.\n});\nconst unsubscribe = db.subscribeQuery(ownNotes, ({ notes }) => render(notes));\n```\n\nThe browser's subscription query must exactly match one of the queries the\nWorker granted. A query returns the complete matching entities, so authorize\nevery field on every matched root and relation row—not just the fields used by\nits `where` or `order`. This path deliberately bypasses CEL view rules; the\nWorker's exact query is the authorization boundary. Do not mix fields with\ndifferent sensitivity on an entity exposed by a proxy grant.\nThis proxy is read-only: only the exact authorized query subscriptions work.\nIt cannot transact, join presence/rooms, subscribe to reserved namespaces, or\nexpand a query after the connection is open. Every reconnect returns through\nthe Worker, revalidates the app session and `Origin`, and creates a new bounded\ngrant. For mixed or dynamic per-user access, use the normal signed-user-JWT\nconnection under default-deny CEL rules. If all data must remain behind the\nWorker, use the server-side `changes()` cursor and stream authorized results to\nthe browser over the app's own SSE route.\n\n```tsx\nimport { OdlaProvider, useQuery } from \"@odla-ai/db/preact\";\n```\n\n## Getting a token (for agents) — no secret required\n\nYou need an odla-db credential to read/write. An **agent** should never be handed the\nplatform admin secret. Instead, do a **device-authorization handshake** at the\nodla platform: name the existing account by email, show that human a short code,\nand wait for the same signed-in account to explicitly review and approve it in\n`odla.ai/studio`. The email is a non-secret identity hint; never ask for a\npassword, Clerk session, or other human credential. Approval registers a named\nagent principal and returns a tracked, revocable, short-lived developer token\nbound to it. The token does not inherit the human's projects or platform-admin\nrole: the human separately grants exact capabilities on exact projects. A\nrepeat device handshake without `agentHandle` registers a new agent principal.\nRequesting the same stable handle again and receiving human approval reconnects\nthe replacement credential to the existing principal; the handle is covered by\nthe same immutable digest as the project/capability request.\n\n```ts\nimport { requestToken, initAdmin } from \"@odla-ai/db\";\n\nconst platform = \"https://odla.ai\";\nconst endpoint = \"https://db.odla.ai\";\n\nconst { token } = await requestToken({\n  endpoint: platform,\n  email: process.env.ODLA_USER_EMAIL!,\n  agentHandle: \"customer-app\",\n  projectIds: [\"my-app\"], // exact request; approval cannot rewrite it\n  // Required only to create/configure this app or administer its tenants.\n  // Baseline collaboration handshakes omit this optional capability.\n  optionalProjectCapabilities: [\"app.manage\"],\n  onCode: ({ userCode, verificationUriComplete }) =>\n    console.log(`Review ${userCode}: ${verificationUriComplete ?? \"https://odla.ai/studio\"}`),\n});\n\n// `token` (odla_dev_…) can act only on explicitly approved project ids. If\n// `my-app` is absent, this approved app.manage request may create that exact app\n// once; Registry then binds the grant to the new app incarnation. It cannot\n// create another project or perform ownership/lifecycle mutations.\nconst db = initAdmin({ appId: \"my-app\", adminToken: token, endpoint });\n```\n\nUnder the hood: `POST https://odla.ai/handshake` with\n`{ email, projectIds, optionalProjectCapabilities, ... }` → show\n`userCode` → the named user signs in and explicitly claims that exact code →\npoll `POST https://odla.ai/handshake/poll` with the returned `deviceCode` until\nthe approval is collected once. Unknown and never-signed-in accounts do not\ncreate a claimable request, and their public response is deliberately\nindistinguishable from a valid start to prevent account enumeration. Only one\nclaimed pending or approved-but-uncollected request may be active per account.\nStudio shows the immutable request and its fingerprint. The owner either\napproves it exactly or declines it with feedback returned to the polling\nclient as `handshake_denied`; changing access requires a fresh request. An\napproved project id may be new: collection records a one-time exact-id\nreservation, and app creation consumes it while binding the grant to the new\napp incarnation. `app.manage` is an explicit provisioning opt-in, not a\nbaseline grant. The reservation grants no unrelated app administration;\nexisting archived or foreign ids remain unavailable.\nThe constants above are the hosted odla defaults. For a\nself-hosted or alternate deployment, supply its platform and database endpoints\nthrough configuration rather than hard-coding either URL in application logic.\nHosted odla-db treats the platform registry as the credential authority: an\nunknown developer token is rejected and never falls back to a stale local token\nrow. A self-hosted deployment without that registry may retain the local\ncompatibility resolver, but local manager metadata still grants no project\naccess.\n\n### Permission rules (required before end-users can touch data)\n\nodla-db is **default-deny**: until you install rules, end-users see nothing and\nevery end-user write is rejected with `permission_denied`. Install per-namespace\nCEL rules with a signed-in human operator, the platform machine, or the exact\nowner-approved `app.manage` credential used by provisioning (this replaces the\napp's rule set). A baseline collaboration credential cannot rewrite rules:\n\n```ts\nawait fetch(`${endpoint}/app/${appId}/admin/rules`, {\n  method: \"POST\",\n  headers: { authorization: `Bearer ${token}`, \"content-type\": \"application/json\" },\n  body: JSON.stringify({\n    notes: {\n      view: \"auth.id == data.ownerId\",     // read own rows\n      create: \"auth.id == data.ownerId\",   // may only create rows they own\n      update: \"auth.id == data.ownerId\",\n      delete: \"false\",                     // nobody deletes\n    },\n  }),\n});\n```\n\nRule context: `auth.id/email/signedIn/entitlements/user/claims`, `auth.kind`\n(`\"user\" | \"agent\" | \"admin\"`), `auth.agent` (`{ id, label }` for scoped keys),\n`data.<field>`, `newData.<field>`, `ref('label.field')`. Reserved namespaces\ndefault to own-rows-only reads (`$users`, `$entitlements`, `$subscriptions`) or\nfully closed (`$files`).\n\n### Scoped keys — the right credential for an agent\n\nA full `odla_sk_` key bypasses rules. A signed-in human, the platform machine,\nor an exact owner-approved `app.manage` provisioning credential may mint the\napp's deployment key. A human or machine may instead mint a key for an active,\nproject-granted agent and pass `scopes` so it is **governed by the rules**\n(`auth.kind == \"agent\"` in CEL), optionally read-only and/or restricted to\nspecific namespaces. A baseline agent credential cannot mint a successor. Once\na key has a scope object, vault access is also default-deny; list the exact\nsecret names it needs in `secrets` (or deliberately grant `\"*\"`):\n\n```ts\nawait fetch(`${endpoint}/admin/apps/${appId}/keys`, {\n  method: \"POST\",\n  headers: { authorization: `Bearer ${operatorToken}`, \"content-type\": \"application/json\" },\n  body: JSON.stringify({\n    label: \"kanban-bot\",\n    scopes: {\n      mode: \"rules\",\n      agentId: \"agent_palette_scout\",\n      namespaces: [\"cards\", \"columns\"],\n      secrets: [\"anthropic_api_key\"],\n    },\n  }),\n});\n```\n\nScoped credentials are data-plane only: they can never edit rules, mint keys, or\nact as operators. A rules/read-only/namespaced key without `secrets` receives\n`403 missing_capability` from `db.secrets.get()`.\n\n### Graph writes — upsert by natural key + link\n\n`Lookup` refs (`{ ns, attr, value }`) resolve to an existing entity by a unique\nattribute, or create one — so re-discovering the same node is idempotent. Emit\nraw `Op` literals for full control (node `update`s first, then `link`s):\n\n```ts\nawait db.transact([\n  { t: \"update\", ns: \"company\", id: { ns: \"company\", attr: \"slug\", value: \"acme\" }, attrs: { name: \"Acme\" } },\n  { t: \"update\", ns: \"person\",  id: { ns: \"person\",  attr: \"slug\", value: \"ada\"  }, attrs: { name: \"Ada Lovelace\" } },\n  { t: \"link\",   ns: \"company\", id: { ns: \"company\", attr: \"slug\", value: \"acme\" }, label: \"founded_by\",\n    target: { ns: \"person\", attr: \"slug\", value: \"ada\" } },\n], { mutationId: \"ingest:acme-foundedby-ada\" });   // stable id => exactly-once\n```\n\n### Author & push a schema\n\n```ts\nimport { i } from \"@odla-ai/db\";\n\nconst schema = i.schema({\n  entities: {\n    company: i.entity({ slug: i.string().unique(), name: i.string() }),\n    person:  i.entity({ slug: i.string().unique(), name: i.string() }),\n  },\n  links: {\n    founded: {\n      forward: { on: \"company\", has: \"many\", label: \"founded_by\" },\n      reverse: { on: \"person\",  has: \"many\", label: \"founded\" },\n    },\n  },\n});\n\nawait fetch(`${endpoint}/app/${appId}/schema`, {\n  method: \"POST\",\n  headers: { authorization: `Bearer ${odlaSk}`, \"content-type\": \"application/json\" },\n  body: JSON.stringify({ schema: schema.serialize() }),\n});\n```\n\n### Porting relational code — semantics that differ from SQL\n\nField notes from porting a production Postgres app (a membership flow) onto\nodla-db. Each of these is a silent behavior difference; design for them up\nfront rather than discovering them in production:\n\n- **Entity ids are not attributes.** `where: { id }` matches nothing. If you\n  query rows by id (every `SELECT ... WHERE id = $1` port does), mirror the id\n  as a unique attr on each row:\n  `{ t: \"update\", ns, id: rowId, attrs: { id: rowId, ... } }`. Query results\n  are unchanged — hydration returns the same `id` either way.\n- **Null depends on the declared type.** JSON attributes can preserve JSON\n  `null`; a typed scalar attribute rejects it in strict schema mode. Omit an\n  optional scalar on write when absence is the intended state. To CLEAR a\n  scalar that was already written, use the `retract` op —\n  `tx.things[id].retract([\"dueAt\", \"ownerId\"])`, the scalar sibling of\n  `unlink`. It removes those attributes' triples (a no-op when already absent)\n  and fails the transaction only if it would leave a required attribute missing.\n- **Always pass `order` on list queries.** Unordered results sort\n  lexicographically by entity id: creation order for `uuidv7()` ids, arbitrary\n  for anything else.\n- **Pagination is bounded.** Omitted `limit` means 100; explicit limits may be\n  0–1,000 and offsets 0–100,000. Each nested relation node is bounded too.\n- **Realtime state is bounded.** One socket may retain 32 subscriptions, and\n  its total hibernation state (identity, subscriptions, and presence) must fit\n  16 KiB.\n  Excess operations fail as `subscription_limit` or\n  `session_state_too_large` before registering state. The server retains at\n  most 4 MB of prior diff snapshots per app Durable Object; subscriptions over\n  that budget continue with full `query-result` snapshots instead of diffs.\n- **Wire bodies are bounded.** JSON HTTP bodies are stream-read; both HTTP\n  bodies and WebSocket messages cap at 1.1 MB (`request_too_large` /\n  `message_too_large`). Query results have the stricter 1 MB encoded cap.\n- **Uniqueness is single-attr.** A composite SQL unique becomes a derived\n  unique attr (for example `group_email: \"<groupId>|<email>\"`); a violation\n  aborts the whole transact with `unique_violation`, exactly like an\n  ON CONFLICT abort in a SQL transaction.\n- **A multi-op `transact` is atomic** (one Durable Object transaction), so\n  batch a change and its audit row together. There is no\n  `SELECT ... FOR UPDATE`: bind a read to its write with `guards`, which check\n  existence, selected field values, and explicitly absent legacy fields inside\n  the same transaction. A failed guard aborts every op with\n  `transact_guard_failed`. Pair that compare-and-swap check with a stable\n  `mutationId` for exactly-once retries:\n\n  ```ts\n  const { duplicate } = await db.transact(ops, {\n    mutationId: `edit:${id}:${reviewed.version}`,\n    guards: [{\n      ns: \"documents\",\n      id,\n      exists: true,\n      equals: { version: reviewed.version },\n      absent: [\"supersededAt\"],\n    }],\n  });\n  const fresh = !duplicate; // first delivery: this call did the write\n  ```\n\n- **Aggregates** are one-shot:\n  `await db.aggregate(\"applications\", { count: true }, { where: { status: \"pending\" } })`\n  → `{ count }`.\n- **Trusted change cursors** are resumable and content-free:\n\n  ```ts\n  const checkpoint = await db.changes(); // snapshot boundary; no history replay\n  const page = await db.changes({ cursor: checkpoint.cursor, limit: 200 });\n  ```\n\n  Each transaction reports only its `txId`, commit time, and touched/created\n  namespace+entity keys—never operation bodies or attribute values. This\n  surface requires a full server app key; rules-scoped credentials are denied.\n  Persist `page.cursor` only after consuming the page. Restore, copy, or\n  truncated history returns `checkpointRequired: true` with a replacement\n  checkpoint instead of an apparently valid empty result.\n- **Health probes:** `GET /app/:id/schema` (Bearer: the API key) is the cheap\n  connectivity and schema-presence check — compare\n  `Object.keys(schema.entities)` against the namespaces you expect.\n- **Schema pushes validate compatibility.** Declared namespaces are strict;\n  unsafe type, required-field, uniqueness, link, and removal changes are\n  rejected before metadata changes. See the [database schema\n  contract](docs/schema-contract.md) for strict/schemaless behavior and the\n  accepted migration envelope.\n\n## API surface\n\n- `initAdmin(opts)` (legacy alias: root `init`) → HTTP administration client;\n  its application key bypasses rules and belongs only in trusted backends.\n  The returned client includes `changes()` for server-issued transaction\n  checkpoints and bounded resume pages.\n- `@odla-ai/db/client` → realtime `init`, subscriptions, optimistic writes,\n  persistence, aggregate queries, rooms, and content-free connection health\n  under an end-user token. `db.connectionHealth()` plus `onHealth` distinguish\n  live/reconnecting/stale/closed state and expose heartbeat RTT and bounded\n  queue depth; `onTelemetry` emits low-cardinality events without app, user,\n  query, mutation, room, or payload data.\n- `@odla-ai/db/preact` → `OdlaProvider`, `useDb`, `useQuery`, `useTransact`.\n  `transact` resolves to `{ txId, duplicate }` (`TransactResult`).\n- `tx`, `flattenTx`, `TxChain`, `uuidv7`, `PROTOCOL_VERSION`.\n- `@odla-ai/db/federation` (also exported from the trusted root entry) —\n  `signFederatedRequest` and `verifyFederatedRequest`, plus stable\n  `FEDERATION_HEADERS` and `FEDERATION_VERSION`. Store the shared edge secret in\n  each application's server-side vault; never put it in config or browser data.\n  Verification defaults to five minutes of clock skew and can enforce a sender\n  allowlist. Non-idempotent routes should supply `consumeNonce` backed by a\n  durable replay gate; idempotent routes may rely on their natural mutation\n  identity.\n- `OdlaError` — stable `code`, optional HTTP `status`/`detail`/`requestId`, and\n  `retryable`; realtime clients surface connection errors through `onError`.\n- `i`, `OdlaSchema`, `Attr` — schema builder.\n- All wire types: `Op`, `EntityRef`, `Lookup`, `InstaQLQuery`, `QueryResult`,\n  `Entity`, `Value`, `Json`, `SerializedSchema`, …; realtime health types:\n  `ConnectionHealth`, `ClientTelemetryEvent`, and `FreshnessMode`.\n\n### 0.6 migration notes\n\n- Queries that omitted `limit` now return at most 100 rows; paginate explicitly\n  if you previously relied on full-namespace reads. The maximum limit is 1,000.\n- Oversized query shapes and scans fail with stable `query_*` error codes.\n- `$like` now accepts only case-sensitive exact or trailing-`%` prefix\n  patterns; replace substring patterns with full-text `search`.\n- Realtime sockets cap active subscriptions at 32 and combined hibernation\n  state at 16 KiB. Diff retention exhaustion falls back to full snapshots.\n- JSON wire bodies over 1.1 MB and encoded query results over 1 MB are rejected.\n- HTTP and WebSocket peers negotiate protocol v1; declared mismatches fail with\n  `protocol_version` instead of being decoded as an unknown response.\n- SDK failures are `OdlaError` instances. Existing message matching should move\n  to `error.code`; server `detail` is preserved when it is JSON-safe.\n- Device authorization uses `handshake_denied`, `handshake_expired`,\n  `handshake_timeout`, `aborted`, `network_error`, and `protocol_version`; these\n  are stable codes, not strings to recover from the message.\n\n## Live totals for paginated views\n\nA query node can ask for the count of rows that match it, ignoring its own\n`limit`/`offset` — the number a pager needs:\n\n```ts\nconst { data, totals } = useQuery({\n  pm_bug: { $: { where: { appId: \"silver-salt\" }, limit: 50, count: true } },\n});\n// data.pm_bug  → the 50-row page\n// totals.pm_bug → how many match in total, live\n```\n\nUnlike the one-shot `aggregate`, this is **reactive**: the count is recomputed\nwith the rows and delivered on the same frames, including diff frames. A row\nadded past the last page moves the total without moving the page, and that frame\nis still sent — a pager that showed \"of 12\" becomes \"of 13\" on its own.\n\nCounts are taken **after** view-rule filtering, so they never reveal the size of a\nresult set you are not allowed to read. That is also why `count` is opt-in rather\nthan automatic: it evaluates rules across every match rather than just the\nreturned page, so the cost scales with matches, not with `limit`. Ask for it on\nthe views that paginate.\n","readmeFilename":"README.md"}